From f38249ba03ee382e88e95cb2f76bbd6886d06835 Mon Sep 17 00:00:00 2001 From: Pai Buabthong Date: Fri, 9 Aug 2024 00:50:32 +0700 Subject: [PATCH] add 2-14.md --- posts/2024/10-chonlana-kruawuthikun.md | 25 ++++++++++++++++++ posts/2024/11-tharadon-jitsue.md | 28 +++++++++++++++++++++ posts/2024/12-peemmaphat-sripongsai.md | 33 ++++++++++++++++++++++++ posts/2024/13-pawan-jakkaew.md | 24 ++++++++++++++++++ posts/2024/14-ratchakrit-mojomsin.md | 25 ++++++++++++++++++ posts/2024/2-ananya-kanaraksanti.md | 24 ++++++++++++++++++ posts/2024/3-nattavee-sunitsakul.md | 24 ++++++++++++++++++ posts/2024/4-sittipark-kaewka.md | 24 ++++++++++++++++++ posts/2024/5-nontapat-auetrongjit.md | 32 +++++++++++++++++++++++ posts/2024/6-thanaphum-saywongin.md | 35 ++++++++++++++++++++++++++ posts/2024/7-guntee-doungmanee.md | 29 +++++++++++++++++++++ posts/2024/8-nattapat-emseedaeng.md | 24 ++++++++++++++++++ posts/2024/9-benyapa-takhwankeaw.md | 24 ++++++++++++++++++ 13 files changed, 351 insertions(+) create mode 100644 posts/2024/10-chonlana-kruawuthikun.md create mode 100644 posts/2024/11-tharadon-jitsue.md create mode 100644 posts/2024/12-peemmaphat-sripongsai.md create mode 100644 posts/2024/13-pawan-jakkaew.md create mode 100644 posts/2024/14-ratchakrit-mojomsin.md create mode 100644 posts/2024/2-ananya-kanaraksanti.md create mode 100644 posts/2024/3-nattavee-sunitsakul.md create mode 100644 posts/2024/4-sittipark-kaewka.md create mode 100644 posts/2024/5-nontapat-auetrongjit.md create mode 100644 posts/2024/6-thanaphum-saywongin.md create mode 100644 posts/2024/7-guntee-doungmanee.md create mode 100644 posts/2024/8-nattapat-emseedaeng.md create mode 100644 posts/2024/9-benyapa-takhwankeaw.md diff --git a/posts/2024/10-chonlana-kruawuthikun.md b/posts/2024/10-chonlana-kruawuthikun.md new file mode 100644 index 0000000..5a72677 --- /dev/null +++ b/posts/2024/10-chonlana-kruawuthikun.md @@ -0,0 +1,25 @@ +--- +date: "31-7-24" +title: "Aquarium Fish Species Classification - โมเดลระบุสปีชีส์สัตว์น้ำจากภาพ" +builder: "ชลนา เครือวุฒิกุล(วาวา)" +builder_info: "สาธิต มศว ประสานมิตร (ฝ่ายมัธยม) / กรุงเทพมหานคร" +thumbnail: "/images/2024/10/01.png" +links: + github: "https://github.com/chonlanawawa/FishClassificationProject" + facebook: "" + blog: "https://medium.com/@chonlanawawa/aquarium-fish-species-classification-cd8fe60ab02a" +--- + +![image](/images/2024/10/01.png) + +- ขั้นแรกคือ 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 เพิ่มขึ้น พื้นฐานแน่นขึ้นจากการเรียนระหว่างโครงการนี้ จนหนูสามารถเอาความรู้ตรงนี้ไปต่อยอด ไปประยุกต์ใช้ทำโปรเจคต่อ ๆ ไปได้ ทำให้น่าจะวนกลับไปต่อยอดไอเดียเก่า ๆ ที่เคยมีได้ด้วยค่ะ แล้วคือหนูอยากเข้าโครงการนี้มาตั้งแต่ปีที่แล้ว แต่ว่าตอนนั้นยังเขียนโปรแกรมไม่เก่งพอจะทำข้อสอบเข้า แต่ว่าตอนนี้หนูสามารถทำได้แล้ว หนูเลยอยากเข้าโครงการให้ติดในรอบนี้มาก ๆ ค่ะ + \ No newline at end of file diff --git a/posts/2024/11-tharadon-jitsue.md b/posts/2024/11-tharadon-jitsue.md new file mode 100644 index 0000000..4ed7696 --- /dev/null +++ b/posts/2024/11-tharadon-jitsue.md @@ -0,0 +1,28 @@ +--- +date: "31-7-24" +title: "DrumScribe - แกะโน้ตกลองด้วย deep learning" +builder: "ธราดล จิตซื่อ(ธีร์)" +builder_info: "มหิดลวิทยานุสรณ์ / นครปฐม" +thumbnail: "/images/2024/11/01.png" +links: + github: "https://github.com/tjitsue/DrumScribe-Project" + facebook: "" + blog: "https://medium.com/@tjitsue/drumscribe-development-of-a-machine-learning-model-to-automatically-transcribe-drum-audio-f753be6fe2b6" +--- + +![image](/images/2024/11/01.png) + +- ใช้ Dataset จาก E-GMD โดยเลือก audio ที่มีการเล่นจังหวะ 8 beats เป็นหลัก ได้มาทั้งหมด 51 audios ความยาวรวมกันกว่า 2 ชั่วโมง +- ทำการ sliced ออกเป็นจังหวะ 8 beats เลือก data ที่มีเสียงที่สมบูรณ์ ไม่มีการเล่น 16 beats (เพราะจะทำให้มี 2 เสียงใน 1 audio) หลังจากนั้นทำการ label ว่า sliced audio นั้นมีการเล่นกลองชิ้นไหนบ้าง +- ใช้ librosa ในการแปลง audio เป็น mel spectrogram และแปลงด้วย Fast Fourier Transform (FFT) +- จะสร้างโมเดล 5 โมเดลสำหรับแต่ละชิ้นกลอง เพื่อทำนายว่า audio นั้นมีชิ้นกลองชิ้นนั้นหรือไม่ และนำผลลัพท์จากทั้ง 5 โมเดลมารวมกันเป็นโน้ตกลอง +- สำหรับ mel spectrogram ใช้โมเดล resnet50, mobilenet, และลองทำ custom cnn model สำหรับ FFT จะให้ข้อมูล tabular data จึงใช้โมเดล RandomForest และ XGBoost ผลคือ resnet50 และ mobilenet มีประสิทธิภาพสูงที่สุด +- นำโมเดลที่ผ่านการเทรนแล้วไปทดลองใช้แกะเพลงจริง และทำการเทียบ accuracy และ process time กับมนุษย์ +- ทำการ Post-Processing สำหรับชิ้น hihat เนื่องจากเป็นชิ้นกลองที่มักจะมีเสียงเบาและถูกกลบเวลาเล่นในเพลงจริง ทำให้ accuracy สูงมากขึ้น +- สิ่งที่จะนำไปพัฒนาต่อคือสอนให้โมเดลรู้จักกับจังหวะเงียบ และการแยกเสียงจริงกับเสียง echo + + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ตอนนี้ผมเรียนอยู่มหิดลวิทยานุสรณ์ ชั้น ม.5 ผมมีความฝันที่อยากจะไปเรียนต่อด้าน computer science ที่ nus สิงคโปร์ และอยากจบมาเป็น data scientist อยากทำ research ของตัวเองขึ้นมา ผมมีความสามารถด้านคณิตศาสตร์มาตั้งแต่เด็ก เมื่อขึ้นม.ต้นจึงได้ลองเรียน coding ด้วย python และพบว่าด้วยความรู้ด้าน math ที่สะสมมาทำให้ผมสามารถเรียนรู้ได้เร็ว เนื่องจากหัวใจหลัก ๆ ของ coding ก็อยู่ที่การคิด algorithm ตอนม.4 ได้เข้าร่วมค่าย data science ของ samsung และได้ลองทำ mini project ด้าน data analytics จึงค้นพบว่าการทำงานสายนี้เป็นสิ่งที่ผมชอบและสนุกกับมันจริง ๆ จากการเข้าค่ายนี้ทำให้ผมมีความเชี่ยวชาญในการใช้ python มากขึ้นในปัจจุบันนี้ผมอยากทำ project machine learning ผมได้ศึกษาความรู้ใน internet และลองทำตาม project end to end ใน youtube จึงพอมีพื้นฐานเกี่ยวกับการทำ ml ด้วยโมเดลต่าง ๆ แต่การเรียนใน youtube ก็เป็นแค่การใช้ data set ของคนอื่นแล้วก็ลองทำตามเฉย ๆผมเลยคิดว่าถ้าได้เริ่มทำ project ตั้งแต่ 0 เลย เริ่มตั้งแต่การคิดปัญหา การหาข้อมูล การ cleaning การทำ model จะทำให้ผมเรียนรู้อะไรหลาย ๆ อย่าง และภูมิใจกัน + \ No newline at end of file diff --git a/posts/2024/12-peemmaphat-sripongsai.md b/posts/2024/12-peemmaphat-sripongsai.md new file mode 100644 index 0000000..d830900 --- /dev/null +++ b/posts/2024/12-peemmaphat-sripongsai.md @@ -0,0 +1,33 @@ +--- +date: "31-7-24" +title: "PoseCrafts: สร้าง 2D Characters Animation Spritesheet ใน Openpose format จาก ข้อความ" +builder: "ภีมพัฒน์ ศรีผ่องใส(ภีม)" +builder_info: "หล่มสักวิทยาคม / เพชรบูรณ์" +thumbnail: "/images/2024/12/01.png" +links: + github: "https://github.com/SupeemAFK/PoseCrafts" + facebook: "" + blog: "https://medium.com/@Supeem/posecrafts-transforming-text-into-dynamic-2d-characters-with-openpose-594861900be6" +--- + +![image](/images/2024/12/01.png) + +- โมเดลสร้าง spritesheet ใน openpose format จากข้อความ สำหรับ generate 2d character animation ด้วย stable diffusion และ LoRA +- แรงบันดาลใจอยากจะสร้าง animation ให้กับตัวละคร 2D เพื่อให้ game developer ที่ไม่มี art skills สามารถสร้าง 2d character animation จากข้อความได้ +- dataset สร้างขึ้นเองจากการรวบรวมรูป spritesheet แล้วนำมา Pose Estimation + จัดท่าทางให้ถูกต้อง รวบรวมมาได้ทั้งหมด 400 samples +- ตั้ง data condition ขนาด canvas = 300 x 900 และ มีจำนวน frames = 5 เพื่อให้ง่ายต่อการทดลอง +- ทำการ fix bad data หากพบว่า data ที่เก็บมาไม่ตรงกับ condition ที่ตั้งไว้ +- preprocess โดยการ sort order ใหม่ด้วย nose keypoints และ remove z axis +- ใช้ sentence transformer all-MiniLM-L6-v2 สำหรับ text embedding และ การเข้าใจ context ของประโยค +- ทดลองกับ model หลายแบบเพื่อหา architecture ที่ perform ได้ดีที่สุดตั้งแต่ Neural network ธรรมดา, CNN, RNN, LSTM และ modify T5 Transformer +- ใช้ MAE เป็น metrics เทียบ keypoints ระหว่าง ground truth กับ predicted +- LSTM perform ได้ดีที่สุดบน test set ซึ่งเป็น unseen data โดยได้ค่า MAE เฉลี่ยที่ 20.756538 +- Baseline ให้ผู้คนทำ form โดยใช้ Likert Scale เทียบกันระหว่าง ground truth และ predicted และ เทียบ performances กับวิธีการสร้าง openpose spritesheet ในปัจจุบัน +- model สามารถ generate ท่าง่ายๆได้ แต่ยังไม่สามารถ generate ท่าที่มีความซับซ้อนได้ +- ต้องการ data ที่มากกว่านี้ รวมถึงจำนวน frames และ diversity ของท่าทางมากกว่านี้ +- อาจจะลองวิธีใหม่ๆ เช่น การแปลง keypoints ในแต่ละ frames เป็น discrete tokens ด้วย VQ-VAE และ ลอง model อื่นๆ อย่าง Seq2Seq model และ Autoregressive model + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ผมสนใจคอมพิวเตอร์มาตั้งแต่เด็กๆ และผมก็เขียนโปรแกรมตั้งแต่ ม.ต้น จนผมเรียนรู้ด้วยตัวเองและมีความรู้ความสามารถในด้านการพัฒนา fullstack app และ game dev เคยแข่งโครงงานระดับประเทศ ได้รับรางวัลแข่ง nsc และพัฒนา project มามากมาย ผมมีความฝันที่จะพัฒนาสังคมให้ดีขึ้นด้วยความสามารถด้านเทคโนโลยีของผม และ ช่วงนี้อยู่ในช่วงที่ผมพึ่งจบ ม.6 มาพอดี และกำลังจะขึ้นมหาวิทยาลัย ซึ่งกว่ามหาวิทยาลัยของผมจะเปิดก็เดือนสิงหาคม ผมจึงอยากที่จะใช้เวลาของผมในการเรียนรู้สิ่งใหม่ๆ นั้นก็คือสาย ai เพราะเป็นสายที่ผมรู้สึกว่าผมยังเชี่ยวชาญน้อยที่สุดหากเทียบกับ fullstack และ game dev ที่ผมค่อนข้างมั่นใจใน skill ของผม ผมเคยทำ project เกี่ยวกับ machine learning มาบ้าง เช่น image classification ด้วย convolution neural network แต่ก็รู้สึกว่ายังไม่ได้เข้าใจอย่าง"ถ่องแท้" ถ้าเทียบสองสายก่อนหน้านี้ที่ผมทำ ที่ผมทำอย่างมากก็สร้าง model neural network ด้วย tensorflow แต่ทำไม connected layer ถึงมีจำนวนเท่านี้ ทำไมต้องใช้ loss functionนี้ ทำไม activation function ต้องใช้อันนี้ และทำไม optimizer ต้องเป็น adam สิ่งเหล่านี้คือสิ่งที่ผมยังไม่เข้าใจ ผมจึงเลยอยากจะเข้าร่วมโครงการนี้เพื่อเรียนรู้ในสายของ data science และ + \ No newline at end of file diff --git a/posts/2024/13-pawan-jakkaew.md b/posts/2024/13-pawan-jakkaew.md new file mode 100644 index 0000000..117443d --- /dev/null +++ b/posts/2024/13-pawan-jakkaew.md @@ -0,0 +1,24 @@ +--- +date: "31-7-24" +title: "Ocular Disease Intelligent Recognition (ODIR)13" +builder: "ปวรรณ จักรแก้ว(แตงโม)" +builder_info: "สตรีวิทยา / กรุงเทพมหานคร" +thumbnail: "/images/2024/13/01.png" +links: + github: "https://github.com/ppawanktm/Ai-builder-2024" + facebook: "" + blog: "https://medium.com/@pawanjakkaew24/ocular-disease-intelligent-recognition-odir-f52837a54464" +--- + +![image](/images/2024/13/01.png) + +-เป็นการใช้ Machine Learning เพื่อสร้าง Ai ในการแยกความผิดปรกติของโรคทางสายตาจากภาพถ่ายจอประสาทตา หรือเรียกว่า Ocular Disease Intelligent Recognition (ODIR) +-โดย dataset ที่นำมาใช้ในครั้งนี้มาจาก kaggle โดยเป็นข้อมูลของโรงพยาบาลหลายๆแห่งในประเทศจีน โดยมีข้อมูลโดยรวมอยู่ประมาณ 6,000 ตัวอย่าง +-ในครั้งนี้ ได้เลือกใช้ model vit ในการนำมาเทรน ซึ่งผลลัพธ์โดยรวมคือสามารถแยกโรคต่างๆได้ตรง ซึ่งอยู่ที่ประมาณ 0.88 +-ในส่วนของการแยกทดสอบรูปภาพแต่ละคลาสนั้นโมเดลสามารถตรวจจับความแม่นยำได้ถึง 98% +-ในส่วนของความผิดพลาด ตัวโมเดลนี้อาจจะยังไม่สามารถแยกภาพถ่ายที่ถูกย้อมสีมาได้ หรือแยกได้ยาก ซึ่งน่าจะเป็นผลมาจาก ข้อมูลที่มีไม่มากพอและความชัดของข้อมูลร่วมด้วย + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ดิฉันคิดว่าโครงงานนี้จะช่วยพัฒนาทักษะต่างๆก็ดิฉันได้ดีมากยิ่งขึ้น อีกทั้งโครงงานนี้ยังเป็นโครงการที่มีเป้าหมายของโครงการตรงกับความสนใจของดิฉันอีกด้วย ดิฉันคิดว่าโครงงานนอกจากจะชวนพัฒนาตัวดิฉันเองแล้วนั้น โครงการนี้ก็เป็ฯโครงการที่ได้รับการยอมรับจากหลายๆมหาลัยอีกด้วย ดิฉันจึงมีความคิดที่จะทุ่มเทความสามารถ เพื่อที่จะทำทุกๆโครงงานที่เกิดขึ้นในโครงการนี้อย่างดีที่สุด + \ No newline at end of file diff --git a/posts/2024/14-ratchakrit-mojomsin.md b/posts/2024/14-ratchakrit-mojomsin.md new file mode 100644 index 0000000..459e2ac --- /dev/null +++ b/posts/2024/14-ratchakrit-mojomsin.md @@ -0,0 +1,25 @@ +--- +date: "31-7-24" +title: "CCTV Anomaly Detection" +builder: "รัชกฤช โมจมสิน(โอ๊ค)" +builder_info: "ยุพราชวิทยาลัย / เชียงใหม่" +thumbnail: "/images/2024/14/01.png" +links: + github: "https://github.com/ratchy-oak/CCTV_Anomaly_Detection" + facebook: "" + blog: "https://medium.com/@ratchy-oak/%EF%B8%8F-%EF%B8%8F-cctv-anomaly-detection-1545f7bbbe93" +--- + +![image](/images/2024/14/01.png) + +- ด้วยปัญหาความสะเพร่าในการตรวจจับสิ่งผิดปกติจากภาพกล้องวงจรปิดในปัจจุบัน การแก้ปัญหาด้วยการทำ Machine Learning model เพื่อให้การจำแนกเหตุการณ์ผิดปกติต่าง ๆ นั้นทำได้ง่ายและแม่นยำยิ่งขึ้น +- รวบรวมข้อมูลจากชุดข้อมูล “Real Time Anomaly Detection in CCTV Surveillance” บนเว็บไซต์ kaggle โดยจะคัดเลือกจากเหตุการณ์ที่พบเจอได้บ่อยครั้ง +- Clean Data ด้วยการสุ่มตัวอย่าง frame จากแต่ละช่วงของวิดีโอในจำนวนที่เท่ากันและนำมาประกอบกันหรือ Data Sampling เพื่อให้แต่ละไฟล์วิดีโอมีขนาดที่เท่ากัน แต่ยังคงสาระสำคัญที่เราต้องการไว้ +- เลือกใช้ Pre-trained model อย่าง ViViT มา fine-tune กับชุดข้อมูลที่เก็บรวบรวมมาโดยได้ผล Accuracy อยู่ที่ 95% และ F1 Score ประมาณ 0.94 +- ใช้ Streamlit ในการทำ Web application และ Deploy โมเดลที่สามารถ Classification วิดีโอจากกล้องวงจรปิดได้ +- จากแบบทดสอบการจำแนกเหตุการณ์จากภาพกล้องวงจรปิด เมื่อนำรูปภาพในแบบทดสอบให้ตัวโมเดล Machine Learning ที่มีความแม่นยำ 95% ทำนายผลแล้ว ปรากฎว่าตัวโมเดลนั้นทำนายเหตุการณ์ได้ถูกหมดในทุก ๆ ข้อ + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ผมเป็นนักเรียนโครงการห้องเรียน พสวท. (สู่ความเป็นเลิศ) ศูนย์โรงเรียนยุพราชวิทยาลัย จังหวัดเชียงใหม่ ผมมีความสนใจทำโครงงานที่มีการประยุกต์ใช้ความรู้ทางคณิตศาสตร์และความรู้ทางเทคโนโลยีในการแก้ปัญหาในชีวิตประจำวัน หรือปัญหาในชุมชน ที่สามารถนำไปใช้แก้ปัญหาได้จริง จากข่าวสารและการสำรวจพื้นที่จริง
จากเหตุผลดังกล่าวทำให้ผมมีความสนใจในการเข้าร่วมโครงการ ai builders เพื่อสร้างผลงานโดยใช้เทคนิคทางด้านวิทยาศาสตร์ข้อมูล (data science) และปัญญาประดิษฐ์ (artificial intelligence) + \ No newline at end of file diff --git a/posts/2024/2-ananya-kanaraksanti.md b/posts/2024/2-ananya-kanaraksanti.md new file mode 100644 index 0000000..2dc4b09 --- /dev/null +++ b/posts/2024/2-ananya-kanaraksanti.md @@ -0,0 +1,24 @@ +--- +date: "31-7-24" +title: "Wound classification model" +builder: "อนัญญา คณารักษ์สันติ(ไจไหม)" +builder_info: "ดรุณสิกขาลัย (โครงการวมว.) / กรุงเทพมหานคร" +thumbnail: "/images/2024/2/01.png" +links: + github: "https://github.com/ananyaknr/wound-classification" + facebook: "" + blog: "https://medium.com/@jaimai2006/wound-classification-3d89dee6d402" +--- + +![image](/images/2024/2/01.png) + +- จำแนกประเภทแผลที่พบได้ในการใช้ความรุนแรงในครอบครัวตามประภทอาวุธที่ใช้และลักษณะการเกิดแผลเพื่อการคัดกรองเหยื่อที่เร็วและแม่นยำมากขึ้นแม้จะไม่ได้เป็นผู้เชี่ยวชาญ +- เก็บชุดข้อมูลจาก Kaggle และ DuckDuckGo Image Search API ซึ่งภาพมี noise เยอะและคุณภาพไม่ดี หลังจากทำความสะอาดทำให้ได้ imbalanced dataset แบ่ง Training-validation-test split ที่ 80:10:10 และใช้ baseline model จากโมเดลบน kaggle +- upsampling ข้อมูลก่อนนำเข้า augmentation เทรนด้วยสถาปัตยกรรม Resnet34 และใช้ weighted cross entropy loss ด้วย effective number of samples (ENS) มี accuracy อยู่ที่ 86% และ F1-score ที่ 83% +- โมเดลค่อนข้าง sensitive กับการ crop และสัดส่วนของภาพ จึงเพิ่มการ crop ในขั้นตอน upsampling และ augmentation เทรนด้วยสถาปัตยกรรม Resnet50 ซึ่งสามารถ sensitivityจากการ crop ในบางภาพได้แต่การ crop ก็ยังคงส่งผลต่อการทำนายของโมเดลในบางภาพ +- เมื่อทดสอบโมเดลบน testing set มี accuracy อยู่ที่ 82% และ F1-score ที่ 79% ซึ่งสูงกว่า baseline model แต่ยังคงต้องการ dataset ที่ใหญ่ขึ้นในการพัฒนาโมเดลและในอนาคตต้องการพัฒนาโมเดลให้สามารถระบุอาวุธที่ใช้จากภาพได้ + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ตอนแรกได้รู้จัก ai builders ในปี 2022 เด็กคนนั้นที่เขียน python ได้บ้าง เข้ามาด้วยเหตุผลคล้าย ๆ กับคนอื่น ทั้งอยากจะเขียนโปรแกรมให้เก่งขึ้น อยากลองทำai เลยลองสมัครดู แต่ก็ติดอยู่คำถามที่ว่า “โครงงานที่อยากทำคืออะไร” ที่หาคำตอบไม่ได้ คำถามนี้ทำให้เรากลับมาคิดว่าเราจะเอาความสามารถที่เรามีไป ‘สร้าง’ อะไรกันแน่การไม่ผ่านการคัดเลือกในครั้งนั้นทำให้เรามองโลกต่างจากเดิม เห็นpain pointหลาย ๆ จุดที่เราไม่คิดว่ามันจะเป็นปัญหา ทำให้เราอยากเอาตัวเองเข้าไปแก้ปัญหาจุดนั้นจุดนี้ อยากจะเอาskillที่มีไปใส่ในแต่ละงานแน่นอนว่าการเก็บเกี่ยวและพัฒนาskillด้านaiของตัวเองเป็นเป้าหมายหนึ่งในการเข้าร่วมโครงการในปีนี้ การรับผิดชอบโปรเจกนึง การเรียนรู้ด้วยตัวเอง การเรียนรู้จากคนรอบข้าง ทั้งหมดเป็นเรื่องที่challengeสำหรับเรามาก ๆ และเราเชื่อว่ามันจะเป็นskillพื้นฐานที่ดีก่อนจะเข้าเป็นนักศึกษาวิศวกรรมศาสตร์คอมพิวเตอร์เต็มตัวในอีกไม่กี่เดือนข้างหน้าอีกความคาดหวังที่เชื่อว่าโครงการนี้จะตอบโจทย์เราได้ไม่แพ้กันและตัวเราเองก็ตอบโจทย์คืออยากเป็นอีกหนึ่งมุมมองที่จะหยิบยกหลาย ๆ ปัญหาที่ไม่ได้ถูกnoticeเท่าที่ควร แลกเปลี่ยนความเห็นกับทั้งเพื่อนค่ายและเมนเทอร์ เกิดเป็นshowcaseใหม่ ๆ ที่หลากหลายมากขึ้นและได้เป็นส่วนหนึ่งของ communityไม่ช้าก็เร็วเราเชื่อว่าตรงนี้จะเป็นจุดเริ่มต้นเล็ก ๆ + \ No newline at end of file diff --git a/posts/2024/3-nattavee-sunitsakul.md b/posts/2024/3-nattavee-sunitsakul.md new file mode 100644 index 0000000..73d95c0 --- /dev/null +++ b/posts/2024/3-nattavee-sunitsakul.md @@ -0,0 +1,24 @@ +--- +date: "31-7-24" +title: "Crop Recommendation System for Thai Economic Plants" +builder: "ณัฐวีณ์ สุนิตย์สกุล( ตัง)" +builder_info: "ดรุณสิกขาลัย (โครงการ kosen kmutt) / กรุงเทพมหานคร" +thumbnail: "/images/2024/3/01.png" +links: + github: "https://medium.com/@tangnatta/%E0%B9%80%E0%B8%A3%E0%B8%B2%E0%B8%84%E0%B8%A7%E0%B8%A3%E0%B8%9B%E0%B8%A5%E0%B8%B9%E0%B8%81%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3%E0%B8%94%E0%B8%B5-w-summary-fa9d7661e138" + facebook: "" + blog: "https://medium.com/@tangnatta/%E0%B9%80%E0%B8%A3%E0%B8%B2%E0%B8%84%E0%B8%A7%E0%B8%A3%E0%B8%9B%E0%B8%A5%E0%B8%B9%E0%B8%81%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3%E0%B8%94%E0%B8%B5-w-summary-fa9d7661e138" +--- + +![image](/images/2024/3/01.png) + +- โมเดลแนะนำว่าควรปลูกพืชอะไร โดยเน้นพืชเศรษฐกิจของไทย +- สร้าง dataset จาก public data ของได้ ได้แก่ ข้อมูล soil series data จาก กรมพัฒนาที่ดิน ข้อมูลรายละเอียดของดิน จาก สำนักสำรวจดินและวิจัยทรัพยากรดิน และข้อมูลจากระบบการติดตามสถานการณ์เพาะปลูกพืชเศรษฐกิจในประเทศไทยจากข้อมูลดาวเทียม จาก GISTDA และนำมาสร้าง tabular data ด้วยการทำ grid และแบ่ง train valid test โดยใช้ spatial train valid test split +- วัดผลโดยใช้ top-k accuracy matric +- XGBoost, Catboost, และ KNN ทำออกมาได้ดีพอ ๆ กัน โดยได้ top-k accuracy score (k=1) อยู่ที่ 80.6%, 83.2%, และ 89.4% +- เมื่อเทียบกับ Most Frequent Classตามผลเฉลยที่เป็นไปได้มากที่สุด top-k accuracy score (k=1) อยู่ที่ 58.7% + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ผมเห็นเพื่อนปีที่แล้วได้เข้าโครงการ ai builder แล้วบอกต่อมาว่าโครงการนี้ดีมาก ๆ สำหรับมาฝึกทำ ai ได้ทำ project ai จริง ๆ แล้วมีอาจารย์ที่ปรึกษาตัวตึงอีกหลาย ๆ ท่านค่อยให้คำปรึกษา ประกอบกับผมเองสนใจและอยากเรียนรู้เกี่ยวกับ ai มากยิ่งขึ้น ซึ่งผมคิดว่าค่าย ai builder จะช่วยสานฝันให้โปรเจค ai ที่ผมอยากทำทำได้จริง ๆ ครับ อีกทั้งช่วงที่ทางโครงการจัดยังเป็นช่วงปิดเทอมซึ่งเป็นช่วงเวลาที่ว่าง และอยากลงทุนกับการศึกษาเกี่ยวกับ ai เพิ่มเติมครับ + \ No newline at end of file diff --git a/posts/2024/4-sittipark-kaewka.md b/posts/2024/4-sittipark-kaewka.md new file mode 100644 index 0000000..61988a5 --- /dev/null +++ b/posts/2024/4-sittipark-kaewka.md @@ -0,0 +1,24 @@ +--- +date: "31-7-24" +title: "Spider Classification" +builder: "สิทธิภาคย์ แก้วกา(ไออุ่น)" +builder_info: "ราชวินิตบางแก้ว / สมุทรปราการ" +thumbnail: "/images/2024/4/01.png" +links: + github: "https://github.com/Sittipark/Spider_Classification_AIB" + facebook: "" + blog: "https://medium.com/@kaewka1971/spider-classification-%E0%B9%81%E0%B8%A1%E0%B8%87%E0%B8%A1%E0%B8%B8%E0%B8%A1-15-%E0%B8%AA%E0%B8%B2%E0%B8%A2%E0%B8%9E%E0%B8%B1%E0%B8%99%E0%B8%98%E0%B8%B8%E0%B9%8C-%EF%B8%8F-2f67dc5c0b7b" +--- + +![image](/images/2024/4/01.png) + +- โมเดลจำแนกรูปภาพแมงมุม 15 สายพันธุ์ที่พบเจอได้ในหลาย ๆ พื้นที่ทั้งในประเทศไทยและต่างประเทศ +- วัดผลเทียบกับบุคคลทั่วไป รวมถึงผู้ที่พอมีความรู้ด้านแมงมุมจำนวน 20 คน ด้วย mini-validation set 15 รูป มีค่าเฉลี่ยที่ 46.33% และทำได้ดีที่สุด 73.33% +- รวมรวมชุดข้อมูลจาก Kaggle รวมถึงหารูปภาพเองเพิ่มเติมจากแหล่งต่าง ๆ เช่น Facebook, YouTube แล้วมาคัดเลือกรูปภาพด้วยตนเอง โดยแบ่งออกเป็น train 85% และ test 15% +- ทดสอบกับสถาปัตยกรรม GoogLeNet, ResNet34 และ VGG-19 พบว่า VGG-19 ได้ผลดีที่สุดที่ accuracy 91% บน test set +- เทียบกับมนุษย์บน mini-validation set โมเดลทำได้ 92% เทียบกับมนุษย์ที่เก่งที่สุดที่ 73.33% + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ที่ผมอยากเข้าโครงการ al builders เพราะว่าผมอยากพัฒนาศักยภาพของตัวเองด้าน ai ครับ เผื่อมีบางเนื้อหาที่ผมยังไม่เข้าใจหรือบางส่วนที่ผมขาดตกบกพร่องไป ผมจะได้ใช้โอกาสที่ได้เข้าไปในโครงการ ai builders และตั้งใจเรียนรู้กับมัน นอกจากนี้ผมก็อยากฝึกทักษะการแก้ปัญหาด้วยครับ ผมรู้สึกว่ามันเป็นทักษะที่สำคัญในโลกยุคปัจจุบันมาก ๆ โดยผมรู้สึกสนใจในศาสตร์ด้านนี้มาตั้งแต่ช่วง ม.4 ครับ ผมเลยอยากเข้าโครงการนี้มาก ๆ ครับ ผมอยากจะพิสูจน์ตัวเองว่าผมก็สามารถพัฒนาตนเองให้เก่งขึ้นในด้าน ai ได้เหมือนกันคร้บ + \ No newline at end of file diff --git a/posts/2024/5-nontapat-auetrongjit.md b/posts/2024/5-nontapat-auetrongjit.md new file mode 100644 index 0000000..e7d71eb --- /dev/null +++ b/posts/2024/5-nontapat-auetrongjit.md @@ -0,0 +1,32 @@ +--- +date: "31-7-24" +title: "Student Behavior Detector in Classroom" +builder: "นนทพัทธ์ เอื้อตรงจิตต์(เฟิร์ม)" +builder_info: "สาธิตแห่งมหาวิทยาลัยเกษตรศาสตร์ ศูนย์วิจัยและพัฒนาการศึกษา / กรุงเทพมหานคร" +thumbnail: "/images/2024/5/01.png" +links: + github: "https://github.com/nontaphatfirm/Classroom-Behavior-Detector" + facebook: "" + blog: "https://medium.com/@nontaphatfirm/student-behavior-detector-in-classroom-20f2fe5cc8a3" +--- + +![image](/images/2024/5/01.png) + +- สร้างโมเดล Student Behavior Detector ช่วยแก้ปัญหาและเพิ่มประสิทธิภาพการเรียนรู้ของนักเรียน +- การสร้าง Student Behavior Detector เป็นการใช้สถาปัตยกรรม YOLO หลักการคือ มันจะพยายาม rectangle object เหล่านั้นไว้ (โดยหาจุดกึ่งกลางของแต่ละ object แล้วค่อยครอบ box เอาไว้) และบอกออกมาว่าสิ่งนั้นคืออะไร โดยมี model พื้นฐานอยู่แล้วประมาณ 80 classes ที่ถูกเทรนเอาไว้ และสามารถบอกได้ด้วยว่าความน่าจะเป็นมีเท่าไหร่ จาก model ที่มี +- ใช้ Dataset จาก SCB-dataset3-S แล้วนำมา split data อีกทีด้วยวิธี K-Fold Cross-Validation ได้ 5 Dataset ที่แตกต่างกัน +- ในส่วนของการเทรนได้ทดลองใช้สถาปัตยกรรม YOLOv8x , YOLOv9e และ YOLOv10x +-วัดผลโดยการประเมิน Precision ,Recall ,mAP50 ,mAP50-95 +โดยได้ผลออกมาคือ YOLOv9e ทำ performance ออกได้ดีที่สุดบน Test set คือ +(fold0) Precision : 70.1 % ,Recall : 74.6% , mAP50 : 77.6 % , mAP50-95 : 60.5 % +(fold2) Precision : 75.2% ,Recall : 70.5% , mAP50 : 77.4 % , mAP50-95 : 61.1 % +(fold3) Precision : 72.2 % ,Recall : 73% , mAP50 : 77.8 % , mAP50-95 : 61.1 % + ซึ่ง fold0 จะมีค่า Recall สูงสุด และ fold2 จะมีค่า Precision สูงสุด และ fold3 จะสมดุลระหว่าง Precision กับ Recall +-เทียบกับ SCB-dataset3 ที่ train YOLOv7x ไว้ ค่า Precision Recall mAP50 และ mAP50-95 ของเราจะต่ำกว่าเล็กน้อยเนื่องจากเรา split data ทำให้จำนวน train data น้อยลง แต่จะทำให้สามารถมั่นใจได้ว่า โมเดลของเราจะทำงานมีประสิทธิภาพประมาณนี้กับข้อมูลที่ไม่เคยเห็นมาก่อน +-จาการวิเคราะห์ข้อผิดพลาดของตัว Student Behavior Detector พบว่าโมเดลมักทำนายไม่แม่นย่ำเมื่อเจอ class writting ซึ่งคาดว่าน่าจะมาจากจำนวน data class writting นั้นมีน้อยกว่า class อื่นๆ และพบว่า model ชอบทายวงที่ background อยู่ คาดว่าจำนวน data นั้นน้อยเกินไป + + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ผมสนใจค่ายนี้เป็นอย่างมากครับ เมื่อปีที่แล้วผมก็สมัครเข้าโครงการแต่ไม่ได้รับคัดเลือกเข้าโครงการ เนื่องจากมีเวลาเตรียมตัวน้อยติดช่วงสอบปลายภาคยังบริหารเวลาได้ไม่ดี แต่ครั้งนี้ผมตั้งใจเต็มที่ที่จะมาเข้าค่ายให้ได้ เนื่องจากผมอยากมีความรู้เพิ่มเติมในการทำ senior project ก่อนจบมัธยมศึกษาตอนปลาย ผมอยากได้ทั้งความรู้ คำแนะนำและอาจารย์ที่ปรึกษามาช่วยแนะนำโครงการที่เกี่ยวกับ ai facial recognition ไม่เพียงแต่สร้างโปรแกรมได้ แต่ต้องการต่อยอดไปเป็นระบบการเช็คชื่อเข้าเรียนในโรงเรียนของผมด้วยครับ ซึ่งที่ รร. ของผมยังไม่มีผู้เชี่ยวชาญที่จะให้คำแนะนำในเรื่องนี้และช่วงปิดเทอมนี้ผมต้องทำ senior project เกี่ยวกับ ai ที่ผมสนใจให้สำเร็จภายในเดือน ส.ค นี้ ผมหวังเป็นอย่างยิ่งว่าทางสถาบันฯจะให้โอกาสผมได้เข้าไปเรียนรู้กับอาจารย์ผู้ทรงคุณวุฒิ และได้รับคำปรึกษาจากการเข้าค่ายครั้งนี้ครับ และผมสัญญาว่าจะเอาความรู้ความสามารถไปแบ่งปันประสบการณ์ให้กับเพื่อนๆ น้องๆ ที่ รร. เพื่อต่อยอดในการประดิษฐ์ ai ใหม่ๆ ในอนาคตครับ นอกจากนี้ผมเองก็สนใจด้าน ai เป็นอย่างมาก และตั้งเป้าหมายที่จะเรียนและทำงานด้านนี้ เพื่อทำให้คนไทยได้มีโอกาสพัฒนา นวัตกรรมใหม่ๆให้กับคนไทย ผมภูมิใจที่ได้ทราบว่าประเทศไทยมี thailand digital valley ซึ่งจะเป็นแหล่งรวมของคน it และ start up รุ่นใหม่ ทั้งในประเทศและต่างประเทศ อยู่ที่นี่และ + \ No newline at end of file diff --git a/posts/2024/6-thanaphum-saywongin.md b/posts/2024/6-thanaphum-saywongin.md new file mode 100644 index 0000000..cf3eaf0 --- /dev/null +++ b/posts/2024/6-thanaphum-saywongin.md @@ -0,0 +1,35 @@ +--- +date: "31-7-24" +title: "AniRec" +builder: "ธนภูมิ สายวงศ์อินทร์(อิคคิว)" +builder_info: "วิทยาศาสตร์จุฬาภรณราชวิทยาลัย เชียงราย / เชียงราย" +thumbnail: "/images/2024/6/01.png" +links: + github: "https://github.com/qrcodeTH/Anime-Recognition-System-from-Scene-Images/tree/main" + facebook: "" + blog: "https://medium.com/@thanaphum04571/anime-recognition-system-from-scene-images-anirec-%E0%B8%A3%E0%B8%B0%E0%B8%9A%E0%B8%B8%E0%B8%8A%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B9%80%E0%B8%A3%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B8%87%E0%B8%88%E0%B8%B2%E0%B8%81%E0%B8%A0%E0%B8%B2%E0%B8%9E%E0%B8%8B%E0%B8%B5%E0%B8%99%E0%B8%AD%E0%B8%99%E0%B8%B4%E0%B9%80%E0%B8%A1%E0%B8%B0-c0133dbbfaa9" +--- + +![image](/images/2024/6/01.png) + +- สร้างโมเดล AniRec มาเพื่อแก้ปัญหาการตามหาชื่อเรื่องอนิเมะโดยใช้ภาพจากซีนในอนิเมะ +- การสร้าง AniRec นั้นจะแบ่งเป็นส่วนของการเทรน classification model และนำไปทำ feature extraction โดย match retrieved image กับ label และนำทั้ง classification และ retrieval มาเปรียบเทียบกัน +- ใช้ Dataset เป็น Top 100 Popularity Anime จาก Anilist โดยเลือกเฉพาะรูปที่เป็นซีนใน episode ต่าง ๆ +- นำข้อมูลทั้งหมดมาเข้ากระบวนการ Preprocessing ด้วยการทำ Data Tranformation ทั้งการ Resize, ToTensor, Normalize และ Data Augmentation รูปแบบต่าง ๆ +- ในส่วนของการเทรนได้ทดลองใช้สถาปัตยกรรม MobileNetV2 , Efficientnet-B0 , EFficientnet-B7 , ResNeXt101 และ SEResNeXt101 +- วัดผลโดยการประเมิน Accuracy, Top-5 Accuracy , LRAP และ MRR +- โดยได้ผลออกมาคือ ResNeXt101 ทำ performance ออกได้ดีที่สุดบน Test set คือ Accuracy 81.18% Top-5 Accuracy 92.48% LRAP 86.24% และ MRR 85.75% +- จากนั้นจึงนำ ResNeXt101 มาทำ feature extraction โดยได้ match retrieved image กับ label ไว้ก่อนเพื่อนำมาใช้ในทำนาย label +- นำมา retrieve โดยใช้ similarity measurement เป็น Euclidean distance +- ทำการทดสอบการทำนายของ retrieval โดยได้ผลลัพธ์ดังนี้ +- Accuracy 81.18% Top-5 Accuracy 91.84% LRAP 81.24% และ MRR 82.35% +- AniRec จึงเลือกใช้ Classification ResNeXt101 ซึ่งมี performance ที่ดีที่สุด +- โดยเมื่อนำไปเทียบกับ trace.moe ซึ่งเป็น Anime reverse search ที่มีชื่อเสียง โดยได้ทดสอบบน Test set เดียวกันได้ผลลัพธ์ดังนี้ Accuracy 67.40% และ Top-5 Accuracy 70.13% +- ซึ่งตัว AniRec ทำ Accuracy ได้ดีกว่า trace.moe ถึง 13.78% และ Top-5 Accuracy ดีกว่าถึง 22.35% แตว่าก็ยังแพ้ในจำนวนเรื่องของอนิเมะที่ค้นหาได้ +- จาการวิเคราะห์ข้อผิดพลาดของตัว AniRec พบว่าโมเดลมักทำนายผิดพลาดเมื่อเจอซีนที่มีความคล้ายกัน ทั้งจากตัวประกอบที่อาจไม่มีข้อมูลใน Training Data และ องค์ประกอบของซีนที่บังเอิญคล้ายกันในอนิเมะหลาย ๆ เรื่อง + + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> เพราะว่าตัวผมอยากที่จะพัฒนาความรู้ทางด้าน ai ให้มากขึ้น แม้ว่าในตอนนี้เองก็กำลังศึกษาด้วยตัวเองอยู่ แต่การได้เข้าร่วมโครงการ ai builder ซึ่งเต็มไปด้วยวิทยากรที่มีความสามารถ อีกทั้งยังทำให้ตัวผมได้มีโอกาสได้พบเจอเพื่อนๆที่สนใจในด้านเดียวกัน ดังนั้นผมจึงเชื่อว่าการเข้าร่วมโครงการนี้นั้นจะทำให้ผมสามารถพัฒนาความรู้ด้าน ai และ ทักษะด้านการทำงานต่างๆ ได้เป็นอย่างดีครับ + \ No newline at end of file diff --git a/posts/2024/7-guntee-doungmanee.md b/posts/2024/7-guntee-doungmanee.md new file mode 100644 index 0000000..642c9e2 --- /dev/null +++ b/posts/2024/7-guntee-doungmanee.md @@ -0,0 +1,29 @@ +--- +date: "31-7-24" +title: "Synthesize High-Quality Thai Vector Fonts" +builder: "กันต์ธีร์ ดวงมณี(พอเพียง)" +builder_info: "ยุพราชวิทยาลัย / เชียงใหม่" +thumbnail: "/images/2024/7/01.png" +links: + github: "https://github.com/microhum/ThaiVecFont" + facebook: "" + blog: "https://medium.com/@guntee12123/synthesize-high-quality-thai-vector-fonts-with-deepvecfont-v2-a123317e1910" +--- + +![image](/images/2024/7/01.png) + +- สร้างโมเดล ThaiVecFont สำหรับการสร้างฟอนต์เพื่อลดปัญหาการทำงานซ้ำๆ ของนักออกแบบฟอนต์ไทย และเป็นโมเดลสำหรับสร้างฟอนต์ SVG ที่สามารถนำไปใช้งานได้จริงได้ +- เป็นการใช้สถาปัตยกรรม DeepVecFont-V2 ที่มีพื้นฐานเป็น Transformers Autoencoder โดยมี Encoder และ Decoder อย่างละ 2 ตัว +- ใช้ Dataset ที่ scrape จาก thaifaces.com เว็บคุณภาพที่รวบรวมฟอนต์ไทยจากทุกทิศทางเอาไว้ +ทำ Data Cleaning ฟอนต์ที่ขนาดใหญ่และเล็กเกินไปออก +- Preprocessing ด้วยการแปลงไฟล์ฟอนต์ให้เป็นรูปภาพและ vector sequence ทำการคัดฟอนต์ที่มีจำนวน sequence มากเกินไปออก ทำ Data Augmentation และใช้เทคนิค relaxation representation เพื่อเพิ่มจำนวนจุดให้กับ sequence ทำให้ตอนเทรนได้ผลดีขึ้น +- ใช้เทคนิค Modality Fusion รวม feature ระหว่าง Encoder 2 ตัวเข้าด้วยกัน เพื่อให้โมเดลสามารถเข้าใจรูปร่างและโครงสร้างของฟอนต์ไปพร้อมกันได้ +- ปรับค่า weight โดยใช้ Loss คำนวนจาก L1 Loss จากการสร้างรูปภาพและ Cross Entropy Loss จากการสร้าง vector sequence +- เมื่อเปรียบเทียบกับโมเดล DeepVecFont เวอร์ชั่นแรกที่ใช้ CNN เป็น Encoder ผลที่เกิดขึ้นคือเวอร์ชั่นแรกไม่สามารถจับลักษณะของฟอนต์ภาษาไทยได้ แต่ DeepVecFont-V2 สามารถทำได้ +- วัดผลโดยการประเมิน L1 Error ของรูปภาพ พบว่าโมเดล DeepVecFont-V2 ที่เทรนด้วยชุดข้อมูลที่มีการทำ Augmentation ให้ผลที่ดีกว่าแบบที่เทรนด้วยชุดข้อมูลปกติ +- ข้อเสนอแนะ (เพิ่มเติม) ประสิทธิภาพโมเดลที่ได้ยังไม่ดีเท่าโมเดล DeepVecFont-V2 ที่เทรนด้วยชุดข้อมูลภาษาอังกฤษที่มีขนาดใหญ่ คาดว่าเนื่องจากจำนวนชุดข้อมูลฟอนต์ภาษาไทยที่ไม่เพียงพอ จึงคิดหาวิธีแก้โดยอาจมีการทดลอง fine-tuning โมเดล pretrained ภาษาอังกฤษด้วยชุดข้อมูลภาษาไทยในอนาคต รวมถึงหาวิธีใหม่ ๆ ในการเพิ่มชุดข้อมูล + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ปีที่แล้วผมไม่ติดโครงการนี้ ปีนี้เลยอยากจะแก้มือใหม่ ผมเชื่อในการเรียนรู้แบบ based on project ว่ามันจะช่วยพัฒนาสกิลเราขึ้นได้อย่างก้าวกระโดด หากยิ่งมีคนที่คอย support เรามากผลที่ได้มันยิ่งมหาศาลมากขึ้นไปอีกมาก การเข้าโครงการนี้จะเปิดโอกาสให้ผมสามารถทำสิ่งที่ผมชอบได้ หลายๆ อย่างที่เป็นไปไม่ได้ ผมเชื่อว่า มันสามารถที่จะเป็นไปได้ ถ้าเราทุ่มเทให้สุดแรงลงไป รวมถึงมีคน support ที่ดี โครงการนี้จะทำให้ผมได้ connection กับเพื่อน ๆ พี่ ๆ นักวิจัยนักพัฒนา ai แนวหน้าของประเทศและจะได้ต่อยอดไปในการทำงานในอนาคตได้ ที่สำคัญ ผมจะได้เจอคนทำ wangchanberta ตัวเป็นๆ ยังไม่พอ สามารถปรึกษาได้ด้วยอีก !! + \ No newline at end of file diff --git a/posts/2024/8-nattapat-emseedaeng.md b/posts/2024/8-nattapat-emseedaeng.md new file mode 100644 index 0000000..9e2146b --- /dev/null +++ b/posts/2024/8-nattapat-emseedaeng.md @@ -0,0 +1,24 @@ +--- +date: "31-7-24" +title: "Fake Review Classifier" +builder: "ณัฐพัชน์ เอมสีเเดง(เยียร์)" +builder_info: "สาธิต มศว ประสานมิตร (ฝ่ายมัธยม) / กรุงเทพมหานคร" +thumbnail: "/images/2024/8/01.png" +links: + github: "https://github.com/Yartyjung/AI-Builders-2024" + facebook: "" + blog: "https://medium.com/@yartyjung/real-or-fake-f223bc3e74f7" +--- + +![image](/images/2024/8/01.png) + +- ในปัจจุบัน ธุรกิจ E-commerce ได้เติบโตขึ้นเป็นอย่างมาก เเพลตฟอร์มซื้อขายของออนไลน์ต่างๆก็เช่นกัน จึงหลีกเลี่ยงไม่ได้กับการที่มี ร้านค้าหัวหมอที่นำบอท มาเขียนรีวิวปลอมเพื่อเพิ่มยอดขายของสินค้า +- model เป็นการ finetune จาก Wangchan-berta-spm-att-uncase จึงชำนาญในภาษาไทยเป็นพิเศษ +- data เป็นการ scraping จาก Lazada ทั้งหมด model เลยค่อยข้างจะชำนาณในการทำนายรีวิวจาก Lazada +- วัดผลโดนการประเมินโดยใช้ accuracy,f1 score กับ test set หลังเทรน model เสร็จ +- ข้อเสนอเเนะ เนื่องจาก model ได้ข้อมูลมาจาก Lazada ที่เดียวจึงยังไม่สามารถทำนายรีวิวจากเเอฟ เเละ ยังไม่สามารถทำนายตัวรีวิวที่เป็นภาษาอังกฤษได้ เนื่องจาก data ที่ใช่ trainเป็นภาษาไทยทั้งหมด + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> เหตุผลที่ผมอยากเข้าโครงการคือ ผมเริ่มเรียนเขียนโค้ดมาได้สักพักใหญ่ในตอนเเรกผมคิดเเค่ต้องการหาอะไรใหม่ๆ เรียน พอผมเริ่มศึกษาได้ระยะเวลาหนึ่ง ผมเริ่มสนุกกับมัน ผมก็เลยหาคอร์สสอน python ลงเรียน ผมก็เรียนบ้างไม่เรียนบ้างสักพักใหญ่จนเลิกเรียนไป พอมาถึงช่วงใกล้จบ ม.2 เป็นช่วงที่โควิดระบาด กับ ตัวผมเริ่งคล่องในภาษาอังกฤษ พอที่จะอ่านได้อย่างคล่องเเคล่ว ผมก็เริ่มกลับมาศึกษาโค้ดใหม่ หลังจากนั้นกระเเสการใช้ ai ทำนู่นทำนี่ก็เเพร่กระจายไปทั่วโลก เเละสังคมไทยอย่างเเพร่หลาย พอปลายปี 2023 ก็เป็นช่วงเวลาที่ผมต้องเลือกสายเรียนต่อ ม.4 ผมเลยเลือกสายวิศวะปัญญาประดิษฐ์ที่โรงเรียนผมมีสอน เเละพอได้เข้าไปศึกษาก็ได้รู้ว่า จริงๆ เเล้ว ai เป็นอะไรที่น่าสนใจมาก เเละผมสามารถนำการเขียนโค้ดที่ผมชอบ มาใช้ร่วมกันได้ บวกกับรุ่นพี่ที่ผมสนิทเคยเรียนกับ ai builders ในปี 2023 เเละศิทย์เก่าอีกหลายๆ คน สามารถสร้างผลงานขึ้นมาได้สำเร็จเเละใช้ได้จริง บวกกับผมที่อยากลองผิดลองถูก เเละทำในสิ่งที่สนใจ และมีพี่ๆ mentor มาช่วยสอน ผมจึงตัดสินใจลงสมัครโครงการนี้ดู + \ No newline at end of file diff --git a/posts/2024/9-benyapa-takhwankeaw.md b/posts/2024/9-benyapa-takhwankeaw.md new file mode 100644 index 0000000..040f663 --- /dev/null +++ b/posts/2024/9-benyapa-takhwankeaw.md @@ -0,0 +1,24 @@ +--- +date: "31-7-24" +title: "Classification Exercise-Postures" +builder: "เบญญาภา ฐขวัญแก้ว(น้ำพลอย)" +builder_info: "หาดใหญ่วิทยาลัย / สงขลา" +thumbnail: "/images/2024/9/01.png" +links: + github: "https://github.com/benyapa50875/Classification-ExPost" + facebook: "" + blog: "https://medium.com/@thekai.2019/classification-exercise-postures-3384d6086642" +--- + +![image](/images/2024/9/01.png) + +-ในปัจจุบัน ธุรกิจ E-commerce ได้เติบโตขึ้นเป็นอย่างมาก เเพลตฟอร์มซื้อขายของออนไลน์ต่างๆก็เช่นกัน จึงหลีกเลี่ยงไม่ได้กับการที่มี ร้านค้าหัวหมอที่นำบอท มาเขียนรีวิวปลอมเพื่อเพิ่มยอดขายของสินค้า +- model เป็นการ finetune จาก Wangchan-berta-spm-att-uncase จึงชำนาญในภาษาไทยเป็นพิเศษ +- data เป็นการ scraping จาก Lazada ทั้งหมด model เลยค่อยข้างจะชำนาณในการทำนายรีวิวจาก Lazada +- วัดผลโดนการประเมินโดยใช้ accuracy,f1 score กับ test set หลังเทรน model เสร็จ +- ข้อเสนอเเนะ เนื่องจาก model ได้ข้อมูลมาจาก Lazada ที่เดียวจึงยังไม่สามารถทำนายรีวิวจากเเอฟ เเละ ยังไม่สามารถทำนายตัวรีวิวที่เป็นภาษาอังกฤษได้ เนื่องจาก data ที่ใช่ trainเป็นภาษาไทยทั้งหมด + +### แรงจูงในในการเข้าร่วมโครงการ (จากใบสมัครเข้าร่วมเมื่อ 10 สัปดาห์ที่แล้ว) + +> ส่วนตัวหนูเป็นคนที่ชื่อชอบในด้านเทคโนโลยีมากๆเลยค่ะ เห็นอะไรเกี่ยวกับศาสตร์คอมพิวเตอร์ก็อยากรู้อยากเห็นไปหมดเลย ยิ่งตั้งแต่ ai เริ่มเข้ามามีบทบาทในชีวิตประจำวันมากขึ้น ทำให้หนูเริ่มที่จะสนใจในศาสตร์ด้าน ai มากยิ่งขึ้น เริ่มศึกษาอย่างจริงจรัง แล้วหนูก็ค้นพบว่าตัวหนูก็ชื่นชอบ al ไม่แพ้ด้านอื่นๆเลย แต่ในตอนนี้หนูยังคงมีประสบการณ์อยู่น้อยมากๆในเรื่องของ ai หนูอยากจะขอให้ทางโครงการได้ลองเปิดใจให้หนู ให้หนูแสดงศักยภาพของตัวเองให้ทางโครงการเห็น หนูจะไม่ทำให้โครงการผิดหวังแน่นอนค่ะ หนูอยากเข้ามากๆ ให้โอกาสหนูด้วยนะคะ + \ No newline at end of file