ทำระบบแนะนำ (Recommender System) ใน Platform ขนาดเล็ก— Part 1 : Recommender System คืออะไร? ทำไมถึงสำคัญ?

Kan Pawarisson
FOXBITH
Published in
2 min readNov 1, 2019

ระบบแนะนำ (Recommender System) คืออะไร? มีไว้ทำไม?

หากคุณเล่น Social Media เช่น Facebook, Youtube, Netflix, หรือ Pantip เป็นประจำ แสดงว่าคุณคุ้นเคยกับ(การใช้)ระบบแนะนำ หรือ Recommender System ดีอยู่แล้ว

สำหรับบรรดาผู้ให้บริการ Social Media เหล่านี้ที่มีข้อมูลใหม่ๆ มากมายมหาศาลจากการอัพเดทของคนเป็นล้านๆในแต่ละวัน หากพวกเค้าเลือกที่จะเสิร์ฟข้อมูลทุกอย่างที่มีให้เราอ่าน เราก็คงจะเสพข้อมูลทั้งหมดไม่ได้ (Information Overload) ประกอบกับความสมาธิสั้นของพวกเรา เมื่อเราเจอข้อมูลไหนที่ไม่เกี่ยวข้องกับสิ่งที่เราสนใจ เราก็อาจจะเลิกเล่นต่อ ซึ่งขัดกับสิ่งที่ผู้ให้บริการ Social Media ต้องการ

ดังนั้นเพื่อให้ผู้ใช้อย่างเรามีความสุข (ใช้เวลามากขึ้น) เหล่าบรรดาผู้ให้บริการจึงต้องเลือกเสิร์ฟเฉพาะเมนูที่เราอยากจะกิน อยากจะเสพต่อไปเรื่อยๆ (โดนโฆษณามากขึ้นเรื่อยๆ) โดยผู้ให้บริการเหล่านี้จะดูจากประวัติการกระทำของเราต่อเนื้อหาบนระบบในอดีต เช่น การกด Like/Share หรือเนื้อหาที่เรากดเข้าไปดูบ่อย แล้วจึงเลือกเนื้อหาที่คล้ายๆกันมาแสดง

ตัวอย่าง Timeline Facebook ที่เลือกแสดงข้อมูลของคนหรือแบรนด์ที่เราสนใจ

ตัวอย่าง Recommender System (RS)

ถ้าเรากดเข้าไปกระทู้ ชวนวิเคราะห์สัปดาห์การครองมือ 1 โลกของโนเล่ เมื่อเลื่อนอ่านจนจบกระทู้ เราจะเจอส่วน “กระทู้ที่คุณอาจสนใจ” ซึ่งเป็นส่วนที่ระบบจะเลือก 5 กระทู้ ที่มีลักษณะ (Tag) คล้ายกับกระทู้หลักที่เราพึ่งอ่านจบมาแสดงให้เราเลือกอ่านต่อ

“กระทู้ที่คุณอาจสนใจ“ คือผลลัพธ์ที่ RS เลือกมา โดยดูจาก Tag : เทนนิส ของกระทู้หลัก

ซึ่งถ้าเราสนใจ เราก็จะคลิกอ่านกระทู้ถัดไป ต่อไปเรื่อยๆ สไลด์ Timeline ไปเรื่อยๆ …เผลออีกทีตีสองแว้ว!!

อ่านมาถึงตรงนี้แล้ว รู้สึกไหมว่าสรรพคุณของเจ้า RS มันดีมากกก ทุก Platfrom Online ที่จะขายของ, ขาย Ads หรือมีเนื้อหาเยอะ อยากให้คนเล่นนานๆ มันต้องมี!!! อย่างน้อยที่สุดมันก็ทำให้ Platform ของเราดู Clean ขึ้น เพราะบนพื้นที่ที่จำกัดของ Website เราสามารถเลือกแสดงเฉพาะเนื้อหาที่มี Impact ต่อ User ได้ โดยไม่ต้องแสดงข้อมูลทั้งหมด แบบเรียงลำดับใหม่-เก่า หรือมี Pagination ที่ดูรุงรังมากวนสายตา

ตัวอย่าง Pagination ที่ดูรุงรัง

แล้วทำไมเราถึงเห็น RS นี้เฉพาะบน Platform ใหญ่ๆเท่านั้น ไม่ค่อยเห็นระบบนี้บน Platform เล็กๆ?

ที่ผมคิดออก มีความเป็นไปได้ 2 ข้อครับ

  1. เพราะ Platform เล็กๆนั้นยังมีข้อมูลไม่เยอะ ดังนั้นจึงไม่มีความจำเป็นที่จะต้องเลือกเนื้อหามาแสดง โดยอาจจะแสดงมันทั้งหมดเลย หรือเลือกแสดงตาม Category เช่น AerSF (E-Commerce)
  2. เพราะต้นทุนการทำมันแพงเกินงบ!!! — ระบบแนะนำ (Recommender System) ที่มีการจัดลำดับเนื้อหาที่ User มีโอกาสเสพต่อจากมากไปหาน้อย ถ้าจะทำเราต้องเก็บข้อมูลบางส่วนเพิ่ม นอกเหนือจากข้อมูลพื้นฐานที่ใช้แสดงผลทั่วไป เพื่อนำมาทำ Index ให้ตอนเรียกใช้งาน สามารถแสดงผลได้อย่างรวดเร็ว ดังนั้นต้นทุนที่เพิ่มขึ้นมาก็จะมีทั้ง ค่าพัฒนาระบบ (Development Cost) และ ค่าจัดเก็บข้อมูล (Storing Data Cost) ซึ่ง Platform เล็กๆที่ทุนไม่เยอะ พอเจอแบบนี้เข้าไป บวกลบคูณหารดูแล้ว เอางบส่วนนี้ไปทำ Design หรือ Marketing อาจจะคุ้มกว่า

จากที่กล่าวไป 2 ข้อจะเห็นว่า RS นั้นเหมาะกับ Platform ที่มีขนาดกลางค่อนไปทางใหญ่ มากกว่า Platform ขนาดเล็ก

ทีนี้ปัญหามันเกิดขึ้นเมื่อมีลูกค้า SME ของเราที่ Foxbith บางรายอยากได้ระบบนี้ จึงเป็นความท้าทายให้ทีมต้องมาคิดว่า จะทำระบบแนะนำ(RS) ยังไง? ให้ดีพอ ใช้งานได้จริง และราคาย่อมเยาว์ เหมาะกับ SME

จะทำ RS ยังไงให้ดีพอ และราคาย่อมเยาว์ เหมาะกับ SME?

ในบทความถัดไปผมจะเล่าให้ฟังถึงวิธีหนึ่งที่ทีมค้นพบในการแก้ปัญหานี้ครับ :D

--

--