เทคนิคดึงดูดลูกค้าในแบบ Netflix

เทคนิคดึงดูดลูกค้าในแบบ Netflix

10 July 2020

สถานการณ์การแพร่ระบาดของเชื้อไวรัสโคโรนาสายพันธุ์ใหม่ที่ทำให้เกิดโรคโควิด-19 ไม่เพียงแค่ส่งผลกระทบโดยตรงต่อการใช้ชีวิตของคนทั่วโลก แต่ยังส่งผลให้เศรษฐกิจชะลอตัวลงอย่างหลีกเลี่ยงไม่ได้ สร้างแรงสั่นสะเทือนต่อบริษัทยักษ์ใหญ่เป็นจำนวนไม่น้อย  แต่ในทางกลับกัน Platform Streaming ชื่อดังอย่างเน็ตฟลิกซ์ (Netflix) กลับมียอด สมาชิกเพิ่มขึ้นถึง 15.77 ล้านคน และมีรายได้รวมเพิ่มขึ้นถึง 27.6% เมื่อเทียบกับช่วงเดียวกันของปีที่แล้ว

“More than 80% of what people watch comes from our recommendation.”

Netflix

นั่นเป็นเพราะเน็ตฟลิกซ์ได้มีการใช้เทคนิคทางด้านวิทยาศาสตร์ข้อมูล (Data Science) เข้ามาเกี่ยวข้อง โดยเน็ตฟลิกซ์ได้กล่าวว่า “More than 80% of what people watch comes from our recommendation.” ซึ่งถือว่าเป็นตัวเลขที่สูงมาก ๆ บทความนี้จะอธิบายเกี่ยวกับการใช้ Big Data ของเน็ตฟลิกซ์ ที่ทำให้เน็ตฟลิกซ์กลายเป็นระบบ streaming เบอร์ 1 ของโลกในยุคปัจจุบัน


ในปี พ.ศ.2549 ซึ่งบริษัทได้เริ่มเปิดตัวในสหรัฐอเมริกานั้น เน็ตฟลิกซ์มีจำนวนสมาชิกทั้งสิ้นประมาณ 6 ล้านคน  ก่อนจะเพิ่มจำนวนเป็นกว่า 100 ล้านในปี พ.ศ.2560 และให้บริการในกว่า 190 ประเทศ ถ้าคิดเป็นค่าเฉลี่ยแล้วเน็ตฟลิกซ์จะมีสมาชิกหน้าใหม่ปีละ 8.5 ล้าน ซึ่งเป็นการเติบโตที่รวดเร็วมาก และผมเองก็เป็นหนึ่งในลูกค้าของเน็ตฟลิกซ์เหมือนกัน

ผมไม่รู้ว่าเพื่อน ๆ เป็นแบบผมหรือเปล่า ที่น้อยครั้งมากที่จะมานั่งหาชื่อหนังที่จะดูโดยการพิมพ์ชื่อหนังเอาเองในช่องค้นหา เพราะโดยส่วนใหญ่แล้ว ถ้าผมอยากจะดูหนังอะไรสักเรื่องก็มักจะเลือกดูจากลิสต์หนังที่ทางเน็ตฟลิกซ์แนะนำมาให้ในหน้า Home ซึ่งทุกครั้งก็มักจะได้หนัง หรือ ซีรี่ย์ ที่สนุก ถูกใจจากลิสต์หนังพวกนั้นนี่แหละ

การที่จะแนะนำหนังให้ถูกใจลูกค้าไม่ใช่เรื่องง่ายเพราะ ถึงแม้จะมีทฤษฎีที่บอกว่า คนที่มีลักษณะทางประชากรคล้าย ๆ กันจะชอบอะไรคล้าย ๆ กัน แต่นั่นก็ไม่เสมอไป เพราะแต่ละคนก็จะมีความ Unique หรือ เอกลักษณ์รสนิยมของแต่ละบุคคล ด้วยเหตุนี้เน็ตฟลิกซ์เลยวางระบบ Personalize ที่ Unique ของแต่ละสมาชิกซึ่งแต่ละ Profile ของเน็ตฟลิกซ์จะเห็นอะไรที่แตกต่างกัน และ แน่นอนว่าผมไม่ได้กำลังพูดถึงแต่ลิสต์ของหนังที่แตกต่างกัน สิ่งที่แตกต่างกันยังมี

  1. การจัดลำดับ (Ranking) การเรียงหนังของแต่ละสมาชิกจะแตกต่างกัน โดยที่จะวางหนังที่คิดว่าสมาชิกนี้จะชอบที่สุดไว้ทางด้านซ้าย
  2. การวางโครงสร้าง (Structure) ของหน้าจอ จากบนลงล่าง จะมี Section ของหนังที่แตกต่างกัน
  3. การปรับงานศิลป์ให้ถูกจริตส่วนบุคคล (Personalized Artwork) กล่าวคือ แม้แต่ Artwork ก็ มีการ Personalize เคยสังเกตไหมว่าหน้าปกของหนังที่เราดู จะมีความแตกต่างกันบางครั้ง และ หน้าปกติใน profile ของเพื่อนมันแตกต่างกัน นั่นแหละ เพราะ Netflix มองว่าหน้าปกของหนังส่งผลต่อการตัดสินใจกับการดูของลูกค้า และ ลูกค้าแต่ละคนชอบปกหนังแตกต่างกัน ดังนั้นเน็ตฟลิกซ์พยายามเลือก Artwork ของปกหนังที่คิดว่าลูกค้าจะชอบที่สุด
  4. “เนื้อหาคัดสรรสำหรับคุณ” ข้อความที่เด้งขึ้นมาใน การแจ้งเตือนของเน็ตฟลิกซ์ก็เป็นการวิเคราะห์จาก Big Data ของหนังที่สมาชิกคนนั้นเคยดู และเพื่อเลือกหนังที่คาดว่าจะถูกใจสมาชิกคนนั้น ๆ
  5. Trending Now ของประเทศ นั้น ๆ เพื่อแสดงให้เห็นว่า Community หรือ สังคมนั้น ๆ กำลังนิยมรับชมอะไรกันอยู่บ้าง
ภาพนี้แสดงถึง Art Work ของหน้าปกหนัง ของซีรี่ย์เรื่อง Stranger Things อย่างที่เห็น แต่ละ Art Work แสดงถึงอารมณ์ของ ซีรี่ย์ที่แตกต่างกัน ดังนั้นแต่ละ Art Work ก็มีส่วนสำคัญ กับการเชิญชวนมาดูซีรี่ย์เรื่องนี้

จุดมุ่งหมายของระบบ Personalization หรือ Recommender System ของเน็ตฟลิกซ์คือเพื่อเพิ่มความพึงพอใจของสมาชิก โดยการช่วยสมาชิกค้นหาหนังที่ตัวจะชอบ  ซึ่งระบบนี้มันซับซ้อนกว่าที่เราคิด เพราะการที่จะวางโครงสร้างของแพลตฟอร์มให้สามารถเก็บข้อมูล สร้างระบบ Machine learning และทำการ Deploy ได้นั้นไม่ใช่เรื่องง่าย และหนึ่งในอุปสรรคที่ใหญ่คือเรื่องของเวลา

อุปสรรคที่ใหญ่ของการพัฒนาระบบ Personalization หรือ Recommender System คือเรื่องของเวลา

เวลาทำให้อะไรหลาย ๆ อย่างไม่แน่นอน ยกตัวอย่างเช่น พฤติกรรรมการดูหนังของสมาชิก ดังนั้นการวางระบบ Personalize ให้ปรับตามการเปลี่ยนแปลงต่าง ๆ บนแพลตฟอร์มของเน็ตฟลิกซ์ถือเป็นโจทย์ที่ใหญ่ เน็ตฟลิกซ์ได้วางระบบที่จะมีการ Train โมเดลในออฟไลน์ ตามมาด้วย A/B Testing บนออนไลน์ การทำ A/B Testing เป็นกระบวนการที่ทดสอบว่า สมาชิก จะชอบ การแนะนำหนังแบบไหน Art work แบบไหน มากที่สุด เพื่อนำมาปรับปรุงตัวโมเดลเรื่อย ๆ หลังจากใช้งานจริง

วงจรนวัตกรรม (Innovation Cycle) ของระบบ Personalization ของเน็ตฟลิกซ์ตั้งแต่ร่างไอเดียไปจนถึง Deployment เพื่อใช้งานจริงบนแพลตฟอร์ม

เน็ตฟลิกซ์ให้ความสำคัญกับความเชื่อถือได้ (Reliability) ของโมเดล ขณะที่ Offline Model ต้อง Train อย่างเชื่อถือได้นั้น Online Model ก็ต้อง Perform อย่างเชื่อถือได้เช่นกัน การฝึกซ้ำ (Retraining) ของโมเดลต้องทำได้โดยอัตโนมัติและสามารถ Train ซ้ำได้เรื่อย ๆ

โมเดลในฝั่งออฟไลน์

แน่นอนว่าเวลาอาจทำให้ข้อมูลมีการเปลี่ยนแปลงโดยฉับพลัน หรืออาจมีปัญหาทางเทคนิคในขั้นตอนเก็บข้อมูล ซึ่งสองปัญหานี้จะส่งผลกับ Performance ของโมเดลเป็นแน่ ดังนั้นระบบในการตรวจจับปัญหาเป็นสิ่งที่จำเป็นเพื่อป้องกันไม่ให้โมเดลที่มี Performance ต่ำถูกเลือกมาใช้บนแพลตฟอร์ม หนึ่งในระบบนี้ของเน็ตฟลิกซ์ใช้ Anomaly Detection เพื่อตรวจจับความผิดปกติในชุดข้อมูลที่นำมาใช้พัฒนาโมเดล

Anomaly Detection ในการตรวจวัดตัวเลขของจำนวนข้อมูลที่ถูกใช้เพื่อ train โมเดล ส่วนที่วงสีแดงเป็นบริเวณที่ข้อมูลมีจำนวนลดลงอย่างประหลาด

จากภาพจะเห็นได้ชัดว่า จำนวนตัวอย่างที่ใช้ Train ตกลงจนผิดปกติในบริเวณที่วงสีแดงไว้ เมื่อเกิดเหตุเช่นนี้ระบบ Anomaly Detection ของเน็ตฟลิกซ์จะส่งสัญญาณเตือนและหยุดการเผยแพร่ (Publish) ไว้ก่อน นอกจากตัวอย่างนี้แล้วยังมีตัวอย่างอื่นอีกมากมายในส่วนของการ Training ในฝั่งออฟไลน์ เช่น การ Train โมเดลจากการสุ่มที่หลากหลาย เพื่อป้องกันการ Overfit

โมเดลในฝั่งออนไลน์

ในฝั่งของด้านออนไลน์นั้น การตรวจสอบความผิดพลาดเป็นส่วนสำคัญ เพราะมันคือสิ่งที่ลูกค้าจะเห็นแล้วเน็ตฟลิกซ์ได้ทำการเช็คค่าที่ควรจะคงที่ ยกตัวอย่างเช่น ค่าความน่าจะเป็น (Probability) ที่ไม่ควรมากกว่า 1 หรือในกรณีที่ Output ของโมเดลเป็น NaN หรือ infinity ซึ่งกรณีพวกนี้จะเกิดขึ้นได้โดยการมี Unexpected Change, Bad Assumption หรือ Engineering Issue ดังนั้นจึงควรต้องมีการตั้ง เงื่อนไขเพื่อป้องกันการนำโมเดลที่มีข้อบกพร่องไปใช้กับลูกค้า

หลังจากนั้นส่วนหลักจะเป็นการเก็บผลลัพธ์ดูว่าตัวโมเดลที่ทางเน็ตฟลิกซ์ได้ Deploy ไปนั้นดีแค่ไหนโดยการดูว่าสิ่งที่แนะนำไป สมาชิกถูกใจหรือเปล่า เมื่อเก็บผลมาได้แล้วก็จะมา Evaluate ตัวโมเดลกันซึ่งหากโมเดลปัจจุบันไม่สามารถทำงานได้ดี จะได้ดำเนินการแก้ไข เช่นการดึงโมเดลตัวเก่ามาใช้ไปพลาง แล้วค่อยมาหาสาเหตุว่าทำไมโมเดลถึงมี Performance ที่ต่ำลง อาจเป็นเพราะข้อมูลที่ใช้ Train มีการเปลี่ยนแปลง หรือข้อมูลที่ใช้ Train มีอายุที่เก่าเกินไปสำหรับพฤติกรรมการดูในปัจจุบัน จากตัวอย่างนี้จะเห็นได้ชัดว่าเน็ตฟลิกซ์ได้มีการวางแผนที่รอบคอบในการป้องกันความผิดพลาดเชิงเทคนิคต่าง ๆ ที่อาจเกิดขึ้นเมื่อไรก็ได้


การใช้ข้อมูลทำให้เน็ตฟลิกซ์ทราบว่าควรผลิต Content หรือออก Promotion อะไร

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

แหล่งที่มา: https://www.slideshare.net/justinbasilico/making-netflix-machine-learning-algorithms-reliable




Senior Data Scientist
Big Data Institute (Public Organization), BDI

แบ่งปันบทความ

กลุ่มเนื้อหา

แท็กยอดนิยม

แจ้งเรื่องที่อยากอ่าน

คุณสามารถแจ้งเรื่องที่อยากอ่านให้เราทราบได้ !
และเราจะนำไปพัฒนาบทความให้มีเนื้อหาที่น่าสนใจมากขึ้น

PDPA Icon

We use cookies to optimize your browsing experience and improve our website’s performance. Learn more at our Privacy Policy and adjust your cookie settings at Settings

Privacy Preferences

You can choose your cookie settings by turning on/off each type of cookie as needed, except for necessary cookies.

Accept all
Manage Consent Preferences
  • Strictly Necessary Cookies
    Always Active

    This type of cookie is essential for providing services on the website of the Personal Data Protection Committee Office, allowing you to access various parts of the site. It also helps remember information you have previously provided through the website. Disabling this type of cookie will result in your inability to use key services of the Personal Data Protection Committee Office that require cookies to function.
    Cookies Details

  • Performance Cookies

    This type of cookie helps the Big Data Institute (Public Organization) understand user interactions with its website services, including which pages or areas of the site are most popular, as well as analyze other related data. The Big Data Institute (Public Organization) also uses this information to improve website performance and gain a better understanding of user behavior. Although the data collected by these cookies is non-identifiable and used solely for statistical analysis, disabling them will prevent the Big Data Institute (Public Organization) from knowing the number of website visitors and from evaluating the quality of its services.

  • Functional Cookies

    This type of cookie enables the Big Data Institute (Public Organization)’s website to remember the choices you have made and deliver enhanced features and content tailored to your usage. For example, it can remember your username or changes you have made to font sizes or other customizable settings on the page. Disabling these cookies may result in the website not functioning properly.

  • Targeting Cookies

    "This type of cookie helps the Big Data Institute (Public Organization) understand user interactions with its website services, including which pages or areas of the site are most popular, as well as analyze other related data. The Big Data Institute (Public Organization) also uses this information to improve website performance and gain a better understanding of user behavior. Although the data collected by these cookies is non-identifiable and used solely for statistical analysis, disabling them will prevent the Big Data Institute (Public Organization) from knowing the number of website visitors and from evaluating the quality of its services.

Save settings
This site is registered on wpml.org as a development site. Switch to a production site key to remove this banner.