slide1
Download
Skip this Video
Download Presentation
圖書館推薦系統建置 - 以淡江圖書館資料為例

Loading in 2 Seconds...

play fullscreen
1 / 31

圖書館推薦系統建置 - 以淡江圖書館資料為例 - PowerPoint PPT Presentation


  • 93 Views
  • Uploaded on

圖書館推薦系統建置 - 以淡江圖書館資料為例. 指導教授:魏世杰 研究生:陳慶宇. 緒論 文獻探討 研究方法 實驗及評估 結論和未來目標. 緒論 : 研究動機. 圖書館擁有大量資料 搜尋模式單一,只能使用關鍵詞 若遇 書名用詞或語言不同 ,搜尋結果可能遺漏使用者所需 使用推薦系統改善 [13]. 緒論: 推薦系統. 常用技術 [7] 有: 協同過濾 (Collabrative Filtering) : 社群力量 內容為本 (Content-based) : 文字比對 知識為本 (Knowledge-based) :屬性篩選. 緒論: 本文推薦方法.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '圖書館推薦系統建置 - 以淡江圖書館資料為例' - waite


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

圖書館推薦系統建置-以淡江圖書館資料為例

指導教授:魏世杰

研究生:陳慶宇

slide2
緒論
  • 文獻探討
  • 研究方法
  • 實驗及評估
  • 結論和未來目標
slide3
緒論:研究動機
  • 圖書館擁有大量資料
  • 搜尋模式單一,只能使用關鍵詞
  • 若遇書名用詞或語言不同,搜尋結果可能遺漏使用者所需
  • 使用推薦系統改善[13]
slide4
緒論:推薦系統

常用技術[7]有:

  • 協同過濾(Collabrative Filtering):社群力量
  • 內容為本(Content-based):文字比對
  • 知識為本(Knowledge-based):屬性篩選
slide5
緒論:本文推薦方法
  • 以淡江圖書借閱紀錄及分類號為協同及內容推薦基礎
  • 考量個資問題
    • 當無法取得借閱者身份
      • 提出物推薦物方法
    • 當可取得借閱者身份
      • 提出物推薦物內嵌在人推薦物方法下之做法
  • 結果與Mahout協同推薦法[4]互相比較
slide6
文獻探討:推薦系統[7]
  • 協同推薦(Collabrative Filtering)
    • 用戶為本(User-based)
    • 物品為本(Item-based)
    • 模型為本(Model-based)
  • 內容為本(Content-based)
  • 知識為本(Knowledge-based)
amazon
文獻探討:AmaZOn購物網站
  • 採物品為本推薦,觀察購物車已有商品進行推薦
  • 推薦過程依賴事先建好的相似物品表
    • 相似物品表建立演算法如下[2]:

//計算型錄中每樣物品I1和其餘物品I2相似度

For each item I1 in product catalog

//分別統計所有物品和I1同時購買之次數

For each customer C who purchased I1

For each item I2 purchased by customer C

Record that a customer purchased I1 and I2

//利用和I1同時購買之次數高低計算所有物品和I1相似度

For each item I2

Compute the similarity between I1 and I2

slide8
文獻探討:圖書分類法
  • 杜威十進圖書分類法[14]
    • 美國國會圖書館圖書分類法[15]
      • 例如:「GV943.49 .B5 1998」
    • 中國圖書分類法[11]
      • 例如:「 857.7 /8326 」
mahout
文獻探討:Mahout
  • Mahout [4]為一JAVA寫成具有運算可分散能力(scalable)的機器學習套件,能和Apache Hadoop 分散式架構相結合,有效使用分散式系統來實現高性能計算。
    • 提供協同推薦、分類和分群演算法
      • 協同推薦包含用戶為本、物品為本和斜率1推薦法
mahout user based
文獻探討:Mahout用戶為本推薦法(User-based)

GenericUserBasedRecommender類別[4]

//計算用戶u尚未評價過的所有物品i之可能評價,回傳前面名次物品

for every item i that u has no preference for yet

//計算其餘用戶v對物品i之評價,依照v,u相似度s加權,結合到u對i之評價

for every other user v that has a preference for i

compute a similarity s between u and v

incorporate v’s preference for i, weighted by s, into

running average

return the top items, ranked by weighted average

mahout item based
文獻探討:Mahout物品為本推薦法(Item-based)

GenericItemBasedRecommender類別[4]

//計算用戶u尚未評價過的所有物品i之可能評價,回傳前面名次物品

for every item i that u has no preference for yet

//計算用戶u對其餘物品j之評價,依照i,j相似度s加權,結合到u對i之評價 for every item j that u has a preference for

compute a similarity s between i and j

add u’s preference for j, weighted by s, to running

average

return the top items, ranked by weighted average

mahout 1 slope one
文獻探討: Mahout斜率1推薦法(Slope-one)

SlopeOneRecommender類別[4]

//計算用戶u尚未評價過的所有物品j之可能評價,回傳前面名次物品

for every item i the user u expresses no preference for

//計算用戶u對其餘物品j之評價,依照i,j平均喜好差d,結合到u對i之評價 for every item j that user u expresses a preference for

find the average preference difference between j and i

add this diff to u’s preference value for j

add this to a running average

return the top items, ranked by these averages

slide13
研究方法:問題定義
  • 不可取得借閱者身份時
    • 給定書代碼bid,推薦書本個數n,輸出是一群和bid相關的書集合bid_set={bid1,bid2,...,bidn}。目標是找出一般使用者在借過bid之後將來最可能借的書集合
  • 可取得借閱者身份時
    • 給定用戶代碼uid,推薦書本個數n,輸出是一群和uid相關的書集合bid_set={bid1,bid2,...,bidn}。目標是找出該使用者將來最可能借的書集合
slide14
研究方法:兩層關聯式物推薦物方法

第一層是從給定的書bid,找到同樣有借過此書的使用者u,第二層是從使用者u找出過去所有借過的書b,最後將所有書集合做成聯集bid_mset,回傳重複次數最多的前n名集合bid_set,當作推薦

for every user u who has borrowed book bid

for every book b that user u has borrowed

add book b into multiset bid_mset

convert multiset bid_mset into set book_set

sort book_set by the occurrence count of each bid in decreasing order

bid_set = top n of sorted book_set

return bid_set

slide15
研究方法:結合分類號的兩層關聯式物推薦物方法
  • 當聯集後的書集合bid_mset發生有書出現次數相同情形時,會造成許多書排名相同無法區別的缺點
  • 引入分類號,計算兩書分類號的距離,讓比較靠近給定bid的圖書排名在前做仲裁
    • 所有書分類號依字典字串順序由小排到大,給予排序編號1到m,m為總書數
    • 任一本書bid的排序編號表示為rank(bid)
    • 定義x及y兩書的距離為dist(x,y)=|rank(x)-rank(y)|
    • 出現次數相同的兩本書bid1、bid2,將依據dist(bid1,bid)及dist(bid2,bid)兩距離做仲裁,距離短者排名在前
slide16
研究方法:人推薦物方法

當可以取得借閱者身分時,可以利用借閱者User過去借過的書籍bid?,再利用原來物推薦物方法,找出相關書籍集合bid?_bidset。最後將這些集合聯集起來,再依書籍出現次數多寡排序,若遇次數相同時再利用分類號方法做仲裁,產生最後推薦集合bidmset

slide17
實驗及評估:資料來源
  • 淡江大學圖書館101年度整年份(2011.8.1~2012.7.31)的920172筆流通紀錄
  • 每筆紀錄有如下欄位:
    • TRANSACTION_DATE(借閱日期)
    • PATRON_ID(借閱者ID)
    • BIB_ID(書籍ID)
    • CALL_NUMBER(分類號)
    • TXN_TYPE(借閱情況)
      • ckin(還入)、ckout(借出)、renewal(續借)
  • 本文只篩選留下373834筆借出記錄做為資料集
    • 借閱者18097人
    • 圖書(含CD)103306冊
slide18
實驗及評估:前處理

為方便測試,本文將所有借出紀錄依不同月份時間點做分界線,分界線之前當訓練集,之後當測試集,共切割出11組訓練和測試集

slide19
實驗及評估:實驗步驟
  • 假設可取得借閱者身份,故以人推薦物模式進行評估
  • 對Mahout本身已有三種人推薦物方法進行評估
  • 針對人推薦物模式評估不同內嵌物推薦物方法的好壞
    • m2btop(人推薦物入圍名次門檻)參數範圍介於1~10和10~100(間隔10)
    • b2btop(物推薦物入圍名次門檻)參數範圍介於1~10和10~100(間隔10)
  • 因為屬布林資料,故Mahout用戶為本和物品為本皆使用LogLikelihoodSimilarity相似度方法
  • 每組測試集計算平均精確率時皆以訓練測試集交集人數(介於1676~10424)當除數,再以平均精確率進行比較
mahout 1
實驗及評估:Mahout斜率1方法

(SlopeOneRecommender)

對資料集(M1~M11)進行評估,結果分別是m2btop介於1~10和m2btop介於20~100間隔10。其精確率表現偏低,介於0.05%~0.06%

橫軸表

人推薦物入圍名次個數

mahout1
實驗及評估:Mahout用戶為本方法

(GenericUserBasedRecommender+ LogLikelihoodSimilarity)

推薦結果,其精確率2%為三種Mahout方法中最好的。其中近鄰數量本文只固定取10來使用

橫軸表

人推薦物入圍名次個數

mahout2
實驗及評估:Mahout物品為本方法

(GenericItemBasedRecommender+ LogLikelihoodSimilarity)

推薦結果,其精確率介於0.7%~1%,在斜率1和用戶為本之間

橫軸表

人推薦物入圍名次個數

mahout3
實驗及評估:Mahout三種推薦方法精確率比較圖

橫軸表

人推薦物入圍名次個數

縱軸表

平均精確率

slide24
實驗及評估:兩層關聯式物推薦物方法未結合分類號

參數使用到m2btop(人推薦物入圍名次門檻)和b2btop(物推薦物入圍名次門檻),其精確率介於2.5%~7.9%之間

橫軸表

人推薦物入圍名次個數

縱軸表

物推薦物入圍名次個數

mahout4
實驗及評估:Mahout物推薦物方法

把人推薦物中間部分改成Mahout物推薦物方法,發現其精確率介於2.1%~4.4%之間,不如內嵌兩層關聯式推薦法

橫軸表

人推薦物入圍名次個數

縱軸表

物推薦物入圍名次個數

slide26
實驗及評估:兩層關聯式物推薦物方法結合分類號進行推薦

計算分類號距離,找出最相近的來做推薦排名。其精確率結果介於2.6%~8.1%間,整體而言比未結合分類號稍佳

橫軸表

人推薦物入圍名次個數

縱軸表

物推薦物入圍名次個數

slide27
實驗及評估:使用不含本身兩層關聯式物推薦物結合分類號方法

兩層關聯式物推薦物方法會把給定物品本身也加入推薦,所以測試把本身排除的推薦結果,發現其精確率介於2.2%~6.9%之間,不如包含本身優秀,顯示圖書借閱行為中,重複借閱的可能性高,所以最好推薦包含本身

橫軸表

人推薦物入圍名次個數

縱軸表

物推薦物入圍名次個數

slide28
實驗及評估:本文幾種推薦方法精確率比較圖

橫軸表

人推薦物入圍名次個數

縱軸表

平均精確率

slide29
實驗及評估:七種推薦法精確率比較圖

橫軸表

人推薦物入圍名次個數

縱軸表

平均精確率

slide30
結論和未來目標
  • 為了增加借閱者找書效率,本文提出兩層關聯式物推薦物方法,適用於借閱者身份開放與否之場合
  • 兩層關聯式物推薦物方法優於Mahout三種方法,高出5%以上
  • 兩層關聯式物推薦物方法在結合分類號時效果更好,可提升3%
  • 利用兩層關聯式物推薦物方法推薦時宜包含給定物品本身,否則表現下降達14%
  • 未來本推薦系統將做成網站服務(web service),內嵌在圖書查詢系統網頁上
slide31
END

謝謝大家

ad