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

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

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

作者 52nlp

在 “自然语言处理与机器翻译FAQ” 有 1 条评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注