Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.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
Java 识别词类的文本处理_Java_Text_Full Text Search_Nlp - Fatal编程技术网

Java 识别词类的文本处理

Java 识别词类的文本处理,java,text,full-text-search,nlp,Java,Text,Full Text Search,Nlp,我必须编写一个程序(用Java)来识别几个词类,如名词、形容词、动词等。该程序还应该识别数字(用数字表示,例如10)和用普通英语表示的数字(十、一百等)等等。我不确定前进的道路是什么。有什么图书馆可以提供帮助吗?这只能用正则表达式完成吗?还是我需要学习NLP 请提出一个前进的方向。词性(POS)标记是一项相当标准的NLP任务。理论上,你可以编写正则表达式来标记非常简单的句子,你不可能用正则表达式模型实现合理的覆盖率或准确性。您可以很好地训练一个相当简单的HMM模型,或者在一个手动标记的训练集上训

我必须编写一个程序(用Java)来识别几个词类,如名词、形容词、动词等。该程序还应该识别数字(用数字表示,例如10)和用普通英语表示的数字(十、一百等)等等。我不确定前进的道路是什么。有什么图书馆可以提供帮助吗?这只能用正则表达式完成吗?还是我需要学习NLP

请提出一个前进的方向。

词性(POS)标记是一项相当标准的NLP任务。理论上,你可以编写正则表达式来标记非常简单的句子,你不可能用正则表达式模型实现合理的覆盖率或准确性。您可以很好地训练一个相当简单的HMM模型,或者在一个手动标记的训练集上训练一个有区别的标记器

但是要标记一个特定的语料库,你不一定需要学习词性标记的所有细节并自己动手——学习使用现有的库可能就足够了(例如NLTK或斯坦福NLP库)

将文本数字表示转换为阿拉伯语形式(反之亦然)属于“文本规范化”的范畴。正则表达式(或其他有限状态转换)在那里可能更有用,不过,在从头开始之前,您可能需要寻找满足您需要的现有解决方案。

词性(POS)标记是一项非常标准的NLP任务。理论上,你可以编写正则表达式来标记非常简单的句子,你不可能用正则表达式模型实现合理的覆盖率或准确性。您可以很好地训练一个相当简单的HMM模型,或者在一个手动标记的训练集上训练一个有区别的标记器

但是要标记一个特定的语料库,你不一定需要学习词性标记的所有细节并自己动手——学习使用现有的库可能就足够了(例如NLTK或斯坦福NLP库)

将文本数字表示转换为阿拉伯语形式(反之亦然)属于“文本规范化”的范畴。正则表达式(或其他有限状态转换)在这里可能更有用,不过您可能需要在从头开始之前寻找满足您需求的现有解决方案。

(1)OpenNLP

(2) 竖笛

(3) 斯坦福NLP

以上三项(基于Java的)都将帮助您立即识别POS

对于数字,使用正则表达式。

(1)OpenNLP

(2) 竖笛

(3) 斯坦福NLP

以上三项(基于Java的)都将帮助您立即识别POS


对于数字,请使用正则表达式。

+1:用于抵消所投的反对票。@Yavar我想了很久之后才发表了它,我想它不太具体。但即便如此,我还是得到了反对票。+1:为了抵消反对票。@Yavar我想了很久才发表了它,我想它不太具体。但即便如此,我还是投了反对票。