本站小編為你精心準備了淺談餐廳群體推薦模型與系統設計參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
摘要:在“互聯網+”時代,消費者外出就餐時更多的傾向于通過美食類網站或者APP選擇餐廳。但在群體外出就餐時如何高效、迅速地找到大部分人滿意的餐廳給現有的餐廳推薦系統帶來了新的挑戰。文章從社交網絡的角度,在分析餐廳群體就餐信息的基礎上,構建了基于協同過濾算法的餐廳推薦模型,在此基礎上提出了餐廳群體推薦系統設計方案。融合社交網絡的餐廳群體推薦算法顯著提高了群體推薦的效率,基于此設計的系統實現了推薦餐廳排序、就餐攻略分享、就餐體驗評價等功能。
關鍵詞:社交網絡;群體推薦系統;餐廳;系統設計
1概述
在經濟快速發展的“互聯網+”時代,人們更加注重生活的品質,外出就餐的次數增多,對餐廳的要求也進一步提升,人們更傾向于通過美食類網站或APP選擇合適的餐廳。然而,已有的餐廳推薦工具(如:美團、大眾點評等)大多針對個人用戶,無法滿足群體外出聚餐情景下的推薦需求,推薦結果不能讓聚餐群體達成滿意的共識。隨著社交網絡的普及和發展,人們習慣于在社交網絡上分享衣食住行,于是,基于社交網絡推薦餐廳成為可能,張重騏[1]對推薦系統的需求分析與再設計是基于社交網絡模型的進行的。相比于簡單加權處理的群體推薦,基于社交網絡的餐廳群體推薦系統更能從用戶的行為數據中挖掘出用戶的價值,創造經濟利益。此外,基于社交網絡的餐廳群體推薦系統還有以下優點:第一,基于社交網絡的餐廳群體推薦系統可以根據用戶的社交圈給用戶提供他更感興趣更信任的餐廳信息/評價內容,例如信息內容、評價的者不同用戶的信任度和主觀滿意度也不同。第二,基于社交網絡的餐廳群體推薦系統中可以挖掘出更深層次的用戶關系,所有用戶在此系統中的關系形成一張網,產生群聚效應。例如根據共同好友的多少分析單個用戶之間的交集,推薦他們共同感興趣的餐廳信息。第三,基于社交網絡的餐廳群體推薦系統推薦效率更高。隨著系統內用戶增長,得到推薦結果的時間也會增加,但基于社交網絡的群體餐廳推薦系統可以利用用戶的關系網劃分用戶的等級,減少時間成本。多數個人推薦系統使用的推薦算法為協同過濾算法,對群體推薦算法的研究也已經起步。協同過濾算法可分為以用戶為基礎的協同過濾、以項目為基礎的協同過濾、以模型為基礎的協同過濾。基于用戶的協同過濾首先收集用戶信息,主要是用戶的評分和歷史瀏覽記錄,其次,尋找與用戶評分高、瀏覽次數多的相似物品,最后根據相似度從高到低排序形成推薦集合向用戶進行展示。Castro等提出了共識驅動的群體推薦決策模型,并探討了其在向群體用戶推薦電影中的應用。李汶華等[2]提出了一種基于案例推理和協商的群體推薦決策模型。王茜等[3]提出了一種考慮群體用戶接受度及相似度的群體推薦決策模型。陳俠和樊治平[4]通過定義有關區間數決策矩陣的區間數向量,給出了決策個體與群體判斷的共識性分析方法和基于區間數決策矩陣的群體判斷共識性的判別方法。當群體外出就餐時,群體滿意度不高的原因是選擇餐廳產生分歧時處理分歧的隨意性。群體用戶在選擇餐廳出現分歧,最終的選擇一般都是隨機法或者是群體中的一個或極少數人決定的,選擇的餐廳受隨機因素的影響較大,整個群體的就餐滿意度并不高。然而,現有的餐廳推薦系統大多只能針對個體進行推薦,不能很好地解決這個問題。因此,需要一個客觀而科學的群體就餐推薦系統,通過科學理性的運算來平衡就餐者之間的口味偏好、餐館的人均價格和距離遠近等因素,提高人們的就餐滿意度。本文基于社交網絡對用戶的需求進行了分析,構建了基于協同過濾算法的餐廳推薦模型,對餐廳群體推薦系統重新解讀,提出了一種基于社交網絡的餐廳群體推薦系統的總體設計與詳細設計方案。本設計可以實現基于社交網絡來進行餐廳推薦,并解決現有餐廳個人推薦系統在為群體用戶進行推薦時群體共識度不高的問題。
2社交網絡下餐廳群體推薦系統的用戶信息需求分析
群體餐廳推薦系統有兩個面向群體,一個是選擇餐廳的用戶,另一個是在本系統上展示餐廳的商家。本系統能利用社交網絡的優勢,更好的為用戶推薦適合的餐廳。本部分首先對社交網絡進行介紹,其次分析了社交網絡下餐廳群體推薦系統的用戶信息需求。
2.1社交網絡
傳統的推薦系統可以利用的資源有用戶行為數據和用戶與信息特征,根據用戶信息特征推測用戶間關系,社交網絡直接給出了用戶間的關系,推薦結果更加準確。社交網絡中利用圖譜傳遞信息,其重要的圖譜為關系圖譜和興趣圖譜。關系圖譜是用戶線下關系的線上映射,興趣圖譜是各個用戶之間相似興趣建立起來的[5]。本文的群體推薦系統結合兩種圖譜,基于好友進行推薦,同時可以發現興趣相同的附近的人,建立新的用戶線上關系。基于社交網絡的群體推薦系統增加了用戶對推薦結果的信任度。
2.2餐廳群體推薦的信息需求分析
本部分對餐廳群體推薦的信息需求進行分析,根據調研結果,用戶對餐廳推薦系統的信息需求如下表1。當問及“您希望此系統產生推薦時包含哪方面的信息”時,80.49%的被訪者希望系統具有餐廳價格對比的信息,60.98%的被訪者希望系統具有就餐攻略的信息,58.54%的被訪者希望系統具有用戶評價的信息,51.22%的被訪者希望系統具有自己所在地點和餐廳距離遠近的信息,43.90%的被訪者希望系統具有餐廳排行的信息。統計數據總體說明餐廳的消費高低是消費者最關心的問題。系統的價格對比的信息可以使用戶根據群體的收入范圍來選擇更適合本群體的餐廳,能夠提高每個用戶的滿意度;就餐攻略的信息可以使用戶在分享與接受分享中提升用餐體驗;用餐評價信息可以使其他用戶知道每一個用戶的個人滿意度和此群體在某餐廳就餐之后群體的滿意度,據此來更好的做出選擇;距離遠近的信息可以使用戶更好的根據自己的時間選擇合適距離的餐廳,乘坐合適的交通工具出行,更加提高了時間的有效利用率;用戶可以根據餐廳排行信息更好選擇自己沒去過但是可能符合自己期待的信息。在社交網絡上,餐廳價格對比的信息被公開的展示在系統推薦界面上,信息不對稱的情況減少;就餐攻略和用戶評價等信息能夠更快速的在用戶間傳播,用戶在選擇餐廳時可以根據這些可信度更高的、主觀的用戶信息進行選擇;餐廳排行信息提供了餐廳的客觀優勢。
3基于協同過濾算法的餐廳推薦系統模型構建
本系統首先確定用戶的權重,在將用戶劃分相似簇,利用基于用戶的協同過濾算法,建立多目標決策模型,提高了推薦準確度。
3.1用戶在群體中的權重確定
在社交網絡中,孤立的用戶極少存在,用戶之間都有一定的熟識程度[7](信任度),熟識度通過社交網絡中的圖譜判斷。群體共n個用戶中某一用戶為i,此用戶對群體中其他用戶的信任度之和為Ti,群體中所有用戶到群體其他用戶的信任度之和為:
3.2相似用戶簇劃分
利用群組功能,將一起就餐的用戶劃分為一組。將就餐群體中的用戶根據用戶注冊時選擇的口味偏好標簽分類,口味偏好相似度高的用戶合并為一簇,將此就餐群體分為2~4簇。每一用戶簇重新聚合口味偏好,其權重相當于簇中每個成員的權重之和。假設共m簇,第k個簇中的用戶數為nK,其中第i個用戶對應的權重為wik,則該簇的權重為:3.3推薦列表聚集利用以用戶為基礎的協同過濾算法,即用相似度度量方法得到目標用戶簇的最近鄰居[6],產生每一相似用戶簇的餐廳推薦列表。設用戶簇u的最近鄰居集合用NNu表示,則用戶簇u對項i的預測評分Pu,i,可通過此用戶簇對最近鄰居集合NNu中項的評分得到,公式如下:3.4推薦項目排序計算出每一簇對此推薦列表中餐廳的模糊偏好關系矩陣,建立多目標決策模型[7]:
4基于社交網絡的餐廳群體推薦系統設計
4.1總體設計
本系統采取B/S模式,架構主要分為表示層、業務邏輯層和數據層。系統框架如圖1所示。表示層是直接與用戶接觸的部分,需要有友好的交互界面,使用微信小程序WXML等語言編寫。表示層主要包括用戶注冊登錄、信息維護、群組管理等頁面,承載了用戶交互的重要任務和餐廳推薦結果展示等核心功能。業務邏輯層包括用戶和餐廳的信息管理、數據分析與轉換、推薦結果計算和推薦模型優化等功能,是支持系統運行的關鍵部分。作為表示層和數據層之間的連接,業務邏輯層處理用戶操作并給出結果,用于表示層的頁面展示或數據層的存儲。數據層為本系統的運行提供數據存儲服務,存儲了用戶、餐廳、群體、推薦模型等數據,同時記錄系統日志,保證系統數據安全。
4.2詳細設計
4.2.1流程設計從用戶的角度出發,系統主要包含用戶信息管理、群組管理、餐廳推薦、評價和反饋等功能,系統數據流圖如圖2所示。4.2.2數據庫設計本系統的數據庫包括用戶、餐廳、群組等多個表,實體-關系圖如圖3所示。數據庫的關系模式設計如下,共包含8個表:用戶(用戶名,密碼,性別,年齡,地區,頭像,個人描述,用餐偏好)餐廳(餐廳號,餐廳名,風格,口味)群組(群組號,群組名,群組類別,推薦方式,群主用戶名)攻略(用戶名,時間,內容)用戶加群(用戶名,群組號)推薦記錄(群組號,推薦時間,餐廳號,群體評分)評價(用戶名,餐廳號,評價時間,評分,評價內容)意見(用戶名,提交時間,意見類別,意見內容)
4.2.3系統功能設計本節將對系統應具備的功能進行設計。餐廳群體推薦系統需要包含通用的用戶注冊登錄等基礎功能外,還需要實現數據采集處理、群組創建、群體偏好分析、餐廳推薦、攻略分享和反饋等功能。(1)單用戶功能設計用戶注冊功能:新用戶初次使用需要注冊或使用第三方帳號登錄,同時系統展示本系統的歡迎界面,系統展示友好的歡迎界面,請用戶填寫用戶名、密碼、性別、年齡等信息,然后使用生動形象的可視選項引導用戶完成用餐偏好的采集并存入后臺。用戶登錄功能:已完成注冊的用戶在使用系統前需要輸入用戶名密碼或使用第三方賬號進行登錄,驗證通過后進入系統。群組功能:本系統面向群體推薦餐廳,需要將個體用戶聯結形成群組,分析并展示群組的特征。用戶可以建立群組并分享邀請碼,也可使用邀請碼加入已有的群組,還可以使用面對面建群或微信群鏈接等方式加入群組。攻略分享功能:同城用戶可以在平臺上分享用餐攻略,分享自己的用餐經歷或體驗他人的美好用餐回憶。餐廳發現功能:用戶點擊地圖上已登入本系統的餐廳,可以看到餐廳內部實景、評分、口味傾向、用戶主觀評價以及適合何種群體聚餐等信息,用戶也可標注新餐廳并獲得獎勵。就餐體驗評價功能:用戶在前往本系統推薦的餐廳用餐后,用戶在用餐后對餐廳環境、食物質量、口味等做出評價,并記錄用餐滿意度,系統通過計算優化在注冊時采集的用戶用餐偏好信息。個人信息維護功能:用戶可以修改更新系統中的個人信息,也可以重新進行用餐偏好采集,使推薦結果更適合自己。意見反饋功能:用戶可以向我們反饋意見或建議,包括小程序存在的程序問題、希望添加的功能等。(2)群體用戶功能設計群組信息維護功能:用于維護群組信息,可修改群組類別、群組名稱,設置群主、管理員等。其中群組類別等的準確設置可以使推薦結果更適合本群體。推薦方式設置功能:用于設置餐廳推薦方式,用戶可選擇更適合本群體的推薦方式,使推薦結果更令人滿意。在每次發起推薦前,可再次選擇。數據處理與分析功能:群體用戶中有人修改了自己的用餐偏好后,群體的偏好也可能發生變化。為減少推薦時花費的時間,需要進行數據預處理。群體用戶發起聚餐時,根據設置的推薦方式以及去過的餐廳等發起參數不同,仍然需要再次處理數據,從而生成推薦結果。餐廳推薦結果展示功能:系統生成推薦結果后,采用簡潔、美觀、圖文并茂的方式展示推薦結果,同事顯示用戶所關心的距離遠近、人均價格、餐廳風格等信息,并根據群體信息和偏好列舉推薦原因。推薦結果評價功能:用戶在看到推薦結果時、前往餐廳就餐后均可就推薦的餐廳與自身、群體偏好之間的吻合度分別進行評價,評價數據用于推薦方式的優化調整。
5結論
本文分析了在社交網絡基礎上的群體推薦的信息需求,構建了基于協同過濾的推薦模型,提出了系統的總體設計和詳細設計方案。發現用戶希望此系統具有餐廳價格對比、就餐攻略、用戶評價等信息,社交網絡加速了這些信息的傳播;社交網絡更好展示了用戶間的關系,使得基于協同過濾的推薦模型得出的結果更加滿足群體用戶的期待;基于此的系統設計極大滿足了用戶的實際需求,提高了推薦結果的準確度和效率。對群體餐廳推薦系統的研究是群體推薦系統的進一步發展,一定程度上加快了餐廳群體推薦系統開發的步伐。
參考文獻:
[1]張重騏.基于社交網絡模型推薦系統的需求分析與再設計[A].清華大學.設計驅動商業創新:2013清華國際設計管理大會論文集(中文部分)[C].清華大學:清華大學美術學院工業設計系,2013:8.
[2]李汶華,熊曉棟,郭均鵬.一種基于案例推理和協商的群體推薦算法[J].系統工程,2013,7:93-98.
[3]王茜,鄧偉偉,喻繼軍.一種考慮群成員接受度及相似度的群體推薦算法[J].計算機應用研究,2017,34(11):3285-3290,3298.
[4]陳俠,樊治平.關于區間數決策矩陣的專家群體判斷共識性研究[J].運籌與管理,2008,17:127-133.
[5]李奕杭,于世東.基于社交網絡的群體推薦系統[J].科技創新與應用,2014(15):61.
[6]張雪文.智能推薦系統中協同過濾算法的研究[D].上海交通大學,2008.
[7]趙欣.基于社交網絡的群體推薦系統[D].電子科技大學,2013.
作者:劉思宇 陳挺 單位:河海大學