自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 李宏毅2020人类语言处理—P8语音辨识end

Language Model introductionLM:Estimated the probability of token sequence,估测一段token sequence出现的的几率token sequence:Y=y1,y2,...,ynY = y_1,y_2,...,y_nY=y1​,y2​,...,yn​LM:P(y1,y2,...,yn)P(y_1,y_2,...,y_n)P(y1​,y2​,...,yn​)HMM:使用Language Model是必需的,下图公式中的P(Y

2020-11-24 21:45:24 1

原创 李宏毅2020人类语言处理—P7

前言P6分析HMM、CTC、RNN-T如何穷举所有可能的alignment。下面只用RNN-T作为例子score computation

2020-11-24 12:16:22 2

原创 李宏毅2020人类语言处理—P6

视频目录bilibiliP1-course overviewP2-speech recognition introductionP3-LAS modelP4-CTC、RNN-T modelP5-HMM in speech recognitionP6-Alignment技术正文LAS,which has decoder:输入context vector C,输出probability distribution P(a)。无法找到全局最优,只能使用bean search。在训练的

2020-11-23 21:32:37 6

原创 李宏毅2020人类语言处理—P5

Model语音辨识的目标函数Hidden Markov Model,HMMtoken(Y的情况)选择character或者word的形式,对于HMM都太大了。所以需要转换:state是比phoneme更细的单位,do的uw与you的uw在phoneme中相同,为了区别就要划分更细的发音。HMM结构圆形为隐变量(状态S),长条为观测变量(acoustic feature X)条件:Transition Probability,状态转移矩阵:probability from one s

2020-11-22 22:57:46

原创 李宏毅2020人类语言处理—P4

Model 1Connectionist Temporal Classification,CTC [Graves,et al.ICML,2016] 解决on-line语音辨识(不需要听完整句话再作辨识),只有一个encoder模块,且不能使用双向RNN。问题: 每个acoustic input只代表10ms的语音,不是每个input都包含一个独特的token信息。所以模型要知道什么时候output空白信息(NULL),即这段语音听不到有用信息。如何处理空白信息和相同的语音预测size=V+1

2020-11-22 18:30:35

原创 李宏毅2020人类语言处理—P3

modelListen,Attend,and Spell(LAS)[Chorowski.et al,NLPS'2015]it is the typical seq2seq with attention.上半部encoderListen——encoder:acoustic features——>high-level representations1.Extract content information.2.Remove speaker variance,remove noise。Com

2020-11-22 01:30:24 3

原创 李宏毅2020人类语言处理—P2

Speech Recognitionspeech:a sequence of vector(length T, dimension d)text:a sequence of tokens(length N, V kinds of different tokens)T > NToken的单位,形式需要语言学家phoneme,音素(指一种语言中能区别两个词的最小语音单位)≤ 音标Lexicon,字典(word to phonemes)Grapheme,smallest unit

2020-11-17 19:54:44 8

原创 李宏毅2020人类语言处理—P1

人类语言处理(注重speech任务)== 自然语言处理(偏重Text任务)处理的对象:Text和Speech(语音)Speech processing is not only speech recognition。audio:1 second has 16k sample points, and each point has 256 possible values.所以没有人可以说同一段话两次本课程聚焦近3年的发展,探讨在“硬train一发”(把数据集丢进深度学习网络训练就能解决问题)之后的

2020-11-16 20:39:49 7

原创 剑指——c++重建二叉树

这么简单的思想,却弄了这么久。问题在于没学过c++,没掌握c++的函数和指针下面两篇分别使用了迭代器来复制vector参考:https://blog.csdn.net/sunhaobo1996/article/details/79471207涉及:迭代器的使用 vector::iteratorcopy函数: https://blog.csdn.net/qq_43066253/article/details/88702460先为vector分配空间,否则程序会崩std::back_insert

2020-11-10 17:11:31 16

原创 C++ struct,new,初始化

https://www.acwing.com/blog/content/584/ 总结得很全面LinkList L=new LNode();与LinkList L=new LNode;的区别https://blog.csdn.net/rush_mj/article/details/79753259struct关键字与Class关键字https://blog.csdn.net/dihe874981/article/details/84882752struct 如果定义了构造函数的话,就不能用大括号进

2020-11-10 16:01:29 69

原创 亿些函数

Numpynp.percentile计算一个多维数组的任意百分比分位数,此处的百分位是从小到大排列。(如四分位数)np.percentile(a, q, axis=None, out=None, overwrite_input=False, interpolation='linear', keepdims=False)np.percentile(a, q, axis=None, out=None, overwrite_input=False, interpolation='linear', kee

2020-11-08 21:29:20 38

原创 tf的小函数-tf.where,tf.gather

tf.sign和tf.reduce_sumhttps://blog.csdn.net/qq_15111861/article/details/81318963tf.sign就是sign函数tf.reduce_maxhttps://blog.csdn.net/lllxxq141592654/article/details/85345864注意keepdim和axisif keepdim==falseaxis=0,意思是我要消除第0维,所以找每一列的最大值来充当原来维度的唯一值,(维度数减..

2020-11-08 21:28:52 8

原创 李宏毅hw4,训练+调优

本次作業為 Twitter 上收集到的推文,每則推文都會被標注為正面或負面https://blog.csdn.net/iteapoy/article/details/105931612https://www.cnblogs.com/zyb993963526/p/13784199.html

2020-10-28 13:55:33 33

原创 DKT—Going Deeper with Deep Knowledge Tracing

复现的作者代码,使用TensorFlow0.12.1,cpu运行太慢了,19分钟一个epoch。然后想用gpu,在google colab上使用TensorFlow1.15.2 gpu,40秒一个epoch。看源码应该用了不止一天,虽然代码不长,就跟最基础的神经风格迁移代码长度差不多,which我只用了一个上午。1)使用原始的TensorFlow,处理矩阵异常难懂。各种tf.函数2)刚开始接触RNN。循环神经网络都要查阅3)对模型的输入输出不是把握很准。转换TensorFlow版本0.12到1.

2020-10-25 20:57:11 30

原创 metrics.roc_curve与r2_score

ROC曲线链接1:https://blog.csdn.net/sun91019718/article/details/101314545讲解了fpr,tpr,threshold=roc_curve(y_true,y_score)阈值是y_score内的元素去重后加入一个‘最大值+1’的值降序排序后组成的数据,每一个元素作为阈值,数据类型是一维数组。比如:y_score=np.array([0, 1, 2,0,3,1])对应的threshold=np.array([4, 3, 2,1,0])y_tr

2020-10-24 21:33:25 25

原创 tf的小函数-exponential_decay,stack,split

tf.splittf.split( value, num_or_size_splits, axis=0, num=None, name='split')value:准备切分的张量num_or_size_splits:准备切成几份axis : 准备在第几个维度上进行切割,1表示按照列切分,0表示按照行切分。其中分割方式分为两种如果num_or_size_splits 传入的 是一个整数,那直接在axis=D这个维度上把张量平均切分成几个小张量如果n

2020-10-24 19:20:31 29

原创 embedding层和全连接层的区别

本篇没技术含量,来源于知乎评论:问题来源:nn.Embedding输入的是每个词的索引。该层就通过索引返回对应的词向量。全连接层输入如果是one-hot(向量中只有一位为1),那返回的也是对应的那一行向量。作者:Hover链接:https://www.zhihu.com/question/344209738/answer/843929870Embededding 描述的一种功能,FC描述的是一种结构,二者的划分方式不同Embedding的目的是进行数据的降维和向量化,比如图像用CNN卷了之后

2020-10-23 20:13:03 49

原创 torch.nn.LSTM()

链接1:单个RNN单元可以使用torch.nn.RNNCell(), LSTMCell(), GRUCell() ——使用for循环来处理循环神经网络(时间维度)可以直接调用torch.nn.RNN(), LSTM(), GRU()rnn = nn.LSTM(10, 20, 2) # 初始化LSTM, 输入x的特征数=10, 输出隐藏状态的特征数=20, LSTM的层数=2input = torch.randn(5, 3, 10) # 字段长度/时间步总数=5, batch_size=3

2020-10-22 16:44:18 18

原创 tf.nn.rnn_cell.LSTMCell注意的地方+tf.nn.dynamic_rnn

https://www.cnblogs.com/lovychen/p/9368390.html这一篇讲解了RNN、LSTM的结构(计算公式)两个注意地方:1)[H,X] * W后和B维度不同, 如何相加2)class BasicRNNCell(LayerRNNCell)或者class BasicLSTMCell(LayerRNNCell)是一个batch,一个时刻的计算,若计算所有时刻,则循环执行以下代码,num_step(句长)次; tensorflow 已经封装好了...

2020-10-22 14:53:25 29

原创 终于碰上torch.nn.Embedding

转载:https://my.oschina.net/earnp/blog/1113896https://zhuanlan.zhihu.com/p/69898755?from_voters_page=true词向量实现(word embedding)是通过nn.Embedding函数来实现。一个保存了固定字典和大小的简单查找表。这个模块常用来保存词嵌入和用下标检索它们。模块的输入是一个下标的列表,输出是对应的词嵌入。import numpy as npimport torchimport t

2020-10-20 21:41:17 30

原创 pytorch小函数+gensim库 (1)

torch.data()或者直接print(x)获取的类型是tensor, item()则是float.注意torch.item()只能是一个值,适合返回loss,acctorch.eq(input, other, out=None)比较元素是否相等,第二个参数可以是一个数,或者是第一个参数同类型形状的张量。相同则对应位置为1,否则为0https://blog.csdn.net/DJames23/article/details/105847199/比较torch.eq()与x.eq()http

2020-10-20 15:36:44 19

原创 tf.sparse_to_dense用途

tf.sparse_to_dense ( sparse_indices , #sparse_indices[i] 包含完整索引,这是 sparse_values[i] 将放置的位置. output_shape , sparse_values , #如果是标量,则所有稀疏索引都设置为该单个值. default_value = 0 , #所有其他值的 dense 都设置为 default_value. validate_indices = True , #如果为 Tr

2020-10-18 17:51:02 35

原创 tf.nn.rnn_cell.MultiRNNCell

之前没接触过RNN,直接看代码https://github.com/siyuanzhao/2016-EDM这是关于知识追踪Going Deeper with Deep Knowledge Tracing的官方代码使用TensorFlow0.10.0,那是我还没学编程呢所以能看懂大概作用的函数就不细查,关于网络构造还是得看看。RNN函数tf.nn.rnn_cell.LSTMCell(final_hidden_size, state_is_tuple=True)state_is_tuple:默认为

2020-10-18 16:53:58 31

原创 google colab 换tensorflow1.x(亲测)

Running import tensorflowwill import the default version (currently 2.x). You can use 1.x by running a cell with the tensorflow_version magic before you run import tensorflow.%tensorflow_version 1.x#输出TensorFlow 1.x selected.Once you have specified a v

2020-10-15 23:32:53 32

原创 词集模型、词袋模型、词向量模型

分词与统计词集模型(set of words): 单词构成的集合,集合里面的元素不重复,有且只有一个。所以该模型仅仅考虑词是否在文本中出现,不考虑词频,只需一维。不足:一个词在文本在文本中出现1次和多次特征处理是一样的,所有词同等对待。词袋模型(Bag of Words): 将所有词语装进一个袋子里,把每一个单词都进行统计,同时计算每个单词出现的次数,所以需要两个维度进行统计。不足:不考虑词法和语序的问题,不考虑文本中词与词之间的上下文关系,即每个词语都是独立的,丢失一部分文本的语义。只考虑词的权重

2020-10-15 16:27:05 35

原创 python线程join,同步

多线程中join()的用法含代码 join()所完成的工作就是线程同步,即主线程任务结束之后,进入阻塞状态,一直等待其他的子线程执行结束之后,主线程在终止。 设置守护线程时,主线程一旦执行结束,则将杀死子线程。不设置时,主线程结束,子线程依然可以继续执行。global关键字 若想在函数内部对函数外的变量进行操作,就需要在函数内部声明其为global。线程同步 启动一个线程就是把一个函数传入并创建Thread实例,然后调用start()开始执行: 多线程中,所有变量都由所有线程共享,所以,任何

2020-10-09 10:11:30 7

原创 精确率、召回率到AUC

TP:预测是正样本,预测对了TN:预测是负样本,预测对了FP:预测是正样本,预测错了(误报)——真实是负样本FN:预测是负样本,预测错了(漏报)——真实是正样本召回率:Recall / True positive rate,TPR / 查全率 针对原有的样本而言,它表示的是样本中的正例有多少被预测正确了。那也有两种可能,一种是把原来的正类预测成正类(TP),另一种就是把原来的正类预测为负类(FN)。 R = TP/(TP+FN) 所有正样品中预测为正样品

2020-10-08 17:06:30 14

原创 谈自然语言处理

摘取清华大学刘知远老师的NLP研究入门之道系列文章的第二篇——自然语言处理简介。好记性不如烂笔头,而且简介很容易看完就忘,所以有必要记一下重点。 自然语言处理,计算机科学与语言学的交叉学科,又称为计算语言学。体现了人工智能的最高任务与境界。(顿时充满使命感) 语言涉及语法分析、语义分析、篇章理解等,语音涉及识别及文语转换,反正很多。 自然语言处理的兴起与机器翻译这一具体任务有着密切联系。“人工智能”被作为一个研究问题正式提出来的时候,创始人把计算机国际象棋和机器翻译作为两个标志性的任务。 四十

2020-09-30 13:34:36 5

原创 ELMO,BERT——让机器读懂文字

引言 上一节word embedding,主要讲的是Prediction based思想。本小白只知道nlp中有Bert和Transformer模型,所以先看个究竟,也不求完全理解。视频开头说明主题:如何让机器明白人类的词汇,one-hot是不行的,使用word embedding代替,用embedding表示一个词汇。word represent 问题:一词多义,bank可以表示银行,也可以表示河堤。但同一个词只能embedding同一个向量,这显然不够好。...

2020-09-28 20:41:26 3

原创 Transformer,bert—t for transformers

关系bert是unsupervise-train 的transformertransformer是seq2seq model with “self-attention”RNN:不能并行运算,得到b4之前要先算b3,但b4能结合前面的信息。CNN:能同时处理a1至a4的word vector。但对于前面的层,filter只能扫描一部分词语,后面的层才能结合更长的词语。Self-attention Layer的出现就是为了替代RNN,它的目的与RNN一样:input一个sequence,outpu

2020-09-27 21:13:40 24

原创 transformer之前的attention

前言 写着写着Transformer又新开一篇介绍Attention机制,因为一个模型往往不是腾空出世的,它建立在许多基础之上。但精力有限,我们又不能从一点深究到很远,所以要选择自己觉得有必要花时间看的知识点。 这篇文章就看看transformer中的self-attention与attention机制到底有什么牵连。主要总结两篇博客,但建议还是找国外的好一点。【1】https://zhuanlan.zhihu.com/p/127774251 开头【2】https://blog.csdn.net/u

2020-09-27 18:15:44 16

原创 virtual box安装Ubuntu,重启后闪屏无法操作

安装背景虚拟机:virtual box6.2 比较新linux版本:Ubuntu kylin-16.04应该出现的画面:但该画面一直闪烁,所以无法操作。虽然闪烁,但还是可以打开文件夹,说明是显示的问题。ctrl+alt+f1可以进入终端,说明系统没问题。ctrl+alt+f7进入ui界面,还是闪屏。个人认为虚拟机是否一定要安装在C盘–最后放在E盘,证明哪个盘都可以是否分配的硬盘不够大–证明20g的硬盘足够是否安装的虚拟机和操作系统配置太高–使用VMware Workstations虚

2020-09-22 16:11:27 48

原创 Word Embedding (word2vector)

引言 通过上一个看得吃力的视频,现在word embedding给我的印象就是cv中的auto-encoder,只不过网络不一样。目测不难,接下来看个究竟。word represent(word2vec)1-of-N Encoding cv中的one-hot。如果1w个单词,vector的维度也是1w。每个vector只有一个维是1,其余是0。 vector之间没有任何联系,生活中猫和狗属于动物;没有充分利用vector的空间,网络无法训练这么长的vector。Word Embedding 

2020-09-19 20:45:49 26

原创 Recurrent Neutral Network(RNN)- 李宏毅part2

引言 在part1中介绍了LSTM的结构,现在要研究网络如何训练,训练通常需要训练集sentence、标签label(reference vector)、损失函数定义loss。 Training:通过gradient descent调整weights,RNN需要改进成Backpropagation through time,BPTT,这里没有细讲。 Training时loss波动大不稳定不收敛。需要增加一个trick:Clipping, 给gradient设置一个threshold(阈值),使其不

2020-09-19 11:35:04 41

原创 Recurrent Neutral Network(RNN)- 李宏毅part1

引言 从cv转向nlp,大家一起来学习。 还没看nlp的学习路线,第一感觉就是先学一下RNN,LSTM,先把实际问题弄清楚。 个人认为nlp是处理时序性数据的,例如句子:I would like to arrive Taipei on November。我们想要知道这句话的语义信息,包括目的地,出发时间,出发地等。而除了Taipei、November之外,其他词在目前 看来是没有用的。所以这两个词为这句话的关注点。官方称为Slot Filling,槽填充 。槽,那些位置凹进去就代表我们需要的信息。R

2020-09-17 20:33:03 45

转载 最大间隙问题(线性时间)

https://blog.csdn.net/u011641865/article/details/20748109

2018-09-15 16:12:29 44

转载 markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...

2018-09-08 14:23:39 56

空空如也

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除