全栈 - 16 NLP 走近自然语言处理

这是全栈数据工程师养成攻略系列教程的第十六期:16 NLP 走近自然语言处理。

文本是一种极其重要的数据类型,让我们来了解下文本数据中有哪些研究问题和挖掘价值。

概念

我们在处理数据时经常会接触到文本,例如电影简介、新闻报道等,以及互联网上每天大量积累的用户产生内容(User Generated Content ),例如新浪微博、用户评论等,因此文本是一种十分常见和重要的数据类型。这些文本大多以自然语言的形式存在,即通过人类语言组织和产生,广泛应用于我们的日常对话、办公写作、阅读浏览等行为中。自然语言处理,即Natural Language Processing,希望让机器能够像人一样去理解,以人类自然语言为载体的文本所包含的信息,并完成一些语言领域的特定任务。

内容

语言是人类智慧长期沉淀的成果,对于看似简单的文本,从词汇级别、语法级别、语义级别、应用级别等不同角度出发,都包含大量研究问题和工作内容。

中文NLP中最基础的一块内容便是中文分词。英文等外文语言的单词之间以空格分开,因此显式提供了词和词之间的边界。而中文仅使用标点符号进行断句,字和字彼此相连,例如“上海自来水来自海上”。虽然类似N-grams等语言模型并不需要进行中文分词,但毕竟中文的基本语义单元是词而不是字,所以在大多数应用场景下,为了正确理解一句话所包含的语义,进行准确的中文分词仍是必不可少的预处理步骤。

词性标注是指在中文分词的基础上,结合上下文对分好的每个词标注最合适的词性。常见的词性有名词、动词、形容词、副词等,同一词语在不同的语境下可以表现为不同的词性,进而在语句中充当不同的语义角色。因此,词性标注主要是依据词本身的词性分布,以及上下文的实际语境来判断的。

命名实体识别是指识别出语句中的人名、地名、机构名、数字、日期、货币、地址等以名称为标识的实体,大多属于实词。而关系抽取则是指完成命名实体识别之后,抽取实体之间存在的关系。例如“乔布斯出任苹果公司CEO”,其中乔布斯和苹果公司分别属于人名和机构名,而CEO则是两个命名实体之间的关系。

关键词提取是指从大量文本中提取出最为核心的关键内容。常用的实现算法有TF-IDFTextRank两种,在提取之前需要对给定文本进行中文分词并移除停用词,即例如“你”、“我”、“着”、“了”等十分常用但不包含具体语义的词。TF-IDF选出那些一般并不常用(Inverse Document Frequency低),但是在给定文本中频繁出现(Term Frequency高)的词作为关键词;而TextRank则基于词之间的上下文关系构建共现网络,将处于网络核心位置的词作为关键词。

信息抽取则是从非结构化文本中抽取出有意义或者感兴趣的字段,例如对于一篇法律判决文书,从中提取出原告、被告、案件类型、判决结果等信息字段,从而将非结构化文本转化为结构化数据,便于信息管理和数据分析。目前大多数信息抽取都是通过人工制定规则,使用整理好的模式去目标文本中匹配出相应的字段,或者使用半监督学习,结合人工标注样本和机器学习模型,在不断的迭代和反馈中提高信息抽取的准确率。

依存分析主要包括句法依存分析和语义依存分析,其过程都是将原始语句解析为依存树,树中的每个节点都代表一个词,节点之间的连接则反应了词之间的句法关系或语义关系。通过依存分析,原本以顺序排列的词语之间产生了更加复杂和层次化的关系,便于机器更好地理解语句的语法和语义,往往能够为后续自然语言处理任务带来帮助。

词嵌入(Word Embedding)是指将词映射成低维(low-dimension)、实值(real-value)、稠密(dense)的词向量,从而赋予词语更加丰富的语义涵义,同时更加适合作为机器学习模型的输入。词嵌入的概念非常有用,在自然语言处理任务中应用也十分广泛,我们下一节中将详细进行讨论并实现。

应用

如果以上内容是从理论角度出发,探讨NLP所涉及的内容,那么从实际应用角度出发,NLP又可以用来实现哪些任务呢?

篇章理解是指对于给定的文章集合,通过处理后能够把握文章的主要内容并完成一些分类任务,例如对文章进行主题分类。篇章理解的实现大多基于有监督学习,即提供标注好的训练集和待分类的测试集,基于训练集得到一个能够准确提取信息、全面把握内容的分类模型,从而应用于测试集的分类任务。

文本摘要是指对于给定的大量文本,提取出核心思想和主要内容,快速生成篇幅更小、便于阅读和理解的摘要。文本摘要主要分为提取式和生成式两种,前者从原始文本中直接提取出已有的代表性语句,经过处理和组合后输出为摘要,后者在理解和融合原始文本的基础上,自动生成原始文本中没有的语句并组合为摘要。相较而言,生成式比抽取式更加困难,而人类的习惯也是先阅读并理解,选出重要的语句,再用自己的语言进行复述、总结和融合。

情感分析是指根据语句中蕴含的情感成分判断整个语句所表达的情感倾向,例如判断用户评论是否为积极或消极。情感分析的实现往往是简单地使用一些情感词典,对语句中出现的情感词进行加权组合,从而输出整个语句的情感得分,或者使用有监督学习,基于人工标注数据训练情感分类或回归模型。

知识图谱是一种表示知识的方法,使用节点表示实体,使用有向边表示实体之间的关系,实体和边都可以具备丰富的属性,从而将海量知识表示成一个庞大的网络。知识图谱模拟了人脑管理和检索知识的过程,当我们看到乔布斯和苹果公司这两个实体时,会很自然地去联想两者之间的关系。如果能够将某一领域所涉及的知识都以知识图谱的形式进行整理和组织,那么对于领域知识的管理、推理和检索等都能起到很大的便利。

文本翻译是一项十分常用的NLP应用,大家或多或少都使用过Google翻译等工具将文本从一种语言翻译成另一种语言。从本质上来看,文本翻译是一种序列到序列(Sequence to Sequence)的映射,其实现大多是基于人工标注数据集,即大量源语言文本以及对应的目标语言文本,使用循环神经网络等训练映射模型。当然,并不能简单地将源语言文本中的每个字翻译成目标语言并直接拼接,往往需要结合两种语言的语法特点以及具体的上下文语境进行调整,而这也正是文本翻译所面临的最大困难和挑战。

问答系统是对传统搜索引擎的一种改进。传统搜索引擎接受用户的关键词作为输入,以列表形式输出按相关性递减排序的搜索结果,用户仍然需要依次浏览直到找到最符合自己要求的内容。问答系统则直接根据用户问题返回最准确的答案,其实现涉及NLP的诸多领域,例如对用户输入内容进行理解和处理、以庞大的知识图谱作为知识存储、快速高效的知识检索和推理技术等。

聊天机器人很早便得到了应用,完成一些自动信息采集和回复的功能,但那时的聊天机器人主要基于关键词和模版等人工制定规则,智能程度不高。近年来随着深度学习等相关技术的发展,以及海量聊天语料的积累,聊天机器人逐渐可以接受任意文本输入并输出较为合理的回复。从本质上来看,聊天机器人也属于序列到序列的映射,但其涉及对用户输入文本的理解、知识图谱、文本生成等多个领域,并且需要解决多轮对话一致性等挑战。智能聊天机器人主要包括日常调侃的聊天机器人,例如微软小冰等,以及垂直领域的功能机器人,例如法律、购车、医疗等领域的专业咨询机器人。它们作为用户需求的万能入口,吸引了大量研究机构和创业公司的密切关注。

视频链接:走近自然语言处理

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 161,326评论 4 369
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,228评论 1 304
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 110,979评论 0 252
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,489评论 0 217
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,894评论 3 294
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,900评论 1 224
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,075评论 2 317
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,803评论 0 205
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,565评论 1 249
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,778评论 2 253
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,255评论 1 265
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,582评论 3 261
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,254评论 3 241
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,151评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,952评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 36,035评论 2 285
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,839评论 2 277

推荐阅读更多精彩内容

  • 命名实体识别 命名实体的提出源自信息抽取问题,即从报章等非结构化文本中抽取关于公司活动和国防相关活动的结构化信息,...
    我偏笑_NSNirvana阅读 9,960评论 1 35
  • References: 《speech and language processing 》2nd & 3rd 《统...
    艺术叔阅读 7,307评论 1 8
  • 前面的文章主要从理论的角度介绍了自然语言人机对话系统所可能涉及到的多个领域的经典模型和基础知识。这篇文章,甚至之后...
    我偏笑_NSNirvana阅读 13,652评论 2 64
  • 常用概念: 自然语言处理(NLP) 数据挖掘 推荐算法 用户画像 知识图谱 信息检索 文本分类 常用技术: 词级别...
    御风之星阅读 9,004评论 1 24
  • 在周六的下午,在羽毛球管,阿呆走进了小云的生活。在当天,小云心里也并没有什么其他的想法,就觉着又多了个朋友...
    d78f7cff3168阅读 261评论 0 2