前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >NLP入门:CNN,RNN应用文本分类,个性化搜索,苹果和乔布斯关系抽取(2)

NLP入门:CNN,RNN应用文本分类,个性化搜索,苹果和乔布斯关系抽取(2)

作者头像
double
发布2018-04-02 16:20:53
1.3K0
发布2018-04-02 16:20:53
举报
文章被收录于专栏:算法channel
前篇

一文了解自然语言处理的每个范畴用到的核心技术,难点和热点(1)

这部分涉及的NLP范畴包括:

  1. 中文分词
  2. 词性标注
  3. 句法分析
  4. 文本分类背景

下面介绍,文本分类常用的模型,信息检索,信息抽取。

8文本分类模型

近年来,文本分类模型研究层出不穷,特别是随着深度学习的发展,深度神经网络模型也在文本分类任务上取得了巨大进展。文本分类模型划分为以下三类:

基于规则的分类模型

基于规则的分类模型旨在建立一个规则集合来对数据类别进行判断。这些规则可以从训练样本里自动产生,也可以人工定义。给定一个测试样例,我们可以通过判断它是否满足某 些规则的条件,来决定其是否属于该条规则对应的类别。典型的基于规则的分类模型包括决策树(Decision Tree)、随机森林(Random Forest)、 RIPPER 算法等。

基于机器学习的分类模型

典型的机器学习分类模型包括贝叶斯分类器(Naive Bayes)、线性分类器(逻辑回归)、 支持向量机(SVM)、最大熵分类器等。

SVM 是这些分类模型中比较有效、使用较为广泛的分类模型。它能够有效克服样本分布不均匀、特征冗余以及过拟合等问题,被广泛应用于不同的分类任务与场景。通过引入核函数,SVM 还能够解决原始特征空间线性不可分的问题。

除了上述单分类模型,以 Boosting 为代表的分类模型组合方法能够有效地综合多个弱分类模型的分类能力。在给定训练数据集合上同时训练这些弱分类模型,然后通过投票等机制综合多个分类器的预测结果,能够为测试样例预测更准确的类别标签。

基于神经网络的方法

以人工神经网络为代表的深度学习技术已经在计算机视觉、语音识别等领域取得了巨大成功,在自然语言处理领域,利用神经网络对自然语言文本信息进行特征学习和文本分类,也成为文本分类的前沿技术。

前向神经网络:多层感知机(Multilayer Perceptron, MLP)是一种典型的前向神经网络。它能够自动学习多层神经网络,将输入特征向量映射到对应的类别标签上。

通过引入非线性激活层,该模型能够实现非线性的分类判别式。包括多层感知机在内的文本分类模型均使用了词袋模型假设,忽略了文本中词序和结构化信息。对于多层感知机模型来说,高质量的初始特征表示是实现有效分类模型的必要条件。

为了更加充分地考虑文本词序信息,利用神经网络自动特征学习的特点,研究者后续提出了卷积神经网络(Convolutional Neural Network, CNN)和循环神经网络(Recurrent Neural Network, RNN)进行文本分类。

基于 CNN 和 RNN 的文本分类模型输入均为原始的词序列,输出为该文本在所有类别上的概率分布。这里,词序列中的每个词项均以词向量的形式作为输入。

卷积神经网络(CNN):卷积神经网络文本分类模型的主要思想是,对词向量形式的文本输入进行卷积操作。CNN 最初被用于处理图像数据。与图像处理中选取二维域进行卷积操作不同,面向文本的卷积操作是针对固定滑动窗口内的词项进行的。

经过卷积层、 池化层和非线性转换层后,CNN 可以得到文本特征向量用于分类学习。CNN 的优势在于在计算文本特征向量过程中有效保留有用的词序信息。

针对 CNN 文本分类模型还有许多改进工作, 如基于字符级 CNN 的文本分类模型、将词位置信息加入到词向量。

深度学习|卷积神经网络(CNN)介绍(前篇)

深度学习|卷积神经网络(CNN)介绍(后篇)

循环神经网络(RNN):循环神经网络将文本作为字符或词语序列

{x0 , … , xN},对于第 t 时刻输入的字符或词语 xt,都会对应产生新的低维特征向量 st。st的取值会受到 xt 和上个时刻特征向量 st-1的共同影响,st 包含了文本序列从 x0到 xt的语义信息。因此,我们可以利用 sN作为该文本序列的特征向量,进行文本分类学习。

与 CNN 相比,RNN 能够更自然地考虑文本的词序信息,是近年来进行文本表示最流行的方案之一。

为了提升 RNN 对文本序列的语义表示能力,研究者提出很多扩展模型。

例如,长短时记忆网络(LSTM)提出记忆单元结构,能够更好地处理文本序列中的长程依赖,克服循环神经网络梯度消失问题。LSTM引入了三个门(input gate, output gate, forget gate)来控制是否输入输出以及记忆单元更新。

深度学习|理解LSTM网络(前篇)

深度学习|循环神经网络之LSTM(后篇)

提升 RNN 对文本序列的语义表示能力的另外一种重要方案是引入选择注意力机制 (Selective Attention),可以让模型根据具体任务需求对文本序列中的词语给予不同的关注度。

文本分类的应用

文本分类技术在智能信息处理服务中有着广泛的应用。例如,大部分在线新闻门户网站(如新浪、搜狐、腾讯等)每天都会产生大量新闻文章,如果对这些新闻进行人工整理非常耗时耗力,而自动对这些新闻进行分类,将为新闻归类以及后续的个性化推荐等都提供巨大帮助。

互联网还有大量网页、论文、专利和电子图书等文本数据,对其中文本内容进行分类,是实现对这些内容快速浏览与检索的重要基础。此外,许多自然语言分析任务如观点挖掘、垃圾邮件检测等,也都可以看作文本分类或聚类技术的具体应用。

9信息检索

信息检索(Information Retrieval, IR)是指将信息按一定的方式加以组织,并通过信息查找满足用户的信息需求的过程和技术。

伴随着互联网及网络信息环境的迅速发展,以网络信息资源为主要组织对象的信息检索系统:搜索引擎应运而生,成为了信息化社会重要的基础设施。

2016 年初,中文搜索引擎用户数达到 5.66 亿人。

检索用户、信息资源和检索系统三个主要环节组成了信息检索应用环境下知识获取与信息传递的完整结构。

研究内容

信息需求理解。面对复杂的泛在网络空间,用户有可能无法准确表达搜索意图;即使能够准确表达,搜索引擎也可能难以正确理解;即使能够正确理解,也难以与恰当的网络资源进行匹配。这使得信息需求理解成为了影响检索性能提高的制约因素,也构成了检索技术发展面临的第一个关键问题。

资源质量度量。资源质量管理与度量在传统信息检索研究中并非处于首要的位置,但随着互联网信息资源逐渐成为检索系统的主要查找对象,网络资源特有的缺乏编审过程、内容重复度高、质量参差不齐等问题成为了影响检索质量的重要因素。目前,搜索引擎仍旧面临着如何进行有效的资源质量度量的挑战,这构成了当前信息检索技术发展面临的第二个关键问题。

结果匹配排序。近年来,随着网络技术的进步,信息检索系统(尤其是搜索引擎)涉及的数据对象相应的变得多样化、异质化,这也造成了传统的以文本内容匹配为主要手段的结果排序方法面临着巨大的挑战。

信息检索评价

信息检索评价是信息检索和信息获取领域研究的核心问题之一。信息检索和信息获取系统核心的目标是帮助用户获取到满足他们需求的信息,而评价系统的作用是帮助和监督研究开发人员向这一核心目标前进,以逐步开发出更好的系统,进而缩小系统反馈和用户需求之间的差距,提高用户满意度。

因此,如何设计合理的评价框架、评价手段、评价指标,是当前信息检索技术发展面临的第四个关键问题。

个性化搜索

基于内容分析的算法。基于内容的个性化搜索算法通过比较用户兴趣爱好和结果文档的内容相似性来对文档的用户相关性进行判断进而对搜索结果进行重排。用户模型一般表述为关键词或主题向量或层次的形式。个性化算法通过比较用户模型和文档的相似性,判断真实的搜索意图,并估计文档对用户需求的匹配程度。

基于链接分析的方法。要是利用互联网上网页之间的链接关系,并假设用户点击和访问过的网页为用户感兴趣的网页,通过链接分析算法进行迭代最终计算出用户对每个网页的喜好度。

基于协作过滤的算法。基于协作过滤的个性化搜索算法主要借鉴了基于协作过滤的推荐系统的思想,这种方法考虑到能够收集到的用户的个人信息有限,因此它不仅仅利用用户个人的信息,还利用与用户相似的其它用户或群组的信息,并基于用户群组和相似用户的兴趣偏好来个性化当前用户的搜索结果。用户之间的相似性可以通过用户的兴趣爱好、历史查询、点击过的网页等内容计算得出。

语义搜索技术

随着互联网信息的爆炸式增长,传统的以关键字匹配为基础的搜索引擎,已越来越难以满足用户快速查找信息的需求。同时由于没有知识引导及对网页内容的深入整理,传统网页搜索返回的网页结果也不能精准给出所需信息。

针对这些问题,以知识图谱为代表的语义搜索(Semantic Search)将语义 Web 技术和传统的搜索引擎技术结合,是一个很有研究价值,但还处于初期阶段的课题。

在未来的一段时间,结合互联网应用需求的实际和技术、产品运营能力的实际发展水平,语义搜索技术的发展重点将有可能集中在以各种情境的垂直搜索资源为基础,知识化推理为检索运行方式,自然语言多媒体交互为手段的智能化搜索与推荐技术。

10信息抽取

信息抽取(Information Extraction)是指从非结构化/半结构化文本(如网页、新闻、 论文文献、微博等)中提取指定类型的信息(如实体、属性、关系、事件、商品记录等),并通过信息归并、冗余消除和冲突消解等手段将非结构化文本转换为结构化信息的一项综合技术。

举例

• 从相关新闻报道中抽取出恐怖事件信息:时间、地点、袭击者、受害人、袭击 目标、后果等;

• 从体育新闻中抽取体育赛事信息:主队、客队、赛场、比分等;

• 从论文和医疗文献中抽取疾病信息:病因、病原、症状、药物等

实际应用

被抽取出来的信息通常以结构化的形式描述,可以为计算机直接处理,从而实现对海量非结构化数据的分析、组织、管理、计算、 查询和推理,并进一步为更高层面的应用和任务(如自然语言理解、知识库构建、智能问答系统、舆情分析系统)提供支撑。

目前信息抽取已被广泛应用于舆情监控、网络搜索、智能问答等多个重要领域。与此同时,信息抽取技术是中文信息处理和人工智能的核心技术,具有重要的科学意义。

信息抽取的难点

一直以来,人工智能的关键核心部件之一是构建可支撑类人推理和自然语言理解的大规模常识知识库。然而,由于人类知识的复杂性、开放性、多样性和巨大的规模,目前仍然无法构建满足上述需求的大规模知识库。

信息抽取技术通过结构化自然语言表述的语义知识,并整合来自海量文本中的不同语义知识,是构建大规模知识库最有效的技术之一。

每一段文本内所包含的寓意可以描述为其中的一组实体以及这些实体相互之间的关联和交互,因此抽取文本中的实体和它们之间的语义关系也就成为了理解文本意义的基础。

信息抽取可以通过抽取实体和实体之间的语义关系,表示这些语义关系承载的信息,并基于这些信息进行计算和推理来有效的理解一段文本所承载的语义。

命名实体识别

命名实体识别的目的是识别文本中指定类别的实体,主要包括人名、地名、机构名、专有名词等的任务。

命名实体识别系统通常包含两个部分:实体边界识别和实体分类。

其中实体边界识别判断一个字符串是否是一个实体,而实体分类将识别出的实体划分到预先给定的不同类别中去。

命名实体识别是一项极具实用价值的技术,目前中英文上通用命名实体识别(人名、地名、机构名)的 F1 值都能达到 90% 以上。命名实体识别的主要难点在于表达不规律、且缺乏训练语料的开放域命名实体类别(如电影、歌曲名)等。

关系抽取

关系抽取指的是检测和识别文本中实体之间的语义关系,并将表示同一语义关系的提及(mention)链接起来的任务。关系抽取的输出通常是一个三元组(实体 1,关系类别,实体 2),表示实体 1 和实体 2 之间存在特定类别的语义关系。

关系抽取举例

“北京是中国的首都、政治中心和文化中心”中表述的关系可以表示为(中国,首都,北京),(中国,政治中心,北京)和(中国,文化中心,北京)。语义关系类别可以预先给定(如 ACE 评测中的七大类关系),也可以按需自动发现(开放域信息抽取)。

关系抽取包含的模块

关系抽取通常包含两个核心模块:关系检测和关系分类。

其中关系检测判断两个实体之间是否存在语义关系,而关系分类将存在语义关系的实体对划分到预先指定的类别中。

在某些场景和任务下,关系抽取系统也可能包含关系发现模块,其主要目的是发现实体和实体之间存在的语义关系类别。例如,发现人物和公司之间存在雇员、CEO、CTO、创始人、董事长等关系类别。

事件抽取

事件抽取指的是从非结构化文本中抽取事件信息,并将其以结构化形式呈现出来的任务。

例如,从“毛泽东 1893 年出生于湖南湘潭”这句话中抽取事件{类型:出生, 人物:毛泽东,时间:1893 年,出生地:湖南湘潭}。

事件抽取任务通常包含事件类型识别和事件元素填充两个子任务。事件类型识别判断一句话是否表达了特定类型的事件。事件类型决定了事件表示的模板,不同类型的事件具有不同的模板。

例如出生事件的模板是{人物, 时间,出生地},而恐怖袭击事件的模板是{地点,时间,袭击者,受害者,受伤人数,…}。 事件元素指组成事件的关键元素,事件元素识别指的是根据所属的事件模板,抽取相应的元素,并为其标上正确元素标签的任务。

信息集成

实体、关系和事件分别表示了单篇文本中不同粒度的信息。在很多应用中,需要将来自不同数据源、不同文本的信息综合起来进行决策,这就需要研究信息集成技术。

目前,信息抽取研究中的信息集成技术主要包括共指消解技术和实体链接技术。共指消解指的是检测同一实体/关系/事件的不同提及,并将其链接在一起的任务。

例如,识别“乔布斯是苹果的创始人之一,他经历了苹果公司几十年的起落与兴衰”这句话中的“乔布斯”和“他”指的是同一实体。实体链接的目的是确定实体名所指向的真实世界实体。例如识别上一句话中的“苹果”和“乔布斯”分别指向真实世界中的苹果公司和其 CEO 史蒂夫·乔布斯。

以上,NLP的分类模型,信息检索,信息抽取的基本总结介绍。

想了解更多,请参考:

算法优化|说说哨兵(sentinel value)

机器学习|聚类算法之DBSCAN

机器学习|K-Means算法

机器学习|TF-IDF提取文本特征词

Tensorflow笔记|tensorflow做线性回归

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-03-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员郭震zhenguo 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档