計算機能「理解」多少我們的語言了?

2021-01-14 愛範兒

編者按:本文作者為微軟亞洲研究院首席研究員周明博士,為我們詳解了計算機自然語言理解的歷史和現狀。

1770 年,庫克船長的 「努力號」 抵達澳大利亞昆士蘭海岸。他留下一些船員維修船隻,自己率領一支隊伍出發探險。遇上當地土著居民後,一個船員用手指著身體袋囊裡揣著幼崽跳來跳去的動物,問一個土著,這東西叫什麼?土著說:「Kanguru。」自那以後,庫克和他的手下便如此稱呼這種動物——袋鼠(後來寫作 Kangroo)。很久以後他們才明白, Kanguru 在土著語言中的意思是,「你說什麼?」 ——Ted Chiang《你一生的故事》

在地球的任何一個角落,你都能發現在一起的兩個人,總會彼此交談。如果沒人能對談,人會自言自語,對貓兒狗兒說話,甚至對盆栽呢喃。

你或許並未察覺,閱讀這些文字時,自然界的奇蹟正在發生。你我都屬於有這種驚異能力的種族——我們能精確描繪彼此腦中的概念——這種能力就是語言。我們只要張開嘴,發出聲音,或者寫下文字,就能將彼此心中的意念準確地傳遞給對方。這個過程如此輕鬆自然,讓人意識不到它的存在。

然而對最強大的計算機來說,理解人類語言並非易事——這便是自然語言理解的研究領域——所謂 「自然語言理解」 就是人與計算機可以進行有效溝通,計算機能理解用戶的意圖,執行命令或回答問題。而作為這個領域的研究人員,我們一直努力向這個目標邁進。

機器翻譯

(老彼得·布呂赫爾畫筆下的巴別塔)

《創世記》第 11 章記載,人類原本說著同一種語言,居住在與幼發拉底河相距不遠的示拿之地。人們利用河谷的資源建城築塔。高塔直達天堂,逼近上帝。上帝認為人類過於自信團結,一旦完成計劃將為所欲為,便決定變亂人們的口音和語言,並使他們分散各地。高塔於是停工,該塔被稱為 「巴別」。

如今,現代交通和網絡的發展令使用不同語言的人們合作和交流的機會比以往更多,因此對理解對方語言,人們有著迫切的需求。

而在 1940 年代,計算機剛剛出現,計算能力相當弱,但那時候就有研究者提出了使用計算機進行翻譯的想法,並進行了嘗試。不過第一次引起公眾關注要到 1954 年,那年 1 月 7 日,美國喬治城大學的研究者和 IBM 利用 6 條規則,250 個詞彙,完成了一次俄英機器翻譯演示——二戰後,蘇聯是美國的頭號對手,了解這個國度的一舉一動是那時政府的迫切需求,尤其是科學報告。

60 多條俄文短句,預先轉寫為拉丁字母,內容涵蓋有機化學、政治、法律、數學等領域,由一名不懂俄語的女操作員輸入一臺 IBM 701 主機,幾秒鐘後列印出英文結果。這一項目的主要負責人 Leon Dostert 在演示後樂觀地預言:「再有五年,說不定也許三年,用計算機翻譯多種語言就將變成現實」。

這次成功的演示和公眾高漲的熱情為機器翻譯研究帶來了資金,掀起一陣計算機語言翻譯研究的熱潮。而當人們期望過高,承諾又無法兌現時,資助就縮減或取消了。就像那個時代人工智慧領域的眾多分支一樣,研究者們低估了問題的難度。

「十年內,數字計算機將發現並證明一個重要的數學定理。」(H. A. Simon,Allen Newell,1958 年)

「二十年內,機器能完成人能做到的一切工作。」(H. A. Simon,1965 年)

「一代之內…… 創造『人工智慧』的問題將獲得實質解決。」(Marvin Minsky,1967 年)

「三到八年我們將得到具有人類平均智能的機器。」(Marvin Minsky,1970 年)

許多字詞不只有一個意思,想要正確翻譯一句話,計算機必須消除歧義,選出使句意最為通順的解釋,否則就容易犯荒唐的錯誤。一個有名的例子是 「the spirit is willing but the flesh is weak」(心有餘而力不足),用當時的翻譯系統譯成俄文再譯回英文就變成了「the vodka is good but the meat is rotten」(伏特加不錯,但肉已腐爛。spirit 有「烈酒」 的含義)。

1964 年,美國國家科學研究委員會(National Research Council,NRC)開始關注這個領域長期未能取得進展的問題,進而成立了語言自動處理諮詢委員會(Automatic Language Processing Advisory Committee,ALPAC),調查機器翻譯的研究狀況。兩年後,ALPAC 發布了一份改變整個領域的報告。報告對當時的機器翻譯持高度懷疑態度——認為當時的機器翻譯比人工更耗時、質量更糟,更燒錢,應當注重更基礎的計算機語言學(Computational Linguistics)研究,注重引入詞典、翻譯例句、人工等手段提升整體的翻譯質量。

這份務實的報告,對機器翻譯研究敲了警鐘。在 ALPAC 報告的影響下,不單 NRC 停止了對機器翻譯項目的資助,那些已建立的機器翻譯研究機構或遭遇行政阻礙,或經費困難,世界範圍內的機器翻譯熱潮突然消失,整個領域空前蕭條——這也是後來被稱為人工智慧嚴冬(AI Winter)的開端。

儘管在那之後,個人計算機出現和電子詞典開始流行,讓基於規則的機器翻譯研究在部分國家有所復甦(例如日本各大電子廠商),但研究水平不高,僅在有的場合聊勝於無。

直到 1990 年代,基於數據驅動(譬如大規模雙語對照的數據,和大規模的單語數據)的統計機器翻譯開始興起,這個領域才又重新活躍起來。新思路靠自動學習概率化的翻譯規律(譬如詞對詞的翻譯,n-gram 之間的翻譯,或者短語之間、子樹之間、句型之間的翻譯)來實現翻譯系統。這個時期數據規模越來越大,尤其雙語對照的數據越來越多。那之後的二十餘年,這個領域的研究主流都基於統計機器學習方法。

機器翻譯的難點在於領域遷移和自適應。訓練機器翻譯系統的原始數據可能來自寬泛的各個領域,遇見某個具體領域生僻的詞語、句型時,如何快速遷移,以得到高水平的翻譯頗為不易,因為這些領域的語料庫掌握得少,遷移時知識不足。目前幾家著名的在線翻譯系統,新聞翻譯尚可勝任(因為新聞語料最多),但對銀行、法律這些語料稀缺的領域,自適應能力則薄弱許多。

另一個難點是口語翻譯,因為口語中夾雜著表達不連貫,語法順序顛倒,用詞不精準、重疊、省略等各種現象,而機器翻譯系統大多針對書面語訓練,突然用在口語裡,表現就會一塌糊塗。因此需要加強對口語現象的處理能力,以及對上下文的理解能力。另外,未來的機器翻譯需要與手機語音應用配合,提升對地圖、導航、購物、交友、郵件、新聞閱讀等的支持,在這個方向還有很長的路要走。

2012 年 10 月,微軟研究院的研究取得了階段性的重要成果,微軟研究院創始人 Rick Rashid 在天津的 「21 世紀的計算大會」 上公開演示了一個全自動同聲傳譯系統,他的英文演講被實時轉換成與他的音色相近、字正腔圓的中文,贏得了現場觀眾的掌聲。這項技術是由微軟亞洲研究院和雷德蒙研究院從事語音識別、合成和機器翻譯的很多同事共同開發的。

這一演示背後的關鍵技術——DNN(深層神經網絡)也隨之第一次進入了許多人的視野。在語音識別過程中,DNN 使準確率提升了 25%,而將這項技術應用於機器翻譯解碼優選過程,這項技術令翻譯的準確率又提高了 1-2 個百分點。

在這次成功演示之後的兩年多裡,我們微軟亞洲研究院和位於美國總部的微軟雷德蒙研究院共同努力,不斷地改進中英實時語音翻譯,於今年 4 月發布了 Skype Translator 實時語音翻譯技術的中文預覽版,讓普通用戶也能體驗到實時中英文語音翻譯。

Skype Translator 構建於一個 10 億對量級的超大規模雙語對照語料庫基礎之上,應用機器學習的方法,在海量的候選集中找到最佳的譯文。作為人與人之間的溝通工具,Skype Translator 針對口語對話中常見的問題進行了處理,並提供了許多具有本地語言特色的服務。

有人說,語音識別在過去兩年產生了質的飛躍,而機器翻譯雖然已有六十年的研究積累,但是在處理語音和口語方面則方興未艾,雖然我們用了大規模的語料訓練,但是方法還是十年以前的統計機器翻譯——它正期待著更大的突破。而其中探索利用深層神經網絡在翻譯解碼的有效方法(譬如利用 LSTM 把原文句子經過一個中間表示向量轉換為目標語言的句子)引起了很多研究者的關注。

問答系統和聊天

冬天能穿多少穿多少

夏天能穿多少是多少

上面的兩句話說明了語言的歧義性。人的言辭孤立地看,有時候有些模糊,不過和旁人講話,他們總能領會你的用意。設想你對配偶說:「知道鑰匙放在哪兒了嗎?」如果對方僅僅回答:「是的,我知道。」你一定不會滿意——因為你的真實意思是 「快告訴我,鑰匙放在哪裡了?」 這種相互理解就是所謂的「對上下文敏感」。

不過計算機對上下文可不那麼敏感。例如 「把香蕉給猴子,因為它們餓了」 和「把香蕉給猴子,因為它們熟透了」有同樣的結構,但代詞 「它們」 在第一句中指的是 「猴子」,在第二句中指的是「香蕉」。如果計算機不了解猴子和香蕉的屬性,就區分不開。媒體記者們早就開始根據搜尋引擎的特點,在網絡文章的標題上儘量堆砌關鍵詞,而不是從讀者的角度來設計標題——他們寧可犧牲原本雅致的筆觸,也要能夠適應「機械」 搜尋引擎的特點。

由於人們使用語言的隨意性和多樣性,帶來了問題理解的困難。給定一個問題,電腦要理解問題的類型(事實類,定義類,選擇性,觀點類等)和答案的類型(人、地點、機構、定義、電影名字,文字序列等等)。比如:

問答系統可以是針對某一個封閉領域的,也可以是無領域限定的, 而後者的難度更大。為了理解問題,計算機需要語義解析,把用戶輸入的問句轉換為一個有結構的語義表達式,然後到相關數據和知識庫中尋找答案。很多時候,可能會有多個看似可行的答案候選,問答系統需要根據一個基於機器學習獲得的排序系統進行優選。問答系統的答案可以從結構化的知識庫,或者非結構化的自然語言文檔集合來獲得,如 web,社會關係網絡,新聞等。

目前,我們實現了利用知識庫、web 和社會關係網絡的多種智能體來回答問題。知識庫適合回答事實類的問題,而基於 web 的問答系統,也就是把問題丟給搜尋引擎,在搜索結果裡面直接抽取答案,適合於回答時效性很強的問題,如新聞類問題或很複雜的問題。社會關係網絡適合回答主觀類的問題,譬如 「如何考入哈佛大學」,「怎樣才能學好日語」 等。

由於這類問題在社區、社會關係網絡裡面有很多的討論,經過信息抽取和問題匹配之後,可以用來回答相同或者相似的問題。除了以上三種智能體之外,還可以考慮眾包智能,就是由系統把問題導引給該類問題的人(專家、附近的人、社會關係網絡的好友)來完成。如能巧妙利用多智能架構,即可大幅度提升問答系統的精確度和覆蓋面。

問答系統與機器翻譯看似並無明顯關聯,但是兩者實際上可以互相借鑑。機器翻譯的技術可以用於問答系統中,譬如轉述、語義解析等,也可以把問答系統變換為一個從問題到答案的翻譯過程。

我們後來發現,問答系統中使用的技術也恰能借鑑到機器翻譯中,令翻譯的質量明顯提高——過去,機器翻譯需提前在線下實現翻譯模型,而新做法是模仿基於 web 的問答系統,將原句直接拋給搜尋引擎,利用搜尋引擎的搜索結果動態得到詞彙或者短語的翻譯模型,以及目標語言的語言模型,以實現翻譯候選生成和排序,這種方式對處理新詞和領域自適應頗為有效。

目前幾乎所有的問答系統,僅僅考慮當前的輸入問句,並沒有考慮提問的場景、提問者的特性、以及時間和地點。讀者們大概都有過與微軟小娜、小冰聊天,Siri 或 Google Now 對話的經歷,用戶期待當問答系統進入到這些應用時應考慮這些因素以體現個性化。

「個性化」 是對問答系統能力的大考驗——提出相同問題,但你我期望得到的答案卻可能千差萬別。問答系統需要依靠用戶的歷史行為了解用戶,包括性格、偏好、朋友圈、買過的商品、說過的話,都會影響系統對用戶建模,進而決定給出怎樣的回覆才會讓用戶感覺更貼心。不過,這些問題目前對問答系統來講還是一個巨大的挑戰。

為了實現自然語言的人機對話,除了問答系統,還要有一個聊天系統。問答系統用於回答問題或者理解了問題之後完成一定的任務。而聊天系統是一個非正式的社會交往需求,用於情感交流與連接。人們在交流過程中,聊天、問答的技能是穿插進行的。同時,為了體現多樣性,答案所採用的句式,以及聊天的回覆風格要根據場景和用戶的特點發生變化。

微軟小冰是我們建立自然的人機自然語言對話的重要嘗試。在小冰中,我們除了需要建立問答系統和聊天系統之外,還要根據用戶輸入的句子,決定是進入聊天還是進入問答。比如:

人: 你都不理我了。(聊天)

小冰: 我怎麼不理你。(聊天)

人: 榮耀 6plus 多少錢? (問答)

小冰: 京東大哥說過是 2,899 元哦。(問答)

人: 你知道的真多呀。(聊天)

小冰: 我應該的呀。(聊天)

人: 你知道李敏鎬嗎 (問答)

小冰: 【一張李敏鎬的圖片】(問答)

而小冰的回覆不僅僅要看當前的句子,還要看聊天的歷史。比如另外一個例子:

人:請推薦一款手機。

小冰:你看看這款如何? 華為榮耀 3X 暢玩版,1099 元。

人:我不要華為的,我要 iPhone 的。(系統需要知道產品類別沒變,但是品牌變化)

小冰:那你看看這款 iPhone 如何呢?iPhone6, 5988 元,64GB,金色。

人:我要能支持 128G 存儲空間的。(系統要知道產品類別和品牌沒有變化)

小冰:我看看。那你看看這款?iPhone6, 6488 元,128GB。

人:算了,我還是要華為的吧。(系統需要知道產品類別沒變,但是品牌變化)

小冰:那麼這款華為 P8,最新款,3800 元。怎麼樣?

此外,系統需要對用戶的輸入進行理解以判斷用戶的意圖。比如:「給我推薦一款性價比高的手機,要諾基亞的。」

User Intent = Recommendation
Product = Select ?ID
Where
{
?ID Category 手機 (cellphone)
?ID Brand 諾基亞 (Nokia)
?ID Facet 性價比高 (cost-effective)
}

在對用戶意圖的理解基礎上,要進行必要的對話,以便確認所有必要的信息,來決定接下來的動作,比如推薦,搜索,聊天還是問答。綜合利用聊天和問答技術來形成一個聰明的對話系統,是一件非常有意思的事情。不過這個問題挑戰也很大,它是目前自然語言理解的最核心的問題。我們需要耐心地循序漸進地推進研究。

機器人作家

機器翻譯的應用還遠不止文字翻譯和問答系統,讓我們先看看這兩篇體育報導的開頭:

「周日,天使隊在第九局中落後兩分時,情況看來不妙,但憑藉弗拉迪米爾 · 葛雷諾贏得的關鍵一分,洛杉磯天使隊挽回敗局,在芬威球場以七比六擊敗波士頓紅襪隊。」

「周六下午(4 月 24 日),密西根大學棒球隊在威爾彭棒球場——具有歷史意義的雷 · 費舍爾體育場的所在地,通過贏得四分的第五局比賽,扭轉局勢,最終以七比五贏得了與愛荷華棒球隊在周末舉行的三場比賽中的最後一場。」

如果你無法分辨哪篇是由人類寫的,那你不是唯一一個 ——《紐約時報》

今年 3 月,美聯社宣布,它們將用軟體自動生成的文字來報導 「大學體育」 這個它們之前未曾涉足的領域。而這些報導背後的寫手,是 Automated Insights 公司推出的一款名為 Wordsmith 的軟體,它不僅能在賽後根據技術統計寫成綜述文章,甚至能根據比賽數據實時評論。這位機器人作家去年創作了 10 億篇文章,每秒鐘就能寫出 2000 篇故事。

不單是體育新聞,去年《洛杉磯時報》在當地地震後僅幾分鐘後,用軟體自動生成了第一篇報導。機器人作家還能解讀枯燥的商業報表、個人健康數據,變成更適合人們理解的文字——或者反過來,將冗長的文章濃縮成一小段摘要。

為了完成摘要,程序首先要搜集關於相同主題的文章。通常關於一個主題,會有來自多個渠道的文章。然後,提取每篇文章中最重要的詞。算法一般通過詞頻和倒序詞頻來判斷——如果一個詞重要,它在文中出現的頻率就高。但另一些詞,如 「the」、「a」 出現的頻率頗高,但是因為每篇文章都出現,所以對單篇文章的內容則表徵能力不強,反而不重要,算法需要綜合考慮這些特徵。

以這些關鍵詞為種子,便能抽取包含它們的語句,再次篩選這些句子,挑選最重要的幾句話,就能代表所有文檔的摘要了,這種方式稱為 「抽取式摘要」——沒對文字再加工,只把重要的句子抽取出來。還有一種稱為「生成式摘要」 的技術,會對文字進行再整理,將這幾句話揉成一句,還能保留原始信息。不過目前 「生成式摘要」 技術還不成熟,通常我們所見的案例都來自抽取式摘要。

如何判斷摘要算法的優劣?目前的做法是先以人工方式對文章做摘要,再與機器摘要做對比,詞語吻合度越高,算法相對越好。但這種判斷方式並不絕對有效,雖然從原文 「抽取的摘要」 大多數通順,但前後銜接是否連貫,差別很大,用這種測評體系還無法判斷。

對了,關於這節開頭的兩段報導,第一段是計算機,第二段是人類作家的作品。

我們的生活正悄然被自然語言處理技術改變。在寫這篇文章時,我常常一口氣輸入一整句文字的拼音,但很少需要選字。而在幾年前,用拼音輸入法,一次還只能輸入單字或詞組,那時 「整句輸入」 只是個美好的願望。假如單詞出現了拼寫錯誤,或有語法問題,計算機也會提示我修改。在未來,或許你我只用先完成一句話,或一個詞,計算機就能理解你的意圖,告訴你有哪些參考資料,擴展你的寫作思路,成為你的寫作助手。

而我個人與自然語言計算的 「緣分」 或許源自我小時候偶然在別人家發現的一本《唐詩三百首》,由於我非常喜愛所以就借回家天天背,身為地質工程師的父親見我有這方面愛好,便為我訂閱了詩刊。從此我愛上了文學,甚至大學都想考取文科,只是在父親「學會數理化,走遍全天下」 的建議下,才改學理科。但我總琢磨著,計算機應該也可以做與文字有關的事——自然語言處理就正是其用武之地。

2004 年,時任微軟亞洲研究院院長、現任微軟全球執行副總裁沈向洋博士讓我帶領團隊試著搞個自動對聯,立足中國傳統文化做一些創新。我們的研究從機器翻譯入手,把對對聯當作翻譯問題來解決——把輸入上聯對下聯想像成輸入一種語言,再翻譯出另一種語言的過程,只不過是同語言翻譯。在設計模型的時候,我們加入了對聯的語言學約束,譬如平仄和對仗。

我們收集了古今中外的 160 萬對名聯,運用了大數據和翻譯技術,基於機器學習進行自動建模。這個對聯繫統(duilian.msra.cn)於 2005 年推出,用戶可以輸入上聯,系統會自動對出數個下聯、並生成恰當的橫批供用戶選擇。後來我們做的絕句生成,也借鑑了對聯技術,用戶給定創作的主題,系統經過一個交互過程,逐句生成一首詩。跟對聯不同的地方是,在生成某一句的時候,不僅僅要看上一句,還要看前面的所有句子,使得生成的句子前後連貫。

另外,今年我們推出的微軟字謎與對聯以及剛剛發布的微軟絕句也有異曲同工之妙,它針對字形謎,由謎面迅速分析給出謎底,還可以根據用戶的謎底迅速生成謎面。因為謎面和謎底是一個映射和聯想的過程,研發也是基於網際網路平臺,對大數據進行搜集、利用統計機器學習方法自動學習建立智能模型。

在對聯和詩詞基礎上,我們也在考慮如何用計算機輔助一般的文章寫作,就像前面的新聞寫作一樣。比如,給定一個主題,電腦自動形成文章的大綱,然後對每一要點,綜合已有的大規模資料庫和領域知識庫,生成候選句子,作者可以根據需要進行修改。這樣便可大大提高寫作的效率。

在冷冰冰的科技外表之下,自然語言處理技術也能為我們帶來恍然大悟和會心一笑。在大數據、機器學習和網際網路的推動下,語言的理解、機器翻譯、自然語言對話系統、文本生成取得了令人激動的進步,也預示了電腦認知能力可期待的未來。然而人工智慧依然任重道遠,通過堅忍與淡泊的研究,不斷地逼近自然語言理解的極限,並將它巧妙地應用在現實系統中連接廣大用戶,是與我一樣的研究者們畢生的追求。

相關焦點

  • 程序設計語言是軟體的基礎和組成部分,也稱為計算機語言
    程序是對計算任務的處理對象和處理規則的描述,必須裝入計算機內部才能工作,沒有作業系統,系統無用。程序設計語言是軟體的基礎和組成部分,也稱為計算機語言,定義電腦程式的語法規則,由單詞,語句,函數和程序文件等組成。
  • 如何讓機器人聽懂人類的語言,理解人類的語言表達|極客雲算
    看過科幻電影的人就知道,在幾乎所有科幻電影中的人工智慧,都是具備能聽懂人類語言能力,不僅如此,它們還可以使用人類語言和你流利的交流,還會講笑話,甚至使用雙關語。可想而知,在科技發達的今天,讓機器聽懂人類語言、讓機器理解我們說的話,也並不是一件容易的事情。就算是我們現在廣泛使用的語音轉換文字功能,準確率也只在95%左右徘徊,如碰到方言、生僻詞、專有名詞或者同音詞時,準確率更會迅速下降。讓機器人聽懂人類的語言,理解人類的語言表達真的那麼難嗎?
  • 計算機二級考試哪種語言最難?計算機二級證書含金量高不高?
    計算機二級考試相比於計算機一級考試,難度上會大一些,當然,只要我們認真備考,通過計算機二級考試還是不成問題的。那麼,計算機二級考試哪種語言最難?計算機二級證書含金量高不高?下面,上學吧小編就為大家詳細介紹一下。
  • 如何快速學習計算機程式語言
    如何快速學習計算機程式語言呢?這是很多零基礎同學想要知道的答案。隨著網際網路的飛速發展,程式設計師的工資越來越高,很多人想加入程式設計師的隊列,想要快速掌握編程技術。那麼應該如何快速學習計算機程式語言呢?1、首先應該知道自己為什麼學習計算機程式語言,如果只是盲目的追求高薪,對電腦程式沒有濃厚的興趣,那麼零基礎想要快速學習計算機程式語言是非常困難的。想計算機程式語言,應該擁有濃厚的興趣,再加上堅持不懈的精神,這樣才能更快地學習程式語言。
  • 少兒編程僅僅是學一種計算機語言嗎?極客晨星告訴你遠不止這些
    少兒編程僅僅是學一種計算機語言嗎?極客晨星告訴你遠不止這些   賈伯斯曾說過:「人人都應該學習一門計算機語言,因為它將教會你如何思考」。
  • 中文能成為世界語言嗎?
    在上世紀八十年代,第三次工業革命,世界進入電子計算機、網際網路時代,此時有一種聲音說中文不適合計算機時代,中國應該全面使用英語作為通用語言,否則會被世界淘汰。類似謬論每隔一段時間就會出現一次。但我們真的認識中文嗎?真的了解中文嗎?
  • 復旦桂韜:當NLP邂逅Social Media——構建計算機與網絡語言的橋梁
    話不多說,快快看過來,希望這些優秀的青年學者、專家傑青的學術報告 ,能讓您在業餘時間的知識閱讀更有價值。人工智慧論壇如今浩如煙海,有硬貨、有乾貨的講座卻百裡挑一。復旦大學桂韜為大家帶來報告《當NLP邂逅Social Media--構建計算機與網絡語言的橋梁》。桂韜,復旦大學自然語言處理實驗室博士生,導師是張奇和黃萱菁教授。一直致力於網絡語言的自然語言處理研究,包括信息抽取、序列標註、強化學習、元學習等。
  • 為什麼90%的大學都要求計算機專業學習C語言,而不重視Java等語言?
    程式語言是編程的工具,計算機相關專業的學生必須具備足夠的編程能力。當然,關於「最好語言」的爭論從來沒有休止過,這裡要強調一下:語言的選擇真的沒那麼重要,學習語言的過程最重要是語言的機制。要記住,在入門階段不應過多的去考慮哪種語言更有前景。
  • 為何當前計算機專業還在大一期間學習C語言,而不學習Java等語言
    首先,當前對於計算機專業的同學來說,一定要重視C語言的學習,原因有三個方面,其一是C語言當前依然有很多的應用場景,作為程式語言界的「常青樹」,C語言在作業系統研發、物聯網系統研發等領域,依然具有一定的不可替代性。
  • 計算機思維的邏輯基礎是什麼?
    l 計算機思維的邏輯基礎計算機思維是指人們操作計算機時,計算機行使特定功能的運作方式。邏輯基礎則是指支撐事物運作的基本法則。因而,計算機思維的邏輯基礎可以理解為,計算機在行使特定功能時,其運作方式背後的法則——即「分離」。
  • 在計算機軟體領域 C語言之父和Linux之父誰更偉大
    在C語言被用作系統程式語言之前,Tomphson也用過B語言編寫過作業系統。可見在C語言實現以前,B語言已經可以投入使用了。因此第一個C語言編譯器的原型完全可能是用B語言或者混合B語言與PDP彙編語言編寫的。 我們現在都知道,B語言的執行效率比較低,但是如果全部用彙編語言來編寫,不僅開發周期長、維護難度大,更可怕的是失去了高級程序設計語言必需的移植性。
  • 大一計算機類新生,在學習C語言的過程中,需要注意哪些內容
    首先,對於計算機相關專業的大一新生來說,一定要重視C語言的學習,一方面掌握C語言對於後續的專業課學習有較大的幫助,另一方面C語言也是不少高校考研的重點考察內容之一,而且當前C語言在物聯網等領域也有大量的應用場景。
  • 利用計算機,人類能發現「萬物理論」嗎?
    在那年的一次演講中,他提出,所謂的「萬物理論」可能是可以實現的,但它的最後實現可能要靠計算機來完成。  萬物理論還沒有出現,但計算機已經開始接管生活中的一些許多瑣事了,比如翻譯語言、識別人臉、駕駛汽車、推薦約會對象等等。這樣看來,想像它們接管世界上的一切也就不那麼瘋狂了。
  • 先來理解一下C語言的Helloworld程序吧
    C語言作為一門計算機科學歷史上裡程碑式的程式語言,現在依然被廣泛使用。其功能強大,內容簡單,想學習編程的小夥伴們不妨先學習一下C語言。本文將介紹一下K&R所寫的經典程序:Helloworld的簡要分析。
  • C語言、Python語言和Java語言,初學者應該學習哪一個
    首先,程式語言是計算機專業課當中相對比較簡單的課程,程式語言也被認為是打開計算機技術大門的鑰匙,所以大部分程式語言的學習難度並不算高。對於計算機相關專業的同學來說,C語言是應該重點學習的程式語言,而且由於C語言本身是面向過程式程式語言,所以整體的語法結構還是比較容易理解的。學習C語言的過程也會逐漸學習一些計算機相關的知識,尤其是會理解很多作業系統相關的概念,包括進程調度、資源管理(IO、內存)等內容。
  • 2021考研計算機大綱:408計算機組成原理部分原文解析
    2021考研計算機大綱:408計算機組成原理部分原文解析 2021考研大綱已於9月9日公布,考研大綱是對考研科目的考試範圍、考試要求、考試形式、試卷結構等權威政策指導性考研用書。
  • 計算機能做數學嗎?|展卷
    阿蒂亞(Michael Atiyah)曾說過:「我們的理想是探究數學真諦,而不是利用機械執行指令的計算機推演論證。」另一位菲爾茲獎獲得者澤爾曼諾夫(Zelmanov)也表示贊同:「只有所有數學家都認可的證明方法才是真正有效的,所以我對機器證明方法的前景並不看好。」他說的有道理嗎?如果數學證明方法只有生成它的機器能夠理解,我們真的可以相信嗎?
  • 名目繁多的程式語言,原來這三種最適合孩子
    前兩天的推文裡,我們介紹了學編程的重要性,今天,想和大家聊一聊程式語言那麼多,怎樣選擇最適合孩子的?首先想問一下大家:你們知道計算機從最初的語言到如今有多少種?2500種以上!驚訝嗎?程式語言(programming language)可以理解為一種計算機和人都能識別的語言。簡單來說就是一種讓人能和機器順利打交道的工具。什麼樣的語言才是最適合孩子學習的呢?
  • 零基礎看得懂的C語言入門教程
    以上解釋可能對於剛剛接觸編程或計算機的小白來說可能會難以理解。可能會產生例如「程序是什麼?」、「計算機怎麼得到一個結果?」、「怎麼編寫程序」等問題。那我接下來換個解釋「編程是指人給予計算機一個命令,並且使計算機完成這個命令」;就好比使用空調,我們給予空調開與關的命令是通過遙控器,按下遙控器開,空調接收到了指令開則會開啟。
  • 人工智慧之自然語言處理初探
    雖然自然語言處理是人工智慧的一個細分領域,但是自然語言處理這個細分領域內,又有很多的細分領域。自然語言處理,也是涵蓋了多個學科的一個系統化的大型工程。自然語言處理,除了包含常見的分詞、分句、分段,詞目計算、詞類標註,有限狀態自動機、隱馬爾可夫模型等基礎的計算機理論知識外,還包含了語音學、語言學、心理學、統計學、腦科學等多個領域的學科知識。