@kpatrick
2019-08-01T16:37:47.000000Z
字数 689
阅读 47
让机器读懂文字
work
1. 文字表示
- 字符级:每一个字符一个token(原始bert对中文的处理)
- 单词级: 每一个单词一个token(英语)
- 短语级:每个短语/分词一个token(改进型bert,先验知识)
1.1 one-hot
问:cv中图的像素点表示和文字表示的联系?
答:一个rgb像素点有1600w+种可能,字符26,常用词数千上万,如果one-hot表示,很难抽取语义。
1.2 向量
- n维,线性变换,词汇表有m个词,(m, 1)-> (n, 1)
- 低维向量空间中存在着联系
2. 语言模型
- 深度学习中的语言模型: 自回归语言模型,mask语言模型
- 语言模型所要做的,就是‘理解’文字
- 如何训练语言模型?大型语料库的无监督学习。训练的方法有skip-gram, cbow等
- 训语言模型,预测词语,中间产物--embedding
3. embedding
- 文本被抽取出来的特征
- 将具体的字符/单词信息,‘嵌入’到空间中
- 空间中的每一个字符/词,都是一个向量,且向量之间有联系,不再是两两正交(线性变换,坐标系,矩阵乘法几何意义)
- 其实cv中预训练模型输出的,也是一个embedding(特征抽取)
4. 文本处理模型
- 不考虑时间片信息:dense,cnn
- 考虑时间片信息:seq2seq
5. RNN和Self-attention
- RNN,LSTM,GRU的产生
- RNN对于长文本的梯度问题,LSTM,GRU缓解
- RNN类的致命缺陷 -- 训练时间太长
- Self-attention的出现,使得训练得以并行,可以训练到很深的网络,像cv的预训练网络
6. Bert的未来