![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
自然语言处理
文章平均质量分 77
才大难为用
我不懒
展开
-
语言处理 之 模型部署
conda的打包环境,自己压缩解压就好了压缩 tar -zcvf renwolesshel.tar.gz /renwolesshel好,那怎么安装呢?解压缩mkdir ~/.conda/envs/fastspeech2tar -zxvf fastspeech2.tar.gz -C ~/.conda/envs/fastspeech2那么我弄得docker_export就是,2个G的docker image,还行吧。果然很危险啊。。。11TB,还剩下1TB,到底怎么可能呢卧槽....原创 2021-04-17 19:18:45 · 381 阅读 · 0 评论 -
语言处理 之 前端
关于前端这个设计的问题。。。由于原生组件脱离在 WebView 渲染流程外,因此在使用时有以下限制:原生组件的层级是最高的,所以页面中的其他组件无论设置z-index为多少,都无法盖在原生组件上。 后插入的原生组件可以覆盖之前的原生组件。 部分CSS样式无法应用于原生组件,例如: 无法对原生组件设置 CSS 动画 无法定义原生组件为position: fixed 不能在父级节点使用overflow: hidden来裁剪原生组件的显示区域 原生组件的事件监听不能使用......原创 2021-04-17 19:06:37 · 87 阅读 · 0 评论 -
语言处理 之 xvector
厦门大学智能语音实验室(XMUSPEECH)提供了基于Kaldi和Pytorch两个开源平台的基线系统:基于Kaldi的i-vector系统和x-vector系统,基于Pytorch的x-vector系统。厦门大学智能语音实验室同时开源了ASV-Subtools工具,ASV-Subtools工具相比于其他开源工具的优势在于其整合了Pytorch的训练和Kaldi的前端后端处理,可用于声纹识别系统的搭建。1、先将数据采样率降到16k写了一个脚本,可以了2、准备要提取数据的wav.scp原创 2021-04-16 23:46:21 · 1012 阅读 · 0 评论 -
语言处理 之 melgan
训练完毕了需要注意一下,上采样的倍数是由hop_size来决定的,为什么呢?需要明白一点,mel帧数 * 帧移 = 音频长度(采样点个数,可换算为音频时长,具体怎么做不用说了吧)因此,对于22050采样率, hopsize大小设置为256, 那么对应的mel-spectrogram需要上采样 256倍如果是16000采样率呢? 使用帧长是50ms,帧移 12.5ms 那么hopsize就是200啦,所以上采样倍数就是200倍啦.现在v1是256上采样倍数,v2是200上采样倍数放大图原创 2021-04-11 21:57:24 · 1181 阅读 · 1 评论 -
语言处理 之 后端
能够很好地迁移的话,最好用docker和img镜像打包好,嗯。conda的打包?conda只是python的部分,但是nvdia软件包不好搞啊。。。Conda-pack是一个命令行工具,用于打包 conda 环境,其中包括该环境中安装的软件包的所有二进制文件。 当您想在有限或没有网络访问的系统中重现环境时,此功能很有用。conda-pack 指定平台和操作系统,目标计算机必须具有与源计算机相同的平台和操作系统。CentOS和Ubuntu算一样的吧。打包一个环境:# Pack envi.原创 2021-04-11 00:35:28 · 201 阅读 · 0 评论 -
语言处理 之 毕业论文
我打算用latex写,当然,你需要详细学习这个东西。实际上,这个好做,它的语法简单,定义多。就是如此。当 latex 处理源文件时, 首先需要知道的就是作者所要创建的文档类型。 文档类型可由\documentclass 命令来指定。排版文档时, 你可能会发现某些时候基本的LATEX 并不能解决你的问题。 如果想插入图形(graphics)、 彩色文本(coloured text) 或源代码到你的文档中, 你就需要使用宏包来增强LATEX 的功能。 可使用如下命令调用宏包\usepackage[o原创 2021-04-06 11:00:35 · 462 阅读 · 0 评论 -
语言处理 之 Tacotron2
Tacotron2所得到的合成语音比参照语音的MOS仅仅低了0.05。可以理解为误差吧。基音的频率即为基频,决定整个音的音高。Tacotron貌似没有修改音色,它解决一个问题就足够了是吧。突然发现了这个大问题。taco的post net真的比fas2有用的多。变得更清晰了。噢,还没法用,可能要改了,原来是10层,现在是11层。不过我感觉应该好做。也是三个部件,speaker embedding生成器,tts系统,语音合成器。找到了,是concat,并且在attention之前原创 2021-04-04 14:31:30 · 1786 阅读 · 2 评论 -
语音处理 之 后续处理
这时候应该具体化环境了,不能模糊,但是现在能用先交差吧。最好是重新搭一个环境,是吧Python 3.7+ Cuda 10.1 CuDNN 7.6.5 Tensorflow 2.2/2.3 Tensorflow Addons>= 0.10.0因为cuda的关系,因此ts-gpu必须选2.0.0,这是顶天了的conda好难安装啊。。。pip install tensorflow-addons==0.10.0 -ihttps://pypi.doubanio.com/si..原创 2021-03-25 18:31:52 · 78 阅读 · 0 评论 -
语音处理 之 libritts,AIShell
LibriSpeech该数据集为包含文本和语音的有声读物数据集,由Vassil Panayotov编写的大约1000小时的16kHz读取英语演讲的语料库。数据来源于LibriVox项目的阅读有声读物,并经过细致的细分和一致。经过切割和整理成每条10秒左右的、经过文本标注的音频文件,非常适合入门使用。LibriTTS 是一种多语言英语语种,以 24kHz 采样率阅读英语语音约 585 小时,由 Heiga Zen 在 Google 语音和 Google 大脑团队成员的协助下编写。LibriTTS 语料库专原创 2021-03-11 23:59:46 · 2105 阅读 · 1 评论 -
语言处理 之 tensorflow,语料
创造令人信服的人造语言是当前的热门话题,谷歌在此领域可以说是领先的。Tacotron 2是一种训练神经网络以产生逼真语音的新方法,可以让语音发出完美效果,但几乎不需要任何语言知识。这项新技术采用了谷歌以前的两个语音生成项目中最好的:WaveNet和原来的Tacotron。WaveNet所产生所谓的令人耳目一新的一个音频样本,这听起来对任何对声音设计一无所知的人来说都是表示疑惑。WaveNet虽然很完美,但却需要大量关于语言的元数据,这其中包括发音,已知的语言特征等。Tacotron合成了更多的这些高级特原创 2020-12-31 22:10:14 · 193 阅读 · 0 评论 -
语音处理 之 问题解决
每个人的音高和音能是不一样的,说不定这个就会进入到speaker embedding中,这是否会造成影响?个性化,就是说话人的音色,个性化模型可以通过说话人分类任务进行预训练风格化,例如方言吧,风格化模型通常是与重构任务一起进行训练。然而说话人分类任务也存在一定的局限性,提取的SpeakerEmbedding或多或少会包含有风格信息,这会一定程度上造成解纠缠的混乱,对风格化以及个性化的效果造成影响。不同方言对说话人特征也是有影响的,这个就要注意训练集的相同。中文有多音字的问题,这个是..原创 2021-03-07 13:31:10 · 294 阅读 · 0 评论 -
语音处理 之 fastspeech代码
Normal Distribution 称为正态分布,也称为高斯分布,Truncated Normal Distribution一般翻译为截断正态分布,也有称为截尾正态分布。截断正态分布是截断分布(Truncated Distribution)的一种,那么截断分布是什么?截断分布是指,限制变量xx 取值范围(scope)的一种分布。例如,限制x取值在0到50之间,即{0<x<50}。因此,根据限制条件的不同,截断分布可以分为:2.1 限制取值上限,例如,负无穷<x<502.原创 2021-02-28 22:16:59 · 837 阅读 · 0 评论 -
语言处理 之 Speaker Embedding
Embedding经常用于风格转换,例如油画风格。实际上这也是一个神经网络。反正是提取特征嘛,大致框架是,可以类比图像的风格转换,风格转换的基本就是将内容和风格区分开来.风格转换就呼之欲出了,即两种loss的加权。图8中是分别采用风格损失函数和内容损失函数进行图像复原,上半部分是在不同层次的特征图上进行风格损失函数计算得到的不同的风格重建结果。下半部分则是在不同层次的特征表示上计算内容损失函数得到的不同的内容重建结果。而将这两种损失函数加权组合起来,就得到了一张具有图像B的风格和图像A的内容的图原创 2021-02-20 15:01:52 · 1229 阅读 · 0 评论 -
adb 调试
安装测试 APK 时,必须在install命令中使用-t选项。ime listcom.osfans.trimeadb kill-serveradb start-serveradb logcat可以显示日志,这是连续性的 V —— Verbose(最低,输出得最多) D —— Debug I —— Info W —— Warning E —— Error F —— Fatal S —— Silent(最高,啥也不输出...原创 2021-02-11 18:06:02 · 442 阅读 · 0 评论 -
语言处理 之 输入法
Ninja 是Google的一名程序员推出的注重速度的构建工具,一般在Unix/Linux上的程序通过make/makefile来构建编译,而Ninja通过将编译任务并行组织,大大提高了构建速度。Ninja的目标是成为汇编程序。构建系统在需要做出决策时变得缓慢。当您处于编辑 - 编译周期时,您希望它尽可能快 - 您希望构建系统执行必要的最少工作以确定需要立即构建的内容。Ninja包含描述任意依赖图所需的最基本功能。它缺乏语法使得无法表达复杂的决策。...原创 2021-01-16 21:21:56 · 138 阅读 · 0 评论 -
语音处理 之 训练维护
后台执行,当用户注销(logout)或者网络断开时,终端会收到 HUP(hangup)信号从而关闭其所有子进程。因此,我们的解决办法就有两种途径:要么让进程忽略 HUP 信号,要么让进程运行在新的会话里从而成为不属于此终端的子进程。用setsid好了。记录下id号就可以了。用这个查看id:ps -ef | grep pythonid现在为49719...原创 2021-01-13 01:32:41 · 553 阅读 · 0 评论 -
语言处理 之 tensorflowtts,MelGAN
现在是学习它的train该怎么做。原创 2021-01-09 11:17:22 · 1813 阅读 · 0 评论 -
语言处理 之 fastspeech2,ar,nar研究
回归分析(regression analysis)是确定两种或两种以上变数间相互依赖的定量关系的一种统计分析方法。运用十分广泛,回归分析按照涉及的自变量的多少,可分为一元回归分析和多元回归分析;按照自变量和因变量之间的关系类型,可分为线性回归分析和非线性回归分析。回归(regression):Y变量为连续数值型(continuous numerical variable)。这就是回归的本质。目前主流的神经机器翻译模型为自回归模型,每一步的译文单词的生成都依赖于之前的翻译结果,因此模型只能逐词生成译文,原创 2021-01-04 16:46:19 · 1121 阅读 · 0 评论 -
语音处理 之 开源数据集AiShell 3,个性化合成
开源数据集AiShell 3,该文章由北京希尔贝壳公司于2020.10.22更新,主要开源了多说话人数据,用于训练multispeakerTTS,为TTS的研究做贡献,语音合成的训练数据十分昂贵,尤其训练多人的TTS模型,需要大量的多人训练数据,这给很多个人或者研究机构造成很大阻碍。基于开源精神,北京希尔贝壳开源了218说话人85小时的高质量训练数据,给中文TTS研究提供很大的帮助,在此鼓掌。数据包含218人数据,数据为44.1khz,16bit。该数据集覆盖了性别,年龄,地域,多领域语料等多项因素.原创 2021-01-08 10:20:48 · 2005 阅读 · 0 评论 -
语言处理 之 conda,pip
激活python环境用:conda activate tensorflowtts然后tensorflow和tensorflowaddons应该都安装了。出现问题:ModuleNotFoundError: No module named 'yaml'用pip安装就可以了,注意更换阿里源pip install pyyaml -i http://mirrors.aliyun.com/pypi/simple/没有pytest,soundfile,jamo,inflect,unidecod原创 2021-01-07 17:30:38 · 474 阅读 · 0 评论 -
语音识别 之 阿里云数据规范
登录阿里云后执行sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://ym8768bk.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker完成.........原创 2020-09-09 23:17:52 · 55 阅读 · 0 评论 -
语言处理 之 cuda,cudnn
cuDNN的全称为NVIDIA CUDA® Deep Neural Network library,是NVIDIA专门针对深度神经网络(Deep Neural Networks)中的基础操作而设计基于GPU的加速库。cuDNN为深度神经网络中的标准流程提供了高度优化的实现方式,例如convolution、pooling、normalization以及activation layers的前向以及后向过程。cuDNN只是NVIDIA深度神经网络软件开发包中的其中一种加速库。基本上所有的深度学习框架都支持原创 2021-01-05 23:01:41 · 271 阅读 · 0 评论 -
语言处理 之 mel spectrum,梅尔谱图,时域,频域
不管是用传统的GMM模型,还是用机器学习中的SVM或神经网络模型,提取声音特征都是第一步。梅尔频谱和梅尔倒谱就是使用非常广泛的声音特征形式傅里叶变换实质涉及的是频域函数和时域函数的转换。如果时域是运动永不停止的,那么频域就是静止的。正弦波是频域中唯一存在的波形,这是频域中最重要的规则,即正弦波是对频域的描述,因为频域中的任何波形都可用正弦波合成。频域图像,也就是俗称的频谱。这个应该才是最正确的。傅里叶变换就是拆分出许多正弦波,也是说明为什么能将时域图像转化为频域图像。相位谱频谱只代原创 2021-01-04 15:56:14 · 3486 阅读 · 0 评论 -
语音识别 之 语言模型,声学模型
声学模型是对声学、语音学、环境的变量、说话人性别、 口音等的差异的知识表示,语言模型是对一组字序列构成的知识表示。语言模型表示某一字序列发生的概率,一般采用链式法则,把一个句子的概率拆解成器中的每个词的概率之积。设W是由w1, w2,...,wn组成的,则P(W)可以拆成(由条件概率公式和乘法公式):P(W) = P(w1)P(w2/w1)P(w3/w1,w2)...P(wn/w1,w2,..wn-1), 每一项都是在之前所有词的概率条件下,当前词的概率。由马尔卡夫模型的思想,最常见的做法.原创 2020-09-05 13:33:56 · 2818 阅读 · 0 评论 -
语音识别 之 端到端
说实话,传统的语音识别实在太繁琐了,需要声学模型,语言模型和发音词典三大组件,不同模型需要分来训练,然后通过WFST等解码器再融合到一起,步骤甚为繁琐,每个组件的训练或设计均需要专业知识和技术积累。端到端(End to End, E2E)只需要输入端的语音特征和输出端的文本信息,就融合成一个模型,直接实现输入语音到输出文本的转换。...原创 2020-08-27 09:28:25 · 849 阅读 · 0 评论 -
DNN-HMM
深度学习的方法的确是说烂了。原创 2020-08-27 09:16:05 · 201 阅读 · 0 评论 -
语音识别 之 解码器
解码器是什么呢?应该是数据处理完毕后解码得到结果。原创 2020-08-27 09:09:51 · 532 阅读 · 0 评论 -
语音识别 之 建模
因为语音具有连贯性,当连起来的时候可能就少发一些音了,一次对音素进行 建模比较好。原创 2020-08-26 20:50:05 · 444 阅读 · 0 评论 -
语音识别 之 GMM-HMM
GMM,Gaussian Mixture Model,GMM,高斯混合模型。数据往往不知道是哪个高斯分布,这给GMM的参数初始化带来困难。所有聚类算法都可用于此,常用的有K-means、LBG等。模型自适应,由于各地口音,采集设备,环境噪声等因素的差异,已训练过的GMM-HMM很可能和新领域的测试数据不匹配,导致识别效果变差,甚至性能急剧下降,因此需要做自适应训练。有最大后验概率估计MAP,最大线性似然回归是两种经典的自适应算法MLLR。匹配反正也是通过类似动态规划实现的。...原创 2020-08-26 20:43:14 · 284 阅读 · 0 评论 -
语音识别 之 HMM
HMM主要用于语音匹配,原创 2020-08-26 20:11:14 · 128 阅读 · 0 评论 -
语音识别 之 语音特征提取
预加重语音经发声者的口唇辐射发出,受到唇端辐射抑制,高频能量明显降低。分帧加窗短时傅里叶变换DFT。线性预测倒谱分析原创 2020-08-25 20:55:22 · 328 阅读 · 0 评论 -
语音识别 之 语音信号基础
语音编码比如16bit,16k究竟是什么意思。原创 2020-08-25 11:11:00 · 290 阅读 · 0 评论 -
语音识别 之 概论
语音识别建模方法DTW,模板匹配,实现两个不等长的语音的匹配,将语音匹配相似度问题转换为最优路径的问题。GMM-HMM,都快说烂了,不写了。DNN-HMM,端到端,E2E模型,原创 2020-10-01 15:51:26 · 146 阅读 · 0 评论 -
自然语言处理(七)Gensim与word2vec
Gensim是一个用于从文档中自动提取语义主题的Python库,足够智能,堪比无痛人流。它支持包括TF-IDF,LSA,LDA,和word2vec在内的多种主题模型算法,支持流式训练,并提供了诸如相似度计算,信息检索等一些常用任务的API接口.如果去除文本中的标点符号,然后停用词过滤,效果会更好。import rer = re.compile("[\s+\.\!\/_,$%^*(+\"\']+|[+——!;「」》::“”·‘’《,。?、~@#¥%……&*()()]+")sent.原创 2020-08-24 10:36:26 · 199 阅读 · 0 评论 -
自然语言处理(六)图的随机游走模型与噪声信道模型与条件随机场
图的随机游走模型非常适用于统计网页的权重,在文本处理方面则适用于提取关键字,生成人物关系网等。噪声信道模型本质上就是贝叶斯,它能直接适用于翻译,对于文本简单替换的微博文本规范化来说,感觉还更简单了,输入是正常字,输出是网络用语,整个就是一个贝叶斯公式,在网络用语知道的情况下,输入选P(输入/输出)最大的那一个,也就是P(输出/输入)P(输入)这两者尽可能的大,一个叫翻译模型一个叫语言模型,翻译模型是训练出来的,语言模型是符合语法,实际上是这个词占词库的比例,也就是出现的次数,对于句子来说,它可.原创 2020-06-20 17:29:07 · 649 阅读 · 0 评论 -
自然语言处理(五)准确率(Precision)、召回率(Recall)、F值(F-Measure)
准确率(accuracy)计算公式为(头部是真正和真负,也就是预测对的数量比上总量,叫准确率,也挺符合的):True Positive(真正,TP):将正类预测为正类数True Negative(真负,TN):将负类预测为负类数False Positive(假正,FP):将负类预测为正类数误报 (Type I error)False Negative(假负,FN):将正类预测为负类数→漏报 (Type II error)通常来说,正确率越高,分类器越好。因为这里数据分布不均衡(地震)原创 2020-06-10 08:25:44 · 1347 阅读 · 0 评论 -
自然语言处理(四)词向量的所有概念
word2vec是一种将word转为向量的方法,其包含两种算法,分别是skip-gram和CBOW,它们的最大区别是skip-gram是通过中心词去预测中心词周围的词,而CBOW是通过周围的词去预测中心词。one-hot representation以字典建立向量,词所处的位置用1表示,其余为0。此种方式词缺点是向量太稀疏造成内存消耗大,且无法表示词与词之间的语义顺序关系。把稀疏词向量稠密化,一种方法是传统的神经网络语言模型 (neural network language model NNLM)原创 2020-06-07 13:43:38 · 783 阅读 · 0 评论 -
自然语言处理(三)KL散度 朴素贝叶斯 tdidf 倒排索引
KL散度是一种衡量两个分布(比如两条线)之间的匹配程度的方法。KL 散度在形式上定义如下:p和q分别是两个分布的概率值,挺好理解的。但这是离散的。举个例子:KL散度越大越好。这就讲完了,KL散度好简单啊。。。比马尔可夫简单多了。。。One-hot向量,One-hot编码,就是其中一个是1,其余都是0的那个,就是你手写数字识别的结果那种,这种不能够直到单词之间的距离,或者说,相似度。容易受维数灾难的困扰,毕竟字太多了。...原创 2020-05-28 14:22:27 · 604 阅读 · 0 评论 -
自然语言处理(二)马尔可夫模型
还是说,自己实现一遍比较好。隐马模型用输入法的例子记住它。隐藏序列是汉字,观测序列是拼音,这个最浅显没有错。由观察序列求最优的隐藏序列。它是有三个主要问题的,这个问题最好用色子举例。初始概率矩阵:找出所有出现在词首的汉字,并统计它们出现在词首的次数,这个汉字的初始概率就是以这个汉字开始的单词/所有单词(是词库所有词还是语料所有词(重复的问题,为什么 )),没统计的汉字就认为出现在词首的概率是0,不写入数据库。发射概率矩阵:汉字转移到下一个汉字的概率,找出字典中每个汉字后面出现的汉字集合,原创 2020-05-28 10:12:04 · 666 阅读 · 0 评论 -
自然语言处理(一)句法分析, 乔姆斯基范式CYK+PCFG的短语结构
乔姆斯基范式:上下文无关文法CFL,没有空串,只有以下两个产生式A->BCA->a这就是乔姆斯基范式或者CNF。一般随便的CFL都可转化为CNF。这么看的话,CYK算法也是一个自底向上的分析过程吧。...原创 2020-04-28 23:46:51 · 4077 阅读 · 0 评论