2014年12月28日 星期日

張凱崴學長 (B92, R96, 伊利諾大學厄巴納-香檳分校博士生)

訪問對象 : 張凱崴 學長
訪問時間 : 2014/12/7(日)
訪問人員 : B02902023 陳文晧,B02902093 謝承榮

主題: 人工智慧


大學階段:
1. 為什麼大學會選擇資工系?
ANS:
從小我就對資訊領域產生興趣。高中時參加資訊比賽以及培訓,從中學習到許多演算法等知識,所以最後申請進入了資訊系。雖然也考慮過電機系及物理系,但還是覺得資工最符合自己的興趣。

2. 為什麼會雙主修電機系?
ANS:
喜歡物理和基礎科學。原本有想過雙主修物理系,但是覺得電機系與資訊系較相關,所以還是選擇電機系。電機系的課程部分對我往後的研究有幫助,不過如果讓我重新選擇,我會選擇雙修數學系或是多花點時間做大學專題。
3. 是什麼時候決定深入鑽研人工智慧領域?
ANS:
高中時期就對人工智慧產生興趣,電影中也有許多情節跟人工智慧相關(機器人等等),讓人心生嚮往。大二時,因為林智仁教授在BBS的板上PO文尋找大學部學生研究機器學習,我就跟著好友報名進入了他的實驗室。


碩士階段:
1. 是否想過出國念碩士?
ANS:
高中就有想出國的想法,但大學畢業時跟林智仁教授的研究做到一半,感覺很有潛力,於是就留下來把它做完整,畢竟有研究成果可以申請到比較好的學校,也可以增加自己的研究經驗。

2. 碩士期間研究的主要內容是什麼?
ANS:
從大學到研究所期間,我在林教授的實驗室做過兩個題目。
第一個題目研究如何加速線性分類模型。我們研究如何快速地利用大量標記好的資料來建立模型,使得建立的模型可以對新進的資料標記。例如,我們可以收集許多標記好的郵件來讓電腦學習判斷垃圾郵件。我們最後將這個機器學習系統寫成了一個軟體,這個軟體有幾萬次的下載並且被廣泛的使用到各種分類問題上,到現在也還是有很多用戶在使用。算是很成功的研究。

另外一個題目我們研究如何用兩兩比較來排序,例如給兩張圖片讓使用者打分數。打分數的方法是從兩張中選擇比較好看的那張而不是直接評分。直接評分可能因為每個人評分標準不同(有人喜歡評低分,有人則偏向高分)而使分數分布相當極端,結果也因此受到影響。相對比較就不會有這樣的問題。我們最後的系統可以快速的利用兩兩比較的結果來排序使用者對所有圖片的喜好,不過效果卻和其他已知的方法差不多因此無法出版。不過就算如此,我還是從這個研究上學到了很多知識以及經驗。

3. 遇到的最大困難是什麼?
ANS:
很多題目已經有很好的解法,要能再想出更好的方法不容易,要想出值得研究又有機會可以解決的題目也不容易。

4. 要如何在過程中充實自己?
ANS:
對不熟悉的地方去修相關內容的課程。現在網路上也有很多線上式課程,隨時可以學習。多看書、papers也是一個方法。


博士階段:
1. 為什麼會選擇到國外攻讀博士?
ANS:
覺得到國外深究也是一種選擇,可以去看看不同的文化。尤其美國是文化的大熔爐。

2.學長主要的研究領域在機器學習、資料探勘、自然語言處理,請問學長在這三個領域研究內容分別為何?
ANS:
機器學習(Machine learning): 利用大量資料讓機器去學習並建立模型模擬人類的行為,也讓機器學習人類不會的知識。
資料探勘(Data mining): 類似機器學習,但偏向從大堆資料中去尋找關聯性,藉此去推斷未來的趨勢。
自然語言處理(Natural language processing): 讓機器了解人類溝通的語言。

我的研究方向主要是設計有效率的機器學習方法來處理大量以及有複雜架構的資料,並且把這些方法應用在資料探勘跟自然語言處理上。其中一個研究是語言的共指稱問題,也就是藉由收集好的標記資料,讓電腦學習如果判別一篇文章中的兩個名詞是不是指同一個人或同一樣東西。例如,美國總統跟歐巴馬可以指同一個人。考慮語言的架構以及問題的結構,可以設計出更準確以及更有效率的系統。

3. 遇到的最大困難是什麼?
ANS:
找到合適的研究題目。

4. 實驗室裡面的情形是什麼樣的?
ANS:
學生的生活費以及研究經費皆由教授提供,指導教授會給學生一個大的研究方向但是不會有太多限制好讓學生可以自由發揮,僅會適時在旁指導。實驗室裡面的學生研究領域相近,但研究內容不相同。


實習經驗:
1. 在Google 微軟面試問題都問些什麼?
ANS:
應徵實習生分成兩種:一種是工程師,比較偏向產品開發,另一種是研究型,類似大學中的實驗室。而我去實習的是研究型,所以面試問題比較偏向我的研究內容以及找尋公司與我切合的研究方向。
Google的面試會有programming,也會問演算法相關問題。
2. 學長曾經在Google,微軟等公司實習過。請問學長實習的內容分別是什麼?
ANS:
在微軟時,我研究讓機器藉由資料庫裡已有的資訊來學習自動補全資料庫裡遺漏的資訊。例如,字典裏面有標註了相似詞、相反詞以及各種詞語間的關係,然而字典裡的資訊並不完全,如果拿字典去回答GRE的相反詞考題,只會得到大約60分,因為很多相反詞的配對沒有出現在字典裡面。然而如果讓電腦將字典的詞彙以及它們之間的關係讀進去,電腦就可以利用詞語間的關係對這些沒有出現過的配對做推論,因而可以回答出接近90%的GRE題目。大概的想法是如果有三個詞彙a,b,c,如果a跟b相反,而c跟a相似,則可以推斷c跟b為相反,不過實際的模型更複雜。

3. 不同公司間工作的內容差異會很大嗎? 
ANS:
如果是研究型的實習,由於每個研究員研究的類型不同,所以差異很大。

4. 在大學和研究所期間修過的那些課程跟工作內容最相關?
ANS:
每一堂課都與工作內容相關。演算法、資料結構、編譯器等等都扮演重要的角色。其中數學方面的課程(線性代數、機率、微積分等等)相當重要。在大學期間我常常覺得數學課很有趣但是不知道為什麼重要,但其實後來發現有很大的用途。以線性代數為例,許多的定理對我往後的研究工作很有幫助,而證明定理的過程也有助於了解定理背後的涵義。

5. 有沒有大學和研究所過(或沒開)的課程但跟工作內容有很大關聯?
ANS:
原本沒有機器學習課程,但在研究所畢業前林軒田老師就有開。而現在課程幾乎都有了,但就算沒有也可以上COURSERA去找課程學習。


其他:
1. 出國留學申請條件?
ANS:
英文要好,與人溝通才不會太困難。最好要有研究成果,才能跟相關領域的外國教授有共鳴。

2. 資工哪一項未來最具發展潛力?
ANS:
其實資訊領域每個方面都具有潛力,其中以人工智慧和人機介面最熱門。

3. 程式設計師最需具備的特質是什麼?
ANS:
對寫程式的熱忱。有熱忱才能將一件事情做好。

4. 學長對人工智慧領域有什麼目標或理想嗎?
ANS:
希望將來能有一套專家系統,只要將想解決的問題輸入,系統就會自動搜尋相關資料之後把結果輸出。

5. 國內、國外的差異?
ANS:
外國學生(例如:美國)喜歡舉手發問,上課比較像學生跟老師討論,而非單純的教學。不同國家的學生解決問題的方式、思考模式和溝通方式都有很大的不同。美國學生習慣先講重點,東方學生則常把重點放在後面。不同文化之間溝通方式的差異增加溝通的困難。除此之外,還會有TA的討論課,幫同學複習,或讓學生問問題,講解老師上課不清楚的地方。簡單而言就是助教想講什麼就講什麼。

6. 學長有沒有想對學弟妹們說的話?
ANS:
在大學時期多多充實基礎學科(尤其是數學)。培養寫程式的習慣和熱情。有熱情才會有動力,也才可以把事情做到更好。