Machine learning 机器学习可以用于自然语言理解吗

Machine learning 机器学习可以用于自然语言理解吗,machine-learning,nlp,semantics,lexical-analysis,linguistics,Machine Learning,Nlp,Semantics,Lexical Analysis,Linguistics,这是基于我以前的经验。我能用机器学习算法帮助我理解句子吗 (我将使用我在上一个问题中使用的一个密切相关的示例)。例如,我希望我的算法/代码根据用户所说的内容启动一个程序。例如,如果他说“打开程序”,那么算法应该这样做。然而,如果用户说“打开汽车”,计算机显然不应该打开程序。(但是计算机怎么知道呢?)我确信有数百种不同的方式来说“启动”或“打开程序”。我想问的是,计算机如何区分“程序”和“汽车”?算法如何知道在第一句话中,它必须启动程序,但在第二句话中却不能算法有没有办法知道句子在说什么 我可以使

这是基于我以前的经验。我能用机器学习算法帮助我理解句子吗

(我将使用我在上一个问题中使用的一个密切相关的示例)。例如,我希望我的算法/代码根据用户所说的内容启动一个程序。例如,如果他说“打开程序”,那么算法应该这样做。然而,如果用户说“打开汽车”,计算机显然不应该打开程序。(但是计算机怎么知道呢?)我确信有数百种不同的方式来说“启动”或“打开程序”。我想问的是,计算机如何区分“程序”和“汽车”?算法如何知道在第一句话中,它必须启动程序,但在第二句话中却不能算法有没有办法知道句子在说什么

我可以使用一个无监督的学习算法吗,也就是说,一个可以学习句子内容的算法


感谢

自然语言理解是一个非常困难的问题,许多研究人员正在研究它。首先,基本的自然语言理解系统是以规则为基础的。您手动写下将与输入匹配的规则,如果找到匹配项,则触发相应的操作。因此,您可以限制输入的格式,并制定规则,同时尽可能保持其通用性。例如,不匹配确切的语句“打开程序”,您可以有如下规则:除非命令中出现“程序”一词,否则不要启动程序,或者忽略每个句子,除非其中包含“程序”。然后,结合你的规则来发展更复杂的“理解”。如何编写/表示规则是另一个难题。可以从正则表达式开始

关于“开始”的各种表达方式,你将看到“开始”的同义词,例如“开始”。这可以从同义词表中获得,这类任务的常用资源是


你需要弄清楚你到底想从句子中提取什么信息。大多数自然语言技术都是特定于任务的,没有通用的一刀切的自然语言理解工具。

没有足够的信息输入,任何机器学习算法都无法学习。如果有足够的关于汽车和程序的信息,那么学习算法可以区分它们。机器学习将具有相似属性的事物分组,如果事物具有不同的属性,则将它们分成不同的组。

最后一段尤其正确。任何声称拥有非特定领域的高精度NLP的人都可能有点歪曲事实。那会帮我把事情弄清楚的。我将如何编写这些规则?我正在使用斯坦福大学的NLPAPI。我会在名称实体识别器之类的东西中编写这些规则吗?我建议在标记化(甚至可能是词干/小写)输出上使用普通正则表达式。在Java中,可以使用和类将输入与正则表达式匹配。然后,规则就是
if-else
语句。e、 g.
if(input.matches(regex))