国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于貝葉斯算法的心理測試情感分析

2023-04-29 18:23:59宋海燕
信息系統(tǒng)工程 2023年6期
關(guān)鍵詞:Python語言機器學習

宋海燕

摘要:隨著社會的快速發(fā)展,大學生的各種心理問題日益突出。從研究大學生心理情感的角度出發(fā),介紹了文本情感分析模型相關(guān)理論和實現(xiàn)過程,詳細論述了應(yīng)用Python語言進行心理情感數(shù)據(jù)標注、預處理、構(gòu)建貝葉斯模型、測試模型、評估模型性能的過程,通過測試,模型預測正確率達到0.862。針對存在的問題,提出了下一步改進模型性能的實施方案,為廣泛篩查大學生的心理問題提供參考。

關(guān)鍵詞:文本情感分析;機器學習;貝葉斯算法;python語言;F1 Score

一、前言

隨著人工智能技術(shù)的不斷發(fā)展,心理測試在社會生活中的應(yīng)用越來越廣泛,對心理測試進行情感分析的需求也越來越迫切。但是由于心理測試本身的特殊性,如主觀性、被測者的不同和被測者自身情緒波動等因素,使得基于機器學習的心理測試情感分析技術(shù)成為一種有效的方法[1]。在國家相關(guān)政策的指導下,各高校十分重視學生心理健康工作,但是在開展工作時存在“兩難”問題?!耙浑y”是難發(fā)現(xiàn):有的學生心理問題較輕或者缺乏心理健康知識,自己沒有意識到心理有問題;有的學生知道自己心理有問題,但是對周圍人產(chǎn)生警惕,不愿意表達。對于這兩類學生,教師很難發(fā)現(xiàn)他們的心理問題,也就不能在早期進行干預?!岸y”是難治療:高校心理教師少,學生多,師資力量薄弱。對于心理問題較嚴重的學生,教師很難多次長期開展心理療愈[2]。針對上述問題,應(yīng)用機器學習技術(shù),本文提出基于貝葉斯算法的心理測試情感分析模型,便于開展學生早期心理問題篩查,幫助學校做好學生心理問題防御工作。

二、文本情感分析

文本情感分析,又稱傾向性分析或意見挖掘,是對帶有感情色彩的主觀性文本進行分析、處理、歸納和推理的過程。常見的情感分析方法有兩種:基于情感詞典的分析方法和基于機器學習的分析方法[3]。基于情感詞典的分析方法,是通過制訂一系列的情感詞典和規(guī)則,拆解文本、分析句法、計算情感值,使用情感值判斷文本的情感傾向。此方法簡單,應(yīng)用廣泛,但是遇到新詞或者特殊詞就無法識別,擴展性不好[4]?;跈C器學習的分析方法,通常會把問題轉(zhuǎn)換成分類問題看待,將目標情感分為“正、負”兩類,或者根據(jù)情感程度的不同劃分為1-5類,然后人工標注訓練文本,進行有監(jiān)督的機器學習。例如,樸素貝葉斯就是經(jīng)典的機器學習算法之一,也是極少的基于概率論的分類算法。它的思想基礎(chǔ)是:對于給出的待分類項,求解在此項出現(xiàn)的條件下各個類別出現(xiàn)的概率,哪個最大,就認為此待分類項屬于哪個類別[5]。

本文采用基于機器學習的情感分析方法,開展大學生心理測試。開展測試時,教師給學生提供一個寬松的生活場景、顏色或圖片,讓學生寫一段文字,在文字中會包含情感傾向的詞語,如正向詞語“高興、開心”,反向詞語“難過、痛苦”,中性詞語“吃飯、睡覺”等等。教師收集到這些文字后,經(jīng)過數(shù)據(jù)標注等預處理操作,再輸入到模型中,開展心理問題篩查,初步診斷學生的心理健康狀況。

三、數(shù)據(jù)預處理

收集到原始文本后,需要進行一系列數(shù)據(jù)預處理工作,主要包括數(shù)據(jù)去重、分詞、詞形歸一化、刪除停用詞。經(jīng)過這幾個階段,原始文本轉(zhuǎn)換成詞語列表,之后輸入到模型中進行訓練[6]。

(一)分詞

分詞是指將連續(xù)字符組成的語句,按照一定的規(guī)則劃分成獨立詞語的過程。不同語言具有不同的語法結(jié)構(gòu),分詞方法也存在差異[7]。比如,英文句子中單詞和單詞之間以空格分隔,在分詞時可以使用空格作為分詞的標記,而中文句子中詞和詞之間沒有形式上的分界符,只能靠語義來理解。因此,中文分詞要比英文分詞困難很多。

根據(jù)中文的結(jié)構(gòu)特點,分詞算法分為三類:基于規(guī)則的分詞方法、基于統(tǒng)計的分詞方法、基于理解的分詞方法。

目前,文本分詞已經(jīng)有很多成熟的算法和工具,本文使用的是Jieba庫和NLTK庫。Jieba庫用于中文分詞,NLTK庫用于外文分詞。Jieba支持三種分詞模式:精確模式、全模式和搜索引擎模式。本文采用精確模式分詞,根據(jù)日常的中文語義分詞。

(二)詞形歸一化

詞形歸一化針對英文而言。在英文中,一個單詞經(jīng)常會有多種變換形式,比如cooking是cook的現(xiàn)在分詞,cooked是cook的過去式,這些會影響語料庫學習的準確度。因此,在進行機器學習前,需要把單詞的不同形態(tài)轉(zhuǎn)換成原型,稱為詞形歸一化[8]。

詞形歸一化主要有兩種方法:詞干提取和詞形還原。詞干提取是指刪除不影響詞形的詞綴,得到單詞詞干的過程,只能提取規(guī)范的詞形變換,例如將cooking變?yōu)閏ook。詞形還原不僅可以提取規(guī)范的詞形變換,還能夠捕捉不規(guī)范的詞形變換,例如將better變?yōu)間ood。

NLTK中的stem模塊提供了多種詞干提取器,如波特詞干提取器、蘭卡斯特詞干提取器。同時stem模塊也提供了詞形還原類WordNetLemmatizer,在使用此類前,要確保已安裝WordNet語料庫。

(三)刪除停用詞

停用詞是指在自然語言中沒有實際意義的字或詞,如英文單詞“a”“the”,中文單詞“啊”“吧”等。停用詞的存在增加了文本的特征難度,降低了文本分析的效率,停用詞過多時還有可能導致數(shù)據(jù)分析結(jié)果的較大偏差,因此,通常在數(shù)據(jù)預處理過程中將它們刪除[9]。

停用詞是人工輸入的一個文本文檔,稱為停用詞表。中文停用詞表主要有中文停用詞庫、哈工大停用詞表、百度停用詞表。NLTK中自帶外文停用詞表,使用前要先安裝stopwords語料庫。

四、樸素貝葉斯算法

樸素貝葉斯算法(Naive Bayesian algorithm)是使用概率統(tǒng)計的方法對樣本數(shù)據(jù)集進行分類,是應(yīng)用最廣泛的分類算法之一。它假設(shè)特征條件之間相互獨立,先通過給定的訓練集,學習從輸入到輸出的聯(lián)合概率分布,再基于學習到的模型,對給定的輸入X求出后驗概率最大輸出Y。貝葉斯算法結(jié)合了先驗概率和后驗概率,避免了只使用先驗概率的主觀偏見,也避免了單獨使用樣本信息的過擬合現(xiàn)象。貝葉斯公式如下[10]:

五、基于貝葉斯算法的心理測試模型設(shè)計與實現(xiàn)

(一)數(shù)據(jù)來源

本文采集陽光心理論壇1294份情感文本進行實例分析建模,通過人工標注將文本分成“積極”和“消極”兩類情感數(shù)據(jù)。情感文本表達的畫面充滿活力,如陽光明媚、美麗等,被認為是“積極”情感;畫面中性,如客觀描述一個事物,也被認為是“積極”情感;畫面昏暗無光,如毛骨悚然、黑洞等,被認為是“消極”情感。進行數(shù)據(jù)標注時,“積極”情感用1表示,“消極”情感用-1表示。文本部分內(nèi)容和標簽如圖1所示。

(二)數(shù)據(jù)預處理

1.刪除重復值

在采集的情感文本中使用data = data.drop_duplicates()刪除重復的數(shù)據(jù),提高分析的準確性。執(zhí)行完此語句后,文本數(shù)據(jù)量仍然是1294條,說明采集到的文本中沒有重復值。

2.分詞

導入中文分詞工具Jieba庫,調(diào)用jieba.lcut()方法,使用精確模式劃分情感文本,部分分詞結(jié)果如圖2所示。

從圖2中可以看出,“世外桃源”“紅彤彤”“太陽”這些詞能夠表達情感和心情,將這些詞保存下來進行下一步的機器學習;而“這”“是”“個”這些詞沒有實際的含義,對分析結(jié)果沒有價值,屬于停用詞,需要刪除。

3.刪除停用詞

本文從百度下載停用詞表,此表是文本文件,可以根據(jù)需要自行添加停用詞。先加載停用詞表,再從分詞表cut_word中,依次選取每個詞,判斷是否在停用詞表中,如果不在,則放入一個新列表中,最終得到的新列表就是后續(xù)機器學習用到的數(shù)據(jù)表。新數(shù)據(jù)表如圖3所示。

(三)心理測試模型

1.構(gòu)建數(shù)據(jù)集

情感文本data中的每段描述text都需要進行上述的文本預處理,轉(zhuǎn)換成新數(shù)據(jù)表,新數(shù)據(jù)表和對應(yīng)的label標簽合并成一個列表,合成包含1294個列表的數(shù)據(jù)集,如圖4所示。

2.劃分數(shù)據(jù)集

將上述構(gòu)建好的數(shù)據(jù)集劃分成兩類:訓練集和測試集。本文選取前1100條數(shù)據(jù)作為訓練集,剩下的194條數(shù)據(jù)作為測試集。訓練集用來訓練模型;測試集使用訓練好的模型進行預測分析,并為每條數(shù)據(jù)貼上標簽“1”或“-1”,以判斷是積極情感還是消極情感。將人工標注的標簽與分析預測結(jié)果標簽做比對,以此評價模型的準確度。

3.建立貝葉斯模型

導入貝葉斯分類器,建立貝葉斯模型,使用上述訓練集訓練模型。

from nltk.classify import NaiveBayesClassifier

demo_model = NaiveBayesClassifier.train(train_data[0:1099])

(四)模型測試

使用訓練好的貝葉斯模型,用194條測試數(shù)據(jù)集測試模型,測試結(jié)果如圖5所示。

從測試結(jié)果可以看出,文本1的描述是積極的,測試結(jié)果是1,也是積極的;文本2的描述是消極的,測試結(jié)果是-1,也是消極的;文本3是消極的,但是測試結(jié)果是1,是積極的。對于文本1和文本2,在訓練文本中出現(xiàn)過其中的關(guān)鍵詞,所以機器學到了,就能給出正確的判斷;對于文本3,在訓練文本中沒出現(xiàn)過的關(guān)鍵詞,機器沒有學會,給出了錯誤的判斷。因此,對于模型的訓練需要大量數(shù)據(jù),數(shù)據(jù)量越大,模型越準確,性能越高。

(五)性能評價

模型訓練好后,使用正確率、精度、召回率、F1 Score幾個指標衡量模型的性能,如表6所示。

從圖6可以看出,模型的正確率為0.862,預測結(jié)果良好。

六、結(jié)語

本文使用Python語言構(gòu)建心理測試貝葉斯模型,取得了良好的預測效果,但是也存在一些不足。下一步,計劃從以下三個方面入手,提高模型的性能。一是增加測試樣本數(shù)據(jù)。機器學習是一種數(shù)據(jù)驅(qū)動型技術(shù),海量數(shù)據(jù)與機器學習算法結(jié)合才能帶來預測效果的提升。數(shù)據(jù)量不足時,機器學習容易出現(xiàn)過擬合,泛化效果差。二是保證測試樣本數(shù)據(jù)分布均衡。選取測試樣本時,正向樣本和負向樣本數(shù)量盡量保證均衡,防止出現(xiàn)某類樣本測試正確率高而另一類樣本低的情況。三是大規(guī)模開展學生測試。網(wǎng)絡(luò)獲取的數(shù)據(jù)人員結(jié)構(gòu)比較復雜,不一定完全符合大學生的心理狀態(tài),因此在大學生群體中開展測試,獲得測試樣本數(shù)據(jù),測試結(jié)果更有針對性。

參考文獻

[1]Zhai S, Zhang ZM. Semisupervised autoencoder for sentiment analysis[C]//Thirtieth AAAI Conference on Artificial Intelligence. AAAI Press, 2016.

[2]黑馬程序員.python數(shù)據(jù)分析與應(yīng)用[M].北京:中國鐵道出版社有限公司,2021.

[3]胡夢雅,樊重俊,朱玥.基于機器學習的微博評論情感分析[J].信息與電腦,2020,32(12):71-73.

[4]宋冠諭,程登,張森,等.基于情感詞典的文本情感分數(shù)計算模型[J].信息與電腦(理論版),2021,33(22):56-58.

[5]胡晶.基于樸素貝葉斯的新聞分類問題算法改進問題的研究[J].電腦與信息技術(shù),2023,31(2):5-8.

[6]劉鑫,王皓晨,黃宇煦.基于樸素貝葉斯分類的電信詐騙信息的識別[J].計算機時代,2023,370(4):29-32+38.

[7]鄧慈云,余國清.基于樸素貝葉斯的影評情感分析研究[J].智能計算機與應(yīng)用,2023,13(2):210-212+217.

[8]魏超.機器學習算法在大學生綜合素質(zhì)測評預警中的對比研究[J].電腦編程技巧與維護,2022,450(12):127-129.

[9]陳可嘉,夏瑞東,林鴻熙,等.基于在線評論的顧客滿意感地區(qū)差異分析[J].福州大學學報(哲學社會科學版),2022,36(6):69-75.

[10]王恒,唐孝國,郭俊亮.基于電商評價的文本情感分析研究與應(yīng)用[J].黑龍江科學,2022,13(12):29-31.

基金項目:2019年度內(nèi)蒙古自治區(qū)高等學校產(chǎn)學研科技創(chuàng)新平臺項目“新工科ICT信息服務(wù)技術(shù)中心”(課題編號:NJCXY-19-03)

猜你喜歡
Python語言機器學習
Python語言程序設(shè)計教學體系建設(shè)
計算機教育(2017年8期)2017-09-01 14:51:42
面向計算生態(tài)的Python語言入門課程教學方案
計算機教育(2017年8期)2017-09-01 13:44:40
基于Python語言和支持向量機的字符驗證碼識別
論Python程序設(shè)計語言
基于Python語言的面向?qū)ο笳n程實踐教學探討
基于詞典與機器學習的中文微博情感分析
基于機器學習的圖像特征提取技術(shù)在圖像版權(quán)保護中的應(yīng)用
基于網(wǎng)絡(luò)搜索數(shù)據(jù)的平遙旅游客流量預測分析
時代金融(2016年27期)2016-11-25 17:51:36
前綴字母為特征在維吾爾語文本情感分類中的研究
科教導刊(2016年26期)2016-11-15 20:19:33
基于Android的Python語言英漢維電子詞典設(shè)計與實現(xiàn)
天津市| 遂平县| 大化| 合作市| 汉中市| 永兴县| 门头沟区| 林州市| 浪卡子县| 祁阳县| 遵化市| 休宁县| 东方市| 洛隆县| 保德县| 武义县| 泗阳县| 准格尔旗| 阿巴嘎旗| 高邑县| 馆陶县| 北京市| 读书| 班戈县| 岑溪市| 涟水县| 玛纳斯县| 西平县| 静乐县| 佛山市| 额尔古纳市| 如皋市| 毕节市| 吴桥县| 襄城县| 岚皋县| 孝义市| 固安县| 桃园县| 页游| 区。|