Nuttachot Promrit

Nuttachot Promrit

Transfer Learning with Keras for Computer Vision Applications

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร Transfer Learning เป็นการนำ Weight ของ Model ที่ถูก Train ด้วย Dataset ในงานหนึ่ง (Pre-trained Model) กลับมาใช้ใหม่กับอีกงาน แทนที่จะต้อง Train ด้วยตัวเองตั้งแต่ต้น ซึ
14 min read

Introduction to Deep Reinforcement Learning on Google Colab Pro

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร ปี 2013 บริษัทสตาร์ทอัพในลอนดอนชื่อ DeepMind ได้ตีพิมพ์ Paper ชื่อ Playing Atari with Deep Reinforcement Learning ซึ่งแสดงให้เห็นว่า AI Agent สามารถควบคุมการเล่นเกมอย่างเช่น Breakout,
14 min read

Apple M1 Speed Test

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร TensorFlow เป็นหนึ่งใน Deep-learning Framework ยอดนิยมที่ใช้ในการพัฒนางานทางด้าน AI และ Data Science ที่สามารถเพิ่มความเร็วในการประมวลผลได้ด้วย NVIDIA GPU และ CUDA Toolkit แต่น่าเสียดายที่ Apple ได้หยุดให้
5 min read

A Book Recommendation Example: Collaborative Filtering using Autoencoder Model

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร Collaborative Filtering เป็นเทคนิคหนึ่งที่ใช้ในการทำ Recommendation โดยอาศัยข้อมูลความพึงพอใจของ User ที่มีต่อ Item ต่างๆ อย่างเช่น การให้คะแนนความชอบในหนังสือแต่ละเล่ม การ Comment ภาพยนตร์แต่
8 min read

ทำเนียบรุ่น วิชา DevOps and Cloud Engineering 101

ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร รายชื่อนักศึกษา รุ่นที่ 1 (2/62) นายณัฐดนัย ยังสติ saiyuki_2010@hotmail.com "ได้ฝึกใช้ Docker" นายณัฐภัทร คูวิจิตรจารุ khuwijitjaru_n@silpakorn.edu "ได้ทั้งความรู้ Docker การออกเเบบระบบ Web Aplication แล้
1 min read

AI Outline : CPSUNext

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร * Introduction to AI, Machine Learning and AI Toolboxes * State Space Search * Introduction to Deep Learning (Machine Learning Pipeline) * Feature Engineering for AI and Machine Learning (การทำ Feature Engineering ด้วย Pandas) * Implement the Back-propagation Algorithm
1 min read

การเลือกใช้ Loss Function ในการพัฒนา Deep Learning Model (ตอนที่ 2)

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร ตอนที่ 2 ของบทความเรื่องการเลือกใช้ Loss Function ในการพัฒนา Deep Learning Model นี้ ผู้อ่านจะได้ทำ Workshop ที่มีการคอนฟิก Model แบบ Classification ด้วย Loss Function อีก 3 ตัว ได้
12 min read

การเลือกใช้ Loss Function ในการพัฒนา Deep Learning Model (ตอนที่ 1)

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร Deep Learning Model ที่ถูก Train ด้วย Stochastic Gradient Descent Optimization Algorithm มีกระบวนการทำงานหลักๆ 2 ส่วน ได้แก่ 1) Forward Propagation และ 2) Back-propagation โดยในการทำ Forward Propagation จะมีการประมาณ Error หรื
10 min read

Visualizing Kernels and Feature Maps in Deep Learning Model (CNN)

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร แนวคิดของ Convolution นั้นทรงพลัง และสามารถเพิ่มประสิทธิภาพให้แก่ Neural Network Model ได้เป็นอย่างมาก โดยเฉพาะในยุคปัจจุบันที่ราคา Computer Hardware เช่น GPU นั้นถูกกว่าสมัยก่อนจนจั
11 min read

การทำ Regularization แบบสมัยใหม่ ด้วยเทคนิค Augmentation, Batch Normalization และ Dropout

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร ในการเพิ่มประสิทธิภาพ Machine Learning Model มีวิธีการหลัก 2 อย่าง ที่ต้องให้ความสำคัญ คือ 1) การลด Generalization Error ด้วย Regularization และ 2) การลด Cost Value ด้
12 min read

การวิเคราะห์ประสิทธิภาพ Machine Learning Model ด้วย Learning Curve

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร Learning Curve เป็นสิ่งที่แสดงถึงประสิทธิภาพการเรียนรู้ของ Model จาก Training Dataset ซึ่งแกน x ของกราฟจะเป็น Epoch และแกน y จะเป็นประสิทธิภาพของ Model โดยประสิทธิภาพของ Model จะถูกวัดหลั
10 min read

การ Deploy Machine Learning Model บน Production ด้วย FastAPI, Uvicorn และ Docker

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร ในการให้คำปรึกษาโครงงานวิทยานิพนธ์ (Project) บ่อยครั้งที่เมื่อนักศึกษาได้พัฒนา Deep Learning Model ที่มีประสิทธิภาพพอจะใช้งานได้ระดับหนึ่งแล้ว ผมก็จะให้พวกเขานำ Model ไป Deploy บน
9 min read

The Effects of the Learning Rate on Model Performance

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร สำหรับผู้อ่านบางท่านที่เริ่มต้นศึกษา Machine Learning Model อาจจะเคยสับสนกับคำว่า Parameter และ Hyperparameter กันมาบ้าง โดย Parameter จะเป็นตัวแปร (Variable) ที่อยู่ภายใน Model เช่น Weight
7 min read

Introduction to Stochastic Gradient Descent with Tensorflow and Keras Framework

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร Stochastic Gradient Descent (SGD) เป็นวิธีการหลักในการ Train Neural Network Model โดยใช้ Gradient หรือ ความชัน เป็นตัวบอกขนาดและทิศทางในการปรับ Parameters ที่จะทำให้ Loss Value เคลื่อนที่ไปยัง จุดต่
7 min read

Implement the Back-propagation Algorithm from Scratch with NumPy

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร บทความโดย อ.ดร.ณัฐโชติ พรหมฤทธิ์ในบทความนี้เราจะศึกษา Neural Network อย่างละเอียดขึ้น ด้วยการทำความเข้าใจ Back-propagation Algorithm ซึ่งเป็นกระบวนการที่สำคัญในการย้อนกลับ (Backward) เพื่อปรับ Parameters (Weight และ Bias)
4 min read

Feature Engineering for AI and Machine Learning (การทำ Feature Engineering ด้วย Pandas)

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร "Data is the new oil!" หลายคนคงเคยได้ยินประโยคนี้ใช่ไหมครับ แต่อันที่จริงหากเป็นเรื่องเกี่ยวกับ AI และ Machine Learning แล้ว Data น่าจะเป็นเหมือนกับน้ำมันดิบ
5 min read

Sentiment Analysis 101

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร ใน Workshop นี้เราจะได้เรียนรู้เกี่ยวกับการทำ Sentiment Analysis โดยใช้ Model แบบ RNN ที่รับ Dataset ผ่าน Input Node แบบ Time Series หรือข้อมูลที่มีลักษณะเป็นลำดับ
6 min read

Introduction to Word2Vec

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร ในการใช้ NLP Application เพื่อแก้ปัญหา เช่น การทำ Intent Classificaion หรือ Sentiment Analysis เราอาจต้องมีการตัดคำ และแปลงคำเป็นตัวเลข เพื่อนำเข้า Neural Network Model เช่น ประโยค "Need help pleese"
5 min read

Intent Classification

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร ใน Workshop นี้เราจะได้เรียนรู้เกี่ยวกับการทำ Intent Classification กับ Dataset ที่เป็นประโยคภาษาอังกฤษ จำนวน 1,113 ประโยค ซึ่งมีการแบ่ง Intent ออกเป็น  21 Class โดยใช้ Model แบบ RNN
7 min read

Introduction to NLP

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร NLP (Natural Language Processing) เป็น Field หนึ่งของ Artificial Intelligence (AI) ที่จะทำให้มนุษย์มีปฏิสัมพันธ์กับคอมพิวเตอร์ด้วยภาษาธรรมชาติ หรือช่วยให้คอมพิวเตอร์เข้าใจภาษาธรรมชาติของมนุษย์
7 min read

Introduction to Deep Learning (Machine Learning Pipeline)

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร Deep Learning เป็น Neural Network แบบหนึ่ง ที่มักจะใช้ในการแก้ปัญหาในงานอย่างเช่น การแยกประเภทภาพ (Image Classification) การตรวจจับใบหน้า (Face Detection) และการวิเคราะห์ความรู้สึก (Sentiment Analysis) ฯลฯ ซึ่งในการ Train
8 min read

Introduction to AI, Machine Learning and AI Toolboxes

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร AI หรือ Artificial Intelligence เป็นศาสตร์ในการทำให้ Computer มีความฉลาดเหมือนมนุษย์ โดยเทคนิคหนึ่งที่จะทำให้คอมพิวเตอร์มีความฉลาด คือการทำให้คอมพิวเตอร์สามารถเรียนรู้ได้เองจาก Data ที่นำมาสอน โดยปราศจากการป้อนกฎหรือเขี
9 min read

การทำ CI/CD Pipeline ด้วย GitLab Server ของตัวเอง สำหรับ DevOps Team

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร เป้าหมายสำคัญของการพัฒนา Software คือ การสร้าง Software ให้ดีขึ้นในเวลาที่น้อยลง ซึ่งในการพัฒนา Software สมัยใหม่ จะมีกระบวนท่าหลักๆ ที่มุ่งไปสู่เป้าหมายดังกล่าวอยู่ 3 กระบวนท่
11 min read

การพัฒนา Web Application แบบ (เกือบจะ) Zero Downtime บน Swarm Cluster

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร ในช่วงหนึ่งสัปดาห์ที่ผ่านมา ถ้าถามว่าเว็บไซต์ไหนถูกกล่าวถึงมากที่สุด คำตอบคงจะหนีไม่พ้น Website https://www.เราไม่ทิ้งกัน.com www.เราไม่ทิ้งกัน.com
20 min read

การพัฒนาระบบ OTP (One Time Password) และ Session Server ด้วย Redis และ Flask สำหรับ Microservice

บทความโดย ผศ.ดร.ณัฐโชติ พรหมฤทธิ์ ภาควิชาคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศิลปากร บทความนี้ผู้อ่านจะได้คลายข้อสงสัยเกี่ยวกับการทำเว็บไซต์ ในส่วนของการเข้าสู่ระบบ ซึ่งมีการพิสูจน์ตัวตนด้วย OTP ที่ส่งไปยังผู้ใช้ ทาง Email รวมทั้งเทคนิคการทำให้ Session ไม่
12 min read