1. 程式人生 > >Mapreduce 矩陣相乘應用--計算文字間的相似度

Mapreduce 矩陣相乘應用--計算文字間的相似度

  • 通過以上的方法可以看到,這種方法是用大量的硬碟空間來換取記憶體空間。因為每個詞的權重 要重發傳送很多變。
  • 其次,在使用上述方法的時候,需要對新聞和詞建立統一的索引。比如 “科技”這個詞的索引為0, “文化”這個詞的索引為1,換句話說,就是將矩陣的橫縱座標對應到每個詞和新聞當中。
  • 最後計算相似度的時候,輸入資料要存成兩份,一份作矩陣A,一份作為矩陣A的轉置,然後進行相乘。
  • ps:這裡說明一下,在使用mapreduce 中的MultipleInputs的時候,我設定了兩個Map,一個處理A矩陣,一個處理A矩陣的轉置,發現不可以。因為MultipleInputs這個類只能針對不同的路徑採取不同的Map和InputFormat。所以如果路徑相同了。那麼後面的會覆蓋掉前面的。