情感分析
在视频练习中,您已经了解了序列到序列模型的多种应用。本练习将演示如何使用一个预训练模型进行情感分析。
环境中已经预加载了变量 model 所指向的模型。同时还提供了分词后的测试集变量 X_test 和 y_test,以及来自 IMDb 的预处理原始文本数据 sentences。您将在课程后续内容中学习如何预处理文本数据,以及如何使用 Keras 创建并训练模型。
您将使用这个预训练模型来获得情感的预测。模型会返回一个介于 0 到 1 之间的数值,表示句子为正向情感的概率。因此,您将制定一个决策规则,把预测结果设为正向或负向。
本练习是课程的一部分
使用 Keras 构建语言建模的循环神经网络(RNN)
练习说明
- 使用
.predict()方法对测试数据进行预测。 - 若预测值大于
0.5,将其设为"positive",否则设为"negative",并将结果保存在变量pred_sentiment中。 - 创建一个
pd.DataFrame,包含预处理后的文本、上一步得到的预测结果,以及存放在变量y_test中的真实标签。 - 使用
.head()方法打印前几行。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Inspect the first sentence on `X_test`
print(X_test[0])
# Get the predicion for all the sentences
pred = model.predict(____)
# Transform the predition into positive (> 0.5) or negative (<= 0.5)
pred_sentiment = ["positive" if x>____ else "negative" for x in pred]
# Create a data frame with sentences, predictions and true values
result = pd.DataFrame({'sentence': sentences, 'y_pred': ____, 'y_true': y_test})
# Print the first lines of the data frame
print(result.____)