我的偵探大夢

Shou-de Lin

        我從小就想當一個偵探。

        國小中年級時第一次讀到福爾摩斯的故事,就對於這個職業嚮往不已。也很佩服福爾摩斯可以由一個人的袖口、皮鞋推測出他的來意、職業等等。曾經有樣學樣,在日常生活中也開始學起福爾摩斯,有事沒事便瞪著人看,希望能從中道出個蛛絲馬跡,不過大概是我天生觀察力不佳加上急功近利,結果總是沒有像小說般的戲劇化
 

「你西裝袖口有長期磨損的痕跡,應該是簿記或書記相關的職業吧?」    「不是啦,這西裝是跟我老哥借的∼」
「看你神情痛苦、捧著臉頰踱來踱去,是不是牙齒不舒服?」   「廢話,在牙醫門口不是牙齒不舒服是甚麼?」
 

到處碰壁無損我對偵探的憧憬,到了國小高年級時,一整套福爾摩斯已經看得滾瓜爛熟,順便連圖書館的亞森羅蘋的故事也一網打盡。羅蘋的故事就不那麼靜態,除了推理還有易容、冒險、尋寶等等。常常讓小小年記的我看得熱血沸騰,覺得能經歷一個真正的推理冒險故事才不枉此生。

        不僅如此,從小我就展現過人的偵搜天賦。比如說國小五年級要分班前,就會到處調查每個老師的底細,倒也不是教得好不好,而是會不會打人,而且打人會不會痛。比如說偷偷記下來喜歡的小女生回家的路線,然後沒事就經過一下製造偶遇的機會。比如說高中時的情書都以特殊的密碼寫成,因為對手家長也喜歡當偵探,常常沒事翻女兒的書包抽屜,當然,也造就了一場場編碼與解碼的無聲大戰。

        長大了以後,當大學聯考成為念茲在茲的目標後,偵探的夢自然被塵封到心中邊緣的角落。放眼望去各校各系,看不出來哪一個是跟偵探推理有關的。當醫生?實在沒有興趣扮演「華生醫師」這種常常得做出「恍然大悟」表情的角色。當警察?一則體格不夠,一則是自己喜歡動腦卻不是很喜歡動手。當電機工程師?好吧!當不當偵探都是得混口飯吃。於是,推理的對象從人類變成電壓電流電阻電容。這些小東西其實用算的比較好,所以我推來推去總是弄不清楚電壓的大小或電流的方向,不過,終究還是熬到畢業。

        退伍後決定出國深造。其實精確地說不是「深」造,而是從頭開始一個新的研究領域,基本上是希望去探討如何賦予機器智慧。大家所通稱的人工智慧其實範圍很廣,從會自動讀書的程式到電玩裡面會偷襲的AI、以致於會踢足球的機器人或會辨識物品/聲音的軟體都包括在內。2001年底我來到了USC一個叫資訊科學研究院(information sciences institute, ISI)的地方,跟我未來的老闆interview一個研究生的工作。這個計畫隸屬於美國國防部,基本上就是要設計一個普及的演算法,能從成千上萬的資料中找出有趣的事("interesting instances")。比如說如果能從數百萬筆資料中找出誰有可能是危險人物;從受害者的人際網路中找出誰有可能是兇手;從一大串可能的食物鏈中找出某種疾病的成分或剋星;從化學分子或是基因蛋白質網路中找出特別奇怪的元素等等。這個計畫叫做KOJAK,取自70年代美國一個蠻紅的偵探影集,因為目的就是要設計出一個能夠像偵探一樣,從眾多線索裡抽絲剝繭找出有用資訊的系統。
        聽到這個以偵探命名的計畫,當然激起了我的興趣,沒想到到了快三十歲了終於碰到可以重拾過去偵探夢的機會,於是接下來數年我花了蠻多心力投注在這個研究上面。在網路世代當偵探,不再像是福爾摩斯等人需要到現場努力蒐集線索;相反的,這是資訊爆炸的年代,線索不是沒有,而是太多。於是重要的工作變成創造出一個有智慧的系統,能夠幫忙從數百萬筆線索(大多數是沒有用的)中查出重要的資訊以及可疑的個體。
        這是一個非常有趣的題目,但是在現實生活中有很多偵探小說裡面不用考慮到的瓶頸需要克服(關於所用的方法,因為涉及較多專業的術語,就不在此贅述),其中一個很大的瓶頸,是在evaluation的部分:如何能夠知道系統找出來的東西是對的?利用人工產生的模擬資料?人們會覺得公信力不夠;利用真實世界的資料?一方面是並沒有管道得到資料,一方面即使得到大眾的資訊也沒有最後的答案,因為我們不知道誰才是可疑人物。更何況在美國所有跟國防或是個人隱私的資料都是保密性質的,除了特殊身份的人以外並沒有權限使用。這個關於evaluation的問題耗費了我很長的時間才利用一種巧妙的方法間接克服,靈感的來源也是拜偵探故事之賜:仔細想想金田一或是柯南的漫畫,其最吸引人的部分往往不是一開頭,而是從金田一用帥氣的姿勢說出「謎底完全解開了」、或是「沈睡的小五郎」睡著之後才開始,因為接下來這些偵探們將要詳細解釋為何XXX就是兇手。對於一個人工智慧的偵察系統也一樣,如果它只是單純的給出幾個嫌疑個體的名字或代號,使用者可能不會太有信心,而且不知道從何驗證起。試想,如果大偵探在蒐集完線索後,用手指指著某人說:「你就是兇手」,然後故事就結束了的話,這樣的故事大概不會有甚麼人想要看。由此可知,「擁有自我解釋的能力」對於一個discovery system來說是非常重要的功能,系統除了要指出可疑的個體外,還要解釋為什麼它會做出這樣的結論,於是使用者可以根據它的解釋來判斷真偽,這樣的解釋也可以提供使用者一個未來繼續探查的方向。
        以上的概念後來成為我博士論文的主軸。論文的第一部份在探討如何從複雜的人際網路(或是社會網路,語意網路)中找出特殊或是可疑的現象與個體;第二部分主要focus在如何對於第一部份的結果自動產生可被人類接受的的解釋,就像是沈睡的小五郎做的事一般。因為沒有真實的犯罪或是恐怖活動的資料,於是我的實驗都是拿網路上面可以找到的人際關係資料(比如學者們在學術上的交流)或是電影明星的資料來測試。系統有能力自動發現很多特別且有趣的現象或是觀念,比如說有三篇高能物理的論文(假設文A,文B,文C),其中論文A引用論文B,論文B引用論文C,論文C引用論文A(這造成一種時序上的矛盾,不知道哪篇先寫哪篇後寫);又比如說某人在不同時候發表兩篇篇名完全一樣的論文;著名的藝術家達利(Salvador Dali)其實演過電影等等。最令人興奮的是,即使這個系統與演算法從都到尾都是我自己設計以及實作的,但是在執行之前,其實自己也無法預測它會找出甚麼東西。常常它認為有趣的結果,在一般人眼中沒有甚麼特別價值(比如說梅格萊恩的先生的兄弟也是演員,比如說奧利佛史東曾將某作曲家寫的書改編成劇本),不過偶爾會找出如前述矛盾的論文引用這類乍看之下沒甚麼,但是仔細想想蠻有趣的現象。所以每每有新的資料進來,在執行前我都是充滿期待與好奇的。
        在KOJAK在進入第三年的時後,funding突然被砍掉很大一部分,沒有辦法繼續支持我的研究,當時很多教授都勸我不要再以這個計畫當成博士論文主軸。不過當時的我覺得這個計畫不僅符合我一直在追尋的主要研究方向(也就是複雜網路系統的研究),而且還可以玩偵探遊戲,加上前面兩年的努力已經讓我們成為這方面的先驅,也有許多有趣的想法還沒實現,所以我還是決定繼續以這個題目做為博士論文。這個決定也代表了我得自己尋找外部的funding。剛開始當然很辛苦,常常要去兼差其他的計畫賺學費跟生活費,直到一年後在因緣際會之下認識了我現在的老闆:羅沙拉摩斯國家實驗室的一個計畫負責人(註:羅沙拉摩斯就是當年歐本海默、費曼等人做出原子彈的實驗室,也是後來李文和被控竊取機密資料的地方。在二次大戰結束後,這個實驗室轉型成為研究核子動力,武器,能源計畫等的大型實驗室,在9/11之後也著手研究與國土安全相關的題目)。實驗室對我的系統很有興趣,想要試試看能否用在homeland security相關的問題上。所以,即使我不是美國人無法接觸機密資料,也無法幫忙建系統(所有寫程式的人也必須是美國人),但是他們還是決定雇用我。更幸運的事,我唯一的工作就是做自己的論文,讓他們可以從旁觀察並瞭解系統如何運作。這對我而言是當然是絕佳的機會。於是,從2005年開始,我的偵探研究據點從洛杉磯這個大城移到了新墨西哥州羅沙拉摩斯的這個神秘的小鎮。在2006年,我終於完成了博士論文,距離1996年從NTUEE畢業剛好十年。這一路走來,最感激的是不管自己經歷多少挫折,都從沒有對我失去過信心的家人親戚與朋友們。

        從小就想當偵探,可惜夢想一直沒機會達成。堪可告慰的是,我的電腦倒成了它的世界中的福爾摩斯。