# WeiboSentiment 用各种机器学习对中文微博进行情感分析 语料来源: https://github.com/dengxiuqi/weibo2018 --- ##### "微博情感分析"是我本科的毕业设计, 也是我入门NLP的项目, 就把它发出来供大家交流。 ##### 2021.06.07更新: 之前的版本写得比较随意, 没想到star破百了, 私下也有一些刚入门NLP的同学因为这个项目联系我, 就更新一下这个项目吧 * 重构项目架构和代码, 提高可读性 * 每个文件中的特征、数据处理方法与模型细节都尽可能避免重复, 以给各位同学提供更多的参考 * 神经网络结构换成了pytorch, 需要`tensorflow 1.0`代码的同学请回退至`445998`版本。 * 新增了`Bert`模型 * 由于gensim新老版本很多语法不兼容, 将gensim更新为4.0版本 ---- #### 项目说明 * 训练集10000条语料, 测试集500条语料 * 使用朴素贝叶斯、SVM、XGBoost、LSTM和Bert, 等多种模型搭建并训练二分类模型 * 前3个模型都采用端到端的训练方法 * LSTM先预训练得到Word2Vec词向量, 在训练神经网络 * `Bert`使用的是哈工大的预训练模型, 用Bert的`[CLS]`位输出在一个下游网络上进行finetune。预训练模型需要自行下载: * github下载地址: https://github.com/ymcui/Chinese-BERT-wwm * baidu网盘: https://pan.baidu.com/s/16z-ybrqT6wLdy_mLHtywSw 密码: djkj * 下载后将文件夹放在`./model`文件夹下, 并将`bert_config.json`改名为`config.json` --- #### 实验结果 各种分类器在测试集上的测试结果 |模型|准确率|AUC| | :---: | :---: | :---: | |1.bayes|0.856| - | |2.svm|0.856| - | |3.xgboost|0.86| 0.904 | |4.lstm|0.87| 0.931 | |5.bert|0.87| 0.929 |