บทความ

ทำ POS tagging ภาษาไทยโดยใช้ Neural Network ด้วย nlpnet

nlpnet เป็นเครื่องมือสำหรับใช้ทำ part-of-speech tagging, semantic role labeling และ dependency parsing โดยใช้ Neural Network โดยรันบน Python 2.7 (ไม่รองรับ Windows) และเป็น MIT License การติดตั้ง ใช้คำสั่ง $ pip install nlpnet การเตรียมข้อมูลภาษาไทย เราใช้ข้อมูล orchid มาทำเป็น CoNLL format ตั้งชื่อว่า thaipostag.txt ที่มี 4 column ตามตัวอย่างนี้ 1    การ    _    FIXN 2    ประชุม    _    VACT 3    ทาง    _    NCMN 4    วิชาการ    _    NCMN 5    <space>    _    PUNC 6    ครั้ง    _    CFQC 7    ที่1    _    DONM column แรกเป็นลำดับประโยค column ที่ 2 เป็นคำ และอันสุดท้ายเป็น POS tagging กำกับแต่ละคำ โหลดไฟล์ข้อมูลที่จัดทำไว้ได้จาก https://gist.github.com/wannaphongcom/a8224d8fb19eb32c3c86335e180bcc9e จากนั้น ทำการโหลดไฟล์ nlpnet-train.py จาก https://github.com/erickrf/nlpnet/raw/master/bin/nlpnet-train.py มาไว้ แล้วเปิดคอมมาไลน์ ใช้คำสั่ง $ python nlpnet-train.py pos --gold ที่ตั้งไฟล์thaipostag.txt -e จำนวนที่ต้องการtrain(ค่าเริ่มต้นคือ15) โดยเมื่อสั่ง $ python

แยกคำนามเฉพาะภาษาไทยโดยใช้ RegexpParser ด้วย NLTK

เนื่องจากภาษาไทย ยังไม่มีใครทำ ne_chunk แต่เรายังสามารถแยกคำนามเฉพาะ (Proper Noun) ออกได้ด้วย part-of-speech tagger ที่มีคนทำไว้ได้ครับ โดยใช้ RegexpParser

ทดลองตัดคำภาษาไทยด้วย Unsupervised Learning จากกูเกิล

เมื่อ 2 เดือนที่ผ่านมา กูเกิลได้แอบเปิด Unsupervised Learning สำหรับตัดคำและ detokenizer สำหรับข้อความที่ใช้ Neural Network สร้างระบบ ชื่อว่า SentencePiece โดยเป็นผลิตภัณฑ์อย่างไม่เป็นทางการของกูเกิล ข้อดีของ Unsupervised Learning คือ ไม่ต้องเตรียมข้อมูลสำหรับใช้ฝึกและไม่ต้องกำหนดหลักเกณฑ์ในการเรียนรู้ ข้อเสีย ต้องใช้ข้อมูลจำนวนมากในการ train ทำการติดตั้ง SentencePiece โดยทำตาม https://github.com/google/sentencepiece#build-and-install-sentencepiece ในการทดลองตัดคำภาษาไทยโดยใช้ SentencePiece นั้น เราได้นำข้อมูลชุดทดสอบ สำหรับการคำนวนหาค่าประสิทธิภาพของโปรแกรมแบ่งคำ (500,000 คำ) โหลดได้จาก http://thailang.nectec.or.th/downloadcenter/index.php?option=com_docman&task=cat_view&gid=39&Itemid=61 มาใช้งานทดสอบ แตกไฟล์ TEST_500K.txt ออกมา สั่ง $ spm_train --input=/home/wannaphong/thainlp/data/TEST_500K.txt --model_prefix=thai1 --model_type=unigram --input คือ ที่ตั้งไฟล์ txt สำหรับใช้ในการ train --model_prefix ชื่อ model --model_type ชนิดของ model มีทั้ง unigram (ค่

สร้าง Corpus ใหม่ที่เหมือน BEST I Corpus

BEST I Corpus เป็นคลังข้อมูลสำหรับใช้ฝึกระบบตัดคำภาษาไทย เป็นผลงานของ Nectec หากเราต้องการสร้างสร้าง Corpus ใหม่สำหรับใช้ฝึกระบบตัดคำภาษาไทย