เครื่องมือใช้กำกับข้อมูล

โปรแกรมที่เลือกใช้งานช่วงแรกคือ Doccano ซึ่งเป็น open source โปรแกรม  ได้ใช้โปรแกรมนี้กำกับข้อมูลบทอ่านในโครงการ  การกำกับข้อมูลมีส่วนที่ใช้กำกับตัวบทกับส่วนที่ใช้สำหรับกำกับข้อมูลภายในตัวบท

ภายหลังปรับใช้โปรแกรมที่สร้างขึ้นเฉพาะด้วยวิธีการ vibe coding ผ่านการใช้ Google Firebase Studio

โปรแกรม Doccano

โปรแกรม Doccano เป็น open source สำหรับใช้กำกับข้อมูล  สามารถใช้กำกับข้อมูลลักษณะที่เป็น Text Classification กับ Sequence Labeling ได้ซึ่งเป็นลักษณะการกำกับข้อมูลที่ต้องการใช้ในโครงการนี้  การกำกับ Text Classification คือการกำกับป้ายหรือ label ให้กับตัวบททั้งบทว่าเป็นอะไร  ส่วน Sequence Labeling คือการเลือกกำกับเฉพาะส่วนของข้อความที่ต้องการภายในตัวบท

Doccano สามารถติดตั้งบนเครื่องแม่ข่ายเพื่อใช้งานร่วมกันหลายคนผ่านเครือข่ายอินเทอร์เน็ตได้  ทำให้สะดวกแก่การทำงานร่วมกัน  เมื่อวางระบบแล้วกำหนดผู้ใช้ว่ามีใครบ้าง ทำหน้าที่กำกับข้อมูลส่วนไหน  สามารถ upload ข้อมูลเข้าระบบเพื่อให้ผู้ใช้กำกับข้อมูล  เมื่อกำกับข้อมูลเสร็จแล้วก็สามารถ download ไฟล์ออกมาได้  ไฟล์ที่ได้เก็บในรูปแบบ json ทำให้สะดวกต่อการนำไปใช้งานต่อ

ข้อมูลที่ export หลังการกำกับข้อมูลด้วยโปรแกรม Doccano อยู่ในรูปของ json ตาม format ที่โปรแกรมกำหนดไว้ เช่น ตัวอย่างข้างล่างเป็นข้อมูลจากการกำกับดัชนีปริจเฉทในย่อหน้า

{"id":2,"text":"ในกลุ่มผู้ป่วยเมื่อระดับน้ำตาลในเลือดเพิ่มสูง  ความสัมพันธ์ระหว่างสมองที่เกี่ยวข้องกับการรับรู้กับอารมณ์จะทำงานน้อยลง  มิหนำซ้ำยังทำให้ระดับกลูตาเมตสูงขึ้น  ผลของการเปลี่ยนแปลงในสมองนี้เองที่เพิ่มความเสี่ยงให้ผู้ป่วยมีภาวะซึมเศร้า แต่โชคดีที่ยังไม่ถึงขั้นรุนแรงมากนัก ฉะนั้นกินอาหารไม่หวาน  ออกกำลังกายบ่อย ๆ  และไม่เครียด เพื่อรักษาระดับน้ำตาลในเลือดกัน","label":[[14,19,"sequential"],[119,127,"additive"],[182,188,"topic_marker"],[231,234,"contrastive"],[234,239,"stance"],[268,274,"cause-effect"],[323,328,"purpose"]],"Comments":[]}

เพื่อให้ได้ข้อมูลที่มีการกำกับแบบต้องการ จึงจำเป็นต้องเขียนโปรแกรมเพื่อแปลงข้อมูลที่ได้จาก Doccano มาเป็นรูปแบบที่ต้องการตามตัวอย่างนี้

{"id": 2, "text": "ในกลุ่มผู้ป่วยเมื่อระดับน้ำตาลในเลือดเพิ่มสูง  ความสัมพันธ์ระหว่างสมองที่เกี่ยวข้องกับการรับรู้กับอารมณ์จะทำงานน้อยลง  มิหนำซ้ำยังทำให้ระดับกลูตาเมตสูงขึ้น  ผลของการเปลี่ยนแปลงในสมองนี้เองที่เพิ่มความเสี่ยงให้ผู้ป่วยมีภาวะซึมเศร้า แต่โชคดีที่ยังไม่ถึงขั้นรุนแรงมากนัก ฉะนั้นกินอาหารไม่หวาน  ออกกำลังกายบ่อย ๆ  และไม่เครียด เพื่อรักษาระดับน้ำตาลในเลือดกัน", "dms": [{"pos": [14, 19], "type": "sequential", "text": "เมื่อ"}, {"pos": [119, 127], "type": "additive", "text": "มิหนำซ้ำ"}, {"pos": [182, 188], "type": "topic_marker", "text": "นี้เอง"}, {"pos": [231, 234], "type": "contrastive", "text": "แต่"}, {"pos": [234, 239], "type": "stance", "text": "โชคดี"}, {"pos": [268, 274], "type": "cause-effect", "text": "ฉะนั้น"}, {"pos": [323, 328], "type": "purpose", "text": "เพื่อ"}]}

ข้อมูลที่ได้จากโปรแกรมการกำกับข้อมูลแต่ละส่วนจะถูก export และผ่านการแปลงข้อมูลด้วยโปรแกรม Python ที่เขียนขึ้นเฉพาะสำหรับงานนี้  เมื่อได้ข้อมูลที่มีโครงสร้างข้อมูลตามที่ต้องการของแต่ละส่วนแล้ว  ก็จะ merge ข้อมูลทุกส่วนเข้าด้วยกันด้วยโปรแกรม Python ที่เขียนขึ้น  ผลสุดท้ายที่ได้คือไฟล์ json สำหรับข้อมูลบทอ่านแต่ละบท

การใช้ Vibe Coding สร้างโปรแกรมกำกับข้อมูล

โปรแกรม Doccano เป็นโปรแกรมสำหรับกำกับข้อมูลโดยทั่วไป  สามารถนำมาปรับใช้กับงานเฉพาะด้านได้  แต่ในการใช้งานก็จำเป็นต้องคอยปรับเปลี่ยนข้อมูลระหว่างการ import และ export จากโปรแกรมที่ใช้  อีกทั้งการใช้งานก็ต้องมีการติดตั้งโปรแกรมในระบบ server ของตัวเอง ซึ่งก็อาจเกิดปัญหาในระหว่างการใช้งานได้  

ภายหลังเมื่อ AI ช่วยสร้างโปรแกรมที่ต้องการได้ง่ายมากขึ้น  จึงได้ลองใช้ Google Firebase Studio เพื่อสร้าง web app สำหรับกำกับข้อมูลที่ใช้ในโครงการ  วิธีการคืออธิบายความต้องการของโปรแกรมว่าจะทำอะไรได้บ้าง ข้อมูลที่รับเข้าและส่งออกมีรูปแบบอย่างไร  พฤติกรรมการใช้งานเป็นอย่างไร  สื่อสารอธิบายด้วยภาษาไทยตามปกติ และปรับแก้ไขโปรแกรมไปจนกว่าจะได้ตามที่ต้องการ การพัฒนาโปรแกรมใช้เวลา 2-3 ชั่วโมง เพราะเมื่อมีความชัดเจนว่าต้องการ web app แบบไหนการสร้าง app ก็ทำได้ง่ายขึ้น. ตัวอย่างหน้าจอล่างแสดงการสั่งให้ Firebase พัฒนา web app ที่ต้องการ

โปรแกรมกำกับข้อมูลตัวบท

โปรแกรมกำกับข้อมูลที่ใช้สามารถเรียกผ่าน link ด้านล่าง หากมีข้อมูล json ไฟล์ตามกำหนดก็สามารถใช้โปรแกรมนี้กำกับข้อมูลผ่านเว็บได้