使用社交圖與情境感知之行動餐廳推薦系統

4,389 views

Published on

  隨著行動裝置與行動網路日益普及,人們可以隨時隨地存取的資訊激增;如何解決當前資訊超載(Information Overload)問題,並提供個性化推薦(Personalized Recommendation)服務是一項重要的研究議題。本論文利用Facebook開放圖(Open Graph)的打卡資料(Check-ins)設計一個行動餐廳推薦系統;以協同過濾法(Collaborative Filtering)為基礎,從個別使用者偏好總結團體偏好,實現團體推薦服務;並考慮社交圖(Social Graph)與情境資訊(Contextual Information)提升推薦品質;考慮的情境有位置、距離、年齡、性別指標、時間、星期、月份、同伴人數與同伴類型。本論文還設計一個方法,單獨評估位置與距離情境帶來的影響。
  本論文的實驗資料是從Facebook徵集69名受測者,收集2010/8/15至2012/4/30期間,3928名使用者對2691家餐廳的8264次打卡。實驗結果顯示,本系統在中、長距離(3到5公里)的情境下,準確度相較於基於流行性推薦有顯著成長,成長率約38%。這意味著,如果使用者尋找餐廳所設定的範圍比較大,相較於基於流行性推薦,本系統可以產生更好的推薦結果。

Published in: Technology, Education
0 Comments
44 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,389
On SlideShare
0
From Embeds
0
Number of Embeds
19
Actions
Shares
0
Downloads
1
Comments
0
Likes
44
Embeds 0
No embeds

No notes for slide
  • 感謝各位老師蒞臨指導,我的名字是郭羿呈,我的論文題目是使用社交圖與情境感知之行動餐廳推薦系統。
  • 今天的報告會分成五個部分,分別為摘要、背景與相關研究、使用社交圖與情境感知之推薦系統,然後對這個系統進行實驗與評價,最後總結我們所做的工作和得到的成果。
  • 動機:我們認為一個優秀的行動餐廳推薦系統,應該考慮情境、團體偏好和團體關係,來提供更好的服務。 目的:設計一個行動餐廳推薦系統,應用 Facebook 開放圖(Open Graph)發現使用者與其朋友對餐廳的偏好,實現團體使用者之餐廳推薦服務,使用情境資訊(Contextual Information)與社交圖(Social Graph)增進推薦品質。
    如此一來,我們就可以將這個系統應用在約會或實驗室聚餐等情境上,參考情境、社交圖和每個人的品味來選擇餐廳。
  • 情境感知的定義由 Schilit 和 Theimer 首次提出,他說情境感知計算有能力讓行動應用程式發現當前環境的改變並做出反應。

    隨後,Dey 提供了一個更通用的定義,他說如果系統使用情境提供相關資訊或服務,它就是情境感知系統,其中的相關性取決於使用者的任務。
  • 社交圖說明了每個人在社會網路的交互關係;在社交圖上每個人用節點表示,交互關係由邊表示。
  • Facebook 擴展了社交圖的概念讓它可以應用在虛擬非人的物體,讓應用程式有能力去定義連接使用者與物體的動作,
  • 協同過濾法適合用在音樂、電影和餐廳等難以進行文本結構化的對象。
  • 基於記憶:直接根據系統中所有評分進行預測。
    基於模型:收集評分資料進行機器學習,得到使用者行為模型進行預測。
  • 這是基於記憶的預測評分方法之一,它計算使用者與其他使用者的相似度,然後乘上其他使用者的分數進行預測。
  • 常用的使用者相似度測量法有 Distance-based、Cosine-based 與 Correlation-based。
    Distance-based 以共同評分過的物品為座標軸,刻度是分數,然後將使用者以座標點表示,當使用者之間的距離越近,他們的品味就越相似。
    Cosine-based 衡量的是空間向量的夾角,更加的是體現在方向上的差異,而不是位置的差異。
    Correlation-based 則是以使用者為座標軸,然後將物品以座標點表示。我們可以從圖中看到一條直線,它的畫法是盡可能靠近圖上所有的座標點,所以被稱為 best-fit line,如果兩位使用者對項目的評分都相同,那麼這條直線將成為對角線,並且與圖上所有的座標點相交。
  • 它將原始的分數乘上每個情境的相似度,然後正規化。
  • 從這張圖我們可以發現,A和B有共同的打卡餐廳,因此他們的品味可能相似,我們就可以將A打卡過的其他餐廳,優先推薦給B。 F和D也是同樣的情況。C和E則因為沒有相似的使用者,所以我們無法進行處理。
  • 從這張圖我們可以發現,如果我們知道每次打卡的情境,就可以知道每家餐廳適合什麼情境。
  • 從這張圖我們可以發現,如果我們知道每次打卡的社交圖,就可以知道每家餐廳適合什麼樣的同伴類型。
    因為社交圖太複雜,所有我們需要有一個演算法,將它Approximate一個簡單的同伴類型。
  • 輸入使用者請求情境,系統會呼叫 Graph API 取得這次推薦的所需要的使用者資料,然後將它插入或更新 Database,同時系統會跑另外一個 Thread 取得其他朋友的資料來豐富資料集,讓系統更容易找到品味相似的使用者,最後會到 Recommendation Module。
  • Recommendation Module 會使用位置與距離參數過濾餐廳,然後系統會總結情境與社交圖,送到預測評分公式進行預測,經過排序後會產生一個 size n 的推薦清單。
  • 使用情境相關性乘上原始的評分,然後做正規化,最後再乘上一個最高的情境相關性。
    Cup 是使用者 u 對餐廳 p 的打卡集合
    假設這是使用者請求情境 t 和 CS,cs1是A使用者,這是c1的情境和分數,這是c2的情境和分數,假設c1的和請求的情境相關性是0.1,假設c2和請求的情境相關性是0.9,從計算過程中,我們可以發現
  • 我們修改了常用的三種相似度測量法,將原始的評分以總結的評分取代。
  • 假設這是使用者請求的情境 t 和 CS,p1 是某家餐廳,我們可以從計算過程中看到,
  • 輸入所有餐廳的集合和使用者請求情境,輸出建議的餐廳清單
    首先位置與距離參數過濾餐廳
    然後總結社交圖與情境
    再來預測每家餐廳的評分
    最後返回一個經過排序的top-n個餐廳的集合
  • 輸入請求情境,輸出總結情境
    計算同伴平均年齡和性別指標
    如果一位同伴,同伴類型就是Alone
    否則利用每個人的相互關係累計點數,最高點數的關係就是同伴類型。
    最後返回總結過的情境
  • 位置與距離參數已經用來篩選餐廳了,所以不需要進行測量。 年齡、性別指標和時間,我們認為它是一個指數函數,希望可以透過一個係數去做調整。
    因為我們希望23點和0點的案例,差距是1個單位,所以我們需要使用一個正確的計算方法。
  • 我們認為星期可分為周末和平日,當情況不同時,我們透過一個係數去調整它。
  • 同伴類型我們則以許多係數來描述各種同伴類型之間的相關性,類型相同時為1,類型不同時,我們透過一個係數來做調整。

    整體的相關性是上面所有方程式的乘積
  • 我們可以從這張圖發現,五公里的距離已經能夠涵蓋整個台北市的市區。
  • 假設我們有三筆資料,每筆資料包含check-in和request,我們將一筆資料抽出來做為 validation data,其他做為training data,然後將request與training data輸入到推薦系統,會產生一個 top-N的餐廳推薦清單,如果打卡的餐廳出現在推薦清單中,那就是命中,最後我們計算命中的比率有多少,得到一個Accuracy。
  • 我們可以看到三種相似度測量法表現都一樣,這可能是因為相似的使用者只有一個共同項目居多,所以我們選擇基本的Distance-based,繼續後面的實驗
  • 距離參數設為0公里時,準確度為85%左右,之後,因為距離參數越大,使用者可選擇的餐廳越多,所以準確度會下降。
  • 這是只看推薦數量小於該距離參數之餐廳數量的情況,同樣的距離參數越大,可選擇的餐廳越多,所以準確度會下降,
    另外,跟上一張圖表相比,距離參數越小,準確度會下修越多
  • 紅色的部分是非0的係數,也就是會影響推薦的情境,分別有time of day, weekday, type of companion.
  • 為了比較每個情境維度的影響,我們只看受情境影響的項目(約占總數1.76%),做了5輪的測試。

    我們可以從表格中看到,考慮個別情境雖然看似有所改進,但T-Test的P Value卻與Round 1差異不大;不過當我們進一步考慮所有情境後,就可以帶來顯著的改進,P Value達到顯著水準。
  • 同樣的,位置與距離參數對準確度影響最大
    跟上一張圖表相比,距離參數越小,準確度也會下修越多
  • 我們可以從實驗結果中發現,當推薦10家餐廳,在500公尺的情境下,本系統略低於基於流行性,但在3公里到5公里的情境中,系統的成長率達到38%左右,這個結果說明了,如果使用者的選擇餐廳範圍比較大,本系統可以給出更好的推薦。
  • 使用社交圖與情境感知之行動餐廳推薦系統

    1. 1. 使用社交圖與情境感知之 行動餐廳推薦系統 研究者:郭羿呈 2012/7/24 TasteLens
    2. 2. 大綱 摘要 動機 目的 背景與相關研究 情境感知 社交圖與開 放圖 推薦演算法 結合情境之 推薦演算法 使用社交圖與情境感知 之推薦系統 資料定義 問題定義 解決方案 實驗與評價 資料收集 選擇相似度 測量法 係數調整 評價 結論 總結貢獻 1
    3. 3. 摘要 • 動機 – 行動餐廳推薦系統(Recommender System) – 情境(Context) – 團體偏好(Preferences) – 團體關係(Relations) • 目的 – 設計一個行動餐廳推薦系統 – 應用 Facebook 開放圖(Open Graph)發現使用者與其朋友 對餐廳的偏好 – 實現團體使用者之餐廳推薦服務 – 使用社交圖(Social Graph)與情境資訊(Contextual Information)增進推薦品質 2
    4. 4. 情境感知(Context-aware) • Schilit 和 Theimer 首次提出 – Context-aware computing is the ability of a mobile user’s applications to discover and react to changes in the environment they are situated in. • Dey 提供了一個更通用的定義 – A system is context-aware if it uses context to provide relevant information and/or service to the user, where relevancy depends on the user’s task. 3 Source: Schilit, B.N. and M.M. Theimer, Disseminating active map information to mobile hosts. Network, IEEE, 1994. 8(5): p. 22-32. Dey, A.K., Understanding and using context. Personal and ubiquitous computing, 2001. 5(1): p. 4-7.
    5. 5. 社交圖(Social Graph) 4 A B C E D F
    6. 6. 開放圖(Open Graph) 5 A B C E D F 麻婆 豆腐鳳城 燒臘 椰林 大道 哈利 波特 傅鐘
    7. 7. 推薦系統 • 資訊過濾系統(Information Filtering System)的子集 • 試圖預測使用者還沒有考慮的項目評分 (Rating)或偏好(Preference) • 方法 – 基於內容法(Content-based Approaches) – 協同過濾法(Collaborative Filtering) – 混合法等(Hybrid Approaches) 6Source: 刘建国, 周涛, and 汪秉宏, 个性化推荐系统的研究进展. 自然科学进展, 2009. 19(001): p. 1-15.
    8. 8. 協同過濾法(Collaborative Filtering) • 利用歷史資料計算使用者之間的相似度 (Similarity) • 利用與使用者相似的其他使用者對項目的 評分來預測使用者對項目的評分 • 根據預測的評分來對使用者進行推薦 • 方法 – 基於記憶(Memory-based) – 基於模型(Model-based) 7Source: 刘建国, 周涛, and 汪秉宏, 个性化推荐系统的研究进展. 自然科学进展, 2009. 19(001): p. 1-15.
    9. 9. 基於記憶的預測評分方法 • 預測使用者 u 對項目 i 的評分 𝑝𝑟𝑒𝑑𝑖𝑐𝑡 𝑢, 𝑖 = 𝑘 𝑢′∈𝑈 𝑠𝑖𝑚 𝑢, 𝑢′ × 𝑟 𝑢′,𝑖 • 𝑈 = {𝑢1, 𝑢2, … , 𝑢 𝑛} 為使用者集合 • 𝑟𝑢,𝑖 是使用者 u 對項目 i 的評分 • k 是正規化因子(Normalizing Factor) 𝑘 = 1/ 𝑢′∈𝑈 𝑠𝑖𝑚(𝑢, 𝑢′) 8 Source: Adomavicius, G. and A. Tuzhilin, Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions. Knowledge and Data Engineering, IEEE Transactions on, 2005. 17(6): p. 734-749.
    10. 10. 相似度測量法(Similarity) • 𝑝𝑟𝑒𝑑𝑖𝑐𝑡 𝑢, 𝑖 = 𝑘 𝑢′∈𝑈 𝒔𝒊𝒎 𝒖, 𝒖′ × 𝑟 𝑢′,𝑖 9 Distance-based Correlation-basedCosine-based 𝑢1 𝑢2 𝑖2 𝑖1 𝑖3 𝑖1 𝑖3 𝑖2 𝑢1 𝑢2 𝑢1 𝑢2 𝑖3 𝑖2 𝑖1
    11. 11. 測量情境的相關性(Relevance)的方法 • Chen 測量不同情境之間的相關性去加權評分 • 他使用 Correlation-base 相似度測量法計算項 目 i 在兩個情境 x 和 y 下的相似度權重 𝑠𝑖𝑚 𝑡 𝑥, 𝑦, 𝑖 = 𝑢∈𝑈(𝑟𝑢,𝑖,𝑥−𝑟𝑖)(𝑟𝑢,𝑖,𝑦−𝑟𝑖) 𝑢∈𝑈(𝑟𝑢,𝑖,𝑥−𝑟𝑖)2 𝑢∈𝑈(𝑟𝑢,𝑖,𝑦−𝑟𝑖)2 • 𝑟𝑢,𝑖,𝑥 是使用者 u 在情境 x 對項目 i 的評分 • 𝑟𝑖 是項目 i 的平均評分 • 𝑈 是在情境 𝑥 和 𝑦 對項目 𝑖 評分的使用者集合 10 Source: Chen, A., Context-aware collaborative filtering system: Predicting the user’s preference in the ubiquitous computing environment. Location-and Context-Awareness, 2005: p. 75-81.
    12. 12. 結合情境到協同過濾法 • Chen 還假設每個情境維度都是線性獨立的 • 因此被當前情境 c 加權過的評分為 𝑅 𝑢,𝑖,𝑐 = 𝑘 𝑥∈𝐶 𝑡=1 𝑧 𝑟𝑢,𝑖,𝑥 × 𝑠𝑖𝑚 𝑡(𝑐, 𝑥, 𝑖) • 𝑟𝑢,𝑖,𝑥 是使用者 u 在情境 x 對項目 i 原始的評分 • k 是正規化因子 • 內迴圈涵蓋情境中的每個維度 • 外迴圈涵蓋該維度中的所有值 11 Source: Chen, A., Context-aware collaborative filtering system: Predicting the user’s preference in the ubiquitous computing environment. Location-and Context-Awareness, 2005: p. 75-81.
    13. 13. 描繪本系統使用協同過濾法的圖 12 A B C E D F 馬辣 火鍋鳳城 燒臘 永和 豆漿 梅江 烤肉 貳樓 餐廳
    14. 14. 描繪本系統考慮情境的圖 13 A B C E D F 馬辣 火鍋鳳城 燒臘 永和 豆漿 梅江 烤肉 貳樓 餐廳
    15. 15. 描繪本系統考慮社交圖的圖 14 A B C E D F 馬辣 火鍋鳳城 燒臘 永和 豆漿 梅江 烤肉 貳樓 餐廳
    16. 16. 本系統考慮的情境因子 • Location (l) • Distance (d) • Age (a): {13~110+ } • Sex index (s): {0~1} • Time of Day (td): {00:00~23:59} • Weekday (w): {Sun, Mon ,Tue, Wed, Thu, Fri, Sat} • Month (m): {Jan, Reb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec} • Number of companion (nc): {1~50+ } • Type of companion (tc): {Alone, Friend, Classmate, Colleague, Family, Lover} • Companions (CS) 15
    17. 17. 系統定義 1 社交圖與情境資訊 • 這個系統的請求情境 r 包含 – 元組 𝒕 = 𝑙, 𝑑, 𝑎, 𝑠, 𝑡𝑑, 𝑤, 𝑚, 𝑛𝑐, 𝑡𝑐 – 集合 𝑪𝑺 = 𝑐𝑠1, … , 𝑐𝑠 𝑛 • 𝒄𝒐𝒏𝒕𝒆𝒙𝒕: 𝒄 → 𝒕 函數的域是所有打卡和情境 元組 t 集合 16
    18. 18. 系統定義 2 資料集 • 𝑈 = 𝑢1, … , 𝑢 𝑛 是使用者集合 • 𝑃 = 𝑝1, … , 𝑝 𝑚 是餐廳集合 • 𝐶 = 𝑐 𝑢1,𝑝1,𝑐1, … , 𝑐 𝑢𝑖,𝑝𝑗,𝑐𝑘 是打卡集合,其 中 0 < i ≤ n 和 0 < j ≤ m • 𝒓𝒂𝒕𝒊𝒏𝒈 𝒄 函數的域是所有打卡和偏好評分 集合 – 1 代表去過一次 – 2 代表回訪過一次 – 3 代表回訪過一次以上 17
    19. 19. 系統定義 3 基於情境與社交圖的預測 • 給出餐廳集合 P 和使用者 u 的請求情境 r • 這個系統應該能夠預測使用者對每家餐廳 𝒑 ∈ 𝑷 的偏好評分 • 偏好評分應該反應使用者品味、社交圖與 情境資訊的影響 18
    20. 20. 系統定義 4 推薦處理 • 給出餐廳集合 P、使用者 u 的請求情境 r 和 使用者對每家餐廳 𝑝 ∈ 𝑃 的預測偏好評分 • 這個系統應該可以產生一個依據預測偏好 評分排序與尺寸 n 的餐廳清單 • 其中 n 是一個小整數使清單適合顯示在行 動裝置的小螢幕上 19
    21. 21. 系統流程 1 20 Call Graph API for user and all companions’data Web service returns data in JSON format More friends’ data available Call Graph API for friends’data Web service returns data in JSON format Stop Decode JSON and insert/update processed data into DB Decode JSON and insert/update processed data into DB DB Input: The user’s request with context Yes No Recommendation Module Retrieval Module
    22. 22. 系統流程 2 21 Predict user and all companions' rating for each restaurant in the context info and social graph 𝑝𝑟𝑒𝑑𝑖𝑐𝑡 𝐶𝑆, 𝑝, 𝑡 = 𝑢∈𝐶𝑆 𝑢′∈𝑈 𝑠𝑖𝑚 𝑢, 𝑢′, 𝑡 × 𝑠𝑢𝑚(𝑢′, 𝑝, 𝑡) 𝑢∈𝐶𝑆 𝑢′∈𝑈 𝑠𝑖𝑚(𝑢, 𝑢′) 𝑠𝑖𝑚 𝑢, 𝑢′, 𝑡 = 𝑝∈𝑃 𝑢𝑢′ (𝑠𝑢𝑚 𝑢, 𝑝, 𝑡 − 𝑠𝑢𝑚(𝑢′, 𝑝, 𝑡))2 𝑠𝑢𝑚 𝑢, 𝑝, 𝑡 = 𝑐∈𝐶 𝑢,𝑝 𝑟𝑒𝑙(𝑡, 𝑐𝑜𝑛𝑡𝑒𝑥𝑡 𝑐 ) × 𝑟𝑎𝑡𝑖𝑛𝑔(𝑐) 𝑐∈𝐶 𝑢,𝑝 𝑟𝑒𝑙(𝑡, 𝑐𝑜𝑛𝑡𝑒𝑥𝑡(𝑐)) × 𝑚𝑎𝑥 𝑐∈𝐶 𝑢,𝑝 𝑟𝑒𝑙 𝑡, 𝑐𝑜𝑛𝑡𝑒𝑥𝑡(𝑐) Generate a list of restaurants sorted by predicted rating with size n DB Use location and distance parameter to filter restaurant from DB Stop Use the user’s request to summarize context info and social graph from DB Preprocessing Retrieval Module Recommendation Module
    23. 23. 舉例說明: 𝑡 = 7月24日星期三晚上6點約27歲的情侶2人 𝐶𝑆 = 𝐴與B ↓ 𝑐𝑠1 = A 𝑐𝑜𝑛𝑡𝑒𝑥𝑡 𝑐1 = 1月7日星期六中午12點約50歲的朋友3人 𝑟𝑎𝑡𝑖𝑛𝑔 𝑐1 = 3 𝑐𝑜𝑛𝑡𝑒𝑥𝑡 𝑐2 = 6月21日星期四晚上7點約30歲的情侶2人 𝑟𝑎𝑡𝑖𝑛𝑔 𝑐2 = 2 ↓ 𝑟𝑒𝑙(𝑡, 𝑐𝑜𝑛𝑡𝑒𝑥𝑡 𝑐1 ) = 0.1 𝑟𝑒𝑙(𝑡, 𝑐𝑜𝑛𝑡𝑒𝑥𝑡 𝑐2 ) = 0.9 ↓ 𝑠𝑢𝑚 𝑐𝑠1, 𝑝1, 𝑡 = 0.1 × 3 + 0.9 × 2 0.1 + 0.9 × 0.9 = 1.89 利用社交圖與情境相關性總結偏好評分 • 使用者 u 在情境元組 t 對餐廳 p 的總結偏好評分 𝑠𝑢𝑚 𝑢, 𝑝, 𝑡 = 𝑐∈𝐶 𝑢,𝑝 𝑟𝑒𝑙(𝑡, 𝑐𝑜𝑛𝑡𝑒𝑥𝑡 𝑐 ) × 𝑟𝑎𝑡𝑖𝑛𝑔(𝑐) 𝑐∈𝐶 𝑢,𝑝 𝑟𝑒𝑙(𝑡, 𝑐𝑜𝑛𝑡𝑒𝑥𝑡(𝑐)) × 𝑚𝑎𝑥 𝑐∈𝐶 𝑢,𝑝 𝑟𝑒𝑙 𝑡, 𝑐𝑜𝑛𝑡𝑒𝑥𝑡(𝑐) • 𝐶 𝑢,𝑝是使用者 u 對餐廳 p 的打卡集合 22 情境不相關時貢獻少 情境相關時貢獻多 避免情境不相關時得到高分
    24. 24. 測量使用者相似度 • Distance-based: 𝑠𝑖𝑚 𝑢, 𝑢′ , 𝑡 = 1 1 + 𝑝∈𝑃 𝑢𝑢′ (𝑠𝑢𝑚 𝑢, 𝑝, 𝑡 − 𝑠𝑢𝑚(𝑢′, 𝑝, 𝑡))2 • Correlation-based: 𝑠𝑖𝑚 𝑢, 𝑢′, 𝑡 = 𝑝∈𝑃 𝑢𝑢′ 𝑠𝑢𝑚(𝑢, 𝑝, 𝑡) × 𝑠𝑢𝑚(𝑢′, 𝑝, 𝑡) 𝑝∈𝑃 𝑢𝑢′ 𝑠𝑢𝑚(𝑢, 𝑝, 𝑡)2 × 𝑝∈𝑃 𝑢𝑢′ 𝑠𝑢𝑚(𝑢′, 𝑝, 𝑡)2 • Cosine-based: 𝑠𝑖𝑚 𝑢, 𝑢′ , 𝑡 = 𝑝∈𝑃 𝑢𝑢′ 𝑠𝑢𝑚(𝑢, 𝑝, 𝑡) × 𝑠𝑢𝑚(𝑢′, 𝑝, 𝑡) 𝑝∈𝑃 𝑢𝑢′ 𝑠𝑢𝑚(𝑢, 𝑝, 𝑡)2 × 𝑝∈𝑃 𝑢𝑢′ 𝑠𝑢𝑚(𝑢′, 𝑝, 𝑡)2 • 𝑃 𝑢,𝑢′ 是被使用者 u 和 𝑢′ 共同打卡過的餐廳集合 23
    25. 25. 舉例說明: 𝑡 = 7月24日星期三晚上6點約27歲的情侶2人 𝐶𝑆 = 𝐴與𝐵 𝑝1 = 某家餐廳 ↓ 𝑝𝑟𝑒𝑑𝑖𝑐𝑡 𝐶𝑆, 𝑝1, 𝑡 = 0.9 × 1 + 0.5 × 2 + 0.1 × 3 + 0.5 × 2 0.9 + 0.5 + 0.1 + 0.5 = 1.6 預測偏好評分 • 同伴集合 CS 在情境 t 對餐廳 p 的預測偏好評分 𝑝𝑟𝑒𝑑𝑖𝑐𝑡 𝐶𝑆, 𝑝, 𝑡 = 𝑘 𝑢∈𝐶𝑆 𝑢′∈𝑈 𝑠𝑖𝑚 𝑢, 𝑢′ , 𝑡 × 𝑠𝑢𝑚(𝑢′ , 𝑝, 𝑡) • k 是正規化因子(Normalizing Factor) 𝑘 = 1/ 𝑢∈𝐶𝑆 𝑢′∈𝑈 𝑠𝑖𝑚(𝑢, 𝑢′) 24 打卡多者影響大 A B 打卡少者影響小 使用者相似時貢獻多 使用者不相似時貢獻少
    26. 26. 演算法 1 recommendation Algorithm 1 recommendation Input: P, the set of all restaurant u, the user r, the user’s request Output: M, the suggested restaurant list M ⇐ {} for all p ∈ P do if distance(p, r.t.l) < 𝑟. 𝑡. 𝑑 then M ⇐ M ∪ {p} end if end for r.CS ⇐ r.CS ∪ u r.t ⇐ summarize_context(r.t,r.CS) for all p ∈ M do rating ⇐ predict(r.CS, p, context(r)) assign_rating(p, rating) end for sort_by_rating(M) M ⇐ M[1 : n] return M 25
    27. 27. 演算法 2 summarize_context Algorithm 2 summarize_context Input: r, the user’s request Output: r, the summary context r.t.a <= avg_age(r.CS) r.t.s <= sex_index(r.CS) n ⇐ count(r.CS) if (n = 1) then r.t.tc <= Alone else R ⇐ {Friend : 0, Classmate : 0, Colleague : 0, Family : 0, Lover : 0} for all cs1 ∈ r.CS do for all cs2 ∈ r.CS do if (cs1 != cs2) then rel ⇐ relationship(cs1, cs2) assign_point(R,rel) end if end for end for r.t.tc ⇐ relationship_of_max(R) end if return r 26
    28. 28. 測量不同社交圖與情境的相關性 • 為了從偏好評分中觀察不同社交圖與情境 資訊之間的相似度 • 使用啟發式方法(Heuristic Approach)測 量不同社交圖與情境資訊的相關性 (Relevance) • 相關性是一個介於 0 到 1 的實數 • 將用於協同過濾法中加權偏好評分𝑠𝑢𝑚 𝑢, 𝑝, 𝑡 = 𝑐∈𝐶 𝑢,𝑝 𝑟𝑒𝑙(𝑡,𝑐𝑜𝑛𝑡𝑒𝑥𝑡 𝑐 )×𝑟𝑎𝑡𝑖𝑛𝑔(𝑐) 𝑐∈𝐶 𝑢,𝑝 𝑟𝑒𝑙(𝑡,𝑐𝑜𝑛𝑡𝑒𝑥𝑡 𝑐 ) × 𝑚𝑎𝑥 𝑐∈𝐶 𝑢,𝑝 𝑟𝑒𝑙 𝑡, 𝑐𝑜𝑛𝑡𝑒𝑥𝑡(𝑐) 27
    29. 29. 兩個情境的相關性測量模型 • Location (l) • Distance (d) • Age (a) 𝑟𝑒𝑙 𝑎 𝑡, 𝑡′ = 1, 𝑖𝑓 𝑡. 𝑎 = 𝑡′ . 𝑎 𝐶𝑜𝑒𝑓𝑎 𝑎𝑏𝑠(𝑡.𝑎−𝑡′.𝑎) , 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 • Sex Index (s) 𝑟𝑒𝑙 𝑠 𝑡, 𝑡′ = 1, 𝑖𝑓 𝑡. 𝑠 = 𝑡′. 𝑠 𝐶𝑜𝑒𝑓𝑠 𝑎𝑏𝑠(𝑡.𝑠−𝑡′.𝑠) , 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 • Time of Day (td) 𝑟𝑒𝑙 𝑡 𝑡, 𝑡′ = 1, 𝑖𝑓 𝑡. 𝑡𝑑 = 𝑡′. 𝑡𝑑 𝐶𝑜𝑒𝑓𝑡𝑑 𝑡𝑖𝑚𝑒_𝑑𝑖𝑓𝑓𝑒𝑟𝑒𝑛𝑐𝑒(𝑡.𝑡𝑑,𝑡′.𝑡𝑑) , 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 28
    30. 30. 兩個情境的相關性測量模型 • Weekday (w) 𝑟𝑒𝑙 𝑡 𝑡, 𝑡′ = 1, 𝑖𝑓 𝑖𝑠𝑊𝑒𝑒𝑘𝑒𝑛𝑑 𝑡. 𝑤 = 𝑖𝑠𝑊𝑒𝑒𝑘𝑒𝑛𝑑(𝑡′. 𝑤) 𝐶𝑜𝑒𝑓𝑤, 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 • Month (m) 𝑟𝑒𝑙 𝑚 𝑡, 𝑡′ = 1, 𝑖𝑓 𝑡. 𝑚 = 𝑡′. 𝑚 𝐶𝑜𝑒𝑓𝑚 𝑚𝑜𝑛𝑡ℎ_𝑑𝑖𝑓𝑓𝑒𝑟𝑒𝑛𝑐𝑒(𝑡.𝑚,𝑡′.𝑚) , 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 • Number of Companion (nc) 𝑟𝑒𝑙 𝑛𝑐 𝑡, 𝑡′ = 1, 𝑖𝑓 𝑡. 𝑛𝑐 = 𝑡′ . 𝑛𝑐 𝐶𝑜𝑒𝑓𝑛𝑐 𝑎𝑏𝑠(𝑡.𝑛𝑐−𝑡′.𝑛𝑐) , 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 29
    31. 31. 兩個情境的相關性測量模型 • Type of Companion (tc) 𝑟𝑒𝑙 𝑡𝑐 𝑡, 𝑡′ = 𝑇𝐶_𝑅𝑒𝑙𝑒𝑣𝑎𝑛𝑐𝑒𝑀𝑎𝑡𝑟𝑖𝑥 [𝑡. 𝑡𝑐][𝑡′ . 𝑡𝑐] 30 Alone Friend Classmate Colleague Family Lover Alone 1 Friend 1 Classmate 1 Colleague 1 Family 1 Lover 1 • The Overall Relevance 𝑟𝑒𝑙 𝑡, 𝑡′ = 𝑓∈𝐹 𝑟𝑒𝑙 𝑓 𝑡, 𝑡′ 𝑤ℎ𝑒𝑟𝑒 𝐹 = {𝑎, 𝑠, 𝑡𝑑, 𝑤, 𝑚, 𝑛𝑐, 𝑡𝑐}
    32. 32. 資料收集過程 收集到 2010/8/15 至 2012/4/30 的打卡資料 每位受測者平均帶來 365 位朋友 從我們的 Facebook 好 友名單中徵求受測者 69 位受測者 25184 位使用 者 7395 位曾打 卡的使用者 3928 位曾對 餐廳打卡的使 用者 37305 個地點 2691 家餐廳 74283 次打卡 8264 次餐廳 打卡 31
    33. 33. 此資料集的稀疏程度 • 若轉換此資料集為使用者與餐廳的二元矩 陣,此矩陣有 3928 行和 2691 列 • 若定義稀疏程度為 𝒏𝒐𝒏𝒛𝒆𝒓𝒐 𝒆𝒏𝒕𝒓𝒊𝒆𝒔 𝒕𝒐𝒕𝒂𝒍 𝒆𝒏𝒕𝒓𝒊𝒆𝒔 • 此資料集的稀疏程度為 8264 3928 × 2691 = 𝟎. 𝟎𝟎𝟎𝟕𝟖 32
    34. 34. 選擇相似度測量法 • 本系統可以自由選擇能產生最好結果的相 似度測量法 • 我們應用 LOOCV 評價改寫過的相似度測 量法 – Distance-based – Correlation-based – Cosine-based • 我們先將距離參數固定為 5 公里,因為人 們通常不會考慮太遠的餐廳 33
    35. 35. 各距離參數所涵蓋的範圍 34 34
    36. 36. 應用 LOOCV 的驗證過程 35 𝑪 𝟏 𝑹 𝟏 𝑪 𝟐 𝑹 𝟐 𝑪 𝟑 𝑹 𝟑 𝑪 𝟏 𝑹 𝟏 𝑪 𝟐 𝑹 𝟐𝑪 𝟏 𝑹 𝟏 𝑪 𝟑 𝑹 𝟑𝑪 𝟐 𝑹 𝟐 𝑪 𝟑 𝑹 𝟑𝑪 𝟏 Validation data Training data Recommender Evaluation 𝑹 𝟏 𝑪 𝟐 𝑹 𝟐 𝑪 𝟑 𝑹 𝟑 Recommender Evaluation Recommender Evaluation Accuracy User check-in User request with context It take a user request with context as input and provide a top-N list of restaurants sorted by predicted rating. Finally, calculate the ratio of hit data size to the training data size. The goal is to look into the validation data and match restaurant with the top-N list.
    37. 37. 相似度測量法對推薦品質的影響 36 Distance-based Correlation-based Cosine-based 10 Candidates 15.24% 15.24% 15.24% 20 Candidates 20.50% 20.50% 20.50% 30 Candidates 24.62% 24.62% 24.62% 0% 5% 10% 15% 20% 25% 30% Accuracy(%) ※ 距離參數固定為 5 公里
    38. 38. 參考位置與距離參數的初步評價 • 我們應用 LOOCV 評價這個系統 • 選用基本的 Distance-based 相似度測量法 • 推薦數量固定為 10、20 和 30 家候選餐廳 • 距離參數固定為 0.5、1、2、3、4 和 5 公里 • 進行只參考位置與距離參數的初步評價 37
    39. 39. 距離參數對推薦品質的影響 38 0 km 0.5 km 1 km 2 km 3 km 4 km 5 km Unlimit ed 10 candidates 85.59% 55.14% 38.15% 25.13% 19.03% 16.89% 15.24% 3.18% 20 candidates 85.59% 69.73% 50.79% 35.36% 26.88% 23.07% 20.50% 4.82% 30 candidates 85.59% 75.99% 59.67% 42.45% 32.48% 28.28% 24.62% 5.70% 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% Accuracy(%) 距離參數越大,可選擇的餐廳越多,所以準確度會下降
    40. 40. 距離參數對推薦品質的影響 39 0.5 km 1 km 2 km 3 km 4 km 5 km 10 candidates 43.14% 30.98% 20.54% 15.15% 13.15% 12.13% 20 candidates 57.90% 39.13% 28.93% 20.86% 17.75% 15.98% 30 candidates 67.01% 48.34% 34.26% 25.42% 21.73% 18.22% 0% 10% 20% 30% 40% 50% 60% 70% 80% Accuracy(%) ※ 只看推薦數量小於該距離參數之餐廳數量的情況 距離參數越大,可選擇的餐廳越多,所以準確度會下降
    41. 41. 情境相關性測量模型之係數調整 • 我們搜尋情境相關性測量模型的各項係數 • 使偏好的餐廳更有可能出現在推薦清單的上方 • 我們假設每個係數是獨立的 • 搜尋精確度設定為 0.1 • 如果係數是 0 – 對應之情境維度的值需要分別被考慮 • 如果係數是 1 – 對應之情境維度不影響推薦 • 只對受情境影響的項目進行搜尋(約占總數 1.76%) 𝑝𝑟𝑒𝑑𝑖𝑐𝑡 𝐶𝑆, 𝑝, 𝑡 = 𝑘 𝑢∈𝐶𝑆 𝑢′∈𝑈 𝑠𝑖𝑚 𝑢, 𝑢′, 𝑡 × 𝑠𝑢𝑚(𝑢′, 𝑝, 𝑡) 40 > 𝟎
    42. 42. 係數搜尋結果 𝑪𝒐𝒆𝒇 𝒂 𝑪𝒐𝒆𝒇 𝒔 𝑪𝒐𝒆𝒇 𝒕 𝑪𝒐𝒆𝒇 𝑤 𝑪𝒐𝒆𝒇 𝒎 𝑪𝒐𝒆𝒇 𝒏𝒄 1 1 0.1 0.4 1 1 41 Alone Friend Classmate Colleague Family Lover Alone 1 1 0.8 1 1 0 Friend 1 1 1 0 1 0 Classmate 0.8 1 1 0 1 0 Colleague 1 0 0 1 1 0 Family 1 1 1 1 1 0 Lover 0 0 0 0 0 1
    43. 43. 社交圖與情境資訊對推薦品質的影響 Average Position t-TEST (P Value) Round 1: Non- contextual information 25.29 1 Round 2: Time 22.02 0.11 Round 3: Weekday 24.98 0.89 Round 4: Type of Companion 24.18 0.62 Round 5: All 21.22 0.04 42 ※只看受情境影響的項目
    44. 44. 評價這個系統 • 我們應用 LOOCV 評價這個系統 • 選用基本的 Distance-based 相似度測量法 • 推薦數量固定為 10、20 和 30 家候選餐廳 • 距離參數固定為 0.5、1、2、3、4 和 5 公里 • 與基本的推薦方法對比 – 基於亂數 (Random) – 基於流行性(Popularity) – 我們為團體推薦改寫的協同過濾法(CF) – 我們提出的社交圖與情境感知之協同過濾法(Context-CF) 43
    45. 45. 各方法與距離參數之推薦準確度 44 500 m 1 km 2 km 3 km 4 km 5 km 10 candidates (Random) 47.92% 30.55% 17.72% 13.42% 10.95% 9.28% 10 candidates (Popularity) 55.52% 37.64% 24.19% 15.40% 13.68% 12.27% 10 candidates (CF) 55.14% 38.15% 25.13% 19.03% 16.89% 15.24% 10 candidates (Context-CF) 55.21% 38.17% 25.14% 19.26% 16.96% 15.43% 20 candidates (Random) 62.06% 43.25% 26.63% 19.24% 16.08% 13.87% 20 candidates (Popularity) 69.71% 51.24% 34.36% 24.67% 18.68% 16.93% 20 candidates (CF) 69.73% 50.79% 35.36% 26.88% 23.07% 20.50% 20 candidates (Context-CF) 69.74% 50.84% 35.37% 27.00% 23.27% 20.76% 30 candidates (Random) 69.87% 50.85% 33.74% 24.39% 20.37% 17.32% 30 candidates (Popularity) 75.73% 59.42% 41.31% 31.25% 25.65% 20.03% 30 candidates (CF) 75.99% 59.67% 42.45% 32.48% 28.28% 24.62% 30 candidates (Context-CF) 75.99% 59.68% 42.51% 32.68% 28.32% 24.77% 0% 10% 20% 30% 40% 50% 60% 70% 80% Accuracy(%) 位置與距離參數對準確度影響最大
    46. 46. 各方法與距離參數之推薦準確度 45 500 m 1 km 2 km 3 km 4 km 5 km 10 candidates (Random) 31.46% 21.41% 12.07% 8.90% 6.59% 5.63% 10 candidates (Popularity) 43.79% 30.37% 19.46% 11.11% 9.60% 8.89% 10 candidates (CF) 43.14% 30.98% 20.54% 15.15% 13.15% 12.13% 10 candidates (Context-CF) 43.27% 31.00% 20.56% 15.40% 13.21% 12.34% 20 candidates (Random) 40.83% 27.72% 18.23% 11.90% 9.84% 8.56% 20 candidates (Popularity) 57.87% 39.80% 27.70% 18.26% 12.81% 12.00% 20 candidates (CF) 57.90% 39.13% 28.93% 20.86% 17.75% 15.98% 20 candidates (Context-CF) 57.93% 39.20% 28.95% 21.00% 17.98% 16.28% 30 candidates (Random) 50.11% 33.43% 22.80% 15.55% 12.31% 9.65% 30 candidates (Popularity) 66.31% 47.92% 32.75% 23.93% 18.61% 12.82% 30 candidates (CF) 67.01% 48.34% 34.26% 25.42% 21.73% 18.22% 30 candidates (Context-CF) 67.01% 48.36% 34.34% 25.66% 21.79% 18.40% 0% 10% 20% 30% 40% 50% 60% 70% 80% Accuracy(%) ※只看推薦數量小於該距離之餐廳數量的情況 位置與距離參數對準確度影響最大
    47. 47. 推薦準確度成長率 46 500 m 1 km 2 km 3 km 4 km 5 km 10 candidates -1.20% 2.08% 5.66% 38.66% 37.59% 38.80% 20 candidates 33.74% -1.49% 4.51% 15.01% 40.30% 35.66% 30 candidates 1.05% 0.92% 4.83% 7.24% 17.11% 43.46% -5.00% 0.00% 5.00% 10.00% 15.00% 20.00% 25.00% 30.00% 35.00% 40.00% 45.00% 50.00% Growthrate(%) ※ 本系統(Context-CF)與基於流行性(Popularity)相比 如果使用者的選擇餐廳範圍比較大,本系統可以給出更好的推薦
    48. 48. 結論 • 我們設計一個行動餐廳推薦系統 – 應用 Facebook 開放圖(Open Graph)發現使 用者與其朋友對餐廳的偏好 – 實現團體使用者之餐廳推薦服務 – 使用社交圖(Social Graph)與情境資訊 (Contextual Infomation)增進推薦品質 • 實驗結果顯示 – 本系統在中、長距離(3 到 5 公里)的情境下, 只看推薦數量小於該距離之餐廳數量的情況時, 推薦準確度相對於基於流行性有顯著成長,成 長率約 38% 47
    49. 49. 感謝各位先進蒞臨指導 48 歡迎提問
    50. 50. 統計收集到的資料 項目 比率 受測者男女比(男/女) 1.16 37 / 32 使用者男女比(男/女) 1.13 13309 / 11763 曾對餐廳打卡的使用者男女比(男/女) 0.87 1825 / 2088 曾對餐廳打卡的使用者比率 15.60% 3928 / 25184 種類為餐廳的地點比率 7.21% 2691 / 37305 49 項目 平均值 中位數 標準差 最大值 最小值 受測者朋友數 504.01 423 346.48 2200 34 n=69 受測者年齡 23.28 22 4.99 49 18 n=69 使用者年齡 23.52 22 5.87 107 13 n=25184 曾對餐廳打卡的使 用者年齡 22.99 22 4.17 106 15 n=3928
    51. 51. 各欄位的公開比率 項目 比率 公開年齡的使用者比率 60.40% 15212 / 25184 公開性別的使用者比率 99.56% 25072 / 25184 公開家鄉的使用者比率 30.90% 7782 / 25184 公開公司的使用者比率 47.10% 11861 / 25184 公開學校的使用者比率 80.12% 20178 / 25184 公開家人的使用者比率 60.83% 15319 / 25184 公開情人的使用者比率 15.90% 4003 / 25184 50
    52. 52. 餐廳分布情況 項目 比率 餐廳打卡在大台北地區的比率 67.81% 5604 / 8264 餐廳在大台北地區的比率 48.94% 1317 / 2691 曾對大台北地區餐廳打卡的使用者比率 69.27% 2721 / 3928 51
    53. 53. 使用者與餐廳的各項統計 項目 平均值 中位數 標準差 最大值 最小值 樣本數 使用者對餐廳的打 卡次數 0.34 0 0.99 12 0 n=25184 使用者打卡過的餐 廳個數 0.33 0 0.93 10 0 n=25184 餐廳被打卡的次數 3.23 2 6.31 224 1 n=2691 曾對餐廳打卡的使 用者對餐廳的打卡 次數 2.21 2 1.48 12 1 n=3928 曾對餐廳打卡的使 用者打卡過的餐廳 個數 2.10 2 1.35 10 1 n=3928 52
    54. 54. 餐廳打卡的各項統計 53 項目 平均值 中位數 標準差 最大值 最小值 樣本數 餐廳打卡的餐廳被打 卡次數 1.05 1 0.29 10 1 n=8264 餐廳打卡的打卡者年 齡 22.96 22 3.97 106 15 n=8264 餐廳打卡的同伴平均 年齡 23.55 23 3.91 107 16 n=8264 餐廳打卡的同伴性別 指標(女/總數) 0.56 1 0.48 1 0 n=8264 餐廳打卡的同伴人數 2.76 2 2.43 42 1 n=8264
    55. 55. 餐廳打卡的各項統計 54 0 500 1000 1500 2010/8 2010/10 2010/12 2011/2 2011/4 2011/6 2011/8 2011/10 2011/12 2012/2 2012/4 餐廳打卡數量 月份 0 500 1000 1500 2000 餐廳打卡數量 星期 0 200 400 600 800 1000 1200 1400 0 2 4 6 8 10 12 14 16 18 20 22 餐廳打卡數量 時間 0 200 400 600 800 1000 16171819202122232425262728293031 餐廳打卡數量 打卡者年齡 大部分發生在近半年 周休二日明顯較多 中餐和晚餐時間呈現峰值 打卡者年齡在 21 歲呈現峰值 平均值
    56. 56. 餐廳打卡的各項統計 55 0 200 400 600 800 1000 16171819202122232425262728293031 餐廳打卡數量 同伴平均年齡 0 500 1000 1500 2000 2500 3000 1 2 3 4 5 6 7 8 9 10 餐廳打卡數量 同伴人數 1 10 100 1000 10000 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 餐廳打卡數量 同伴性別指標 1 10 100 1000 10000 餐廳打卡數量 兩位同伴的類型 同伴年齡在 23 歲呈現峰值 常結伴同行 同伴性別均勻分布 朋友數量是其他類型的 10 倍以上 平均值 平均值 平均值
    57. 57. 餐廳打卡的各項統計 56 1 10 100 1000 10000 1 2 3 4 5 餐廳打卡數量 餐廳被打卡次數 1 100 10,000 1,000,000 100,000,000 0 1 2 3 4 總數 每對使用者共同打卡過的餐廳數量 1 10 100 1000 10000 Friend Classmate Colleague Family 餐廳打卡數量 三位以上同伴的類型 (演算法總結) 朋友數量是其他類型的 10 倍以上 只有 1 次打卡的餐廳打卡居多 只有 1 次打卡的餐廳居多 共同打卡過的餐廳以 1 次居多 0 200 400 600 800 1000 1200 1400 1 2 3 4 5 ≧6 餐廳數量 餐廳被打卡次數 平均值 平均值
    58. 58. 系統架構與資料模型 57 Facebook Graph API Data Request Data transformation DB Recommendation Module Retrieval Module A Context-aware and Social Graph based Restaurant Recommender System Data Request Mobile Devices checkin checkin_id author_uid page_id app_id post_id latitude longitude timestamp tagged_uids message page page_id name categories type latitude longitude user uid name birthday_date sex significant_other_id family_ids email employer_ids school_ids user_relationships uid friend_ids classmate_ids colleague_ids family_ids lover_ids
    59. 59. 系統通訊過程 58 Mobile Devices Facebook Graph API Recommender System 8. GET/object?acess_token=… 2. Redirect 3. GET OAuth Dialog 4. 302 Redirect including code parameter 6.GET/oauth/authorize 11. The suggested restaurant list 5. GET recommender system callback URL 7. Access token 9. Data (API response) 1. Login 10. Request a recommendation
    60. 60. 推薦系統的評價指標 • 如果系統推薦流行項目給使用者,使得準確度 非常高,但這些資訊使用者很可能早已知道, 因此不會認為這樣的系統是有價值的 • 一般而言,系統推薦非流行項目會使得準確度 降低,但使用者反而容易發現一些新奇的,自 己找不到的偏好項目 • 因此本系統以協同過濾法為基礎,期望產生令 人滿意的推薦結果;而協同過濾的動機來自於 人們通常會從品味相似的人得到最好的建議 59Source: 刘建国, et al., 个性化推荐系统评价方法综述. 复杂系统与复杂性科学, 2009. 6(003): p. 1-10.
    61. 61. 係數搜尋過程 60 0 5 10 15 20 25 30 35 0 0.2 0.4 0.6 0.8 1 Position Coefficient Age 0 5 10 15 20 25 30 35 0 0.2 0.4 0.6 0.8 1 Position Coefficient Sex Index 21 22 23 24 25 26 0 0.2 0.4 0.6 0.8 1 Position Coefficient Time of Day 24.8 25 25.2 25.4 25.6 25.8 26 26.2 26.4 0 0.2 0.4 0.6 0.8 1 Position Coefficient Weekday
    62. 62. 解釋急遽改變之現象 61 Item Rating A 2 B 1 C 1 D 1 E 1 F 1 G 1 Item Rating A 1.5 G 1 C 0.99 E 0.99 D 0.98 F 0.97 B 0.96 𝑪𝒐𝒆𝒇 𝒂=1 𝑪𝒐𝒆𝒇 𝒂=0.99 Age (a): 𝑟𝑒𝑙 𝑎 𝑡, 𝑡′ = 1, 𝑖𝑓 𝑡. 𝑎 = 𝑡′. 𝑎 𝐶𝑜𝑒𝑓𝑎 𝑎𝑏𝑠(𝑡.𝑎−𝑡′.𝑎) , 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 Validation data Validation data
    63. 63. 係數搜尋過程 62 0 5 10 15 20 25 30 35 0 0.2 0.4 0.6 0.8 1 Position Coefficient Month 0 5 10 15 20 25 30 35 0 0.2 0.4 0.6 0.8 1 Position Coefficient Number of Companion 0 5 10 15 20 25 30 35 0 0.2 0.4 0.6 0.8 1 Position Coefficient Alone-Friend 24.8 24.9 25 25.1 25.2 25.3 25.4 0 0.2 0.4 0.6 0.8 1 Position Coefficient Alone-Classmate
    64. 64. 係數搜尋過程 63 25.25 25.3 25.35 25.4 25.45 25.5 25.55 25.6 0 0.2 0.4 0.6 0.8 1 Position Coefficient Alone-Colleague 25.2 25.3 25.4 25.5 25.6 25.7 25.8 25.9 0 0.2 0.4 0.6 0.8 1 Position Coefficient Alone-Family 25.2 25.22 25.24 25.26 25.28 25.3 0 0.2 0.4 0.6 0.8 1 Position Coefficient Alone-Lover 25 25.5 26 26.5 27 27.5 0 0.2 0.4 0.6 0.8 1 Position Coefficient Friend-Classmate
    65. 65. 係數搜尋過程 64 24.7 24.8 24.9 25 25.1 25.2 25.3 25.4 0 0.2 0.4 0.6 0.8 1 Position Coefficient Friend-Colleague 25.2 25.4 25.6 25.8 26 26.2 26.4 0 0.2 0.4 0.6 0.8 1 Position Coefficient Friend-Family 25.05 25.1 25.15 25.2 25.25 25.3 25.35 0 0.2 0.4 0.6 0.8 1 Position Coefficient Friend-Lover 25.05 25.1 25.15 25.2 25.25 25.3 25.35 0 0.2 0.4 0.6 0.8 1 Position Coefficient Classmate-Colleague
    66. 66. 係數搜尋過程 65 25 25.5 26 26.5 27 0 0.2 0.4 0.6 0.8 1 Position Coefficient Classmate-Family 25.22 25.24 25.26 25.28 25.3 0 0.2 0.4 0.6 0.8 1 Position Coefficient Classmate-Lover 25.25 25.3 25.35 25.4 25.45 0 0.2 0.4 0.6 0.8 1 Position Coefficient Colleague-Family 25.288 25.29 25.292 25.294 25.296 0 0.2 0.4 0.6 0.8 1 Position Coefficient Colleague-Lover 25.275 25.28 25.285 25.29 25.295 0 0.2 0.4 0.6 0.8 1 Position Coefficient Family-Lover
    67. 67. 使用 Web 介面瀏覽餐廳的截圖 66
    68. 68. 使用 Web 介面請求建議的截圖 67
    69. 69. 使用 Mobile 介面的截圖 68

    ×