我正在处理用户在数据库中添加一些文本的项目,同时保存还会将标记添加到他/她的条目中,以便其他人可以使用这些标记进行搜索。分别使用NLP和Ontology自动标记和分类文本
例:
文字:“下一个F1比赛是在西班牙”
标签:“一级方程式”,“种族”,西班牙”
如果任何用户将这些标签搜索但我想要搜索“体育”或“汽车运动”或“欧洲”的用户也应该得到这个条目,虽然这些标签没有明确地标记到条目中,但是因为“一级方程式”是一种类型的“赛车运动”,这是一种“体育”和“西班牙”的类型在“欧洲”。
在我提交表格的那一刻,用户在一个文本框中写下他们的文本,然后将他们的标签写入下面的第二个文本框中,并提交。
这些标签稍后会由管理员手动分类。因此,在上述情况下,管理员将手动将“西班牙”作为“欧洲”的子元素。 (MS SQL Server层次结构列)
我认为这可以通过使用一些Ontologies软件来实现。 dotNetRdf,OWL ......但我不确定。我几天前才开始了解这个世界的这个方面,我不确定这些可以帮助我。这是解决方案,还是我正在考虑完全错误的东西?任何建议,以实现上述?
此外,在进行分类之前,我想自动从文本中选取标签并将其作为标签填充到较低的文本框中。
为此,我想我将不得不使用一些NLP服务?任何想法,哪一个使用,或任何其他建议?
感谢您的@loopasam。是本体/分类/ NLP这个世界的初学者。你的教程网站肯定会有所帮助。我会详细介绍它。但是我想我在这里有点困惑......比如像你上面提到的那样,Motor_Sport将会成为Formula_1的一个子类。谁将首先根据Formula_1对Motor_Sports进行分类。这是否会自动发生?或者有些必须手动完成? – 2013-04-30 10:42:30
“Motor_Sport”断言是“Formula_1”的超类,是手动完成的。这是做到这一点的唯一方法,这是你如何指定你的领域知识。然后,一旦建立了本体,您可以按照我的答案中的指示查询它。这样做的好处在于,您只需对信息进行一次整理,然后在其余时间利用它。一些本体已经存在,所以我建议你在构建你自己的域之前就开始对你正在寻找的域进行搜索。如果你找到适合你的人,你可以用它来解决你的问题。 – loopasam 2013-04-30 10:54:26