解码语言:命名实体识别(NER)技术

引言

探索机器如何识别人名、地点和物体 ------ 并学习如何打造你自己的命名实体识别(NER)应用程序!

为什么NER如此出色

想象一下:你正在阅读一篇关于"华盛顿"的文章。它可能指的是华盛顿州,也可能是华盛顿特区,或者是乔治·华盛顿本人。这很让人困惑,对吧?机器也有同感 ------ 除非我们教会它们如何理解这一切。这时,命名实体识别(NER)就派上用场了。

NER[1]就像是赋予人工智能一种超能力:从海量文本中筛选出重要的词汇(称为实体)并识别它们的含义。比如"苹果"是指一家公司还是一种水果?"柏林"只是一个普通词汇,还是指德国的首都?NER能够帮助解答这些问题。

这项技术已经渗透到我们生活的方方面面。想想看,谷歌搜索如何理解你含糊的查询,或者Alexa如何区分你提到的"亚马逊"是指公司还是指雨林。这一切都得益于NER,而且你知道吗?它并没有你想象的那么复杂。

从规则到机器人

NER并非一开始就这么智能。最初,程序员需要通过严格的规则来教导机器 ------ 基本上是一系列"如果这样,那么那样"的指令。虽然这对简单的任务有效,但一旦语言变得复杂,这些系统就会崩溃。

随后,机器学习(ML)出现了。程序员不再编写规则,而是给计算机提供大量的标记样本。比如,如果你想让计算机识别"巴黎",你会给它提供巴黎作为一个城市的例子,以及它作为人名的例子。计算机随后"学习"这些模式。这很酷,不是吗?

但真正的革命发生在深度学习技术的引入。借助LSTM和变换器(GPT和BERT背后的技术)等强大的神经网络,NER的准确度变得极高。这些模型不仅关注单个词汇 ------ 它们还理解上下文。所以,当你输入"苹果正在推出新的iPhone",系统会知道你在谈论的是公司,而不是你的购物清单。

为什么你应该关注NER?

因为它无处不在,而且它的作用比你意识到的要酷得多。例如:

  • 在医疗领域:想象一下,一个工具可以扫描病历,寻找症状、治疗或药物名称的提及 ------ 为医生节省大量时间。
  • 在金融领域:大型银行使用NER筛选数百万的市场更新,并迅速发现提及公司或股票动态的信息。
  • 在娱乐领域:Netflix和Spotify等服务通过识别演员、艺术家和流派的名字,分析你的观看或收听习惯,为你提供定制化的推荐。

我最喜欢的一个应用是NER如何帮助记者。这种技术驱动的工具可以瞬间突出新闻报道中的关键人物、地点或事件。这就像拥有一个超级智能的荧光笔!

动手实践NER

好了,理论部分到此为止 ------ 让我们来动手实践。有一个非常棒的Python库叫做spaCy,它使得尝试NER变得非常简单。即使你不是编程高手,也能轻松上手。

  • 步骤 1:安装spaCy 打开你的终端(或命令提示符)并运行:

    pip install spacy==3.7.5
    python -m spacy download en_core_web_sm

这里发生了什么?你正在安装 spacy 并下载一个小型的预训练英文文本模型。这就像是给你的计算机进行了一次智能升级!

  • 步骤 2:编写代码 现在,打开 Python 并输入以下代码:

    import spacy
    from spacy import displacy

    Load the pre-trained model

    nlp = spacy.load("en_core_web_sm")

    Sample text

    text = "Apple is opening a new office in Berlin. Steve Jobs would have been proud!"

    Process the text

    doc = nlp(text)

    Visualize the entities

    displacy.render(doc, style="ent")

  • 步骤 3:见证奇迹 运行脚本,神奇的事情出现了!你将看到一个清晰的高亮显示结果:

"Apple" 被标注为一个组织。 "Berlin" 被标注为一个地缘政治实体(GPE)。 "Steve Jobs" 被识别为一个人物。

NER 在现实世界中的应用

想要更深入地探索这项技术吗?这里有一些灵感:

  1. 分析你的电子邮件:从收件箱中提取人名、日期和公司名称,以优化你的工作流程。
  2. 构建一个旅行助手:输入地点描述,让你的应用能够识别并突出显示地点、日期和名胜古迹。
  3. 在 Twitter 上追踪热点:抓取热门话题,并分析它们与人物、地点或组织之间的联系。

总结

命名实体识别(NER)听起来可能很高大上,但其实它的核心是教会计算机做我们自然而然就能做的事情------理解周围的世界。无论是从文本中提取关键信息,还是驱动人工智能助手,NER 都是那些既实用又引人入胜的技术之一。
Reference [1]

Source: https://medium.com/@azamat.sultonov.98/cracking-the-code-of-language-named-entity-recognition-ner-43fbb6ed47df

本文由mdnice多平台发布

相关推荐
什么都想学的阿超5 小时前
【大语言模型 01】注意力机制数学推导:从零实现Self-Attention
人工智能·语言模型·自然语言处理
失散1319 小时前
自然语言处理——02 文本预处理(下)
人工智能·自然语言处理
什么都想学的阿超1 天前
【大语言模型 02】多头注意力深度剖析:为什么需要多个头
人工智能·语言模型·自然语言处理
MARS_AI_1 天前
云蝠智能VoiceAgent:AI赋能售后服务场景的创新实践
人工智能·语言模型·自然语言处理·人机交互·信息与通信
亚里随笔2 天前
稳定且高效:GSPO如何革新大型语言模型的强化学习训练?
人工智能·机器学习·语言模型·自然语言处理·llm·rlhf
数据知道2 天前
机器翻译:模型微调(Fine-tuning)与调优详解
人工智能·自然语言处理·机器翻译
未来之窗软件服务2 天前
自建知识库,向量数据库 体系建设(五)之 中文分词库 HanLP ——仙盟创梦IDE
自然语言处理·中文分词·仙盟创梦ide·东方仙盟
skywalk81632 天前
LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。
人工智能·语言模型·自然语言处理
Websites3 天前
Hyperf 百度翻译接口实现方案
开发语言·自然语言处理·php·自动翻译
数据知道3 天前
机器翻译:Hugging Face库详解
人工智能·自然语言处理·机器翻译