gpt4 book ai didi

python - NLP - 使用 spaCy 在 Python 中提取文本

转载 作者:太空宇宙 更新时间:2023-11-03 21:19:08 24 4
gpt4 key购买 nike

我使用 Python 和 spaCy 作为我的 NLP 库。我是 NLP 工作的新手,我希望得到一些指导,以便从文本中提取表格信息。我的目标是找出哪些类型的费用被卡住或未被卡住。任何指导将不胜感激。

 TYPE_OF_EXPENSE    FROZEN?       NOT_FROZEN?
purchase order frozen null
capital frozen null
consulting frozen null
business meetings frozen null
external hires frozen null
KM&L null not frozen
travel null not frozen


import spacy
nlp = spacy.load('en_core_web_sm')
doc = nlp(u'Non-revenue-generating purchase order expenditures will be frozen. All capital
related expenditures are frozen effectively for Q4. Following spending categories
are frozen: Consulting, (including existing engagements), Business meetings.
Please note that there is a hiring freeze for external hires, subcontractors
and consulting services. KM&L expenditure will
not be frozen. Travel cost will not be on ‘freeze’.)

我的最终目标是将所有这些表提取到一个 Excel 文件中。即使您能为上述几个类别提供建议,我也将不胜感激。预先非常感谢您。

最佳答案

几个问题:类别是预定义的吗?它们会保持这种状态吗?如果是这样,您可以简单地只用这些单词构建一个小词汇表并进行处理。第二件事是首先进行基本的预处理,例如大小写调整等。

然后使用某种句子标记器将您的输入分割成句子。完成此操作后,将这些句子拆分为标记,nltk 有一个很好的标记器,可以让您定义短语,这样 new york 将被标记为 new_york 等。一旦你对每个句子进行标记,如果你在一个句子中找到一个匹配的标记,并且你在前后各说 4 个标记来查找任何带有“卡住”一词的否定,则只需使用基于窗口的方法即可。因此,对于一个句子,您可以获得像

这样的标记
[All,capital,related,expenditures,are,frozen,effectively,for,Q4]

这与“frozen”和“capital”关键字均匹配。只需检查卡住前后的窗口大小是否为负,如果您发现任何标记大写为 False 的卡住,否则将其标记为 true,因为这可以简单地使用二进制 true/false 列来完成。

关于python - NLP - 使用 spaCy 在 Python 中提取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54441219/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com