中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

互聯(lián)網(wǎng)時代的社會語言學(xué):基于SNS的文本數(shù)據(jù)挖掘

2019-03-22    來源:matrix67.com

容器云強(qiáng)勢上線!快速搭建集群,上萬Linux鏡像隨意使用

作為中文系應(yīng)用語言學(xué)專業(yè)的學(xué)生以及一名數(shù)學(xué) Geek ,我非常熱衷于用計算的方法去分析漢語資料。漢語是一種獨特而神奇的語言。對漢語資料進(jìn)行自然語言處理時,我們會遇到很多其他語言不會有的困難,比如分詞——漢語的詞與詞之間沒有空格,那計算機(jī)怎么才知道,“已結(jié)婚的和尚未結(jié)婚的青年都要實行計劃生育”究竟說的是“已/結(jié)婚/的/和/尚未/結(jié)婚/的/青年”,還是“已/結(jié)婚/的/和尚/未/結(jié)婚/的/青年”呢?這就是所謂的分詞歧義難題。不過,現(xiàn)在很多語言模型已經(jīng)能比較漂亮地解決這一問題了。但在中文分詞領(lǐng)域里,還有一個比分詞歧義更令人頭疼的東西——未登錄詞。中文沒有首字母大寫,專名號也被取消了,這叫計算機(jī)如何辨認(rèn)人名地名之類的東西?更慘的則是機(jī)構(gòu)名、品牌名、專業(yè)名詞、縮略語、網(wǎng)絡(luò)新詞等等,它們的產(chǎn)生機(jī)制似乎完全無規(guī)律可尋。最近十年來,中文分詞領(lǐng)域都在集中攻克這一難關(guān)。自動發(fā)現(xiàn)新詞成為了關(guān)鍵的環(huán)節(jié)。

挖掘新詞的傳統(tǒng)方法是,先對文本進(jìn)行分詞,然后猜測未能成功匹配的剩余片段就是新詞。這似乎陷入了一個怪圈:分詞的準(zhǔn)確性本身就依賴于詞庫的完整性,如果詞庫中根本沒有新詞,我們又怎么能信任分詞結(jié)果呢?此時,一種大膽的想法是,首先不依賴于任何已有的詞庫,僅僅根據(jù)詞的共同特征,將一段大規(guī)模語料中可能成詞的文本片段全部提取出來,不管它是新詞還是舊詞。然后,再把所有抽出來的詞和已有詞庫進(jìn)行比較,不就能找出新詞了嗎?有了抽詞算法后,我們還能以詞為單位做更多有趣的數(shù)據(jù)挖掘工作。這里,我所選用的語料是人人網(wǎng) 2011 年 12 月前半個月部分用戶的狀態(tài)。非常感謝人人網(wǎng)提供這份極具價值的網(wǎng)絡(luò)語料。

要想從一段文本中抽出詞來,我們的第一個問題就是,怎樣的文本片段才算一個詞?大家想到的第一個標(biāo)準(zhǔn)或許是,看這個文本片段出現(xiàn)的次數(shù)是否足夠多。我們可以把所有出現(xiàn)頻數(shù)超過某個閾值的片段提取出來,作為該語料中的詞匯輸出。不過,光是出現(xiàn)頻數(shù)高還不夠,一個經(jīng)常出現(xiàn)的文本片段有可能不是一個詞,而是多個詞構(gòu)成的詞組。在人人網(wǎng)用戶狀態(tài)中,“的電影”出現(xiàn)了389 次,“電影院”只出現(xiàn)了175 次,然而我們卻更傾向于把“電影院”當(dāng)作一個詞,因為直覺上看,“電影”和“院”凝固得更緊一些。

為了證明“電影院”一詞的內(nèi)部凝固程度確實很高,我們可以計算一下,如果“電影”和“院”真的是各自獨立地在文本中隨機(jī)出現(xiàn),它倆正好拼到一起的概率會有多小。在整個 2400 萬字的數(shù)據(jù)中,“電影”一共出現(xiàn)了 2774 次,出現(xiàn)的概率約為 0.000113 。“院”字則出現(xiàn)了 4797 次,出現(xiàn)的概率約為 0.0001969 。如果兩者之間真的毫無關(guān)系,它們恰好拼在了一起的概率就應(yīng)該是 0.000113 × 0.0001969 ,約為 2.223 × 10-8 次方。但事實上,“電影院”在語料中一共出現(xiàn)了 175 次,出現(xiàn)概率約為 7.183 × 10-6 次方,是預(yù)測值的 300 多倍。類似地,統(tǒng)計可得“的”字的出現(xiàn)概率約為 0.0166 ,因而“的”和“電影”隨機(jī)組合到了一起的理論概率值為 0.0166 × 0.000113 ,約為 1.875 × 10-6 ,這與“的電影”出現(xiàn)的真實概率很接近——真實概率約為 1.6 × 10-5 次方,是預(yù)測值的 8.5 倍。計算結(jié)果表明,“電影院”更可能是一個有意義的搭配,而“的電影”則更像是“的”和“電影”這兩個成分偶然拼到一起的。

當(dāng)然,作為一個無知識庫的抽詞程序,我們并不知道“電影院”是“電影”加“院”得來的,也并不知道“的電影”是“的”加上“電影”得來的。錯誤的切分方法會過高地估計該片段的凝合程度。如果我們把“電影院”看作是“電”加“影院”所得,由此得到的凝合程度會更高一些。因此,為了算出一個文本片段的凝合程度,我們需要枚舉它的凝合方式——這個文本片段是由哪兩部分組合而來的。令 p(x) 為文本片段 x 在整個語料中出現(xiàn)的概率,那么我們定義“電影院”的凝合程度就是 p(電影院) 與 p(電) · p(影院) 比值和 p(電影院) 與 p(電影) · p(院) 的比值中的較小值,“的電影”的凝合程度則是 p(的電影) 分別除以 p(的) · p(電影) 和 p(的電) · p(影) 所得的商的較小值。

可以想到,凝合程度最高的文本片段就是諸如“蝙蝠”、“蜘蛛”、“彷徨”、“忐忑”、“玫瑰”之類的詞了,這些詞里的每一個字幾乎總是會和另一個字同時出現(xiàn),從不在其他場合中使用。

光看文本片段內(nèi)部的凝合程度還不夠,我們還需要從整體來看它在外部的表現(xiàn)。考慮“被子”和“輩子”這兩個片段。我們可以說“買被子”、“蓋被子”、“進(jìn)被子”、“好被子”、“這被子”等等,在“被子”前面加各種字;但“輩子”的用法卻非常固定,除了“一輩子”、“這輩子”、“上輩子”、“下輩子”,基本上“輩子”前面不能加別的字了。“輩子”這個文本片段左邊可以出現(xiàn)的字太有限,以至于直覺上我們可能會認(rèn)為,“輩子”并不單獨成詞,真正成詞的其實是“一輩子”、“這輩子”之類的整體?梢,文本片段的自由運用程度也是判斷它是否成詞的重要標(biāo)準(zhǔn)。如果一個文本片段能夠算作一個詞的話,它應(yīng)該能夠靈活地出現(xiàn)在各種不同的環(huán)境中,具有非常豐富的左鄰字集合和右鄰字集合。

“信息熵”是一個非常神奇的概念,它能夠反映知道一個事件的結(jié)果后平均會給你帶來多大的信息量。如果某個結(jié)果的發(fā)生概率為 p ,當(dāng)你知道它確實發(fā)生了,你得到的信息量就被定義為 - log(p) 。 p 越小,你得到的信息量就越大。如果一顆骰子的六個面分別是 1 、 1 、 1 、 2 、 2 、 3 ,那么你知道了投擲的結(jié)果是 1 時可能并不會那么吃驚,它給你帶來的信息量是 - log(1/2) ,約為 0.693 。知道投擲結(jié)果是 2 ,給你帶來的信息量則是 - log(1/3) ≈ 1.0986 。知道投擲結(jié)果是 3 ,給你帶來的信息量則有 - log(1/6) ≈ 1.79 。但是,你只有 1/2 的機(jī)會得到 0.693 的信息量,只有 1/3 的機(jī)會得到 1.0986 的信息量,只有 1/6 的機(jī)會得到 1.79 的信息量,因而平均情況下你會得到 0.693/2 + 1.0986/3 + 1.79/6 ≈ 1.0114 的信息量。這個 1.0114 就是那顆骰子的信息熵,F(xiàn)在,假如某顆骰子有 100 個面,其中 99 個面都是 1 ,只有一個面上寫的 2 。知道骰子的拋擲結(jié)果是 2 會給你帶來一個巨大無比的信息量,它等于 - log(1/100) ,約為 4.605 ;但你只有百分之一的概率獲取到這么大的信息量,其他情況下你只能得到 - log(99/100) ≈ 0.01005 的信息量。平均情況下,你只能獲得 0.056 的信息量,這就是這顆骰子的信息熵。再考慮一個最極端的情況:如果一顆骰子的六個面都是 1 ,投擲它不會給你帶來任何信息,它的信息熵為 - log(1) = 0 。什么時候信息熵會更大呢?換句話說,發(fā)生了怎樣的事件之后,你最想問一下它的結(jié)果如何?直覺上看,當(dāng)然就是那些結(jié)果最不確定的事件。沒錯,信息熵直觀地反映了一個事件的結(jié)果有多么的隨機(jī)。

我們用信息熵來衡量一個文本片段的左鄰字集合和右鄰字集合有多隨機(jī)?紤]這么一句話“吃葡萄不吐葡萄皮不吃葡萄倒吐葡萄皮”,“葡萄”一詞出現(xiàn)了四次,其中左鄰字分別為 {吃, 吐, 吃, 吐} ,右鄰字分別為 {不, 皮, 倒, 皮} 。根據(jù)公式,“葡萄”一詞的左鄰字的信息熵為 - (1/2) · log(1/2) - (1/2) · log(1/2) ≈ 0.693 ,它的右鄰字的信息熵則為 - (1/2) · log(1/2) - (1/4) · log(1/4) - (1/4) · log(1/4) ≈ 1.04 ?梢姡谶@個句子中,“葡萄”一詞的右鄰字更加豐富一些。

在人人網(wǎng)用戶狀態(tài)中,“被子”一詞一共出現(xiàn)了 956 次,“輩子”一詞一共出現(xiàn)了 2330 次,兩者的右鄰字集合的信息熵分別為 3.87404 和 4.11644 ,數(shù)值上非常接近。但“被子”的左鄰字用例非常豐富:用得最多的是“曬被子”,它一共出現(xiàn)了 162 次;其次是“的被子”,出現(xiàn)了 85 次;接下來分別是“條被子”、“在被子”、“床被子”,分別出現(xiàn)了 69 次、 64 次和 52 次;當(dāng)然,還有“疊被子”、“蓋被子”、“加被子”、“新被子”、“掀被子”、“收被子”、“薄被子”、“踢被子”、“搶被子”等 100 多種不同的用法構(gòu)成的長尾??所有左鄰字的信息熵為 3.67453 。但“輩子”的左鄰字就很可憐了, 2330 個“輩子”中有 1276 個是“一輩子”,有 596 個“這輩子”,有 235 個“下輩子”,有 149 個“上輩子”,有 32 個“半輩子”,有 10 個“八輩子”,有 7 個“幾輩子”,有 6 個“哪輩子”,以及“n 輩子”、“兩輩子”等 13 種更罕見的用法。所有左鄰字的信息熵僅為 1.25963 。因而,“輩子”能否成詞,明顯就有爭議了。“下子”則是更典型的例子, 310 個“下子”的用例中有 294 個出自“一下子”, 5 個出自“兩下子”, 5 個出自“這下子”,其余的都是只出現(xiàn)過一次的罕見用法。事實上,“下子”的左鄰字信息熵僅為 0.294421 ,我們不應(yīng)該把它看作一個能靈活運用的詞。當(dāng)然,一些文本片段的左鄰字沒啥問題,右鄰字用例卻非常貧乏,例如“交響”、“后遺”、“鵝卵”等,把它們看作單獨的詞似乎也不太合適。我們不妨就把一個文本片段的自由運用程度定義為它的左鄰字信息熵和右鄰字信息熵中的較小值。

在實際運用中你會發(fā)現(xiàn),文本片段的凝固程度和自由程度,兩種判斷標(biāo)準(zhǔn)缺一不可。只看凝固程度的話,程序會找出“巧克”、“俄羅”、“顏六色”、“柴可夫”等實際上是“半個詞”的片段;只看自由程度的話,程序則會把“吃了一頓”、“看了一遍”、“睡了一晚”、“去了一趟”中的“了一”提取出來,因為它的左右鄰字都太豐富了。

我們把文本中出現(xiàn)過的所有長度不超過 d 的子串都當(dāng)作潛在的詞(即候選詞,其中 d 為自己設(shè)定的候選詞長度上限,我設(shè)定的值為 5 ),再為出現(xiàn)頻數(shù)、凝固程度和自由程度各設(shè)定一個閾值,然后只需要提取出所有滿足閾值要求的候選詞即可。為了提高效率,我們可以把語料全文視作一整個字符串,并對該字符串的所有后綴按字典序排序。下表就是對“四是四十是十十四是十四四十是四十”的所有后綴進(jìn)行排序后的結(jié)果。實際上我們只需要在內(nèi)存中存儲這些后綴的前 d + 1 個字,或者更好地,只儲存它們在語料中的起始位置。

十十四是十四四十是四十

十是十十四是十四四十是四十

十是四十

十四是十四四十是四十

十四四十是四十

是十十四是十四四十是四十

是十四四十是四十

是四十

是四十是十十四是十四四十是四十

四十

四十是十十四是十四四十是四十

四十是四十

四是十四四十是四十

四是四十是十十四是十四四十是四十

四四十是四十

這樣的話,相同的候選詞便都集中在了一起,從頭到尾掃描一遍便能算出各個候選詞的頻數(shù)和右鄰字信息熵。將整個語料逆序后重新排列所有的后綴,再掃描一遍后便能統(tǒng)計出每個候選詞的左鄰字信息熵。另外,有了頻數(shù)信息后,凝固程度也都很好計算了。這樣,我們便得到了一個無需任何知識庫的抽詞算法,輸入一段充分長的文本,這個算法能以大致 O(n · logn) 的效率提取出可能的詞來。

對不同的語料進(jìn)行抽詞,并且按這些詞的頻數(shù)從高到低排序。你會發(fā)現(xiàn),不同文本的用詞特征是非常明顯的。下面是對《西游記》上冊的抽詞結(jié)果:

行者、師父、三藏、八戒、大圣、菩薩、悟空、怎么、和尚、唐僧、老孫、潰骸、什么、沙僧、太宗、徒弟、袈裟、妖精、玉帝、今日、兄弟、公主、玄奘、陛下、寶貝、性命、曉得、門外、妖魔、光蕊、觀音、花果山、土地、木叉、東土、變化、變做、伯欽、判官、多少、真君、齊天大圣、蟠桃、丞相、魏征、扯住、潰骸澳、抬頭、揭諦、言語、豬八戒、兵器、吩咐、安排、叩頭、清風(fēng)、哪吒、左右、美猴王、釘鈀、孩兒、女婿、金箍棒、二郎、東西、許多、奈何、人參果、收拾、近前、太保、明月、南海、水簾洞、門首、弼馬溫、李天王??

《資本論》全文:

商品、形式、貨幣、我們、過程、自己、機(jī)器、社會、部分、表現(xiàn)、沒有、流通、需要、增加、已經(jīng)、交換、關(guān)系、先令、積累、必須、英國、條件、發(fā)展、麻布、兒童、進(jìn)行、提高、消費、減少、任何、手段、職能、土地、特殊、實際、完全、平均、直接、隨著、簡單、規(guī)律、市場、增長、上衣、決定、什么、制度、最后、支付、許多、雖然、棉紗、形態(tài)、棉花、法律、絕對、提供、擴(kuò)大、獨立、世紀(jì)、性質(zhì)、假定、每天、包含、物質(zhì)、家庭、規(guī)模、考察、剝削、經(jīng)濟(jì)學(xué)、甚至、延長、財富、紡紗、購買、開始、代替、便士、怎樣、降低、能夠、原料、等價物??

《圣經(jīng)》全文:

以色列、沒有、自己、一切、面前、大衛(wèi)、知道、什么、猶大、祭司、摩西、看見、百姓、吩咐、埃及、聽見、弟兄、告訴、基督、已經(jīng)、先知、掃羅、父親、雅各、永遠(yuǎn)、攻擊、智慧、榮耀、臨到、潔凈、離開、怎樣、平安、律法、支派、許多、門徒、打發(fā)、好像、仇敵、原文作、名叫、巴比倫、今日、首領(lǐng)、曠野、所羅門、約瑟、兩個、燔祭、法老、衣服、脫離、二十、公義、審判、十二、亞伯拉罕、石頭、聚集、按著、禱告、罪孽、約書亞、事奉、指著、城邑、進(jìn)入、彼此、建造、保羅、應(yīng)當(dāng)、摩押、圣靈、懼怕、應(yīng)許、如今、幫助、牲畜??

《時間簡史》全文:

黑洞、必須、非常、任何、膨脹、科學(xué)、預(yù)言、太陽、觀察、定律、運動、事件、奇點、坍縮、問題、模型、方向、區(qū)域、知道、開始、輻射、部分、牛頓、產(chǎn)生、夸克、無限、軌道、解釋、邊界、甚至、自己、類似、描述、最終、旋轉(zhuǎn)、愛因斯坦、繞著、什么、效應(yīng)、表明、溫度、研究、收縮、吸引、按照、完全、增加、開端、基本、計算、結(jié)構(gòu)、上帝、進(jìn)行、已經(jīng)、發(fā)展、幾乎、仍然、足夠、影響、初始、科學(xué)家、事件視界、第二、改變、歷史、世界、包含、準(zhǔn)確、證明、導(dǎo)致、需要、應(yīng)該、至少、剛好、提供、通過、似乎、繼續(xù)、實驗、復(fù)雜、伽利略??

哦,對了,還有我最喜歡的,《人民日報》 2000 年 4 月新聞版的抽詞結(jié)果:

發(fā)展、我們、經(jīng)濟(jì)、主席、江澤民、領(lǐng)導(dǎo)、建設(shè)、關(guān)系、教育、干部、企業(yè)、問題、主義、政治、群眾、改革、政府、思想、加強(qiáng)、臺灣、地區(qū)、北京、總統(tǒng)、世界、記者、代表、民族、組織、歷史、訪問、原則、努力、管理、今天、技術(shù)、市場、世紀(jì)、堅持、社會主義、財政、江澤民主席、增長、積極、精神、同志、雙方、自己、友好、領(lǐng)導(dǎo)干部、進(jìn)一步、基礎(chǔ)、提高、必須、不斷、制度、政策、解決、取得、表示、活動、支持、通過、研究、沒有、學(xué)習(xí)、穩(wěn)定、舉行、歡迎、農(nóng)村、生活、促進(jìn)、科技、投資、科學(xué)、環(huán)境、領(lǐng)域、公司、情況、充分??

標(biāo)簽: 社會語言學(xué) SNS 文本數(shù)據(jù)挖掘 

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:教你三步優(yōu)化wordpress博客

下一篇:做合格的網(wǎng)站SEO診斷 不要一味吹毛求疵