美文网首页NL/DL/NLP 学习
自然语言处理与机器翻译FAQ

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

作者: x00c | 来源:发表于2017-08-20 11:52 被阅读80次

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

    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 在知识抽取方面的优点还是要学, 但要知道他的先天限制, 才能予以改善.

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

    转载自:“我爱自然语言处理”:http://www.52nlp.cn/natural-language-processing-and-machine-translation-faq/

    相关文章

      网友评论

        本文标题:自然语言处理与机器翻译FAQ

        本文链接:https://www.haomeiwen.com/subject/fwkfdxtx.html