首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AI -字符串/文本分类/分类(例如,字符串/文本被分类为公司名称)

AI -字符串/文本分类/分类(例如,字符串/文本被分类为公司名称)
EN

Stack Overflow用户
提问于 2012-04-19 10:19:21
回答 4查看 2.8K关注 0票数 3

我的问题是过滤掉一个表中的所有人的名字,即公司,学校,机构的名字将留在数据库中。

我尝试了一个简单的解决方案,给了我一个公司、学校等名称的列表,然后我在那里搜索最常用的术语。(注意:我没有搜索名称中的公共字符串,因为这会花费很多钱)。我为这些术语以及最常见的子字符串分配了权重。因此,如果字符串中有一个公司,公司,学校,大学,那么它很可能不是一个人的名字。

现在,我的问题是我怎样才能把它变成人工智能。此外,我将不得不使它成为可能,以便只对公司,学校等进行分类将更容易。

例如

代码语言:javascript
复制
XYZ Brewery Corporation -> company
Harvard University -> school
Department of Health -> government agency

我知道的人工智能技术只有朴素贝叶斯,K-Means,Hierarchical,FCM,ANN。这些技术通常会得到数值,所以,我不知道如何将其变成AI。我所知道的唯一广泛处理字符串的人工智能技术是Levenshtein,词干,Needleman-Wunch和Jaro-Winkler。

我的第一种方法是不正确的吗?如何结合我所知道的技术?我必须学习一项新技术吗?我基本上是AI的新手,因为我还是个学生。然而,这不是一个任务,而是一个公司的项目(实际上我是我们组中唯一的计算机科学专业的学生,所以这对我来说是非常繁重的)。顺便说一句,如果你对我使用什么语言感到好奇,我之所以使用C#,是因为我计划让它成为一个独立的应用程序,而用户使用的是Windows。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-04-19 13:13:01

不要只是跳到花哨的机器学习算法。你的常识和直觉可以让你走得很远。

如果你能找到世界上所有高等教育机构的名单,你关于拥有大量实体名单的想法是非常好的,而且可能对学校非常有效。如果你能把这样的列表汇编在一起,它不太可能包含世界上每一所大学的,但它可能足以满足所有实际用途。

从你已经编译的列表中,你可以计算每一类实体的每一个单字(即单词)和双字(即连续的单词对)出现的次数,并看到某些短语强烈倾向于特定的类别(例如,'department of‘可能主要出现在政府机构,'inc','ltd','& co.’。可能只出现在公司,“大学”,“学校”,“学院”可能主要出现在学校)。您可以将这些想法形式化到朴素贝叶斯模型中,但是如果有一个更简单的规则,即只检查大型if-then语句中的特定短语,可能会让您达到90%的目标。

票数 3
EN

Stack Overflow用户

发布于 2012-04-19 12:58:30

这个问题通常被称为Named Entity Recognition (NER)SharpNLP project是自然语言处理算法的C#库,包括NER。它看起来完全没有文档记录,尽管它是Apache的OpenNLP的一个C#端口,它有documentation on name finding;SharpNLP的接口大概是类似的。

票数 4
EN

Stack Overflow用户

发布于 2012-04-19 12:50:17

您可能想看看Febrl项目。

Febrl (可自由扩展的生物医学记录链接)对不共享唯一记录键或标识符的一个或多个文件或数据源进行数据标准化(分段和清理)和概率记录链接(“模糊”匹配)。

特别是,查看文档归档中名为biomed2002hmm.pdf的文件。它讨论了使用词法标记化和隐马尔可夫模型来识别名称和地址的模式。

提出的想法可以应用于您识别个人名称与业务名称的问题。该项目包括所描述的技术的代码示例(使用Python,而不是C#)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10220790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档