二 二
二、 、 、 、 文獻探討 文獻探討 文獻探討 文獻探討
2.1 社會性的使用者分享系統 社會性的使用者分享系統 社會性的使用者分享系統 社會性的使用者分享系統 Social sharing system
社會性的使用者資源分享系統(Social sharing system),常見的有 CiteULike
(http://www.citeulike.org)、Flickr (http://www.flickr.com)、del.icio.us (http://del.icio.us)。
CiteULike 可以讓使用者管理、分享讀過的論文,Flickr 可以讓使用者管理、分享照片,
del.icio.us 是讓使用者管理、分享網路書籤。雖然這些網站所分享的資源不同,但是他 們的運作方式都是相同的:使用者登入之後,將要分享的資源上傳,並且貼上標籤。或 是瀏覽別人的標籤與資源的關聯。讓使用者願意將資料放在網路上的原因,一是不用加 裝其他程式,二能在有網路的狀態下,隨時隨地管理、瀏覽自己的標籤與資源的關聯,
不受限於必須使用自己的電腦。
標籤系統成功的應用,從貼標籤行為來看,Rashmi Sinha [9](2005)認為,「貼標籤的 動作減少了做決定的動作(決定對的分類),對於大多數的人而言是免除了分析抉擇的過 程」1。因此可以鼓勵使用者整理及管理自己所擁有的資源。
圖 1 貼標籤背後的認知過程[9]
1 原文:”tagging eliminates the decision - (choosing the right category), and takes away the analysis-paralysis stage for most people.”
圖 2 分類背後的認知過程[9]
Hsieh et al {Hsieh, 2008 #48}(2008)認為下列四種資源適合標籤系統(1)非文字格 式,例如圖片,(2)具有多重概念的檔案,例如論文,(3)需要經常搜尋重訪的資料,例 如論文參考資料,(4)數量很大又缺乏適合檔名的檔案。因此,原本不易分類的資源,在 標籤系統上可以經由標籤與搜尋(search)的使用,降低整理與資訊提取(retrieval)的困難 度,提高使用者貼標籤的意願。
貼標籤且分享是一個鬆散社群互利的活動,使用者不只是從整理自己己有的資源獲 得益處,也可以看其他使用者貼完標籤的資源而獲得益處。例如在 CiteULike 網站上,
看有興趣的標籤之下,有哪些我沒看過的論文,或是我看過的論文,別的使用者是否有 貼不一樣的標籤,該標籤是否為我未曾想過的概念。使用者能從「社會性的使用者資源 分享系統」獲得重整個人知識、發現未知且有趣的事物(uncover the unknown interesting thing),這是搜尋網站及入口網站做不到的。
2.2 分眾分類 分眾分類 分眾分類 分眾分類 Folksonomy
標籤系統是「非階層(non-hierarchical)」且「非互斥(non-exclusive)」的[6],由於「社 會標籤系統(social tagging system)」的本意含有分類(taxonomy)與眾人(folk)共同合作的意 涵,因此「分眾分類」[10]的名詞出現,確立它與眾不同的特點。
Thomas Vander Wal 是被認為是「分眾分類」Folksonomy 這個字的創始者,在他個 人的網頁中,給予了以下的定義[11](2004):
「『分眾分類』是個人為了將來取用的需求,自由地對資訊及物件(任何可以用 URL 表示的東西)貼標籤的行為所形成的結果。貼標籤的動作是在一個社會環境中所完成的 (social environment 對其他人而言是分享且開放的環境),『分眾分類』是由資料消費者(或
叫做讀者)貼標籤的動作所創造出來的產物」2
Thomas Vander Wal 本身並沒有對「分眾分類」多加限制,但一般的研究認為「分 眾分類」具有的以下幾個特性[6],(1) 「非階層」(non-hierarchical),(2) 「非互斥」
(non-exclusive),(3)「使用者創造」(user-created),(4)「自由關鍵字」(free-keywords)。
Lambiotte and Ausloos [6](2005)的研究認為「分眾分類」可視為是一個三分關聯網 路,整個系統中三個組成「使用者」user,「標籤」tag,「物件」item 的關係表達如下:
圖 3 在「分眾分類」的使用者(user)、標籤(tag)、物件(item)
u:user t:tag i:item
為了分析的方便,通常將「三分關聯網路(tripartite network)」投影成「二分關聯網 路(bipartite network)」或「單一關聯網路(unipartite network)」。例如,要降階成「(人-物) 二分關聯網路」,即針對所有的標籤計算且建立與使用者、物件的關聯,接著再把標籤 拿掉。
2原文:“Folksonomy is the result of personal free tagging of information and objects (anything with a URL)
for one's own retrieval. The tagging is done in a social environment (usually shared and open to others).
Folksonomy is created from the act of tagging by the person consuming the information.”
圖 4 人-物投影二分關聯圖
「分眾分類」的圖形化/視覺化分析即可由三分關聯 > 二分關聯 > 單一關聯做出 不同層次及不同面向的結構分析。
在「分眾分類」的推薦系統的演算法,Hotho, Jäschke, Schmitz[2]提出的
Folksonomy-Adapted PageRank,是改編自 PageRank 的方法,屬於圖形為基礎(graph-based approach)。該演算法的精神,是這樣的:
「基本的精神是一個物件如果被重要的人貼上重要的標籤,那麼該物件就變得重 要。這個觀念同時對於標籤、人也都成立」3
Folksonomy-Adapted PageRank 是全域的推薦,同時因為「分眾分類」的網路是「無 向(undirected)」,作者認為這個因素造成「排行(ranking)」的結果接近節點的「度次數 (degree count)」計算的排行(ranking)結果。於是,同篇論文 Hotho 另外提出一個同樣概 念但不一樣的演算法,叫做 FolkRank,這兩者的精神一樣,但是 FolkRank 可利用「偏 好向量(preference vector)」定義主題(topic),這樣可應用在主題指定(Topic-specified)的時 機,例如個人化的推薦。並且利用三分關聯網路的對稱性,該演算法可以推薦使用者、
標鑯及物件。
Jäschke et al [1] (2007)提到,在「分眾分類」裡的推薦系統,可以提供幾項服務,
3 原文:”The basic notion is that a resource which is tagged with important tags by important users becomes important itself. The same holds, symmetrically, for tags and users.”
增加物件被註釋的機會、提醒使用者物件的意義、讓使用者間用的字彙能夠得到統一4。 綜合 Herlocker et al [4] (2004)對於推薦系統看法,「創新性(Novelty)」以及「驚喜性 (Serendipity)是推薦系統比較需要努力的地方。我們感覺到尤其在可做為知識管理平台的
「分眾分類」,使用者在這方面的需求,會比其他類型網站高。
2.3 協同過濾 協同過濾 協同過濾 協同過濾 Collaborative filtering
協同過濾 Collaborative filtering, (CF)的技術在推薦系統是最常被使用的。其基本的 方法是收集每個使用者對於物件的評價,將之視為一個使用者與物件的「加權二分關聯 網路(weighted bipartite network)」,其中權重是使用者對物件的評價。將二分關聯網路投 影成人際網路(user-user network)與物件網路(item-item network),系統經由相似度的比 較,推薦物件給使用者。使用者被推薦的流程(scenario)為(1)使用者選擇物件(item)後,
系統再推薦其他相似的物件,或系統主動推薦一些相似於使用者曾選擇過的物件。(2) 系統主動推薦與使用者相似的其他使用者評價高的物件。
圖 5 二分關聯圖投影至單一關聯圖
4 原文:”Increasing the chances of getting a resource annotated, reminding a user what a resource is about and consolidating the vocabulary across the users.”
在「協同過濾」 的方法裡,把上述的概念表示成一個(人-物)的矩陣(user-item matrix)。Jäschke et al[1]使用以下的記號方式(notation)。對於一個系統中,有 m 個使用 者(user)與 n 個物件(item),其全體使用者記錄(user profile)的矩陣為 ,可 以用「列向量(row vectors)」來表示:
。 是指 user u 對於 item o 的評價。這種分解(decomposition)得到 的是「使用者為基礎的協同過濾(user-based collaborative filtering)」。接下來用矩陣 來 做計算。先決定一個 k 的值,k 的值是用來決定要選幾個相似的使用者。N ,叫做「鄰ku 居(neighbors)」,這是個集合,它就是系統中與 user u 最接近的 k 個 user。N 的數學表ku 達式為N : arg_max
(
sim(xu,xv))
k
U v k
u
r r
= ∈ ,其中 arg_max 是個「函式(function)」,式子中的上 標 k,就是指定回傳 k 個相以度最高的 user,sim 是相似度的函式(function),一般是用 cosine similarity measure。接下來,再決定一個 n 的值,n 的值決定推薦系統的推薦清單 裡幾個物件。推薦清單的排序依鄰居評價次數最多的放最前面,以此類推。
在應用「協同過濾」到「分眾分類」的環境時,因為三分關聯網路的特性需要修正,
Jäschke 等人[1]修正的式子在第三章會一起列出。
2.4 小世界與分眾分類 小世界與分眾分類 小世界與分眾分類 小世界與分眾分類 Small world and Folksonomy
在 Golder 與 Huberman[8](2005)的研究裡發現,少數的人使用的標籤數很多,大多 數的人使用的標籤數很少。其分佈符合幂次律(power law)。這個性質在複雜網路裡無尺 度網路(scale-free network)的其中一個性質相近。Cattuto 等人[12](2007)研究「分眾分類」
所形成的三分關聯網路並提出修正版的「特徵路徑長度(characteristic path length)」及「群 聚係數(clustering coefficient)」,經過觀察後發現「分眾分類」具有小世界網路的特徵:
低分隔度(low characteristic path length)及高群聚度(high clustering coefficient),並且,隨 著網路的成長,分隔度依然很低且群聚度依然很高。
Cattuto 等人[12](2007)也針對「分眾分類」的「語意性質(semantic property)」做了 研究,將「分眾分類」轉化為「標籤共同出現網路(tag co-occurrence network)」。它的形
成方法,是對於每一個使用者,看標籤與物件兩種節點。如果 tag1 與 tag2 皆與 item1
而且,更進一步定義標籤的「強度(strength)」為:
∑
≠Cattuto 等人[12]研究發現,由「標籤共同出現網路」的「累積強度分布(cumulative strength distribution)」就可以偵測 spamming 的活動,而且發現不同網站的「累積強度分 布」非常類似。對於推薦品質好又富創新性(Novelty)及驚喜性(Serendipity)的推薦系統,
必須要過濾掉人為的操縱;具有推薦創新性的推薦系統對於新物件的敏感度要比一般的 高,自然很容易受到 spam 的干擾,如果依照人類行為模式符合小世界網路特徵,並且 可由此特性觀察意見成長動態及偵測 spam,Cattuto 等人[12]的發現讓推薦系統有一個修 正的方式避免人為操縱。
2.5 派系過濾法 派系過濾法 派系過濾法 派系過濾法 Clique percolation method
在複雜網路「分群(clustering)」的技術裡面,Palla 等人[8]提出可以找尋重疊 (overlapping)結構的方法為「派系過濾法(Clique percolation method) (CP)」,標籤是概念 的描述,通常一個物件是不會只屬於一個標籤,而是屬於一組標籤,每個人因為看法的
(1) Let MAX_DEGREE = maximum degree of network.
(2) Let CLIQUE_MAX_SIZE= possible maximum size of complete subgraph in the network. This size can be guessed from MAX_DEGREE.
(3) Let s = MAX_DEGREE, do following:
(4) Select a node in the network do following
(5) Find all cliques of size s include the node you just selected. Remember the cliques found.
(6) Remove the node you just selected from the network and remove all links link the node from the network.
(7) Return to (4) there is a node in the network.
(8) if s > 1, restore the original network, then let s = s-1,go back to (4)。If s <= 1,all cliques are found。
2. 找尋 k-clique-communities
使用「派系重疊矩陣(clique-clique overlap matrix)」,每列(row)代表一個派系,每行 (column)也代表一個派系,所以它是個沿對角線對稱的矩陣。非對角線上的元素,是兩 個派系之間的共用節點數。在對角線上的元素,則填入該派系的大小(size)。
找尋「k 派系社群(k-clique-communities)」時,將對角線上小於 k 的元素設為 0,非 對角線上小於 k-1 的元素設為 0,即可找到有重疊的 k 派系(k-clique)。