李理的博客

常见Linux工具用法

记录一下常见工具的用法。目前包括:命令行设置各种代理服务器的方法;ssh的各种用法;git上传大文件的方法。


Linux sort命令简介

用sort对文件排序,发现这个命令比想象中要复杂和强大,仔细研究了一下文档,记录一下。


微软Edx语音识别课程

本系列文章是作者学习微软在Edx上的语音识别课程DEV287x的笔记。

(6/6增加模块三:声学模型;6/15增加模块四:语言模型;7/15增加模块五:解码器)

这是一个非常好的课程,尤其是实验的设计,通过实际的代码让我们一步步完成特征提取;神经网络声学模型训练;语言模型训练和基于WFST的解码器实现。

我在《深度学习理论与实战:提高篇》里虽然介绍了语音识别的基础理论,也试图提供实战的例子,比如HMM和WFST代码示例Kaldi简介DeepSpeech理论与实战等内容。但是这些例子都是孤零零没有联系的,读者很难了解全貌,那本书中缺乏一个完整的从头到尾的基于WFST的HMM-DNN的例子。虽然End-to-end的语音识别系统在是学术界研究的重点,但是目前业界流行的还是HMM-DNN的基于WFST解码器的系统。在那本书里没有介绍WFST尤其是解码器的代码,只是简单的介绍了流行的Kaldi系统的用法,但是Kaldi的代码过于复杂,不适合初学者了解WFST的基本原理。

最近找到了这个课程,花时间学习了一遍,觉得这个课程的例子非常好,因此借这个课程把之前那本书的缺陷弥补一下。另外这个课程的理论讲到太少了,比如WFST的解码器,只是提供了代码,而没有任何介绍,这让学习者很难看懂其中的代码,因此我也对其中不够详细的地方做一些补充。


Kaldi文档解读

本系列文章主要是翻译Kaldi的官方文档,但是也不完全是翻译。有些内容比如如何安装作者会略过,而其它重要的内容作者会根据自己的理解增加更加详细的说明。(6/6增加术语表;6/12增加数据准备;6/15增加Kaldi的编译过程;6/22增加Kaldi的矩阵库Kaldi的特征提取;7/18增加外部矩阵库;7/19增加CUDA矩阵库;7/26增加Kaldi的I/O机制;8/1增加Kaldi的I/O机制的命令行用法;8/9增加Kaldi的logging和错误报告Parsing命令行选项其它工具;8/15增加Kaldi的聚类机制)


读汪曾祺

我觉得汪老的小说特别适合现在的人来阅读,原因当然很多,但是其中之一就是他的小说都很短。

借用石头向空空道人说的:“今之人,贫者日为衣食所累,富者又怀不足之心,纵然一时稍闲,又有贪淫恋色,好货寻愁之事,那里去有工夫看那长篇大论?所以汪老的小说,也不愿世人称奇道妙,也不定要世人喜悦检读,只愿他们当那醉淫饱卧之时,或避事去愁之际,把此一玩,岂不省了些寿命筋力?就比那谋虚逐妄,却也省了口舌是非之害,腿脚奔忙之苦。再者,亦令世人换新眼目,不比那些胡牵乱扯,忽离忽遇,满纸才人淑女、子建文君红娘小玉等通共熟套之旧稿。”

每天花上一二十分钟阅读几页汪老的文字,不比用手机刷那些谋虚逐妄的内容要强得多?

(8/20增加《看水》;8/29增加《大淖记事》;9/4增加《云致秋行状》;9/24增加《仁慧》;9/30增加《皮凤三楦房子》;10/21增加《鉴赏家》);2020/6/7增加《小姨娘》;2020/6/13增加《鲍团长》;2020/6/25增加《关于葡萄》


日历相关的算法

这是2011年写的一篇文章,主要介绍日历相关的概念。这些基本概念今天依然是有用的,因此把它整理到我的博客上。历法其实是很有意思的学问,通过本文可以更清楚了了解中国的农历。八年过去了,对于Java语言来说date time相关的API发生了很大的变化,首先是Joda-Time在Java8之前成为事实的标准,Java8通过JSR 310引入了新的API。另外之前计算农历的icu目前看已经有问题了,因此本文介绍新的time4j库用来计算农历。


mxGraph教程

作为伪全栈工程师,在缺人的时候当然要冲出来。本文调研mxGraph的基本用法,用于绘制流程图。


使用BERT回归的代码

我们在做句子相似度计算的时候需要的输出是一个0到1之间的实数值,用来表示句子的相似程度。BERT默认只提供了run_classifier.py,它可以用于Fine-Tuning文本分类、相似度分类、Entailment等任务。但是无法实现实数值的输出,因此我参照run_classifier.py实现了一个run_reg.py。


使用Beamer做Presentation

最近写书,因此学习了$\LaTeX$,这真是神器。回想当年写毕业论文调Word页眉、页脚和目录格式调到吐血的场景,真是往事不堪回首。最近要做Presentation,本来想用WPS演示,但是试了一下Beamer后,发现比用PPT这类方便多了,因为我想怎么控制它的展示方式都可以。当然$\LaTeX$上手比较复杂,而且用户少碰到问题也比较麻烦,尤其是默认对中文不是太友好。

但其实人的学习能力是逼出来的,建议想学习的同学也要逼一下自己。比如想学习Linux就千万不用装什么双系统和虚拟机,直接把Windows/Mac系统扔了装上Linux,保证就能学会。当然作为非主流用户,会受到各种隐性的歧视,比如网银不支持,比如没有QQ。不过习惯了也还好,不用网银、没有支付宝账号,只在手机上用QQ,也不是世界末日。