python - 如何通过比较结构改善 nlp 文本歧义?
问题描述
我想修改这句话:
“税前亏损总计 30 万欧元,而 2005 年第一季度亏损 220 万欧元。”
因为我的分类器预测 'negative',但它的标签是 'positive' 。
有没有办法修改句子,让分类器在训练过程中理解这个句子是正面的,例如比较数字并创建一个将其转换为正面的句子?
输出所需示例:
“税前亏损190万欧元”
或者
“税前亏损总计 30 万欧元,与 2005 年第一季度的亏损 220 万欧元相比,增加了 190 万欧元的利润”
我正在尝试这个:
for doc in nlp.pipe(TEXTS):
for token in doc:
if token.ent_type_ == "MONEY":
if token.dep_ in ("attr", "dobj"):
subj = [w for w in token.head.lefts if w.dep_ == "nsubj"]
if subj:
print(subj[0], "-->", token)
elif token.dep_ == "pobj" and token.head.dep_ == "prep":
print(token.head.head, "-->", token)
output:
Net income --> $9.4 million
the prior year --> $2.7 million
Pre-tax loss --> euro 0.3 million
a loss --> euro 2.2 million
解决方案
推荐阅读
- cmake - 重用到处都有 CMakelists 的源来创建另一个 CMake 项目
- python - 如何打印在读取熊猫数据框期间显示警告的文档名称
- wordpress - Woocommerce 感谢页面
- spring - 为什么 Spring 不能自动装配我的云流处理器?
- css - 如何在开发模式下在 webpack 中创建单独的 .css 文件?不是虚拟发出的,而是内置在项目目录中
- powershell - 将 XmlElement 对象转换为 PSCustomObject
- html - 下拉框中的下拉列表消失 Angular 5
- highcharts - 如何确保每个刻度都有标签?
- excel - 使用时间时 SUM 和 + 之间的差异
- c++ - 数组在每次递归时都会改变它们的值