✎从语言到信息
✎从语言中提取信息
✎含义
从以下内容自动提取句意和结构:
- 人类语言文本和演讲(新闻、社交媒体等)
- 社交网络
- 基因组序列
✎应用实例
- 信息检索:每天6,586,013,574次网络搜索(估算),基于文本的信息检索很可能成为当今软件中最常用的功能 ;
- 文本分类:对短信、新闻进行分类;
- 提取情绪和社会语义:很多的意思都隐藏在内涵中(内涵:除单词的字面意思或主要意义之外,由其引发的想法或感觉。),通常称提取内涵为情感分析。如对餐厅评价进行情感分析,判断差评 or 好评;
- 计算生物学:比较基因序列;(序列比较的关键之处:寻找基因、决定功能、揭示进化进程。这也是拼写检查的工作方式。Hint:编辑距离算法)
- 社交网络:由您的亲朋好友组成的网络离线或在线关系。可以计算这些网络的属性,从中提取信息。(社交关系的结构:人作为节点,链接代表关系的建立)
✎通过语言与人类交互
- 对话系统/聊天机器人:Siri,Google assistant,Facebook M,Cortana等
- 推荐系统:网易云音乐推荐,豆瓣电影、图书推荐等
- 问答系统
✎NLP 概述
✎背景
为什么语言解释难以实现?
- 语言有歧义
- 存在非标准语言
- 会不断产生新词
如何在这些问题上取得进展?
- 需要什么工具?
- 关于语言和世界的知识
- 一种结合各种知识体系的方法
- 怎么做?
- 从语言数据建立概率模型
- 模型与算法
- 正则表达式 (Regular Expressions)
- 编辑距离与对齐方式
- 词嵌入(针对词义的向量/神经网络模型)
- 机器学习分类器(朴素贝叶斯/线性回归/神经网络)
- 推荐算法(协同过滤)
- 网络算法 (PageRank)
- 语言学工具(情绪词典 – Sentiment lexicons)
✎什么是 NLP?
**自然语言处理(NLP)**是计算机科学、 人工智能、 语言学的交集领域。
NLP 的目标是让计算机处理或者“理解”自然语言,从而执行譬如预约、买东西、问题回答等有用的任务。但是充分理解和表达语言的含义(甚至定义语言)是件有难度的事情。达到完美的语言理解被称为 AI-complete[1]问题。
✎NLP 层级
✎NLP应用
从简单到复杂
- 拼写检查、关键字搜索、同义词查找
- 从网站提取信息,如产品价格、日期、地点、人员或公司名称
- 分类:阅读教材,判断长文本的积极/消极的情绪
- 机器翻译
- 口语对话系统
- 复杂的问答系统
NLP在工业上的应用越发广泛
- 搜索(书面或口头上)
- 在线广告匹配
- 自动/辅助翻译
- 市场或财务/交易的情绪分析
- 语音识别
- 聊天机器人/对话代理:自动化客户支持、控制设备、订购货物
✎为什么NLP是一门困难的学科?
- 表现、学习和使用语言/情景/世界/视觉知识的复杂性
- 人类语言具有不明确性(与编程和其他正式语言不同)
- 人类语言的解释取决于现实世界、常识和语境知识
✎深度学习在NLP中的应用
深度 NLP = 深度学习 + NLP
即结合自然语言处理的思想和目标,采用表示学习和深度学习的方法来解决这些问题 。
深度 NLP 在各个层级上的表示方式都为向量。
在人工智能领域,最困难的问题被非正式地称为 AI-complete 或 AI-hard。——维基百科 ↩