• 沒有找到結果。

第三章 問題定義與系統設計

3.2   系統設計

圖 3.2.1 系統設計示意圖

前一小節定義了我們的研究問題和名詞假設,此處我們將更進一步定義我們 的模型。我們參酌了Brody et al.(2010)所提出的 Local LDA 模型和 Wang et al.

(2010)所提出的 LRR 模型進行調整,進行中文評論的 LARA 問題分析,以下詳述 模型建立過程:

第一階段我們先使用運用Local LDA 的方式將前處理完(有 n 個 unique token)

的評論當中的句子(sentences)視為標準 LDA 模型(Blei & Ng & Jordan, 2003)

中的文件(document),並將抽取出潛在的主題(latent topic)和主題詞彙(vocabulary)

視為面向(aspect)的切割與面向字詞(aspect word)的擷取結果,亦即將句子

(sentences)分配到的主題視為屬於該面向(aspect),而後並對每個文件(document)

都建立一個k×n 的特徵矩陣(元素已使用屬於面向(aspect) i 所有詞彙(token)

總數進行標準化)。

網路爬蟲爬取資料 資料前處理

Local LDA 面向分割 LRR 模型建立 網路評論資料

在進行非監督學習之前,需要決定總共要將資料分成幾群才是最佳的狀況,

亦即先確認所欲抽取的面向(aspect)數量 k,文獻中 Ma et al.(2012)運用了 Niu et al.(2007)所提出的 consistency function 去進行 cluster validation,每次完成 Local LDA 後會將每一個句子(sentences)標註一個屬於的面向(aspect),希望透過每 次檢驗標註結果的一致性去決定最佳的k 值,具體演算法和公式如下:

公式 3.2.1

其中定義 和 為行列為句子(sentences)的 connectivity matrix,其內容值為若

行列對應兩者sentences 所屬的 aspect 相同則值為 1 驗證步驟:

表3.2.1 cluster validation 驗證步驟(Niu et al., 2007)

(1)執行參數為 k 的 Local LDA 模型於 sentences 獲得 connectivity matrix

(2)建立均勻分佈隨機指定給 元素的 connectivity matrix

(3)隨機從 大小為 的子集

(4)執行參數為 k 的 Local LDA 模型於 sentences 獲得connectivity matrix

(5)建立均勻分佈隨機指定給 元素的 connectivity matrix

(6)根據公式 3.2.1 計算

(7)重複 次步驟 3 到 6

(8) 次迭代後回傳平均分數,取最大者為決定的 k 值

圖3.2.2 為演算法步驟求出的 connectivity matrix 示意圖:

sentences …⋯

1 1 0 0

0 1 1 1

…⋯ 1 0 1 0

1 1 0 1

圖3.2.2 connectivity matrix 示意圖

第二階段我們使用Wang et al. (2010)所提出的 LRR 模型進行調整:

為了能夠建立可以推論出aspect rating 和 aspect weight 的模型,所以 LRR 模 型不直接由特徵矩陣 決定,而是由一組潛在的面向分數(latent aspect rating)所

預測,而特徵矩陣 則直接預測潛在的面向分數(latent aspect rating)。由於已知

有k 個 aspect,同樣的每個文件(document)也會有 k 個潛在的面向分數(latent aspect rating)和 k 個潛在面向的權重(aspect weight)且總共有 n 個 unique token,所以 將潛在面向分數(latent aspect rating)表示成線性的組合:

公式 3.2.2

其中 為unique token 在 的情感傾向。由圖 3.2.3、圖 3.2.4 示意圖可以

得知特徵矩陣 和 情感傾向為 的矩陣。圖 3.2.5 呈現 列的潛在面向分數

(latent aspect rating)的示意圖。

…⋯

0.0113 0.0723 0.0413

0.0023 0.0215 0.0113

…⋯

0.0343 0.0223 0.0113 圖3.2.3 特徵矩陣 示意圖

…⋯

-0.01113 0.0723 0.0213

0.0013 0.0215 -0.0313

…⋯

0.0373 -0.0123 0.0413

圖3.2.4 詞彙情感傾向 示意圖

0.001

0.34

0.5

…⋯

0.1

圖3.2.5 面向評分 示意圖

接下來透過潛在的面向分數(latent aspect rating)和潛在面向的權重(aspect weight)的加總可以產生整體評分(overall rating),表示成 。

為了能夠模擬預測整體評分(overall rating)的不確定性,假設整體評分(overall rating)是從平均數為 ,變異數為 的高斯分配(Gaussian distribution)所抽

取出來,表示為:

公式 3.2.3

為了考慮偏好的差異性,假設每個文件(document)中的潛在面向權重(aspect weight)為從整個文集(corpus)的先驗(prior)分佈所產生的一組隨機變數。而 為了捕捉不同面向的相依性,假設潛在面向權重(aspect weight)的先驗分佈為多 變量高斯分佈,其中 和 分別為其平均值和變異數,公式和示意圖 3.2.6 如下所

示:

公式 3.2.4

0.001

0.34

…⋯

0.1

圖3.2.6 面向權重 示意圖

合併3.2.3 和 3.2.4 將問題轉化成一個貝氏迴歸問題(Bayesian regression)。給 定評論文件(document)下觀察值為給定文件(document)的整體評分(overall rating)

的機率如下:

公式 3.2.5

=

其中 和 為文件中已知的觀察值,而文獻假設 與 獨立於個別的review,

故 為文集層次的模型變數(corpus-level model parameters),整個

模型示意圖如下:

圖 3.2.6 LRR 模型示意圖(Wang et al., 2010)

LRR 模型最終的目標是希望透過給定整體評分(overall rating)和評論的內容

(review content)能夠推論出潛在面向的權重(aspect weight)和潛在的面向分數

(latent aspect rating)。而推論方法如下:

(1)每個文件(document)擁有的潛在面向分數(latent aspect rating)可由 以定義好的3.2.2 來計算。

(2)每個文件(document)的潛在面向的權重(aspect weight)則運用最大後 驗機率概似法(maximum a posterior,簡稱:MAP)來計算最有可能的面向的權重

(aspect weight)。其目標函數如下:

公式 3.2.6

對應於每個文件(document)面向的權重(aspect weight),由於 和 由多變量高

斯分佈和高斯分佈所生成,可以將上述式子展開為:

=

假設限制條件如下:

; 公式 3.2.7

我們採用L-BFGS-B 方法,求極大值:

公式 3.2.8

並使用最大概似估計法(Maximum Likelihood)找出最佳化的

以最大化給定評論文件(document)下觀察值為給定文件(document)的整體評分

(overall rating)的機率。

對於整體評論的log-likelihood 函數和 ML 估計是分述如下:

公式 3.2.9

公式 3.2.10

為了能最佳化問題,此處研究使用了類似 EM 演算法的方式,並於迭代開始

之前,先隨機初始化 :

(1)E 步驟:已知參數可以藉由推論公式 3.2.2 和 3.2.7 求得每個文件的潛在面 向分數(latent aspect rating)和潛在面向的權重(aspect weight)。

(2)M 步驟:透過求出的潛在面向分數(latent aspect rating)和潛在面向的權重

(aspect weight)去更新(update)模型參數 並透過極大化complete

likelihood 來得到 ,持續執行E 和 M 的步驟,最後參數會收

斂達到終止條件。

其中更新(update)模型參數如下:

公式:3.2.11

=

公式 3.2.12

=

公式 3.2.13

=

這裡我們使用複迴歸分析(multiple regression analysis) 方法替代 Wang et al.

(2010)提出的共軛梯度下降法(conjugate-gradient-interior-point)來進行 的估計。

我們將迴歸問題定義為整體評分(overall rating) 為應變數 ,自變數則為

迴歸係數為已知的 ,d 為文件(document)的索引,i 為面向(aspect)的

索引,j 為 unique token 的索引,如下式。

= 公式 3.2.14

我們可以藉由求解 ,推斷出 的更新值。

相關文件