0
雷鋒網(wǎng) AI 科技評論按:2017 年 12 月 22-24 日,由中國計算機學(xué)會(CCF)主辦的第 87 期 CCF 學(xué)科前沿講習(xí)班(CCF Advanced Disciplines Lectures,簡稱 CCF - ADL)在北京中國科學(xué)院計算技術(shù)研究所成功舉辦,雷鋒網(wǎng)作為獨家合作媒體,進行了全程報道(十三位講者內(nèi)容簡介見《CCF ADL 87 講習(xí)班回顧:韓家煒等 13 位大牛全方位解析社交網(wǎng)絡(luò)和數(shù)據(jù)挖掘》,視頻請移步 CCF-ADL87:社交網(wǎng)絡(luò)與數(shù)據(jù)挖掘)
本次講習(xí)班邀請到了兩位在數(shù)據(jù)挖掘領(lǐng)域數(shù)一數(shù)二的頂級巨擘:韓家煒教授和 Philip S. Yu 教授。Philip 教授在報告中詳細講解了他多年來所倡導(dǎo)的「廣度學(xué)習(xí)」(Broad Learning)的概念和方法,并用三個相關(guān)的研究案例來說明如何將深度學(xué)習(xí)和廣度學(xué)習(xí)結(jié)合起來使用。韓家煒教授則講述了他在數(shù)據(jù)挖掘研究中的三步曲:怎么從文本數(shù)據(jù)中挖掘出隱含的結(jié)構(gòu);怎么將結(jié)構(gòu)文本轉(zhuǎn)化為網(wǎng)絡(luò)和 TextCube;最后怎么從網(wǎng)絡(luò)和 TextCube 中挖掘出 Actionable Knowledge。
Philip S. Yu 是伊利諾伊大學(xué)芝加哥分校計算機科學(xué)系特聘教授,清華數(shù)據(jù)科學(xué)研究院院長,世界知名的數(shù)據(jù)挖掘和數(shù)據(jù)管理研究專家, ACM 及 IEEE Fellow。Philip S. Yu 教授早年于斯坦福大學(xué)獲得博士學(xué)位,曾長期在 IBM Watson 研究中心工作,建立了世界知名的數(shù)據(jù)挖掘和數(shù)據(jù)庫研究部門。迄今,Philip S. Yu教授已發(fā)表論文 1000 余篇,獲得專利 300 多項,在谷歌學(xué)術(shù)的 H-index 與 Michael I. Jordan 不分伯仲,名列全球計算機科學(xué)領(lǐng)域高引作者前十。
本文為 Philip S. Yu 教授在 CCF-ADL 所做的演講《Broad Learning via Fusion of Social Network Information》,雷鋒網(wǎng) AI 科技評論對其演講內(nèi)容做了全文整理,有改動和精簡。
謝謝唐杰教授的介紹,我今天很高興能夠在這里跟大家討論一下「廣度學(xué)習(xí)」(Broad Learning)。
我們知道「Big Data」有四個「V」——Velocity、Volume、Veracity 和 Variety。我們今天討論的問題主要是其中之一 Variety,即數(shù)據(jù)的多樣性,例如高維數(shù)據(jù)、異質(zhì)數(shù)據(jù)源、無結(jié)構(gòu)數(shù)據(jù)類型(圖片、網(wǎng)絡(luò)、序列、文本)等。「廣度學(xué)習(xí)」所要考慮的問題就是如何將各種各樣的數(shù)據(jù)整合在一起,以獲取更多的信息。
現(xiàn)在大家談?wù)撋疃葘W(xué)習(xí)比較多,而事實上對于數(shù)據(jù)我們不僅要挖得深,還要挖得廣。例如對于網(wǎng)頁數(shù)據(jù),深度學(xué)習(xí)能夠單獨學(xué)習(xí)文本數(shù)據(jù)、圖像數(shù)據(jù)等里面的特性。但是我們知道真實的網(wǎng)頁可能同時包含文本、圖片、音頻、鏈接等等的數(shù)據(jù)。
事實上,我們講的大數(shù)據(jù)并不是說所有數(shù)據(jù)都很大,只是整體很大而已。更多的情況是,我們擁有許多不同來源的(?。?shù)據(jù),它們之間相互有或多或少地聯(lián)系。如果能夠?qū)⑦@些不同的數(shù)據(jù)源整合在一起,那么我們將挖掘出更多有價值的信息。
首先我們認同這樣一個觀點,即所有類型的數(shù)據(jù)都是可用的,換句話說就是沒有沒價值的數(shù)據(jù)。問題的關(guān)鍵就在于我們?nèi)绾螌⑦@些數(shù)據(jù)融合在一起。那么如何做呢?這就需要「廣度學(xué)習(xí)」了。
要做好「廣度學(xué)習(xí)」,我認為需要以下三步:
首先,定義并獲取相關(guān)的有用數(shù)據(jù)源,也即找到對你的問題有用的數(shù)據(jù);
其次,設(shè)計一種模型來將異質(zhì)數(shù)據(jù)源信息融合起來;
最后,基于模型整體的需求從各種數(shù)據(jù)源中深度地去挖掘信息。
這有很多例子。例如我們從一個社交網(wǎng)絡(luò)平臺中獲取的數(shù)據(jù)可能并不充分,如果我們能將其他社交網(wǎng)絡(luò)平臺的數(shù)據(jù)與它融合在一起,那么我們將獲得更充分的特征信息。
再例如,在生物醫(yī)學(xué)中我們研究腦的潛在病理預(yù)防。我們所擁有的數(shù)據(jù)除了腦的 MRI 影像,還可能有認知測量、免疫測量、臨床測量等的數(shù)據(jù)。如果能夠?qū)⑦@各種各樣的數(shù)據(jù)合在一起,那么將能夠更好地去分析潛在的疾病問題。
當(dāng)然還有智慧城市的研究(我們有共享單車、加油站、實產(chǎn)評估等不同的數(shù)據(jù))、藥物發(fā)現(xiàn)等的例子。
深度學(xué)習(xí)的「深」是指你對數(shù)據(jù)訓(xùn)練的模型層數(shù)深;而廣度學(xué)習(xí)的「廣」是指我們訓(xùn)練模型的數(shù)據(jù)類型廣。這兩個概念側(cè)重的點不同,但可以結(jié)合在同一個模型當(dāng)中。我們下面會講。
Ensemble Learning 指的是我們有許多不同的 model,但數(shù)據(jù)源是同一個;而 Broad Learning 是將多種數(shù)據(jù)源融合進一個模型當(dāng)中進行信息挖掘。
我們平時可能說到的 Multi-view Learning、Multi-source Learning、Multi-model Learning、Multi-domain Learning 等等其實都是 Broad Learning 的特例。
另外一個我們會講到的是Transfer Learning。所謂遷移學(xué)習(xí)就是將一個 domain 的信息遷移到另一個 domain。如果我們把一個 domain 看做一個數(shù)據(jù)源,那么事實上 Transfer Learning 也是 Broad Learning 的一個特例。
我們來看廣度學(xué)習(xí)的類型大致可以分為三類:
首先是在同一個實體上有不同類型信息的學(xué)習(xí)。這種類型的廣度學(xué)習(xí)包括前面談到的 Multi-view Learning、Multi-source Learning、Multi-model Learning 等。
其次是在不同的但類型相似的實體上信息的學(xué)習(xí)。這包括 Transfer Learning。
另外是在有復(fù)雜網(wǎng)絡(luò)類型關(guān)系的不同類型實體信息的學(xué)習(xí)。這包括基于融合的異質(zhì)信息網(wǎng)絡(luò)(HIN)。
對于廣度學(xué)習(xí),主要有兩個關(guān)鍵的任務(wù):信息融合和知識發(fā)現(xiàn)。因此對應(yīng)的就有兩個基本的挑戰(zhàn),其一是發(fā)現(xiàn)什么數(shù)據(jù)是有用的,如何將這些數(shù)據(jù)融合在一起;其二就是要明白想要挖掘什么(并不是所有數(shù)據(jù)對特定的知識發(fā)現(xiàn)都有用),以及如何從融合的數(shù)據(jù)中挖掘出有用的知識。
今天我們將以社交網(wǎng)絡(luò)為例來詳細闡述廣度學(xué)習(xí)。對于社交網(wǎng)絡(luò),例如 facebook,其特點就是規(guī)模巨大、每日新生成內(nèi)容體量大、數(shù)據(jù)類型豐富多樣、噪聲多、信息量大但也較難挖掘。
當(dāng)然社交網(wǎng)絡(luò)并不止一家,在國外有 Facebook、Twitter、Foursquare、LinkedIn、YouTube、Instagram、WhatsApp、Google+等,在國內(nèi)有微信、微博、QQ 等。每一個個體可能會注冊使用多個社交網(wǎng)絡(luò)平臺。
下面我將講述三個社交網(wǎng)絡(luò)的問題。
注:POI,Point of Interest
我們用這個例子來說明如何將深度學(xué)習(xí)和廣度學(xué)習(xí)結(jié)合起來使用。
首先要知道的是,我們需要(或者有)什么數(shù)據(jù)。在 Location-Based Social(LBS)的社交網(wǎng)絡(luò)中每一個人都一個 check-in sequence。除此之外,LBS 的社交網(wǎng)絡(luò)一般情況下還會有評論的信息。
所以對于我們做 POI 推薦有兩種數(shù)據(jù)可以用:User's check-in sequence 和 User's review on POI。
另外,對于 POI 的評價可以從兩個角度來看。首先從用戶的角度,同一個用戶可能會對不同的產(chǎn)品(餐館、食物、電影等)進行評價,我們可以通過用戶的評價對用戶的興趣進行畫像和推薦。其次從 POI 的角度來看,對于每一個 POI 都會收到各種各樣用戶的評價,以此我們可以對 POI 進行特征畫像。
然后就是我們怎么把數(shù)據(jù)進行融合。我們提出一種新的「深度學(xué)習(xí) + 廣度學(xué)習(xí)」的模型,叫做 Deep Content-aware POI Recommendation model (DCPR)。具體來說就是我們設(shè)計了一個有多個深度神經(jīng)網(wǎng)絡(luò)組成的多層深度網(wǎng)絡(luò)結(jié)構(gòu)。在其前端,我們將多種類型的數(shù)據(jù)(POI 視角和用戶視角的評論和 POI)映射到高維非線性的 latent space (POI space) 中,然后用 CNN 模型對其特征進行提取。LSTM 網(wǎng)絡(luò)通過結(jié)構(gòu)化方式連接起來,因為 LSTM 通過將表征向量作為來自 CNN 層的輸入來學(xué)習(xí)用戶偏好和具有 POI 語義信息的先驗知識的序列模式。最后,頂層的個性化排序?qū)勇?lián)合優(yōu)化了前兩層(卷積層 CNN,遞歸層 LSTM)中產(chǎn)生的潛在表示,它進一步改進了前兩層學(xué)習(xí)到的潛在特征,以產(chǎn)生更準確的模式和更好的推薦。
我們使用的數(shù)據(jù)集來自兩個社交網(wǎng)絡(luò)平臺 Foursquare 和 Yelp。同時我們對比幾種較為常見的方法,其中 FPMC 和 PRME 是目前兩種 state-of-art 的推薦方法。
我們用三個指標來評估這些方法的性能,分別為 precision@TopN、Recall@TopN 和 Fscore@TopN。
這是 Foursquare 用戶興趣點的分布區(qū)域。
這是 Yelp 用戶興趣點的分布區(qū)域??梢钥闯?Yelp 用戶的興趣點主要集中在北美,而 Foursquare 則分布較廣。
我們看看實驗結(jié)果。橫坐標是使用的數(shù)據(jù)量(占全部數(shù)據(jù)的百分比),縱坐標是對應(yīng)的表現(xiàn)性能??梢钥闯鑫覀兘Y(jié)合深度學(xué)習(xí)和廣度學(xué)習(xí)的模型 DCPR (紫色)在各個結(jié)果對比中都明顯比別的模型要好。
這顯示了 DCPR 在 Precision@Top5 和 Recall@Top5 中相比 FPMC 的增益??梢钥闯鲈诿總€用戶群(黃色圈)中,DCPR 都達到了 10%以上的增益。
這個例子簡單說明了怎么把深度學(xué)習(xí)和廣度學(xué)習(xí)結(jié)合在一起來做 POI 推薦。
我們第二個例子是怎么把不同的社交網(wǎng)絡(luò)平臺信息融合在一起來做朋友推薦,也是所謂的 Link Prediction。
我們前面說過,有各種各樣的社交網(wǎng)絡(luò)平臺,這些平臺都只能抓取到一個人的某一種行為;如果能將不同平臺的數(shù)據(jù)融合在一起,那么我們就可以增加對這個人的了解,也就可以做更好的預(yù)測。
要做這個事情有兩個挑戰(zhàn)。首先,一個人在不同的平臺可能有不同的名字,所以將不同平臺的用戶對接起來是一個很大的挑戰(zhàn)。另外,不同的平臺功能不同,并不是所有的數(shù)據(jù)都是有用的,你要將不同平臺的知識遷移過來也很不容易。
我們所要做的就是更精確地進行朋友推薦。如果一個人在某個平臺并沒有很多 connection,那么我們就應(yīng)該考慮是否可以從別的社交平臺拿到關(guān)于他的數(shù)據(jù),特別是那些已經(jīng)很好建構(gòu)的以及公共可用的數(shù)據(jù)。這會提高我們的推薦精度。
首先考慮我們能在一個社交網(wǎng)絡(luò)平臺獲得什么數(shù)據(jù)。顯然,我們可以根據(jù)用戶的定位、有什么朋友、什么時候比較活躍以及喜歡發(fā)表哪些方面的評論來挖掘到他的 who、where、what、when 的信息,我們稱之為「4W」。
其次,我們希望能夠通過多個社交平臺來進一步地提高推薦的精度。例如在 foursquare 和 twitter 上有些用戶我們知道他們是同一個人,因為他們使用了相同的 ID( Anchor Links)。但是很多人并沒有對應(yīng)關(guān)系(Non-Anchor Links)。我們把這樣的兩個(多個)網(wǎng)絡(luò)合起來稱之為 Partially Aligned Social Networks。
另外一個我們需要考慮的問題是怎么去表示關(guān)系的遠近。假設(shè)我們有一個 target 社交網(wǎng)絡(luò),其他社交網(wǎng)絡(luò)可以和它有某種連接。我們將 target 網(wǎng)絡(luò)中每個人 embedding 到一個表示空間中。在表示空間中距離相近的就可以考慮推薦做朋友。
下面我們首先考慮怎么把「4W」的異質(zhì)網(wǎng)絡(luò)信息融合在一起。
對這種異質(zhì)數(shù)據(jù),我們使用一個 Network Schema 來表示,也即將 what、who、when、where 等通過網(wǎng)絡(luò)的形式連接起來。
這里我們定義一個概念,叫「meta paths」,也即每兩個用戶之間的連接路徑。于是考慮兩個不相連的用戶U1和U2是否可以推薦做朋友,根據(jù)上面「4W」的異質(zhì)網(wǎng)絡(luò)信息,有兩種考慮:
1)兩個用戶如果 follow 同一個人,或者被同一個人 follow,那么這兩個人就有一定的相似,這是同質(zhì)路徑。
2)如果兩個人發(fā)布的信息有相同的 word、相同的 location 或者相同的 time,那么他們在異質(zhì)網(wǎng)絡(luò)中也可以通過異質(zhì)路徑連接起來。
根據(jù)這兩種方式,我們就可以對每種類型的數(shù)據(jù)畫一張關(guān)系圖。
這些關(guān)系圖的數(shù)據(jù)類型是同質(zhì)的,也即我們將「4W」的異質(zhì)網(wǎng)絡(luò)信息融合了起來。接下來我們就可以用這些同質(zhì)數(shù)據(jù)來做深度學(xué)習(xí)了。
我們再來看多平臺數(shù)據(jù)之間怎么融合。
在兩個社交網(wǎng)絡(luò)平臺,例如 Twitter 和 FourSquare,有些用戶擁有相同的 ID,我們知道它們是同一個人。如前面所說,A1 和 A2 之間就構(gòu)成了一個 Anchor Link。類似的這些 Anchor Links 作為兩個網(wǎng)絡(luò)的橋梁,將兩個網(wǎng)絡(luò)連接了起來。如上圖,在 網(wǎng)絡(luò) 1 中 C1 和 D1 之間沒有聯(lián)系,但是經(jīng)過與網(wǎng)絡(luò) 2 之間的 Anchor Links 后,C1 和 D1建立了聯(lián)系。
如果將 word、location、time 加進去,構(gòu)建的將是更加復(fù)雜的網(wǎng)絡(luò),但考慮的方式是類似的。
基于以上的考慮,我們構(gòu)建出了這個 DIME 模型。這個模型首先在單個網(wǎng)絡(luò)內(nèi)部將異質(zhì)信息進行融合,然后再將多平臺信息融合在一起進行深度學(xué)習(xí)訓(xùn)練。
這是我們的數(shù)據(jù)集,用的仍是 Foursquare 和 Twitter 的數(shù)據(jù)。
這是對比的幾個模型。對朋友推薦評測的標準為AUC、精度、Recall 和 F1。
實驗的結(jié)果可以看到,在關(guān)系預(yù)測中,無論是 AUC、精度、Recall 還是 F1 等評價標準上,DIME(EIME-SH)的結(jié)果相比其他幾種方法(Auto-encoder、LINE、DeepWalk)都要好很多。
同樣這種方法也可以做社群檢測,結(jié)果也都比別的方法好。
總結(jié)就是,我們將網(wǎng)絡(luò)中的異質(zhì)數(shù)據(jù)以及不同平臺的數(shù)據(jù)融合在一起可以做出更加精確的朋友推薦(或 Link Prediction)以及 Community Detection。
最后我們看在 Q&A 中怎么做 text mining。
一個問答,尤其是較為復(fù)雜、深度的問答最重要的就是理解 query 是哪一類的問題,以及該回答什么類型的答案。
我們以在線醫(yī)療問答為例。上面是病人在線咨詢的一些藥物相關(guān)的問題。對于機器來說,這些問題并不是那么容易回答。它們不像政治和體育類的問答只需要上下文的背景就可以明白用戶咨詢的意圖。對于醫(yī)療上的這些問題,例如「做完胃部手術(shù)后多久可以吃辛辣的食物?」,「胃部手術(shù)」和「辛辣食物」結(jié)合在一起,即使機器有關(guān)于這兩者的背景信息,可以也并不是很容易檢測出用戶的意圖。
我們該怎么做呢?
對于這種類型的問答,我們通過分析后發(fā)現(xiàn),它其實包含兩部分。
一部分是用戶知道的信息,一部分是用戶需要的信息,我們用<s, n>表示。例如<symptom,medicine>對,用戶描述的是他知道的癥狀,他需要的是藥物信息。我們還可以構(gòu)建<symptom,diet>等類型的信息對。
事實上除了 Symptom 外,還有 Medicine、Disease、Examine、Surgery 等。如上圖所示,我們通過有向箭頭表示這種關(guān)系對。
設(shè)計問答系統(tǒng),我們首先要考慮的是數(shù)據(jù)源是什么,以及怎么去表示它們。
我們發(fā)現(xiàn)在這種問答系統(tǒng)中單獨地用 Word Embedding 一種表示并不充分,因為我們還要考慮不同的信息類型(例如 s 是 Symptom 還是 Surgery)。因此我們生成了另一種視角的表示,即 POS(part of speech)tag。從這個方面來看,其實這就是一個 Multi-view Learning 問題。
對于詞表示學(xué)習(xí),我們選擇大約 6400 萬條無標記的 query 數(shù)據(jù)進行單獨訓(xùn)練,并學(xué)習(xí)到一個 100 維的離散表示。
POS tags 包括一般的詞性標記,例如名詞、動詞、形容詞等。另外就是特殊領(lǐng)域名詞,在我們的研究中共標記了 80726 個詞,其中 Top3 的為 n_disease(25259)、n_medicine(22689)、n_symptom(14726)。需要特別強調(diào)的是,重要的輔助信息可以幫助模型識別醫(yī)療 query 中的特殊話題詞匯。
這是我們的模型。在這個模型中,可以看到我們首先將 question 分別表示為 word 和 POS tags 數(shù)據(jù),并將它們 embedding 到相應(yīng)空間中,隨后單獨進行 CNN 訓(xùn)練,再然后將它們訓(xùn)練的結(jié)果融合在一起編碼,分別得到 Concept 和 Concept Transition。通過這兩者我們可以得到更好的問答效果。
我們也和一些 Baseline 的方法進行了比較。
從這個圖中,可以看出我們用 Concept 和 Concept Transition 的方法(NNID-FC)效果比其他兩種好。
總結(jié)來說,我在這里用這個例子說明了怎么做 Multi-view 的廣度學(xué)習(xí)。
在大數(shù)據(jù)時代,數(shù)據(jù)是最為寶貴的資源。對個人和企業(yè)來講,對大數(shù)據(jù)的挖掘?qū)⑹且淮晤嵏残缘臋C會;當(dāng)然大數(shù)據(jù)有四個「V」,所以對大數(shù)據(jù)的挖掘同時也是一種挑戰(zhàn)。
我們今天的講座主要是解決大數(shù)據(jù)的 Variety,也即通過融合異質(zhì)數(shù)據(jù)源來進行廣度學(xué)習(xí)。
真實生活中的數(shù)據(jù)一般都不是只有一個數(shù)據(jù)源,而是要融合多個數(shù)據(jù)源才行。因此有效的學(xué)習(xí)應(yīng)當(dāng)同時需要廣度和深度。
全文內(nèi)容有刪減,僅供參考。視頻請點擊AI慕課學(xué)院報名鏈接。
~~~~~~~~~~~~~~~.
人工智能培訓(xùn)平臺 AI慕課學(xué)院獲 CCF 獨家線上視頻版權(quán),點擊報名鏈接或掃描下面二維碼即可完整觀看13 位學(xué)者現(xiàn)場授課、交流場景。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。