全自動正妹排行榜

Posted by Mr. Wednesday

最近這一週突然出現了一個引起廣泛討論的網站diggirl,不禁讓Mr. Wednesday想起約莫一年多前想到的天真浪漫的點子,還幫這個點子取了一個名字,叫做BeautyRank。在繼續下去之前,Mr. Wednesday必須要先澄清一下,以下的所有論述都是僅用單一而且偏頗的觀點來看待女性的外貌,事實上人與人的交往絕不應該以如此狹隘的眼光來看待。

回到原本的話題,為甚麼說是天真浪漫呢?因為Mr. Wednesday很想要一個”全自動”的方法可以將所有正妹的相簿找出來並且加以排序。目前台灣最紅的網路相簿應當算是wretch了吧,所以Mr. Wednesday先以wretch作為正妹相簿的來源,說到wretch的竄起,其實Ptt的表特版也是功不可沒, wretch上原本就蘊含大量所謂正妹的相簿,而wretch本身提供的搜尋功能也僅只是關鍵字的比對,如果特別想到找到所謂正妹的相簿事實上用搜尋的方法效果是很有限的。於是乎,某天Mr. Wednesday靈機一動,因為想到wretch的畫面上有提供好友相簿的連結,而這個單向的超連結等於就把整個wretch連結成了一個超大的人際網路(Social network),每個節點代表一個人,每個有向的箭頭就代表了一個好友的關係。正好,超連結分析(Link analysis)的技巧就可以派上用場了,於是就把之前讀到的兩個演算法拿來套用,一個是Sergey BrinLawrence Page提出的PageRank(沒錯,正是Google的兩位創辦人所提出的),另外一個演算法是Jon Kleinberg所提出的HITS

對於PageRank來說,Mr. Wednesday做了兩點大膽的假設,假設一:正妹的朋友也會是正妹,假設二:正妹會被許多異性加入成為好友。於是乎,Mr. Wednesday就以手動的方式加以目測,選出了若干應該是正妹的相簿,給予一個初始值,然後把所有wretch的帳號丟進PageRank裡做計算,形成一個超大的遞迴函式(Recursive function)。

對於HITS來說,需要有兩種身份的wretch使用者協助,第一種就是所謂的正妹(在HITS裡被視為authority),另一種就是專門蒐集正妹的使用者(在HITS裡被視為hub)。同樣地,Mr. Wednesday也手動的方式目測選出若干應該是正妹或者應該是很會蒐集正妹的相簿,給予一個初始值,接著把所有的wretch帳號進HITS的公式裡做計算,仍然是一個超大的遞迴函式。

理論上來說,這是一個漂亮而且全自動的方式,不過在實做上不可避免地碰到了許多問題。其中最大的問題就是初始值的給予,如果用手動的方式檢閱所有帳號再以人工的方式給予一個初始值一定是曠日費時,而且這樣一來就完全失去了當初想要全自動的意義了。第二個問題是,PageRank與HITS這兩個演算法都分別是基於一個遞迴函式,當節點數目一多,計算量將會非常龐大,而如果節點數目不夠多,計算出來的結果卻又會產生相當的偏頗。第三個問題是,其實在 wretch上的這個人際網路的連結程度不如想像中的緊密,存在太多的孤島,並不完全適用於PageRank與HITS的設計。

說了這麼多,其實Mr. Wednesday還是很想要一個全自動的方式能夠即時自動篩選出所謂的正妹相簿,也想到了一些可能可以改進之前碰到的問題的解法。在wretch的相簿裡有兩個數字可以利用,就是”今日瀏覽人數”與”總瀏覽人數”,做個大膽的假設,正妹的相簿一定很多人會來瀏覽,而這兩個數字或許可以直接作為初始值來加以利用。另外一方面,就是要想辦法改善當節點數目很多時遞迴函式的計算效率。

Mr. Wednesday這個天真浪漫的想法與diggirl大異其趣,diggirl利用大量使用者的投票來篩選出所謂的正妹相簿,而BeautyRank想要利用漂亮的數學公式直接計算出正妹的得分並加以排序,兩者篩選的基礎不相同。就正妹的排序這件事情來說,或許,還可以找到一方結合兩者優點的方式吧!

喜歡這篇文章嗎? 分享出去給作者一點鼓勵吧!