1. 程式人生 > >主題模型LDA及其在微博推薦&廣告演算法中的應用--第1期

主題模型LDA及其在微博推薦&廣告演算法中的應用--第1期

因為原文偶爾會出現訪問不了的情況,所以特拷貝於此。

@吳宇WB

【前言】本篇文章中所涉及的大部分理論知識,都是由微博的推薦演算法和廣告演算法團隊共同收集,共同學習的,而現在這兩個團隊也合併成為一個更大的--推薦&廣告演算法團隊。相信在未來我們會一起將推薦&廣告演算法做的更好,也歡迎更多機器學習狂熱分子加入我們。

            這個系列文章主要分為5章:

1章介紹本文中涉及的基礎演算法和基礎工具,包括EM,變分推斷,Gibbs Sampling三個基本演算法。兩個用來訓練LDA的工具:

Vowpal WabbitLDA gibbs取樣的原始碼。最後還有衡量LDA模型訓練效果的PMI-score定義。

2章介紹LDA相關的理論知識,包括LDA的基本思想,Inference過程和引數估計,以及速度更快的Online VBEM演算法,最後詳細介紹瞭如何用Gibbs Sampling來訓練LDA

3章將解讀ICML 2014best paper,給我們的啟示以及我們利用微博短文字做的相關實驗,證明了Gibbs Sampling的效果要好於Online VBEM演算法。

4章重點介紹LDA目前在微博的內容推薦,使用者推薦以及廣告演算法中的應用。


5章介紹我瞭解的一些關於LDA在工業界和學術界的進展。

附:由於文章較長,我會分兩期分享,第1期只有前3章的內容,第2期分享第4章和第5章。水平有限,如有錯誤,請及時指正。

          目錄

       1. 一些基礎演算法和工具

               1.1 EM演算法

               1.2 Variance Inference

               1.3 Gibbs Sampling

               1.4 Vowpal Wabbit

               1.5 Gibbs Sampling

原始碼

               1.6 Point-Wise Mutual Information

       2.LDA理論知識

               2.1 Inference

               2.2 Parameter estimation 引數估計

               2.3 

               2.4 Online VBEM演算法

               2.5 Gibbs Sampling訓練過程

     3.利用微博短文字做的相關實驗

              3.1 Dirichlet分佈的物理解釋

              3.2 ICML 2014 Best Paper解讀

              3.3 VBEM演算法和Gibbs Sampling的實驗結果對比

1. 一些基礎演算法和工具

LDA全稱為Latent Dirichlet Allocation,在2003年由David M. BleiAndrew Y. NgMichael I. Jordan三位大神提出來的【1】。在LDA的學習中發現涉及很多基礎的演算法,在本系列的第一章我會先簡要的介紹這幾種演算法,包括EMVariational inferenceGibbs Sampling,並介紹我們用來訓練LDA的兩個工具。

1.1 EM演算法

EM全稱為Expectation Maximization ,即期望最大化。用於含隱變數的極大似然估計。現定義符號如下:

                                   觀察到的資料集記為X

隱變數記為Z

待估計的引數記為Θ

並令:Y=(X,Z)

  在給定X的情況下,估計Θ的方法通常為極大似然估計,簡稱MLE  

但並不是每次都有解析解。當求解困難時就可以引入隱變數,利用EM演算法來迭代求解,近似MLE過程。具體過程如下:

              不斷的重複,直到Θ收斂。那為什麼EM演算法能近似MLE過程呢?

L(X|Θ)=logP(X|

相關推薦

主題模型LDA及其推薦&廣告演算法應用--1

因為原文偶爾會出現訪問不了的情況,所以特拷貝於此。 @吳宇WB 【前言】本篇文章中所涉及的大部分理論知識,都是由微博的推薦演算法和廣告演算法團隊共同收集,共同學習的,而現在這兩個團隊也合併成為一個更大的-

理順主題模型LDA及在推薦系統應用

1 關於主題模型 使用LDA做推薦已經有一段時間了,LDA的推導過程反覆看過很多遍,今天有點理順的感覺,就先寫一版。 隱含狄利克雷分佈簡稱LDA(latent dirichlet allocation),是主題模型(topic model)的一種,由Ble

初試主題模型LDA-基於python的gensim包

rpo nco reload tps 代碼 list sdn str height http://blog.csdn.net/a_step_further/article/details/51176959 LDA是文本挖掘中常用的主題模型,用來從大量文檔中提取出最能表達各個

在PYTHON使用TMTOOLKIT進行主題模型LDA評估

統一 進行 常量 註意 參數 cti 8.0 數列 ng- 主題建模的英文一種在大量文檔中查找抽象藝術主題藝術的方法。有了它,就有可能發現隱藏或“潛在”主題的混合,這些主題因給定語料庫中的文檔而異。一種作為監督無的機器學習方法,主題模型不容易評估,因為沒有標記的“基礎事實”

主題模型TopicModel:主題模型LDA應用

主題模型LDA的應用拿到這些topic後繼續後面的這些應用怎麼做呢:除了推斷出這些主題,LDA還可以推斷每篇文章在主題上的分佈。例如,X文章大概有60%在討論“空間探索”,30%關於“電腦”,10%關於其他主題。這些主題分佈可以有多種用途:聚類: 主題是聚類中心,文章和多個類

主題模型 LDA 入門(附 Python 程式碼)

一、主題模型 在文字挖掘領域,大量的資料都是非結構化的,很難從資訊中直接獲取相關和期望的資訊,一種文字挖掘的方法:主題模型(Topic Model)能夠識別在文件裡的主題,並且挖掘語料裡隱藏資訊,並且在主題聚合、從非結構化文字中提取資訊、特徵選擇等場景有廣泛的

王小草【機器學習】筆記--主題模型LDA實踐與應用

標籤(空格分隔): 王小草機器學習筆記 筆記整理時間:2016年12月30日 筆記整理者:王小草 1. LDA的實現工具 在主題模型LDA的理論篇,長篇大幅的公式與推導也許實在煩心,也不願意自己去寫程式碼實現一遍的話,不妨用一用一些已經開源和

NLP:主題模型LDA+SVM進行文字分類

參考:http://www.cnblogs.com/pinard/p/6908150.htmlhttp://blog.csdn.net/TiffanyRabbit/article/details/764

主題模型-LDA小結

一.主題模型 傳統判斷兩個文件相似性的方法是通過檢視兩個文件共同出現的單詞的多少,如TF-IDF等,這種方法沒有考慮到文字背後的語義關聯,可能在兩個文件共同出現的單詞很少甚至沒有,但兩個文件是相似的。         舉個例子,有兩個句子分別如下:         

主題模型-LDA

關於LDA有兩種含義,一種是線性判別分析(Linear Discriminant Analysis),一種是概率主題模型:隱含狄利克雷分佈(Latent Dirichlet Allocation,簡稱LDA),本文講後者。 是一種無監督的貝葉斯模型 是一

信、企業信、支付窗、SDK 四合一,JeeWx-api 1.2.2 版本釋出!

JeeWx-API 1.2.2 版本釋出,微信、企業微信、支付窗、微博SDK四合一         JEEWX-API 是第一款JAVA版微信極速SDK,同時整合企業微信SDK,支付窗SDK,微博SDK,可以快速的基於她

求助爬蟲,pythonBeautifulSoup之後的select()返回空字串

from bs4 import BeautifulSoup import requests import re headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit

分享sdk4.0 遇到的坑以及解決辦法彙總

最近剛轉正,公司真的很忙,上一個月加班成常態,關鍵還是12點以後,打破我工作以來加班最晚記錄:凌晨2點。當然越忙對於我們來說也是有益處的,可以多學到很多東西。 公司專案用的微博的sdk 還是挺老的,大家都知道,早版本的微博sdk 存在一個問題就是使用了隱式的i

scrapy爬取新浪並存入MongoDB

spider.pyimport json from scrapy import Request, Spider from weibo.items import * class WeiboSpider(Spider): name = 'weibocn'

和知乎的 feed 流是如何實現的

談談知乎的Feed。 雖然我不是技術大佬。 簡單來說,Feeds這塊主要包括兩塊內容,就是生成feeds和更新feeds。生成feeds是什麼意思呢,比如我們已經關注的人做了特定操作,我們需要把這些活動加入你的feeds,讓你接收到。更新feeds包括的內容比較多,一種就是你關注點做了更新,比如你新關注了一個

推薦系統實踐》__1章__好的推薦系統

1.1 什麼是推薦系統 在使用者沒有明確需求時,幫助他們發現感興趣的新內容。 推薦演算法的本質是通過一定的方式將使用者和物品聯絡起來,而不同的推薦系統利用了不同的方式。 1.2 個性化推薦系統的應用 個性化推薦系統需要依賴使用者的行為資料。 儘管不同的網站使用不同的推

MapReduce程式設計-新浪內容相關(內容 廣告有效推薦

通過之前的幾個MR程式的場景樣例,我們簡單瞭解了一些MR程式設計和離線計算的相關知識。這篇博文 我們對MapReduce進行進一步的運用和解讀。 案例場景: 現在我們有一批新浪微博的資料資訊(當然,這裡的資料集是經過處理的,但並不影響我們的專案樣例編寫)。資料資

用scikit-learn學習LDA主題模型

大小 href 房子 鏈接 size 目標 文本 訓練樣本 papers     在LDA模型原理篇我們總結了LDA主題模型的原理,這裏我們就從應用的角度來使用scikit-learn來學習LDA主題模型。除了scikit-learn, 還有spark MLlib和gen

Spark機器學習(8):LDA主題模型算法

算法 ets 思想 dir 骰子 cati em算法 第一個 不同 1. LDA基礎知識 LDA(Latent Dirichlet Allocation)是一種主題模型。LDA一個三層貝葉斯概率模型,包含詞、主題和文檔三層結構。 LDA是一個生成模型,可以用來生成一篇文

LDA主題模型

.com img png src 技術 nbsp ima blog com LDA主題模型