鄔昌興 羅國亮



[摘 要] 傳統“自然語言處理”課程的教學內容以基于統計學習的方法為主,與當前主流的基于深度學習的方法這一發展現狀不匹配。為了培養符合市場需求的人才,應探討深度學習背景下“自然語言處理”課程的理論和實驗教學內容設計;為了提高課堂教學效果,引入對比教學法,通過與基于統計學習的方法進行對比,讓學生深刻理解基于深度學習方法的優缺點。實踐表明,對比教學法適合深度學習背景下“自然語言處理”課程的教學,教學效果顯著提高。
[關鍵詞] 人口智能;深度學習;教學內容;對比教學法
[基金項目] 2020年度江西省教育科學規劃課題“新工科背景下基于VR技術的現代教育技術應用探索與研究”(20YB056)
[作者簡介] 鄔昌興(1981—),男,江西豐城人,理學博士,華東交通大學軟件學院講師,主要從事自然語言處理、深度學習研究;
羅國亮(1985—),男,江西南昌人,工學博士,華東交通大學軟件學院副教授(通信作者),主要從事計算機圖形學、人工智能研究。
[中圖分類號] G642.0 ? ?[文獻標識碼] A ? ?[文章編號] 1674-9324(2021)29-0137-04[收稿日期] 2021-03-01
根據2017年國務院發布的《新一代人工智能發展規劃》[1]和2018年教育部關于印發《高等學校人工智能創新行動計劃》的通知[2],加強人工智能領域人才培養已成為國家及高校的迫切需求。
“自然語言處理”是人工智能領域與計算機科學領域中的一個重要方向,研究能實現人與計算機之間用自然語言進行有效通信的各種理論和方法,包括自然語言理解和自然語言生成兩大問題。自然語言理解處于認知智能最核心的地位,其進步必將會推動人工智能整體的發展。因此,“自然語言處理”課程逐步被國內高校引入作為計算機相關專業本科生或研究生的必修或選修課程。
一、課程背景
“自然語言處理”的發展經歷了從基于規則的方法到基于統計學習的方法,再到目前主流的基于深度學習的方法三個階段。以機器翻譯為例,很多年前大家通常采用基于規則的方法,基本思想是依靠語言專家來定義規則并教機器如何去翻譯。事實證明基于規則的方法效果并不好,因為語言是錯綜復雜的,而人不可能窮盡所有的規則。隨后,大家轉向基于統計學習的機器翻譯方法,即給機器一堆雙語對齊語料讓機器自己去學習翻譯規則。統計機器翻譯方法不需要人工定義規則,但其學到的還是一些符號層面的規則。近年來,人工智能進入了一個新的發展高潮,深度學習方法在計算機視覺和自然語言處理等領域取得了突破性的進展[3]。隨著深度學習方法的引入,機器翻譯的水平有了一個大幅提高,使得機器不再在符號層面做翻譯,而是將整個推理過程映射到一個語義空間中,并在語義空間中進行翻譯。基于深度學習的自然語言處理應用已經深入到大家的日常生活中,例如,今日頭條中的智能新聞推薦。因此,把基于深度學習的方法作為當前自然語言課程的核心內容是非常有必要的,有利于培養滿足時代要求的人工智能人才。
當前,自然語言課程的教學研究工作主要探討基于統計學習的相關理論和方法的教學,而深度學習背景下的教學探討幾乎沒有。例如,李霞[4]討論了面向本科階段開設的“自然語言處理”課程的教學內容組織和實踐教學等問題,其教學內容主要包括基于規則的方法和基于統計學習的方法。傅迎華等[5]以上海理工大學智能科學與技術專業“自然語言處理”課程教學實踐為例,闡述了課程教學的基本目標和理論以及實驗教學內容安排的基本思路。其教學內容主要包括Python程序設計和NLTK語言處理工具包、基于統計學習的自然語言處理的基本原理和方法兩部分。李霞[6]闡述了如何以跨學科教學理念設計和組織“自然語言處理”課程的教學內容、教學方法和課程設計等,其教學內容主要包括基于統計學習的詞法分析、句法分析和語義分析模型。最近,羅世奇等[7]探索了在新形勢下進行自然語言處理項目式教學的問題,其內容依然沒有涉及深度學習相關技術。因此,開展深度學習背景下自然語言課程教學的探索工作是一項迫切的任務,有利于教學效果的提高。下面分別從教學內容的設計和對比教學法的應用兩個方面展開詳細討論。
二、教學內容的設計
“自然語言處理”課程的教學目標可以分為以下兩個層次。第一層次,大部分學生通過本課程學習,掌握“自然語言處理”的基本概念和原理,掌握主流的自然語言處理技術,了解領域的發展現狀和前沿熱點,具備解決實際問題的能力。第二層次,部分學生較好地掌握主流的自然語言處理技術,通過后續的自主學習,具備應用創新的能力。為了實現上述教學目標,把基于深度學習的自然語言處理技術引入到課程教學中作為核心內容,有利于學生掌握主流的自然語言處理技術,了解該領域的前沿進展。表1展示了按模塊劃分的理論教學內容及學時安排,理論教學共32學時。
我們將整個課程的內容劃分為六個模塊:語言學模塊、編程基礎模塊、深度學習模塊、語義表示模塊、基礎算法模塊和實際應用模塊。語言學模塊、編程基礎模塊和深度學習模塊是課程的基礎知識部分。其中,語言學的基本知識包括詞匯學、句法學、語義學和語用學等;Python語言是目前最受歡迎的人工智能編程語言;NLTK是一個常用的文本預處理工具包;PyTorch框架是目前最流行的深度學習框架之一。語義表示模塊、基礎算法模塊和實際應用模塊是課程的核心內容部分。語義表示模塊主要讓學生掌握詞和句子在語義空間中的向量表示方法,是基于深度學習的自然語言處理方法的根基;基礎算法模塊主要讓學生掌握當前主流的基于深度學習的詞法、句法和語義分析技術等,是課程的主要內容;實際應用模塊介紹文本分類和機器翻譯兩個具有代表性的應用。
“自然語言處理”課程具有很強的聯系實際應用的特點,為了加強學生對基礎知識和主流算法的理解,開設了16個學時的實驗課,如表2所示。大多數學生完成實驗教學環節后,對相關算法有一個全新的認識,極大地提高了學習的積極性。