Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parsing 如何利用机器学习提取公司债券信息_Parsing_Machine Learning_Nlp_Opennlp_Information Extraction - Fatal编程技术网

Parsing 如何利用机器学习提取公司债券信息

Parsing 如何利用机器学习提取公司债券信息,parsing,machine-learning,nlp,opennlp,information-extraction,Parsing,Machine Learning,Nlp,Opennlp,Information Extraction,我正在从事一个项目,需要从非结构化电子邮件中提取公司债券信息。在做了大量的研究之后,我发现机器学习可以用于信息提取。我尝试了Opennlp NER(命名实体识别器),但我不确定是否为此问题选择了正确的库,因为我得到了结果,但没有达到标准 有没有人能给我推荐一些库或算法,告诉我如何解析和提取数据。我计划探索朴素的贝叶斯或N-gram或支持向量机,但不确定,这是否对我有帮助。请建议 例如: [/]交易10mm ABC 2.5 19 05/06 mkt可以使用50mm-->这里我想提取“ABC 2.5

我正在从事一个项目,需要从非结构化电子邮件中提取公司债券信息。在做了大量的研究之后,我发现机器学习可以用于信息提取。我尝试了Opennlp NER(命名实体识别器),但我不确定是否为此问题选择了正确的库,因为我得到了结果,但没有达到标准

有没有人能给我推荐一些库或算法,告诉我如何解析和提取数据。我计划探索朴素的贝叶斯或N-gram或支持向量机,但不确定,这是否对我有帮助。请建议

例如:

[/]交易10mm ABC 2.5 19 05/06 mkt可以使用50mm
-->这里我想提取
“ABC 2.5 19”

例2:

XYZ 6.5 15 10-2B 106-107 B3 AAA-1.646MM 2x2
-->这里我想提取
“XYZ 6.5 15”
在Perl中,您可以使用-a通用BNF解析器

这将从您的示例中提取信息


希望这有帮助。

您尝试过使用正则表达式进行模式匹配吗?从外观上看,您希望匹配3个字母,后跟一个十进制数,后跟一个整数/长数(不管它们之间有多少空格),这是一个精心编制的正则表达式应该能够非常快速地处理的。最初,我建议只使用正则表达式,但正则表达式非常复杂,对于这种类型的情况,因为数据是非结构化的。此外,我正在寻找一种技术,我可以解析05/06或106-107或2X2值以及3个字母,因此我相信机器学习将是更好的选择。我在过去使用过FFNN和语法解析,我不认为这是最好的解决方案(虽然我很高兴被证明是错的)。那么这件事怎么办呢?1)首先标记整个电子邮件。2) 浏览标记,直到你遇到一个3个字母的单词3)查看下一个标记是否有效(你需要编写功能类来为你处理4)如果有效,解析下一个标记,依此类推,直到你到达状态机的末尾,并认为它是一个有效的答案,或者如果你到达一个无效的状态,转到下一个3字母字符。我建议在开始机器学习之前使用类似或的规则语言。如果任务还没有解决的话,至少你能更快地得到标记的例子。@PeterKluegl:我会看看,看起来很有趣。谢谢你的建议。