銅靈 發自 凹非寺量子位 出品 | 公眾號 QbitAI
紙上得來終覺淺,決勝NLP要躬行。
一套面向實戰、號稱「代碼優先」的NLP課程來了,名字為A Code-First Introduction to Natural Language Processing,fast.ai出品,全程免費學習。
不到半天點讚超過1600,轉發近500。
這套課程內容包括主題建模、情緒分類,語言建模和翻譯等,是舊金山大學今年春天的最新碩士課程,此前已經有300多名學生上過此課並畢業。
裡面融合了此前經典NLP課程的基礎內容,比如正則表達、SVD、樸素貝葉斯,還加入了最近興起的神經網絡中新方法,比如RNN、seq2seq、注意力機制和Transformer架構。
還加上了對道德問題、偏見問題和虛假信息可能帶來的影響。
既然偏向實戰,那代碼必須全。這套課程用的是PyTorch和fast.a庫所有的Python代碼都在Jupyter Notebook中,還有全套視頻與你為伴。
服用指南
直接看課程裡面有什麼乾貨。
1、概覽
什麼是NLP
2、傳統NLP方法
佔整個課程三分之一的篇幅,介紹了使用SVD進行主題建模,通過樸素貝葉斯和邏輯回歸、以及正則表達式進行情感分類。
3、深度學習:NLP中的遷移學習
NLP中的遷移學習涉及到在大型語料庫上訓練語言模型,並且對不同的小語料庫進行微調等。
這項工作已經被BERT、GPT-2和XLNet等模型採用,在這一節中,主要分享了構建英語以外其他語言模型的技巧,包括用ULMFit建立越南語和土耳其語語言模型的技巧。
4、深度學習:Seq2Seq翻譯和Transformer架構
這一節研究了簡單RNN如何工作的細節,還介紹了用於翻譯的Seq2Seq模型。
從建立翻譯模型,到teacher forcing方法、注意力機制以及GRU等方法提高準確率。
最後介紹了Transformer架構的實現。
5、NLP的倫理問題
倫理問題及潛在的風險是作者重點推薦的一節。
在OpenAI的GPT-2語言模型問世後,翻譯、閱讀理解、回答問題等任務都能做到以假亂真,讓不少群眾開始慌張。
這一節給出了解決方法和建議步驟,如驗證系統和數字籤名等。
每節課都有視頻,每個視頻長度在20-90分鐘之間。
側重實踐
這門課背後的fast.ai,在深度學習界算是獨樹一幟。
fast.ai由Kaggle大神Jeremy Howard、後悔讀了博的數學博士Rachel Thomas、原本在巴黎教了7年書的Sylvain Gugger聯合創辦。
他們是真正的實踐派,課程以「教實用的東西、高效解決問題」為核心追求,非常重視工程實現細節。
在去年發布更基礎的「程式設計師的機器學習入門」課時,他們讚揚了吳恩達老師的入門課worderful之後就接了個「但是」:但是,它現在有顯得太老氣了,特別是作業還得拿Matlab寫。
fast.ai的課程就非常緊跟程式設計師的實踐潮流,用Python編程,用交互式的Jupyter Notebooks學習。
同時,他們也非常鼓勵學生去參加Kaggle競賽,檢驗自己的能力。
這套NLP新課,也是同樣的思路了。
傳送門
課程首頁:
https://www.fast.ai/2019/07/08/fastai-nlp/
GitHub上有課程所需的所有代碼:
https://github.com/fastai/course-nlp
Fast.ai庫:
https://docs.fast.ai/