自然语言处理与机器翻译FAQ

取自 自然语言处理百科

跳转到: 导航, 搜索

  博客搬家以来,一直想为“我爱自然语言处理”写个自然语言与机器翻译的通俗介绍。今天无意间发现了台湾张景新老师写的一篇相关文章,写得通俗有趣,就搬到这里来了,换了个合适的名字,将繁体转换为简体,消减了一些和博客内容不相关的,并将一些繁体中文术语改为简体中文术语。

1、什么是“自然语言“(NL:Natural Languages)

• 自然语言就是我们一般人平常所用的, 所写的中文, 英文, 日文, 和真主阿拉所用的阿拉伯文等语言文字 (广义来说, 也包含语音).

• 所谓的 “自然” 是相对于 “人工” 或 “程序” 语言 (Artificial or Programming Languages) 而言.

• 用程序语言写合法的程序, 一定要遵循规定的语法, 要不然, Compiler 就会说你的程序 illegal, 有 syntax error 等等. 这 Compiler 还真烦!!

• 讲妈妈教的话, 或写文章, 就不一定要那么规规矩矩, 偶而出现火星文也很酷啊!!

• 不过, 酷归酷, 这种特性也让自然语言处理变得很难.

2、什么是“自然语言处理“(What is Natural Language Processing / NLP)

• 就处理的型态来讲, 大概可分为三类: 分析, 转换及生成.

• 分析(Analysis): 就是通过统计模型,推理 (Statistical Models, Inferences), 模式识别/分类 (Pattern Recognition/Classification), 机器学习 (Machine Learning) 等特异功能, 去 “分析” 文字的内涵, 结构, 了解文件在讲什么.

• 转换 (Transfer): 分析之后, 可以将他 “转换” 成另一种形式的有用信息, 作进一步的应用. 比如转到另一种语言的深层结构 (自动翻译), 或数据库 (数据仓储).

• 生成 (Generation): 有时候, 我们也会把某些有用, 但是比较抽象的信息, 用文字写出来, 或用语音说出来, 这叫 “生成” 或 “合成”.

3、“自然语言处理”有什么作用?

• 机器翻译 (MT; machine translation), 文字转语音 (TTS; text-to-speech), 翻译电话/电话转译 (Interpreter Telephony)…

• 双语词典自动建构 (automatic construction of bilingual dictionaries), 双语词/短语自动对齐 (word/phrase alignment)…

• 知识本体自动建构 (ontology construction), 特定领域专业辞典建构 (domain specific word extraction)…

• 论文自动写作 (automatic authoring), 拼字校正 (spelling checker), 文法校正 (grammar checker)…

• 信息检索(IR; information retrieval), 信息抽取(IE; information extraction), 数据挖掘 (DM; data mining), 文本挖掘 (TM; text mining), 网络挖掘(WM: web mining)…

• 文件/网页分类/分级 (TC; text classification/categorization), 垃圾信分类 (anti-spamming)…

• 跨语言信息检索 (CLIR; cross-lingual IR), 跨语言信息抽取(CLIE; cross-lingual IE), 跨语言*…

• 生物信息 (bio-informatics), 序列比对 (sequence alignment), 结构比对 (secondary structure)…

• 电子学习 (e-Learning), 语言教学 (CALL; Computer Aided Language Learning), 自动出题 (test item generation) (e.g., TOFEL,), 自动改题 (automatic test scoring)…

• 情绪分析(emotion analysis), 民意分析 (opinion analysis), 情报分析 (intelligence analysis), 关键词拦截 (keyword spotting)…

• 自动营销 (automatic information pushing)…

• 智能型输入系统 (Smart IM), 身障辅助输入系统…

• 总之…

• 所有你想象得到, 跟 “文字” 或 “类文字” 的符号系列 (如 DNA, 乐谱) 相关的自动化分析, 转换, 合成, 要想做得更好, 最终都不能不考虑他们的结构跟功能 (语法跟语意). 所以, 自然语言处理的技术, 最终都会被用到这些应用领域.

• 那你说, 重不重要?

4、“自然语言处理”研究的终极目标是什么??

• 自然语言接口: 让机器来学习我们的语言, 了解我们想做什么, 而不是让我们学习机器的语言, 教他下一步怎么做!!

• 智能型代理人: 自动获取我们所要的知识.

• 智能问答系统: 即问即答, 实问实答的百科全书.

• 跨越语言障碍: 用不同语言, 应用各种语言材料, 及上述自然语言应用.

5、机器翻译系统(MTS:Machine Translation Systems) 是什么

• 机器翻译系统就是可以用来将一种语言 (来源语; SL; Source Language) 翻译成另一种语言 (目标语; TL; Target Language) 的系统.

• 主要是透过对的原始语言 (来源语) 的分析, 得到其结构, 再将分析的结构转换成目标语的结构, 而后根据目标 语结构, 生成目标语, 来达到翻译的目的.

• 这样的翻译模型, 统称为 Transfer-Based MT (转换式机器翻译).

• 这很像Compilers 所作的 Lexical analysis, Syntax analysis, Semantic analysis, Intermediate Code Generation, Code Optimization, Target Machine Code Generation 等步骤. 只是自然语言具有高度的 ambiguity (歧义性,模糊性), 需要有最佳化决策模型, 来挑选最好的分析.

• 上面提到的自然语言三种主要处理型态 (分析/转换/生成), 其实就是以机器翻译系统为本的分类.

• 1988 年开始, 另外有纯统计模型的机器翻译系统 (SMT; Statistical MT) 被IBM 研究人员开发出来. 主要是利用逐句对应好的双语语料, 及简单的统计模型, 学习词汇对齐 (alignment), 转换规则及翻译机率, 从而由生成的可能翻译句中, 挑选最可能的翻译的做法.

• 机器翻译系统是最复杂的自然语言处理系统. 因此, 学过或开发过大型机器翻译系统, 能让你充分了解各种不同层次的语言处理问题与处理技巧. 所以, 要透彻了解自然语言处理的人, 不能不了解机器翻译系统.

6、“机器翻译”不只是“语言翻译”

• 凡是从一种符号序列转成另一种符号系列, 都是一种形式的机器翻译. 都可用类似的模型处理.

• 语言翻译 (language-to-language translation)

• 外国人名音译/反音译 (forward/backward machine transliteration)

• 文字转语音 (text-to-speech)

• 电话转译/自动口译 (interpreter telephony; speech-to-speech)

• 同音字自动辨识选取 (phonetic input methods; phonetic-symbols-to-characters)

• 自动作曲/作词/伴奏/和弦 (automatic composition)

• 多媒体情境呈现 (text-to-emotion)

• 剧本转动画 (script to motion pictures)

• 火星文/注音文还原

• 中文对联自动产生 (Chinese Couplet Generator, 微软亚洲研究院, 2006)

• 以后, 自动改写哈利波特, 自动产生偶像剧剧本有没有可能呢 ?

• more … (自己想象吧!!)

7、为什么“自然语言处理”是信息处理的明日之星

• 人类的所有智能跟知识, 多数是以文字的型态存在的.

• 要自动处理和挖掘里面的知识, 自然不能不采用自然语言处理的技术.

• 看看Google跟Microsoft拼命找NLP的研究人员, 就知道了!!

• Google跟Microsoft 怎么赢, 就看我们啰 !!

8、为什么“机器翻译”是信息抽取的明日之星

• 网络打破了距离的障碍,

• 但是… 语言障碍 (Language Barrier) 仍旧存在 !!

• 语言成了目前妨碍信息流通及存取的最大绊脚石.

• 跨语言的知识抽取与分享, 必须有强力的“翻译引擎”才容易达成目标.

9、哪些语言会是未来几年的重要研究对象

• 中文啰 !! 使用人口众多, 大家要赚钱啊 !!

• 美国老大哥也很怕非和平崛起啊 !! :)

• 你以为所谓的“战略语言”是个什么词儿啊??

• 信息封锁/过滤 (screening) 也需要这一套啊. (哦哦… 被拿来做坏事啰!! 真尴尬!!)

• 还有阿拉伯文啰!! 美国大哥大对这地区一向很头痛 !! :)

• 你猜“全民公敌”里那样的卫星, 平常都是在拦截哪些关键词啊 ?!

10、“中文处理”与“英文处理”有什么不一样的地方

• 字集 (character set) 非常大. (e.g., Big5 有 13,053 个字). 字码 (code set) 不统一.

• 同音字极多. 注音或拼音输入有极高的歧义性.

• 字的排序 (sorting sequence) 没有一定标准 (通常依笔划或部首顺序).

• 词(word) 的界线不明显, 没有空格把词分开, 多数应用需要先作断词 (或称分词) (word segmentation) 的动作.

• 句子的界线也不明显. 标点符号没有统一的标准. 不像英文一样, 一个句子只有一个主要动词.

• 没有像英文一样明显的时态, 动貌系统, 单复数名词同型. 名词及动词难以从型态分辨出来.

• 缩写词 (abbreviation) 产生方式非常自由, 具有相当程度的歧义性.

• 中文词序 (word order) 非常自由, 同一句子部分用词位置调动后, 意思还是不变.

• 还有好多大家还没注意到的… to be found

11、学自然语言处理一定要文法很强吗??

• 有当然最好. 但目前的趋势是用统计模型跟机器学习的方法, 从大量的语料里面学习语言的细微规则.所以, 基 本的语文知识要有,却不必要到语言学家的层次.问题不大.

12、学自然语言处理可以学到哪些相关的技术??

• 看看上面相关的应用, 你还觉得有哪些学不到的 ?!

• 语言分析 (<=> compilers, formal languages)

• 统计推论/参数估计/假设检定 (<=> statistical inference, estimation theories)

• 样形识别 (<=> statistical pattern recognition)

• 机器学习 (<=> statistical machine learning)

• 基本技术不难… 老师有讲, 你有专心在听就容易学会.

13、有人认为统计机器翻译模型 (SMT) 解救了全世界. 老师的看法呢??

• 目前多数SMT Models 太过简化, 难以完全表达语言转译的机制, 跟目标语特有的结构.

• SMT 在语言知识抽取方面是有可取之处, 但太夸张的说法, 听听就好. 真有那么神, 那些发明人就不会跑去华尔街分析股票了. :)

• 多数研究 SMT 的人没真正开发过大型的 MT 系统. 不过, papers 倒是很容易产生. :)

• SMT 在知识抽取方面的优点还是要学, 但要知道他的先天限制, 才能予以改善.

• 感觉上, 登陆月球都没那么难, 要努力的地方还多着呢 !!

注:转载请注明出处“我爱自然语言处理”:www.52nlp.cn

本文链接地址:http://www.52nlp.cn/natural-language-processing-and-machine-translation-faq/

个人工具
工具箱