-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
b32cb73
commit 53843e5
Showing
46 changed files
with
738 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
--- | ||
date: "31-7-24" | ||
title: "Color Harmony Classifier ML (CoHaML)" | ||
builder: "ปภาดา แสงปรีดีกรณ์(หมูแดง)" | ||
builder_info: "เตรียมอุดมศึกษาพัฒนาการ / กรุงเทพมหานคร" | ||
thumbnail: "/images/2024/1/01.jpg" | ||
links: | ||
github: "https://github.com/ccs3312/chml/tree/main" | ||
facebook: "" | ||
blog: "https://medium.com/@moodaeng911/color-harmony-finder-ai-ด้วย-fastai-90ecc303961e" | ||
--- | ||
|
||
![image](/images/2024/1/01.jpg) | ||
|
||
Color Harmony Classifier ML (CoHaML) หารูปแบบและ Classify การใช้สีของภาพวาดโดยใช้โมเดลเรียนรู้ Fastai | ||
- CoHaML เกิดขึ้นมาจากความขาดแคลน AI วิเคราะห์งานศิลปะที่สามารถระบุความสัมพันธ์ระหว่างสี (color harmony) ในภาพวาด และเครื่องมือที่มีอยู่ในปัจจุบันก็มีประสิทธิภาพไม่มากพอ | ||
- Criteria ในการจัดกลุ่มรูปแบบต่าง ๆ จำเป็นต้องมีการกำหนดขึ้นมาใหม่ตามพื้นฐานของทฤษฎีสีเพื่อเพิ่มความวัดผลได้ในเชิงปริมาณ จึงต้องมีการสร้างโปรแกรมแบบ rule-based ขึ้นมาก่อน เพื่อคัดแยกข้อมูลที่ถูกต้องที่สุดมาใช้เป็น training dataset ของโมเดลที่ทำ และสามารถวัดผลได้อย่างชัดเจนที่สุดโดยไม่มี bias ของมนุษย์เข้ามาเจือปน | ||
- Dataset ที่ใช้ มาจากฐานข้อมูลงานศิลปะจากศิลปินชั้นครูจากประเทศฝั่งตะวันตก | ||
- Preprocessing ด้วยการครอปรูปในการเทรนให้มีขนาดท่ากัน แต่ยังคงรายละเอียดให้ครบถ้วนที่สุดเพื่อไม่ให้ส่งผลต่อประสิทธิภาพของโมเดล และเพิ่มความหลากหลายของ training set ด้วยการ augmentation โดยเลือกวิธีไม่ให้กระทบกับคุณภาพของ training images ที่คัดกรองมาแล้วอีกเช่นกัน | ||
- Fine-Tune แบบสำเร็จรูปด้วยคำสั่ง learn.fine_tune | ||
- Evaluate โดยการเทียบกับผลลัพธ์ที่ได้จากโปรแกรมแบบ rule-based ที่ทำเอาไว้ก่อนหน้า และกับความสามารถของคนที่มีความรู้ด้านศิลปะที่ใช้แบบสอบถามในการประเมิน (ในส่วนนี้เนื่องจากยังอยู่ในระหว่างการพัฒนา คาดว่าจะได้ประสิทธิภาพไม่สูงไปกว่า rule-based model แต่จะสูงกว่าผลที่วัดจากการประเมินด้วยสายตาคน) | ||
- Suggestion หากพบช่องโหว่ในกฎที่ใช้ในการเทรน อาจต้องมีการปรับปรุงกฎให้เลียนแบบทฤษฎีได้อย่างใกล้เคียงมากขึ้น และโมเดลนี้ หากมีฐานข้อมูลจำนวนมากพอ อาจให้ผลลัพธ์ที่ถูกต้องได้ถึง 100% แต่โดยพื้นฐานแล้ว ศาสตร์เกี่ยวกับความสัมพันธ์ระหว่างสีเป็นสิ่งที่มีความคลุมเครืออยู่ในตัวของมันเอง เพราะฉะนั้นหากต้องการพัฒนาโมเดลต่อ อาจต้องมีการ discuss กับผู้ที่มีความเชี่ยวชาญเฉพาะด้านศิลปะ เพื่อหา criteria ฉบับปรับปรุงที่เหมาะแก่การนำไปใช้ที่สุด | ||
|
||
### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) | ||
|
||
> อยากมีความรู้เกี่ยวกับการสร้างปัญญาประดิษฐ์เพื่อที่จะทำประโยชน์ให้แก่สังคมที่ตัวเองอยู่ และนำไปใช้งานในสายอาชีพที่เกี่ยวข้องกับเทคโนโลยีและสาขาอื่น ๆ ที่สนใจในอนาคตค่ะ อยากได้สิ่งที่จำเป็นในการสร้างอนาคตที่เอื้อต่อการอยู่ร่วมกันของมนุษย์และปัญญาประดิษฐ์ในสายงานต่าง ๆ และในชีวิตประจำวัน โดยไม่ให้เกิดการเปลี่ยนแปลงขนาดใหญ่ในเวลาสั้น ๆ ซึ่งอาจส่งผลต่อชีวิตและความเป็นอยู่ของคนจำนวนมาก ซึ่งเป็นสิ่งที่สามารถพบเห็นได้ในทุกวันนี้ว่ามีคนจำนวนมากสูญเสียงานเนื่องจากการแทนที่ของ ai ในสายงานต่าง ๆ โดยที่มาของความตั้งใจนี้มาจากการที่ดิฉันได้มองเห็นทั้งข้อดีและข้อเสียของการนำ ai มาใช้งานในชีวิตประจำวัน จึงอยากหาวิธีที่จะสร้างรูปแบบของเทคโนโลยีนี้ที่จะทำให้เกิดประโยชน์ต่อสังคมมากที่สุด โดยลดข้อเสียลงให้เหลือน้อยที่สุด เพื่อสร้างสังคมที่ให้ความสำคัญกับคุณภาพชีวิตของมนุษย์และลดความยากลำบากในการทำงานต่าง ๆ เพื่อให้สามารถทำงานที่อยากทำได้โดยไม่เจอกับแรงกดดันหรือความแข่งขัน ด้วยเชื่อว่าสังคมที่จะอยู่รอดได้อย่างมีประสิทธิภาพสูงสุด ไม่ควรเป็นสังคมที่ถูกขับเคลื่อนด้วยความเครียดและความกระหายการมีชีวิตรอด เนื่องจากจะทำให้ผู้ที่อยู่ในสังคมนั้นไม่ต่างจากม้าที่ถูกล่อด้วยแกนข้าวโพดให้วิ่งไปข้างหน้า โดยไม่มีวันไปถึงความสุขและความพึงพอใจในชีวิตที่ต้องการ ซึ่งอาจเปรียบเทียบได้กับสังคมในปัจจุบัน และก้าวแรกที่สำคัญต่อเป้าหมายนี้มากที่สุดคือการหาความรู้และทักษะเกี่ยวกับการสร้างและนำระบบ ai ไปใช้งานค่ะ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
--- | ||
date: "31-7-24" | ||
title: "Aquarium Fish Species Classification - โมเดลระบุสปีชีส์สัตว์น้ำจากภาพ" | ||
builder: "ชลนา เครือวุฒิกุล(วาวา)" | ||
builder_info: "สาธิต มศว ประสานมิตร (ฝ่ายมัธยม) / กรุงเทพมหานคร" | ||
thumbnail: "/images/2024/10/01.jpg" | ||
links: | ||
github: "https://github.com/chonlanawawa/FishClassificationProject" | ||
facebook: "" | ||
blog: "https://medium.com/@chonlanawawa/aquarium-fish-species-classification-cd8fe60ab02a" | ||
--- | ||
|
||
![image](/images/2024/10/01.jpg) | ||
|
||
- ขั้นแรกคือ data เนื่องจากยังไม่มีคนทำ Dataset ของภาพสปีชีส์สัตว์น้ำ จึงทำการ scrape ด้วย library fastbook โดยอิงคลาสจาก List of Marine aquarium fish species (https://en.m.wikipedia.org/wiki/List_of_marine_aquarium_fish_species) ที่มีอยู่ 617 คลาส ได้มาทั้งหมด 74,040 รูป | ||
- หลังจากทำการ cleaning แล้ว ได้มีการทำการลบคลาส และการรวมคลาสใน genus เดียวกัน เนื่องจากปัญหาจำนวนภาพน้อย, ใน genus เดียวกันคล้ายกันจนแยกไม่ออก จึงเหลืออยู่ 549 คลาส 43,287 รูป และในแต่ละคลาสจำนวนรูปต่างกันมาก เลยมีการทำ oversampling ด้วย library imblearn | ||
- Train โมเดลมาเทียบทั้งหมด 4 โมเดล คือ MobileNet (ไม่ได้ finetune), MobileNet (finetune), ResNet50V2, DenseNet121 โดย MobileNet (finetune) ได้ผลลัพธ์บน test set ดีที่สุดที่ accuracy 83% | ||
- สร้าง baseline set เพื่อทำการเทียบ accuracy ของโมเดลกับ Google reverse image search โดยกำหนดไว้ว่าต้องพบชื่อสามัญ หรือชื่อวิทยาศาสตร์ของสัตว์น้ำในรูปนั้น ๆ ภายใน 3 ลิงก์แรก โดย Google reverse search สามารถหาชื่อสปีชีส์เจอที่อัตรา 76.6859% ส่วนโมเดลมี accuracy ที่ 82.51% ซึ่งถือว่าโมเดลของเราชนะในเรื่อง usage ไปค่ | ||
- ในส่วนของ Future plan คือจะทำให้เมื่อ predict สปีชีส์แล้ว จะแสดงข้อมูลของสปีชีส์นั้น ๆ แบบสรุปอ่านง่าย และพัฒนาต่อเป็นแอปพลิเคชัน | ||
|
||
|
||
### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) | ||
|
||
> คือหนูเป็นคนที่มีไอเดียโปรเจคโผล่ขึ้นมาบ่อยมาก แต่ไม่รู้จะเริ่มต้นทำจริงยังไง ไม่รู้ว่ามันเป็นไปได้มั้ย สเกลใหญ่เกินความสามารถหนูไปรึเปล่า หรือต้องเอาไอเดียนี้ไปต่อยังไงอยู่ตลอด ซึ่งอาจจะเพราะว่าความรู้หนูไม่ได้แน่นถึงขนาดขั้นทำโปรเจคด้วยตัวเองได้ แต่สุดท้ายคือต้องพับไอเดียลงไปตลอดเลยค่ะ หนูเลยคิดว่าถ้าหนูเอาไอเดียที่มีมาลงโครงการนี้ ไอเดียนั้น ๆ จะสำเร็จได้ ด้วยการที่โครงการนี้มี mentor คอยช่วยคอยไกด์ แนะนำวิธีทำทางไปต่อในโปรเจค หนูไม่น่าจะเคว้งจนโปรเจคล่มเหมือนตอนทำเองคนเดียวค่ะ แล้วหนูน่าจะได้ความรู้ในด้านการทำ ai เพิ่มขึ้น พื้นฐานแน่นขึ้นจากการเรียนระหว่างโครงการนี้ จนหนูสามารถเอาความรู้ตรงนี้ไปต่อยอด ไปประยุกต์ใช้ทำโปรเจคต่อ ๆ ไปได้ ทำให้น่าจะวนกลับไปต่อยอดไอเดียเก่า ๆ ที่เคยมีได้ด้วยค่ะ แล้วคือหนูอยากเข้าโครงการนี้มาตั้งแต่ปีที่แล้ว แต่ว่าตอนนั้นยังเขียนโปรแกรมไม่เก่งพอจะทำข้อสอบเข้า แต่ว่าตอนนี้หนูสามารถทำได้แล้ว หนูเลยอยากเข้าโครงการให้ติดในรอบนี้มาก ๆ ค่ะ | ||
|
Oops, something went wrong.