句子情感分类

根据社交网络中的句子判断情感倾向

Link: https://www.kaggle.com/c/si650winter11

题目描述

UMICH SI650 情感分类是一个经典的NLP数据集。数据集中的句子全部来源于社交网络和博客,是带有情感色彩的主观性文本。本题的目的在于区分一句话的情感是“积极的”还是“消极的”。

小提示

  • 本题的关键在于拿到文本后,如何构造词向量
  • 词向量构造完毕后,根据词向量字典,将句子送入神经网络进行预测

先修技能

  • 分词
  • word2vec
  • LSTM

输入格式

训练集train.csv包含5,668个记录,每个记录有两列,含义如下:

  • sentence:句子的具体内容
  • label: 句子的情感分类,1为积极情感,0为消极情感,即我们要预测的值

测试集test.csv包含1,418个记录,只包含sentence字段,label为需要预测的值,且预测值只能为0或1

输出格式

请按test集给出的顺序进行预测,具体格式如下:

sentence    label
Ok brokeback mountain is such a horrible movie.    0
Brokeback Mountain was so awesome.    1
friday hung out with kelsie and we went and sa...    0
I am going to start reading the Harry Potter s...    1
Is it just me, or does Harry Potter suck?...    0

## 评价

你提交的`submission.csv`文件,将使用[准确率(accuracy)](https://www.zhihu.com/question/19645541)作为最后评判标准。

准确率(accuracy)是用来衡量算法预测结果的准确程度,具体指测试集中算法预测正确的数量占总数的比例。

$$ Accuracy=\frac{TP+TN}{TP+FN+FP+TN} $$

其中:

TP(True Positive)是将正类预测为正类的结果数目

FP(False Positive)是将负类预测为正类的结果数目

TN(True Negative)是将负类预测为负类的结果数目

FN(False Negative)是将正类预测为负类的结果数目

数据

train.csv: https://github.com/kdj842969/DataDescriptionBook/blob/master/UMICHSI650/train.csv

test.csv: https://github.com/kdj842969/DataDescriptionBook/blob/master/UMICHSI650/test.csv

result.csv: https://github.com/kdj842969/DataDescriptionBook/blob/master/UMICHSI650/result.csv (非公开)

sample_submission.csv: https://github.com/kdj842969/DataDescriptionBook/blob/master/UMICHSI650/sample_submission.csv

测评配置环境

python

pip install -U numpy
pip install pandas
pip install -U scikit-learn

测评代码

from sklearn.metrics import accuracy_score
import pandas as pd

y_test = pd.read_csv(os.path.join(DATA_DIR, "result.csv")) # 正确答案
y_pred = pd.read_csv(os.path.join(DATA_DIR, "submission.csv")) # 用户预测的答案
ac= accuracy_score(y_test['label'], y_pred['label']) # accuracy 在0到1之间,越大越好

results matching ""

    No results matching ""