專題投影片 - 資料庫系統實驗室

Download Report

Transcript 專題投影片 - 資料庫系統實驗室

音樂推薦系統
指導教授:張玉盈
組員:B952040021
B963040025
B963040033
B963040041
鄭宇哲
賴威儒
徐嘉隆
施博修
1
為什麼需要音樂推薦?
我們身處網際網路發達的年代,網路上有各
式各樣的音樂資源讓我們去搜尋和利用。
 但是除了yahoo的keyword-based
searching以及書籍推薦的Amazon。推薦音
樂的系統相當少。
 所以我們希望做出一個能根據使用者喜好來
推薦音樂的系統。

2
專題目的

實作針對使用者喜好來做音樂推薦系統,依
據使用者曾經存取過的音樂項目為基礎,推
薦給使用者可能喜歡的音樂類型,幫助使用
者找尋他喜歡的音樂項目。並且提供線上播
放音樂的服務。
3
研究方法-系統架構圖
4
研究方法-音樂推薦方法
目前在音樂推薦系統中比較常被應用的推薦
方法主要有2種
 Content-Based(CB) method與
Collaborative(COL) method
 在本專題中採取的是合作式的推薦方法,除
了可以針對使用者個人做推薦外,也有讓其
他使用者幫忙推薦的機制在。

5
研究方法-使用者分群
利用歷史紀錄(user access history)來分析使用
者的興趣(interest)和行為(behavior),將有類
似興趣和行為的使用者分為同一群
 同群使用者之間會互相影響彼此得推薦結果
 此階段目的在於求出分群所需的資訊
- interest table
- behavior table
- I-B(Interest-Behavior) matrix
- I-B(Interest-Behavior) vector

6
概念圖

先利用access history的資訊建立Interest
table 跟 Behavior table,再求出Interest跟
Behavior 的support,最後建構
I-B(Interest-Behavior) matrix
Interest
table
Access
history
I-B matrix
I-B vector
Behavior
table
7
Support



Support是將使用者的興趣以及行為量化,便於之後
I-B matrix的建立
Support值大的表示使用者比較喜歡這個音樂類型,
Support值小的表示使用者比較不喜歡這個類型,
我們會過濾掉Support值較小者,因為他們不重要,
留著會影響使用者的特性
count : 這個音樂類型在這幾筆存取記錄中被聽的次數
Tc : 最新的一筆交易
FT : 這個音樂類型在這幾筆存取記錄中
8
Interest table
Music group
count
First
transaction(FT)
support
A
2
T1
0.4
B
2
T2
0.5
C
4
T1
0.8
D
2
T3
0.67
E
3
T1
0.6
F
3
T2
0.75
G
1
T3
1
9
I-B matrix& I-B vector
A
B
C
D
E
F
G
A
B
C
D
E
F
G
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
1
0
0
0
1
0
0
0
0
1
0
1
I-B vector = (0000001,000000,11010,0010,000,10,1)
10
研究方法-分群方法
目標:將行為類似的使用者分到同一群
 分群依據:使用者各自的Interest-Behavior
vector

如何分群?
11
研究方法-K-means
描述:是一種分群方法。將n個點分成k個族
群。每個點皆屬於最靠近的質心的那一族群。
 輸入資料:
◦ {x1, x2, …, xn}-n個空間座標的點
◦ k值-要分成多少族群
◦ d值-該空間的維度

12
研究方法-K-means

以2維空間上的7個點分成3群作例子:
13
研究方法-K-means
14
研究方法-COL method推薦實作

此推薦方法會對使用者的access history資料
做分析,根據使用者的存取記錄去推算出使
用者對各種類型的音樂感興趣的程度。並且
依據與該使用者同一群的其他人的喜好來幫
忙推薦音樂的類型。
15
A:被推薦者
B,C:與被推薦者同一群的使用者
User history of
A
Preference table
of A
User history of
B
Preference table
of B
User history of
C
Preference table
of C
Reference table of A – Preference table of A
算
數
平
均
Reference table of
A
Difference table of
A
將
權
值
大
於
零
者
依
照
比
例
來
推
薦
Recommendation
table of A
16
建立preference table
Weight 的計算
 以取五筆transactions為例

T8中 T8
A個數 權重
0 X .4096
T9中 T9
A個數 權重
+
0 X .512
T10中 T10
A個數 權重
+
2 X .64
T11中 T11
A個數 權重
+
1 X .8
T12中 T12
A個數 權重
+
1X 1
=
A的
權重
3.08
17
COL method
Reference table of UA
18
COL method
Difference table of UA
推薦結果表(推薦20首音樂為例)
19
開發工具
使用語言- Java
 整合開發環境- netBeans、Eclipse
 資料庫管理工具- phpmyadmin
 伺服器管理工具- wamp

20
Q&A
21