อธิบาย Computer Vision AI และการใช้เพิ่ม Engagement ของ Sephora’s

อธิบาย Computer Vision AI และการใช้เพิ่ม Engagement ของ Sephora’s

สวัสดีค่ะเพื่อนๆ บทความนี้เป็นภาคต่อจากบทความ “Computer Vision (CV) AI: ช่วยจัดการผู้ใช้รถไฟ เพิ่มยอดขายร้านค้าในสถานี” เนื่องจากมีการสอบถามเกี่ยวกับรายละเอียดของ CV เข้ามา นิกเลยคิดว่าน่าจะเป็นการดี (รึเปล่านะ 555) ถ้าเราจะมีภาคต่อในการอธิบายเพิ่มเติมเกี่ยวกับหลักการของ CV พร้อมกับยกตัวอย่างที่น่าสนใจ และยังไม่ได้มีการถูกกล่าวถึงในบทความที่แล้ว ซึ่งเป็นตัวอย่างจาก Sephora’s ที่มีการใช้ CV ในการเพิ่ม Customer Engagement ของผู้ใช้งานได้อย่างมีประสิทธิภาพ และเท่มากๆ ค่ะ 😎😄

ซึ่งในบทความนี้นิกจะพาไปทำความเข้าใจ ในส่วนของหลักการใช้หลักการการประมวลผลภาพ Computer Vision ในส่วนของการใช้โมเดลในการจำแนกภาพ ด้วย Convolutional Neural Network (CNN) ที่ถือว่าเป็น Deep learining โมเดลหนึ่งค่ะ

Computer Vision ในการจำแนกภาพ

จากในบทความก่อนหน้าที่มีการพูดถึงการใช้ CV ในการตรวจนับบุคคล ซึ่งเราจะมาดูรายละเอียดกันต่อค่ะ ว่า,,,, ก่อนที่จะทำการตรวจนับบุคคลได้ ก็ต้องมีความสามารถในการจำแนกภาพได้ก่อน

กระบวนการจำแนกภาพด้วย CV เป็นหนึ่งในกระบวนการทำ Classification ของ Machine Learning ที่อยู่ในกิ่งของการการทำ Image Classification ที่เป็น Supervised (การเรียนรู้ของโมเดลที่ต้องมีผลลัพธ์มาป้อนให้เป็น input)

Machine Learning Type credit: https://towardsdatascience.com/

ซึ่งจากเดิมการที่เราจะจำแนกสิ่งใดออกจากกัน จะทำได้โดยการเขียนโปรแกรมให้กับคอมพิวเตอร์ โดยใส่กฎ หรือ Rules และข้อมูลเข้าไป พอผ่านโปรแกรม (Traditional Programming) ก็จะได้ผลลัพธ์เป็น Answer ออกมา

แตกต่างจากการทำ Classification ที่เป็น Machine learning based ในปัจจุบัน ที่เปลี่ยนเป็นการใส่ input เป็น Answers และ Data เข้าไป แล้วผ่านกระบวนการเรียนรู้ของเครื่อง (ML) แล้วได้ผลลัพธ์เป็น Rules ที่เรียกว่า “โมเดล” โดยเราจะใช้โมเดลนี้ในการนำไปจำแนกภาพ/ทำ Computer Vision ต่อไปค่ะ^^

credit: https://www.oreilly.com/library/view/ai-and-machine

Image Classification: รายละเอียด

ทีนี้เรามาดูต่อกันในส่วนของการทำ Image Classification หรือการจำแนกภาพกันค่ะ โดยในระบบของ Classification จะแบ่งองค์ประกอบออกเป็น 3 องค์ประกอบด้วยกัน คือ

  • Data set หรือ ชุดข้อมูล ที่จะนำมาสร้างโมเดล ซึ่งเราจะทำการแบ่ง data set นี้ออกเป็น 3 ส่วน เพื่อทำการ Training การ Validation และ การ Testing
  • Model ซึ่งเกิดจากการเรียนรู้ของ Machine โดยในตัว Model จะประกอบไปด้วยการหาความสัมพันธ์ระหว่าง Features กับผลลัพธ์ที่ทำไว้เป็น Labels (ตัวโมเดลที่จะกล่าวถึงในบทความนี้จะเป็น CNN ซึ่งเป็น Deep learning นะคะ^^)
  • Output หรือผลลัพธ์ที่ตัวโมเดลทำการ Classify หรือจำแนกประเภทออกมาให้เราเรียบร้อยแล้วนั่นเองค่ะ
credit: https://medium.com/kwadigoai/

Deep Learning Image Classification

วิวัฒนาการของการทำ Image Classification เริ่มจากการทำ Computer Vision แบบดั้งเดิม ซึ่งเริ่มจากการทำการ Detect features แต่ละ Feature ออกมา (หรือ flatten) ให้อยู่ในรูปของ Vector (array 1 มิติ) แล้วเข้าสู่พาร์ท Machine Learning (ด้วย algorithm ตามที่กำหนด เช่น logistic regression หรือ SVM) เพื่อให้ได้ output เป็นประเภท หรือ Class ออกมา ซึ่งจากการที่เรา flatten หรือคลี่ feature จากภาพออกมาเป็นแถวของ vector ยาวๆ ไปเลย อาจทำให้ความสัมพันธ์ในช่วงขอบ (Edge) ของภาพหายไป ส่งผลต่อ accuracy ได้

ทำให้เป็นที่มาของการทำ Deep Learning ซึ่งเป็นการรวมเอาขั้นตอนของการทำ Feature extraction (การสกัดคุณลักษณะ) และการทำ Classification (การจำแนกประเภท) เอาไว้ในส่วนเดียวกัน ที่เรียกว่าส่วนของ Convolution Neural network โดยในส่วนของการทำ

  • Feature extraction จะใช้โมเดลที่ชื่อว่า CNN หรือ Convolution Neural network ซึ่งถือเป็นส่วนหลักใน Deep learning (คิดเป็นประมาณ 80% ของโมเดลทั้งพาร์ท) ซึ่ง input ที่ป้อนเข้าไปให้กระบวนการนี้จะอยู่ในรูปของ matrix
  • Classification จะใช้โมเดลที่ชื่อว่า ANN (โครงข่ายประสาทเทียม) หรือ Artificial Neural network ในการจำแนกประเภทจากข้อมูลที่ทำการ flatten เป็น vector แล้วออกมาค่ะ
Deep Learning Approach: credit: ars.els-cdn.com

CNN Computer Vision

โดยในกระบวนการของการสร้างโมเดลการประมวลผลภาพด้วย Convolution Neural network: CNN มีลำดับขั้นตอนของ Algorithm ดังนี้

  1. ป้อน Input ที่เป็นรูปภาพ (RGB) ใส่เข้าไป โดยตัว input นั้นจะต้องเป็นชุดข้อมูลที่ทำการ label เสร็จเรียบร้อยแล้ว โดยที่ input นี้จะอยู่ในรูปแบบของ matrix 3 channels
  2. Convolution + ReLU เป็นการสกัดเอาคุณลักษณะสำคัญของภาพออกมา โดยการใช้ Filter ในการทำหน้าที่เป็น Feature Detector ได้เป็น Output Array ออกมา
  3. Pooling เป็นการเลือกเอาค่าที่สำคัญ (เหมือนเป็นการเลือกตัวแทนหมู่บ้าน) ที่จะเป็นตัวแทนของข้อมูลที่ผ่านจาก Filter ในชั้น Convolution + ReLU ออกมา โดยวิธีที่นิยมกันจะมี 2 วิธีหลัก คือ Max pooling กับ Average Pooling
    *โดยในขั้นตอนที่ 2-3 เราสามารถทำได้หลายรอบจนได้สิ่งที่เหมาะสมที่สุดค่ะ
    และในส่วนนี้จะใช้กระบวนการที่เรียกว่าการทำ Convolution ในการทำ
  4. Flatten หรือเป็นการคลี่ข้อมูลจากรูปแบบ Matrix หรือ Tensor ออกมาเป็น Vector
  5. Fully Connecte Layer ซึ่งในส่วนนี้จะเป็น ANN ในการทำ Classification ในการแยกประเภทออกมา และใช้ activation function ในชั้นสุดท้ายเป็น Softmax
  6. ได้ Output ออกมาในรูปแบบของค่าความน่าจะเป็นในการผลลัพธ์ของรูปภาพที่ Classify ได้ เช่นในตัวอย่างข้างล่างนี้มี Output ของความน่าจะเป็นในการเป็น ม้า 20%, ม้าลาย 70% และสุนัข 10% และจากค่าที่ได้ออกมานี้เราก็จะมาทำการหา Accuracy และทำ Optimization กันต่อ เพื่อเพิ่มความแม่นยำให้โมเดล^^

*โดยในส่วนขอ Optimizer ที่นิยมกันก็มีหลายตัวได้แก่ Stochastic Gradient Descent, RMSprop, Adam ให้เลือกขึ้นอยู่กับความเหมาะกับชุดข้อมูลและโมเดลค่ะ

Sephora’s: การใช้ Computer Vision ในการเพิ่ม Customer Engagement

ซึ่งตัวอย่างที่น่าสนใจในการนำ CV มาใช้ด้านการทำ Marketing เพื่อเพิ่ม Customer Engagement อย่างชาญฉลาด นิกขอยกให้เป็นของ Sephora ที่ออกแคมเปนจ์ชื่อว่า Sephora’s Virtual Artist ที่เป็นการเปิดประสบการณ์ใหม่ให้กับการ Shopping ออนไลน์ และการค้าปลีก โดยการให้ผู้ใช้งานสามารถปรับแต่ง และทดลอง Shades ของ Makeup ตามแบรนด์ที่ต้องการแบบ real-time ได้ผ่านการเปิดกล้องหน้า อีกทั้งยังสามารถถ่ายภาพแต่ละลุคไว้ เพื่อทำการเปรียบเทียบ และสร้าง New look ได้ด้วยการเขย่าโทรศัพท์!! ก่อนจะให้เราสามารถ Share รูปของเราไปยัง Social media แพลตฟอร์มอื่นได้ด้วย 🥰

โดย Virtual Artist ของ Sephora ใช้หลักการของ CV ในการจำแนกและตรวจจับใบหน้า ดวงตา ริมฝีปาก และแก้มของผู้ใช้งาน เพื่อทำการ Shading ลงบนภาพที่ผ่านการใช้กล้องหน้าแบบ Real-time ให้เสมือนว่าเรากำลังลองผลิตภัณฑ์นั้นอยู่จริงๆ ซึ่งเป็นการเปลี่ยนแปลงประสบการณ์การซื้อสินค้าออนไลน์ ให้สามารถเข้าถึงได้ง่ายขึ้น เพิ่มการมีส่วนร่วมของลูกค้า เพื่อกระตุ้นยอดขาย และอัตราการซื้อซ้ำนั่นเองค่ะ ☺🤗

Last but not Least…

จากบทความนี้ เพื่อนๆ น่าจะได้เห็นตัวอย่างเพิ่มเติมของการใช้ Computer Vision ในการเพิ่ม Customer Engagement ซึ่งนิกว่าเป็นไอเดียที่น่าสนใจมากสำหรับการตลาดในยุค Digital Marketing และรายละเอียดของ CV ที่เป็น Deep learning โมเดล CNN แบบภาพรวม เพื่อเพิ่มความเข้าใจการใช้งาน AI ให้สามารถนำไปต่อยอด

ท้ายสุด,,,,สำหรับเพื่อนๆ ท่านใดที่ต้องการอ่านบทความเพิ่มเติมเกี่ยวกับ Computer Vision สามารถเข้าไปที่ link นี้ได้เลยค่ะ =>

Panaya Sudta

Hi, I am Nick,,,,Panaya Sudta (●'◡'●) Engineer during the daytime. Researcher at night. Reader in spare time. (❁´◡`❁) วิศวกร/นักวิจัย และเป็นน้องใหม่ของการตลาดวันละตอน ในการทำ Market research ค่ะ หวังเป็นอย่างยิ่งว่าจะได้แชร์มุมมองกันนะคะ

Leave a Reply

Your email address will not be published. Required fields are marked *