Tag: keras

python #07 Sentiment Analysis – IMDB

ต่อจาก python #06 – Sentiment Analysis ด้วย Keras + Tensorflow เนื่องจากเรา Train โมเดล ด้วย ประโยคเพียง 9 ประโยค ซึ่งประกอบด้วยคำ 19 คำ เมื่อถูกทดสอบด้วยคำที่ “ไม่เคยเจอมาก่อน” ก็จะไม่สามารถวิเคราะห์ได้ถูกต้องนัก ยิ่ง ถ้าเจอกับประโยคที่ ไม่มีคำที่เคยเจออยู่เลย ก็จะได้ Zero Vector ไปเลย (ในทางเทคนิค สามารถตั้งค่าห้ Unknown Word มี Index = 1 ได้) แก้ไขอย่างไร…

python #06 – Sentiment Analysis ด้วย Keras + Tensorflow

บทความนี้กล่าวแบบทางเทคนิค ไม่เน้นวิชาการ ทฤษฏีมากนัก Sentiment Analysis เป็นตัวอย่างที่ดีของการเริ่มต้นทำงานด้าน NLP (Natural Language Processing) เริ่มจากหาตัวอย่างประโยค (Inputs) และเป้าหมาย (Labels) แยกคำจากประโยค (Tokenization) แปลงให้เป็นตัวเลข (Word Representation) แล้วสอน NN (Train) วัดผล (Test/Evaluate) แล้วนำไปใช้ โดยป้อนประโยคเข้าไป แล้วดูว่า โมเดลของเราจะจัดให้เป็น Labels ใด (ในตัวอย่างนี้จะเป็น Multiclass (Multinomial) Classification) ดู Jupyter Notebook Input สมมุติเรามีตัวอย่างประโยคประมาณนี้แบ่งเป็น Positive,…

python #05 – การ Save/Load ตัวโมเดลจาก Keras แล้วนำไปใช้ใน Production Server

ต่อจาก python #03 – Train/Validation/Test and Accuracy Assessment with Confusion Matrix เมื่อสร้าง Neural Network Model แล้วทำการ Train/Test ปรับค่า Hyper parameters จนได้ผลเป็นที่พอใจแล้ว (Accuracy และ Confusion Matrix ให้ค่าที่รับได้) ก็สามารถเก็บ Model นี้เอาไว้ใช้งานภายหลัง ไม่ต้องเริ่มต้น Train ใหม่ โดยใช้คำสั่ง ก็จะได้ไฟล์ (ตามตัวอย่างนี้) ชื่อ example_model.h5 สามารถนำไปใช้บนเครื่อง Production ได้…

python #04 – Tensorboard

เมื่อติดตั้ง Tensorflow ก็จะมี Tensorboard ติดตั้งมาให้แล้ว วิธีการใช้งาน ก็แสนง่าย คือ ใน Code เพิ่ม(ตั้งชื่อ directory ให้ดี เช่นกรณีนี้ ตั้งชื่อว่า example-logs เป็นต้น) และในส่วนของ fit ให้เพิ่ม callbacks เข้าไป ดังภาพนี้ จากนั้นก็ Train ตามปรกติ เมื่อต้องการดู Tensorboard ก็เพียงเปิดอีก Terminal หนึ่ง (Command Prompt) ไปที่ Directory ที่มี log อยู่ แล้วใช้คำสั่ง ตัว…

python #03 – Train/Validation/Test and Accuracy Assessment with Confusion Matrix

ต่อจาก python #02 – ติดตั้ง Tensorflow และ Keras ซึ่งกล่าวถึง ขั้นตอนการสร้าง Model และ วาง Layers ต่าง ๆ ของ Keras รวมไปถึง การใช้ model.summary() เพื่อแสดงโครงสร้าง Neural Network ที่สร้างขึ้นมาแล้ว ต่อไป เป็นการ นำข้อมูลมาแบ่งเป็นชุด สำหรับ Train/Validate/Evaluate การแบ่งข้อมูล สมมุติมีข้อมูล ที่อาจจะมาจาก CSV File ซึ่งมี field 0 – 9…