
工具性知识点
ASR_THU
研究方向:语音处理
展开
-
[git] 利用pycharm将project上传到github中
记录将本地Pycharm项目上传到Github的整个过程。准备工作首先得注册github账号,这里不多说然后,安装git (我的版本git version 2.15.0.windows.1)PyCharm版本2017.2.3上传操作第一步,点击PyCharm的File -> Setting,找到github,输入用户名和密码,点击test,看是否能连的上:第二...转载 2019-03-14 17:45:48 · 302 阅读 · 0 评论 -
[tensorflow] summary op 用法总结
0. 前言官方教程(需要翻墙,都有中文版了): TensorBoard:可视化学习 TensorBoard:图的直观展示 TensorBoard:直方图信息中心 TensorFlow Summary 相关API(需要翻墙) Github: tensorflow/tensorboard1. 综述tf.summary相关API的功能就是,将定期将部分指定tensor的值保存...原创 2019-04-10 21:22:15 · 3448 阅读 · 0 评论 -
[tensorflow] 模型的恢复
使用tensorflow进行模型的保存很简单,生成一个saver实例然后saver.save()即可,在恢复时有两个问题很棘手:怎么得到graph 怎么得到placeholder以创建feed_dictx得到graph:1.如果你有model的定义文件,可以像训练时一样重新创建一个图,然后saver.restore()获得图中的参数权重:# 设置超参hp = hparam...原创 2019-04-10 22:28:28 · 590 阅读 · 0 评论 -
[github] 使用github进行团队开发
https://www.cnblogs.com/schaepher/p/4933873.htmlhttp://www.cnblogs.com/schaepher/p/4970291.htmlhttps://blog.youkuaiyun.com/dengdengda/article/details/50903176转载 2019-04-11 18:38:35 · 274 阅读 · 0 评论 -
[web] k8s 攻略
原文地址:https://medium.freecodecamp.org/learn-kubernetes-in-under-3-hours-a-detailed-guide-to-orchestrating-containers-114ff420e882github地址:https://github.com/rinormaloku/k8s-mastery翻译地址:http://www....翻译 2019-04-12 22:54:32 · 134 阅读 · 0 评论 -
[tensorflow] 对一维卷积池化和二维卷积池化的新感悟
首先上观点:一维卷积的卷积核是二维的,二维卷积的卷积核是三维的 一维池化的池化核是一维的,二维池化的池化核是二维的为什么卷积的时候卷积核维度多了一维呢?因为有通道(channel)的存在。比如对于语音处理中常用的特征MFCC,一般来说网络的输入是[timestep, num_mfcc],对其使用一维卷积,则有:import numpy as npimport tensorflow ...原创 2019-04-21 22:43:55 · 5386 阅读 · 0 评论 -
[tensorflow] 多维矩阵的乘法
矩阵乘法本质上只能是两个二维的matrix进行叉乘,那么两个三维甚至四维的矩阵相乘是怎么做到的呢?比如:import tensorflow as tfa = tf.constant(1,2,3,4)b = tf.constant(1,2,4,6)c = tf.matmul(a,b)# c.shape == (1,2,3,6)查看matmul的源码:@tf_export(...原创 2019-04-29 21:13:19 · 18705 阅读 · 5 评论 -
[linux] bash 脚本实现批量化作业与并行处理
在Linux下运行作业时, 经常会遇到以下情形: 有大量作业需要运行, 完成每个作业所需要的时间也不是很长. 如果我们以串行方式来运行这些作业, 可能要耗费较长的时间; 若采用并行方式运行则可以大大节约运行时间. 再者, 目前的计算机绝大部分都是多核架构, 要想充分发挥它们的计算能力也需要并行化. 总结网上看到的资料, 利用Bash脚本, 可以采用下面几种方法实现批量作业的并行化. 注意, 下面论...转载 2019-04-30 19:58:17 · 5406 阅读 · 0 评论 -
[语音处理] .flac文件转.wav文件
在常用的英语语音识别数据库librispeech中,原始语音的格式是.flac,一般来说先要转换成.wav才能继续进行后处理。转换工具可以使用sox (http://sox.sourceforge.net/):sox $flac_path -t wav $wav_path命令很简单,但是缺点是一次只能转换一条语音,所以需要利用脚本完成对librispeech中上万条语音进行自动转换。...原创 2019-04-30 20:07:49 · 4208 阅读 · 2 评论 -
[pytorch] 在pytorch中实现与TensorFlow类似的same方式padding
转载自https://oldpan.me/archives/pytorch-same-padding-tflike前言TensorFlow中在使用卷积层函数的时候有一个参数padding可以选择same或者vaild,具体可以看之前的这篇文章:https://oldpan.me/archives/tf-keras-padding-vaild-same.而在pytorch中,现在的版本...转载 2019-05-06 17:22:22 · 3418 阅读 · 0 评论 -
[git] 使用git克隆指定分支的代码
使用Git下载指定分支命令为:git clone -b分支名 仓库地址例如:git clone -b 2D-Attention https://github.com/stephen-song/Speech-Transformer-plus-2DAttention.git将下载分支名为2D-Attention的分支仓库。如果直接:git clone https://g...原创 2019-05-06 17:58:29 · 810 阅读 · 0 评论 -
[深度学习] loss不下降的解决方法
链接:https://blog.ailemon.me/2019/02/26/solution-to-loss-doesnt-drop-in-nn-train/当我们训练一个神经网络模型的时候,我们经常会遇到这样的一个头疼的问题,那就是,神经网络模型的loss值不下降,以致我们无法训练,或者无法得到一个效果较好的模型。导致训练时loss不下降的原因有很多,而且,更普遍的来说,loss不下降一...转载 2019-04-10 16:18:35 · 149827 阅读 · 10 评论 -
[深度学习] 欠拟合问题以及解决方案
原文:https://blog.ailemon.me/2018/04/09/deep-learning-the-ways-to-solve-underfitting/我最近做深度学习在连续中文语音识别方向的应用的时候,根据一些论文和网上一些公开代码和模型结构,设计了一个神经网络的模型。但是在训练的时候,就首先遇到了很让人头疼的欠拟合问题。神经网络欠拟合的特征是,训练了很长时间,但是在训练集...转载 2019-04-10 16:01:22 · 3336 阅读 · 1 评论 -
[linux] 12个进程管理命令介绍
执行中的程序在称作进程。当程序以可执行文件存放在存储中,并且运行的时候,每个进程会被动态得分配系统资源、内存、安全属性和与之相关的状态。可以有多个进程关联到同一个程序,并同时执行不会互相干扰。操作系统会有效地管理和追踪所有运行着的进程。为了管理这些进程,用户应该能够:查看所有运行中的进程 查看进程消耗资源 定位个别进程并且对其执行指定操作 改变进程的优先级 杀死指定进程 限制进程...转载 2019-03-14 20:24:32 · 189 阅读 · 0 评论 -
[python] 动态import
如何在调用地时候才import所需要的文件?使用__import__方法decodeData.py文件中由所需要的类的定义:class decodeData(): @staticmethod def d(): print('decodeData')想在另一个文件test.py中生成这个类,且是在需要的时候才import# 首先将decod...原创 2019-03-10 23:26:37 · 334 阅读 · 0 评论 -
[docker] 启动docker的container(或者说image的实例)
1 首先查看有哪些image以及有哪些containersudo docker image ls# 结果REPOSITORY TAG IMAGE ID CREATED SIZEcurrycode/tf_serving_vc v1.0 26fdf...原创 2019-03-11 11:46:41 · 18776 阅读 · 2 评论 -
[tf_serving] 在docker中启动tensorflow_serving
首先在PC的命令行下将model的.pb文件copy到容器中:cd <path to serving model files>sudo docker cp ./serving_am tf_container_asr:/serving然后进入容器的命令行启动相关服务:root@2effa7569ce3:/serving# tensorflow_model_server...原创 2019-03-11 21:37:15 · 1014 阅读 · 0 评论 -
[python] 深拷贝和浅拷贝
http://www.runoob.com/w3cnote/python-understanding-dict-copy-shallow-or-deep.html原创 2019-03-12 00:17:08 · 117 阅读 · 0 评论 -
[tensorflow] 在训练模型的时候如何指定GPU进行训练
在用tensorflow训练深度学习模型的时候,假设我们在训练之前没有指定GPU来进行训练,则默认的是选用第0块GPU来训练我们的模型,而且其它几块GPU的也会显示被占用。有些时候,我们更希望可以通过自己指定一块或者几块GPU来训练我们的模型,而不是用这种默认的方法。接下来将简单介绍两种简单的方法。我们现有的GPU个数如下所示:1.第一种是通过tf.device()函数来指定训练时所要...转载 2019-03-13 20:00:23 · 1840 阅读 · 0 评论 -
[tensorflow] 模型保存、加载与转换详解
TensorFlow模型加载与转换详解本次讲解主要涉及到TensorFlow框架训练时候模型文件的管理以及转换。首先我们需要明确TensorFlow模型文件的存储格式以及文件个数: model_folder:------checkpoint------model.meta------model.data-00000-of-00001------model.index以上是模...转载 2019-03-13 20:35:00 · 1188 阅读 · 0 评论 -
[web] 网站压力测试工具-ab工具
写在前面在学习ab工具之前,我们需了解几个关于压力测试的概念 吞吐率(Requests per second) 概念:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。 计算公式:总请求数 / 处理完成这些请求数所花费的时间,即 Request per second = C...转载 2019-03-13 20:37:14 · 363 阅读 · 0 评论 -
[tensorflow] Tensorflow中learning rate 调整+ decay奇技淫巧
学习率设置在训练过程中,一般根据训练轮数设置动态变化的学习率。刚开始训练时:学习率以 0.01 ~ 0.001 为宜。 一定轮数过后:逐渐减缓。 接近训练结束:学习速率的衰减应该在100倍以上。Note:如果是迁移学习,由于模型已在原始数据上收敛,此时应设置较小学习率 (≤10−4≤10−4) 在新数据上进行微调。把脉 目标函数损失值 曲线理想情况下...转载 2019-03-31 16:28:44 · 3139 阅读 · 0 评论 -
放弃幻想,全面拥抱Transformer:自然语言处理三大特征抽取器(CNN/RNN/TF)比较
https://zhuanlan.zhihu.com/p/54743941Transformer是谷歌在17年做机器翻译任务的“Attention is all you need”的论文中提出的,引起了相当大的反响。 每一位从事NLP研发的同仁都应该透彻搞明白Transformer,它的重要性毫无疑问,尤其是你在看完我这篇文章之后,我相信你的紧迫感会更迫切,我就是这么一位善于制造焦虑的能手...转载 2019-03-27 17:44:54 · 1405 阅读 · 1 评论 -
[git] git更新远程代码到本地仓库
查看远程仓库:(pytorch) [ddy17@mjrc-server12 Speech-Transformer-plus-2DAttention]$ git remote -vorigin https://github.com/stephen-song/Speech-Transformer-plus-2DAttention.git (fetch)origin https://githu...原创 2019-05-06 19:49:56 · 1090 阅读 · 0 评论 -
[深度学习] 什么是marginalization
论文中经常看到这样的描述:Since we marginalize over all possible alignments z corresponding谷歌翻译显示这个词的意思是“边缘化”,那么在数学中,边缘化到底代表什么操作呢?首先,边缘化是概率论中的一个概念,它要求对一个变量的可能值求和,以确定另一个变量的边缘贡献。这个定义可能听起来有点抽象,让我们用一个例子来说明这一...原创 2019-05-09 16:29:21 · 4901 阅读 · 3 评论 -
[vim] 配置终端下的vim
https://www.jianshu.com/p/f0513d18742ahttps://www.jianshu.com/p/c690a3462224?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation转载 2019-05-07 14:01:20 · 539 阅读 · 0 评论 -
[linux] nohup + &后台挂载程序
nohup ./xxx.sh > xxx.out 2>&1 &原创 2019-06-04 17:21:26 · 1576 阅读 · 0 评论 -
[深度学习] loss=inf
原因一:data underflow原因: 在使用log函数时出现 data underflow解决方法:增加一个bias# originalg_wh = (matched[:, 2:] - matched[:, :2]) / priors[:, 2:]g_wh = torch.log(g_wh) / variances[1]# currenteps = 1e-5g_wh...原创 2019-06-25 17:06:34 · 6640 阅读 · 0 评论 -
[git] 删除repo中的文件夹,增加repo中的文件夹, 移动repo中的文件夹
在网页版的github中只能单独删除一个文件,所以对文件夹的删除必须在本地使用git命令。首先设置git:git config --global user.name "xxxxxxx"git config --global user.email "xxxxxxx"# 查看是否设置成功git config --list然后将远程分支克隆到本地:git clone -b py...原创 2019-08-06 11:29:19 · 2700 阅读 · 0 评论 -
[pytorch] 运行一段时间后 GPU OOM
pytorch的dataloader会将数据传到GPU上,这个过程GPU的mem占用会逐渐增加,为了避免GPUmen被无用的数据占用,可以在每个step后用del删除一些变量,也可以使用torch.cuda.empty_cache()释放显存:del targets, input_k, input_masktorch.cuda.empty_cache()这时能观察到GPU的显存一直在动...原创 2019-08-06 19:08:50 · 3914 阅读 · 1 评论 -
[pytorch] freeze parameters in sub model
https://discuss.pytorch.org/t/how-the-pytorch-freeze-network-in-some-layers-only-the-rest-of-the-training/7088原创 2019-08-09 09:27:01 · 797 阅读 · 0 评论 -
[每周知识碎片] 2
使用DistributedDataParallel ,在Ctrl C 退出后留下许多僵尸进程,kill之后显卡掉了,类似情况1, 2解决方法:使用ps aux|grep python查看python进程,然后按照顺序执行kill -9 PIDpytorch GPU显存优化策略https://www.jiqizhixin.com/articles/2018-10-17-...原创 2019-09-01 11:23:36 · 521 阅读 · 0 评论 -
[每周碎片知识] 1
nn对参数的初始化方式非常敏感,我用randn初始化时,怎么都不收敛(即便是只有一条数据的训练集),后来用xavier_uniform_之后结果大大改善。for name, params in xlnet.named_parameters(): if params.dim() >1: torch.nn.init.xavier_uniform_(params) ...原创 2019-08-18 12:19:26 · 257 阅读 · 0 评论 -
[每周知识碎片] 3
conda配置源conda config --show channelsconda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pk...原创 2019-09-01 12:02:37 · 473 阅读 · 0 评论 -
[pytorch] 名词理解
in - place operationhttps://discuss.pytorch.org/t/what-is-in-place-operation/16244https://zhuanlan.zhihu.com/p/38475183An in-place operation is an operation that changes directly the content of...原创 2019-06-10 17:25:10 · 328 阅读 · 0 评论 -
[pytorch] 每次训练的结果都不同(无法复现)
原因: 没有设置seed,torch的一些操作有随机性。解决:https://github.com/pytorch/pytorch/issues/7068 torch.manual_seed(seed) torch.cuda.manual_seed(seed) torch.cuda.manual_seed_all(seed) # if you are using ...原创 2019-06-05 18:11:56 · 13123 阅读 · 1 评论 -
[linux] 输出重定向与后台运行
python train.py > train.log 2>&1 &其中> train.log表示标准输出重定向到文件train.log中且是覆盖重写,如果想要追加方式写入,则是>> train.log2>&1 表示 将标准错误输出重定向到标准输出(0、1和2分别表示标准输入、标准输出和标准错误信息输出)最后一个&...原创 2019-05-19 23:05:11 · 3721 阅读 · 1 评论 -
[debug]THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=405 error=11 : invalid argume
解决 THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=405 error=11 : invalid argument完整错误:WARNING:root:Setting up a new session...Training...THCudaCheck FAIL file=/pytorch/aten/src...原创 2019-05-11 18:54:50 · 6077 阅读 · 1 评论 -
[linux] linux分屏与gpu实时查询
分屏指令:tmux这个指令有好多介绍了,就不详细赘述 Ctrl+b 激活控制台;此时以下按键生效 系统操作 ? 列出所有快捷键;按q返回 d 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话 ...原创 2019-05-11 20:14:43 · 461 阅读 · 0 评论 -
[django] 启动django工程
run.sh:# 将app文件夹下的网页模板收集到固定文件夹中python manage.py collectstatic # 开启server,将终端输出重定向到log文件中,后台挂载该python进程python manage.py runserver 219.223.172.28:8003 > log &# 查看端口lsof -i:8003使用nohup...原创 2019-05-12 16:10:31 · 314 阅读 · 0 评论