提问人:nm313 提问时间:11/13/2023 最后编辑:desertnautnm313 更新时间:11/13/2023 访问量:33
如何更好地在单个单词上训练情感类型模型?
How do I better train a sentiment-type model on single words?
问:
我正在尝试制作一个模型来预测一个句子是否“健康”、“昂贵/便宜”和/或“多样”。
示例数据
Text,Healthy,Expensive,Varied
"Apple",1,0,0
"Truffle",1,1,0
"Pizza",0,0,0
"I love to eat Apples",1,0,0
"I hate to eat Pizza",1,0,0
"I cooked with Apples, Bananas, and Truffles",1,1,1
想象一下,我有数以千计的单独评分的食物和句子,我希望预测我的文本是健康的(没有不健康的食物或否定的不健康食物)、昂贵(至少一种昂贵的食物)和/或多样的(多个项目)。
一些示例代码:
df = pd.read_csv("../data/scored_data.csv", usecols=['text', 'healthy'], sep='\,', encoding='utf-8').replace('"','', regex=True)
...
X = d["text"]
y = d["healthy"]
X_train, X_valid, y_train, y_valid = train_test_split(
X,
y,
test_size=0.33,
stratify=y
)
sentiment_classifier = Pipeline(steps=[
('pre_processing',TfidfVectorizer(lowercase=False)),
('naive_bayes',MultinomialNB())
])
sentiment_classifier.fit(X_train,y_train)
y_preds = sentiment_classifier.predict(X_valid)
我试图简单地从“健康”开始,但没有得到我期望的结果。
我以为当我输入“苹果”时,我会看到健康,但它很少起作用,除非我有一个更长的过度修饰的句子,例如“我喜欢吃苹果、梨和胡萝卜,每天吃更多的苹果”。
不太确定我做错了什么。我知道正常的情感分析最适合单词的关联而不是单个单词,但我仍然希望在我的训练集中为这些单个单词获得更准确的结果。
我试过了
- 创建评分数据集
- 训练模型
- 测试模型
预期 “苹果”->健康 (1)
结果 “Apple” -> 不健康 (0)
答: 暂无答案
评论