▎為什么需要NLP情感分析,?
?
看了最新一期奇葩說,,很觸動(dòng)。
辯題:
TA真的很努力是不是一句好話
?
辯手們從表達(dá)者的意圖,、傾聽者的心態(tài),、傳播學(xué)語境等各種角度論證自己的觀點(diǎn),意圖拉攏受眾站到自己這一邊,,而受眾的立場(chǎng)在一波又一波的針鋒相對(duì)中左右搖擺,。辯手們出色的語言能力,成功感染了大家的情緒,,引發(fā)共鳴,。
我也從中受到很多啟發(fā),特別是有兩句話,,與最近在做的一個(gè)項(xiàng)目有關(guān),。
被誤解是表達(dá)者的宿命。
不確定是傾聽者的宿命,。
我們?nèi)祟愃坪鹾茈y準(zhǔn)確把握他人的情感變化,。但是我想,機(jī)器是不是可以做到這一點(diǎn),。基于這個(gè)論點(diǎn),,下面給大家分享一個(gè)機(jī)器學(xué)習(xí)的分支研究——自然語言處理(NLP)。
或許你已經(jīng)很熟悉這個(gè)概念了,,但是我們并不滿足于只是讓機(jī)器簡(jiǎn)單處理我們平時(shí)說的話,,我們要做更深層次的研究,那就是教計(jì)算機(jī)理解我們的情緒,,做“情感分析”,。
或許你會(huì)覺得有些不可思議,,感到懷疑,而這正是值得探討的,。
自然語言處理
自然語言處理(Natural Language Processing),,簡(jiǎn)稱 NLP,是人工智能領(lǐng)域的一個(gè)重要組成部分,,旨在讓計(jì)算機(jī)理解并處理人類語言,。
(圖片來源于網(wǎng)絡(luò),如有侵權(quán)請(qǐng)聯(lián)系刪除)
由于理解自然語言,,需要關(guān)于外在世界的廣泛知識(shí)以及運(yùn)用操作這些知識(shí)的能力,,所以自然語言處理,也被視為解決人工智能完備性的核心問題之一,。
眾所周知,,人與人和人與計(jì)算機(jī)交流的方法有很大區(qū)別。程序員經(jīng)過專業(yè)學(xué)習(xí)和訓(xùn)練,,在與機(jī)器對(duì)話時(shí),,必須嚴(yán)格遵守特定的語法和格式要求,而人與人的交流,,從牙牙學(xué)語開始,,一切都顯得自然隨意得多。
同樣的句子可以表達(dá)不同的含義,,不同的句子還能表達(dá)相同的含義,。
為什么?引起這種差異的原因是什么,?
情感,!情緒!情境,!
如此,,你也就明白,讓計(jì)算機(jī)做自然語言處理,,尤為艱難的就是情感分析了,。
情感分析
情感是將表情、聲調(diào),、文字以及語言風(fēng)格雜糅在一起,,是一個(gè)表達(dá)過程,而非結(jié)論,。情感分析(Sentimental Analysis)有基于文本和語言之分,。相比文本,語言更為復(fù)雜,涉及語音識(shí)別,,甚至人臉識(shí)別等,。本文今天主要探討基于文本的情感分析。
(圖片來源于網(wǎng)絡(luò),,如有侵權(quán)請(qǐng)聯(lián)系刪除)
文本情感分析是對(duì)文本中的某段已知文字的兩極性進(jìn)行分類,,判斷出此文字中表述的觀點(diǎn)是積極的、消極的,、還是中性的情緒,。
對(duì)于我們?nèi)藖碚f,看懂一段文字是消極的還是積極的,,很容易,。但是要教會(huì)機(jī)器看懂并且對(duì)文字進(jìn)行情感分類,還有很多工作要做,。
下面簡(jiǎn)單介紹下NLP情感分析的工作流程:
1,分詞
首先,,認(rèn)字,!把文本拆分成單個(gè)的詞。在英文的文本中,,簡(jiǎn)單的拆分方法是,,每一個(gè)空格之后是一個(gè)新的單詞,逗號(hào),、句號(hào),、感嘆號(hào)、問號(hào)這一類的標(biāo)點(diǎn)符號(hào)隔開的也是新的單詞,。對(duì)所有的文字這樣做之后,,就可以得到文本中用到的所有單詞。
2,,特征向量
然后,,我們要把句子轉(zhuǎn)變?yōu)樘卣飨蛄俊3R姷奶卣飨蛄坑袃深?。其一為one-hot編碼,,計(jì)算單句中不同詞的詞頻,建立與詞典長(zhǎng)度等大小的向量,,當(dāng)然,,所有的向量都需要?dú)w一化;其二為word-to-vector,,通過全量語料的訓(xùn)練得到的副產(chǎn)品,,每個(gè)詞都能表征成等長(zhǎng)數(shù)值向量。
3,,模型訓(xùn)練
接下來,,就是訓(xùn)練模型的時(shí)候了,。你需要為機(jī)器建立自己的學(xué)習(xí)模型,以此來判斷句子的情感,。我們將具備正確label的特征向量作為樣本數(shù)據(jù),,喂入特定的分類器,比如常見的SVM(Support Vector Machine),、深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network)等,。在每一個(gè)批次的迭代過程中,依據(jù)梯度下降的算法對(duì)需要優(yōu)化的目標(biāo)函數(shù)做一定程度的逼近,。
當(dāng)目標(biāo)函數(shù)殘差收斂時(shí),,分類器即完成了用“曲面”在超平面中劃分開兩類樣本點(diǎn)的工作,而樣本點(diǎn)對(duì)“曲面”的距離即表示其情感積極或消極的程度,。需要注意的是,,并不是訓(xùn)練時(shí)間越久、迭代輪次越多效果就一定會(huì)更優(yōu),,很多時(shí)候我們需要引入終止條件,、甚至在目標(biāo)函數(shù)中加入懲罰項(xiàng)來防止過擬合現(xiàn)象。
?
?
4,,測(cè)試
最后,,訓(xùn)練好的模型就可以用來判斷文本的情緒了。用同樣的方式生成待測(cè)試文本的向量,,如果向量在模型空間中處于“曲面”的一邊就是積極的,,反之就是消極的。
情感分析應(yīng)用
現(xiàn)實(shí)生活工作中,,關(guān)于情感分析的應(yīng)用有很多,。下面列舉幾個(gè)常見的場(chǎng)景:
電商平臺(tái)的關(guān)聯(lián)推薦;
社交網(wǎng)站的電影評(píng)分,;
頭條的新聞話題推送,;
金融機(jī)構(gòu)的智能風(fēng)控。
所以,,如果你是金融從業(yè)者,,你需要情感分析來幫你做企業(yè)征信;你是電商運(yùn)營(yíng)者,,你需要情感分析來幫您做關(guān)聯(lián)銷售,;你是內(nèi)容運(yùn)營(yíng)者,你需要情感分析來幫您了解人們喜歡和不喜歡的內(nèi)容,;你是政府決策者,,你需要情感分析幫你掌握輿情走向,做正確的輿論引導(dǎo);你是投資分析者,,你更需要情感分析來幫你構(gòu)建有助于預(yù)測(cè)市場(chǎng)反應(yīng)的模型,。
寫在最后
隨著人工智能技術(shù)越來越多的應(yīng)用到我們的工作和日常生活中,如何用我們熟悉的語言與計(jì)算機(jī)交互變的越來越重要,,而自然語言處理正使得這些變成現(xiàn)實(shí),。
那么,回到話題的最初——“他真的很努力是不是一句好話”,。
計(jì)算機(jī)是如何回答的,?
這個(gè),留待下回分解,。