第3.1 節 預先準備的 tag-thesaurus...

20
第3章 研究的方法 3.1 預先準備的 Tag-Thesaurus 模型的雛型 我們將預先準備一些適用於社會網路服務面向的分類用的字彙;在這裡我們準備的是與 電影相關的字彙,透過專家的編輯,建構出字彙與字彙間的階層關係,如圖表 3 所示。 預先準備字彙的用意在於初期準備的字彙將影響後續字彙(這邊指的後續的字彙為 Tagging System 中新的 free tag 加入)的成長,另一方面也可以控制字彙偏向我們設定 的面向發展。在這份預先建構好的 Tag-Thesaurus 模型中我們只建構字彙與字彙之間的 階層關係,其原因在於字彙與字彙間的平面性關聯性將透過社會網路服務中蒐集大眾的 Folksonomy,繼而分析計算取得。

Upload: others

Post on 07-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

  • 第3章

    研究的方法

    第 3.1 節 預先準備的 Tag-Thesaurus 模型的雛型

    我們將預先準備一些適用於社會網路服務面向的分類用的字彙;在這裡我們準備的是與

    電影相關的字彙,透過專家的編輯,建構出字彙與字彙間的階層關係,如圖表 3所示。

    預先準備字彙的用意在於初期準備的字彙將影響後續字彙(這邊指的後續的字彙為

    Tagging System 中新的 free tag 加入)的成長,另一方面也可以控制字彙偏向我們設定

    的面向發展。在這份預先建構好的 Tag-Thesaurus 模型中我們只建構字彙與字彙之間的

    階層關係,其原因在於字彙與字彙間的平面性關聯性將透過社會網路服務中蒐集大眾的

    Folksonomy,繼而分析計算取得。

  • 圖 1 預先準備的 Tag-Thesaurus 模型雛型

    這個 Tag-Thesaurus 模型的雛型將從社會網路服務中所提供的 Tagging System 補

    足字彙間的關聯性外,新的 free tag 的加入將可以擴充字彙,透過我們定義的演算法

    將可以推薦給管理者新的 free tag 最佳的階層關係。如此,該 Tag-Thesaurus 模型將

    可以隨著時間的過去而成長、豐富,對於最後的資源彙整也將有最直接的幫助。

    第 3.2 節 平面式分類的正規模型

    我們將會透過社會網路服務,大量地蒐集使用者對資源下標籤的關係作為分析的樣本,

    透過這些分類與資源的對應關係,搭配上已經由專家建立好的 Tag-Thesaurus 模型雛型

    來建立一個符合我們期望的 Tag-Thesaurus 資料模型。

    首先必須釐清並定義我們的研究中所用到的 Folksonomy 模型。

  • 圖 2 標籤系統示意圖

    Folksonomy 的模型主要是描述使用者、標籤與資源之間的關聯性,而該關聯性是由

    使用者本身建立。如圖表 4所示。我們可以利用 Thomas Gruber[7]所提的方式來表達這

    三者的關係,譬如使用者 將 分類到 的關係可以這樣表示: ,同理,

    則表示使用者 將 分類到 與 的關係。

    1u 1r 1t ),,( 111 utrtagging

    ),,(),,( 234224 utrtaggingutrtagging 與 2u 4r 2t 3t

    常見實做 Folksonomy 模型的方式都是利用 Entity-relationship Model,其中使用

    者與標籤為 n:m 的關係,我們定義該關係為使用的關係,而資源與標籤也是 n:m 的關係,

    我們定義該關係為屬於的關係。除了透過 Entity-relationalship Model 外,文獻[1]

    則利用 Formal Model 對 Folksonomy 的概念做更具體的描述,定義 Folksonomy 為一

    tuple, ),,,,(: SYRTUFolksnomy = ,其中 代表使用者的集合,T 代表標籤的集合,U R 表

    示資源的集合,Y 紀錄使用者對於資源的不同而分類到不同的標籤的關係集合。我們定

    義Y 為:

    },,...,,,,,...,,|)),,...,,(,{(212121

    RrTtttUutttrurtttuY zyyyxyyyzxzyyyx nnn ∈∈∈= 其中分類為將

    則以圖表 4為例,U 、T 、 R 、Y 分別為:

    },,{ 321 uuuU =

    },,,{ 4321 ttttT =

    },,,,{ 54321 rrrrrR =

  • )}),,,(,(),),,(,(),,,(),,,(),,,(),,,{( 543134322212431221111 rttturtturturturturtuY =

    為了便於之後的運算與分析,我們將Y 中的一個使用者對一個資源分類到多個不同

    的標籤關係拆散,並以 表示,即 為: fY fY

    },,,|),,{( RrTtUutrurtuY zyxyzxzyxf ∈∈∈= 其中分類為將 ,以圖表 4為例, 為: fY

    )},,(),,,(),,,(),,,(),,,(),,,(),,,(),,,(),,,{( 543533513432422212431221111 rturturturturturturturturtuYf =

    我們定義一個操作 來取得 投影在tP fY R 上的元素, 代表的意義為取得該標籤對應到的

    所有資源。

    tP

    },,,),,(|{)( RrTtRuYrturtP zyxfzyxzyt ∈∈∈∈∀= 其中

    以圖表 4為例, 以及 分別為: )( 1tPt )( 2tPt

    },,{)( 5211 rrrtPt =

    },{)( 422 rrtPt =

    則一般常見的標籤視覺化應用;標籤雲,可以這樣表示:

    }||))(|,{()( pxxtxp TttPtTtagCloud ∈= ,其中 。 TT p ⊆

    我們也定義操作 來取得Y 投影在 上的元素, 代表的意義為取得該使用者曾經

    使用過的分類標籤,值得注意的是,這邊特別保留使用者曾經同時使用過的標籤的資

    訊,保留的原因在於我們認為使用者在這邊將會表現出階層式分類的特性。也就是說使

    用者在對資源分類時,同時將資源分類到父類別與子類別這樣的特性,我們將透過這個

    特性來猜測新的 free tag 的階層關係。

    uP T uP

  • },,...,,,,)),,...,,(,(|),...,,{()( 212121 RrTtttRuYrtttutttuP znxznxnxu ∈∈∈∈∀= 其中

    以圖表 4為例, 以及 分別為: )( 2uPu )( 3uPu

    )},(),{()( 3212 tttuPu =

    )},,{()( 4313 tttuPu =

    並定義|)(|

    )..1(,,),(),...,,()( 21

    xu

    baxunxt uP

    nbattuPtttuf

    ∈∈∀=

    具有包含關係的次數與來計算

    使用者對於資源同時分類到父類別與子類別的頻率。若 具有階層關係,則: 32 tt 與

    0)(,21)( 32 == ufuf tt ,當新的 free tag 被使用者使用後,使用者將根據他們

    習慣同時分類到父類別與子類別的頻率來對新的 free tag 的階層關係投票。如:

    )},(),,(),{()( 43212 tttttuP newu =

    )},(),,,{()( 14313 newu tttttuP =

    由於 頻率較高,於是 為階層關係的可能較 大。實際計算階層關係

    演算法如下。

    2u ),( tt 4new 1 new ),( tt

    })(,|{ 中一起出現在與 xunewyxy uPttUutCandidates ∈∀=

    })(,|{_ 出現曾在 xunewxx uPtUuuusersSuffrang ∈∀=

    ∑∈∀

    =usersSuffrangu

    xtyx

    uftBallot_

    )()(

    最後我們將取 得票最高的前三名作為推薦給管理者作為新的階層關係參

    考。若為全自動模式,則挑選得票最高者,建立階層關係。

    )( ytBallot

    雖然我們可以透過演算法去猜測新的階層關係,然而究竟新的 free tag 為父節點

    還是子節點呢?在這邊我們將一律將新的 free tag 視為子節點。

  • 除此之外,我們也定義操作 來取得 投影在rP fY T 上的元素, 代表的意義為取得該

    資源被使用者分類到的所有標籤。

    rP

    },,,),,(|{)( RrTtUuYrtutrP mzxfmzxzmr ∈∈∈∈∀= 其中

    以圖表 4為例, 以及 分別為: )( 3rPr )( 4rPr

    {})( 3 =rPr

    },,{)( 3234 tttrPr = , },{))(( 324 ttrPDistinct r =

    則我們可以透過定義 計算資源 被分類至各個標籤的次數,我們可以透

    過 取得資源 被分類至各個標籤次數最多的前三名,其意義為該前三名的標

    籤最足以代表資源 的意義[6]。

    ))(( mrs rPT mr

    ))(( mrs rPT mr

    mr

    ))}((,)(|),{())(( mrymryymrs rPDistincttrPtnntrPT ∈∀= 的個數出現在表示 ,並且定義操

    作 直接取得 出現在 的個數。 )),(( ymrs trPT yt )( mr rP

    以圖表 4為例, 為: ))(( 4rPT rs

    )}1,(),2,{())(( 234 ttrPT rs = ,則 , 2)),(( 34 =trPT r

    s 1)),(( 24 =trPT rs

    圖表 5為將標籤與資源透過 標示其關係的示意圖,在這邊我們省去使

    用者的元素,將分類的次數量化,我們將利用這樣的關係圖來計算兩個標籤彼此之間的

    關聯程度。

    )),(( yxrs trPT

  • 圖 3 標籤與資源的關聯

    而在 Folksonomy 模型中我們尚未提到的 扮演什麼呢? 用來表示標籤與標籤之

    間階層的關係集合。文獻[1]不足的地方在於並未實現 S,我們的研究則是將 重新定義

    為標籤與標籤之間的關聯程度集合:

    S S

    S

    },,|{ , nmTnTmSS nm ≠∈∈= ,

    )),(()),((

    )),(()),((

    ))(())((

    )()()()(,

    xrnPDistinctt

    sxr

    mPDistinctt

    snPmPt

    yrs

    nPmPtyr

    s

    nm tnPTtmPT

    tnPTtmPTS

    rxrx

    rryrry

    ∑∑

    ∑∑

    ∈∀∈∀

    ∩∈∀∩∈∀

    +

    +

    =

    其中, 表示標籤 與標籤 之間的關聯程度,並透過我們定義的公式量化,在

    這邊我們也省去使用者的元素,並把使用者將資源分類到標籤的行為視為一種投票。針

    對某資源,每個標籤都是候選人,使用者可不限票數地為這個資源選定最適合該資源的

    標籤,但一位使用者重複對資源分類到同一標籤,僅視為一票。當同一資源被分類於不

    同標籤時,我們認為這兩個標籤透過這交集的資源而產生關聯。以圖表 4為例, 為:

    nmS , m n

    S

    42,

    53,

    42,

    62,

    52},,,,,{

    43324131214332413121 ,,,,,,,,,,====== tttttttttttttttttttt SSSSSSSSSSS 其中

    圖表 6為透過公式運算所得的標籤與標籤的關聯程度示意圖。

  • 圖 4 標籤之間的權重關係

    如此,我們利用 ),,,,(: SYRTUFolksonomy = 來表達我們從社會網路服務中所蒐集

    的,集結眾人智慧的 Folksonomy。雖然這個模型足以描繪 Folkosnomy 的概念,然而並

    未在資源彙整上面有所突破。Tagging System 對於資源彙整的部份,通常單純透過標籤

    來索引出資源,也就是我們定義的 ,一旦平台的資源數量眾多,則透過一個標籤來索

    引出大量的資源時,資源的過濾與排序將對於使用者的資源彙整大有助益。然而在一般

    常見的 Tagging System 中並未對過濾與排序做處理。常見的透過標籤索引資源的變形

    有二:

    tP

    TttttPtPtPtttP nntttint ∈= ,...,,),(...)()(),...,,( 212121 其中III

    TttttPtPtPtttP nntttunt ∈= ,...,,),(...)()(),...,,( 212121 其中UUU

    當使用者透過多個標籤來索引資源時,一般常見的 Tagging System 往往採用交集

    或是聯集的方法來達成。交集的意義在於尋找同時被下多個標籤的資源,聯集的意義則

    是尋找被下過其中之一的標籤的資源。不管是 、 或是 ,這

    些方法對於索引出來的資源都沒有重要程度的計算與排序,為了強化其資源彙整能力,

    我們將陸續加入其他元素來輔助。

    tP int tttP ),...,,( 21 unt tttP ),...,,( 21

    文獻[1]除了 Folksonomy 模型外也提到以單一使用者視角來看的 Personomy。集結

    眾人智慧的Folksonomy可以看成Personomy的彙整。因此我們可以從原先的Folksonomy

    模型中延伸出 Personomy 模型:

  • ),,,(: 'SYRTPersonomy ppp= ,其中 , ,並且 。 TT p ⊆ RR p ⊆ YY p ⊆

    除了透過集合與關係來制定出整個 Folksonomy 模型外,時間也是一個重要的考量

    因素。隨著時間的過去,不同的資源將被賦予不同的標籤,其被賦予的標籤成長變化也

    隨著時間的過去而有所不同。這的現象反應了自然語言的成長與使用者觀點的轉換。譬

    如以圖表 4中的資源 為例,目前最具代表性的標籤為 ,隨著時間的過去,新的標

    籤被使用者啟用,使得資源 最具代表性的可能轉變為 與 ,一方面反應了字彙的

    成長,一方面也反應了觀念的轉移。

    4R 3T

    4R 4T 3T

    第 3.3 節 將社會網路元素加入 Tag-Thesaurus 模型

    在社會網路服務的平台上,除了蒐集 Folksonomy 外,使用者之間的互動關係、使用者

    的喜好以及群聚的活動等,都是用來評鑑資源彙整的指標。因此我們擴充 Folksonomy

    formal model,定義一個社會網路服務的模型來幫助我們。SNS 為一 tuple:

    ),,,,,(: MoacFoafRoauRCUSNS =

    其中U 表示平台上所有使用者的集合,C 表示平台上所有社群的集合,R 表示平台

    上所有資源的集合, 為一集合,紀錄使用者與資源之間的擁有關係,Foaf 為一集

    合,紀錄使用者與使用者之間的朋友關係[5],而 為一集合,紀錄使用者與社群之

    間的參與關係。圖七為一個模擬社會網路服務的示意圖,其中U 、 、

    Roau

    Moac

    C R 分別為:

  • 圖 5 社會網路服務模型示意圖

    },,,{ 4321 uuuuU =

    },{ 21 ccC =

    },,,,{ 54321 rrrrrR =

    我們分別定義 、 以及 : Roau Foaf Moac

    },,

    ,|),,{(

    RrUurimportance

    ruimportanceruRoau

    yxyy

    yxyyx

    ∈∈

    =

    其中的重要程度表示資源

    擁有資源使用者

    },,,,

    ,|),,{(

    ,,,

    ,

    yxyxxyyxyx

    yxyxyx

    uuUuUuclosenessclosenesscloseness

    uuclosenessuuFoaf

    ≠∈∈=

    =

    其中度為兩個使用者的親密程

    為朋友與使用者使用者

    },,

    ,|),,{(

    ,

    ,

    CcUucupassion

    cupassioncuMoac

    yxyxyx

    yxyxyx

    ∈∈

    =

    其中的參與程度對於社群為使用者

    參與社群使用者

    則以圖表 7為例,

    )},,(),,,(),,,(),,,(),,,{(

    553443333

    222112

    importanceruimportanceruimportanceruimportanceruimportanceruRoau =

    )},,(),,,(),,,{( 1,2124,1412,121 closenessuuclosenessuuclosenessuuFoaf =

    )},,(),,,(),,,(),,,{( 2,4242,3231,3132,222 passioncupassioncupassioncupassioncuMoac =

    其中, 將由社會網路服務中蒐集使用者對於資源的評價作為量化依據。yimportance

  • 我們定義使用者對於資源的評價操作為 : yxappraise ,

    },,|),{(, RrUururuappraise yxyxyxyx ∈∈= 的評鑑對於資源使用者

    若社會網路服務中,提供給使用者對於資源的評鑑操作有閱讀、推薦、引用等三種

    機制,則:

    },,{ citerecommendreadAppraisal =

    我們定義其量化公式為 : )( ,yxr appraiseQ

    0|)(|,0)(

    0|)(||),log(|)(

    ,,

    ,,,

    ≤=

    >=

    yxyxf

    yxyxyxr

    appraiseifappraiseQ

    actionifappraiseappraiseQ

    則,我們對資源的重要程度 定義為: yximportance ,

    ∑∈∀

    =Appraisalappraise

    yxry appraiseQimportance )( ,

    而 將由社會網路服務中蒐集使用者之間的互動為量化依據,若一個社會

    網路服務中提供給使用者與使用者間的互動有信件、留言、拜訪等三種互動機制,則:

    yxcloseness ,

    },,{ visitmessagemailAction =

    我們定義其量化公式為 : )( ,yxf actionQ

    0|)||(|,0)(

    0|)||(||),||log(|)(

    ,,,

    ,,,,,

    ≤+=

    >++=

    xyyxyxf

    xyyxxyyxyxf

    actionactionifactionQ

    actionactionifactionactionactionQ

    則,我們對使用者間的 定義為: yxcloseness ,

    ∑∈∀

    =Actionaction

    yxfyx actionQcloseness )( ,,

    同理, 也是由社會網路服務中蒐集使用者 參與社群 的活躍程度作為

    其量化依據。我們定義 用來表示使用者 與社群 的互動:

    yxpassion , xu yc

    yxactivity , xu yc

    },,|),{(, CcUucactivityucuactivity yxyxyxyx ∈∈= 其中互動與透過使用者

  • 若一個社會網路服務中提供給使用者與社群間的互動有討論、發起活動、分享資源

    等三種互動機制,則:

    },,{ shareeventdiscussActivity =

    我們定義其量化公式為 : )( ,yxc activityQ

    0|)(|,0)(

    0|)(||),log(|)(

    ,,

    ,,

    ≤=

    >=

    yxyxc

    xyyxyxc

    activityifactivityQ

    actionifactivityactivityQ

    則,我們對使用者與社群的互動程度 定義為: yxpassion ,

    ∑∈∀

    =Activityactivity

    yxcyx activityQpassion )( ,,

    如此,我們便可以 這個模型來描繪社會網路服務

    以及在該平台上的互動關係。實際上這個模型已經被簡化,我們在這邊忽略了一個社會

    網路服務應該具有的存取控管元素。在社會網路服務中的存取控管影響著資源的存取與

    傳播,也繼而影響到資源的彙整。

    ),,,,,(: MoacFoafRoauRCUSNS =

    社會網路服務常用的存取控管的模型為 Role-Based 的存取控管,我們將在 FOAF

    ontology 中利用擴充的字彙來宣告。在社會網路服務的平台上蒐集這些資訊的目的有

    二:一為結合 Folksonomy 模型,使其可以與 Taxonomy 模型產生關聯,另一目的為這些

    資訊將可以作為個人化排序的指標。這樣的模型適用於平面性的、由下而上的資源彙

    整。加入 domain-specific ontology 輔助將可以強化垂直性的、由上而下的資源彙整。

    在這邊我們將以電影的 domain-specific ontology 作為一個示範。

    第 3.4 節 FOAF 與特定領域本體論

    Ontology 為描述抽象概念的一種表示方法。最早出現在哲學領域,用來描述有、或

    是存在的事物、概念的屬性與彼此之間關聯性。透過 ontology 的走訪,我們可以輕易

    地去存取有關聯、有意義的資源。目前 W3C 組織已經制定了 ontology language 的標準

  • 有 RDF(Resource Description Framework)[17][18]、OWL[19],此外,還有 DCMI(Dublin

    Core Metadata Initiative)組織制定的 Dublin Core 用來描述資源。

    在本研究中,我們將會直接使用 FOAF project[16]的 ontology 作為社會網路服務

    模型中的 所使用的 ontology,並加入符合社會網路服務面向的 domain-specific

    ontology,加入 domain-specific ontology 的目的在於提供由上而下的資源彙整能力。

    也就是說,再沒有加入 domain-specific ontology 之前,我們制定的 Thesaurus 模型

    已經具有資源彙整的能力,只是該彙整能力僅限於由下而上,我們搜尋標籤,透過

    Thesaurus 模型的操作來取得有關聯的標籤,並由這些標籤來索引出資源,繼而透過社

    會網路蒐集的指標來為資源排序。此外,我們將 domain-specific ontology 鋪在

    Thesaurus 模型之上,將 Thesaurus 模型中的字彙皆視為 domain-specific ontology

    的 instance,透過手動的方式建立 instance 與 class 的 typeOf 關聯。如此,該模型有

    了 domain-specific ontology 的擴充,不僅可以強化語意的搜尋,對於由上而下的彙

    整能力也齊備了。

    Foaf

    Thomas Gruber[7]率先提出了 Tag Ontology 的概念,透過簡單的 Tag Ontology 來

    描述標籤的屬性以及標籤之間的關聯性。該 Tag Ontology 僅有一個 Class Tag 與兩個

    Property;relatedTag 以及 equvalentTag。

    那麼標籤與標籤之間的關聯如何建立呢?標籤與標籤之間的權重為何呢?我們在

    Folksonomy 模型 中的標籤與標籤之間的關係集合 ,其實與

    Thomas Gruber 提出的 Tag ontology 無異,差別在於我們定義的標籤與標籤之間的關係

    集合 僅用來表達標籤之間的關聯程度,並具有權重來表示關聯的緊密程度。

    ),,,,(: SYRTUFolksnomy = S

    S

    許多文獻研究如何透過 Folksonomy 模型來自動建構出 Taxonomy 模型,如文獻

    [12],然而我們認為將平面式架構的分類轉換為階層式架構的分類,實際上已經破壞了

    平面式架構分類的背後意義。我們的研究則是預先準備與該領域相關的字彙,交由專家

    來建構其階層式架構,透過社會網路服務平台的使用者來利用這些字彙作為平面式分類

    的依據,藉此得到字彙與字彙的關聯。此時已有兩種關聯;一為原先專家定義的階層式

  • 關聯,一為由我們制定的 Folksonomy 模型運算出的字彙與字彙的關聯。當有新字彙加

    入後,我們的模型將可以透過字彙與字彙的關聯來建立階層式架構的關聯。如此,不僅

    保留專家定義的階層式分類,也融入了具有眾人智慧的平面式分類。

    Peter Mika[5]利用 FOAF(Friend of a friend)[16]的模型建構了 Flink 這樣的社

    會網路,我們也可以將 FOAF ontology 視為是一種儲存朋友關係的資料模型。FOAF 的功

    用在於描述自己的屬性與認識的朋友,也就是使用者可以透過 FOAF 來記錄姓名、電子

    郵件信箱,以及使用者的朋友們,並將該檔案置放在開放平台。由於 FOAF ontology 是

    以 RDF-based 方式儲存,使得使用者與其朋友的資訊可以被軟體處理。

    以人為出發點的社會網路,除了人之外也開始定義其他社會網路可能用到的字彙,

    譬如 Group、Document 等。我們可以利用 FOAF 以及其擴充字彙 Group 來表達社會網路

    服務模型中的U 、C 、 以及 ,譬如我們可以利用 FOAF ontology 來表達一個

    社群"ENT Lab"的三位成員,如下所示:

    Foaf Moac

    ENT Lab

    為了表達 Social Network Service 模型中的 R 與 ,我們也擴充 FOAF ontology

    字彙 owns。譬如我們可以利用 FOAF ontology 來表達一個使用者 Bluce 擁有兩份不同的

    資源,我們在這邊並不使用 Dublin core 來描述資源,而是以 FOAF 的字彙 depiction

    Roau

  • 來描述,目的在於簡化需要整合的 ontology。

    Bluce

    對於存取控管的部份,我們則擴充了 FOAF ontology 的另外一個字彙 label 來幫助

    使用者對於其朋友分類,並擴充字彙 accessible 來設定其存取資源的權限。對朋友分

    類與社群的差別在於,即使兩個使用者用了相同的字彙,如"大學同學",來對他們的

    朋友分類,這兩個分類完全互斥。然而若兩個使用者都加入了社群"Drupal

    Developers",這兩個分類卻是完全相同。下面是一個利用字彙 label 與 accessible

    來對朋友分類與設定資源存取權限的例子:

    Bluce

  • classmate

    colleague

    我們擴充 FOAF ontology 的目的除了表達社會網路服務模型中的 Foaf 外,資源彙

    整的過濾也將透過該 ontology,這顯然也是個簡化的存取控管,然而在資源彙整中所需

    要存取控管往往只有允許存取或者不允許存取這兩種情境,所以做這樣的擴充已經足以

    勝任資源彙整的過濾資訊部份。

    截至目前,我們依序提到了預先定義好的 Tag-Thesaurus 模型、Folksonomy 模型、

    社會網路服務模型以及 domain-specific ontology。有了這些模型與 ontology 的結合,

    我們將可以深入 Social Network Service 平台,蒐集使用者們的互動以及與資源與標

    籤的成長,搭配上指標的量化套入排序的公式,讓使用者們突破傳統的資源彙整、搜尋

    方式,得到更好的資源彙整。由於 Social Network Service 有各種面向,不同的面向

    將會造成資源的種類相異。在這邊選定當作實驗的面向為電影社群交流平台,因此我們

    將加入電影的 ontology,如圖表 8。

  • 圖 6 部分的電影本體論

    第 3.5 節 透過 Tag-Thesaurus 模型達成資源彙整

    在開始談如何透過我們制定的 Tag-Thesaurus model 彙整資訊之前,先來談論我們如何

    將不同平台的資源彙整。以目前的資訊的交換模式來看,較為成熟的方式是前面章節提

    到的源料;透過簡單中立的 schema 來描述資源。由於是簡單中立的資料格式,並無法

    有效地描述各種資源,目前較常用來描述的資源型態為部落格文章或是圖片。我們並不

    打算解決如何利用較為豐富、較有彈性的資料描述格式來解決現今的窘境,在這邊我們

    則要解決如何將這些異質資料整合至我們主要的結構。以我們的應用為例,我們將資源

    分為兩類。

    1. 主資料;如電影 profile 的 instance、演員、角色、導演的 instance 等。

    2. 異質資料;如電影新聞、預告片、影評、區域性的資訊如翻譯名稱、播放電影

    院暨時刻表。

  • 圖 7 電影與其屬性範例

    透過觀察,我們假設異質資料與主資料的關聯在於異質資料具有主結構的屬性值。

    我們以一部電影 profile 的 instance 為例,如圖表 9。該電影具有三個屬性,分別是英

    文名稱、中文名稱以及在台灣上映的日期。該電影具有其中一名演員為 Nicole Kidman,

    演出的角色為 Marisa Coulter,曾經被下過的 free tag 為 fiction。我們可以將這些

    屬性值視為該 instance 的隱性標籤值。即,在我們的 model 中將標籤分成三類;

    1. official tag;預先準備的標籤,並手動建立標籤間的繼承關係。對使用者而

    言是顯性的。

    2. free tag;由使用平台的使用者們自由新增的標籤。對使用者而言是顯性的。

    3. attribute_value tag;透過這些屬性值建立主資料與異質資料的關聯性。

    這邊我們建立的關聯性單純是有無關聯、關聯的程度為何。顯然,這些屬性值的權

    重不一,比方說異質資料中出現了電影的名稱,我們幾乎可以篤定該異質資料與該電影

  • 有關聯。針對不同的主資料,調整這些用來建立關聯性的屬性值的權重是個較為有效而

    彈性的方式。比方說,當我們要彙整電影的異質資料時,屬性 title 的權重要比屬性

    zhtwReleaseDate 高得多。而當我們要彙整演員的異質資料時,屬性 name 的權重將比其

    他屬性更高。跨平台彙整異質資料並非我們 Tag-Thesaurus 模型的重點,我們略過這部

    分而不實作與分析。

    彙整異質資料的方式我們也應用在自動化建立 ontology 與標籤的關聯,我們可以

    利用 RDF/OWL 中的屬性的值與 attribute_value tag 相比對,透過屬性的比重與

    attribute_value tag 建立關聯。

    圖 8 Tag-Thesaurus 模型完整示意圖

  • 在我們利用預先建構的 Tag-Thesaurus 模型雛型,搭配從社會網路蒐集而來的眾人

    的智慧 Folksonomy 後,我們已經建構好 Tag-Thesaurus 模型,如圖表 10。那麼我們如

    何利用 Tag-Thesaurus模型達到資訊彙整呢?我們定義對Tag-Thesaurus模型的操作T

    來存取資源的集合,在定義T 前,我們先定義 Tag-Thesaurus 模型的兩個操作 FT 與TT:

    },|{),( TtwThesaurustttwtFT xxx ∈= 等於模型中的關聯程度大於在與其中

    },|{)( TtThesaurusttttTT xxx ∈= 模型中的為階層式關係在與其中

    則以圖表 10 為例:

    }:{}7.0,:( 機器人變形金剛 tagtagFT =

    }:{):( 科幻變形金剛 tagtagTT =

    則我們定義操作T 來存取資源的集合:

    ut tTTwtFTtPwtT ))(),,(,(),( =

    而這些資源的排序指標為 : ),( ruIndex

    ∑++= cuuuyyx xyx passionwclosenesswimportancewruIndex ,3,21 ***),(

    其中, 表示存取資源者 與資源持有者 的親密程度,而 表

    示存取資源者 與資源持有者 共同參與的社群的熱情程度。而 、 與 為這三個

    指標的權重。

    yx uucloseness , xu yu cuxpassion ,

    xu yu 1w 2w 3w

    除此之外,我們也定義語意搜尋的操作 :

    qS

    tagsinstancesparqlttttttPsparqlS nuntq 索引到的查詢所得的為其中 ,...,,,),...,,()( 2121=

    透過語意搜尋的操作 索引到的資源,也將透過 來排序。 qS ),( ruIndex

    第3.1節 預先準備的Tag-Thesaurus模型的雛型 第3.2節 平面式分類的正規模型 第3.3節 將社會網路元素加入Tag-Thesaurus模型 第3.4節 FOAF與特定領域本體論 第3.5節 透過Tag-Thesaurus模型達成資源彙整