亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于改進(jìn)DEC的評論文本聚類算法

        2023-09-27 01:06:30陳可嘉夏瑞東林鴻熙
        關(guān)鍵詞:編碼器聚類向量

        陳可嘉, 夏瑞東, 林鴻熙

        (1. 福州大學(xué) 經(jīng)濟(jì)與管理學(xué)院, 福州 350108; 2. 莆田學(xué)院 商學(xué)院, 福建 莆田 351100)

        隨著互聯(lián)網(wǎng)上電商評論數(shù)量的激增, 已引起商家和企業(yè)的廣泛關(guān)注. 獲取在線電商評論有助于商家和企業(yè)更好地了解消費(fèi)者真正的需求. 而這些存在于電商平臺的評論文本通常是無標(biāo)注的數(shù)據(jù), 由人工從無標(biāo)注的大量文本數(shù)據(jù)中獲取信息非常困難且耗時[1]. 隨著應(yīng)用場景的多樣化發(fā)展, 越來越多的文本數(shù)據(jù)需要更適用于特定場景的聚類劃分[2]. 電商產(chǎn)品的評論也屬于文本數(shù)據(jù), 因此對于產(chǎn)品評論, 可進(jìn)行無監(jiān)督聚類分析以了解用戶對產(chǎn)品具體信息的關(guān)注分布情況.

        目前在關(guān)于文本聚類的研究中, 基于K-means的聚類是一種經(jīng)典的無監(jiān)督聚類算法, 通??捎糜谖谋揪垲惾蝿?wù)中[3], 其對大部分?jǐn)?shù)據(jù)都有較強(qiáng)的適用性, 并且計(jì)算簡單高效. 張蕾等[4]利用改進(jìn)的詞頻-逆文檔頻率算法并結(jié)合K-means++算法對科研機(jī)構(gòu)發(fā)表論文數(shù)據(jù)進(jìn)行了聚類應(yīng)用分析; 朱楓怡等[5]利用K-means算法對故事等類型的文本進(jìn)行了聚類應(yīng)用分析. 但K-means算法也存在明顯的局限性, 如需要預(yù)先給定最優(yōu)聚類數(shù)目K值以及無法有效處理高維數(shù)據(jù)等. 對于如何解決局限性, Bejos等[6]提出了一種改進(jìn)的快速分區(qū)聚類算法緩解無法有效處理高維數(shù)據(jù)問題, 以提高文本聚類效果; 張朝等[7]提出了一種K-means聚類最優(yōu)匹配算法解決傳統(tǒng)K-means算法對聚類初始點(diǎn)的選取和距離度量的計(jì)算異常敏感問題.

        隨著文本聚類技術(shù)的發(fā)展, 深度聚類的應(yīng)用可提升聚類算法的性能. Hosseini等[1]提出了一種基于疊架構(gòu)的Autoencoder, 可減少數(shù)據(jù)的維度以提供強(qiáng)大的聚類特征. 同時, 深度嵌入聚類已成為無監(jiān)督聚類的主要方法[8], Xie等[9]提出的深度嵌入聚類(deep embedding clustering, DEC)算法, 將訓(xùn)練數(shù)據(jù)從高維空間到低維特征空間映射, 并在其中迭代優(yōu)化聚類目標(biāo); Ren等[10]使用了一種新的半監(jiān)督深度嵌入聚類方法, 其在特征學(xué)習(xí)過程中加入了成對約束, 使得在學(xué)習(xí)到的特征空間中屬于同一簇的數(shù)據(jù)樣本彼此靠近, 而屬于不同簇的數(shù)據(jù)樣本彼此遠(yuǎn)離; Boubekki等[8]提出了在深度嵌入聚類算法上進(jìn)行自動編碼器與聚類的聯(lián)合學(xué)習(xí)和嵌入, 保證前者可從后者獲得的有價(jià)值信息中受益; 黃宇翔等[11]提出了基于集成學(xué)習(xí)的改進(jìn)深度嵌入聚類算法以及其對超參數(shù)λ的敏感性.

        在文本聚類研究中, 使用預(yù)訓(xùn)練詞向量模型獲取詞向量是必不可少的部分, 對于預(yù)訓(xùn)練詞向量模型, BERT(bidirectional encoder representation from transformer)模型相比于Word2vec和Glove等模型可以得到考慮詞上下文信息且適用性廣泛的詞向量, 同時還能在具體任務(wù)中動態(tài)優(yōu)化詞向量[12]. 在針對主題分布與詞嵌入信息相融合的問題上, Liang等[13]提出了結(jié)合BERT和LDA(latent dirichlet allocation)主題模型以確定主題最佳分類數(shù); 文獻(xiàn)[14]提出了利用LDA模型、 詞嵌入模型Word2vec和Glove綜合獲得文本向量表示. 針對BERT預(yù)訓(xùn)練模型在聚類任務(wù)中的應(yīng)用, Hosseini等[1]提出了先使用改進(jìn)的預(yù)訓(xùn)練BERT模型進(jìn)行文本的向量表示, 然后進(jìn)行聚類分析; Mehta等[15]提出了基于BERT模型派生詞嵌入的聚類方法對大型文本數(shù)據(jù)集進(jìn)行聚類研究; Subakti等[16]使用了多種聚類算法, 包括K-means聚類、 深度嵌入聚類和改進(jìn)的深度嵌入聚類等融合BERT得出的文本數(shù)據(jù)表示進(jìn)行聚類研究.

        但在評論的無監(jiān)督聚類工作中, DEC算法的K-means聚類層可能仍存在聚類數(shù)目K需要預(yù)先給定的情況, 以及聚類中心的初始化有很強(qiáng)的隨機(jī)性會影響整個DEC算法效果; 同時在預(yù)訓(xùn)練詞向量工作中, 較少考慮到評論中詞上下文信息與評論中主題特征的融合.

        針對上述問題, 本文提出一種基于改進(jìn)DEC的評論文本聚類算法, 該算法結(jié)合了BERT和LDA模型作為預(yù)訓(xùn)練詞向量嵌入, 有效融合了句子嵌入向量和評論主題分布向量; 在K-means聚類層中, 通過主題連貫性的變化選擇合適的主題數(shù)作為聚類數(shù)目K, 同時將LDA模型得出的主題特征向量作為自定義聚類中心, 然后進(jìn)行聯(lián)合訓(xùn)練以增強(qiáng)聚類的準(zhǔn)確性.

        1 聚類算法設(shè)計(jì)

        本文基于改進(jìn)DEC的評論文本聚類算法流程如圖1所示, 其中包括: 數(shù)據(jù)集獲取與預(yù)處理; 基于BERT-LDA的數(shù)據(jù)集向量化表示; 改進(jìn)DEC算法; 評論文本聚類可視化分析.

        圖1 基于改進(jìn)DEC的評論文本聚類算法Fig.1 Review text clustering algorithm based on improved DEC

        1.1 數(shù)據(jù)集獲取與預(yù)處理

        本文使用Python從天貓商城(www.tmall.com)和京東商城(www.jd.com)中進(jìn)行評論數(shù)據(jù)集爬取, 以此進(jìn)行后續(xù)的產(chǎn)品評論聚類分析. 對于獲取的產(chǎn)品評論文本數(shù)據(jù)需要做如下預(yù)處理.

        1) 重復(fù)數(shù)據(jù)剔除: 將重復(fù)的無效數(shù)據(jù)進(jìn)行剔除.

        2) 去停用詞: 停用詞通常在評論中大量重復(fù)出現(xiàn), 卻沒有實(shí)際意義, 例如: “嗯、 了、 即、 不但、 終于”等, 將停用詞進(jìn)行剔除以獲得更有效的評論句.

        1.2 基于BERT-LDA的數(shù)據(jù)集向量化表示

        本文利用獲取的無標(biāo)注評論數(shù)據(jù)集進(jìn)行基于BERT-LDA的數(shù)據(jù)集向量化表示, 主要流程如下: 1) 構(gòu)建BERT句子嵌入向量; 2) 構(gòu)建LDA主題分布向量; 3) 融合生成BERT-LDA數(shù)據(jù)集向量化表示.

        1.2.1 構(gòu)建BERT句子嵌入向量

        本文通過谷歌開源工具包BERT 模型訓(xùn)練產(chǎn)品評論數(shù)據(jù)集上的句子嵌入向量表示. BERT 模型具有很強(qiáng)的文本特征表示能力[16-17], 如圖2所示.

        圖2 BERT模型Fig.2 BERT model

        輸入包括3部分, 分別為位置編碼嵌入、 片段嵌入和字符嵌入. BERT的核心模塊是Transformer塊[18], 每個Transformer 共有12個注意力頭, 其隱含層大小為768.

        本文使用開源的BERT-as-service工具加載預(yù)訓(xùn)練模型, 將預(yù)處理后數(shù)據(jù)集中的句子進(jìn)行編碼后, 取輸出層字向量的平均值作為句子的句向量. 將BERT句子嵌入向量Di定義為

        Di=MEAN(T1,T2,…,Tn),

        (1)

        其中T1,T2,…,Tn表示輸出層的字向量.

        1.2.2 構(gòu)建LDA主題分布向量

        LDA主題模型用于推測文檔的主題分布, 它可以將文檔集中每篇文檔的主題以概率分布的形式給出. LDA主題模型認(rèn)為一個文檔由若干主題組成, 主題由數(shù)據(jù)集下相應(yīng)的特征詞構(gòu)成, 則可以描述對應(yīng)為m個文檔中, 具有n個特征詞,z表示為n個特征詞所對應(yīng)的主題. LDA主題模型如圖3所示.

        圖3 LDA主題模型Fig.3 LDA topic model

        LDA主題模型中各參數(shù)的含義如下:α表示評論-主題分布中的Dirichlet分布超參數(shù);β表示主題-詞分布中的Dirichlet分布超參數(shù);D表示評論總數(shù);N表示評論中總的詞語數(shù)量;K表示主題數(shù);θ表示評論-主題分布;φ表示主題-詞分布;z表示評論中詞語對應(yīng)的主題;w表示評論中的詞語.

        LDA主題模型的聯(lián)合分布定義為

        (2)

        利用Gibbs Sampling算法進(jìn)行參數(shù)估計(jì), 迭代抽樣直到收斂, 用公式表示為

        (3)

        1.2.3 融合BERT-LDA的數(shù)據(jù)集向量化

        根據(jù)構(gòu)建的BERT句子嵌入向量和LDA主題分布向量, 采用向量拼接融合的方式, 將得到新表達(dá)的向量輸入[14]. 這種新的輸入向量, 既包含了評論的句子整體語義特征, 又包含了評論所具有的主題特征. 定義融合BERT句子嵌入向量和LDA主題分布向量的文本向量化表示Di,μ為

        Di,μ={Di°μ},

        (4)

        其中°為向量拼接符號.

        1.3 改進(jìn)DEC算法

        根據(jù)得到的基于BERT-LDA的數(shù)據(jù)集向量化表示進(jìn)行評論數(shù)據(jù)集的聚類任務(wù). 考慮到拼接后的向量存在高維稀疏的問題, 同時原始DEC算法的K-means聚類層存在需要預(yù)先給定初始聚類數(shù)目K值以及初始聚類中心具有隨機(jī)性等問題. 本文使用改進(jìn)的DEC算法, 主要包括: 1) 自動編碼器降維, 以學(xué)習(xí)無標(biāo)簽數(shù)據(jù)集高維向量降維后的特征表示; 2) 改進(jìn)聚類層, 在編碼器后堆積K-means聚類層, 以分配編碼器輸出到一個聚類組, 基于主題連貫性選擇初始聚類數(shù)目K, 同時使用LDA主題特征向量ω作為初始聚類中心; 3) 訓(xùn)練聚類算法, 以同時改善聚類層和編碼器.

        1.3.1 自動編碼器降維

        自動編碼器是一種無監(jiān)督式的特征降維方法, 其由兩部分組成, 分別為編碼器(Encoder)和解碼器(Decoder), 編碼器和解碼器均包括輸入層、 輸出層和隱藏層3層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu).

        自動編碼器通過編碼器提取高維特征并降維處理輸出文本特征, 解碼器通過對稱的網(wǎng)絡(luò)結(jié)構(gòu), 對編碼器的輸入進(jìn)行重構(gòu). 針對需要不斷進(jìn)行迭代訓(xùn)練調(diào)整自編碼器網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)的過程, 訓(xùn)練過程將均方誤差(mean square error, MSE)[19]作為相應(yīng)的損失函數(shù), 以此獲取精確的低維度特征信息. 自編碼器中編碼器和解碼器過程可用公式表示為

        Zi=f1(WeDi,μ+be),

        (5)

        (6)

        其中Zi為編碼器提取的高維特征并降維處理輸出后的文本特征,X′為解碼器通過對稱的網(wǎng)絡(luò)結(jié)構(gòu)對編碼器的輸入進(jìn)行重構(gòu)的結(jié)果,We和Wh是權(quán)重矩陣,be和bh是偏置向量,f1和f2是映射函數(shù).

        1.3.2 改進(jìn)的聚類層

        原始DEC算法中, 聚類層存在需要人工給定聚類數(shù)目K值和初始聚類中心具有隨機(jī)性從而影響聚類效果的問題.

        首先, 聚類數(shù)目K等價(jià)于一個確定主題建模中主題數(shù)量的參數(shù), 因此從LDA主題模型到K-means有一個自然的聯(lián)系. 基于此, 本文使用主題連貫性的變化確定最合適的主題數(shù), 以此作為K-means聚類層的聚類數(shù)目K. 主題連貫性主要用于衡量一個主題內(nèi)的詞是否是連貫的. 隨著主題數(shù)量的變化, 主題連貫性得分也逐漸變化, 因此利用主題連貫性的變化進(jìn)行主題數(shù)選擇時, 最合適的主題數(shù)目是當(dāng)主題連貫性最大時所對應(yīng)的主題數(shù).

        采用的主題連貫性計(jì)算方法為: 先基于滑動窗口, 對主題詞進(jìn)行One-Set分割(一個Set內(nèi)的任意兩個詞組成詞對進(jìn)行對比), 再使用歸一化點(diǎn)態(tài)互信息(normalized pointwise mutual information, NPMI)[20]和余弦相似度[21]間接獲得連貫度. 其取值范圍為[0,1], 用于衡量同一主題內(nèi)的特征詞語義是否連貫, 其數(shù)值越高模型效果越好[22]. 歸一化點(diǎn)態(tài)互信息的計(jì)算公式為

        (7)

        其中:γ為設(shè)置的權(quán)重;P(wi,wj)表示包含wi,wj的文本與全部文本的比值;o′表示平滑因子, 是為了在計(jì)算中保持?jǐn)?shù)值穩(wěn)定性并避免零概率問題.

        其次, 考慮初始聚類中心存在隨機(jī)性的問題, 使用LDA模型得出的主題特征向量ω作為初始聚類中心可有效反映其文本主題的劃分信息, 同時可避免K-means聚類層隨機(jī)選擇聚類中心而影響聚類效果. 其步驟如下:

        1) 使用主題特征向量ω作為初始聚類中心ω=(ω1,ω2,…,ωK), 其中K為聚類數(shù)目;

        2) 計(jì)算每個樣本數(shù)據(jù)Zi與K個聚類中心的距離, 將其劃分到距離最近中心點(diǎn)所在的簇中;

        3) 重新計(jì)算每個簇中所有數(shù)據(jù)對象的平均值, 將其作為新的簇中心ω′, 用公式表示為

        (8)

        其中ci為每個簇中的數(shù)據(jù)對象;

        4) 重復(fù)步驟2)和步驟3), 直到簇心不發(fā)生改變或達(dá)到最大迭代次數(shù).

        使用基于主題連貫性選擇的聚類數(shù)目K, 并使用主題特征向量ω作為初始聚類中心的聚類層流程如圖4所示.

        圖4 聚類層的聚類流程Fig.4 Clustering process of clustering layer

        1.3.3 訓(xùn)練聚類算法

        經(jīng)過自動編碼器進(jìn)行參數(shù)初始化得到降維后的潛在特征空間的文本特征Zi后, 預(yù)訓(xùn)練編碼器后堆疊聚類層, 從而形成聚類算法.為同時提升聚類和特征表示的效果, 利用聚類結(jié)果優(yōu)化編碼器和聚類算法的參數(shù), 進(jìn)行聚類算法的訓(xùn)練.因此本文將計(jì)算輔助目標(biāo)分布, 并根據(jù)算法聚類結(jié)果最小化KL(Kullback-Leibler)散度[9], 其流程為: 1) 每個樣本點(diǎn)屬于簇的概率得到樣本點(diǎn)的概率分布Q; 2) 使用輔助目標(biāo)分布從當(dāng)前高置信度分配中學(xué)習(xí)優(yōu)化聚類質(zhì)心.重復(fù)該過程直到滿足收斂條件.訓(xùn)練聚類算法的步驟如下.

        1) 計(jì)算每個樣本點(diǎn)i屬于簇j的概率qij, 用公式表示為

        (9)

        得到樣本點(diǎn)的概率分布Q, 其中:zi表示樣本點(diǎn)的特征向量;μj表示簇心向量;v是t分布的自由度, 由于無法在無監(jiān)督環(huán)境中對驗(yàn)證集上的v進(jìn)行交叉驗(yàn)證, 并且學(xué)習(xí)它是多余的[23], 因此本文將其取值為1.

        2) 目標(biāo)分布應(yīng)該具有以下屬性: 加強(qiáng)預(yù)測, 提升聚類精度; 更關(guān)注于高置信度的數(shù)據(jù)樣本; 避免大聚類組干擾隱藏特征空間.因此本文使用文獻(xiàn)[9]提出的輔助目標(biāo)分布P=(pij), 計(jì)算公式為

        (10)

        3) 聯(lián)合訓(xùn)練編碼器和聚類層.本文采用KL散度作為損失函數(shù)訓(xùn)練模型度量兩個分布Q和P之間的差異, 計(jì)算公式為

        (11)

        其中qij是樣本點(diǎn)i屬于簇j的估計(jì)概率值,pij是樣本點(diǎn)i屬于簇j的近似概率值.

        1.4 評論文本聚類可視化分析

        1.4.1 評論文本二維聚類可視化

        UMAP(uniform manifold approximation and projection)是一種數(shù)據(jù)降維可視化工具, 具有優(yōu)越的運(yùn)行性能和可擴(kuò)展性, 同時在可視化質(zhì)量方面保留了更多的全局結(jié)構(gòu)[24]. 因此, 本文使用UMAP工具對聚類后的數(shù)據(jù)集主題進(jìn)行可視化展示.

        1.4.2 聚類結(jié)果可視化

        UMAP獲取可視化聚類結(jié)果后, 使用詞云圖可以對文本數(shù)據(jù)中出現(xiàn)頻率較高的關(guān)鍵詞予以視覺上的突出, 形成“關(guān)鍵詞的渲染”, 從而過濾掉大量的文本信息. 因此, 本文同時選取每個主題下高頻的主題詞進(jìn)行詞云圖可視化分析, 以達(dá)到更直觀的聚類結(jié)果展示.

        1.5 本文算法設(shè)計(jì)

        本文基于改進(jìn)DEC的評論文本聚類算法的整體步驟如下.

        算法1基于改進(jìn)DEC的評論文本聚類算法.

        輸入: 經(jīng)過預(yù)處理后的數(shù)據(jù)集En;

        輸出: 聚類可視化結(jié)果;

        步驟1) 將En輸入BERT模型, 根據(jù)式(1)得到BERT句子嵌入向量Di;

        步驟2) 將En輸入LDA模型, 根據(jù)式(2)和式(3)得到主題分布向量μ和主題特征向量ω;

        步驟3) 根據(jù)式(4)獲得融合BERT-LDA的數(shù)據(jù)集向量Di,μ;

        步驟4) 配置自動編碼器的優(yōu)化器參數(shù)及迭代參數(shù);

        步驟5) 根據(jù)式(5)進(jìn)行自動編碼器訓(xùn)練, 得出降維后的向量特征表示;

        步驟6) 配置聚類算法的優(yōu)化器參數(shù)并定義損失函數(shù);

        步驟7) 根據(jù)式(7)進(jìn)行主題連貫性選擇初始聚類數(shù)目K;

        步驟8) 用主題特征向量ω作為初始聚類中心, 根據(jù)式(8)進(jìn)行K-means初始聚類;

        步驟9) 根據(jù)式(9)計(jì)算每個樣本點(diǎn)i屬于簇j的概率分布Q;

        步驟10) 根據(jù)式(10)計(jì)算輔助目標(biāo)分布P;

        步驟11) 定義算法訓(xùn)練的初始損失值、 迭代參數(shù)及終止條件;

        步驟12) 采用KL散度根據(jù)式(11)進(jìn)行輔助目標(biāo)分布P的更新, 度量兩個分布Q和P之間的差異;

        步驟13) 檢驗(yàn)終止條件;

        步驟14) 使用UMAP和詞云圖輸出聚類可視化結(jié)果.

        2 實(shí)驗(yàn)及分析

        2.1 實(shí)驗(yàn)數(shù)據(jù)集

        聚類分析是指應(yīng)用數(shù)學(xué)方法按照數(shù)據(jù)間的相似性進(jìn)行劃分的過程[25]. 針對目前電商產(chǎn)品中的在線評論文本多是無標(biāo)注的數(shù)據(jù), 而要從相應(yīng)的評論數(shù)據(jù)集中獲取有用信息, 就需要進(jìn)行相應(yīng)的評論聚類以獲取用戶對產(chǎn)品進(jìn)行評論的情況. 使用本文基于改進(jìn)DEC的評論文本聚類算法對電商產(chǎn)品手機(jī)的評論數(shù)據(jù)集進(jìn)行聚類, 并進(jìn)行聚類結(jié)果可視化分析. 本文選取天貓商城(www.tmall.com)和京東商城(www.jd.com)中的華為手機(jī)評論數(shù)據(jù)作為實(shí)驗(yàn)研究數(shù)據(jù), 利用Python軟件爬取購買華為手機(jī)用戶對相關(guān)手機(jī)發(fā)表的在線產(chǎn)品評論. 爬取的手機(jī)型號是目前該品牌熱銷的旗艦款手機(jī), 如mate40,mate40pro,p40,p40pro等. 其中包含19 869條初始數(shù)據(jù).

        通過對獲取的產(chǎn)品評論數(shù)據(jù)集進(jìn)行重復(fù)剔除, 如出現(xiàn)的多條“此用戶沒有填寫評論!”等, 同時去除出現(xiàn)較多但與評論聚類無關(guān)的停用詞, 得到12 289條進(jìn)行實(shí)驗(yàn)的評論數(shù)據(jù). 數(shù)據(jù)集示例列于表1.

        表1 數(shù)據(jù)集示例Table 1 Examples of datasets

        2.2 實(shí)驗(yàn)環(huán)境及參數(shù)設(shè)置

        2.2.1 實(shí)驗(yàn)環(huán)境

        實(shí)驗(yàn)的運(yùn)行環(huán)境: 基于Windows10操作系統(tǒng), 處理器為i5-10500H, 16 GB內(nèi)存; 算法使用Python3.7編程語言實(shí)現(xiàn), 編碼工作通過Pycharm開發(fā)工具完成, 主要使用的庫有Gensim3.8.1,keras2.3.1等.

        2.2.2 實(shí)驗(yàn)參數(shù)設(shè)置

        在進(jìn)行自動編碼器訓(xùn)練以及改進(jìn)DEC算法訓(xùn)練時, 將epochs分別設(shè)為50,100,150,200,250個進(jìn)行對照, 以評估其參數(shù)對算法結(jié)果以及訓(xùn)練時間的影響, 結(jié)果列于表2.

        表2 設(shè)置不同epochs的運(yùn)行情況Table 2 Operation status of setting different epochs

        由表2可見, 當(dāng)設(shè)置epochs為200和250時, 輸出結(jié)果接近, 而運(yùn)行250個epochs的時間遠(yuǎn)大于設(shè)置200個epochs. 因此自動編碼器訓(xùn)練時, 設(shè)置批量處理大小batch_size=128, 學(xué)習(xí)率為0.001, 訓(xùn)練迭代epochs為200, 優(yōu)化算法為Adam算法[26]. 同時, 在進(jìn)行改進(jìn)DEC算法訓(xùn)練時, 設(shè)置每200個epochs訓(xùn)練迭代更新目標(biāo)分布, 優(yōu)化算法為Adam算法, 損失函數(shù)為KL散度.

        2.3 評價(jià)指標(biāo)

        根據(jù)是否需要外部信息, 聚類評價(jià)指標(biāo)可分為外部聚類評價(jià)指標(biāo)[27]和內(nèi)部聚類評價(jià)指標(biāo)[28], 外部評價(jià)指標(biāo)旨在將聚類結(jié)果與預(yù)先確定的聚類結(jié)果進(jìn)行比較. 而在無監(jiān)督的聚類任務(wù)中, 通常并無預(yù)先確定的聚類結(jié)果, 因此內(nèi)部評價(jià)指標(biāo)更適用于無監(jiān)督聚類評價(jià). 聚類的輪廓系數(shù)和CH(Calinski-Harabaz)指標(biāo)是推薦的聚類評價(jià)方法[29].

        1) 輪廓系數(shù)是測量聚類簇內(nèi)一致性的指標(biāo), 用于評價(jià)算法聚類效果的好壞, 其取值范圍為[-1,1], 數(shù)值越高算法效果越好, 計(jì)算公式為

        (12)

        其中:a(i)表示樣本點(diǎn)與同一簇中所有其他點(diǎn)的平均距離, 即樣本點(diǎn)與同一簇中其他點(diǎn)的相似度;b(i)表示樣本點(diǎn)與下一個最近簇中所有點(diǎn)的平均距離, 即樣本點(diǎn)與下一個最近簇中其他點(diǎn)的相似度.

        2) CH指標(biāo)通過計(jì)算簇內(nèi)各點(diǎn)與簇中心的距離平方和度量簇內(nèi)的緊密度, 同時也通過計(jì)算簇間中心點(diǎn)與數(shù)據(jù)集中心點(diǎn)距離平方和度量數(shù)據(jù)集的分離度. CH越大表示簇自身越緊密, 簇與簇之間越分散, 即更優(yōu)的聚類結(jié)果. 計(jì)算公式為

        (13)

        其中: tr(X)表示求矩陣X的跡;N為樣本數(shù);k為簇的數(shù)量;Bk和Wk分別計(jì)算組間協(xié)方差和組內(nèi)協(xié)方差, 其計(jì)算式為

        (14)

        (15)

        其中xq為簇q中所有數(shù)據(jù)的集合,cq為簇q的中心點(diǎn),c為樣本集合中心點(diǎn),nq為簇q包含點(diǎn)的個數(shù).

        2.4 對比算法實(shí)驗(yàn)

        將如下7種算法與本文算法在相應(yīng)的數(shù)據(jù)集上進(jìn)行對比實(shí)驗(yàn), 分別進(jìn)行5次實(shí)驗(yàn), 其輪廓系數(shù)指標(biāo)和CH指標(biāo)結(jié)果列于表3.

        表3 不同算法的5次實(shí)驗(yàn)指標(biāo)對比結(jié)果Table 3 Comparison results of 5 experimental indicators of different algorithms

        1. TF-IDF+K-means: 是一種基線算法, TF-IDF獲取詞向量, 直接利用K-means聚類算法進(jìn)行聚類.

        2. Word2Vec+K-means: 是一種基線算法, Word2Vec獲取詞向量, 直接利用K-means聚類算法進(jìn)行聚類.

        3. BERT+K-means[15]: 該算法使用BERT模型得到相應(yīng)的文本特征表示, 再利用K-means聚類算法進(jìn)行聚類.

        4. BERT+DEC[16]: 該算法使用BERT模型得到相應(yīng)的文本特征表示, 再利用DEC聚類算法進(jìn)行聚類.

        5. BERTopic+AE+K-means[1]: 該算法基于BERT得到文本向量表示, 同時根據(jù)文檔概率分布獲得潛在主題, 再結(jié)合自動編碼器與K-means進(jìn)行數(shù)據(jù)的聚類.

        6. BERT-LDA+原始DEC: 在本文基于BERT-LDA得到文本向量表示后, 結(jié)合未改進(jìn)DEC聚類算法進(jìn)行聚類實(shí)驗(yàn).

        7. BERT-LDA+改進(jìn)DEC: 本文提出的聚類算法, 基于BERT-LDA得到文本向量表示, 再結(jié)合改進(jìn)DEC算法對數(shù)據(jù)進(jìn)行聚類.

        由表3可見: 在算法1~算法3中, BERT+K-means的效果最好, 說明在評論的聚類中, 直接利用基于詞頻進(jìn)行表示的聚類效果較差, 而通過大量語料進(jìn)行預(yù)訓(xùn)練的BERT模型進(jìn)行向量表示可有效提高后續(xù)聚類的能力; 由算法3分別與算法4和算法5之間的對比可見, 結(jié)合深度嵌入聚類進(jìn)行訓(xùn)練比直接進(jìn)行K-means聚類可以得到更優(yōu)的效果; 同時可見, 在BERT模型的基礎(chǔ)上加上Topic主題的融合訓(xùn)練進(jìn)行聚類的效果更優(yōu); 算法6與算法7相比, BERT-LDA+改進(jìn)DEC算法相對于BERT-LDA+原始DEC算法, 其輪廓系統(tǒng)與CH指標(biāo)波動變化最大約為6%和10%, 而BERT-LDA+原始DEC算法中第2次實(shí)驗(yàn)和第4次實(shí)驗(yàn)的輪廓系統(tǒng)與CH指標(biāo)分別有約14%和19%的變化, 因此BERT-LDA+原始DEC算法的聚類結(jié)果差別波動較大, 且可能存在聚類結(jié)果較差的問題, 而本文基于BERT-LDA+改進(jìn)DEC算法, 輪廓系數(shù)在5次實(shí)驗(yàn)中結(jié)果均大于0.2, 且均優(yōu)于未改進(jìn)的原算法, 因此, 本文算法在指標(biāo)更優(yōu)的基礎(chǔ)上也很好地改善了聚類結(jié)果差別波動較大的問題.

        本文算法在指標(biāo)結(jié)果上均優(yōu)于其他對比算法, 說明本文提出的結(jié)合BERT-LDA進(jìn)行向量表示以及結(jié)合改進(jìn)DEC算法的有效性. 在無監(jiān)督聚類中, 該算法的聚類簇內(nèi)一致性更好, 同時該算法有更明顯的簇內(nèi)自身更緊密以及簇與簇之間更分散的效果.

        2.5 實(shí)驗(yàn)結(jié)果與分析

        首先采取向量融合的方式, 將得到的BERT句子嵌入向量與LDA主題分布向量進(jìn)行拼接融合, 得到基于BERT-LDA的融合向量輸入. 其中LDA模型得到的主題分布向量部分示例列于表4.

        表4 主題分布向量部分示例Table 4 Some examples of topic distribution vector

        其次進(jìn)行改進(jìn)DEC算法的構(gòu)建, 利用自動編碼器對上述的文本向量做向量降維, 再將編碼器后堆疊聚類層, 其中使用LDA模型得出的主題特征向量ω作為初始聚類中心, 并且通過主題連貫性的變化選擇最合適的主題數(shù)目K, 以此作為K-means算法的聚類數(shù)目K, 其主題連貫性隨主題數(shù)的變化曲線如圖5所示. 由圖5可見, 當(dāng)主題數(shù)為8時, 模型的主題連貫性最大, 因此可設(shè)置聚類的初始聚類數(shù)為8. 再輸入主題特征向量ω作為初始聚類中心, 進(jìn)行聚類算法的優(yōu)化訓(xùn)練.

        圖5 主題數(shù)-主題連貫性變化曲線Fig.5 Change curves of topic coherence with number of topics

        最后得到相應(yīng)的聚類結(jié)果, 并利用UMAP工具進(jìn)行聚類可視化效果展示. 產(chǎn)品評論文本聚類后的二維聚類可視化結(jié)果如圖6所示.

        圖6 二維聚類可視化Fig.6 Two-dimensional clustering visualization

        由圖6可見, 8個聚類的聚類效果可較明顯地從可視化圖中看出其劃分情況. 其中cluster1,cluster3,cluster4,cluster5,cluster6和cluster7聚類簇之間被較明顯的進(jìn)行了劃分; 而cluster0與cluster2之間存在一部分重合. 具體評論數(shù)據(jù)的聚類結(jié)果及其重合的情況可對聚類簇內(nèi)的內(nèi)容分析可得. 因此, 在8個聚類數(shù)目的基礎(chǔ)上, 選擇每個簇中評論高頻詞進(jìn)行詞云圖可視化分析, 從而達(dá)到更直觀的聚類結(jié)果展示. 得出的8個聚類結(jié)果的詞云圖展示如圖7所示. 篩選出每個聚類簇中的關(guān)鍵詞列于表5, 由此可得進(jìn)行聚類后的各簇中所包含的評論具體信息.

        圖7 聚類結(jié)果的詞云圖展示Fig.7 Word cloud graph display of clustering results

        由表5可見, 對手機(jī)評論進(jìn)行聚類后, 得到的8個聚類簇的關(guān)鍵詞結(jié)果可以有效體現(xiàn)用戶對產(chǎn)品評論的聚類結(jié)果. cluster0中主要的關(guān)鍵詞為拍照、 電池、 效果、 速度等, 而cluster2中的主要關(guān)鍵詞也有拍照、 效果、 續(xù)航、 電池等. 其拍照和電池同時出現(xiàn)在一個簇內(nèi), 體現(xiàn)了用戶在評論手機(jī)時, 通常將對拍照和電池的體驗(yàn)同時發(fā)表評論, 也在一定程度上體現(xiàn)了用戶對拍照和電池方面的較高關(guān)注度. 這種情況也體現(xiàn)在二維聚類可視化圖6中cluster0和cluster2之間存在一部分重合的情況. 在cluster1中出現(xiàn)較多的關(guān)鍵詞為外觀、 手感、 顏值等, 體現(xiàn)了該簇中包含的評論主要涉及用戶在購買手機(jī)時對外觀的關(guān)注情況; cluster3中出現(xiàn)較多的關(guān)鍵詞為老爸、 家人等, 體現(xiàn)了該簇包含的評論主要涉及手機(jī)的使用者或購買對象的情況; cluster4中出現(xiàn)較多的關(guān)鍵詞為京東、 物流等, 體現(xiàn)了該簇中包含的評論主要涉及購買手機(jī)的物流運(yùn)輸情況; cluster5中出現(xiàn)較多的關(guān)鍵詞為屏幕、 使用等, 體現(xiàn)了該簇中包含的評論主要涉及用戶在購買手機(jī)時對屏幕的關(guān)注情況; cluster6中出現(xiàn)較多的關(guān)鍵詞為華為、 國貨等, 體現(xiàn)了該簇中包含的評論主要涉及用戶在購買手機(jī)時對品牌的考慮情況; cluster7中出現(xiàn)較多的關(guān)鍵詞為系統(tǒng)、 鴻蒙等, 體現(xiàn)了該簇中包含的評論主要涉及用戶在購買手機(jī)時對系統(tǒng)的關(guān)注情況.

        綜上所述, 本文提出了一種基于改進(jìn)DEC的評論文本聚類算法對評論數(shù)據(jù)進(jìn)行無監(jiān)督聚類, 可以應(yīng)用于在無標(biāo)注的產(chǎn)品評論數(shù)據(jù)集中更好地獲得用戶對于手機(jī)進(jìn)行評論的具體內(nèi)容分布情況. 通過利用BERT獲取句子向量表示以及LDA獲得主題分布向量表示進(jìn)而得到融合的數(shù)據(jù)向量表示; 進(jìn)一步將其輸入改進(jìn)DEC算法中, 根據(jù)LDA模型可以得到主題連貫性的效果評價(jià)確定聚類的初始數(shù)目, 并使用主題特征向量作為自定義聚類中心; 同時在模型中計(jì)算樣本點(diǎn)的概率分布Q, 再結(jié)合輔助目標(biāo)分布P, 利用KL散度作為損失函數(shù)聯(lián)合訓(xùn)練自動編碼器的編碼層和聚類層. 通過與對比算法在產(chǎn)品評論數(shù)據(jù)集上進(jìn)行無監(jiān)督聚類的比較, 結(jié)果表明, 本文算法在輪廓系數(shù)和CH指標(biāo)上均高于對比算法, 同時其聚類結(jié)果穩(wěn)定性也更好.

        猜你喜歡
        編碼器聚類向量
        向量的分解
        聚焦“向量與三角”創(chuàng)新題
        基于FPGA的同步機(jī)軸角編碼器
        基于DBSACN聚類算法的XML文檔聚類
        電子測試(2017年15期)2017-12-18 07:19:27
        基于PRBS檢測的8B/IOB編碼器設(shè)計(jì)
        向量垂直在解析幾何中的應(yīng)用
        JESD204B接口協(xié)議中的8B10B編碼器設(shè)計(jì)
        電子器件(2015年5期)2015-12-29 08:42:24
        基于改進(jìn)的遺傳算法的模糊聚類算法
        向量五種“變身” 玩轉(zhuǎn)圓錐曲線
        一種層次初始的聚類個數(shù)自適應(yīng)的聚類方法研究
        久久久精品3d动漫一区二区三区| 国产狂喷水潮免费网站www| 四虎影视成人永久免费观看视频| 激情久久av一区av二区av三区| 92精品国产自产在线观看48页| 国产自拍成人在线免费视频| 美腿丝袜av在线播放| 在线观看一区二区三区在线观看| 久久伊人少妇熟女大香线蕉| 日韩人妻无码精品久久| 亚洲欧美国产日韩字幕| 国产青青草自拍视频在线播放| 亚洲国产精品久久又爽av| 97久久超碰国产精品旧版| 午夜精品久久久久久中宇| 婷婷五月亚洲综合图区| 亚洲精品大全中文字幕| 日日摸天天碰中文字幕你懂的| 开心婷婷五月激情综合社区| 26uuu欧美日本在线播放| 国产一级一区二区三区在线播放 | 午夜一级韩国欧美日本国产| 精品蜜桃一区二区三区| 三级国产精品久久久99| 久久久久久亚洲精品中文字幕 | 免费的小黄片在线观看视频| 亚洲av无码一区二区乱孑伦as | 亚洲精品天堂成人片av在线播放| 国产网站视频| 亚洲国产av午夜福利精品一区 | 无码一区二区三区亚洲人妻| 亚洲aⅴ无码国精品中文字慕| 五十路一区二区中文字幕| 性无码一区二区三区在线观看| 久久婷婷国产剧情内射白浆| 国产美女亚洲精品一区| 看女人毛茸茸下面视频| 国产精品9999久久久久| 麻豆密入视频在线观看| 中国亚洲av第一精品| 久久久久成人精品无码|