nlp自然语言处理入门笔记

先修课程

  1. Machine Learning(李航-统计学习方法-第二版,吴恩达Machine Learning,该视频建议有时间的同学做练习题matlab、python语言各来一遍,没时间的同学建议直接python或者R语言)。
  2. 了解神经网络RNN、CNN的知识,主要是先了解一下RNN的原理和结构。

入门简易指南

  1. 词向量
  2. 句向量
  3. Bi-LSTM
  4. dense layer
  5. 损失函数
  6. tf.Session(), variables, Tensor这些概念
  7. 跑一个完整的数据集,如经典的数据据yelp评论情感分析

词向量

  1. [word2vec/glove/fastText/elmo/bert] 的简单介绍
    作者:JayLou。
    这里主要是想了解一下这几种常见的词向量模型。有个初步的认识,具体每个词向量模型肯定还有很多东西。

  2. 这里首先推荐看一下斯坦福自然语言处理公开课CS224d里面的word2vec,对词向量有一个基本的了解。那么恭喜,这算是自然语言处理领域里的“hello world”了。

  3. word2vec、fastText等词向量训练使用gensim库即可,此处介绍一下glove模型,glove模型的论文公式了解即可,因为这个模型的公式有点玄学。理解glove模型
    文章作者:饺子醋

    glove模型关键是要会用就行,Stanford University 官方使用c语言编写,可以下载已经训练好的数据,也可以训练自己的语料库后生成词向量字典,再用 gensim.models.Word2Vec.load_word2vec_format() 调用即可在python语言中使用。

  4. 接下来我主要介绍一下当前非常火热的bert模型:
    传统词向量模型存在无法解决一词多义的问题,即一个token用一个固定的vector表示,也就是只有一个意思,因此需要一种动态的表示方法,bert就是这样的一种模型。
    学习bert模型首先需要学习Transformer
    bert模型介绍以及官方代码
    想了想还是先不介绍bert了,先跑完一个经典数据集理解了nlp再来看bert吧。
    入门阅读程序的参考请往下看

句向量、Bi-LSTM、全连接层、损失函数及其最小化、tensorflow入门、跑一个完整的公开数据集(yelp)

  1. 有了前面词向量的基本了解,也就是说文字语料表示成了向量,我们才可以对其进行训练。那么接下来的这一系列步骤,推荐大家读一个别人写的代码,就能够成功入门nlp了!我读的是用BiLSTM训练yelp数据集的代码,(作者:Ruizhang1993)。vocabulary通过统计语料库的词频来确定哪些词用作字典,其他词统一表示成unk。另外要提一点的是,这里的词向量用作一个可训练Variable,并进行了变量的随机初始化。在其他自然语言处理应用的场景下,实际上也可以用word2vec或者bert进行一个预训练,然后再将其用于下游任务。

  2. 另外想再说一下这个代码的具体步骤,以便于从整体思路上了解整个nlp的训练过程。
    这里关键是要了解tensorflow代码的书写步骤:构建TF计算流图 、执行计算流图
    构建TF计算流图:
    1)占位,用来之后设置batch_size分批送入训练集
    2)写模型代码,BiLSTM或者其他模型
    3)计算损失函数loss
    4)确定优化函数,有好几种,不过能用上就行
    5)执行计算流图阶段就是设置batch_size的数据结构,分批送进去训练
    6)最后学习一下模型的保存和加载

参考资料

https://zhuanlan.zhihu.com/p/56382372
https://blog.csdn.net/coderTC/article/details/73864097
https://jalammar.github.io/illustrated-transformer/
https://jalammar.github.io/illustrated-bert/
https://blog.csdn.net/g11d111/article/details/76639460
https://github.com/muenn/BiLSTM_Text_Classifier_tf

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值