基于SVM 的中文惡意評(píng)論檢測(cè)-以微博數(shù)據(jù)集為例_第1頁(yè)
基于SVM 的中文惡意評(píng)論檢測(cè)-以微博數(shù)據(jù)集為例_第2頁(yè)
基于SVM 的中文惡意評(píng)論檢測(cè)-以微博數(shù)據(jù)集為例_第3頁(yè)
基于SVM 的中文惡意評(píng)論檢測(cè)-以微博數(shù)據(jù)集為例_第4頁(yè)
基于SVM 的中文惡意評(píng)論檢測(cè)-以微博數(shù)據(jù)集為例_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

摘要本文旨在提出一種新型方法以提升在線社交媒體平臺(tái)中文評(píng)論的安全性,算法、TF-IDF特征提取技術(shù)和遺傳算法來(lái)進(jìn)行中文惡意評(píng)論的分類。首先,我們從與微博評(píng)論相關(guān)的COLD數(shù)據(jù)集中收集了大量中文評(píng)論文本數(shù)據(jù)。為了使TF-IDF方法將其轉(zhuǎn)化為數(shù)COLDSVM模型的關(guān)鍵詞中文惡意評(píng)論檢測(cè);支持向量機(jī)(SVM)算法;TF-IDFSVM-basedDetectionofMaliciousCommentsinChinese-AnExamplefromWeiboDatasetAbstractTheaimofthisstudyistoproposeanovelapproachtoenhancethesecurityofChinesecommentsononlinesocialmediaplatforms,especiallyforthedetectionofmaliciouscomments.WetaketheWeibodatasetasacasestudyandcombinetheSupportVectorMachine(SVM)algorithm,theTF-IDFfeatureextractiontechnique,andthegeneticalgorithmtoclassifyChinesemaliciouscomments.First,wecollectalargeamountofChinesecommenttextdatafromtheCOLDdatasetrelatedtomicroblogcomments.Inordertoadaptthesetextdatatotheprocessingofmachinelearningalgorithms,weappliedtheTF-IDFmethodtotransformthemintonumericalfeatures.Then,weemploytheSupportVectorMachine(SVM)algorithmfortheclassificationofmaliciouscomments.BytrainingandvalidatingonthetaggedcommentdataintheCOLDdataset,weensuretheaccuracyandgeneralizationabilityofthemodel.Tofurtheroptimizethemodelperformance,weintroducedageneticalgorithmtooptimizethehyperparametersoftheSVMmodel.Thegeneticalgorithmisabletosearchfortheoptimalcombinationinthehyperparameterspace,whichhelpsusfindthebestmodelconfigurationandimprovethemodelperformanceandKeywordsChinesemaliciouscommentdetection;supportvectormachine;TF-IDF;geneticalgorithm緒 研究背景與意 國(guó)內(nèi)外研究現(xiàn) 研究目 本文研究?jī)?nèi) 總體方案設(shè) 系統(tǒng)概 需求分 相關(guān)技術(shù)介 中文文本預(yù)處理技 SVM支持向量 TF-IDF特征提取技 遺傳算 技術(shù)可行性分 數(shù)據(jù)集構(gòu)建與預(yù)處 數(shù)據(jù)采集策略與實(shí) 分詞處 停用詞過(guò) 特征提取與向量 SVM模型構(gòu)建與參數(shù)優(yōu) SVM在文本分類中的模型構(gòu)建流 特征選擇與特征權(quán)重分 SVM參數(shù)調(diào)優(yōu)策略與實(shí)驗(yàn)設(shè) 模型訓(xùn)練與交叉驗(yàn)證過(guò) 實(shí)驗(yàn)與結(jié)果分 實(shí)驗(yàn)環(huán)境與平臺(tái)介 惡意評(píng)論檢查效果評(píng)估指 結(jié)果分析與討 總結(jié)與展 研究工作總 存在的問(wèn)題與改進(jìn)方 未來(lái)研究展 國(guó)外研究綜述方面。Gitarietal(2015)[1]構(gòu)建了一個(gè)惡意詞匯詞典,在線社區(qū)的安全性。Wulczynetal(2017)[2]的研究著重于開(kāi)展惡意評(píng)論的識(shí)n能。Nobataetal(2016)[3]的研究專注于解決惡意評(píng)論檢測(cè)任務(wù),旨在應(yīng)對(duì)信息,從而提高了惡意評(píng)論檢測(cè)模型的性能。Georgakopouloset[4]社區(qū)中的惡意評(píng)論問(wèn)題。Agrawaletal(2018)[5]進(jìn)行了有關(guān)惡意評(píng)論檢測(cè)的(AttentionMechanism)LSTM(LongShort-termMemory)模型中。Xuet于構(gòu)建模型。Chenetal(2018)[7]的研究專注于中英文雙語(yǔ)詞嵌入層的訓(xùn)標(biāo)。Ahnetal(2008)[8]的研究著眼于英文到其他四種語(yǔ)言(阿拉伯語(yǔ)、丹麥值來(lái)衡量翻譯數(shù)據(jù)的可遷移性。Spertusetal(1997)[9]的研究設(shè)計(jì)了一個(gè)自涵蓋語(yǔ)法和語(yǔ)義文本特征等。STringhinietal(2010)[10]的研究關(guān)注了對(duì)惡息,并識(shí)別用戶的行為來(lái)檢測(cè)惡意評(píng)論。Rischetal(2018)[11]的研究關(guān)注了味著他們綜合考慮了多種評(píng)論屬性和特征。Djuricetal(2015)[12]的研究涉LDARNNRCNNBERTSSU-BG3量機(jī)(SVM)算法、TF-IDF對(duì)數(shù)據(jù)進(jìn)行處理。TF-IDF別惡意評(píng)論中的關(guān)鍵信息。第三,訓(xùn)練支持向量機(jī)(SVM)SVMCOLDSVMCOLD(ChineseOnlineMaliciousCommentsDataset)作為研究樣本的數(shù)據(jù)集。COLDTF-IDF(TermFrequency-InverseDocumentFrequency)技術(shù),用于從文本中提取有意義的特征向量。TF-IDFSVM使用準(zhǔn)確率、F1ROCROCTF-IDFSVMSVMSVMSVM支持向量??={(??1??1)(??1??1)(????????)}????∈{?11},在樣本空間中獲取最優(yōu)對(duì)超平面的尋找需要構(gòu)建公式(2-1),式中的w=(w1,w2,…,wd)視作法向??????+??= (2?如式(1-1)中所示,??與??二者才能決定一個(gè)超平面。因此,每一個(gè)超平??

|??????+

(2?樣本空間中點(diǎn)位????????)可以有(2-3)的關(guān)系式。??????+??≥1,????={??????+??≤?1,

(2?=間隔值最大,也即使得式中的‖??‖達(dá)到最小,此時(shí)‖??‖2達(dá)到最小。上述過(guò)TF-IDF特征提取技TF-IDF(TermFrequency-InverseDocumentFrequency)是一種常用于文IDFIDFTF-方法,用于衡量一個(gè)詞在文檔中的重要性。它的計(jì)算公式為:TF-IDF=TF*TF-IDFTF-IDF要性,可以用于關(guān)鍵詞提取,幫助理解文檔的主題和內(nèi)容。TF-IDF支持。第二,SVM(SVM)是一種在文本分類問(wèn)題上表SVM重大威脅。因此,本論文旨在介紹一種基于支持向量機(jī)(SupportVectorMachine,SVM)COLD(ChineseOnlineLyingDetection)為實(shí)例。本文進(jìn)一步采用遺傳算法來(lái)選擇最優(yōu)的超COLD37,480條帶有二元攻擊標(biāo)簽的評(píng)論,涵蓋種族、性別和1部分?jǐn)?shù)據(jù)展只要不來(lái)中國(guó)的外國(guó)人就是好外國(guó)人[機(jī)智1樣111000??00md滴滴司機(jī)好多沒(méi)素質(zhì)的,還在車?yán)锍闊煟f(shuō)臟話,罵1ycy妹妹了(0的10withwithopen(r"原始數(shù)據(jù)\train.txtr',encoding='utf-8asfile:forlineinfile:withopen(r"原始數(shù)據(jù)\test.txtr',encoding='utf-8asfile:forlineinfile:df['text']=df['text'].apply(lambdax:str(x).replace('0\t','').replace('1\t','').replace('\n','').replace('','').replace('','').replace('&',''))withopen(r"原始數(shù)據(jù)\hit_stopwords.txtr',encoding='utf-8asfile:forlineinfile:defjiaba_stop(x):temp=re.sub(u'[^\u4e00-\u9fa5A-Za-z]','',x)ms_cut=list(jieba.cut(temp,cut_all=False))forwordinif(word!='')&(wordnotinstop_list):outstr=outstr+''+wordreturn3處理后數(shù)據(jù)示3停用詞TF-IDFTF-IDFtf_vectorizer=TfidfVectorizer(max_featuresX=tf_vectorizer=TfidfVectorizer(max_featuresX=tf_vectorizer.fit_transform(df.text)3向量化SVMTF-IDF和遺傳算COLD數(shù)據(jù)集為例。這個(gè)設(shè)計(jì)將涵蓋從數(shù)據(jù)預(yù)處理到COLD數(shù)據(jù)集中獲取評(píng)論數(shù)除特殊字符、HTML標(biāo)簽、停用詞等。第二,特征工程。對(duì)文本進(jìn)行預(yù)處理。對(duì)評(píng)論文本進(jìn)行分詞,將文本轉(zhuǎn)化為詞匯列表。使用中文分詞工具(jieba)TF-IDF(TermFrequency-InverseDocumentFrequency)來(lái)將文本數(shù)據(jù)轉(zhuǎn)換為數(shù)值特征。計(jì)算每個(gè)評(píng)論中每個(gè)詞TF-IDF權(quán)重。第三,數(shù)據(jù)劃分。將數(shù)據(jù)集分為訓(xùn)練集和測(cè)試集,選擇典70%的訓(xùn)練集、30%的測(cè)試集。第四,模型選擇。選擇支持向量SVMSVM參C(正則化參數(shù))和核函數(shù)類型。使用訓(xùn)練集上的特征向量和標(biāo)簽進(jìn)行SVM參數(shù),以提高模型性能。優(yōu)化目標(biāo)可以是準(zhǔn)確率、召回率、F1分?jǐn)?shù)等。第七,模型評(píng)估。使用驗(yàn)證集來(lái)評(píng)估模型性能。計(jì)算準(zhǔn)確率、召回率、F1分?jǐn)?shù)等評(píng)估指標(biāo)??梢岳L接下來(lái),針對(duì)提取的特征進(jìn)行權(quán)重分析。SVMtf_vectorizertf_vectorizer=TfidfVectorizer(max_features=10)X=tf_vectorizer.fit_transform(df.text)transfer=MinMaxScaler(feature_range=(0,1))X=transfer.fit_transform(X.toarray())train_X,test_X,train_y,test_y=train_test_split(X,y,random_state=615,SVM#creator.create("FitnessMax",base.Fitness,weights=(1.0,))creator.create("Individuallistfitness=creator.FitnessMax)##creator.create("FitnessMax",base.Fitness,weights=(1.0,))creator.create("Individuallistfitness=creator.FitnessMax)#定義適應(yīng)度函數(shù)def#C=individual[0]kernelindividual[1]#構(gòu)建SVM模型clf=SVC(C=C,#計(jì)算模型性能指標(biāo)(以準(zhǔn)確率為例clf.fit(train_X,accuracy=clf.score(train_X,train_y)returnaccuracy,#toolbox=#toolbox.register("attr_C",np.random.randint,1,4)toolbox.register("attr_kernelnp.random.choicelinear','poly','rbf','sigmoid'])#定義個(gè)體的生成方式toolbox.register("individual",tools.initCycle,(toolbox.attr_C,toolbox.attr_kernel),n=1)#定義種群的生成方式toolbox.register("populationtools.initRepeat,list,toolbox.individual)#定義評(píng)估函數(shù)toolbox.register("evaluate"evaluate)#定義選擇方式toolbox.register("selecttools.selTournament,tournsize=3)#定義交叉方式toolbox.register("mate"tools.cxTwoPoint)#定義變異方式toolbox.register("mutatetools.mutUniformInt,low=[1linearup=[3,'sigmoidindpb=0.1**100**100)#運(yùn)行遺傳算法pop=forgeninrange(10):print("Generationforgeninrange(10):print("Generationgen+1)#選擇offspring=toolbox.select(pop,#offspringlist(map(toolbox.cloneoffspring))#交叉forchild1,child2inzip(offspring[::2],offspring[1::2]):ifnp.random.random()<0.5:toolbox.mate(child1,child2)delchild1.fitness.valuesdel#formutantinifnp.random.random()<0.2:delmutant.fitness.values#invalid_ind=[indforindinoffspringifnotind.fitness.valid]fitnesses=map(toolbox.evaluate,invalid_ind)forind,fitinzip(invalid_ind,fitnesses):ind.fitness.values=fit#popoffspring#輸出結(jié)果best_ind=tools.selBest(pop,1)[0]print("Bestindividual:",best_ind)print("Bestfitness:",defdefaccuracymetrics.accuracy_score(expectedpredicted)accuracy準(zhǔn)確Recall=metrics.recall_score(expected,predicted) recall召回率Precmetrics.precision_score(expectedpredicted)#precision精度f(wàn)1=metrics.f1_score(expected,predicted)#f1scoref1分?jǐn)?shù)con=metrics.confusion_matrix(expected,predicted)print("Accuracy:%.3f%%"%(accuracy*100.0))print("Recall:%.3f%%"%(Recall*100.0))print("Prec:%.3f%%"%(Prec*100.0))print("F1:%.3f%%"%(f1*100.0))print("ConfusionMatrix:\n",con)hm=plt.title("ConfusionMatrix",fontsize=15)precision,recall,_=precision_recall_curve(expected,predicted)ap=average_precision_score(expected,predicted)#PR曲#plt.figure(figsize=(8,plt.ylim([0.0,1.05])plt.xlim([0.0,1.05])plt.title('Precision-RecallCurve')#fpr,tpr,_=roc_curve(expected,predicted)roc_auc=auc(fpr,tpr)#ROC曲plt.plot(fpr,plt.plot(fpr,tpr,color='darkorange',lw=2,label='ROCcurve(area=%0.2f)'%roc_auc)plt.plot([0,1],[0,1],color='navy',lw=2,linestyle='--')plt.xlim([0.0,plt.ylim([0.0,1.05])plt.xlabel('FalsePositiveRate')plt.ylabel('TruePositiveRate')plt.title('Receiveroperatingcharacteristic')plt.legend(loc="lowerright")3SVM評(píng)估SVMPythonPythonPythonSVMpythonNumPy、Pandas、Scikit-learnNLTK,NumPy算,提供了高效的數(shù)組操作和數(shù)學(xué)函數(shù);Pandas數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)操作工具;Scikit-learnSVM;NLTK(NaturalLanguageToolkit):自然Notebook、PyCharmSVMSVMC[linear,poly,rbf,C2102387241335627PRAPPrecisionRecallPRAPPRAP0.48PRAP2SVM模型檢測(cè)中文惡意評(píng)論的PRAPTPRFPR,記線下的面積作為性能度量。SVMROCAUC0.50。ROCAUC3SVM模型檢測(cè)中文惡意評(píng)論的ROC曲線和TPRSVMSVMCOLD為例,采用支持向量機(jī)(SupportVectorMachine,SVM)作為基礎(chǔ)模型,并結(jié)這是一種在二分類問(wèn)題中廣泛應(yīng)用的機(jī)器學(xué)習(xí)算法。SVMSVMCOLDCOLD涵蓋所有中文社交媒體上的惡意評(píng)論變種。此外,COLD究,本文成功地基于支持向量機(jī)(SupportVectorMachine,SVM)開(kāi)發(fā)了一種GitariND,ZupingZ,DamienH,etal.Alexicon-basedapproachforhatespeechdetection[J].InternationalJournalofMultimediaandUbiquitousEngineering,2015,10(4):215-230.WulczynE,ThainN,DixonL.Exmachina:Personalattacksseenatscale[C]//Proceedingsofthe26thinternationalconferenceonworldwideweb.2017:NobataC,TetreaultJ,ThomasA,etal.Abusivelanguagedetectioninonlineusercontent[C]//Proceedingsofthe25thinternationalconferenceonworldwideweb.2016:145-153.fortoxiccommentclassification[C]//Proceedingsofthe10thhellenicconferenceonartificialintelligence.2018:1-6.AgrawalS,AwekarA.Deeplearningfordetectingcyberbullyingacrossmultiplesocialmediaplatforms[C]//Europeanconferenceoninformationretrieval.Cham:SpringerInternationalPublishing,2018:141-153.XuR,YangY.Cross-lingualdistillationfortextclassification[J].arXivpreprintarXiv:1705.02073,2017.lingualsentimentclassification[J].TransactionsoftheAssociationforComputationalLinguistics,2018,6:557-570.AhnH,SunJ,ParkCY,etal.NLPDoveatSemEval-2020task12:Improvingoffensivelanguagedetectionwithcross-lingualtransfer[J].arXivpreprintarXiv:2008.01354,SpertusE.Smokey:Automaticrecognitionofhostilemessages[C]//Aaai/iaai.1997:StringhiniG,KruegelC,VignaG.Detectingspammersonsocialnetworks[C]//Proceedingsofthe26thannualcomputersecurityapplicationsconference.2010:1-9.RischJ,KrestelR.Deleteornotdelete?Semi-automaticcommentmoderationforthenewsroom[C]//Proceedingsofthefirstworkshopontrolling,aggressionandcyberbullying(TRAC-2018).2018:166-176.DjuricN,ZhouJ,MorrisR,etal.Hatespeechdetectionwithcomment2015:29-30.胡劍波.冒犯稱謂語(yǔ)研究[D].上海外國(guó)語(yǔ)大學(xué)吳浩,潘善亮.BERT-RCNN的中文違規(guī)評(píng)論識(shí)別研究[J].中文信息學(xué)周婭,李賽.Bi-GRU的惡意行為檢測(cè)模型[J].計(jì)算機(jī)工程與deftemp=re.sub(u'[^\u4e00-\u9fa5A-Za-z]','',x)ms_cut=list(jieba.cut(temp,cut_all=False))forwordinif(word!='')&(wordnotinstop_list):outstr=outstr+''+wordreturnX=tf_vectorizer.fit_transform(df.text)transfer=MinMaxScaler(feature_range=(0,1))X=transfer.fit_transform(X.toarray())train_X,test_X,train_y,test_y=train_test_split(X,y,random_state=615,#creator.create("FitnessMax",base.Fitness,weights=(1.0,))#定義適應(yīng)度函數(shù)#解碼個(gè)體C=kernel=#SVMclf#計(jì)算模型性能指標(biāo)(以準(zhǔn)確率為例returnaccuracy,#toolbox=###定義種群的生成方式toolbox.register("populationtools.initRepeatlisttoolbox.individual)#定義評(píng)估函數(shù)#定義選擇方式#定義交叉方式#定義變異方式toolbox.register("mutate",tools.mutUniformInt,low=[1,'linear'],up=[3,'sigmoid'],#pop=toolbox.population(n=10)forgeninrange(2):print("Generation:",gen+1)#選擇offspringtoolbox.select(pop,len(pop))#復(fù)制選出的個(gè)體offspringlist(map(toolbox.clone,offspring))#交叉forchild1,child2inzip(offspring[::2],offspring[1::2]):ifnp.random.random()<0.5:delchild1.fitness.valuesdel#formutantinifnp.random.random()<0.2:#invalid_ind=[indforindinoffspringifnotind.

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論