Cold Start Problem คือ อะไร
ในการสร้าง Product Recommendation - ปัญหา Cold Start เป็นเรื่องที่ท้าทายอันหนึ่ง นอกเหนือจากเรื่องอื่นๆ เช่น มีข้อมูลน้อย ความสามารถในการ Scaling และ ความหลากหลาย
ใน Recommender System จะมีอยู่ 2 เรื่อง – Products (ผลิตภัณฑ์) และ Users (ผู้ใช้)
- เมื่อผลิตภัณฑ์ใหม่เข้ามา ก็จะไม่มี Likes หรือ Dislikes ไม่มี Reviews หรือ Clicks จึงทำให้ยากต่อการถูกแนะนำ
- เช่นเดียวกับเมื่อผู้ใช้รายใหม่ เนื่องจากระบบไม่มีข้อมูลเกี่ยวกับความชอบของผู้ใช้ จึงไม่สามารถแนะนำผลิตภัณฑ์ให้ได้
เรียกว่า "ปัญหา Cold Start"
หนึ่งในวิธีที่ได้รับความนิยม ในการสร้าง Recommender คือ Collaborative Filtering (CF) โดยมีสมมติฐานว่า “ผู้ใช้” หรือ “ผลิตภัณฑ์” มีการจัดอันดับบางส่วน จากนั้นจะสามารถอนุมานการให้คะแนนของ “ผู้ใช้” หรือ “ผลิตภัณฑ์” ที่คล้ายกันได้
แต่สำหรับ ”ผู้ใช้” หรือ “ผลิตภัณฑ์” ใหม่ ระบบจะผิดพลาด เพราะขาดข้อมูลที่เกี่ยวข้อง กล่าวคือ ไม่สามารถตั้งสมมติฐานโดยใช้เทคนิค Matrix Factorization พื้นฐาน ในแนวทางของ CF เพื่อหาความสัมพันธ์ระหว่าง “ผู้ใช้” และ “ผลิตภัณฑ์”
ดังนั้น จึงเริ่มปรับใช้เทคนิค AI ที่แตกต่างกันกับระบบ Recommender นำไปสู่ ระบบ Recommender ยุคใหม่ที่ผสมผสานระหว่าง การวิเคราะห์ข้อมูล และ AI เพื่อสร้างข้อมูลเชิงลึกขั้นสูงเกี่ยวกับความสัมพันธ์ระหว่าง “ผู้ใช้” และ “ผลิตภัณฑ์” ต่างๆ มีแนวทางดังนี้
Content Based Filtering
- เป็นตัวเลือกยอดนิยมที่นำมาใช้ ในกรณี Cold Start ระบบ Recommender สามารถใช้ข้อมูล Meta เกี่ยวกับผลิตภัณฑ์ใหม่ เพื่อให้คำแนะนำ
- นอกจากนั้น ข้อมูลเพิ่มเติมใดๆ เช่น ข้อมูลที่ได้จากเครือข่าย Social Media ของผู้ใช้ (ให้ไว้ในขณะที่ลงทะเบียนผ่านระบบ Social Media) สามารถนำมาใช้เพื่อจัดการกับความขาดแคลนข้อมูลเบื้องต้นได้
- Filtering Algorithms จะให้ Bias สำหรับรายการเฉพาะ และ แนะนำรายการที่คล้ายกันบนพื้นฐานของ Domain (item’s content)
- มีข้อดีหลายประการ ในช่วงเริ่มต้น คำแนะนำประเภทนี้ขึ้นอยู่กับการแสดงรายการ ไม่ขึ้นกับผู้ใช้ ด้วยเหตุนี้ ปัญหาความกระจัดกระจายของข้อมูลจึงไม่เกิดขึ้น สามารถแนะนำรายการใหม่ให้กับผู้ใช้ได้ ซึ่งจะแก้ปัญหา Cold Start ของรายการใหม่
Popular Based Filtering
- อีกหนึ่งตัวเลือกที่ถูกใช้บ่อย สำหรับปัญหา Cold Start ลูกค้าใหม่ จะแสดงรายการผลิตภัณฑ์ที่ได้รับความนิยม (Popular Based) บางครั้ง หากมีรายการที่ลูกค้าใหม่เกือบทั้งหมดซื้อ ผลิตภัณฑ์นั้นก็อาจได้รับการแนะนำให้กับลูกค้าใหม่ทั้งหมดเช่นกัน
- ตัวเลือกแต่ละรายการสามารถลงทะเบียนได้ เช่นเดียวกับ Contextual Information เช่น ตำแหน่ง (GPS) ของอุปกรณ์ ช่องทางที่ผู้ใช้เข้ามา อุปกรณ์ที่ใช้ ฯลฯ หลังจากไม่กี่ Clicks พฤติกรรมศาสตร์จะช่วยเว็บไซต์อีคอมเมิร์ซสร้าง Profile ของลูกค้า
- สำหรับรายการที่จะลงเป็นครั้งแรก สินค้านั้นจะไม่มี “Baggage” ก่อนหน้า เช่น ประวัติการซื้อ และอื่นๆ จนกว่าจะมีการ “ซื้อ” หรือ “ชอบ” เพียงพอสำหรับรายการนี้
- Amazon และ YouTube ก็ใช้การโปรโมตแบบนี้ คือ แสดงผลิตภัณฑ์ที่คล้ายกัน โดยใช้ Similarity Algorithms เช่น Levenshtein หรือ Hamming Distance จนกว่าผู้ใช้จะซื้อสินค้าเพียงพอหรือให้คะแนนบริการใหม่
- ข้อเสีย คือ ขาด Personalization แต่ในที่นี้ เรากำลังการแก้ปัญหา Cold Start เมื่อแก้ปัญหาแล้ว สามารถใช้แนวทางแบบ Personalization ในการแนะนำสินค้าได้
The Multi-Armed Bandit Model
- ได้แรงบันดาลใจมาจากสล็อตแมชชีนแบบหลายคันโยก นักพนันมีทางเลือกในการดึงคันโยกไม่ใช่คันเดียว แต่หลายคัน ดังนั้น จึงคิดว่ามีโอกาสชนะมากขึ้น อัตราส่วนความน่าจะเป็นของรางวัลต่อคันโยกแต่ละอันนั้นแตกต่างกัน นักพนันไม่รู้อัตราส่วนนี้ แต่คาสิโนรู้ ซึ่งจะเพิ่มกำไรได้ในที่สุด เพราะเจ้ามือจะไม่แพ้
- มีความเกี่ยวข้องอย่างไรกับการแก้ปัญหา Cold Start?
- ในแต่ละวัน มีรายการใหม่ๆ มากมายที่มายัง เว็บไซต์ หรือ App รายการเหล่านี้เหมือนกับเครื่องสล็อตแมชชีนซึ่งแต่ละอันมาพร้อมกับ RoI ที่แตกต่างกัน
- แต่เนื่องจากสิ่งเหล่านี้เป็นของใหม่ เว็บไซต์อีคอมเมิร์ซ จึงไม่ทราบว่า ณ เวลานั้นจะมีผู้ใช้จำนวนเท่าใดที่จะซื้อสินค้าเหล่านี้ ในสล็อตแมชชีนแบบหลายคันโยก แต่ละคันโยกจะแทนรางวัล ดังนั้นการแนะนำส่วนย่อยของผลิตภัณฑ์ใหม่ก็เหมือนกับการตัดสินใจดึงส่วนย่อยของเครื่องสล็อตมา เคล็ดลับสำหรับเว็บไซต์ คือ การระบุให้ชัดเจนว่าควรดึงคันโยกใดเพื่อให้ได้ผลตอบแทนสูงสุด
- แต่จะมีปัญหาที่เรียกว่า “Exploration & Exploitation” หากผลิตภัณฑ์ใหม่บางอย่างกำลังจะออกจากชั้นวาง เป็นเรื่องปกติที่ผู้ขายจะโลภและแสดงต่อผู้ใช้จำนวนมากขึ้น (เรียกว่า Exploitation) แต่ในขณะเดียวกัน สินค้าใหม่ที่เหลืออาจกำลังขาดแคลน และ ผู้ขายจำเป็นต้องแสดงให้ลูกค้าเห็นด้วยความถี่ที่เพียงพอ เพราะสินค้าเหล่านั้นอาจกลายเป็นที่นิยมมากกว่าสินค้า (ยอดนิยม) ที่ผู้ขายแสดงไว้แล้ว (Exploration)
- เห็นว่าต้องมีการ Balance ระหว่าง Exploration & Exploitation มี Multi-Armed Bandit (MAB) Algorithms ที่ได้รับความนิยม ได้แก่ Epsilon Greedy, Decayed Epsilon Greedy, Upper Confidence Bound, Thompson Sampling เป็นต้น
Deep Learning
- มีความพยายามในการแก้ปัญหา Cold Start โดยใช้ Deep Learning เมื่อใช้โครงข่ายประสาทเทียม (Neural Network) น้ำหนัก/คะแนนเริ่มต้นจะถูกกำหนดแบบสุ่ม แต่จะใช้ Backpropagation เพื่อทำซ้ำ และ ให้ได้ค่าที่เหมาะสมที่สุด
- แนวทางการเรียนรู้ด้วย Meta ได้รับความนิยม จากงานวิจัยนี้ “Meta-Learning for User Cold-Start Recommendation”, Homanga Bharadwaj, Department of Computer Science and Engineering, Indian Institute of Technology Kanpur, India กล่าวว่า ได้มีการออกแบบกรอบคำแนะนำที่ได้รับการฝึกอบรมให้ “ดีพอสมควร” สำหรับผู้ใช้ที่หลากหลาย จะเห็นว่า Model จัดการกับปัญหา Cold Start ได้ดีกว่า State-of-the-art benchmark recommender system
- งานวิจัยอีกชิ้นโดยทีมนักวิจัยจาก University of KwaZulu Natal, Westville, South Africa พยายามหาวิธีใหม่ในการแก้ปัญหา Cold Start โดยใช้ Social Network และ Matrix Factorization ทีมวิจัยอธิบายว่าข้อมูล Social ถูกใช้เพื่อสร้างกลุ่มผู้ใช้ที่จะมีความสนใจเหมือนกัน โดย DL จะถูก Train ในแต่ละ Community จากนั้น Models จะถูกประเมิน โดย Metrics ที่ใช้คือ Mean Squared Error (MSE) และ Mean Absolute Error (MAE) ในแนวทาง 5-fold cross validation ผลการวิจัยพบว่าการใช้ข้อมูล Social Network ทำให้ได้ผลลัพธ์ดีขึ้น และ การจัดกลุ่มผู้ใช้ใน Community ถือเป็นข้อได้เปรียบ
******
ข้อมูลอ้างอิง
- ML Solutions for Cold Start Problem in Recommender Systems — Express Analytics : https://www.expressanalytics.com/blog/cold-start-problem/