你與人工智慧的距離還差一個NLP
如果說我看得比別人更遠些,那是因為我站在巨人的肩膀上。—— 牛頓
當談論深度學習變成一件很酷的事情時,作為其子領域的自然語言處理(英文簡稱“NLP”)也逐漸被世人熟知,站到了人工智慧大舞臺的最前列。
上一期,我們藉著深度學習三巨頭獲頒圖靈獎的話題,討論了深度學習技術的三大應用領域,特別是其中基於自然語言處理的金融科技應用更是譽存科技的核心能力與業務之一。
打鐵還需自身硬。 今天我們不說應用,只論這門技術的幾個重點。文章基於譽存科技深度學習小組工作經驗所撰,希望會對初入人工智慧領域,想要了解NLP的同學有所幫助。
01 關於NLP的基本常識
在這裡,筆者首先要向大家推薦一本NLP領域的經典教材《Speech and Language Processing 》,裡面包含了 NLP 的基礎知識、語言學掃盲知識、基本任務以及解決思路。閱讀此書,你會接觸到很多 NLP 的最基本任務和知識,比如 tagging, parsing,coreference, semantic role labeling 等等,這對於全域性地瞭解 NLP 領域有著極其重要的意義。
為什麼要推薦大家讀這本書呢?因為不積跬步無以至千里。
以最近大熱BERT為例,它是谷歌釋出的開源自然語言處理模型,在問答系統、自然語言推理和釋義檢測(paraphrase detection)等任務中均取得了突破性的進展。尤其是訓練 language model (LM)的隨機替換更是重新整理了各項NLP任務的成績。那麼,隨機替換是什麼?其本質就是語言建模裡面基於 interpolation 的平滑方式,而基於 interpolation 的 LM 平滑,在本書中早有闡釋。
02 為什麼學NLP很重要?
眾所周知,語言是人類智慧的偉大結晶,也是人與人之間溝通交流的基本手段,而機器作為異次元生物不能直接與人對話,需要特殊的感測器和位元組符號,於是就產生了交流障礙。 自然語言處理作為一種人工智慧技術,能幫助機器識別人類語言,並分析、理解、改變或生成它,是打破人機交流屏障的重要技術手段。
從目前的趨勢來看,人工智慧是未來,其發展勢不可擋。不必說從事網際網路的人們已經制造出的海量資料/資訊,未來還將持續,這大千世界還存在其他海量結構化、半結構化和非結構化資料。就線上的結構化資料而言,在大資料、雲端計算技術的通力整合下,其技術已基本成熟和穩定,而對於半結構化和非結構化資料的處理,因為涉及的複雜性,在當前和未來更多領域應用都具有極大的困難和挑戰。
智慧時代,不僅企業需要懂 NLP 技術的人來處理這些海量非結構化資料,研發人員也需要利用NLP技術輕鬆實現人機互動。從這點來看,NLP的重要性已不言而喻,而各大招聘網站上列出的NLP演算法專家薪酬更是一個簡單粗暴但在理的佐證。
03 經典NLP模型
自然語言處理的第1步通常都是 將輸入的文字轉成數字化。
NLP中最直觀的文字表示方法是 One-hot Representation . 這種方法把每個詞表示為一個以詞彙量為大小的向量。該向量中除了一個元素為1,其他都為0.
這種表示方法很簡潔,但不能編碼詞與詞之間的關係,因為任何兩個詞的詞向量的的相似度都為0. Word Embedding (詞嵌入) 可以將詞表示從 One-hot Representation轉成一個定長的、連續的稠密向量。之所以稱為稠密,因為一個詞經詞嵌入之後,特徵維度相對於原來的維度(也即是詞彙表的大小)大為減小。詞嵌入是語言模型的“副產品”。語言模型的基本思想是對出現在上下文環境裡的詞進行預測。詞嵌入透過訓練之後能夠體現出詞與詞之間的關係。 語言模型的訓練屬於非監督學習,故大規模訓練語料(如wikipedia)很容易獲得。
透過訓練一個語言模型,得到詞嵌入矩陣,再使用該矩陣作為輸入訓練其他NLP模型,這種思想在一定程度上對BERT模型的提出產生影響。
04 我們的應用
前面已提到過BERT模型在NLP任務中重新整理了多項記錄。
譽存科技深度學習小組也結合NLP最新研發成果與公司的實際業務需求,第一時間將BERT預訓練模型運用到了 文字分類、命名實體抽取、新聞情感分析、文字摘要、文字聚類和中英文翻譯 等方面,並取得了很好的成果。
下面簡單介紹下這幾個具體NLP任務的作用:
- 文字分類的目的是更加高效便捷找到使用者關心的文字型別。
- 命名實體識別是抽取文字中人名、地名和機構名,有助於找到文字的主體以及主體的屬性。
- 新聞情感分析是確定新聞內容所描述的情感傾向;不同的傾向意味著主體(個人或者公司)在經歷好的、不好的或者中性的事件。
- 文字摘要的目的是化繁為簡,將目標文件從一個長文字轉成一個短文字(通常在100字以內),並儘量保持核心思想不變。
- 文字聚類是將講述相同話題的新聞或者其他文件分門別類,有利於找出文件中不同事件的受關注程度。
- 中英文翻譯則是將這兩種語言的文件翻譯成某一種語言,方便文件的閱讀和理解。
BERT模型的強大之處就在於,它已經從數百萬篇文章當中學習到了字與字、詞與詞之間的關係。這種能力為構建在BERT預訓練模型之上的具體事務模型(如文字分類)提供了語境資訊,使得事務模型在僅使用少量訓練樣本的情況下就能表現就好的效果。
最後,給大家一個小小的建議:多看關於NLP的論文,特別是子領域相關的一些研究成果,包括文字分類、實體識別、情感分析等等。另外,基本的數學邏輯也需要搞懂,畢竟天天都在用演算法,無時無刻不在最佳化,數學太渣,會浪費很多時間的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29829936/viewspace-2643791/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 距離“配齊” 你還差一個H3C F100-C-A3防火牆!防火牆
- 4 大系列、33 課時,距離你成為架構師還差這一套課程架構
- 也許,你與解題高手之間的距離,差的可能就是這本書!
- 距離蘋果釋出會還有一週蘋果
- 曼哈頓距離與切比雪夫距離
- GitHub 熱點速覽 Vol.25:距離優雅程式設計你差個它Github程式設計
- 曼哈頓距離與切比雪夫距離的互化
- 你離ELK只有一句docker-compose的距離Docker
- 你與小程式開發的距離有多遠?
- 你距離PostgreSQL 14版本只有“一鍵之差”SQL
- 位元組跳動武漢招聘 2000 人,距離大廠 Offer,你還差這篇Android乾貨!Android
- 遊戲設計與現實的距離,你憑什麼說這個設計一定有效?遊戲設計
- 一個新媒體運營與web前端的距離有多遠?Web前端
- 位元組跳動年前再招聘 1W+ 人,距離大廠 Offer,你還差這篇Android乾貨!Android
- 微軟雅黑,還有點兒距離微軟
- 中國網路消費信心:離爆表還有距離
- JavaScript 元素距離視窗頂部的距離JavaScript
- 一張圖:9個資料科學中的距離測量與演算法資料科學演算法
- JavaScript獲取元素距離文件頂部的距離JavaScript
- 你和資料大神的距離,只差一把屠龍寶刀
- 遊戲畫面距離電影還有多遠?遊戲
- javascript獲取元素距離網頁頂部的距離JavaScript網頁
- 你距離月薪50k的程式設計師,只差了一個完善的職業規劃程式設計師
- 不成熟的NLP技術與人工智慧結合,下一個“商機”在哪兒?人工智慧
- 一個示例讓你明白介面與資料分離
- 你離區塊鏈智慧合約開發只有一句docker-compose的距離區塊鏈Docker
- 特徵選擇(一)-維數問題與類內距離特徵
- 距離 Java 開發者玩轉 Serverless,到底還有多遠?JavaServer
- 寒假專案4-點與距離
- PostgreSQL遺傳學應用-矩陣相似距離計算(歐式距離,…XX距離)SQL矩陣
- 編輯距離及編輯距離演算法演算法
- 快手遊戲距離自己的《熱血航線》還有多遠?遊戲
- 三星和iPhone之間的距離 就差一個iOS了嗎?iPhoneiOS
- 自動駕駛,離真正量產還差什麼?自動駕駛
- Laravel 距離排序Laravel排序
- 【Python】距離Python
- unit原子距離
- 極狐GitLab|打破職業瓶頸,你距離這個高薪職業就差一步!Gitlab高薪