文本中的情感——基于单词的编码
情感分析是描述特定感觉或意见是积极、消极还是中性的过程。例如,“我讨厌我的午餐”、“我喜欢我的午餐”和“我对我的午餐很好”。这些句子中的每一个都有否定、肯定和中性的语气。在很大程度上,情感分析用于通过评论确定客户的反馈。这些评论有助于构建推荐系统以供将来参考。
如何获取句子中单词的含义?
我们本可以获取字符的 ASCII 值,但这会帮助我们理解单词的语义吗?让我们考虑“二进制”这个词,它也可以写成“聪明”。显然,这两个词共享相同的 ASCII 值,但具有完全不同的含义。用单词训练神经网络是一项艰巨的任务。所有这一切的解决方案是我们是否可以赋予单词价值并在训练模型中使用它们
考虑一下“我喜欢我的午餐”这句话,让我们给它一些随机数。假设值分别为 1、2、3 和 4。假设我们有另一个句子“我爱我的猫”,我们可以重用以前的值并为“猫”这个词赋予一个新的标记。假设 cat 的值为 5。这两个句子中有 4 个值的相似性。这是如何训练神经网络的开始。幸运的是,我们有像Tensorflow这样的 API。按照以下步骤训练您的模型
- Step1:导入所需的库
- Step2:创建句子列表
- Step3:创建一个Tokenizer对象
- Step4:使用 fit_on_text 方法
- Step5:打印出word_index
下面是实现。
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras.preprocessing.text import Tokenizer
sentences = [
"I love my lunch",
"I love my cat !"
]
tokenizer = Tokenizer(num_words = 100)
tokenizer.fit_on_texts(sentences)
word_index = tokenizer.word_index
print(word_index)
输出:
{'i': 1, 'love': 2, 'my': 3, 'lunch': 4, 'cat': 5}