溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python短文本如何自動識別個體是否有自殺傾向

發(fā)布時間:2021-10-19 09:49:30 來源:億速云 閱讀:152 作者:柒染 欄目:大數(shù)據(jù)

Python短文本如何自動識別個體是否有自殺傾向,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

為了簡化問題,我們將短文本分為兩種類別中的一種,即要么是正常微博、要么是自殺傾向微博。這樣,有了上次的微博樹洞,訓(xùn)練集和測試集就非常好獲得了。由于是短文本二分類問題,可以使用scikit-learn的SVM分類模型。

不過要注意的是,我們的分類器并不能保證分類出來的結(jié)果百分百正確,畢竟心理狀態(tài)是很難通過文本準(zhǔn)確識別出來的,我們只能通過文字,大致判斷其抑郁情況并加以介入。實際上這是一個寧可錯殺一百,不可放過一個的問題。畢竟放過一個,可能就有一條生命悄然流逝。

1.數(shù)據(jù)準(zhǔn)備

數(shù)據(jù)集整體上分兩個部分,一部分是訓(xùn)練集、一部分是測試集。其中,訓(xùn)練集和測試集中還要分為正常微博短文本和自殺傾向短文本。

將上一篇爬取微博樹洞的文章中得到的數(shù)據(jù)進行人工篩選后,挑出300條作為訓(xùn)練集(有點少,其實業(yè)界至少也要3000條以上),再根據(jù)上次的微博爬蟲隨意爬取10000條微博作為訓(xùn)練集的正常微博類。另外再分別搜集自殺傾向微博和普通微博各50條作為測試集。

每條微博按行存儲在txt文件里。訓(xùn)練集中,正常微博命名為normal.txt, 自殺傾向微博命名為die.txt。測試集存放在后綴為_test.txt的文件中:

Python短文本如何自動識別個體是否有自殺傾向

此外,接下來我們會使用到一個機器學(xué)習(xí)工具包叫scikit-learn(sklearn),其打包了許多機器學(xué)習(xí)模型和預(yù)處理的方法,方便我們構(gòu)建分類器,在CMD/Terminal輸入以下命令安裝:

   
   
   pip install -U scikit-learn

如果你還沒有安裝Python,請看這篇文章安裝Python,然后再執(zhí)行上述命令安裝sklearn.

2.數(shù)據(jù)預(yù)處理

我們使用一個典型的中文自然語言預(yù)處理方法:對文本使用結(jié)巴分詞后將其數(shù)字化。

由于具有自殺傾向的微博中,其實類似于"死"、"不想活"、"我走了"等這樣的詞語比較常見,因此我們可以用TF-IDF將字符串?dāng)?shù)字化。如果你不了解TF-IDF,請看這篇文章:《文本處理之 tf-idf 算法及其實踐》:
https://suool.net/2019/01/26/tf-tdf-exercise/

數(shù)字化的部分代碼如下。

Python短文本如何自動識別個體是否有自殺傾向

3.訓(xùn)練

使用scikit-learn的SVM分類模型,我們能很快滴訓(xùn)練并構(gòu)建出一個分類器:

Python短文本如何自動識別個體是否有自殺傾向

這里我們忽略了SVM原理的講解,SVM的原理可以參考這篇文章,《支持向量機(SVM)——原理篇》:
https://zhuanlan.zhihu.com/p/31886934

4.測試

測試的時候,我們要分別計算模型對兩個類別的分類精確率和召回率。scikit-learn提供了一個非常好用的函數(shù)classification_report來計算它們:

Python短文本如何自動識別個體是否有自殺傾向

結(jié)果:

Python短文本如何自動識別個體是否有自殺傾向

對自殺傾向微博的分類精確率為100%,但是查全率不夠,它只找到了50條里的60%,也就是30條自殺傾向微博。

對于正常微博的分類,其精確率為71%,也就是說有部分正常微博被分類為自殺傾向微博,不過其查全率為100%,也就是不存在不被分類的正常微博。

這是建立在訓(xùn)練集還不夠多的情況下的結(jié)果。我們的自殺傾向微博的數(shù)據(jù)僅僅才300條,這是遠遠不夠的,如果能增加到3000條,相信結(jié)果會改進不少,尤其是對于自殺傾向微博的查全率有很大的幫助。預(yù)估最終該模型的精確率和召回率至少能達到95%。

看完上述內(nèi)容,你們掌握Python短文本如何自動識別個體是否有自殺傾向的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI