อยากเรียน NLP เริ่มยังไงดี?

lukkiddd
lukkiddd
Published in
2 min readMar 7, 2018

สวัสดีคร้าบ บทความนี้จะมาเขียนเรื่องที่ได้เรียนใน Course NLP ของ Cousera เนื่องจากว่ามีพี่ในกลุ่ม Thai NLP เค้าเอามาแชร์ ผมก็เลยเข้าไปเรียนดูครับ

หลังจากเรียนไปแล้ว 2 สัปดาห์ รู้สึกว่ามันโอเคมากเลย สำหรับคนที่ยังไม่รู้อะไรมาก มันเป็นการเริ่มต้นที่ดีมาก ๆ เลยนะครับ

หมายเหตุ: คอร์สนี้เหมาะกับคนที่มีพื้นฐาน หรือความรู้เกี่ยว Machine Learning หรือ Deep Learning มาก่อนแล้วนะครับ

Course: https://www.coursera.org/learn/language-processing

เนื้อหาในคอร์สจะเป็นการแนะนำให้รู้จัก NLP ตั้งแต่การทำงานกับ NLP ด้วยวิธีแบบ Rule-based, Probabilistic Modeling ไปจนถึง Deep Learning

ในคอร์สเรียนจะให้เรียนควบคู่ไปพร้อม ๆ กัน ทั้งแบบปกติ และแบบ Deep learning ครับ ยกตัวอย่างเช่น

สัปดาห์แรก เรียนเกี่ยวกับ Text Classification เค้าก็จะเล่าว่ามันต้องทำ Preprocessing ก่อนนะ มีวิธีอะไรบ้าง แล้วแต่ละวิธีมีปัญหายังไง หลังจากนั้นก็ทำการแปลง Text เป็น Feature มีวิธีอะไรบ้าง แล้วแต่ละวิธีมีปัญหายังไง พอได้ Feature ก็เอาไปเข้า Model นะ

พอจบขั้นแรก หัวข้อถัดมาก็จะเป็น Text classification ด้วย Neural network

แล้วก็จะเรียนควบคู่กันไปแบบนี้ในทุกสัปดาห์ครับ

เนื้อหาใน Coursera ก็จะมีทั้งหมด 5 สัปดาห์ พร้อมการบ้านให้ทำ
(การบ้านสนุกมากเลยครับ ควรจะมีพื้นฐานพวก pandas, sklearn, tensorflow มาด้วย เพราะว่ายากพอสมควรครับ)

  • สัปดาห์ที่ 1
    - Text Classification
  • สัปดาห์ที่ 2
    - Word sequence
    - Language Modeling
    - Sequence Tagging
  • สัปดาห์ที่ 3
    - Semantics
    - Word vectors
    - Topic Models
    - Word/Sentence Embedding
  • สัปดาห์ที่ 4
    - Sequence to sequence
  • สัปดาห์ที่ 5
    - Dialogue agents
    - Goal Oriented (Call-center)
    - Conversational (Entertainment)

ส่วน Outline ที่ละเอียดกว่านี้ ลองดูในนี้ครับ NLP-coursera-outline จะอัพเดทให้จนครบ 5 สัปดาห์นะครับผม

สำหรับ Resource อื่น ๆ ที่น่าสนใจเกี่ยวกับ NLP

Course ของอาจารย์ที่จุฬา:
https://www.youtube.com/playlist?list=PLcBOyD1N1T-NP11DsVK9XcN54rvfGBb96

Youtube Channel ภาษาศาสตร์คอมพิวเตอร์ ของอาจารย์ Attapol:
https://www.youtube.com/channel/UCgNWcPsv0yC94HHVXLjyJ5Q

Deep Learning for Text ใน Skooldio พูดโดย พี่อาร์ม (Prachya Boonkwan):
https://classroom.skooldio.com/class/da91cf60-b231-11e7-b98e-db5b2bd7964e

TechTalk #32 — Word2Vec: When Language Meets Number Crunching by Prachya Boonkwan:
https://www.youtube.com/watch?v=gCRiLg-LuEs

Lecture Collection | Natural Language Processing with Deep Learning (Winter 2017):
https://www.youtube.com/playlist?list=PL3FW7Lu3i5Jsnh1rnUwq_TcylNr7EkRe6

Ultimate Guide to Understand & Implement Natural Language Processing:
https://www.analyticsvidhya.com/blog/2017/01/ultimate-guide-to-understand-implement-natural-language-processing-codes-in-python/

VDO Speech and Language Processing ของ Dan Jurafsky ผู้เขียนหนังสือ Speech and Language Processing:
https://www.youtube.com/watch?v=CXpZnZM63Gg&list=PL8FFE3F391203C98C

คอร์ส CS224N:Natural Language Processing with Deep learning จาก Standford: https://www.youtube.com/playlist?list=PLoROMvodv4rOhcuXMZkNm7j3fVwBBY42z

หนังสือ Speech and Language Processing เขียนโดย Dan Jurafsky และ James H.Martin:
https://web.stanford.edu/~jurafsky/slp3/

หนังสือตำรา NLP:
https://github.com/jacobeisenstein/gt-nlp-class/tree/master/notes?fbclid=IwAR0_G2mnr-FU11-4KVg2Qge_Q92jh52wIr2v3UxgVGHXwJkkjEeAdOHshJ0

และอื่น ๆ อีกมากมาย

สุดท้ายนี้ใครที่สนใจเรื่อง NLP มาพูดคุยกันในกลุ่ม Thai NLP ได้นะครับ :D

--

--