浅谈自然语言在科技时代的运用
?
自然語言處理是現(xiàn)代技術(shù)最重要的組成之一,常用的自然語言一般指漢語、英語等。是隨著人類社會發(fā)展演變而來的語言。區(qū)別于人工語言,如程序設(shè)計的語言。
自然語言是指用計算機對自然語言的形、音、義等信息進入處理,即對字、詞、句、篇章的輸入、輸出、識別、分析、理解、生成等的操作和加工。實現(xiàn)人機間的信息交流。
隨著計算機記錄的文字資料越來多,尤其是伴隨著互聯(lián)網(wǎng)發(fā)展,文字資料與日俱增。如何讓計算機自動處理這些文字資料甚至是理解這些文字呢?計算機專家們?yōu)榇碎_始了幾十年的研究。
我根據(jù)自己的認識來總結(jié)以下自然語言處理這些年都干了些什么,有哪些好的應(yīng)用。
一、基礎(chǔ)研究
(1)詞、分詞
統(tǒng)一一下文本里面的詞頻,看看哪些詞是提及最多的等等。
英文,詞與詞之間是用空格分開的,統(tǒng)計詞很簡單。最多加上stemming算法,就是同一個詞的不同時態(tài)、單復(fù)數(shù)等處理。
中文,詞與詞之間沒有空隙,最多在句子之間有標點符號。要統(tǒng)計中文詞匯,首先要做個分詞的步驟,業(yè)內(nèi)術(shù)語叫做“中文分詞”。做分詞研究是中文自然語言處理的第一步,方法有很多種,無非是詞典和機器學(xué)習(xí)。
(a)基于詞典的方法
搞一個漢語詞典,以一定的數(shù)據(jù)結(jié)構(gòu)存儲方便查找。其中一種叫做“Trie Tree”的數(shù)據(jù)結(jié)構(gòu)很合適。詞典的持續(xù)更新很重要,詞典里面沒有的新詞就只能被分成單字。基于詞典的有點就是一個字:快!
字典的持續(xù)更新是可以做到的,爬蟲每天爬蟲新聞、微博的內(nèi)容,用新詞發(fā)現(xiàn)算法從中發(fā)現(xiàn)新詞更新到詞典中。
新詞發(fā)現(xiàn)算法,是一直統(tǒng)計算法,在一堆語料中通過統(tǒng)計計算字與字之間的粘合度、左右鄰居的信息熵就可以把其中的詞找出來,效果很好。
(b)機器學(xué)習(xí)
早些年的機器學(xué)習(xí)方法有HMM(隱馬爾可夫模型),CRF(條件隨機場),效果都不錯,在封閉訓(xùn)練集上等達到百分之九十幾的準確率。這些機器學(xué)習(xí)的方法能在一定程度上識別新詞,但僅僅是一定程度上。
最近幾年深度學(xué)習(xí)發(fā)展很快,有些研究者把它用到分詞上也達到了很好的效果。不過,總感覺這是殺雞用牛刀。
實際應(yīng)用中,都是字典加機器學(xué)習(xí)的方法結(jié)合來用的。
(2)詞性標注(POS)
詞性是人類語言文字中的一個規(guī)則,而這個規(guī)則又比較松散,一個詞有多個詞性,位置不同詞性不同,人類自己識別起來都很費勁。詞性標注,就是讓計算機通過一定的算法把一句話里面的每個詞分成不同的詞性。
詞性標注,一般都是用機器學(xué)習(xí)的方法來做。通過人工事先標注好的語料來進行機器學(xué)習(xí)得到一個模型,計算機程序使用這個模型再來對其它文本進行標注。早期的機器學(xué)習(xí)方法有HMM,CRF等。這些年也可以上深度學(xué)習(xí)來做。
(3)命名實體識別(NER)
命名實體,就是代表一個實體的詞匯,比如,人名、地名、機構(gòu)名。這個一般的做法是規(guī)則+機器學(xué)習(xí)的方法。CRF同樣在這里有用武之地。
(4)句法分析
讓計算機來把一句話的主謂賓、定狀補給分析出來。這也是一項挑戰(zhàn)。同樣,它也可以通過CRF來實現(xiàn)。
以上過程,分詞、詞性標注、命名實體識別、依存句法分析都可以用CRF來實現(xiàn)。從原理上,他們有相同的特點,都是最字或詞的一種標注。
CRF分詞是由字組詞的過程,訓(xùn)練語料把每個字標記成詞的開頭、中間、結(jié)尾等標記。訓(xùn)練過程是學(xué)習(xí)這些字、標記的上下文關(guān)系;分詞過程是根據(jù)學(xué)習(xí)的關(guān)系給字打上標記,再根據(jù)這些標記組成詞。
CRF詞性標注、命名實體識別、句法分析是同樣的道理,但他們標注的都是詞、詞性等關(guān)系。
(5)語音處理
以上談及的都是對文本內(nèi)容的研究,語言的另一種形式——語音也是多年來計算機研究的一個領(lǐng)域。
這里的語音處理主要是跟自然語言處理相關(guān)的,最主要的是語音轉(zhuǎn)文本,其它還有文本轉(zhuǎn)語音,喚醒詞識別。
喚醒詞識別,值得特別介紹一下。現(xiàn)在智能設(shè)備很多,智能語音助手、智能音響等具有語音交互功能的軟硬件產(chǎn)品,基本上都有一個“語音喚醒功能”。比如你給你的智能音響或機器人起了個名字叫“小白”,你叫它“小白”以后,它就開始和你交互了;如果你叫它“小黑”,它就不搭理你。這個“小白”就是它的喚醒詞,每個人對自己的產(chǎn)品都可以用不同的喚醒詞。喚醒詞識別做的就是如何訓(xùn)練一個特定詞匯的識別模型,甚至還包括個人音色特征(別人叫它小白也不行)。
以上就是自然語言處理做的基礎(chǔ)研究內(nèi)容,這些基礎(chǔ)研究有什么應(yīng)用能讓我們的生活更美好呢?
如無特殊說明,本文為本站原創(chuàng),出處:https://www.yuanrenxue.com/轉(zhuǎn)載于:https://www.cnblogs.com/amiza/p/10368649.html
總結(jié)
以上是生活随笔為你收集整理的浅谈自然语言在科技时代的运用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关押罪犯洛谷P1525
- 下一篇: 同一局域网内_Pycharm访问服务器