博客搬家以來(lái)霎箍,一直想為“我愛(ài)自然語(yǔ)言處理”寫(xiě)個(gè)自然語(yǔ)言與機(jī)器翻譯的通俗介紹。今天無(wú)意間發(fā)現(xiàn)了臺(tái)灣張景新老師寫(xiě)的一篇相關(guān)文章澡为,寫(xiě)得通俗有趣漂坏,就搬到這里來(lái)了,換了個(gè)合適的名字媒至,將繁體轉(zhuǎn)換為簡(jiǎn)體顶别,消減了一些和博客內(nèi)容不相關(guān)的,并將一些繁體中文術(shù)語(yǔ)改為簡(jiǎn)體中文術(shù)語(yǔ)拒啰。
1驯绎、什么是“自然語(yǔ)言“(NL:Natural Languages)
?自然語(yǔ)言就是我們一般人平常所用的, 所寫(xiě)的中文, 英文, 日文, 和真主阿拉所用的阿拉伯文等語(yǔ)言文字 (廣義來(lái)說(shuō), 也包含語(yǔ)音).
?所謂的 "自然" 是相對(duì)于 "人工" 或 "程序" 語(yǔ)言 (Artificial or Programming Languages) 而言.
?用程序語(yǔ)言寫(xiě)合法的程序, 一定要遵循規(guī)定的語(yǔ)法, 要不然, Compiler 就會(huì)說(shuō)你的程序 illegal, 有 syntax error 等等. 這 Compiler 還真煩!!
?講媽媽教的話(huà), 或?qū)懳恼? 就不一定要那么規(guī)規(guī)矩矩, 偶而出現(xiàn)火星文也很酷啊!!
?不過(guò), 酷歸酷, 這種特性也讓自然語(yǔ)言處理變得很難.
2、什么是“自然語(yǔ)言處理“(What is Natural Language Processing / NLP)
?就處理的型態(tài)來(lái)講, 大概可分為三類(lèi): 分析, 轉(zhuǎn)換及生成.
?分析(Analysis): 就是通過(guò)統(tǒng)計(jì)模型谋旦,推理 (Statistical Models, Inferences), 模式識(shí)別/分類(lèi) (Pattern Recognition/Classification), 機(jī)器學(xué)習(xí) (Machine Learning) 等特異功能, 去 "分析" 文字的內(nèi)涵, 結(jié)構(gòu), 了解文件在講什么.
?轉(zhuǎn)換 (Transfer): 分析之后, 可以將他 "轉(zhuǎn)換" 成另一種形式的有用信息, 作進(jìn)一步的應(yīng)用. 比如轉(zhuǎn)到另一種語(yǔ)言的深層結(jié)構(gòu) (自動(dòng)翻譯), 或數(shù)據(jù)庫(kù) (數(shù)據(jù)倉(cāng)儲(chǔ)).
?生成 (Generation): 有時(shí)候, 我們也會(huì)把某些有用, 但是比較抽象的信息, 用文字寫(xiě)出來(lái), 或用語(yǔ)音說(shuō)出來(lái), 這叫 "生成" 或 "合成".
3剩失、“自然語(yǔ)言處理”有什么作用?
?機(jī)器翻譯 (MT; machine translation), 文字轉(zhuǎn)語(yǔ)音 (TTS; text-to-speech), 翻譯電話(huà)/電話(huà)轉(zhuǎn)譯 (Interpreter Telephony)...
?雙語(yǔ)詞典自動(dòng)建構(gòu) (automatic construction of bilingual dictionaries), 雙語(yǔ)詞/短語(yǔ)自動(dòng)對(duì)齊 (word/phrase alignment)...
?知識(shí)本體自動(dòng)建構(gòu) (ontology construction), 特定領(lǐng)域?qū)I(yè)辭典建構(gòu) (domain specific word extraction)...
?論文自動(dòng)寫(xiě)作 (automatic authoring), 拼字校正 (spelling checker), 文法校正 (grammar checker)...
?信息檢索(IR; information retrieval), 信息抽取(IE; information extraction), 數(shù)據(jù)挖掘 (DM; data mining), 文本挖掘 (TM; text mining), 網(wǎng)絡(luò)挖掘(WM: web mining)...
?文件/網(wǎng)頁(yè)分類(lèi)/分級(jí) (TC; text classification/categorization), 垃圾信分類(lèi) (anti-spamming)...
?跨語(yǔ)言信息檢索 (CLIR; cross-lingual IR), 跨語(yǔ)言信息抽取(CLIE; cross-lingual IE), 跨語(yǔ)言*...
?生物信息 (bio-informatics), 序列比對(duì) (sequence alignment), 結(jié)構(gòu)比對(duì) (secondary structure)...
?電子學(xué)習(xí) (e-Learning), 語(yǔ)言教學(xué) (CALL; Computer Aided Language Learning), 自動(dòng)出題 (test item generation) (e.g., TOFEL,), 自動(dòng)改題 (automatic test scoring)...
?情緒分析(emotion analysis), 民意分析 (opinion analysis), 情報(bào)分析 (intelligence analysis), 關(guān)鍵詞攔截 (keyword spotting)...
?自動(dòng)營(yíng)銷(xiāo) (automatic information pushing)...
?智能型輸入系統(tǒng) (Smart IM), 身障輔助輸入系統(tǒng)...
?總之...
?所有你想象得到, 跟 "文字" 或 "類(lèi)文字" 的符號(hào)系列 (如 DNA, 樂(lè)譜) 相關(guān)的自動(dòng)化分析, 轉(zhuǎn)換, 合成, 要想做得更好, 最終都不能不考慮他們的結(jié)構(gòu)跟功能 (語(yǔ)法跟語(yǔ)意). 所以, 自然語(yǔ)言處理的技術(shù), 最終都會(huì)被用到這些應(yīng)用領(lǐng)域.
?那你說(shuō), 重不重要?
4、“自然語(yǔ)言處理”研究的終極目標(biāo)是什么??
?自然語(yǔ)言接口: 讓機(jī)器來(lái)學(xué)習(xí)我們的語(yǔ)言, 了解我們想做什么, 而不是讓我們學(xué)習(xí)機(jī)器的語(yǔ)言, 教他下一步怎么做!!
?智能型代理人: 自動(dòng)獲取我們所要的知識(shí).
?智能問(wèn)答系統(tǒng): 即問(wèn)即答, 實(shí)問(wèn)實(shí)答的百科全書(shū).
?跨越語(yǔ)言障礙: 用不同語(yǔ)言, 應(yīng)用各種語(yǔ)言材料, 及上述自然語(yǔ)言應(yīng)用.
5册着、機(jī)器翻譯系統(tǒng)(MTS:Machine Translation Systems) 是什么
?機(jī)器翻譯系統(tǒng)就是可以用來(lái)將一種語(yǔ)言 (來(lái)源語(yǔ); SL; Source Language) 翻譯成另一種語(yǔ)言 (目標(biāo)語(yǔ); TL; Target Language) 的系統(tǒng).
?主要是透過(guò)對(duì)的原始語(yǔ)言 (來(lái)源語(yǔ)) 的分析, 得到其結(jié)構(gòu), 再將分析的結(jié)構(gòu)轉(zhuǎn)換成目標(biāo)語(yǔ)的結(jié)構(gòu), 而后根據(jù)目標(biāo)語(yǔ)結(jié)構(gòu), 生成目標(biāo)語(yǔ), 來(lái)達(dá)到翻譯的目的.
?這樣的翻譯模型, 統(tǒng)稱(chēng)為 Transfer-Based MT (轉(zhuǎn)換式機(jī)器翻譯).
?這很像Compilers 所作的 Lexical analysis, Syntax analysis, Semantic analysis, Intermediate Code Generation, Code Optimization, Target Machine Code Generation 等步驟. 只是自然語(yǔ)言具有高度的 ambiguity (歧義性,模糊性), 需要有最佳化決策模型, 來(lái)挑選最好的分析.
?上面提到的自然語(yǔ)言三種主要處理型態(tài) (分析/轉(zhuǎn)換/生成), 其實(shí)就是以機(jī)器翻譯系統(tǒng)為本的分類(lèi).
?1988 年開(kāi)始, 另外有純統(tǒng)計(jì)模型的機(jī)器翻譯系統(tǒng) (SMT; Statistical MT) 被IBM 研究人員開(kāi)發(fā)出來(lái). 主要是利用逐句對(duì)應(yīng)好的雙語(yǔ)語(yǔ)料, 及簡(jiǎn)單的統(tǒng)計(jì)模型, 學(xué)習(xí)詞匯對(duì)齊 (alignment), 轉(zhuǎn)換規(guī)則及翻譯機(jī)率, 從而由生成的可能翻譯句中, 挑選最可能的翻譯的做法.
?機(jī)器翻譯系統(tǒng)是最復(fù)雜的自然語(yǔ)言處理系統(tǒng). 因此, 學(xué)過(guò)或開(kāi)發(fā)過(guò)大型機(jī)器翻譯系統(tǒng), 能讓你充分了解各種不同層次的語(yǔ)言處理問(wèn)題與處理技巧. 所以, 要透徹了解自然語(yǔ)言處理的人, 不能不了解機(jī)器翻譯系統(tǒng).
6拴孤、“機(jī)器翻譯”不只是“語(yǔ)言翻譯”
?凡是從一種符號(hào)序列轉(zhuǎn)成另一種符號(hào)系列, 都是一種形式的機(jī)器翻譯. 都可用類(lèi)似的模型處理.
?語(yǔ)言翻譯 (language-to-language translation)
?外國(guó)人名音譯/反音譯 (forward/backward machine transliteration)
?文字轉(zhuǎn)語(yǔ)音 (text-to-speech)
?電話(huà)轉(zhuǎn)譯/自動(dòng)口譯 (interpreter telephony; speech-to-speech)
?同音字自動(dòng)辨識(shí)選取 (phonetic input methods; phonetic-symbols-to-characters)
?自動(dòng)作曲/作詞/伴奏/和弦 (automatic composition)
?多媒體情境呈現(xiàn) (text-to-emotion)
?劇本轉(zhuǎn)動(dòng)畫(huà) (script to motion pictures)
?火星文/注音文還原
?中文對(duì)聯(lián)自動(dòng)產(chǎn)生 (Chinese Couplet Generator, 微軟亞洲研究院, 2006)
?以后, 自動(dòng)改寫(xiě)哈利波特, 自動(dòng)產(chǎn)生偶像劇劇本有沒(méi)有可能呢 ?
?more ... (自己想象吧!!)
7、為什么“自然語(yǔ)言處理”是信息處理的明日之星
?人類(lèi)的所有智能跟知識(shí), 多數(shù)是以文字的型態(tài)存在的.
?要自動(dòng)處理和挖掘里面的知識(shí), 自然不能不采用自然語(yǔ)言處理的技術(shù).
?看看Google跟Microsoft拼命找NLP的研究人員, 就知道了!!
?Google跟Microsoft 怎么贏, 就看我們啰 !!
8甲捏、為什么“機(jī)器翻譯”是信息抽取的明日之星
?網(wǎng)絡(luò)打破了距離的障礙,
?但是... 語(yǔ)言障礙 (Language Barrier) 仍舊存在 !!
?語(yǔ)言成了目前妨礙信息流通及存取的最大絆腳石.
?跨語(yǔ)言的知識(shí)抽取與分享, 必須有強(qiáng)力的“翻譯引擎”才容易達(dá)成目標(biāo).
9演熟、哪些語(yǔ)言會(huì)是未來(lái)幾年的重要研究對(duì)象
?中文啰 !! 使用人口眾多, 大家要賺錢(qián)啊 !!
?美國(guó)老大哥也很怕非和平崛起啊 !!
?你以為所謂的“戰(zhàn)略語(yǔ)言”是個(gè)什么詞兒啊??
?信息封鎖/過(guò)濾 (screening) 也需要這一套啊. (哦哦... 被拿來(lái)做壞事啰!! 真尷尬!!)
?還有阿拉伯文啰!! 美國(guó)大哥大對(duì)這地區(qū)一向很頭痛 !!
?你猜“全民公敵”里那樣的衛(wèi)星, 平常都是在攔截哪些關(guān)鍵詞啊 ?!
10、“中文處理”與“英文處理”有什么不一樣的地方
?字集 (character set) 非常大. (e.g., Big5 有 13,053 個(gè)字). 字碼 (code set) 不統(tǒng)一.
?同音字極多. 注音或拼音輸入有極高的歧義性.
?字的排序 (sorting sequence) 沒(méi)有一定標(biāo)準(zhǔn) (通常依筆劃或部首順序).
?詞(word) 的界線(xiàn)不明顯, 沒(méi)有空格把詞分開(kāi), 多數(shù)應(yīng)用需要先作斷詞 (或稱(chēng)分詞) (word segmentation) 的動(dòng)作.
?句子的界線(xiàn)也不明顯. 標(biāo)點(diǎn)符號(hào)沒(méi)有統(tǒng)一的標(biāo)準(zhǔn). 不像英文一樣, 一個(gè)句子只有一個(gè)主要?jiǎng)釉~.
?沒(méi)有像英文一樣明顯的時(shí)態(tài), 動(dòng)貌系統(tǒng), 單復(fù)數(shù)名詞同型. 名詞及動(dòng)詞難以從型態(tài)分辨出來(lái).
?縮寫(xiě)詞 (abbreviation) 產(chǎn)生方式非常自由, 具有相當(dāng)程度的歧義性.
?中文詞序 (word order) 非常自由, 同一句子部分用詞位置調(diào)動(dòng)后, 意思還是不變.
?還有好多大家還沒(méi)注意到的... to be found
11摊鸡、學(xué)自然語(yǔ)言處理一定要文法很強(qiáng)嗎??
?有當(dāng)然最好. 但目前的趨勢(shì)是用統(tǒng)計(jì)模型跟機(jī)器學(xué)習(xí)的方法, 從大量的語(yǔ)料里面學(xué)習(xí)語(yǔ)言的細(xì)微規(guī)則.所以, 基本的語(yǔ)文知識(shí)要有,卻不必要到語(yǔ)言學(xué)家的層次.問(wèn)題不大.
12绽媒、學(xué)自然語(yǔ)言處理可以學(xué)到哪些相關(guān)的技術(shù)??
?看看上面相關(guān)的應(yīng)用, 你還覺(jué)得有哪些學(xué)不到的 ?!
?語(yǔ)言分析 (<=> compilers, formal languages)
?統(tǒng)計(jì)推論/參數(shù)估計(jì)/假設(shè)檢定 (<=> statistical inference, estimation theories)
?樣形識(shí)別 (<=> statistical pattern recognition)
?機(jī)器學(xué)習(xí) (<=> statistical machine learning)
?基本技術(shù)不難... 老師有講, 你有專(zhuān)心在聽(tīng)就容易學(xué)會(huì).
13、有人認(rèn)為統(tǒng)計(jì)機(jī)器翻譯模型 (SMT) 解救了全世界. 老師的看法呢??
?目前多數(shù)SMT Models 太過(guò)簡(jiǎn)化, 難以完全表達(dá)語(yǔ)言轉(zhuǎn)譯的機(jī)制, 跟目標(biāo)語(yǔ)特有的結(jié)構(gòu).
?SMT 在語(yǔ)言知識(shí)抽取方面是有可取之處, 但太夸張的說(shuō)法, 聽(tīng)聽(tīng)就好. 真有那么神, 那些發(fā)明人就不會(huì)跑去華爾街分析股票了.
?多數(shù)研究 SMT 的人沒(méi)真正開(kāi)發(fā)過(guò)大型的 MT 系統(tǒng). 不過(guò), papers 倒是很容易產(chǎn)生.
?SMT 在知識(shí)抽取方面的優(yōu)點(diǎn)還是要學(xué), 但要知道他的先天限制, 才能予以改善.
?感覺(jué)上, 登陸月球都沒(méi)那么難, 要努力的地方還多著呢 !!
轉(zhuǎn)載自:“我愛(ài)自然語(yǔ)言處理”:http://www.52nlp.cn/natural-language-processing-and-machine-translation-faq/