经过遍历了一下最近八年的自然语言处理的项目,比赛,算法。初步了解了一下流程之后,最后制定出来了一个大致的步骤。
以下是关于NLP的基本步骤
- 数据预处理
- 中文分词
—— (方法)基于词典 基于规则 基于统计 基于字标注 基于人工智能
——(工具)哈工大资料,东北大学资料,中科院,波森,jieba,ansj,HanLP - 特征提取
—— (方法)根据词性,单词组合,位置
—— (方式)词是否出现,词的次数 - 特征选择
—— (方法)去停词,卡方,互信息
—— (工具)word2vec, doc2vec - 分类模型
—— (NB-SVM, LSTM, 隐马尔科夫, 贝叶斯) - 识别结果
其实可以把马尔科夫链看作是贝叶斯是他的延续
之后再github上面找到了一个开源的代码直接可以进行感情分析
而且作者真的巨良心,里面所有的代码没封装所以直接也可以根据他写的代码做一下二次开发,像我这种代码极其不规范的人来说,真的是一个很好的学习模板
下述是github上面readme的相关关于这个代码的方法总结
1.数据预处理
2.中文分析(Character-Based Generative Model)论文出处
3.特征提取
词性标注(TnT 3-gram 隐马)
4.特征选择
朴素贝叶斯