本次代碼改進主要集中在聚類算法和主題詞提取方法的優化上,主要包含三個關鍵修改:
首先,將聚類算法從KMeans替換為DBSCAN。這是因為原KMeans方法需要預先指定聚類數量,而實際評論數據中的主題分布難以預測。DBSCAN算法能夠自動確定聚類數量,并有效識別噪聲點(這是指南中明確指出的難點)。該算法的優勢在于能更好地處理非球形聚類結構,對噪聲數據具有更強的魯棒性,特別適合文本數據中常見的非均勻分布特征,從而提升聚類質量。
其次,實現了DBSCAN參數的動態確定。通過NearestNeighbors方法尋找最佳eps值(采用肘點法原理),避免了繁瑣的手動調參過程,使算法能自適應不同數據集的特征分布。雖然代碼中相關可視化部分(plt)被注釋,但在調試階段可取消注釋以直觀觀察距離分布的肘點位置,便于參數優化。
最后,改進了主題詞提取方法并優化了噪聲處理。主題詞提取從原先基于聚類中心特征權重的方法,改為直接統計聚類內的詞語頻率。新方法能更直觀地反映實際用詞情況,避免TF-IDF特征權重可能帶來的偏差,同時使用管道符"|"分隔主題詞,更符合業務需求。對于DBSCAN標記的噪聲點(label=-1),不再分配主題詞,有效避免低質量數據污染聚類結果,顯著提高主題詞的代表性和純凈度。