About Me

我的相片
台北市, Taiwan
我是方選,
方白科技(finebind tech.)共同創辦人,
臺大資管所畢,
希望能幫助更多的人!

FB: http://fb.com/function1122
LINE: http://bit.ly/1foeZft (手機開啟點擊網址自動加入)

最新15則讀者回應

最新文章

FUNction's 上課筆記

Label Cloud

Blog Archive

FeedBurner

追蹤者

使用基因演算法進行自動文件切割(Story Segmentation)之研究

FUNction 於 2010年8月6日 上午10:42 發表

實不相瞞,我想要找出一種方法,可以偵測一篇文章中論及多少事件,並將這些事件自動切出段落。但目前礙於我搜尋能力的不足,以及論文閱讀速度的限制,實在沒有找到一個合適的方法。今天來介紹成大資工所方國安所撰寫的《應用基因演算法於中文廣播新聞中情境切割及分類》學位論文,希望能得到一些啟發。

這篇論文主要在描述使用基因演算法,試圖對中廣同一個主播連續報導不同新聞事件的語音進行切割。最重要的是對新聞加以分類,並在每個分類中找出具有代表性的專有詞彙,作為辨識新聞主題的工具。下圖描述新聞情境切割的流程,也是本篇文章的主軸。整個演算法主要分成兩大部分:一、找出分界點;二、評估分界點;以下詳述之。

image 
▲新聞內容切割流程圖(Story Segmentation)

使用滑動視窗找出分界點
作者先將新聞分成14群建立類別,再從這14群中找出代表的關鍵字。接著作者對長串的新聞,設計了一個滑動視窗以偵測主題的改變,大小為語料庫中平均故事(Story,這裡指的是一則新聞)長度的一半。滑動視窗每次往下移一個句子,並統計之中文字內容所屬類別(群),依照類別強度繪製強度曲線。我們可以找出類別交錯點,估計新聞主題轉換處。實務上常出現的問題是在轉折處變成緊密夾雜類別的現象,因此要將類別轉換做平滑化的處理。

作者定義「碎裂」為區塊類別持續性小於平均故事的四分之一,而平滑的方式是計算碎裂區塊的向量,看包含哪些所屬的類別,其中強度又為何。如果向量強度偏向於前方的區塊,則往前合併,反之亦然。

使用基因演算法評估分界點
基因演算法通常被用來解決解空間大、計算複雜度大以及需要求全域最佳解的問題。在本研究中,作者對上述方法找出的分界,分別往上與往下算半篇平均故事的長度,形成一個「模糊區塊」。模糊區塊中包含了兩個故事的分界,因此接下來的任務就是透過基因演算法在模糊區塊中找到實際的分界處。

一篇未切割的文件包含n個切割點(n+1個故事),在本實驗中將任一種切割方法視為一個染色體,而n為染色體序列的長度。其中將未切割的文件視為一個染色體(裡面包含多個基因),每個模糊區塊為一個基因,基因的數值k代表從該模糊區塊的第k行作切割。本實驗產生100個染色體族群,則每個族群中染色體的初始值是由亂數產生的(當然不能超過全句數)。世代數為500,交配機率0.25,突變機率0.01,以上均為經驗法則產生之引數。

基因演算法最重要的環節是評估函數,在本實驗中評估函數就是評估分類的正確性,如果切割的解越好,會得到分數越高的分類。再將分類成功度的總數相加,求其最大值。

心得
將基因演算法用在文件切割我認為是非常有創意的,但是必須經過太多的限制與前置條件,才能得到八成的準確率,實際上是否合用還需要要深思。我們注意到,首先必須統計語料庫中的文件,找出通常一則故事的長度;接著必須將故事加以分群,找出每群的特徵。將這兩個重要的預處理做好,才能夠開始切割文件。所以真正的問題是,這樣的切割方法沒辦法用在生活中的語料,例如一篇作文或專題報導;只能夠限定在差不多長度的新聞上

我認為使用統計方法一定會受到這樣的限制,因為電腦始終無法解讀文件內容的涵義,只能瞎子摸象。就算是訓練有素的瞎子,可以精準的摸出每隻大象的眼睛、鼻子、嘴巴或耳朵的位置,但是對象換成一匹馬,瞎子就無法抓出他五官的位置了。因此如果要使電腦能準確的對文件分段,絕不是反覆訓練他摸各種大象,而是告訴他眼睛是什麼、鼻子是什麼、耳朵是什麼…這樣只要不是外星來的生物,應該都有九成以上的辨識能力。


▲瞎子摸象,訓練有素的瞎子不管從大象的何處開始摸,都能摸完整隻大象,但摸別的動物又要重新訓練了…

我想也許還不需要運用到機器學習、人工智慧的技術,但文法剖析對自動分段確有其必要性,如此才能從根本改善分段的準確性。另一個可以思考的方法是我們先對文章進行人工分段,再透過倒傳遞類神經網路找出分段的關鍵,讓機器找到文法剖析的邏輯,也許效能會比我們預先輸入邏輯還蓋面向更廣…但是神經網路該如何設計將是一大挑戰。

最後一點值得考慮的是若要將文件概念分段,畫出文件的樹狀結構也是個不錯的方法,但是就連一般人都需要相當深厚的功力,而且劃分的方法也會因背景知識不同而大相逕庭。不過如果能做出這樣的樹狀結構,在未來將是相當有前瞻性的…也許我該買本國中的歷史地理參考書來看看,找出之中的規則…

主要參考資料方國安,民91,應用基因演算法於中文廣播新聞中情境切割及分類

繼續閱讀全文 使用基因演算法進行自動文件切割(Story Segmentation)之研究

文件自動分段之研究 (含心得)

FUNction 於 2010年8月3日 下午5:11 發表

如果在龐大的語料庫中搜尋「資訊系統」,我們希望得到的是「包含了相互關聯的一組蒐集、處理、儲存以及散佈資訊之單元,以支援組織內的決策與控制」的答案,而不希望出來的是Laudon的MIS一整本書的內容。前述的資訊檢索技術只能提供使用者需要資訊的所在文件,但更進一步我們需要得到的是在文件中哪一個段落,甚至把使用者想要的文句摘錄出來,因此便需要文件自動分段的技術。

資訊系統的定義 
▲Laudon的(周宣光譯)《管理資訊系統─管理數位化公司》一書中對於資訊系統的定義

另一個必須分段的原因在如果一大篇文章講述許多主題,在詞頻統計中的權重就會因為主題分散而被降低,使得排名落後;分段後主題應更為凝聚,比較能與查詢條件匹配,提高了recall與precision。以下介紹常見的自動分段方法:

依文件架構分段(Discourse Passages)
依照文章原有的段、節分割成不同部分。好處是有效率,因為作者已經利用段落切割想表達的概念。缺點是實際上這樣的段落未必正確,因為段落間的概念連貫與文體十分相關。例如將某個概念貫串全文,或是在最後一段總結前面所提到的三個概念,都會影響結果的精確性。因此此法在文件具有高度結構性時表現較好,如百科全書的資訊檢索中。以維基百科為例,在第一段中一定是該名詞的定義,因此在Google搜尋「資訊系統的定義」可以得到網路上 資訊系統 的定義的明確文字敘述。

依文章語意分段(Semantics Passages)
老實說了解這個方法這是我專程來圖書館的重要原因之一,我們一起看下去:「依照文章的語意或主題,加以分析之後,將文章分為概念不同的段落。如[6]中的TextTiling。在原文作者的論文中稱為motivated Segmentation,意思是這種分段方式是有依據可循的。」它的原理是從文件中用詞的相關(lexical connectivity)性判斷,將文件分為不同部分,每個部份內的相關性都很高。

TextTailing 將文件每3-5句組成一個區塊(block),鄰近區塊間比較其相似性。求出區塊間的相似性後,可以依照文章流向和相似性大小畫圖,圖形高峰代表相似性的高峰,而兩個谷底視為段落分割的點。依文章語意分段最大挑戰在調整區塊的大小,區塊大小不同結果大相逕庭。區塊太大會造成夾雜許多概念在文件中的問題,而區塊過小會使區塊相互比較時相似性失去意義(因為可能完全沒有重複的內容,相似度都很低)。

以固定字數分段(Window Passages)
顧名思義,如產生一個長度為200字的文字框,將第1-200個字為第一區塊,201-400為第二個區塊…這樣有個明顯的缺點,相同概念被切成不同段落的機率更高。但是我們必須考慮,在不同的查詢條件下,所需的分段方式可能不同,因此《Passage-Level Evidence in Document Retrival》的作者James P. Callan 在1992年提出了一個方法,從搜尋到的第一個符合查詢條件的字開始,設視窗大小為n,每n/2個字分出一個長度為n的段落。

例如第一個符合查詢條件的字位於第108個字處,而視窗大小是200,則文件會被分為第108~308字、208(108+200/2)~408個字,區塊透過互相重疊降低文字被分至不同段落的機會。經過實驗,在不同種類的文件下,最好的查詢結果視窗大小是不一樣的,因此對一般文件很難找到最佳的區塊大小;在英文裡,區塊通常介於200-400字。

心得
利用隱藏語意索引進行文件分段檢索之硏究的作者研究結果以「依文件架構分段」所產生的分段效果最為滿意,但我個人認為,依文義分段應該是因為詞頻統計的限制,造成效果無發發揮。我們知道,一般詞頻統計採用TF-IDF,但TF-IDF僅針對詞彙出現次數與分布進行關鍵詞的計算,而忽略了重要的文法結構,例如「回指」。「回指」是指語言中提到某事物之後,要再論及該事物時,使用上文參照來表達該事物。例如:「Berry 對 Ray 好,卻不要求他回報。」

其中「卻不要求他回報」就是使用回指的句型,還原後應為「Berry 卻不要求 Ray 回報」。其中使用了兩個回指,一個指向 Berry,一個指向Ray。指向 Berry 的回指因為在文句中完全省略了,所以稱為零形回指(zero anaphora);指向 Ray 的回指使用代詞「他」替代,屬於代詞回指(pronominal anaphora)。在中文中除了上述兩種回指,尚有名詞回指(nominal anaphora)(陳平,1987)。

使用TF-IDF處理的詞彙進行相似度計算時,會因為重要概念的「回指」造成計算的障礙。因為描述相同概念的文句,很可能只有在第一個逗號前講到關鍵概念,而後補充說明的幾句都使用回指簡化句型的重複,基本上我認為一個良好的寫作者會盡量避免文句的相似。因此TF-IDF可能是計算文件中關鍵字的好方法,但應該在小範圍的相似度顯得力不從心。

為了避免這樣的情形,達到文件正確分段,可以考慮從兩方面思考:使用「向心理論」進行回指解析(Anaphora Resolution),將回指替換成真正的名詞後再重新進行文件相似度計算;第二個方法也是依據向心理論而來,透過向心理論找出文句中的主詞,當主詞改變時進行段。方法一顯而易見的只要透過回指替換的預處理就可以繼續使用TF-IDF進行相似度計算,而方法二仍然值得探討。考慮以下文句:

(ㄅ)螃蟹A有四對步足B,(ㄆ)B俗稱「腿兒」,(ㄇ)由於每條腿兒的關節C只能向下彎曲,(ㄈ)C不能向後彎曲,(ㄉ)A爬行時,(ㄊ)A必須先用一邊步足的指尖抓地,(ㄋ)A再由另一邊的步足直身起來,(ㄌ)A把身體推過去。

上述文句中用注音符號表示每一句,底線後加英文字母為出現下指中心(forward-looking center)的地方,而文句中的其他英文字母則為零形回指的上指中心(backward-looking center),指向前面出現過的下指中心。這例子中可以發現文義連貫的句子中主詞會不斷的改變,如上例中的「螃蟹」、「步足」與「關節」,所以主詞改變不一定代表文義的切割,但也許可以建構「共同出現的鍊子」,找出意義的疆界。所謂共同出現的鍊子,在上例中就是:{螃蟹→步足→腿兒→關節},只要在同一句中出現的中心就加入這條集合的鍊子,也就是如果接下來句子的中心出現在集合中,就可以把文句邊界擴大,一直擴大到超出集合為止。

最後一個可以採取的策略是結合「依文章語意分段」與「固定字數分段」。我的想法是如果文件中有句號,就依照句號切割,接下來使用類似n-gram的方法,將每兩到三個句子結合成區塊,最後再進行相似度的計算,藉由句子的重疊,找出相似度的高峰,也是一個可能改善文件分段的方法之一。

以上,顯現我知識不足的粗淺想法,希望能拋磚引玉,共同塑造人類美好生活。

主要參考資料利用隱藏語意索引進行文件分段檢索之硏究 黃卓倫撰

繼續閱讀全文 文件自動分段之研究 (含心得)

文件搜尋的方法 - 資訊檢索(Information Retrieval)

FUNction 下午4:55 發表

資訊檢索系統(Information Retrieval System)可以定義為儲存、展示、組織與存取資訊的系統。文件分析與索引可以協助資訊檢索工作的進行,一般來說可以透過以下模型進行。

基礎方法

布林模型 (Boolean Model)
簡單說就是字串比對,找出「完全符合」搜尋條件字串的文件集合。查詢的條件是單字或片語,並可使用布林運算式:AND/OR/NOT加以連接字串。布林模型的優點是效能高,缺點是不提供查詢結果的相關性排名,使用者無法知道文件符合查詢條件的程度。此外布林模型缺乏彈性,必須要完全符合字串才能被找出。

向量空間模型 (Vector Space Model)
由Gerard Salton提出,他認為資訊檢索過程必須對文件本身進行分析,以建立索引(Indexing)。建立索引的目的是透過索引代表文件集合中的某篇文件,一篇文件可以對應一組索引,這組索引稱為該篇文件的索引向量。一般來說這些索引是利用統計方法對文件產生的關鍵詞所建立的,計算出的文件向量可以代表文件的基本意義,在這個向量之中,每一個關鍵詞上的值代表該文件在這個詞彙所強調的程度,可由如TF-IDF等演算法計算而成。

向量空間模型將查詢字串視為極小篇的文件,將此查詢也以向量方式表示,接著在計算與文件庫中文不同文件向量的內積,計算文件與查詢條件的相關程度。

機率模型 (Probabilistic Model)
其基礎為機率排名原則(Probability Ranking Principle),該原則認為資訊檢索的任務是將文件依查詢條件的機率,與相關的機率加以排序。首先,必須對文件集計算出「檢索出相關文件所花的成本(C1)」與「檢索出不相關文件所花的成本(C2)」;接著使用詞彙統計等方法,計算出使用者認為「某文件與查詢是否相關的機率(R)」,考慮以下算式:

C1 x R + C2 x (1 - R)

算式值越小總成本越低,故排名在越前面。該方法優點在於能找出總成本較低的結果,缺點是詞彙統計只知道詞彙的統計數字,忽略的詞彙所代表的意義,使得無法達到「最佳模型(Perfect Model,只列出所有查詢相關的文件)」。

進階探討

關聯回饋(Relevance Feedback)
由於查詢結果未必符合使用者真正心理需求,調整查詢結果確有其必要。透過使用者對查詢條件的反應,系統重新調整查詢向量中各個不同維度上的權重。一般來說就是將原本查詢條件的向量加上使用者認為相關文件的向量,再減去使用者認為不相關文件的向量,將此結果作為新的查詢向量。每個向量前有一個常數值,透過常數值的反覆調整,產生符合使用者查詢需求的權重向量,相關方法可以參考Standard Rocchio Technique、Ide Regular 與Ide Dec-Hi等方法。

關聯回饋的優點是可以大幅增進查詢效能,缺點是對使用者操作系統造成額外的負擔,這點通常被視為關聯回饋無法普及的原因。

隱性語意索引 (Latent Semantics Indexing, LSI)
詞彙統計的最大問題無法掌握文件中的「概念」,例如許多不同辭彙都可以表示一個相同的概念、而相同詞彙在不同上下文中又可能有不同的概念的問題,LSI是為了解決概念所產生問題的「概念搜尋系統」。LSI也產生文件向量,但採用奇異值分解(Singular Value Decomposition, SVD)縮小文件向量;LSI假設人在使用相關詞彙時有其限制,概念相同的文章通常會有概念相似的詞彙,透過SVD可以去除某些因為詞彙有限產生的詞彙間相關性。

特徵值分析(Eigenvalue Analysis)可以將詞彙加以分類,在最佳情況可以使不同類之下的詞彙完全不相關(G. Salton, Automatic Information Organization and Retrieval, McGraw Hill, 1968, P.135 按:老實說我有點懷疑,鑒於六度分隔理論每個詞彙應該都是有關的)。LSI概念與特徵值分析相同,詳細的步驟可以參考SVD 於資訊檢索與文本搜尋的應用,該文章應用了一個五篇文章的小語料庫對LSI做了詳細的說明,在此對作者周志成(大俠)獻上誠摯的敬意。想了解奇異值分解的推倒,也可以參考他的文章─線性代數基本定理 (四)

LSI最大的問題在與料庫更新後的策略,因為SVD的計算相當耗時,一般來說有兩種方法(加上台大資管所黃卓倫所提出的SVD-Updating成為三種策略),簡述如下:

  • 完全重新計算!
  • Folding-in:假設加入文件不影響詞彙-文件矩陣的特徵值,只計算新增的部分,如此會降低查詢的正確性。
  • SVD-Updating:產生比Folding-in更好的結果,將新文件向輛自成矩陣,附加在原本詞彙-文件矩陣所形成的rank-k approximation matrix 矩陣後,重新計算SVD,但計算複雜度比Folding-in高。

心得
上述方法除了布林模型外,都是建構在詞頻統計上的,因此說詞頻統計是一切資訊檢索的基礎並不為過;另一個重要的工具是「向量」,又牽涉到向量的運算─矩陣。目前的方法都是建立在相似度上的運算再加一些修改,而使用向量相似度似乎也能提供人們一個堪用的結果。在近期的文件探勘文獻中討論到過去使用統計方法居多,但語意理解的方法因為涵蓋較多背景知識,使得發展較緩(《利用機器學習摘要概念為基礎之文件摘要自動建立法》,2007成大資管劉佳宗),而本體論(Ontology)直到近幾年才比較受到重視。

本體論的對應(Mapping)應是LSI的更進一步,使用預先定義好的領域知識,對文件中概念的根源進行探索。例如將「汽車」與「火車」都追朔到「交通工具」,化簡用語不同所造成的「概念」混淆。但不禁讓我思考,我們腦中只有一份本體論,為什麼卻無法在電腦中發展出一本萬用的本體論呢?

我認為問題在於目前的本體論研究缺乏了「構面」的觀念,雖然「概念」間具有「關聯」與「方向性」,但是在不同構面應該產生不同關聯,而構面的決定又依傳入資訊的不同而刺激到不同的區域,引發不同觀念串聯的反應。例如「柳丁」這個概念(原諒我這例子很難舉),在「食物」的本體論中可能會追朔到「水果」,但是在「顏色」的本體論中,可能會追朔到「黃色」,這就是一般研究中說的本體論概念衝突,需要本體論工程師對本體論進行「修剪」。但我認為每個概念都有許多構面,因此不應有衝突的問題。

簡報1 
▲上圖中展現本體論可能有多個構面,每個構面可以再往上歸類,形成一個非常複雜的架構(也應是腦中的資料結構)

雖然我目前仍無法想出一個像專案管理TQC(時間、成本、品質)這麼完善處理概念不同構面的模型,但我想總有一天研究者會發現腦中的資料結構(應該是一種類似物件導向的東西),進行完整本體論的工程。我認為腦中只有兩種資料結構─「事」與「物」,「事」的資料結構較複雜,但「物」較為簡單,也具備繼承、多重繼承的特性。若能突破「物」的本體論,相信在未來電腦解析文件時能產生不亞於人類的理解力。

以上,顯現我知識不足的粗淺想法,希望能拋磚引玉,共同塑造人類美好生活。

主要參考資料利用隱藏語意索引進行文件分段檢索之硏究 黃卓倫撰 P.3-12

繼續閱讀全文 文件搜尋的方法 - 資訊檢索(Information Retrieval)

中英混雜自發性語言語音辨識之研究

FUNction 於 2010年6月17日 晚上8:41 發表

在meeting 中常聽到:

  • 你有什麼comment?
  • 這是個good point!
  • 在這個Algorithm中,我們會先…

雖然既有的單語辨識系統已經漸趨成熟,但在實務上,雙語辨識系統的確有其需要。要建構中英雙語辨識系統,必須要考慮兩種語言的特性,並加以整合。此外,實務應用上的「自發性語音(spontaneous speech)」常伴有許多的停頓、重複、無意義的語助詞或不完整的段落。而且演說者常會把英文說得有點想像中文,例如facebook會說成「非死不可」之類的,也會增加辨識的難度(中:英 = 9:1 左右)。

中英連續語音辨識技術
英文是多音節的拼音語言,一個word可以由一到多個音節所組成,因此音節(或稱音素phoneme)是英文的最小單位。而音素根據發音方式可以分為子因與母音,因此英文辨識以因素為基礎,將音素串辨識為字串。

中文以單音節為基礎,一個字一個音節,往下細分可分成聲母(Initial)、韻母(Final)與聲調(Tone),其中聲調的部分在辨識時不一定需要,而聲母、韻母就像英文基本單位的子音語母音。中文連續辨識系統都是以辨識次音節(聲母、韻母)為基礎。要辨識出完整的中文字串,就是在連續語音中辨識出「聲 韻 聲 韻 聲 韻」的序列,再根據「聲+韻」不同的組合辨識出不同的單字,進而辨識出完整的字串。由於中文有上萬字,但不計聲調的「聲+韻」組合只有約450個,因此儘管能正確辨識出音節,卻不一定能選出正確相對應的字,也因此必須仰賴辭典及語言模型以得到最可能的字串。就像注音輸入法錯字的問題,基本上注音輸入法能辨識出正確的音節(包含聲母、韻母與聲調),有1345種可能的變化,但中文也僅10000常用字,卻有可能發生「韓劇跟西洋句一樣差勁,我都不喜歡」辨識成「含巨根吸陽具一樣插進,我都不喜歡」的笑話@@

因此中英混和辨識必須:

  • 找出最好的雙語聲學模型:必須解決目前中英兩種單語系聲學基本單位不同的問題,中文基本單位是聲母韻母、英文則是音素
  • 建立雙語文字語發音相對應辭典:只要定義出聲學基本單位即可解決這個問題
  • 採用最適合的語言模型:過去單語言模型不敷使用,但訓練雙語言模型之語料不易取得

中文與英文在書寫系統上最大的不同,是中文文句沒有明顯的分隔,分隔方法也會影響句子的意義,例如「沒雞、鴨也好」或「沒雞,鴨也好」就是兩種不同的意思。在研究中通常使用辭典斷詞法,斷詞結果完全取決於辭典內的詞。若領域有限,不需要很大的辭典,辭典過大反而會引起混淆,因此如何建立或選擇辭典也是一大考量因素。另一個需要考慮的是語言模型,由於雙語語料為兩種語言混合使用的結果,因此較無規律的語法,須採用「統計式(Statistics-Based)」,由訓練語料根據統計特性得到語言模型。

《以課程錄音為基礎的中英雙語語音辨識之初步研究》的重要方法與成果如下:

  • 定義有限領域的中英雙語辭典:使用背景辭典將語料斷詞後,找出出現頻率一次以上的多字詞3940個,語背景辭典常見單字5901個,透過抽詞程式抽取合理的多字詞數個,合成12322個專業領域用詞(中文10767個、英文1555個)
  • 聲學模型:定義四套不同音素集
  • 語言模型:雙語模型、三連語言模型、以詞群為基礎的語言模型;以兩份不同背景語料建立調適語言模型
  • 重要結果:雙語平均單詞正確率51.97%;中文最佳值66.11%;英文最佳值66.77%

雙語語音辨識的基本架構
要讓電腦「聽懂」使用者的話,必須經過一連串的處理程序,如下圖所示:

DSC01565

連續語音辨識不是直接對取樣後的數位訊號加以辨識,因為人類發音器官的限制,聲音訊號是連續且緩慢的,所以必須取一小段時間內相近而穩定的語音訊號,將之視為音框(Frame),存一個因框中抽取出一組對辨識有用的特徵參數,建立特徵向量,再針對一系列代表實際語言的特徵向量進行辨識。為了避免突兀的訊號變化,通常因框間會彼此重疊,以保證所抽取特徵向量的代表性。辨識結果取決於:

  • 聲學模型:由語音資料所建立,中文裡最小單位是聲母跟韻母,英文中是音素。
  • 辭典:將發音與詞對照,選擇不同大小、領域、語言的辭典,也會對辨識結果造成影響
  • 語言模型:透過足夠的文字資料,經由辭典做適當的斷詞,計算出前後詞之間的相互關係,以其辨識系統能根據語言模型辨識出最合理的文句。因此訓練語言模型的文字語料必須跟目標便是語料相匹配,此外必須能涵蓋辨識的範疇。

聲學模型
要發展多國語言辨識,必須先用「聲學模型」進行判斷,以下介紹一些現有的研究:

  • 國語+台語:前專使用國台語混和聲學模型,在辭典中定義國台語的發音,統一以中文輸出(如果先端先辨識是國語還是台語,會造成辨識力低落)
  • 廣東話+英語:外語母語化問題相當明顯,故以廣東話為母語的英語語料進行訓練,使用詞性將外語部分分為多個詞群。
  • 法語+英語:定義單純法文、英法共用、單純英文三種音素集,從法語母語選出英法共用、單純英文適當的訓練資料,建立統合的聲學模型
  • 日文:將外語資料是為辭典外字彙(OOV),可以先得到主要語言中的資訊

《以課程錄音為基礎的中英雙語語音辨識之初步研究》的作者將實驗語料分成兩部分,文字語料作為語言模型的訓練;語音語料作為聲學模型的訓練及辨識用。

辭典製作與工具
下圖為製作辨識專用辭典的方式。作者將文件經過辭典斷詞後,取出出現一次以上的多字詞,並使用抽辭程式抽出老師上課的文字語料中少數具有詞的特性的多字詞,並將曾出現過的迎文辭會抽出,合併後與單字組成較小的辭典。
DSC01566

研究顯示斷詞與抽取出詞的好壞不會直接影響辨識率,例如複合詞「數位語音處理」與「數位」、「語音」、「處理」,辨識效果後者反而較佳。但若使用過大且內容廣泛的辭典,辨識率會遠低於定義後較小的辭典,辭典大小才是影響辨識率的關鍵。

下表呈現該實驗使用的語音辨識軟體相關工具:

工具 開發單位 用途
HTK Toolkit v3.3/3.4 Cambridge 特徵抽取、聲學模型訓練、辨識搜尋解碼
SRILM SRI STAR Lab 語言模型訓練
PatTree抽詞程式 琳山大大lab 自目標語料抽出新詞
CKIP 中研院 斷詞

國語音素集使用郵鄭秋豫定義的SAMPA-T標音方式(SAMPA-T包含國、閩南、客語)與梁柏宇的NTU-98;英文採用美國腔的CMU音素集。

語言模型
中文存在相當多的同音字,在一千三百多個合法音節中,對應的合法字元卻超過一萬四千個。透過聲學模型可以輔助系統「猜測」較為合理的詞(具有獨立語意,且扮演特定語法功能的字串)串。N連馬可夫鏈語言模型(N-gram Markov Chain Language Model)是統計式語言模型,估算由詞串所組成字串的出現機率,是目前世上最普遍且效能最好的語言模型。但已三連模型為例,若句子中包含一個未見的三連字串,則無論其餘字串機率為何,計算結果必為0。因此若語言模型的訓練語料不足,造成估測的失準,必須使用平滑法建立更好的語言模型。

SRILM提供的N連語言模型訓練程式使用退化平滑(backoff smoothing)法,透過建立門檻,當三連詞串在訓練語料中出現次數過多時,直接使用該三連字串在訓練語料中出現的機率;出現過少時則使用古德-圖靈函數(Good-Turing Function)調整字串機率;若未出現於訓練語料中,則根據正規化條件,由高斯模型的機率到低階模型的機率(按:這段是啥阿…我好像沒有一句看懂Orz)

實驗結果

  • 更改音素集可以得到明顯的進步,特別在中文正確率上。
  • 英文單詞進步率之提升,仰賴語言模型的調整。因為語言模型裡中英文比為87:13,而音素集裡中英文模型比為63:39,因此調整語言模型可以提高英文辨識。
  • 不符合目標語料的背景語料完全無法為辨識系統帶來任何進步。
  • 以詞群為基礎的語言模型幾乎完全無法發揮作用,可能是因為目標語料口語化、沒有明顯語法結構所造成。所以若要使用詞群概念,可能要考慮階層性的詞群。

參考資料:以課程錄音為基礎的中英雙語語音辨識之初步研究
注:本文是我從以上論文所摘錄的重點筆記,圖片均來自該論文中,若有冒犯煩請告知,放在Blog除了作為研究筆記,也希望能促進學術研究與交流風氣,在此深表對研究者的感謝!

繼續閱讀全文 中英混雜自發性語言語音辨識之研究

建立中文廣播新聞摘要之研究

FUNction 於 2010年6月15日 中午12:23 發表

中文語音辨識
語音文件無法被概括性的瀏覽,只能循序瀏覽到最後才能了解整篇文件要表達的含意。相同內容,由不同的人說出來的語音文件,除了聲調、音量外,口音也會使每篇語音文件顯得不同。即使是相同的人,也會因為環境、身體狀況而改變語音文件的品質。

「索引特徵」是資訊檢索、分類系統表示文件或使用者問句的基礎。在中文裡,特徵分為詞(word-level)、字(Character-level)以及音節(syllable-level)三個層次。結構上中文具有以下特質:

  • 中文一個字就是一個音節
  • 單字通常是詞素(morpheme),詞素是帶有語意的最小單位
  • 詞的界限不明顯
  • 有許多的同音字

新詞容易被創造、理解是另一大特色,例如「高鐵」。這些詞通常不存在於檢索分類的辭典,但是他們與文件的核心概念通常密切相關。由此可知,中文的構詞相當具有彈性,要統計中文的詞數其實相當困難。但是中文所有可能的音節只有1345個(不計音調只有450個),且常用字大概只有7000到10000左右。根據琳山大大實驗室的研究,雖然中文可能的詞總數相當大,但是都是由一到數個字串接而成,而且音節數大於等於3時,唯一性相當高,因此音節段(Syllable Segment)層次的資訊在中文資訊檢索與分類中扮演非常重要的角色。此外中文新詞出現太快,加上詞的界限不明顯,使斷詞工作存在歧異性。但若以音節層次作為索引特徵,對於辭典外詞彙(Out of Vocabulary, OOV)將會有很大的改善。

使用不同特徵詞進行事件偵測
分別使用雙音節(double syllables)、單詞(single word)與雙字(double character)作為索引特徵,在專有名詞與關鍵詞部分,經過語音辨識後用派樹抽詞法(pat-tree)和文字在機率式潛藏語意模型上的主題亂度所擷取出來。研究發現使用不同索引特徵各有其優缺點,使用詞的辨識錯誤率較高,但提供的資訊量較豐富;使用字辨識錯誤率較低,但提供的資訊較含糊;一般而言,使用雙音節結果較好。將方法結合,發現單字結合雙音節,並使用機率式潛藏語意分析或機率模型效果最好。

按:其實我仍然對「單音節」與「單字」的差別不了解,但從研究結果而言,單字的辨識效果較好,所以我的猜測是單字是語音辨識後經過詞庫的比對而產生出來確切的字,例如將「ㄏㄠˇ」(單音節)辨識成「好」(單字),因為同樣是「ㄏㄠˇ」這個因,仍然有好、郝、恏三個字,所以單字比單音節更為明確。

事件總數之選定
讓電腦決定要分成幾類非常困難,因為就連人類專家也會因為背景知識不同,分類的結果也不盡相同。在新聞的研究中,新聞事件的產生時間受到許多額外因素的影響,所以每則記事沒辦法構成如下的次數-時間分布圖

DSC01563 
圖中是五個事件被很多不同記事報導的時間頻率圖,從圖可知,若用電腦判斷還可能分不出那些頂峰屬於哪個事件,而錯估了事件的數量

根據研究,使用階層式聚合分群法搭配時間衰退函數,可以產生最準確的結果。演算法概念是先用階層式聚合分群演算法對記事文件分群,直到記事文件的相關度小於某一門檻值即停止分群動作。接下來再根據分群後的群聚數目預測事件總數。

建立事件摘要的方法
目前建立摘要的方法簡單說就是從描述事件的所有句子(Sentence)中計算每句的重要性,擁有最高重要性的句子就成為這個事件的摘要,句子數量是依照使用者喜好調整的。常使用的方法是詞頻反文句頻(TF-ISF)與機率潛藏與一模型的主題亂度,根據使用者測試,詞頻反文句頻的結果較好,如下表所示:

新聞 人工撰寫 TF-ISF 文字-主題亂度
台北市長選戰 台北市長選戰由馬英九和李應元對決,陳水扁總統為李應元站台,發表台灣腳和香港腳談話批評馬英九,而馬英九也反擊回去
  1. 年底台北市長選舉
  2. 民進黨台北市長候選人李應元再度出招
  • 全國人民自有公道
  • 年底台北市長選舉
辛樂克颱風 中度颱風辛樂克侵台
  • 中度颱風辛樂克來勢洶洶
  • 中度颱風勒克直撲台灣而來
  1. 繼續向西前進
  2. 檢視了電線桿還有線路
台灣第十度參與聯合國失敗 台灣第十度參與聯合國失敗
  1. 台灣參與聯合國第十度叩關失敗
  2. 聯合國總務委員會沒有通過中華民國台灣的入會申請案
  • 提案又被封殺
  • 已經表達對我方善意
國內登革熱疫情上升 國內登革熱疫情持續上升,病例數直逼兩千
  • 登革熱疫情持續發燒
  • 動手清除孳生源
  1. 動手清除孳生源
  2. 要把蚊子趕盡殺絕
第四屆漫畫博覽會 第四屆漫畫博覽會開幕
  1. 漫畫博覽會今天開幕
  2. 第四屆漫畫博覽會開幕現場三百多個攤位
  1. 漫畫博覽會今天開幕
  2. 他甚至開玩笑的說

詞頻反文句頻(Term Frequency multiplied by Inverse Sentence Frequency, TF-ISF)與傳統的TF-IDF類似,但將文件單位縮小成句子,公式如下:

TFISFi,j = (1 + ln cnti,j)*ln(Ms/Mfi)

是索引特徵fiy在文具sj中出現次數,Ms是該事件所有的句子總數,Mfi是有出現fi的句子數(文句頻, Sentence Frequency)。有了TF-ISF我們便能計算每一個句子的重要性分數。

事件呈現方法
Robert B. Allen提出了編年式方法呈現事件(按:類似Plurk),簡而言之,在時間軸上安置多個事件,每個事件可以點開看到多筆記事的標題,點選標題則可聽到語音檔案。

在語音檢索系統中,使用者可以藉由語音輸入查詢相關文件,一般而言被區分為多個模組,如下圖所示:

DSC01564

內容:

  • 語音文件收集、模型訓練、轉寫、特徵抽取:是建置系統的前置作業,必須先收集好需要的文件,成為一個文件資料庫,收集好之後便將此文件資料庫當作模型的訓練語料,如前端語音辨識需要的聲學模型、語言模型,文件檢索核心需要機率式潛藏語意模型,事件分析與擷取需要機率模型、把文件加以轉寫、擷取重要資訊(例如TF-IDF、類專有名詞、其他關鍵詞等)。由於模型訓練需要大量時間,所以必須在離現時完成,供其他元件使用。
  • 前端語音辨識:使用者執行語音查詢時的互動單元,與文件收集與模型訓練不同之處在於前端語音辨識需要即時(Real Time)完成,故並非所有便是引擎能勝任。
  • 文件檢索核心:牽涉兩個重要議題,一是索引技術,如何表示文件與使用者問句;二是如何衡量文件相關程度。
  • 結果之視覺化呈現:檢索結果通常包含多筆資料,必須有組織呈現才能減少使用者的檢索成本。在這篇paper中,以樹狀結構將「類專有名詞」作為類別的節點,進行階層式的表達。另一種方式是如前所述,用時間軸前後順率供使用者瀏覽,理論上兩種方法相輔相成。

展望
語音辨識經常使用隱藏式馬可夫模型(Hidden Marko Model),可以將記事文件的時間當作是所觀察到的現象,如果利用此模型將事件分析與擷取所要進行的工作,或許是不錯的選擇。

參考資料語音文件之事件偵測與時間分析─以廣播新聞為例 (其實跟上一篇一樣XD)
注:這兩篇是我看以上論文時所摘錄的重點,圖片均來自該論文中,若有冒犯煩請告知,撰寫的目的是作為我研究的筆記,也希望能促進學術研究與交流風氣,故在Blog上發表,在此深表對研究者的感謝!

繼續閱讀全文 建立中文廣播新聞摘要之研究

新聞事件偵測與時間分析之研究

FUNction 於 2010年6月14日 下午1:37 發表

主題事件的分類(TDT, Topic Detection and Tracking),五大追蹤方向

  1. 文件切割(Story Segmentation):將依則包含許多新聞的文件切割成許多單獨新聞的文章
  2. 主題追蹤(Topic Tracking):找出新進文件是否與之前主題相關
  3. 主題偵測(Topic Detection):將探討鄉圖主題的文件分類
  4. 第一則新聞偵測(First Story Detection):判斷新進文件是否屬於新的主題或是尚未討論過的主題
  5. 連結偵測(Link Detection):隨意取出兩則文件,判斷此兩則文件是否屬於同一主題

大型語料的主題分析最受矚目的是「自組性語意對應圖(Self-Organizing Semantic Map)」,許多研究使用此方法;另外「機率式潛藏語意分析(Probabilistic Latent Semantic Analysis)」所發展的語意對應圖(Probmap)屬於強大且較新的研究。

文件分類大概有三種主要的方法

  1. 階層式聚合分類演算法(Hierarcy Agglomerative Clustering Algorithm):最基本
  2. K-means
  3. 變色龍演算法(Chameleon Algorithms):較新穎

主題(Topic)、事件(Event)與記事(Story)

  • 記事代表一段可以提供使用者某種資訊的文字,例如一則新聞
  • 事件是某件特定的事,有特定的發生時間與地點,由一個或多個描述相通事情的記事所組成
  • 主題是由相關的事件合併而成

除了TF-DIF之外,還有海寧格距離(Hellinger Distance)也可以衡量文件的相關程度。事件偵測有兩個特徵,專有名詞與時間資訊,專有名詞通常分為:人名、地名與組織名,通常專有名詞在文件中比一般詞重要,因此在TF-IDF中,通常會將專有名詞作加權總合。所以會將人名、地名與組織名分開計算,再依照權重與一般詞的關聯加總,產生總體的關聯度。最簡單的方法是若兩篇文獻都有相同的專有名詞,相關程度為1,反之為0。

機率式潛藏語意分析(Probability Latent Semantic Analysis)
自傳統潛藏式語意分析理論而來。傳統潛藏式語意分析使用Singular Value Decomposition的方式,對document-word matrix進行簡化。機率式潛藏語意分析以隨機狀態起始,並以最大期望值來做區域最佳化。因此每次不同隨機狀態起始的結果不同,故可結合多個潛藏語意分析模型做出不同變化的語意分析。

在語料庫訓練下,可以估計主題z產生文件d的機率:P(d|z),結合各個不同主題上的機率後,便可以得到文件d在所有主題上的機率分布。透過貝氏定理可以計算出給定文件d產生主題z的機率。

P(z|d) = (P(d|z)*P(z))/P(d)~P(d|z)*P(z)

利用機率模型進行事件偵測與時間分析
一個記事(Story)可以用四種資訊表達:When、Who(人與組織名)、Where與What(其他關鍵詞),但是事件(Event)包含兩個時間資訊(記事開始與記事結束)。其他關鍵詞是用機率式潛藏語意模型的主題亂度(Term Entropy)所找到除了類專有名詞外的關鍵詞。假設這四種資訊相互獨立:

P(story) = P(persons)P(location)P(keywords)P(time)

DSC01561 
記事的生成模型由四個模型所混合─三類名詞單元與時間戳記,上圖中E代表事件、D代表記事,P、L、K分別表示人、地、其他關鍵字,N是名詞;T是時間。所以每篇記事都有四個向量,一份文件的同個向量可以成為一個list(例如人名表)。接著可以藉由計算每個list在事件中發生的機率,取得記事在事件中發生的機率。

重要事件的過濾
判定新聞室否重要需要許多新聞相關的背景知識,例如顯著性(Prominence)、奇異性(Conflict)與鄰境性(Proximity)等。顯著性代表新聞內容的影響力,探討新聞內容影響哪些層面;奇異性代表這則新聞是否報導若干特意少見的事情;鄰境性代表這則新聞所發生的所在地與接收者是否在地理上相近。這些知識大都以人類知識為基礎,加上主觀的判斷而成,故以統計分析難度較高。

因此使用四個過濾器進行事件重要性過濾:

過濾器 內容 效率
類專有名詞與關鍵詞法 若一事件不包含類專有名詞(人名、地名與組織名)與其他關鍵詞,此事件可能不是描述重要記事的文件,可以刪掉一小部分。 只刪掉6篇,錯誤率0
TF-IDF 若TF-IDF低於某門檻值,此事件可能不是描述重要記事的文件。 錯誤率約1/3
文件在機率式潛藏語意模型之主題亂度法 假設只有兩篇記事文件(記事1與記事2)、三個主題(主題A、主題B與主題C)。記事1在三個主題的涵蓋度都很平均;記事2在主題B的機率很高,另外兩個主題很低,代表記事2與主題B明顯相關。因為記事1分布平均,可推測記事1不是描述重要事件的文件。
亂度越低,代表機率分布越不平均。所以可以設定一個門檻,若主題亂度高過這個門檻,則必須將記事刪除。
錯誤率約2/9
文件相關度法 通常重要事件會有許多記事文件報導,通常使用cosin來測量事件的相關度,相關度越高代表越重要。 錯誤率約1/8

所以其實篩選器誤刪正確文章的機率都蠻高的,不可能疊在一起使用。找出正確事件應該有兩種作法:

  1. 先用較好的篩選器篩選(留下有意義的事件記事),再使用階層式+時間將記事分群找出事件
  2. 直接使用機率式模型(PROB)對所有的記事進行分群

新聞實驗的語料庫
基本資料(人工專家產生):

來源 大陸中央社廣播新聞
範圍 2002/7/1~2002/10/1(CBN2002) 共982篇,平均140.2字
類專有名詞 人名517、地名437、組織名695 (派樹抽詞法)
其他關鍵詞 2000個 (機率式潛藏語意模型主題亂度)
事件數 共59個事件(Event),286個記事(Story)

藉由專家對語料庫的事件辨別,評比分群與過濾的方法,結果發現階層式聚合分群演算法在文件雜訊較多時,效果並不理想;但使用機率式潛藏語意分析或機率模型,對雜訊的抗拒力較高。當文件數量較少、資訊較明確,階層式聚合分群法的結果將會顯著提升,而機率式潛藏語意分析會因為訓練資料較少,進步幅度受到限制,但機率模型的結果仍然不差。

機率式潛藏語意分析家上時間資訊打亂了詞與文件的關係,所以效果比純粹機率式潛藏語意模型還差;事件偵測結果的好壞與係數初始值設定息息相關,利用機率模型系數的初始職可以得到較佳的結果。

參考資料語音文件之事件偵測與時間分析─以廣播新聞為例

繼續閱讀全文 新聞事件偵測與時間分析之研究

99台大資管所榜眼上榜心得:感恩篇

FUNction 於 2010年6月5日 下午1:25 發表

我想第一要感謝的還是我的家人,他們知道我要考試讓我能安心念書,不需要操心家務。特別感謝老爸老弟,是老爸才讓我抓住這個嘗試的機會,而老弟陪我一起念書(雖然我唸書的時間不多,而且考前的周末我老弟還跟朋友去彰化玩三天兩夜XD),讓我有共同奮戰的感覺!

image  
結果我瘋狂的在我家樓下的門貼上榜文,這是我與老爸的合照XD

第二是感謝文昌爺爺,雖然筆試的時候我沒有拜祂,因為我覺得我準備的不夠,拜祂是一種褻瀆。但是我跟我自己講,如果進了口試,我就有資格拜祂。果然他給我力量,讓我在台大獲取更多的資源,造福社會。口試時我一直帶著祂的御守,一定是因為祂的守護,才能讓我能如此順利…

接下來,要感謝我的老師及主管

  • 政大的老闆:他給我很多中肯的建議,讓我自己考慮,也使我深深覺得老闆對學生開明的態度幾集體會到他的關愛。他對我說,如果光就名字來說,這兩間學校真的差不多,但是你去那裡勢必多花一年,所以你必須思考這一年是否值得…
  • 研究所導師尚孝純老師:我想我能上,有超過一半的原因是尚老師幫我寫的推薦信。老師對我說,學校只是一個同學互動的平台,他告訴我我現在帶著政大的嫁妝,擁有一年研究生的基礎,這是比其他考生來說還更有優勢的。他也很鼓勵我追逐自己的夢想,也給了很多重要的資訊,包括政大推的服務創新、老師在面試時的心態以及書審資料排版的建議…
  • 輔大的林文修吳怡瑾老師:老師們聽到我能有運用兩間學校資源的機會,義不容辭地成為我書審資料的推薦人。真的好感動,離開學校這麼久了,老師們都還是如此熱情,真不愧是我當年覺得的恩師…其實真的覺得輔大好有人情味,這是在很多地方所感受不到的。之前一直說要找機會回學校找老師,到現在都還沒回去,也讓我覺得很對不起他們。
  • 微軟的主管Rick:這學期真的承蒙他幫很多忙,不論是雲端運算的演講還是這件事。Rick在facebook聽到我的消息,也是責無旁貸地留下他的聯絡資料,當我的推薦人幫我背書。說真的,這種一臂之力的幫助在這樣重要關頭真的很溫馨,這是我所不敢奢求的,也希望Rick能一切順利…

我政大的夥伴們

  • Deduce:你那天的「十幾個人只有三個」一番話,給我很多啟示,讓我在心裡對你說,你認識的第四個人就在你眼前!
  • 阿金:你給我許多寶貴的資訊、義不容辭地答應幫我模擬面試(雖然後來因為我時間不夠),還花了很多時間回答我因為擔心而語無倫次的爛問題,寫mail給我。真的心裡除了感激,我不知道怎麼說才好…
  • 小白:你一樣給我許多建議,而且要不是你我可能沒辦法這麼有決心應戰,說好的「同學」,你會一直是我的夥伴。
  • Aki:雖然平常在學校講到話的機會不多,但是那陣子你真的幫我大忙,我一輩子也不會忘記。你不只給我中央的那個有用的BBS,還幫我發問,跟我分享面試的經驗以及可能的關卡…雖然最後好像沒有猜中,但是你的熱心讓我很感動!
  • 阿塞Demon花花一個學長:你們幫我模擬面試真的太感人了!阿塞的問題好犀利:「你說你想走技術為什麼不報資工」讓我囧了三天。也是因為你們的面試讓我回家仔細思考,才能把在書審資料寫出我想表達的東西,也才能在真正面試表現得這麼順利!另外某個學長的一席話「政大同學都在看,就像王建民一樣大家都會較好」給我很大的鼓勵,那時也讓我覺得我一定會讓你們叫好的!(btw某學長是誰呢…我還是不知道他名字XD)
  • 柳橙:那天要走的時候在圖書館前面遇到,你跟我說你想之後很難看到我,然後用簡單的一句話破解了阿塞給我的難題,讓我信心滿滿!

資種的夥伴們

  • 神秘人:你堅持不透露姓名,我也就順從你了!感謝你提供研究所的經驗分享資訊,寫了好幾封的mail。但最讓我感動的其實是放榜的後續幫忙,你很熱心地幫我查了好幾次時間,提供我非常多重要的資料。也許你不知道,我真的很佩服你,希望你在未來也一切順利,往後的日子請多多指教了!
  • 瑋凌:你很用心!除了伴我考試的御守,還寫了mail跟我分析了很多對考試的重要資訊,真的對我很有幫助。我想有些感謝是難以用一兩句話表達的,這讓我不知道該怎麼辦。總之希望你一切順利,如果有需要幫忙盡管跟我說吧!
  • 小熊:謝謝你去台南特別帶的禮物,考試時我一直帶著,果然非常的具有加持的效果!雖然後來你好像忙到爆炸了,不過我真的很感謝你喔^^
  • 桂慈:你每次的用心都讓我驚艷!小小的祝福卡片,卻都能給我很大的鼓勵。你知道考試的時候我一直把那些祝福放在我的資料夾中嗎?口試的時候也是一樣。當你說「你已經在榜上看見我名字」,以及每次告訴你好消息你的回應,都能讓我感受到你那炙熱的眼神。
  • 可樂:一起擔任春酒的主持人,真的很感謝你對我準備考試的體諒和包容,以及每次每次的祝福。記得有一次你還傳進訊跟我說唸書加油…讓我覺得受到很多很多的支持,果然一句鼓勵可以撼動宇宙阿!跟你合作是段很快樂的時光,真的。
  • 浩威:「考試加油?」讓我露了餡,果然是金頭腦那麼有觀察力,真是高深莫測。還有口試時你一樣給我祝福,以及最後送我的鑰匙圈紀念品(雖然有人說那不好看,可是我覺得那跟我很合XD)。總之有金頭腦的祝福果然大大加持阿~
  • 尉池:考前的加油簡訊,以及一起念書的短暫時光(抱歉那天一直在嘴砲害你補習遲到),很謝謝你的鼓勵,也希望你未來一切順利。

我的老夥伴們

  • 小觀:那天吃飯謝謝你給我很多非常寶貴的經驗,但最讓我感動的是你晚上還寫mail來關心我、幫我想對策,過幾天也打電話來問我情況。這種關心讓我覺得很滿足,雖然最後沒有採取你的建議,可是我已經充分地感覺到你那種強烈的支持。
  • 小朱:雖然是我千里迢迢的到土城跟你借MIS,但是跟你講話就讓我覺得充滿活力,就像以前一起考試一樣,好有信心!總之希望你也能一切順利。
  • 玉璋:考前,你的關心總是少不了,而口試完後我跟你說我的情況,你也告訴我不要想太多。真的很感謝你的那種友情贊助!一樣希望你今年考試順利:D
  • 尉伶:剛放寒假就找你幫忙,當時剛動完手術,你說你其實可以幫我把書送來台北…讓我聽了很感動!那天原本要請你吃飯的,可惜你堅持要各付各XD雖然後來比較少聯絡,但我深深的覺得,認識你真好!btw後來我還特別到圖書館把那天借的書寫了我已經考上了,並留下mail,希望能幫助輔大的學弟妹,也算是還願…
  • 小廖:你一樣阿,總是少不了你的祝福!而且你還會自己去幫我查榜,也太感人了吧XD今年你也要考試了,我對你很有信心,到時候我們再一起慶祝吧!!
  • 惠菁:雖然我們不是很熟(可是大一迎新好像還在同一組XD),但真的很感謝你提供的老師資料,以及撥冗回答我問題。現在容我叫你一聲學姊囉!

還有,很多口頭或MSN、FB上鼓勵我的朋友:歐萌柏均103章威亞霖育聖阿掰雋文彥璋庭宇蘇宅國傑…以及默默為我祈禱的,我知道你一直在那裡。

上一篇:99台大資管所榜眼上榜心得:口試篇

繼續閱讀全文 99台大資管所榜眼上榜心得:感恩篇

99台大資管所榜眼上榜心得:口試篇

FUNction 於 2010年4月30日 晚上11:23 發表

筆試的前30的考生有進入口試的機會,但口試還會再刷掉近2/3的人,所以仍不能掉以輕心。由於筆者在98年政大資管所推甄口試獲得95.4的高分,所以對於準備口試也略有心得,以下依照口試戰略、準備書審資料、口試佈局做經驗分享,最後再對應到實際台大資管的關卡。

口試戰略
我覺得口試要獲得高分,必須掌握「把基本面顧好,外加自己的創意」的原則。當考官提問時,先答出考官想聽的答案,回答後再外加一點自己對於題目的一些洞見,讓考官驚艷!例如我去年在政大口試時,有一題要求我們看一篇英文的data mining 的文章,並回答幾個問題(題目先給我們,並給一張紙讓我們擬好答案),答案其實還蠻固定的,幾乎有標準答案,所以我除了回答完老師要求的問題外,我還

  • 在那張紙上用表格比較三種文中提到data mining 方法的不同
  • 把這篇文章取了一個標題(因為那篇文章沒有標題),展示自己抓重點的能力,並藉機凸顯自己似乎很會做英文閱讀測驗(其實英文很破XD)

在答完問題後,我主動告訴考官我額外做的這兩件「加分」事蹟,果然看見主任肯定的眼神!我想透過這個例子應該比較容易瞭解我說的「把基本面顧好,外加自己的創意」,但還是說來簡單做來難,要顧好基本面必須在口試佈局下好工夫,而加上創意就要看平日的造化了…

準背書審資料
進口試後,必須要在短短兩周準備好書審資料。根據筆者明查暗訪,書審資料大約都做30頁左右,但是說真的,我覺得台大老師通常不會仔細看(至少在口試時),所以應該要把主力放在口試準備上(而且口試分數是當場給的,所以之後看資料的機率也不大),書審資料最大的用途應該是幫忙自己釐清為什麼要念台大資管、未來的規畫及研究的興趣這三件事。念台大的原因絕對不能是學校迷思,這樣違反研究生追根究柢的精神,我覺得大約想3-5個理由為佳,以我而言理由是:

  1. 台大是最好的學生平台(因為擁有全國頂尖的人才與完整的跨領域資源)
  2. 台大是極佳的創業搖籃
  3. 台大資管擁有優秀跨領域資源
  4. 台大資管技術能力優勢
  5. 台大資管傑出系友與老師資源龐大

至於讀書計畫,根據筆者看過數十篇優秀的讀書計畫後,一般來說都分成三個階段:入學前、碩士、未來(或入學前、碩一、碩二)。但我覺得重點應該不在哪個階段要做什麼,而是總共要做什麼?舉例而言,你想要增強英文能力、培養參賽經驗專案能力、培養國際觀(交換學生)…如果分三階段寫,常常會把自己限死(入學前、碩一都想增強英文怎麼辦!?),還不如依照這些主題,寫目前的努力以及計畫如何繼續努力。例如「培養參賽經驗專案能力」可以分成:

  1. 從事此活動能獲得什麼價值(ex. 團隊、專案能力、鑑賞能力…)、計畫在何時從事
  2. 目前做了哪些努力(ex. 參加ATCC等…)
  3. 計畫如何繼續努力(ex. 參加Tic100、YEF等…)

等都寫完這些活動後,可以再加個總結,寫自己的人生目標。至於研究計畫,我有看過寫一面也上的人,所以重點應該在投入研究的興趣,與老師的興趣之不謀而合,這個部分可以寫自己比較有經驗的大學專題,或找大學指導老師請教,盡量不要寫太偏的題目,不然就算老師想收你,也不知道誰能指導你做這個。

口試佈局
這是整場口試輸贏的關鍵,首先必須有喜悅的心情。我極度建議口試時使用小抄,根據我參加大大小小口試的經驗,使用小抄基本上不會被扣分,所以自我介紹背不起來沒關係,就把小抄拿出來瞇一下吧!下圖就是陪伴我經歷許多口試的小抄本,攜帶小抄的另一個目的是如果口試老師的問題很長,可以先記在本子上,回答起來也比較不會丟三落四。
DSC01488

在使用小抄奧義後,第二招是「把希望老師看的東西放在身上」。這招是啥?這招是因為老師口試時通常不會想看你的書審資料,所以可能會碰到:

  1. 老師:說說看你想做什麼研究
  2. 考生:報告老師,就像我書審資料寫的,我想要…(覺得書審資料寫超好,想伸手翻老師桌上的書審資料給老師看)
  3. 老師:你用嘴巴講就好,我沒時間看(臭臉)

所以,有任何希望老師看的東西,舉凡重要的推薦信、精簡版就學計畫、就讀動機,你可以事先藏在西裝外套的不同口袋中,在緊要關頭「遞~」,老師絕對會被吸引,停下來看,這時就是你的機會了XD

接下來,就是要模擬任何老師可能問的問題了,以下提出一些基本題(請配合上一篇的「必會心態」),在面試前必須要能把基本題答得漂亮:

  1. 自我介紹(必考):必須要想一分鐘、30秒與英文版。老師不在乎你家有幾個人,你老爸在幹麻?老師在乎你的人格特質、特殊經驗,如果時間允許,可以連就讀動機一起講!
  2. 生涯規劃、就讀動機(80%)
  3. 想做的研究(70%)
  4. 大學專題(50%):學到什麼?最大的挫折?技術性問題…
  5. 你能為我們帶來什麼?(30%)

準備妥善後,可以請朋友幫你模擬面試,並錄下你被面試的講話方式,以調整自己的口條,並聽取朋友們寶貴的建議。接著就只剩充足的睡眠、整齊的服裝與頭髮,及一顆快樂的心了。

台大資管的關卡
台大資管所一梯4個學生進場,場中有4關(一人進一關),每關2個老師負責,5分鐘時間到換下一關。以我而言,跑關的順序是D→A→B→C。進場時要把「制式資料表」、就學計畫、有利資料帶著,每一關都當面交給老師看,過關後再把那推資料抱到下一關,最後離開時把資料交給工讀的學長裝箱。

D關是技術關,考官會要你從簽桶抽問題來回答,第一題我抽到:「一堆一面是英文字、一面是數字的牌,若有一個規則:母音的背後是偶數。要驗證此規則是否成立,在以下的牌中:[A] [B] [1] [2] [3],至少需要翻幾張牌?」老實說題目超難懂,我聽了很久才有點明白老師的意思,結果我一開始答[A] [2] 兩張牌,老師問我為什麼要這樣選…結果老師說,要不要先抽下一題。另一題是問mergesort會不會用到額外的空間,我很肯定的回答「會」,稍為解釋一下,老師說還有時間,叫我再試試看第一題。我稍為回神之後,說[A] [1] [3] 都要翻,因為[A]背面不是偶數則不成立,而[1] [3] 後面若是母音也不成立。此時4:30的準備鈴響起,我以為時間到趕緊站起來,老師說還有30秒。我想說坐著跟老師大眼瞪小眼也尷尬,該是主動出擊的時候了,於是我跟老師說:「我們來聊天吧!」老師好像還蠻開心的,於是我大概講了一下我的就讀動機,D關就在和平的氣氛下結束了。

A關好像也是技術關!?是陳靜芝與陳建錦老師把關。一開始主任看著我的制式資料表,建錦老要我比較鍊結串列與陣列。我先從空間複雜度說明在dense與sparse的情況下,兩者之間的優劣與適用情況…此時主任打斷建錦老師,說「他是政大研究生!」,然後看著我說「你現在在念政大?」我雖然有備而來,但難免很挫。我跟主任說,是的,我現在在念政大,但是我跟我們老師討論過,他也很支持我做這樣的嘗試,這是他幫我寫的推薦信「遞~」。主任接過推薦信,當場拆開來看,而建錦老師繼續問我問題。我接著比較陣列與鍊結串列的時間複雜度,說明陣列可以隨機存取,鍊結串列只能循序存取的特性…時間快到了,主任好像還對我的身分很好奇,我接著要繼續解釋,主任說算了,這關不問這個,我就在有點挫的情況下到下一關。

B關是生涯規劃關,是吳玲玲與魏志平老師把關。因為吳老師很好認,所以我一開始就先說:「老師是吳玲玲老師嗎?」老師也很開心,可惜我不確定另一位是不是魏志平老師,有點尷尬。結果魏老師對吳老師說,你很有名喔!我也跟著附和,接著我就說我也很有名XD氣氛蠻歡樂的,老師要我自我介紹。我拿出小抄來偷瞄,吳老師笑著說「你用小抄喔」,我說「對阿,因為我覺得這樣可以介紹的比較結構化,我也可以不用啦~」接著再講了一下,我說「我再偷瞄一下好了」,老師也是笑笑。後來稍為講了一下就讀動機、打算要做的研究,這關是我覺得最歡樂的!

C關好像也是生涯規劃關(或是研究計畫關),我在這關被電得最慘!老師問我你為什麼要來台大,我說我覺得學生階段,除了學習和做研究外,最重要的就是要認識不同領域的菁英!而台大每個學院都很優秀,都是台灣頂尖的菁英,所以我想要來這個環境,對我的創業很有幫助。老師馬上說「你覺得研究生能認識多少人?」我說這個問題研究生、大學生或博士生都一樣(原本要講重點是心態),老師馬上打斷我「不一樣!」我有點慌亂,問老師為什麼不一樣…結果後來老師問我想要做什麼研究,我把想做的text mining 大致講一下,並說要致力於結合研究、創業與興趣。老師問我有沒有想跟哪個老師,因為我有做功課,所以這邊答的還蠻順的。但是因為「不一樣」那邊,以及之後的「…」被電得很慘,以致於我覺得上的機會不大…一度蠻傷心的。

本篇結語
不知不覺得打了長篇大論,希望不只對想要進台大資管所的學弟妹有幫助,還能把一些自己摸索好久才發現的口試技巧跟大家分享,達到拋磚引玉的效果。若有細節或疑問不清煩請告知,我很樂意回答,也歡迎各界大大批評指正!本篇心得歡迎分享轉貼,但請註明來源。覺得有幫助就推一下吧:)

上一篇:99台大資管所榜眼上榜心得:筆試篇
下一篇:
99台大資管所榜眼上榜心得:感恩篇

繼續閱讀全文 99台大資管所榜眼上榜心得:口試篇

99台大資管所榜眼上榜心得:筆試篇

FUNction 於 2010年4月16日 晚上11:22 發表

我準備台大資管所大概只花了兩個禮拜(2/28考,電腦公會春酒弄到2/26),第一個禮拜分析考古題;第二個禮拜看書背筆記。由於筆者是98高考第8名(已經練成九陽神功,練其他武功只要幾個時辰),所以主要分享準備兩次考試的心態,基礎的建立與一些速成的撇步。基本上,我覺得考「資管所」是很幸運的,因為它不像機械所要做20年的考古題,資管所只要做5年!

筆試戰略
由於台大不考統計,計概又與其他學校大相逕庭,所以如果你真心準備台大資管,雖然有415個人報名,前30進口試,但是你真正的對手絕對不到100人,也就是只要搶進30%就有希望!我的分析是這樣的:研究所考試以應屆生為主,應屆同學通常為了怕沒研究所念,考5-6間是很正常的事,但因為台大的考科不太一樣,若專心準備台大,可以比其他考生省掉許多時間。所以真正的對手只有三種:一是台大學生(因為考試跟學校教的有關,而且也比較有可能鎖定台大,大約佔20-30人),二是中央中山生(也只要怕鎖定台大的,大約佔40-50人),三是殘念研究生(這種人通常只鎖定台大,而且實力非同小可,只是不會全力準備,數量也有限,應該不到20人),三者相加不到100人。所以重點在:鎖定台大!

MIS準備方向
MIS要考好,必須要搭配考古題才能知道老師會出什麼招。基本上我會建議先細看一遍林東清老師的《資訊管理》,看完後就立刻拿考古題來做(記住,只要作五年),做的時候一定會有挫折,會發現有一半的題目都無從下手,不過不用擔心,這時候就是拿起Laudon的MIS的時候(Laudon比較不需要細看,我們可以用邊看邊找答案的心態來看)!準備MIS當看完林東清後,可以早上做考古題,下午看Laudon,然後你就會發現,你找到了另外30-40%的答案,而且MIS得更多思考構面也被建立。在做完一輪考古題後,建議同時把Laudon看完。至於要鎖定台大,建議再借謝清加老師的書,雖然有點舊(又超厚),但很多論調是很深入的,可以在有時間餘力時拿起來翻翻,對申論的深度會很有幫助。

接著第二輪就是再次審視做過的考題,把常常出現的考點整理成自己的筆記,參考上述兩本書找到答案,例如台大愛考的:IS的成敗原因,就可以從林東清老師的書找到以下答題關鍵:

  • 成敗要素(略織專整):策契合、組抗拒、導入案、IS
  • 內外控制要素:IS技術、環境(廠商&政經)等

所以我針對台大的題目,整理了30個「必會」的重點(這就是我所謂的「必會心態」:我們不知道會考什麼,但我們知道考過什麼,只要考過的再出來,就一定要拿到滿分,絕對可以電死一大堆人,沒考過的也可以由既有的必會提拼湊答案,通常可以拿到50%以上的分數!),接著考前把必會重點背到滾瓜爛熟即可。像上述的「IS成敗原因」可以套用到99年第二題(大約cover 40%)、98年一題(cover 80%)與第三題(cover 40%)、97第三題(cover 90%)、96第三題(cover 20%)、95第三題(cover 60%)、94第一題(cover 40%)…這樣加起來都超過100分了,當然要必會啦!只是還是要提醒讀者,考試的時候不是列出上述兩點就能拿高分,必須要依照讀書累積的內力,把答案逼出來。舉例來說,剛剛說的「策略契合」要繼續寫出:IS必須符合組織的策略目標,才能發揮效益…而策略目標常由高階主管所制訂,所以IS必須受到高階主管支持blah~~~

對於個案分析題(雖然這次沒考,以下分析我當時擬的戰略),我們可以用Laudon每一章開始的方法來看,也就是說把問題分成:企業挑戰、管理、組織、技術、IS、解決方案一一擊破!例如98年第四題,哈勒斯賭場,要是我來答第一小提,我就會先畫出Laudon的關係圖(就是章首那張花花綠綠有箭頭的圖),接著再從管理、組織與技術一一描述,每個描述大約5行(因為這題有15分,抱持1分1行1分鐘的原則),用這樣分析,我想寫完之後都會讚嘆自己為什麼分析得這麼有邏輯XD

計概準備方向
台大的計概就是Discovering Computer+資料結構吧!Discover Computer是台大計概的上課用書,還蠻賊的!而且中文版2008只有前面八章,但整本書有16章,而且考題有往後面幾章出的趨勢(相信我,我為了分析這個花了我兩天)。網路上有投影片可以下載,但考題都很細(不在投影片裡)。為了經濟起見,我準備的方法到書店去抄考古題的答案→借中文版看前8章→背名詞解釋→去台大圖書館看原文書後面幾章,花費大概只有油錢!

現在你不用去書店抄了,我直接把答案附在這:

  • 98年:CDCDE BBADA DECBD BCDAE CDADE EEEBB BCEAD EEDCB DAEEC DDADE
  • 97年:BCED(C/D) BAACB EEDBC ABEAB DEDBC ECEBE ADCCB CACEA DEBDD EACCC
  • 96年:哭哭~我搞丟了(找到再補上)

名詞解釋怎麼背呢?我先去註冊Discovering Computer的網站(IE only?),進去之後點選章節編號,就可以在右側找到Key Terms(點選名詞後,他會很貼心的用英文念出來,順便可以練練英文聽力XD),如下圖:
image

至於資料結構的部分,我只能說要靠平日多做題目累積實力,因為資料結構重點不外乎是樹、圖型、雜湊…大概會這三個就可以拿一半以上的分數,真的就是多算累積實力。如果每天算4小時,大約2個月就已經爐火純青了!

英文準備方向
基本上我覺的就是多背單字!個人還蠻推薦朱才金老師的《研究所英文分類字彙》,他裡面用字首字根來理解,對單字的記憶很有功效!另外,如果想速成的話,我們要知道,單字有無限個,但文法卻是有限的:五大句型、三大子句、連接詞、關係代名詞…大概就那些東西,我覺得台大今年文法考得特別多,至於會不會是趨勢就不得而知了。另外,做閱讀測驗的時候可以先大概看過題目,再看文章;如果題目問得很細(例如幾月幾日),在看題目時就可以先到文章找答案。閱讀測驗很好心的題目會按照文章先後順序出,所以當找到答案後,在文章中答案位置標上題號,可以縮小下一題找答案的範圍,我覺得也是一個好方法。

另外,由於我目前在菁英補英文,老師分享的一個做題技巧也可以在這裡分享給讀者:看選項猜答案。例如四個選項如果有兩個形容詞、一個動詞、一個名詞,那這題從兩個形容詞中猜對的機率比較高;如果四個選項都看不懂,就隨便猜一個不要浪費時間,因為這種題目看30秒與想10分鐘所選的答案基本上不會差太多。

以下附上台大英文B卷的答案,這也是我從書店抄的,希望讓讀者省點油錢,節能減碳愛護地球:

  • 98年:BDDDA BCAAA DBCBB CCDAB BBAAC BBDBB BDBBC DDDAC CBCDA CBAAC
  • 97年:CBBDC ACBDD AACDD BADBC CDACB BCBAA DBBCD ACBCB ACABD AADCC
  • 96年:BABDB BDADD ACBBA CDBAD ACBDA CBDAC BBDAC CBACB DCDAB ABDDC

本篇結語
最後用一句話來對準備考試總結:努力與方法同等重要!通常老師的責任是告訴我們好方法,而考上的另一半因素是自己的努力(修行在個人)。但如果自己準備,花一半時間找方法,一半時間努力,用CP值最高的方法讀書,是考上的關鍵哦!小弟在此獻醜了,歡迎各界大大批評指正,本篇心得也歡迎分享轉貼,但請註明來源網址,謝謝。覺得有幫助就推一下吧:)

下一篇:99台大資管所榜眼上榜心得:口試篇

繼續閱讀全文 99台大資管所榜眼上榜心得:筆試篇

微軟戰友喜相逢 糗感交集

FUNction 於 2009年10月27日 晚上9:15 發表

請先放個背景音樂吧XD ↓↓↓

Jolin 的歌,陪伴著我孤寂的查著「Extended Window」,就這樣過了一年...


圖:左起我、Deduce、Jamie、Ellen

第一次見到Ellen,是在微軟的小教室,聽著琪樺姐講著AA的注意事項,他是我在微軟認識的第一個人,也沒想到,他也是4個pre-sales的其中一個。沒錯,他是我們這個team的,很巧!

Deduce,是在微軟的大教室碰面的,我正留下來問小白學長關於pre-sales的工作內容,因為我覺得我應徵的是「技術專員助理」,不能了解我將來要幹嘛...這時候Deduce出現了,他說他跟我做一樣的工作,還給我一張上面印著大大的「林宜如」的名片,在門口他介紹了柚子(那個自我介紹時被說長得像朱木炎的北科同學)

現在的Jamie,當時他還叫Jill,第一次見面是在敦群。我正在小桌子跟Deduce聊天,他遲到了,樣子很匆匆,來的時候穿著一雙紅色高跟鞋,我心想:「好鮮豔的鞋子,看來他應該很難伺候XD」。他說他念長庚資管所,說我的學長是他好朋友,很努力的描述我學長,但我還是不知道那學長是誰...

我們肩併著肩,大步向前,踩著希望一起冒險...一年的時間,有好多歡笑,也有好多汗水、淚水。我們的機器人MOSS Agent 終於被Rick 寄公開信給美國總部,還受到微軟王副總的款待...也不知不覺的把OCS看成Orz

這次聚餐,勾起好多回憶,也好開心,有你們陪我度過這充滿故事的一年!在餐會上大家都先糗了一下,Ellen講錯出口、我帶錯路、D搭錯捷運站~-而Jamie呢?暫時還好,不過看到我時居然第一句問我:「你覺得你剪這樣的頭很得意嗎?」

圖:我的新髮型,帥呆了XD

Deduce因為每個禮拜都會見到一次(在高等MIS的時候,今天還有聊到XD),所以比較常聊,還好,但你真的超優秀阿。Jamie還是一樣糗,一來就帶來了很多歡笑(從點餐不斷發問開始),手機Plurk事件雖然有點弱,但還可以;求職心酸,感覺起來蠻必經的,算有內容(但你超強,居然可以考到49分);默契,好像也還不錯。最酷的是Ellen,她應該是今天的主角(原本是Jamie吧??)...從「一言難盡」的戀情開始,就不斷的非常有爆點!我只能說社會太黑暗了,財務公司的助理、某某酒店的經理、3點的派對、音樂家、帶咩的日本人、窮酸的援交者、厄瓜多簡訊事件...都太勁爆了,我真的很佩服你生活如此精彩(又辛辣),但請你多陪陪你媽媽,不要喝太多酒,你媽只有你一個女兒啊!

圖:其實是幫Jamie慶生啦(持刀者),在前年幫Rick慶生挑蛋糕的順成買的,可惜好像太甜Orz

時間過得很快,我們被餐廳的人趕了,還真想再多聊聊。今晚,對我來說真的是一個很棒的餐敘,好期待下一次...

繼續閱讀全文 微軟戰友喜相逢 糗感交集