- 博客(324)
- 资源 (10)
- 收藏
- 关注
原创 【Javascript】通过浏览器书签构建与执行自动刷新脚本
日常工作中,经常遇到需要时不时点一下刷新这样的事情(怪前端想不到写一个自动刷新)但是…… 没有自动刷新按钮,在这页面手动点刷新还是太浪费时间了。有时候懒得等了去做别的事情,过一小时回来刷新一下,发现是有问题的,被 killed 了,白跑,又得重来多浪费时间啊,那…… 我搞个自动刷新吧。
2023-10-24 20:19:57 509
原创 【SQLite3】使用 SQLite 为模型训练中的并行 dataloader 节省内存
我的训练数据读到内存里就有好几个 G 那么大了,多进程 dataloader 跑并行训练的时候内存都被打满了怎么办啊?!**解决方案:** 基于 SQLite 无限数量的并行读取做一个 dataset 呗,多少 dataloader 并行着读都行。
2022-08-22 19:44:24 970 1
原创 【SymbolicLink】利用软连接将已安装程序搬迁到其他盘符
一个基于 Sybmolic Link 的很有意思的解决方案。可用于将安装版的程序目录迁移到其他位置,以腾出硬盘空间。例如,把游戏安装到 C 盘,之后想挪到 D 盘去,假如直接剪切,会带来复杂的文件依赖问题。这样可以将很多程序挪到其他盘符,C 盘仅保留其软链,仍可以和原先一样使用。......
2022-08-05 16:25:51 1332
原创 【Requests】Bilibili Security 1024程序节 CTF记录
0x00 前言B站搞了个1024程序员节,看起来是个 toy CTF,有点开心。于是想到了曾经在CTF和ACM的路口选择了ACM,CTF一直是心中的一点遗憾,想着要不咱……玩玩看?0x01 养成看到网页就F12的好习惯页面的背后是什么?题目地址: http://45.113.201.36/index.html说到网页的“背后”,一般想到的就是有东西被隐藏了,我们可以直接审查元素看到果然有个 hidden:<body> <div class="banner"&g
2020-10-24 23:41:29 5498 6
原创 【CheatEngine】关于BCR的内存分析
0x00 前言随着学级的提升,任务的数量和种类原来越多,深感时间越发不够,犹豫再三还是决定把杀时间却对自己没有什么提升的兴趣爱好逐一舍弃掉,首当其冲的就是占用较多碎片时间以及睡前时间的手游。弃坑每个手游的时候,在微博上都会发下在下作为开服玩家的仓库和BOX之类的,为了在遥远的未来和别人谈论起这个游戏,能用这些截图证明自己不是云玩家,而是真实确实参与过的。但仅是如此的话,我觉得还不够吧,不如以一个计算机专业学生的视角,从一些别人不常看到的角度来讲讲,顺便记录一下由于一时兴趣而耗费在这个游戏上的那段时光。
2020-09-04 12:33:16 1182
原创 【Database】兼容 Python2 / Python3 适配编码的文件型数据容器
0x00 前言训练内存轻量化最近又在训练模型(炼丹),以前老抱怨,区区2万 samples 也好意思叫大数据,近期的任务似乎听到了我这个抱怨,纷纷都是什么“1700万个句子”,“4000个文档”的数据,对服务器内存一次次的进行着冲击。虽说我之前已经写过一个CIR(CorpusIterationReader)类实现的文章用来解决类似问题(哎?我那篇文章哪去了,被吃了么……emmmm,以后再重发一次吧。)但是那个类也只能让 pivot 以 “文件指针+instance指针” 的方式进行顺序存取,不是很好处
2020-07-21 16:20:04 441
原创 【Tensorflow】用于处理checkpoint中参数名称与矩阵数值的工具类
0x00 前言目前对于Tensorflow的模型参数文件,我们处理起来没有Pytorch的参数文件那样方便,并且现在任务中有个需求,要在“某几个参数矩阵中,将特定行的参数复制到某些其他行”。Pytorch的话就还好,因为毕竟是一群tensor被一个OrderDict包装起来的Python基本数据结构。同样的事情,在Tensorflow中处理起来会比较麻烦,于是考虑实现这个工具类 CheckpointMonitor 来提高处理效率。0x01 效果及API支持从Tensorflow的模型参数文件c
2020-07-04 17:24:12 777 2
原创 【Grpc】使用grpc配置通过端口访问的python服务
0x00 前言近期兴趣使然的技术调研越发的少了(TTS算一个),主要的都是为了项目和任务去研究的东西。目前的情况是为了节约显存,对一个较大的模型而言,比起使用4个worker来重复的占用显存,不如只占用一份显存,但是开启服务流式或触发式地处理不同项目的需求。于是 @caoyixuan93 学长向我推荐了GRPC,经过 @hongfeng 和 @phchang 的帮助,终于得以成功实现了一个小的...
2020-04-16 18:41:43 4634
原创 【HNS】试着领一下 HandShake 为开源社区发放的 HNS Coin
0x00 前言最近呢,开源社区除了这么一件事:《@ 开发者,这个 GitHub 项目可以褥羊毛》简单概述一下其大致意思呢就是:GitHub 有一个区块链项目 Handshake 正在面向 GitHub 上前 25 万名开发者派送 4,246.99 HNS 币。大约价值 1358.56 美元,换算成人民币则是差不多近 1 万元人民币。那么,这里所谓的前25万,它们是如何判定的呢?T...
2020-02-20 22:31:52 4029
原创 【Pip】ValueError: ("Missing 'Version:' header and/or METADATA file at path
0x00 前言有时候,pip install 用的好好的,突然就一屏幕红字:ERROR: Error checking for conflicts.Traceback (most recent call last): File "c:\programdata\anaconda3\lib\site-packages\pip\_vendor\pkg_resources\__init__.py...
2019-08-24 10:59:02 3217
原创 Advanced Algorithm 听课笔记(Useful Inequalities & Balls and Bins)
0x00 前言作为学术生涯的最后一门课,选了一门据说是最难的,上下来的感觉也确实是难得不行,不太懂……决定照着ppt和上课的笔记整理一下,以此争取达到复习的目的。(意思是有些虽然写出来了,但自己都不见得明白,有的部分存疑后续去询问之后再做修改)在随机算法的问题中有大量不等式常被使用,为了在运用时能想得起来,有些甚至要背熟。0x01 Union BoundRandomized Algo...
2019-06-18 11:54:54 2638 1
原创 Advanced Algorithm 听课笔记(Introduction & Complexity Class)
Advanced Algorithm 听课笔记(Introduction of Randomized Algorithm)0x00 前言作为学术生涯的最后一门课,选了一门据说是最难的,上下来的感觉也确实是难得不行,不太懂……决定照着ppt和上课的笔记整理一下,以此争取达到复习的目的。(意思是有些虽然写出来了,但自己都不见得明白,有的部分存疑后续去询问之后再做修改)0x01 Big O ...
2019-06-11 19:06:46 2338
原创 【Matplotlib】在Jupyter交互页面中绘制折线图对比(自用函数)
最近数据对比的任务比较常见,比如好些模型的横向对比,对于 Loss、PRF、Hits 之类的数据,有时需要作log,有时需要去除前面几个值,还要考虑数据不对齐、记录文件格式不一致等诸多问题,总之主需求是鲁棒性,稍微写了个画表格的函数,暂时还比较乱,后续有时间再作优化好了,现在暂时写在这作为记录,便于易于在不同机器上获取使用以及方便后续优化更新。
2019-05-30 12:36:44 4355
原创 【PyTorch】TypeError: stack(): argument 'tensors' (position 1) must be tuple
0x00 前言近期有个版本适配的任务,说白了就是把 PyTorch 0.3.0 的代码更新适配 PyTorch 1.0.2,PyTorch 的向上兼容性在此时就可以体现出来了,令人欣慰的是直接升级版本后并没有太多报错,其中一个比较突出的问题就是 torch.stack() 和 torch.cat() 的变化。0x01 错误演示 @ torch.stack()>>> x ...
2019-04-21 13:40:01 12197
原创 【!Mode::】解决编码导致的 LaTeX IDE 中汉字乱码的问题
0x00 前言最近想试着用LaTeX写写作业,也是为了方便未来写论文的时候可以不那么手忙脚乱,从IDE开始就陷入了选择困难,最终选定使用 CTex 和 TeXStudio 这两者,CTeX 一直没有更新过了,是官网的那个 CTeX_2.9.2.164_Full.exe (1.31G),TeXStudio 则用的是 texstudio-2.12.14-win-qt5.exe (74.2M)...
2019-03-20 11:45:54 2918
原创 【sudo】ImportError: pip包未安装在当前环境的解决方案
0x00 前言通常在使用 pip 指令安装 Python 需求的包时,会需要使用 sudo pip install 获取权限,或者,在 Jupyter Notebook 里可以采用 ! 的语法调用 pip 指令直接安装需要的包,例如:! pip install xlrd! sudo pip install xlrd但有时安装后发现当前环境或虚拟环境(conda-env)中,其实是因为...
2019-01-16 21:58:04 1256
原创 【Tensorflow】超参调整时对于模型重加载轻量化的测试
0x00 前言由于各类模型在落地使用时都或多或少地需要一些超参的调整(学名调参、俗称炼丹),但如果每次修改少量超参之后,都要把网络和模型重新初始化一遍,这样就太花时间了,所以考虑能否尽量减少,甚至可以一次初始化,N个 for 循环的形式来解决超参测试呢?0x01 测试代码import osimport tensorflow as tfclass test_class(object)...
2019-01-02 11:39:55 645
原创 【HTTPServer】借助Python建立简易的HTTP服务
0x00 前言局域网内有个想传的文件,但是跨平台了怪麻烦的。于是想着建立个http服务来传吧,但是又懒得下载东西,哦对了我有Python,那就足够了~0x01 防火墙打开端口为了开启服务,首先需要打开一个对外端口以便其他机器访问进来,Python中自带的HTTP Server默认占用的是端口8000,当然也可以自己选定特定端口。如果直接使用命令无法访问的话,那应该就是被防火墙挡住了(...
2018-11-22 11:48:20 10318 9
原创 【Docker】在Linux下安装与配置Docker环境
0x00 前言没有太多说的,这个可能也到处都有…… 每个人的方法大概也大同小异?主要是自己第一次接触docker,就当作简单的做一个记录与总结吧。(注意:本篇和以前的环境配置不同,这次主要着眼于问题的解决)0x01 记录查看当前系统版本Linux 系统需要不小于 3.10.x下述输出的意思是:系统为Linux,名称为c9,版本为3.10.0,64位系统[chend@c9 ~]$...
2018-11-20 11:17:32 21613 2
原创 【Tensorflow】逻辑斯特回归(Logistic Regression)的简单实现
### Introduction为了简单的介绍和讲解一下Tensorflow的基本操作,我决定做一个简单的逻辑斯特回归实现与代码讲解,但不太会用Markdown的方式来展现一个JupyterNotebook,姑且就按照“说明—实例”的方式来解释逐个代码块好了。
2018-10-07 02:30:53 1206
原创 【DataProcessor】简易的通用多进程数据生成工具类(Advanced for HVD)
0x00 前言基于先前实现的Python多进程共享内存队列实现的SMQueue(原文地址),0x01 实现思路0x02 Source Code# coding: utf-8# ==========================================================================# Copyright (C) 2018 All right...
2018-10-03 17:46:52 1340
原创 【Multiprocessing】Python多进程内存共享数据队列SMQueue
0x00 前言自从先前研究了下Python的多进程计算(原文链接)之后,深深地感受到多进程处理的美好,并决定运用到模型训练时,作为 feed data 的数据处理模块使用,实现工具类 SharedMemoryQueue。但是众所周知,python的进程间通讯比较复杂,更别提大量进程的时候……想想就头疼……但是python本身就是万金油,为啥我非要用python的机制呢,用python调用...
2018-09-30 12:05:33 3263 2
原创 【Julia】Linux下配置Julia交互开发环境(Julia notebook)
0x00 前言近期Julia这门语言突然被拉入了大众视野,我也是被一句 “Walk as Python,Run as C” 深深的吸引住了, 如果它没有在吹牛,那么这门语言说不定确实是我所想要的,那么,学学看吧?本篇文章主要用于介绍如何搭建便于学习与测试的REPL环境,先在Linux上试试水, 毕竟一旦Jupyter Notebook搭建起来之后,网页版的交互式环境就已经可以不受操作系...
2018-08-18 16:28:17 4802
原创 【bitset】C++方便快捷的比特位管理标准库
0x00 前言C++的STL向来是一个非常厉害且好用的东西, 提供了大量近乎优化到极致的解决方案,在日常编程或是竞赛中, STL使用的娴熟可以省去大量的时间和脑力得出非常优质的解法, 这回是我突然看见了bitset这个我不太常使用的类库,用于状态压缩非常巧妙, 于是决定相见即是有缘,就好好的学习一下吧——通常的解释为: bitset C++语言的一个类库,用来方便地管...
2018-08-09 17:04:19 615
原创 【Multiprocessing】采用多进程计算处理数据
0x00 前言在数据处理方面,通常会将较为简单的源数据存于本地磁盘中, 每次使用时读取,经过生成函数生成模型可以直接使用的训练数据, 而这种数据通常为矩阵的形式,考虑到padding位的情况下通常较大, 那么,在源数据的量较大,而生成的数据的空间占用增量巨大无法存于本地, 就需要采用生成一个,传输一个,消耗一个,之后再生成的形式。线性终归是缓慢的,此时就需要多线程进行处理, 如下...
2018-06-28 21:23:32 1209
原创 【Tensorflow】自主实现包含全节点Cell的LSTM层(Cell-Holding LSTM Layer)
0x00 前言常用的LSTM,或是双向LSTM,输出的结果通常是以下两个: 1) outputs,包括所有节点的hidden 2) 末节点的state,包括末节点的hidden和cell 大部分任务有这些就足够了,state是随着节点间信息的传递依次变化并容纳更多信息, 所以通常末状态的cell就囊括了所有信息,不需要中间每个节点的cell信息, 但如果我们的研究过程中需要用到这些c...
2018-06-28 17:17:30 988
原创 【Tensorflow】自主实现部分连接层(Partial Connect Layer)
0x00 前言通常而言,在NLP领域的机器学习中时常会有这样的需求:argmaxP(wi∣θ)argmaxP(wi∣θ) argmax P(w_i \mid \theta) 较为常见的做法是有多少个单词就做一个多少维的全连接层加softmax,但是, 如果词汇表 |V||V||V| 很大的情况下,会有大量的计算(例如目前的工作中,词汇表的数量为80k), 在我们已知只需要计算其中某些词...
2018-06-28 15:54:40 1829
原创 第三十五次codeforces竞技结束 #483 Div 2
0x00 前言啥都不说了,居然出了四题, 令我不仅产生了错觉:老选手也能有朝一日恢复到刚开始集训时的状态? 觉得浑身充满了活力QvQ!(可惜了这次用的不是自己的号QvQ,220名呀……) 那么这次比赛得到了一个怎样的教训呢?(看见那些TLE了么) ——老老实实给我用 printf() 和 scanf()! ——竞技编程除非字符串处理,没有 cin>> 和 cout<...
2018-06-12 10:12:12 388
原创 第三十五次codeforces竞技结束 #482 Div 2
0x00 前言感觉上次打了一场热身之后,脑子都转的灵活些了,果然一定要多写题防生锈, 这次两个小时的CF Div2,打了一个半小时不到出了三题,第四题恕我看题意都看睡着了, 然后抱着出了三题的喜悦去休息了,早上起来一看,FST了……QAQ 原因居然是写完了代码之后脑子有问题的加了一个特判,当时脑子里想的是,加个速加个速,加毛线啊QAQ 不要这个特判才是对的呀!0x01 A....
2018-05-15 21:33:41 281
原创 第三十四次codeforces竞技结束 #480 Div 2
0x00 前言时隔好久,又想着忙里偷闲打一场codeforces活动下快要生锈的脑袋 emmmm,虽然只出了三题,但也还凑合了…… 这次的教训就是:以后打codeforces不要作死加 ios::sync_with_stdio(false); 0x01 A. Links and Pearls 题目传送门:http://codeforces.com/contest/980...
2018-05-10 00:58:36 308
原创 【Pytorch 0.4.0】Windows操作系统下搭建Pytorch平台
0x00 前言就在今天,PyTorch 官方 GitHub 发布 0.4.0 版本,Pytorch主页上的OS也令人愉快的增加了Windows的选项。 这意味着PyTorch对于没有Linux/Unix系统,且没有远程开发机的学习者而言,更加易于上手便于使用了。 而对于非初学者而言,这次的改进合并了Tensor和Variable,着实是一项非常伟大的改进, 不仅如此,听说Caffe加入了...
2018-04-25 14:34:26 2114 2
原创 【Reverse】Tensorflow中屏蔽Padding处理变长序列的双向LSTM
0x00 前言通常我们处理双向LSTM的时候,序列长短不一参差不齐,就不可避免的需要进行padding, 实际上句子长度可能如下所示,为[2, 4, 5],就需要被padding成这样才能作为矩阵传入计算:array([[1, 2, 0, 0, 0], [2, 1, 4, 3, 0], [3, 2, 1, 5, 4]], dtype=int32)对于p...
2018-04-19 20:11:46 4543 2
原创 【RemoteJoy】PSP图像采集方案
0x00 前言只是简单的想给别人看看自己PSP1000(没错就是很元老级)里的命运石之门和刀剑神域里的画面。 图像采集?难道很难么? 试试看吧,好久没有探索新技能了0x01 准备RemoteJoyLite https://download.csdn.net/download/okcd00/10308078可以自行下载,感觉网上还是有蛮多版本的,我这里用的是019一台PS...
2018-03-25 23:08:47 1592
原创 【Lightgbm】AttributeError: 'LGBMRegressor' object has no attribute 'best_iteration'
0x00 情景复现使用 lightgbm 进行简单便捷的fit操作,尝试使用early_stopping, 以选择最好的一次迭代进行预测时,调用best_iteration时报错:import lightgbm as lgbgbm = lgb.LGBMRegressor(objective='binary', num_leaves=6...
2018-03-21 11:15:23 10223
原创 【拓扑排序】包含拓扑深度的拓扑排序 LeetCode 329
0x01 题面 LeetCode 329. Longest Increasing Path in a Matrix 传送门Given an integer matrix, find the length of the longest increasing path.From each cell, you can either move to four directions: le...
2018-03-05 16:00:37 1049
原创 【Pathlib】面向对象的Python3的文件系统路径
【Pathlib】面向对象的Python3的文件系统路径 Pathlib:将文件系统路径作为对象使用 《pathlib —— Object-oriented filesystem paths》0x00 前言 目前,Python 科学栈中的所有主要项目都同时支持 Python 3.x 和 Python 2.7,不过,这种情况很快即将结束。去年 11 月,Numpy 团
2018-02-06 15:44:58 1056
原创 【Pytorch】RuntimeError: arguments are located on different GPUs
0x00 前言Pytorch里使用optimizer的时候,由于其会记录step等信息, 有时会希望将optimizer的内容记录下来,以备之后继续使用, 那么自然而然的会想到使用API中自带的 torch.save(object, path) torch.load(path)再配合上 optimizer.state_dict()
2017-11-07 17:59:58 7242
原创 【Autograd】深入理解BP与自动求导
“所有数值计算归根结底是一系列有限的可微算子的组合” ——《An introduction to automatic differentiation》 BTW:也可以点击传送门去我的个人主页看这篇文章哦~ 符号语言的导数 《Deep Learning》 Chap 6.5.5代数表达式和计算图都对符号(symbol) 或不具有特定值的变量进行操作。这些代数或者基于图的表达式被称为符号
2017-10-20 12:53:23 5841
原创 第三十三次codeforces竞技结束 #441 Div 2
0x00 前言哇,真的是好久好久没有打Codeforces了呢…… 距离上一次(2015-04-14 23:47)竟然已经过了两年半之久… 嘛,总之……还凑合QvQ……
2017-10-17 18:14:54 810
【PSP录制工具】RemoteJoy_Lite_019_CHT
2018-03-25
From Online Behaviors to Offline Retailing
2016-07-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人