標題相似度演算法 乙個簡單的計算文章相似度功能!

2021-10-16 14:33:22 字數 1224 閱讀 3800

在做文章系統的時候,很多時候需要為這篇文章推薦最相近的文章。

通過這樣進行匹配,查詢出來的結果是包含「茶」和「功效」的所有文章。

在顯示上,第一篇排在第二篇的上面。

那麼,如何做到最匹配的文章呢?

$words = "茶,功效";

$otitle = "用靈芝泡茶的功效";

$otitletwo = "泡茶的功效與作用";

echo(strpos($otitle,'茶'))."

";echo(strpos($otitle,'功效'))."

";echo "

"; echo(strpos($otitletwo,'茶'))."

";echo(strpos($otitletwo,'功效'))."

";echo "

"; 輸出的結果:

然後計算結果:

第一篇:12+18 = 30,第二篇:3+9 = 12;

讓後用這個從小到大排序;就完成了乙個簡單的相似度排序。

示例**:

$words = "茶,功效";

$where['title'] = $this->createarr($words);

$keywordslist = $keywordsdb->where($where)->select();foreach($keywordslist as $k => $v);//array_multisort(array_column($keywordslist,'poslike'),sort_desc,$keywordslist);

array_multisort(array_column($keywordslist,'poslike'),sort_asc,$keywordslist);foreach($keywordslist as $v);return $sum;

生成查詢陣列:

/** 生成模糊查詢的陣列*/

private function createarr($words)return $wherearr;

}//$where['title'] = array('like','%'.$words.'%');

// $where['title'] = array('like',array('%'.$words.'%','%'.$wordss.'%'));

// $where['title'] = array(array('like','%'.$words.'%'),array('like','%'.$wordss.'%'));

標題相似度演算法 NLP 基於文字相似度的商品推薦

課程簡介 自然語言處理是人工智慧皇冠上的 明珠 他是讓機器模仿人類,理解人類的關鍵。目前這項技術,已經應用在機器翻譯 語音助手 自動問答 知識圖譜 中文處理等多個領域。本門課程講解了nlp技術中基礎的分詞 詞向量等技術,而這些知識也是所有nlp專案中的核心關鍵技術。我們以乙個完整的電商標題相似度任務...

計算相似度的LLR演算法

loglikelihood ratio test是一種假設檢驗的方法。wikipedia上的簡介 surprise and coincidence及相應accuratemethods for the statistics of surprise and coincidence中llr log lik...

推薦演算法中的 相似度計算

對使用者的行為進行分析得到使用者的偏好後,可以根據使用者的偏好計算相似使用者和物品,然後可以基於相似使用者或物品進行推薦。這就是協同過濾中的兩個分支了,即基於使用者的協同過濾和基於物品的協同過濾。關於相似度的計算,現有的幾種方法都是基於向量 vector 的,其實也就是計算兩個向量的距離,距離越近相...