您當前的位置:首頁 > 舞蹈

OPT Extension的Comment都在說什麼?

作者:由 張泰源 發表于 舞蹈時間:2015-11-07

今天剛剛被OPT Extension相關的訊息刷屏了,說是最近幾天在OPT Ext公示的網站下面出現很多負面評價,於是乎有不少人在各大出國留學/工作的平臺上發帖呼籲大家去刷正面評價。於是在順手灌了一發水之後,我手賤點開了所有評論,想看看大家都在說什麼。

點開之後是這樣的,起初幾條看起來都不錯。唔,不過六千多條,懶得翻後面,寫個程式爬一下吧(這裡發現發現數據是用javascript載入的,不能直接爬,於是開啟Chrome的偵錯程式hack一下。不過貌似這裡用的是GWT,資料格式非常奇怪,下載下來有點解析小問題,將就用了),最終有效資料大概5000多條。

那麼問題來了:正面評價/負面評價各多少?根據個人感覺,正面評價要遠遠多於負面評價。這好像是一個domain specific的sentiment analysis的問題,身為一個身懷三腳貓功夫的data science的學生,那怎麼能不用machine learning這種高大上的工具來解決問題呢!但是!沒有標註資料啊!只好先作罷,腦補了幾個關鍵詞分別代表正面和負面。

正面的關鍵詞有:

‘support', 'agree', 'pass', 'benefit', 'great', 'approve', 'recommend', 'necessary', 'good', 'boost', 'great','welcome’

負面的關鍵詞有:

'oppose', 'disapprove', 'disagree', 'hurt', 'stupid', 'stop', 'suffer', 'citizens', 'cheap'

這個短小精悍的關鍵詞列表是經過迭代的!我基本遵守高precision不管recall原則,先選一些比較明顯的,然後拿來當一個樸素的分類器,找出一些positive和negative,然後人肉標註一下,再分別統計下positive和negative下各自的高頻詞彙,然後加入到列表裡。比如,‘citizens’這個詞出現頻率很高,因為反對的評論裡面很大一部分都是以“把工作機會留給American Citizens”作為理由。當然這個列表裡面有些詞並不是絕對準確的,比如“hurt”,反對者一般說“這個法案hurt了本國公民的利益”,有贊成的人說“如果沒有這個方案就會hurt美國的經濟”,不過前者居多。

於是,經過這樣一個人肉semi-supervised learning的過程之後,大概得到:

2000多個正面評價,200個負面評價,和2000多箇中立評價。

precision還是很高的,然而recall確實不高。人肉查看了一下2000箇中立評價,個人感覺也還是正面評論居多。但是這個比例似乎有點高,於是,我另外隨機取了200個樣本,繼續人肉標註,最終在這個樣本里面正面比負面的比例大概是

3:1

左右。

最終,根據兩次人肉標註的資料,隨便拿了個LR分類器實驗了一下(處理了一下資料不均衡的問題,cv出來的score還算不錯),得到正面:負面是

2900: 2400

。 真實的比例應該要比這個高一點,因為人肉(真的只能人肉……)看了一下,感覺false positive比false negative出現的機率要少點。

所以最終的結論是,肯定正面評論目前為止是多於負面評論的。

姓名中的端倪

我很好奇投贊成票和投反對票的都是什麼人,於是上網找了一個印度姓氏表和中國姓氏表(其實就是百家姓……),稍微實驗了一下,結果發現:

一半以上的贊成票來自於中印兩國,而在反對票中這個比例只有不到20%(估計很多都是分類錯的,中國人應該都是贊成的)

來自中國的票貌似更多——可能是前陣子的號召確實起了作用,大家都去投票去了(當然也有可能是我找的印度姓氏表不全……畢竟印度的姓氏各種千奇百怪……)

Anyway,還是比較符合直覺的。

關鍵詞

然後,我找出那些在positive和negative兩個列表裡document frequency相差最大的一部分詞,分別作為positive和negative的高亮關鍵詞。發現了一些比較有意思的現象

“strongly” 這個詞出現在positive的頻率非常高,比negative要高。直覺來說,strongly可以說agree也可以說disagree。繼續肉眼檢視資料,發現咱們國人大多數留言都是類似於“I strongly agree with。。。”這種的。短小精悍,挺好;然而灌水還是有點水平比較好……這裡推薦一個連結大家看看如何正確地灌水 如何輕鬆愉快的去為OPT extension灌一瓢水 (附帶條款解讀)【一畝三分地論壇身份移民版】

出現在負面評價中的高頻詞有“wage”, “pay”, “hire”, “jobs”等等。畢竟他們的理由都是美國人的失業率太高啦,不要讓國際勞工搶飯碗啦,之類的。比較神奇的是出現了一個“medicare“,這個估計是個outlier,某(幾)個人在吐槽的時候順便吐槽了一下medicare吧

時間線

我對所有評論按照時間排序,發現如下:

OPT Extension的Comment都在說什麼?

OPT Extension的Comment都在說什麼?

上方是正面評論,下方是負面。可見,大部分負面評論時間較早,而正面評論是後來居上,在出國黨的號召下大家奮力回擊,從而扳回劣勢啊!

其他

在檢視負面評價的時候我發現這群孩子特別喜歡用驚歎號……大概是憤憤之情難以言表吧。稍微統計了一下,驚歎號的使用頻率在負面評價裡大概是正面評價裡的2到3倍的樣子。同理,在負面評價裡也更有可能出現大寫的英文字母,估計還是為了強調語氣

最後,貼一個評論連結,大家有空也去灌灌水吧!

歡迎關注我的公眾號:張泰源_Firstprayer

OPT Extension的Comment都在說什麼?

OPT Extension的Comment都在說什麼?

標簽: 負面  評價  正面  positive  negative