Author Topic Model解析

來源:互聯網
上載者:User

Generative Models for Document(文章的產生模型)

這裡的Document(文章)是包括兩部分:文章的作者集合,組成文章內容的單詞集合。例如:

Document 1表示為:

Document 2表示為:

我們將Document d的作者集合表示為,內容的單詞集合表示為。如 = {張三,李四} , = { good good study day day up } ;

= {王五,李四} , ={ search knowledge read more books }。

D 個 Document的集合C就可以表示為:

C = {(,), (,), ……,(,)}。

下面解釋什麼是Generative Models for Document(文章產生模型)?

在我們的Author Topic Model(作者主題模型)中,每個author都對應一個在topics上的多項分布 ,每個topic都對應一個在word(單詞)上的多項分布。

那麼一個Document d的內容是如何產生的?

對於Document d中的每個word(單詞),首先從(作者集合)中等機率選擇一個作者,然後根據此作者在Topics上的機率分布,隨機播放一個Topic,最後根據這個Topic在words(單詞)上的機率分布,隨機產生這個單詞。

如果Document d 中的單詞有個,這個過程要重複次。

每個Document都這麼做便產生了整個資料集合。

我們用個例子也解釋這個過程。

Document 1表示為:

對於第一個單詞good,它是這麼產生的:從= {張三,李四}中等機率隨機播放一個作者,假設選中了“張三”,然後根據張三在Topics上的機率分布(0.1,0.6,0.3)隨機播放一個Topic,選中Topic2的可能性較大,假設選中了Topic2。再根據Topic2在words上的機率分布,選擇word(單詞),這次正好選中了“good”。

Author Topic Model 認為所有Document的內容都是這樣產生的。而我們面臨的問題是,如果我們認可我們的資料集就是這麼產生的,反過來我們要推斷這個產生過程是怎樣的,即估計每個作者在Topic上的機率是如何分布的,每個Topic在word(單詞)上的機率是如何分布的。

Graph Model(圖模型)

下面我們討論Author Topic Model的Graph Model

我們這樣理解這幅圖:

箭頭理解為變數之間的條件依賴,

條件依賴於w,或者說w機率產生。方框表示重複採樣(產生),次數在右下角標識,如,重複採樣了N次。

在Author Topic Model中,Document(文章)中的單詞w,和共同作者都是已知的,或者說是可觀察的,在圖上表示為有填充的圓。

每個author都對應一個在topics上的多項分布 ,圖中用表示。每個topic都對應一個在words(單詞)上的多項分布,圖中用表示。

和都有一個對稱的 Dirichlet prior 。也就是和是依靠了先驗知識。A表示資料集合中作者的總個數,T是Topic的個數。

對於一個Document中的每個單詞,我們從(作者集合上的均勻分布)中隨機採樣一個作者x,然後從和x對應的多項分布中採樣一個Topic z,再從Topic z 對應的多項分布中採樣一個單詞。採樣過程重複次,產生Document。D個Document重複這一過程,便產生了整個資料集。

Bayesian Estimation of the Model Parameters

模型參數的貝葉斯估計

在Author Topic Model 中,有兩組未知參數:author-topic 分布,

和topic-word分布。我們採用 Gibbs sampling 方法估計它們。

對於每個單詞,根據下面公式為其採樣author和topic。

這裡代表一篇文章中第i個單詞分配給第j個Topic和第k個作者。代表第i個單詞是詞典中第m個詞彙。代表除第i個單詞之外其餘單詞的Topic和Author分配。

表示單詞m在此次分配之前已經分配給Topic j的總個數。表示到目前為止,作者k分配給Topic j的總個數。

V是詞典的總個數(資料集合中所有不同單詞的個數),T是Topic 的個數。

在演算法估計期間,我們只需要追蹤兩個矩陣。一個是V x T(word

by topic)計數矩陣,另一個是K x T (author by topic)計數矩陣。

最後,我們根據這兩個計數矩陣估算author-topic 分布和topic-word分布。

表示Topic j 使用單詞 m 的機率

表示作者k 在Topic j 的機率

演算法一開始為每篇文章中每個單詞隨機分配一個Topic,隨機分配一個作者(從這篇文章的作者集合中)。然後根據等式(1),對每篇文章中每個單詞進行採樣,採樣重複I次。

假設 V x T(word by topic)計數矩陣 ,K x T (author by topic)計數矩陣分別如下:

 

Document 1表示為:

如何為“good”分配Topic和Author?

共有 {張三,Topic1}, {張三,Topic2},{張三,Topic3},

{李四,Topic1}, {李四,Topic2},{李四,Topic3} 六種可能。

這六種情況的機率是不一樣的,根據等式(1)

同理求出其餘情況的機率,根據這個機率分布,隨機產生一種分配。

重複這一過程採樣每個單詞。

最後根據等式(2)和(3)求出和 。

附錄:

在AT原始paper中有幅貝葉斯網狀圖,想看懂這幅圖只需要一點貝葉斯網路的基礎知識就可以了,所以這裡把需要理解的地方列出來。

先舉一個例子:聯合機率P(a,b,c)=P(c|a,b)P(b|a)P(a)可以表示為如

箭頭表示條件機率,圓圈表意一個隨機變數。這樣我們就可以很容易的畫出一個條件機率對應的貝葉斯網路。

對於更複雜的機率模型,比如

由於有N個條件機率,當N很大時,在圖中畫出每一個隨機變數顯然不現實,這是就要把隨機變數畫到方框裡:

這就表示重複N個tn.

在一個機率模型中,有些是我們觀察到的隨機變數,而有些是需要我們估計的隨機變數,這兩種變數有必要在圖中區分開:

如,被填充的圓圈表明該隨機變數被觀察到並已經設為了被觀察到的值。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.