Document
v.1.0
เริ่มต้นใช้งาน
1. โปรเจคใหม่
-
ท่านสามารถสร้างโปรเจคใหม่ด้วยการคลิกปุ่ม ‘New Project’ บนหน้า ‘Home’
-
ในหน้า ‘Project Setup’ ท่านสามารถใส่ชื่อ ‘Project Name’ และคำนิยามของโปรเจค ‘Project Description’ หรือปล่อยให้ช่องเหล่านี้ว่าง ถ้าหากท่านปล่อยช่องเหล่านี้ว่าง ระบบจะสร้างชื่อโปรเจคและคำนิยามโปรเจคให้เป็น ‘NewProject-ddmmyy-hhmmss’ และ ‘Default-ddmmyy-hhmmss’ โดยอัตโนมัติตามลำดับ โดยที่ ddmmyy หมายถึงวันที่ เดือน และปี ค.ศ. และ hhmmss หมายถึง ชั่วโมง นาที และวินาทีที่โปรเจคถูกสร้างขึ้นมา
-
เลือกชนิดการเทรน เช่น image classification, object detection หรือ image segmentation โดยท่านสามารถเลือกชนิดการเทรนได้จากตัวเลือกทั้งสามนี้ จากนั้นจึงคลิกปุ่ม ‘Next’
-
ในหน้า ‘Create Run’ ท่านสามารถใส่ชื่อ ‘Run Name’ และนิยาม ‘Discription’ หรือปล่อยให้ช่องเหล่านี้ว่าง ถ้าหากท่านปล่อยช่องเหล่านี้ว่าง ระบบจะสร้างชื่อและนิยามให้โดยอัตโนมัติเช่นเดียวกับในส่วนของ ‘Project Name’
-
เลือก dataset โดยการคลิกปุ่ม ‘Click’ ของ Dataset ในส่วนของ Run Configuration หลังจากคลิกปุ่มนี้แล้ว หน้าเพจจะนำท่านไปสู่หน้า ‘Dataset’ ท่านสามารถเลือกใช้ชุดข้อมูลชุดเดียวสำหรับขั้นตอนการ Train/Valid/Test หรือใช้ชุดข้อมูลแยกสำหรับแต่ละขั้นตอน นอกจากนี้ท่านยังสามารถเลือกใช้ชุดข้อมูลที่เราเตรียมไว้ให้หรืออัพโหลดชุดข้อมูลของท่านเองเข้ามาใช้งานโดยการคลิกปุ่ม ‘Choose’ และดำเนินการตามขั้นตอนที่แสดงขึ้นมา ถ้าหากท่านต้องการอัพโหลดชุดข้อมูลของท่าน กรุณาดูหัวข้อ ‘การอัพโหลดชุดข้อมูล’ สำหรับรายละเอียดเพิ่มเติม และจากนั้นในขั้นตอนสุดท้าย ท่านสามารถเลือกการแบ่งชุดข้อมูลเป็น Train/Valid หรือ Train/Valid/Test และคลิกปุ่ม ‘Next’ เพื่อจบการเลือกชุดข้อมูล
-
ขั้นตอนนี้ท่านอยู่ที่หน้า ‘Training configuration’ ท่านสามารถเลือกระหว่าง ‘Load Template Config’ หรือ ‘Create New Config’ ถ้าหากท่านเลือก ‘Create New Config’ และคลิกปุ่ม ‘Next’ ท่านจะเข้าสู่หน้า ‘Create New Config’ จากนั้นท่านสามารถเลือกกำหนดค่าพารามิเตอร์ต่าง ๆ ด้วยตัวเองได้ที่หน้านี้ หลังจากเสร็จสิ้นการตั้งค่าพารามิเตอร์แล้ว คลิกปุ่ม ‘Next’ และท่านจะเข้าสู่หน้า ‘Confirm’ คลิกปุ่ม ‘Finish’ เพื่อสิ้นสุดการสร้างโปรเจคใหม่
2. อัพโหลดชุดข้อมูล
ท่านสามารถข้ามขั้นตอนนี้ไปได้ถ้าหากท่านต้องการใช้ชุดข้อมูลที่เราเตรียมไว้ให้แล้ว
-
เตรียมชุดข้อมูลที่ต้องการอัพโหลดให้อยู่ในรูปแบบที่เรากำหนดและบีบอัดชุดข้อมูลในโฟลเดอร์ให้อยู่ในรูปแบบ zip
- รองรับข้อมูลภาพแบบ .png .jpg .jpeg .JPG .tif และ .tiff
- ชุดข้อมูลที่บีบอัดและต้องการอัพโหลดต้องมีขนาดไม่มากกว่า 1GB ต่อการอัพโหลดแต่ละครั้ง
- สำหรับชุดข้อมูลที่มีขนาดใหญ่กว่า 1GB ท่านสามารถแยกชุดข้อมูลออกเป็นไฟล์ zip หลายไฟล์และอัพโหลดแยกกันได้
สำหรับแต่ละชนิดงาน เช่น image classification, object detection และ image segmentation ท่านต้องเตรียมชุดข้อมูลตามรูปแบบดังต่อไปนี้
1.1. Image Classification
เรารองรับชุดข้อมูล 2 แบบสำหรับงาน image classification
1.1.1. ชุดข้อมูลแบบมีชื่อ
ท่านสามารถจัดเตรียมชื่อของชุดข้อมูลได้โดยการสร้างไดเรคทอรีย่อยที่เป็นชื่อของประเภท (class) และใส่ไฟล์รูปภาพที่เป็นประเภทเดียวกันเข้าไปยังไดเรคทอรีย่อย ชุดข้อมูลแบบมีชื่อสามารถนำไปใช้ในการเทรนหรือทดสอบโมเดล การนำชุดข้อมูลแบบมีชื่อไปใช้ในการทดสอบโมเดลจะให้ผลที่มีทั้งผลการทำนายและความแม่นยำในการทำนาย
dataset.zip ├── dog_vs_cat_labelled │ ├── dog │ │ ├── image1.png │ │ └── image2.png │ └── cat │ ├── image3.png │ └── image4.png1.1.2 ชุดข้อมูลแบบไม่มีชื่อ
ชุดข้อมูลแบบไม่มีชื่อประกอบด้วยไฟล์รูปภาพทั้งหมดอยู่ในไดเรคทอรีเดียวกัน ชุดข้อมูลแบบไม่มีชื่อสามารถนำไปใช้ได้เฉพาะการทดสอบโมเดล และการทดสอบโมเดลด้วยชุดข้อมูลแบบไม่มีชื่อนี้จะให้ผลการทำนายประเภทและคะแนนความมั่นใจในการทำนาย
dataset.zip |_ dog_vs_cat_unlabeled |_ image1.png |_ image2.png |_ image3.png |_ image4.png1.2 Object detection
งาน object detection มีความคล้ายกับ image classification เรารองรับชุดข้อมูลแบบมีชื่อและไม่มีชื่อ
1.2.1 ชุดข้อมูลแบบมีชื่อ
ท่านสามารถเตรียมชื่อของชุดข้อมูลในรูปแบบไฟล์ COCO Json พร้อมแนบไฟล์รูปภาพเข้าไว้ในไดเรคทอรีเดียวกัน ชุดข้อมูลแบบมีชื่อสามารถนำไปใช้ในการเทรนหรือทดสอบโมเดล การนำชุดข้อมูลแบบมีชื่อไปใช้ในการทดสอบโมเดลจะให้ผลที่มีทั้งผลการทำนายและความแม่นยำในการทำนาย
dataset.zip |_ coco_person_labelled |_ annotations_coco.json |_ image1.png |_ image2.png |_ image3.png |_ image4.png1.2.2 ชุดข้อมูลแบบไม่มีชื่อ
ชุดข้อมูลแบบไม่มีชื่อประกอบด้วยไฟล์รูปภาพเท่านั้น โดยที่ไม่มีไฟล์ COCO Json ชุดข้อมูลแบบไม่มีชื่อสามารถนำไปใช้ได้เฉพาะการทดสอบโมเดล และการทดสอบโมเดลด้วยชุดข้อมูลแบบไม่มีชื่อนี้จะให้ผลการทำนายประเภทและคะแนนความมั่นใจในการทำนาย
dataset.zip |_ coco_person_unlabelled |_ image1.png |_ image2.png |_ image3.png |_ image4.png1.3 Image segmentation
งาน image segmentation ใช้ไฟล์ COCO Json ท่านสามารถใช้รูปแบบชุดข้อมูลเช่นเดียวกับงาน object detection ได้
-
การเพิ่มชุดข้อมูล
ท่านสามารถอัพโหลดชุดข้อมูลของท่านเอง โดยท่านมีทางเลือกในการอัพโหลดชุดข้อมูล 2 ทางเลือกดังนี้
- อัพโหลดชุดข้อมูลที่ท่านเตรียมไว้จาก PC ของท่าน โดยการเลือกไฟล์ชุดข้อมูลที่ท่านเตรียมไว้ในรูปแบบไฟล์ zip และคลิกปุ่ม ‘Upload to database’ จากนั้นชุดข้อมูลของท่านจะถูกอัพโหลดขึ้นสู่ NomadML
- อัพโหลดชุดข้อมูลจากคลาวด์ โดยท่านสามารถอัพโหลดชุดข้อมูลของจาก S3 Bucket โดยการกรอกข้อมูลต่าง ๆ ลงไปยังช่องข้อมูลและคลิกปุ่ม ‘Use S3 Dataset’ เพื่ออัพโหลดชุดข้อมูล
3. การเทรนและทดสอบโมเดลของท่าน
-
คลิกเลือกการ์ดโปรเจคที่ท่านได้สร้างไว้ในขั้นตอนการสร้างโปรเจคใหม่
-
เลือกตัวเลือก ‘Runs’ ที่อยู่ในแถบด้านซ้าย
-
ในหน้า ‘Runs’ เลือกแถบ ‘Train’ ที่อยู่ในแถบด้านขวา
-
คลิกปุ่ม ‘Train’ เพื่อเริ่มการเทรนโมเดล
-
ท่านสามารถดูข้อมูลต่าง ๆ ของการเทรน เช่น progress logs และกราฟการเทรนได้โดยการเลือกปุ่ม ‘Log’ ที่อยู่ทางมุมขวา และแถบ ‘Log’ จะแสดงข้อมูลต่าง ๆ ที่ท่านต้องการ
-
หลังจากการเทรนเสร็จสิ้น ท่านสามารถตรวจสอบผลการเทรนได้จาก ‘Training Results’ ซึ่งแสดงค่าต่าง ๆ เช่น validation metric, validation loss, best epoch และ best step
-
การทดสอบโมเดลสามารถทำได้โดยการคลิกแถบ ‘Test’ ที่อยู่ทางด้านขวา จากนั้นท่านสามารถเลือกชุดข้อมูลสำหรับการทดสอบได้จากชุดข้อมูลที่เราเตรียมไว้ให้หรือชุดข้อมูลที่ท่านอัพโหลดขึ้นมา ถ้าหากท่านเลือกชุดข้อมูลแบบไม่มีชื่อ ท่านจะได้ผลการทดสอบเฉพาะผลการทำนายที่ไม่มีค่าความแม่นยำของโมเดลให้
4. การนำออกโมเดล
-
ในหน้า ‘Runs’ ของท่าน เลือกตัวเลือกใน ‘Export Options’ เพื่อเลือกรูปแบบที่ท่านต้องการนำออกโมเดลของท่าน ซึ่งแพลตฟอร์มเราตอนนี้รองรับแค่รูปแบบ ‘ONNX’
-
คลิกปุ่ม ‘Export model’ และรอจนกระทั่งขั้นตอนการนำออกโมเดลเสร็จสิ้น จากนั้นคลิกปุ่ม ‘Download’ เพื่อดาวน์โหลดโมเดลลงมายังเครื่อง PC ของท่าน