iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 6
0

https://ithelp.ithome.com.tw/upload/images/20171224/201036320dPzMzJp6M.png

前情提要:在[05][Machine Learning - 推薦系統] 動手操作1/2已經完成了實驗的前半部,今天要看到的是後半部演算法 (train model)跟Score, Evaluate Model的部分:

  • Train matchbox recommender
  • Score matchbox recommender
  • Evaluate recommender

Train matchbox recommender

https://ithelp.ithome.com.tw/upload/images/20171224/20103632WteH5KU9YW.png

在左手邊找到train matchbox recommender的模組之後,
拉到工作畫面中,從輸入的三個原點可以看到input有三個不同的資料集可以輸入。
從左到右分別是:使用者對物件的評分,使用者特徵資料集,物品特徵資料集。

因此根據以下圖示接上:
https://ithelp.ithome.com.tw/upload/images/20171224/20103632kX9NODkgS7.png

接下來是train matchbox recommender裡面的參數,
[02][Machine Learning - 推薦系統] 演算法介紹 已經介紹過,
因此這邊就不多做說明,各項參數先分別設定 4,20,4

不過針對這個模組,依然有一些可以分享給大家的一些use note。

use note

  • 使用者跟物件的特徵都會被自動重新縮放到0-1之間,
    特徵值彼此之間的稀疏性便可以被保留。
    一般來說,特徵需要擁有 informative(富有信息量)、
    discriminative(有區分性)和independent(獨立)
    的。
    而數值型態(numerical)的特徵值當中,
    如果有很多個值是0,少數值是1,
    這樣我們就會說這個特徵值得稀疏性是高的。

  • 記憶體使用狀況(Memory Footprint)
    目前Matchbox's memory footprint的lower bound是
    16 * N * (4 * T + 2 * R) bytes。
    其中N 是user-item-rating的個數,
    T淺在特徵的個數,R則是評分最高和最低的差距。
    模型大小則大約為16 * T * (U * R + I + X + Y) bytes。
    其中U是使用者數目, I為物品數目, X為使用者特徵, Y是物品的特徵。

Score matchbox recommender

score matchbox 總共有5個資料輸入,
會針對你所選擇的Recommender prediction kind,
而需要給予不同的輸入資料集。
例如這次我們選用的item recommendation,

因為我們在train model的時候有給使用者跟物品的特徵,
所以在這邊就必須要給4個資料輸入:
1.訓練好的模型
2.要用來測試的資料
3.使用者特徵
4.物品特徵
如果在train model的時候沒有給使用者跟物品的特徵,
那麼在score的時候也不必給。

接下來就是設定Score model的參數了:
https://ithelp.ithome.com.tw/upload/images/20171224/20103632pgoy8sX09Q.png

這邊目前的步驟:
https://ithelp.ithome.com.tw/upload/images/20171224/20103632BojSJsDyew.png

到這邊按下run之後,在score model按下visualize會看到:
使用者跟推薦給他的五樣商品。
https://ithelp.ithome.com.tw/upload/images/20171224/201036328tqj5LXQdA.png

Evaluate Recommender

連結測試資料以及剛剛訓練好的模型,
按下執行看到所有的模組都有綠色的勾之後,
就表示這次實驗已成功,也執行完畢拉!!
https://ithelp.ithome.com.tw/upload/images/20171224/20103632pkmYdl693a.png

相信大家經過這六篇的理論加上實作,
已經可以訓練出一個簡單的推薦模型。
明天則是要把這個模型轉化成web api,
讓模型變成一個可對外的服務。

還沒跟上進度的快看一看前面的文章喔!!


reference
圖片
https://www.instagram.com/p/Bc-hR2BK9m/
什么是稀疏特征(Sparse Features)?
https://www.zhihu.com/question/31951092
Train Matchbox Recommender
https://msdn.microsoft.com/library/en-us/Dn905987.aspx


上一篇
[05][Machine Learning - 推薦系統] 動手操作1/2
下一篇
[07][Machine Learning - 推薦系統] 發佈模型api
系列文
Data Science with Azure12

尚未有邦友留言

立即登入留言