使用NLP解析非结构化文本的最佳方法如下?一个模型会是解决这个问题的最好方法吗?如果是的话,什么是最好的开始呢?
Prerequisite: Mathematics 408C and 408D with a grade of a C, and Physics 301 or 301K with a grade of a C.这会导致类似
Mathematics 408C C, Mathematics 408D C, Physics 301 C or Physics 301 C我试过使用regex,但是句子结构可能要复杂得多,而且不一致。就像下面
Prerequisite: Architecture 415K with a grade of at least C; Mathematics 408C or 408K; and Physics 302K and 102M, or 303K and 103M.预期结果:
Architecture 415K C, Mathematics 408C or Mathematics 408K, Physics 302K and Physics 102M or Physics 303K and Physics 103M发布于 2022-03-21 18:07:31
您的输入文本不是真正的自然语言(包含信息的完整句子),而是半结构化的,因此对于基于规则的方法和基于语义的方法都很难处理。
一种基于语义/神经模型的方法,比如在huggingface (python/PyTorch)中使用预先训练过的问答模型,可能有点超出了这里的范围,但它可能有助于给出一些与以前的结构几乎独立的结构:


这种方法的好处是基本上独立于输入结构,例如,请参见用完整的句子输入或子弹点列表。
由于模型只返回有效的输出,如果问题显然是可以从上下文中回答的,那么您必须使用基于规则的方法来获得先决条件中提到的课程列表,然后使用第一个答案为该级别创建一个有效的问题。
但老实说,我不知道有多少种可能的方式来写这样的清单。还有,如果这只是少数几个文本,你想花多少精力在这上面。如果您给出更多的例子,我们可以讨论可能的基于规则的方法。
https://stackoverflow.com/questions/71552396
复制相似问题