- 博客(49)
- 问答 (1)
- 收藏
- 关注
原创 【Kaldi例子】构图与解码
构图和解码基于HMM的语音识别模型实际上是在解码图中寻找最优路径。因此,要进行解码,需要先构建解码图:# Graph compilationutils/mkgraph.sh data/lang_test_tg exp/mono0a exp/mono0a/graph_tgpr# Decodingsteps/decode.sh --nj 1 --cmd "$decode_cmd" \ exp/mono0a/graph_tgpr data/test_yesno exp/mono0a/decod
2022-01-15 15:27:08
2381
原创 【Kaldi例子】Kaldi经典声学建模
基本概念在经典语音识别框架中,一个声学模型就是一组HMM。对于语音识别框架中的声学模型中的每个HMM,都定义该HMM中有多少个状态,以及以各个状态起始的马尔可夫链的初始概率、个状态间的转移概率和每个状态的概率分布函数。在语音识别实践中,一般令初始概率恒为1,把状态间的转移概率预设为固定值,不在训练过程中更新状态转移概率。声学模型包含的信息主要是状态定义和各状态的观察概率分布。如果使用高斯混合模型对观察概率分布建模,那就是GMM-HMM模型,如果用神经网络模型对观察概率分布建模,那就是NN-HMM。HM
2022-01-12 15:31:09
3602
原创 【Kaldi例子】Kaldi特征提取
声学特征提取因为从语音时域信号中很难找到发音规律,即使是类似的发音,也可能看起来非常不同,因此一般不同直接用于识别。 事实上,我们的耳朵是通过频域而不是波形来辨认声音的,吧时域信号做短时傅里叶变换(Short-time Fourier Transform,STFT),就得到了声音的频谱。我们以帧为单位,根据听觉感知原理,按需调整声音片段频谱中各个片段的赋值,将其参数化,得到适合表示语音信号特性的向量,这就是声学特征(Acoustic Feature)。虽然在端到端语音识别研究中,也出现了一些直接输入语音波
2022-01-12 15:30:33
2075
原创 【Kaldi例子】Librispeech数据整理
数据分集数据采集自有声书网站,首先对每个句子做一遍语音识别,识别模型使用WSJ示例中的声学模型,语言模型使用二元文法,语言模型数据为语音数据对应的电子书文本。根据识别结果,统计每个说话人的WER,从低到高排序,前一半标记为clean,表示这些说话人语音比较清晰,其余标记为other。从clean数据中,随机抽取20名男性和20名女性作为开发集(dev-clean),剩余说话人抽取相同规模的测试集(test-clean),其余作为训练集。训练集随机分为100小时和360小时的子集(train-clean-
2022-01-12 15:29:55
9784
3
原创 【Kaldi例子】YesNo:Hello Kaldi
本文是对Kaldi中最简单例子egs/yesno/s5的实验记录。数据集使用数据集waves_yesno,该数据集只有yes和no两种发音。数据集没有文本文件,因为音频对应的文本都由wav文件的文件名所表示。例如1_0_1_0_1_0_0_1.wav中,1表示yes,0表示no。数据准备划分训练集和测试集把数据规范成Kaldi规定的数据文件夹格式# 运行local/prepare_data.sh waves_yesno后生成的结果# 其中local文件夹里的脚本是特别为该数据集编写的,
2021-12-11 16:39:58
3626
原创 【ASR-Tutorial】混合高斯模型
混合高斯模型1. 高斯分布如果连续标量随机变量xxx概率密度函数为:p(x)=1(2π)1/2σexp[−12(x−μσ)2],(−inf<x<inf;σ>0)p(x)=\frac{1}{(2\pi)^{1/2}\sigma}\exp[-\frac{1}{2}(\frac{x-\mu}{\sigma})^2],\\(-\inf<x<\inf;\sigma>0)p(x)=(2π)1/2σ1exp[−21(σx−μ)2],(−inf<x<i
2021-11-28 10:26:39
1474
原创 【后端进阶】Spring Boot缓存
【后端进阶】Spring Boot缓存缓存使用原理运行流程@Cacheable@CachePut@CacheEvict@Caching@CacheConfig高级用法自定义KeyGenerator指定CacheManager指定condition整合Redis缓存首次查询数据库后,将数据存到缓存中,下次直接从缓存中取数据,效率更高。使用App类上加@EnableCaching注解。Service方法上加@Cacheable注解。原理CacheAutoConfiguration类使用sel
2021-10-03 11:17:03
595
转载 矩阵乘法幂
参考:https://blog.youkuaiyun.com/u014799564/article/details/97623391; https://blog.youkuaiyun.com/bianxia123456/article/details/105167294/int __pow(int a,int b){ int ans = 1; while(b--){ ans *= a; } return ans;}做题的时候都需要处理指数很大运算,例如101000000,这个
2021-03-26 18:33:25
897
1
BFS
当前节点入队访问当前节点左右节点依次作为当前节点,入队并访问# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution: def minDe.
2021-03-26 14:56:42
123
原创 数据集距离矩阵numpy求法
数据集距离矩阵numpy求法公式∵Dij=(xi−xj)(xi−xj)T=ri−2xixjT+rj (ri=∑jxij2)∴D=r−2XXT+rT\begin{aligned}\because D_{ij}&=(x_i-x_j)(x_i-x_j)^T\\&=r_i-2x_ix_j^T+r_j\;\;\;(r_i=\sum\limits_jx_{ij}^2)\\\therefore D&=r-2XX^T+r^T\end{aligned}∵Dij∴D=(xi
2021-02-26 14:29:08
523
原创 或许有用的FT平移、旋转、缩放不变特征
FT平移、旋转、缩放不变性平移f2(x,y)=f1(x−x0,y−y0)F2(fx,fy)=e−j2π(fxx+fyy)×F1(fx,fy)M1=M2,with Mi=∣Fi∣f_2(x,y)=f_1(x-x_0,y-y_0)\\F_2(f_x,f_y)=e^{-j2\pi(f_xx+f_yy)}\times F_1(f_x,f_y)\\M_1=M_2,with\;M_i=|F_i|f2(x,y)=f1(x−x0,y−y0)F2(fx,fy)=e−j2π(fxx+fyy)×F
2021-02-11 11:04:12
449
原创 任意分布随机数生成
任意分布随机数生成概率积分变换取舍法概率积分变换若X为连续型随机变量,其cdf为FX,则U=FX−1(X)∼U(0,1)U=F^{-1}_X(X) \sim U(0,1)U=FX−1(X)∼U(0,1)证明:FX(X=u)=P(X≤u)FX−1(u)={x∣FX(x)=u}=definf{x∣FX(x)=u}F_X(X=u)=P(X\leq u)\\F^{-1}_X(u) =\{x|F_X(x)=u\}\overset{\underset{def}{}}{=}\inf\{x|F_X(x
2020-09-14 14:25:24
716
原创 【论文笔记】生成对抗网络Generative adversarial nets
【论文笔记】生成对抗网络Generative adversarial netsGenerative Adversarial Nets核心思想概念理论证明*最优性收敛性方法对抗训练后期前期流程Generative Adversarial Nets核心思想GAN是一种生成模型,GAN中除了生成网络外,加入了一个与生成网络对立的判别网络。该网络学习确定样本是来自生成网络还是来自真实数据。 生成网络可以被认为类似于一组伪造者,试图生产假币并在未经检测的情况下使用它,而判别网络类似于警察,试图发现伪钞。 在这场
2020-09-14 12:15:40
200
转载 windows提供ssh服务
https://jingyan.baidu.com/article/a3aad71a64fb38f1fa009671.html
2020-09-10 16:50:26
328
原创 最小冗余配置jupyter虚拟环境
网上大多数jupyter虚拟环境配置教程要使用conda,但其实conda并不是必要的,conda是virtualenv和pip的结合体。你已经有pip了,现在仅仅缺少virtualenv安装virtualenvpip install virtualenv创建虚拟环境virtualenv --python=python3 env激活虚拟环境Linux:source env/bin/activateWindows:.\env\Script\activate安装jupyter ke
2020-09-02 11:40:33
130
原创 一个html小例子,解一元二次方程练习
一个html的小例子,可以用于初高中生练习解一元二次方程<!DOCTYPE html><html><head><meta charset="utf-8"><title>十字相乘练习</title></head><body><script>var ans = ""function gcd3(a,b,c){ var result = 1; for(var i = 1; i <
2020-08-22 22:59:41
1579
原创 【论文笔记】半监督的多视图学习:Semi-supervised Multi-view Deep Discriminant Representation Learning
【论文笔记】Semi-supervised Multi-view Deep Discriminant Representation Learning1. 概念多视图学习(Multiview Learning)1. 概念多视图学习(Multiview Learning)数据的采集越来越呈现出多源异构特性,在越来越多的实际问题中存在着大量对应着多组数据源的样本,即多视图数据。如果使用单视图(即用所有特征组成一个特征向量),将无法选择一种既适合所有数据类型的普适学习方法,在这种情况下,使用多视图的表示法较为
2020-08-09 16:38:00
3043
3
原创 【统计学习笔记】拉格朗日乘数法与约束最优化问题
【统计学习笔记】拉格朗日乘数法解约束最优化问题1. 拉格朗日函数2. 约束最优化问题2.1 无约束最优化2.2 等式约束最优化2.3 不等式约束最优化1. 拉格朗日函数先考虑一下问题:当ϕ(x,y,z)=0时,求函数F(x,y,z)的极值。当\phi(x,y,z)=0时,求函数F(x,y,z)的极值。当ϕ(x,y,z)=0时,求函数F(x,y,z)的极值。设曲面F(x,y,z)−u=0F(x,y,z)-u=0F(x,y,z)−u=0,随着u的改变,当该曲面与曲面ϕ(x,y,z)=0\phi(x,y,
2020-07-31 22:14:48
947
原创 【统计学习笔记】习题四
【统计学习笔记】习题四4.1 朴素贝叶斯概率估计公式a. P(Y=ck)P(Y=c_k)P(Y=ck)b. P(X(j)=ajl∣Y=ck)P(X^{(j)}=a_{jl}|Y=c_k)P(X(j)=ajl∣Y=ck)4.1 朴素贝叶斯概率估计公式a. P(Y=ck)P(Y=c_k)P(Y=ck)设P(Y=ck)=θP(Y=c_k)=\thetaP(Y=ck)=θ,进行N次实验,n次Y=ck。则有:L(θ)=θn(1−θ)N−nL(\theta)=\theta^n(1-\theta)^
2020-07-30 17:24:05
174
原创 【统计学习笔记】朴素贝叶斯法
【统计学习笔记】朴素贝叶斯法class NaiveBayes: def __init__(self): self.model = None # 数学期望 @staticmethod def mean(X): return sum(X) / float(len(X)) # 标准差(方差) def stdev(self, X): avg = self.mean(X) return math.s
2020-07-30 16:18:39
187
原创 【一天一个Python小案例】网页表格抓取
【一天一个Python小案例】网页表格抓取import requests, json, os, csvfrom bs4 import BeautifulSoupimport numpy as npdef new_prop(prop_info): print(" new proposal ".center(20, "-")) print(" - num: %s\n" " - Source Name: %s\n" " - Proposal ID
2020-07-21 10:21:45
192
原创 【统计学习笔记】平方和
【统计学习笔记】当k值大于1时,KNN模型对特征空间的划分1. 空间划分2. 区域编号1. 空间划分当k=1时,特征空间中的每一点简单从属于它的最近邻,但是当k>1时,对于空间中的不同点,若它们从属的k个点中有一个点不同,则应被划分到两个区域。2. 区域编号为了给每个区域标号,则需要根据k个点的信息,生成一个唯一编号,与其他区域区分。这里设每个点的标号为n(n为正整数),则区域编号为:N=∑i=1kn2N=\sum\limits_{i=1}^kn^2N=i=1∑kn2若不同k个正整
2020-07-18 22:22:33
502
原创 【一天一个Python小案例】Python登录教务系统(手动输入验证码)
【一天一个Python小案例】Python登录教务系统(手动输入验证码)因验证码识别率太低,暂时手动输入#!/usr/bin/env python# coding:utf-8from selenium import webdriverfrom PIL import Imageimport timeimport matplotlib.pyplot as pltif __name__ == '__main__': browser = webdriver.PhantomJS()
2020-07-18 15:47:18
416
转载 【一天一个Python小案例】验证码识别(基于百度OCR)
【一天一个Python小案例】验证码识别import requests, os, timefrom lxml import etreedef get_page(url, headers): response = requests.get(url, headers=headers) if response.status_code == 200: # print(response.text) return response.text retur
2020-07-16 17:32:35
188
转载 【一天一个Python小案例】RGB图转简笔画
【一天一个Python小案例】RGB图转简笔画import scipy.ndimageimport numpy as npimport matplotlib.pyplot as pltdef grayscale(rgb): return np.dot(rgb[..., :3], [0.299, 0.587, 0.114])def dodge(front, back): result = front * 255 / (255 - back) result[resul
2020-07-16 10:57:50
750
转载 【一天一个Python小案例】简易画板
【一天一个Python小案例】简易画板import pygamefrom pygame.locals import *class Brush: def __init__(self, screen): self.screen = screen self.color = (0, 0, 0) self.size = 0.5 self.drawing = False self.last_pos = None
2020-07-15 21:28:10
804
原创 【统计学习笔记】KNN
【统计学习笔记】KNN模型算法代码实现模型算法线性扫描计算耗时,当训练数据集大时效率很低。代码实现KNNclass KNN: def __init__(self, X_train, y_train, n_neighbors=3, p=2): """ parameter: n_neighbors 临近点个数 parameter: p 距离度量 """ self.n = n_neighbors
2020-07-14 21:08:07
205
原创 【统计学习笔记】最大似然法
【统计学习笔记】最大似然法最大似然原理随机试验有若干个可能的结果,如果在一次试验中结果A发生,而导致结果A发生的原因有很多,在分析导致结果A发生的原因时,使结果A发生的概率最大的原因,推断为导致结果A发生的真实原因。似然函数设X1,X2,⋯ ,XnX_1,X_2,\cdots,X_nX1,X2,⋯,Xn使来自总体X的样本,x1,x2,⋯ ,xnx_1,x_2,\cdots,x_nx1,x2,⋯,xn是样本观察值,令L(θ)=L(θ;x1,⋯ ,xn)={∏i=1np(xi;θ)当X是离
2020-07-08 16:03:06
1033
原创 【统计学习笔记】泛化误差上界
【统计学习笔记】泛化误差上界1. 泛化误差2. 泛化误差上界1. 泛化误差学习方法的泛化能力是指由该方法学习到的模型对未知数据的预测能力,是学习方法本质上重要的性质。测试误差是依赖于测试数据集的,泛化误差是理论上的概念,如果学到的模型是f^\hat{f}f^,那么这个模型对未知数据预测的误差即为泛化误差:Rexp(f^)=EP[L(Y,f^(X))]=∫X×YL(y,f^(x))P(x,y)dxdy……(1)R_{exp}(\hat{f})=E_P[L(Y,\hat{f}(X))]=\int_{\m
2020-07-08 10:47:14
1248
原创 【统计学习笔记】测试误差与正则化方法
【统计学习笔记】测试误差与正则化方法正则化方法中,结构风险最小的模型就是最佳模型。理想情况下,测试误差最小的模型是最佳模型。测试误差随模型复杂度增加先减小而后增大,但是结构风险不是。正则化方法并不是完美的模型选择方法。...
2020-07-07 21:39:29
295
原创 【统计学习笔记】模型选择方法:正则化与交叉验证
【统计学习笔记】模型选择方法:正则化与交叉验证正则化交叉验证简单交叉验证S折交叉验证留一交叉验证正则化正则化是结构风险最小化策略的实现,是在经验风险上加一个正则化项。正则化项一般是模型复杂度的单调递增函数。正则化一般具有如下形式:minf∈F=1N∑i=1NL(yi,f(xi))+λJ(f)……(1)\min\limits_{f\in\mathcal{F}}=\frac{1}{N}\sum\limits_{i=1}^NL(y_i,f(x_i))+\lambda J(f) ……(1)f∈Fmin
2020-07-07 20:39:27
341
原创 【django学习笔记】HelloDjango
创建项目django-admin startproject HelloDjango目录结构HelloDjango/├── HelloDjango│ ├── asgi.py│ ├── __init__.py│ ├── settings.py│ ├── urls.py│ └── wsgi.py└── manage.py为了能够外网访问,修改HelloDjang...
2020-02-13 13:58:08
191
空空如也
求助!MATLAB Application Compiler?
2017-07-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人