本發(fā)明涉及一種推薦系統(tǒng),尤其是能夠根據(jù)用戶的提問給出推薦的一種智能推薦系統(tǒng),屬于推薦系統(tǒng)的技術(shù)領(lǐng)域。
背景技術(shù):
推薦系統(tǒng)現(xiàn)已廣泛應(yīng)用于很多領(lǐng)域,其中最典型并具有良好的發(fā)展和應(yīng)用前景的領(lǐng)域就是電子商務(wù)領(lǐng)域。同時(shí)學(xué)術(shù)界對(duì)推薦系統(tǒng)的研究熱度一直很高,逐步形成了一門獨(dú)立的學(xué)科。然而,現(xiàn)有的推薦系統(tǒng)在精確度、功能、適用范圍等方面仍然不能完全滿足用戶的需求。在設(shè)計(jì)方面,現(xiàn)有的推薦系統(tǒng)僅是根據(jù)用戶的歷史訪問數(shù)據(jù)進(jìn)行分析,并沒有根據(jù)用戶的提問進(jìn)行分析;在應(yīng)用方面,現(xiàn)有的推薦系統(tǒng)個(gè)性化推薦廣泛應(yīng)用于電子商務(wù)、網(wǎng)絡(luò)視頻音樂、個(gè)性化閱讀、個(gè)性化郵件以及社交網(wǎng)絡(luò)等,但是并沒有針對(duì)生鮮食品方面的推薦。
“民以食為天,食以安為先”,目前人們對(duì)于食品安全問題非常重視,十分關(guān)注食物的營養(yǎng)搭配等問題,目前的推薦系統(tǒng)無法滿足人們的需要,亟需一個(gè)智能推薦系統(tǒng)來解決人們關(guān)于食品的相關(guān)疑問作出針對(duì)性的推薦。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是克服現(xiàn)有技術(shù)中存在的不足,提供一種能夠根據(jù)用戶的提問給出推薦的智能推薦系統(tǒng)。其結(jié)構(gòu)清晰,能夠回答用戶的提問,并根據(jù)數(shù)據(jù)庫中已有的數(shù)據(jù)智能的給出推薦,同時(shí)將其中的推薦算法分布式化提高了算法的效率。
按照本發(fā)明提供的技術(shù)方案,所述的面向生鮮食品的智能推薦系統(tǒng),包括用戶交互的業(yè)務(wù)層,進(jìn)行數(shù)據(jù)處理分析的算法層,數(shù)據(jù)存儲(chǔ)的存儲(chǔ)層以及用于系統(tǒng)維護(hù)的管理層。
所述算法層負(fù)責(zé)整個(gè)系統(tǒng)的數(shù)據(jù)處理,算法層通過分析用戶的提問,選擇合適的算法處理數(shù)據(jù)庫中的數(shù)據(jù),并將處理后的結(jié)果可視化后呈現(xiàn)給客戶。其中還需要將其中的推薦算法進(jìn)行分布式化以提高算法的計(jì)算效率。
所述業(yè)務(wù)層主要是用戶提問的web界面,包括簡單的地點(diǎn)選擇,登陸信息,以及供用戶詢問的提問框以及顯示結(jié)果的顯示框。
所述的存儲(chǔ)層主要包括mysq1數(shù)據(jù)庫以及hdfs文件系統(tǒng)。mysq1數(shù)據(jù)庫主要保存用戶相關(guān)數(shù)據(jù)以及相應(yīng)的常識(shí)性數(shù)據(jù)。將mysq1中的數(shù)據(jù)同步到hdfs文件系統(tǒng)中,用于分布式推薦算法。
所述管理層主要包括用戶管理及信息更新兩個(gè)部分用于管理用戶信息和更新相關(guān)數(shù)據(jù)。
系統(tǒng)的工作方式如下:
步驟1、用戶在網(wǎng)頁上進(jìn)行登錄,選擇相應(yīng)地點(diǎn)在咨詢框里輸入關(guān)鍵詞。
步驟2、系統(tǒng)調(diào)用分詞算法提取關(guān)鍵字。
步驟3、通過比較關(guān)鍵字,根據(jù)結(jié)果分成以下兩種情況:
1)簡單的常識(shí)性問題我們則直接從數(shù)據(jù)庫中搜索客觀答案,如蘋果營養(yǎng)成分。分詞結(jié)果為蘋果、營養(yǎng)、成分。則從數(shù)據(jù)庫中搜索營養(yǎng)表中key值為蘋果的元組的營養(yǎng)值直接返回給用戶。如螃蟹搭配禁忌,分詞結(jié)果中有“搭配”,則從搭配表中key值為螃蟹的元組中的搭配列值直接返回給用戶。
2)若不是簡單的常識(shí)性問題,需要相應(yīng)的分析給出答案的則調(diào)用相應(yīng)的算法給予推薦。分詞結(jié)果中有“適合”等相應(yīng)的詞時(shí),我們則調(diào)用模糊綜合評(píng)價(jià)法,給出相應(yīng)的結(jié)論。分詞結(jié)果中有“哪”等相應(yīng)詞時(shí)我們則調(diào)用下面介紹的關(guān)聯(lián)規(guī)則算法,給出相應(yīng)的推薦結(jié)果。
步驟4、將推薦結(jié)果在顯示框里顯示出來。
本發(fā)明的優(yōu)點(diǎn)是:本發(fā)明綜合了智能問答和推薦系統(tǒng)構(gòu)建了一個(gè)面向生鮮食品的智能推薦系統(tǒng)。一方面根據(jù)用戶的提問,根據(jù)數(shù)據(jù)庫中的常識(shí)性數(shù)據(jù)直接給出答案,另一方面通過推薦算法分析歷史數(shù)據(jù)給予用戶合理的推薦。同時(shí)為了提高算法的效率,將其中的關(guān)聯(lián)規(guī)則推薦算法在hadoop集群上進(jìn)行分布式化。提高了算法的工作效率??傮w來說,在食品領(lǐng)域提出了一種新的推薦系統(tǒng),在回答用戶相關(guān)疑問的同時(shí)給予智能推薦。
附圖說明
圖1為本發(fā)明的整體結(jié)構(gòu)框圖。
圖2為本發(fā)明的整體工作流程圖。
具體實(shí)施方式
下面結(jié)合具體附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明。
為了回答用戶在生鮮食品方面的疑問,并在回答疑問的同時(shí)根據(jù)情況給出推薦。經(jīng)過對(duì)現(xiàn)有的問答系統(tǒng),推薦系統(tǒng)進(jìn)行深入分析。從支持的開發(fā)語言、可靠性、可擴(kuò)展性等角度進(jìn)行評(píng)估,在各項(xiàng)指標(biāo)權(quán)衡考慮后,綜合了現(xiàn)有的問答系統(tǒng)和推薦系統(tǒng)。利用已有的分詞算法以及改進(jìn)的關(guān)聯(lián)規(guī)則算法進(jìn)行數(shù)據(jù)的分析。同時(shí)整合算法層、存儲(chǔ)層、業(yè)務(wù)層以及管理層構(gòu)建了一個(gè)面向生鮮食品的智能推薦系統(tǒng)。
系統(tǒng)的整體架構(gòu)如圖1所示,本系統(tǒng)的核心模塊為進(jìn)行數(shù)據(jù)處理分析的算法層。此外還包括用戶交互的業(yè)務(wù)層,數(shù)據(jù)存儲(chǔ)的存儲(chǔ)層以及用于系統(tǒng)維護(hù)的管理層。各個(gè)模塊之間相對(duì)獨(dú)立但又緊密結(jié)合在一起。為了方便描述整個(gè)系統(tǒng)的工作過程,現(xiàn)詳細(xì)介紹推薦系統(tǒng)的各個(gè)模塊。
1.算法層
算法層是本系統(tǒng)的核心主要進(jìn)行數(shù)據(jù)的處理分析。它擁有三個(gè)相應(yīng)的算法:分詞算法、模糊綜合評(píng)價(jià)法以及改進(jìn)的orar關(guān)聯(lián)規(guī)則算法。其中分詞算法主要是對(duì)用戶的提問進(jìn)行分詞,以得出用戶提問的關(guān)鍵信息。并根據(jù)分詞的結(jié)果進(jìn)行分析。模糊綜合評(píng)價(jià)法主要是綜合各個(gè)評(píng)價(jià)因素,給出評(píng)分值,根據(jù)評(píng)分值從而給出相應(yīng)的結(jié)論。改進(jìn)的關(guān)聯(lián)規(guī)則算法則是根據(jù)歷史數(shù)據(jù)得出強(qiáng)關(guān)聯(lián)規(guī)則從而給予相應(yīng)的推薦。
2.業(yè)務(wù)層
主要是用戶提問的web界面,包括簡單的地點(diǎn)選擇,登陸信息,以及供用戶詢問的提問框以及顯示結(jié)果的顯示框。
3.存儲(chǔ)層
主要包括mysq1數(shù)據(jù)庫以及hdfs文件系統(tǒng)。mysq1數(shù)據(jù)庫主要保存用戶相關(guān)數(shù)據(jù)以及相應(yīng)的常識(shí)性數(shù)據(jù)。將mysq1中的數(shù)據(jù)同步到hdfs文件系統(tǒng)中,用于分布式推薦算法。
4.管理層
主要包括用戶管理及信息更新兩個(gè)部分用于管理用戶信息和更新相關(guān)數(shù)據(jù)。
下面為本系統(tǒng)的具體工作流程,如圖2所示:
步驟1、用戶在網(wǎng)頁上進(jìn)行登錄,選擇相應(yīng)地點(diǎn)在咨詢框里輸入關(guān)鍵詞。
步驟2、系統(tǒng)調(diào)用分詞算法提取關(guān)鍵字。
步驟3、通過比較關(guān)鍵字,根據(jù)結(jié)果分成以下兩種情況:
1)簡單的常識(shí)性問題我們則直接從數(shù)據(jù)庫中搜索客觀答案,如蘋果營養(yǎng)成分。分詞結(jié)果為蘋果、營養(yǎng)、成分。則從數(shù)據(jù)庫中搜索營養(yǎng)表中key值為蘋果的元組的營養(yǎng)值直接返回給用戶。如螃蟹搭配禁忌,分詞結(jié)果中有“搭配”,則從搭配表中key值為螃蟹的元組中的搭配列值直接返回給用戶。
2)若不是簡單的常識(shí)性問題,需要相應(yīng)的分析給出答案的則調(diào)用相應(yīng)的算法給予推薦。分詞結(jié)果中有“適合”等相應(yīng)的詞時(shí),我們則調(diào)用模糊綜合評(píng)價(jià)法,給出相應(yīng)的結(jié)論。
分詞結(jié)果中有“哪”等相應(yīng)詞時(shí)我們則調(diào)用下面介紹的關(guān)聯(lián)規(guī)則算法,給出相應(yīng)的推薦結(jié)果。
步驟4、將推薦結(jié)果在顯示框里顯示出來。