華文網

NLP頂級專家Dan Roth:自然語言處理領域近期的任務和主要應用

記者 | 周翔

AI科技大本營1月28日消息,《麻省理工科技評論》新興科技峰會EmTech China在北京召開,營長也受邀參加,會上有多位人工智慧領域的重磅大佬出沒,Dan Roth 就是其中一位。

說起Dan Roth,他可是全球自然語言處理領域的頂級專家,賓夕法尼亞大學電腦和資訊科學系的講席教授。他致力於通過機器學習和推理的方法説明機器理解自然語言。也是 AAAS、ACL、AAAI 和 ACM 的會士,曾在多個重要會議上擔任程式主席一職。2017 年,他因“在自然語言理解、機器學習和推理領域中做出重大的概念和理論創新”而獲得國際人工智慧聯合會議(IJCAI)頒發的約翰·麥卡錫獎。

Dan Roth 在哈佛大學獲得博士學位,並曾在伊利諾大學擔任教授。他曾開發出 SNoW 等多種應用廣泛的自然語言處理工具。

今天Dan Roth教授為我們帶來了題為“利用非結構化資料——AI的崛起”的演講,為我們講解了自然語言處理領域近期的重要任務;為什麼非結構化的資料處理很難以及應對措施;自然語言處理領域現階段的主要應用及挑戰等內容。

以下為Dan Roth教授演講實錄,AI 科技大本營做了不改變原意的整理。

▌NLP領域近期的重要任務

當我們連接wifi的時候,或者當你在下載的時候,會出現一個提示框詢問你是否接受使用者協議。這是一份很長的文本,那麼你要接受嗎?可能你會回答,對,我要接受,哪怕這個時候,你還沒有讀完這份長長的文本。

但是這個文本中會涉及很多問題,

比如,它會如何利用我的個人資訊?會不會侵害我的隱私?我們需要瞭解這些知識。這個文本能不能讓使用者清楚瞭解這些相關的保密內容呢?我們現在還沒有一種穩定的方法可以去瞭解整個文本的內容,這就是我們現在遇到的問題。這個問題不僅是一個科學上的問題,這些文本關乎我們個人資訊的安全性,這是每個人都要面對的問題。

我們接觸到的絕大多數資料是非結構性的。

從科學領域,再到醫學、教育、商業、互聯網等等,包括我們的郵件都是非結構性資料。這背後的挑戰就是,我們如何去瞭解這些資料的結構,從而建立一個系統,可以去分析、利用它們,瞭解其背後的意義。這就是自然語言處理領域近期,尤其是近幾年的一個重要任務。

▌為什麼非結構化的資料處理很難?

今天,我來給大家解釋一下,為什麼非結構性的資料處理這麼難?以及我們要採取什麼樣的措施?

我們從一個簡單的故事開始。這是美國二年級學生的一道閱讀測試題。有三個名字:Kris Robin、Kiris和Ms. Robin,大家覺得他們是同一個人的名字嗎?我想大多數人都覺得不是。為什麼不是呢?因為通過閱讀理解,大家會覺得其中有一個可能是父親。雖然這篇文章中沒有明確指出這一點,但是大家可以推斷出來。這樣一道題,有人做對,有人做錯,有人可能做的很快,有人則可能會慢一點。那麼我們如何説明電腦快速地做出選擇呢?

其實,這個故事中是有很多陷阱的,有的人會被誤導。文章中往往有很多的邏輯詞,有很多時間節點,比如說三年前五年前,還有一些定性和定量的詞語,讓我們可以分析和梳理人物之間的關係。哪怕是一個很簡單的問題,我們也需要通過邏輯來梳理。

對電腦而言,這是一個比較複雜的問題。為什麼呢?因為這背後有兩層邏輯。表層語言層和底層意義層。語言層具有模糊性,因此可能會產生歧義,所以我們需要去瞭解它的背景,推測它的言外之意來消除這樣的歧義。除此之外,語言層還具有多樣性。我們想要表達的每一點,都可以通過不同的方式表達出來。這兩個特點就使得語意理解非常困難。

再給大家舉一個例子,這裡有三篇文本,都提到了芝加哥。

“我來自芝加哥。”

我這麼說,它可能沒有別的意思。但如果我提到芝加哥樂隊,或者芝加哥的足球隊,或者提到與它相關的專輯。有的文本中甚至不會直接出現芝加哥,但是這些不同的意義點都可以幫我們表達出芝加哥。

傳統的程式設計能力暫時沒辦法説明我們解決語言的模糊性問題。所以我們就要利用最新的機器學習去減少文本中的模糊性,去連接語言中的邏輯,去解讀背景知識,去識別不同的詞彙,以最終地消解這種模糊性。

機器學習是解決語言中模糊性和多樣性一個必要的工具。在過去幾年我們也看到了這個領域的發展,我們有不同分類方法來解決文本分類問題,他們依據不同的規則,使用不同的方法。比如我們會通過打上一個標籤對文本進行標記,在標記的過程中對檔進行分類。比如可以通過病例來判斷一個患者是否可以複診,這是一種宏觀的分類方法。

人工智慧能夠幫助我們進行分類,在過去的幾年它也取得了長足的發展。這其中不僅有機器學習發展的功勞,還有其他的技術,包括計算能力的發展和儲存成本的下降,還有新的分類方法的誕生,都促進了機器學習領域的發展。

大家如果關注這個領域,就會發現現在機器學習分類還不是非常的有效。如果把這些方法比喻成一個魔盒的話,我們要瞭解這個魔盒中需要什麼樣的工具和內容。我想強調的就是,我們不僅需要找到方法,更應該瞭解推理的方法,包括瞭解原因、假設結果和測試方法。因為推理應該是分類之上的邏輯,讓同樣的類別在一起進行集成。我們要清楚,一個節點是否能推到下一個節點,這樣才能更好的解決問題、回答問題和進行優化。

▌自然語言處理的應用

自然語言處理現在有很多應用。比如,一個律所需要獲得所有人的名字,這些人名都包含在郵件中,有不同的分析郵件的方法,我們該如何確定這些人的名單呢?再比如,一個政界人士要研究氣候變化方面的問題,他也找到了很多相關的文本,但是該如何全面的梳理,得到大事件的時間表呢?包括教學系統,是否能夠説明我們初中學生更好的解決幾何和數學問題?再比如比傳統病歷包含更多資訊的電子病歷,我們又該如何利用呢?

我們還沒有真正完全解決這些問題,還有許多其他挑戰,包括推理,適應性訓練,因為現在的模型大多不具有通用性。

以及最大的挑戰是——監督。

那什麼是監督?或者說神經網路的監督?我們賦予神經網路一個任務,去類比它,然後收集資料,設置一個模型。但現在我們發現我們的資料不夠,沒有辦法去適配所有的模型。那這種方法就無法升級和進行通用性的應用,它更大程度上是只是一種偶然性的訓練。

我們也發現很多的零散信號,我們如何收集這些零散的信號,進行訓練模型?傳統的文本分類,需要用很多標誌性檔去訓練一個經典的模型。所以,我們一般要收集一些關鍵的資料進行標記、進行分類。現在我們考慮的是如何不利用標記的資料,就可以進行快速地分類。但是現在我們不再需要標記資料了,因為我們有對標籤的最直接的瞭解。我們可以直接利用話題、文本進行標記性的重現,以實現對話題的理解。

我還有一個例子,我很喜歡喝咖啡,我想告訴一個機器人這個資訊,我就要和它溝通。我要告訴它,我需要什麼樣的咖啡,讓它去瞭解我的喜好。標準的機器學習的方法,就是為此提供一個有隱喻的文本和很多意義的標記,這樣做的成本非常地高昂。換句話說我們要像一個老師一樣,通過深入的溝通,為機器人提供資訊。這種方法是不可以進行複製的。

現在我們在想為它提供一些非直接性的信號,去訓練這個機器人。把這樣的資訊傳遞出去,再看一下機器人能做什麼事情。如果它按照我的方法和指示做這個咖啡,說明我們的資訊傳遞是非常清晰的,相反的話說明我們的資訊傳遞的不太成功。

因此我們現在的挑戰就是能不能依賴於這種描述語言,實現資訊的傳達。我不會告訴你們怎麼做,但是我覺得這樣一種方式,能夠説明我們進行下一級的技術革命,而且能夠完成一些複雜的任務。

總結來看,今天的自然語言處理依然是一個具有挑戰性的領域。機器學習和推理等都是科學工程以及商業進展的核心。儘管還有許多的問題有待解決,但是現在這個領域的現狀已經能夠幫助我們取得一定的商業成功了。

謝謝!

有人則可能會慢一點。那麼我們如何説明電腦快速地做出選擇呢?

其實,這個故事中是有很多陷阱的,有的人會被誤導。文章中往往有很多的邏輯詞,有很多時間節點,比如說三年前五年前,還有一些定性和定量的詞語,讓我們可以分析和梳理人物之間的關係。哪怕是一個很簡單的問題,我們也需要通過邏輯來梳理。

對電腦而言,這是一個比較複雜的問題。為什麼呢?因為這背後有兩層邏輯。表層語言層和底層意義層。語言層具有模糊性,因此可能會產生歧義,所以我們需要去瞭解它的背景,推測它的言外之意來消除這樣的歧義。除此之外,語言層還具有多樣性。我們想要表達的每一點,都可以通過不同的方式表達出來。這兩個特點就使得語意理解非常困難。

再給大家舉一個例子,這裡有三篇文本,都提到了芝加哥。

“我來自芝加哥。”

我這麼說,它可能沒有別的意思。但如果我提到芝加哥樂隊,或者芝加哥的足球隊,或者提到與它相關的專輯。有的文本中甚至不會直接出現芝加哥,但是這些不同的意義點都可以幫我們表達出芝加哥。

傳統的程式設計能力暫時沒辦法説明我們解決語言的模糊性問題。所以我們就要利用最新的機器學習去減少文本中的模糊性,去連接語言中的邏輯,去解讀背景知識,去識別不同的詞彙,以最終地消解這種模糊性。

機器學習是解決語言中模糊性和多樣性一個必要的工具。在過去幾年我們也看到了這個領域的發展,我們有不同分類方法來解決文本分類問題,他們依據不同的規則,使用不同的方法。比如我們會通過打上一個標籤對文本進行標記,在標記的過程中對檔進行分類。比如可以通過病例來判斷一個患者是否可以複診,這是一種宏觀的分類方法。

人工智慧能夠幫助我們進行分類,在過去的幾年它也取得了長足的發展。這其中不僅有機器學習發展的功勞,還有其他的技術,包括計算能力的發展和儲存成本的下降,還有新的分類方法的誕生,都促進了機器學習領域的發展。

大家如果關注這個領域,就會發現現在機器學習分類還不是非常的有效。如果把這些方法比喻成一個魔盒的話,我們要瞭解這個魔盒中需要什麼樣的工具和內容。我想強調的就是,我們不僅需要找到方法,更應該瞭解推理的方法,包括瞭解原因、假設結果和測試方法。因為推理應該是分類之上的邏輯,讓同樣的類別在一起進行集成。我們要清楚,一個節點是否能推到下一個節點,這樣才能更好的解決問題、回答問題和進行優化。

▌自然語言處理的應用

自然語言處理現在有很多應用。比如,一個律所需要獲得所有人的名字,這些人名都包含在郵件中,有不同的分析郵件的方法,我們該如何確定這些人的名單呢?再比如,一個政界人士要研究氣候變化方面的問題,他也找到了很多相關的文本,但是該如何全面的梳理,得到大事件的時間表呢?包括教學系統,是否能夠説明我們初中學生更好的解決幾何和數學問題?再比如比傳統病歷包含更多資訊的電子病歷,我們又該如何利用呢?

我們還沒有真正完全解決這些問題,還有許多其他挑戰,包括推理,適應性訓練,因為現在的模型大多不具有通用性。

以及最大的挑戰是——監督。

那什麼是監督?或者說神經網路的監督?我們賦予神經網路一個任務,去類比它,然後收集資料,設置一個模型。但現在我們發現我們的資料不夠,沒有辦法去適配所有的模型。那這種方法就無法升級和進行通用性的應用,它更大程度上是只是一種偶然性的訓練。

我們也發現很多的零散信號,我們如何收集這些零散的信號,進行訓練模型?傳統的文本分類,需要用很多標誌性檔去訓練一個經典的模型。所以,我們一般要收集一些關鍵的資料進行標記、進行分類。現在我們考慮的是如何不利用標記的資料,就可以進行快速地分類。但是現在我們不再需要標記資料了,因為我們有對標籤的最直接的瞭解。我們可以直接利用話題、文本進行標記性的重現,以實現對話題的理解。

我還有一個例子,我很喜歡喝咖啡,我想告訴一個機器人這個資訊,我就要和它溝通。我要告訴它,我需要什麼樣的咖啡,讓它去瞭解我的喜好。標準的機器學習的方法,就是為此提供一個有隱喻的文本和很多意義的標記,這樣做的成本非常地高昂。換句話說我們要像一個老師一樣,通過深入的溝通,為機器人提供資訊。這種方法是不可以進行複製的。

現在我們在想為它提供一些非直接性的信號,去訓練這個機器人。把這樣的資訊傳遞出去,再看一下機器人能做什麼事情。如果它按照我的方法和指示做這個咖啡,說明我們的資訊傳遞是非常清晰的,相反的話說明我們的資訊傳遞的不太成功。

因此我們現在的挑戰就是能不能依賴於這種描述語言,實現資訊的傳達。我不會告訴你們怎麼做,但是我覺得這樣一種方式,能夠説明我們進行下一級的技術革命,而且能夠完成一些複雜的任務。

總結來看,今天的自然語言處理依然是一個具有挑戰性的領域。機器學習和推理等都是科學工程以及商業進展的核心。儘管還有許多的問題有待解決,但是現在這個領域的現狀已經能夠幫助我們取得一定的商業成功了。

謝謝!