關於爬蟲能作的事情,源自知乎劉飛,原嘟嘟美甲產品總監、原錘子科技產品經理

該輪到我祭出我當年研究生期間在實驗室裏參與或旁觀的各類有用或者有趣的課題了:


1. 創建機器翻譯的語料庫。

這是我研究生期間的核心課題,我先來介紹下背景。

你們其實都用過谷歌翻譯、百度翻譯,雖然確實槽點不少,但不妨礙機器翻譯相較過去已經達到基本可用的程度了。

我大概說下機器翻譯的原理。

在幾十年前,計算機學家們的思路是,既然是人工智能的範疇,就讓計算機懂得語法規則、知道詞語含義,跟小孩子上學時學習的語言課程同樣去作訓練,就應該能夠了。

但結果是,基於語義和語法規則的機器翻譯效果糟糕得一塌糊塗。

究其緣由,仍是每一個詞語的含義實在太多、每句話的語境不一樣意思也會不一樣,更別說不一樣語言中要表達清楚同一個意思的方式也徹底不一樣。

好比下圖這個,你以爲英語國家的人能看懂嗎:

其實,當時也有另外一派,叫作統計派。他們認爲,就跟當年打敗國際象棋世界冠軍的「深藍(深藍(美國國際象棋電腦))」同樣,應當用統計的方式去作。你們知道,「深藍」並無領會象棋的下法,而只是熟悉幾百萬的棋局,懂得怎樣走從機率上看起來是最正確的。

機器翻譯也是這樣,徹底能夠輸入人工翻譯的大量語料,而後作出統計模型,讓計算機儘量地熟悉別人是怎麼翻譯的,從而耳濡目染,也能「僞裝」能夠翻譯了。

但那個年代並無條件收集大量語料信息。後來不少年後,谷歌出現了,隨之出現的還有它的超大數據規模和超強的計算能力,因而谷歌的統計機器翻譯系統也就是全球正確率最高的系統之一了。而目前你所用過的、見到的機器翻譯工具,全都是用的統計方法。

故事大概就是這樣。目前學術界的機器翻譯方法中,統計機器翻譯基本是壟斷的地位。而效果的好壞,則基本就看語料庫的規模。(想了解更多,推薦閱讀 數學之美 (豆瓣) 的第2章「‘天然語言處理 — 從規則到統計」及第3章「統計語言模型」)

因此你知道了,個人任務就是跟同窗作一個爬蟲和簡易的分析系統,從而創建一個大規模的語料庫。

網上雙語的資源仍是挺多的,大都像這種:


咱們的爬取步驟大概是:
1. 對當前網頁進行簡易判斷,若是有雙語嫌疑,則收錄整理出來雙語的正文;若是沒有,棄用;
2. 將正文內容進行詳細判斷,肯定是雙語文本,則進行段落對齊和句子對齊,整理到語料庫;若是沒有,棄用;
3. 對當前網頁的全部連接網頁,重複步驟 1

有詳細介紹的咱們申請的專利在這裏:

其實咱們當時的雙語判斷算法和對齊算法這些都不是難點,難點在機器配置、爬蟲設計和服務器維護上。咱們幾乎每天流竄在機房(配置機器、接線、裝機)、實驗室(編寫、運行代碼)、網絡中心(跪求帶寬)、學校物業(空調他媽又壞了)這幾個地方,老是無法消停。

最痛苦的是,假期裏回家遠程訪問下爬蟲,發現 down 機了... 整個假期的寶貴時間就浪費了。

這是咱們當時在又悶又熱又吵的機房的照片:


好在最後咱們終於爬到了要求的語料規模,而且經過了國家項目的驗收。如今這些包括中英俄日的龐大語料正在百度翻譯中起到重要的做用,若是你用過百度翻譯,不妨給我點個感謝 ^_^

若是你對機器翻譯感興趣,也能夠本身爬點雙語語料,作個翻譯器玩玩。這是一個極其簡易的搭建教程:機器翻譯系統的搭建。能夠用它介紹的 1500 句對,也能夠本身多爬一些。搭建好以後,你輸入一句話,看到機器像模像樣地回一句半生不熟的翻譯,仍是有可能會被萌到的。

固然,要是你但願像咱們同樣搭建千萬級甚至億級的語料庫,而且作一個翻譯器,那你須要有特別強大計算能力和存儲能力的服務器、很是寬的帶寬,以及強大的耐心和毅力...


2. 社會計算方面的統計和預測

不少朋友已經提到了能夠經過爬蟲獲得的數據作一些社會計算的分析。咱們實驗室爬取了大規模的新浪微博內容數據(多是非商用機構中最多的),並針對這些數據作了不少有趣的嘗試。

2.1 情緒地圖

@Emily L 提到了著名的根據情緒預測股市的論文: 。其實咱們也仿照作了國內的,不過沒有預測,只是監測目前微博上你們的情緒,也是極有趣的。

咱們把情緒類型分爲「喜悅」「憤怒」「悲傷」「恐懼」「驚奇」,而且對能體現情緒的詞語進行權重的標記,從而給天天每一個省份都計算出一個情緒指數。

界面大概是這樣:

能夠直觀看到全國各省份的情緒。不過實際上我感受省份的區別不明顯,最明顯的是天天全國情緒指數的變更。

好比春節是 2 月 18 日,那天的情緒指數是 41.27,前一天是 33.04,後一天則是 39.66。跟除夕夜都在吐槽和抱怨春晚,而大年初一則都在拜年情緒高漲,初二有所回落這樣的情況預估是一致的。

好比今年 1 月 2 日,上海踩踏事故開始登上各大媒體頭條,成了熱點話題,整個微博的情緒指數就驟降到 33.99 。

再好比 5 月份情緒指數最高的是 5·20,由於今年開始流行示愛和表白;其次就是五一假期那幾天。一樣跟現實情況的預估是一致的。

訪問地址:


2.2 飲食地圖

咱們抽取出全部美食相關詞語,而後基於你們提到的美食次數,作了這麼一份飲食地圖。你能夠查看不一樣省份、不一樣性別的用戶、不一樣的時間段對不一樣類別食物的關注程度。

好比你能夠看到廣東總體的美食關注:


還能夠把男的排除掉,只看女的:

還能夠具體到,看廣東女性天天早上會提到什麼喝的


訪問地址:微博用戶飲食習慣分析


2.3 票房預測

這是咱們實驗室最大膽的嘗試,但願利用微博上你們表現出來的,對某部電影的期待值和關注度,來預測其票房。

細節就不介紹了,目前對某些電影的預測比較準,某些則差不少。由於顯然,不少電影是你們不用說也會默默買票,而不少電影是你們樂於討論但不肯出錢到電影院去看的。

界面是這樣的:


訪問地址:電影票房預測-SCIR

最後貼上咱們實驗室的官方網站:哈爾濱工業大學社會計算與信息檢索研究中心


3. 寫在後面

如今國內的社交平臺(微博、豆瓣、知乎)已經積累了不少信息,在上面可分析的事情太多啦。大到政府部門須要的輿情監控,小到能夠看看喜歡的姑娘最近情緒如何。

其中有些會特別有價值,好比一些重要的預測(股市預測、票房預測),真的作成了的話商業價值根本不可估量;還有些會特別有趣,好比看看 5·20 的時候你們最愛說的情話是什麼,看看我跟李開復之間最近的關係鏈是什麼。

說到這,我忽然很想作個知乎的分析。

在內容方面,好比看看全知乎的文字裏最常出現的人名究竟是 @張佳瑋仍是 @梁邊妖;好比看看政治或者歷史話題下,以表達情緒的詞做爲依據,你們的正能量多仍是負能量多;好比看看當你們提到哪些東西時,情緒會最激動(中醫?老羅?穆斯林?)。

在關係方面,好比看看個人朋友、傳說中認識全部知乎女 V 的 @丁澤宇 到底還有哪一個女 V 沒有關注;好比看看知乎有哪些社交達人,雖然沒多少贊但關係鏈卻在大 V 們中間;好比看看有沒有關注了我同時還被 @朱炫 關注的,這樣我能夠託他給我介紹大師兄。html

相關文章
相關標籤/搜索