สวัสดีทุกคน! ฉันชื่อ Sasha เป็น CTO และผู้ร่วมก่อตั้ง LoyaltyLab เมื่อสองปีก่อน ฉันและเพื่อนก็เหมือนกับนักเรียนที่ยากจนทุกคนไปซื้อเบียร์ในร้านค้าใกล้บ้านเราในตอนเย็น เราเสียใจมากที่ผู้ค้าปลีกรู้ว่าเราจะมาเพื่อดื่มเบียร์ จึงไม่เสนอส่วนลดสำหรับมันฝรั่งทอดหรือแคร็กเกอร์ แม้ว่านี่จะสมเหตุสมผลก็ตาม! เราไม่เข้าใจว่าทำไมสถานการณ์นี้จึงเกิดขึ้นและตัดสินใจก่อตั้งบริษัทของเราเอง เป็นโบนัส ให้ส่วนลดตัวเองทุกวันศุกร์สำหรับชิปเดียวกันนั้น
และทั้งหมดนี้ก็มาถึงจุดที่ฉันกำลังนำเสนอเนื้อหาด้านเทคนิคของผลิตภัณฑ์
การแนะนำ
เช่นเดียวกับคนอื่นๆ ในช่วงเริ่มต้นของการเดินทาง เราเริ่มต้นด้วยภาพรวมของวิธีการสร้างระบบผู้แนะนำ และสถาปัตยกรรมที่ได้รับความนิยมมากที่สุดก็กลายเป็นประเภทต่อไปนี้:
ประกอบด้วยสองส่วน:
- การสุ่มตัวอย่างผู้สมัครเพื่อรับคำแนะนำโดยใช้แบบจำลองที่ง่ายและรวดเร็ว ซึ่งโดยปกติจะเป็นแบบจำลองการทำงานร่วมกัน
- การจัดอันดับผู้สมัครที่มีโมเดลเนื้อหาที่ซับซ้อนและช้ากว่า โดยคำนึงถึงคุณลักษณะที่เป็นไปได้ทั้งหมดในข้อมูล
ต่อไปนี้ฉันจะใช้คำต่อไปนี้:
- ผู้สมัคร / ผู้สมัครเพื่อขอคำแนะนำ — คู่ผู้ใช้-ผลิตภัณฑ์ที่อาจรวมอยู่ในคำแนะนำในการผลิต
- วิธีการสกัดผู้สมัคร/ผู้สกัด/วิธีการสกัดผู้สมัคร — กระบวนการหรือวิธีการแยก “ผู้สมัครที่ได้รับคำแนะนำ” ออกจากข้อมูลที่มีอยู่
ขั้นตอนแรกมักจะเกี่ยวข้องกับการใช้การกรองร่วมกันรูปแบบต่างๆ ที่นิยมมากที่สุด -
ก่อนที่ฉันจะอธิบายแนวทางของเราต่อไป สิ่งสำคัญคือต้องทราบว่าในคำแนะนำแบบเรียลไทม์ เมื่อเป็นสิ่งสำคัญที่เราต้องคำนึงถึงข้อมูลที่เกิดขึ้นเมื่อ 30 นาทีที่แล้ว มีแนวทางไม่มากนักที่สามารถทำงานได้ในเวลาที่กำหนด แต่ในกรณีของเรา เราต้องรวบรวมคำแนะนำไม่เกินวันละครั้ง และในกรณีส่วนใหญ่ สัปดาห์ละครั้ง ซึ่งทำให้เราใช้แบบจำลองที่ซับซ้อนและปรับปรุงคุณภาพได้หลายเท่า
เรามาใช้เป็นพื้นฐานว่าเมตริกใดที่ ALS เท่านั้นแสดงในงานคัดแยกผู้สมัคร ตัวชี้วัดหลักที่เราตรวจสอบคือ:
- ความแม่นยำ - สัดส่วนของผู้สมัครที่เลือกอย่างถูกต้องจากกลุ่มตัวอย่าง
- การเรียกคืนคือสัดส่วนของผู้สมัครที่เกิดขึ้นจากสัดส่วนที่อยู่ในช่วงเป้าหมายจริงๆ
- F1-score - การวัด F คำนวณจากสองจุดก่อนหน้า
นอกจากนี้เรายังจะดูตัวชี้วัดของโมเดลสุดท้ายหลังจากการฝึกการไล่ระดับสีด้วยคุณสมบัติเนื้อหาเพิ่มเติม นอกจากนี้ยังมี 3 ตัวชี้วัดหลักที่นี่:
- precision@5 - เปอร์เซ็นต์เฉลี่ยของผลิตภัณฑ์จาก 5 อันดับแรกในแง่ของความน่าจะเป็นสำหรับผู้ซื้อแต่ละราย
- response-rate@5 - การแปลงลูกค้าจากการเยี่ยมชมร้านค้าเป็นการซื้อข้อเสนอส่วนตัวอย่างน้อยหนึ่งรายการ (ผลิตภัณฑ์ 5 รายการในข้อเสนอเดียว)
- เฉลี่ย roc-auc ต่อผู้ใช้ - เฉลี่ย
roc-auc สำหรับผู้ซื้อแต่ละราย
สิ่งสำคัญคือต้องทราบว่าการวัดทั้งหมดเหล่านี้มีการวัดผล
ก่อนที่เราจะอธิบายแนวทางของเรา ก่อนอื่นเราจะดูที่พื้นฐาน ซึ่งเป็นโมเดลที่ได้รับการฝึกอบรม ALS
ตัวชี้วัดการรับผู้สมัคร:
ตัวชี้วัดสุดท้าย:
ฉันถือว่าการใช้งานอัลกอริธึมทั้งหมดเป็นเพียงสมมติฐานทางธุรกิจบางประเภท ดังนั้น โดยคร่าวๆ แล้ว โมเดลการทำงานร่วมกันใดๆ ก็ตามถือได้ว่าเป็นสมมติฐานที่ว่า "ผู้คนมักจะซื้อในสิ่งที่คนที่คล้ายกับพวกเขาซื้อ" ดังที่ฉันได้กล่าวไปแล้ว เราไม่ได้จำกัดตัวเองอยู่แค่ความหมายดังกล่าว และนี่คือสมมติฐานบางส่วนที่ทำงานได้ดีกับข้อมูลในการขายปลีกแบบออฟไลน์:
- ซึ่งผมเคยซื้อมาแล้ว
- คล้ายกับสิ่งที่ฉันซื้อมาก่อน
- ระยะเวลาการซื้อที่ผ่านมานาน
- ยอดนิยมตามหมวดหมู่/แบรนด์
- การซื้อสินค้าที่แตกต่างกันสลับกันในแต่ละสัปดาห์ (เครือ Markov)
- ผลิตภัณฑ์ที่คล้ายกับผู้ซื้อ ตามคุณลักษณะที่สร้างโดยรุ่นต่างๆ (Word2Vec, DSSM ฯลฯ)
ก่อนหน้านี้คุณซื้ออะไรมาบ้าง?
ฮิวริสติกที่ชัดเจนที่สุดซึ่งใช้ได้ผลดีมากในการขายปลีกของชำ ที่นี่เราจะนำสินค้าทั้งหมดที่ผู้ถือบัตรสะสมคะแนนซื้อในช่วง K วันที่ผ่านมา (ปกติคือ 1-3 สัปดาห์) หรือ K วันเมื่อปีที่แล้ว เมื่อใช้วิธีนี้เท่านั้น เราได้รับหน่วยวัดต่อไปนี้:
เห็นได้ชัดว่ายิ่งเราใช้เวลานานเท่าใด เราก็จะจำได้มากขึ้นและความแม่นยำก็น้อยลงและในทางกลับกัน โดยเฉลี่ยแล้ว “2 สัปดาห์ที่ผ่านมา” จะให้ผลลัพธ์ที่ดีกว่าแก่ลูกค้า
คล้ายกับสิ่งที่ฉันซื้อมาก่อน
ไม่น่าแปลกใจเลยที่การขายปลีกสินค้าอุปโภคบริโภค "สิ่งที่ฉันซื้อก่อนหน้านี้" จะทำงานได้ดี แต่การแยกผู้สมัครออกจากสิ่งที่ผู้ใช้ซื้อไปแล้วนั้นไม่เจ๋งนัก เนื่องจากไม่น่าจะทำให้ผู้ซื้อประหลาดใจด้วยผลิตภัณฑ์ใหม่ ดังนั้นเราจึงเสนอให้ปรับปรุงฮิวริสติกนี้เล็กน้อยโดยใช้โมเดลการทำงานร่วมกันแบบเดียวกัน จากเวกเตอร์ที่เราได้รับระหว่างการฝึกอบรม ALS เราสามารถรับผลิตภัณฑ์ที่คล้ายกับที่ผู้ใช้ซื้อไปแล้ว แนวคิดนี้คล้ายกับ “วิดีโอที่คล้ายกัน” มากในบริการสำหรับการดูเนื้อหาวิดีโอ แต่เนื่องจากเราไม่รู้ว่าผู้ใช้กิน/ซื้ออะไรในช่วงเวลาใดเวลาหนึ่ง เราจึงสามารถมองหาได้เฉพาะสิ่งที่คล้ายกับสิ่งที่เขาซื้อไปแล้วโดยเฉพาะ เนื่องจากเรารู้อยู่แล้วว่ามันใช้งานได้ดีแค่ไหน เมื่อใช้วิธีนี้กับธุรกรรมของผู้ใช้ในช่วง 2 สัปดาห์ที่ผ่านมา เราได้รับเมตริกต่อไปนี้
ที่นี่ k — จำนวนผลิตภัณฑ์ที่คล้ายกันซึ่งดึงมาสำหรับผลิตภัณฑ์แต่ละรายการที่ผู้ซื้อซื้อในช่วง 14 วันที่ผ่านมา
แนวทางนี้ใช้ได้ผลดีเป็นพิเศษกับลูกค้าของเรา ซึ่งเป็นสิ่งสำคัญที่จะไม่แนะนำสิ่งใดก็ตามที่มีอยู่ในประวัติการซื้อของผู้ใช้อยู่แล้ว
ระยะเวลาการซื้อล่าช้า
ดังที่เราได้ทราบไปแล้ว เนื่องจากความถี่ในการซื้อสินค้าสูง วิธีแรกจึงใช้ได้ดีกับความต้องการเฉพาะของเรา แต่สินค้าอย่างผงซักฟอก/แชมพู/อื่นๆล่ะ นั่นคือด้วยผลิตภัณฑ์ที่ไม่น่าจะจำเป็นทุกๆ สัปดาห์หรือสองสัปดาห์ และวิธีการก่อนหน้านี้ไม่สามารถสกัดออกมาได้ สิ่งนี้นำไปสู่แนวคิดต่อไปนี้ - เสนอให้คำนวณระยะเวลาการซื้อของผลิตภัณฑ์แต่ละรายการโดยเฉลี่ยสำหรับลูกค้าที่ซื้อสินค้ามากกว่า k ครั้งหนึ่ง. จากนั้นแยกสิ่งที่ผู้ซื้อน่าจะหมดไปแล้ว คุณสามารถตรวจสอบระยะเวลาที่คำนวณสำหรับสินค้าด้วยตาของคุณเพื่อความเพียงพอ:
จากนั้นเราจะดูว่าการสิ้นสุดระยะเวลาผลิตภัณฑ์อยู่ภายในช่วงเวลาที่คำแนะนำจะอยู่ในขั้นตอนการผลิตหรือไม่ และสุ่มตัวอย่างสิ่งที่เกิดขึ้น วิธีการนี้สามารถอธิบายได้ดังนี้:
ที่นี่เรามี 2 กรณีหลักที่สามารถพิจารณาได้:
- จำเป็นต้องสุ่มตัวอย่างสินค้าจากลูกค้าที่ซื้อสินค้าน้อยกว่า K เท่าหรือไม่
- จำเป็นต้องสุ่มตัวอย่างผลิตภัณฑ์หรือไม่ หากสิ้นสุดระยะเวลาก่อนถึงจุดเริ่มต้นของช่วงเป้าหมาย
กราฟต่อไปนี้แสดงผลลัพธ์ที่วิธีนี้ได้รับจากไฮเปอร์พารามิเตอร์ต่างๆ
ft — รับเฉพาะลูกค้าที่ซื้อสินค้าอย่างน้อย K (ในที่นี้คือ K=5) ครั้ง
tm — รับเฉพาะผู้สมัครที่อยู่ภายในช่วงเป้าหมายเท่านั้น
ไม่น่าแปลกใจที่เขาสามารถทำได้ (0, 0) ที่ใหญ่ที่สุด จำ และเล็กที่สุด ความแม่นยำเนื่องจากภายใต้เงื่อนไขนี้ ระบบจะดึงข้อมูลผู้สมัครมากที่สุด อย่างไรก็ตาม ผลลัพธ์ที่ดีที่สุดจะเกิดขึ้นได้เมื่อเราไม่สุ่มตัวอย่างผลิตภัณฑ์ให้กับลูกค้าที่ซื้อผลิตภัณฑ์ใดผลิตภัณฑ์หนึ่งน้อยกว่า k ครั้งและแยกออกรวมถึงสินค้าซึ่งสิ้นสุดระยะเวลานั้นอยู่ก่อนช่วงเป้าหมาย
ยอดนิยมตามหมวดหมู่
แนวคิดที่ค่อนข้างชัดเจนอีกประการหนึ่งคือการสุ่มตัวอย่างผลิตภัณฑ์ยอดนิยมจากหมวดหมู่หรือแบรนด์ต่างๆ ที่นี่เราคำนวณสำหรับผู้ซื้อแต่ละราย ท็อป-เค หมวดหมู่/แบรนด์ "ชื่นชอบ" และแยก "ยอดนิยม" ออกจากหมวดหมู่/แบรนด์นี้ ในกรณีของเรา เราจะพิจารณา "รายการโปรด" และ "ยอดนิยม" ตามจำนวนการซื้อผลิตภัณฑ์ ข้อได้เปรียบเพิ่มเติมของแนวทางนี้คือการนำไปประยุกต์ใช้ในกรณีสตาร์ทเย็น นั่นคือสำหรับลูกค้าที่ซื้อสินค้าเพียงเล็กน้อยหรือไม่ได้ไปที่ร้านเป็นเวลานานหรือเพิ่งออกบัตรสะสมคะแนน สำหรับพวกเขา การสต็อกสินค้ายอดนิยมจากลูกค้าและมีประวัติจะง่ายกว่าและดีกว่า ตัวชี้วัดผลลัพธ์คือ:
ตัวเลขที่อยู่หลังคำว่า "หมวดหมู่" ในที่นี้หมายถึงระดับการซ้อนของหมวดหมู่
โดยรวมแล้ว ก็ไม่น่าแปลกใจที่หมวดหมู่ที่แคบกว่าจะให้ผลลัพธ์ที่ดีกว่า เนื่องจากหมวดหมู่ที่แคบกว่าจะดึงสินค้าที่ "ชื่นชอบ" ออกมาได้แม่นยำยิ่งขึ้นสำหรับนักช้อป
สลับซื้อสินค้าที่แตกต่างกันในแต่ละสัปดาห์
วิธีการที่น่าสนใจที่ฉันไม่เคยเห็นในบทความเกี่ยวกับระบบผู้แนะนำนั้นค่อนข้างง่ายและในขณะเดียวกันก็ใช้วิธีทางสถิติของ Markov chains ในกรณีนี้เราใช้เวลา 2 สัปดาห์ที่แตกต่างกัน จากนั้นเราจะสร้างผลิตภัณฑ์คู่กันสำหรับลูกค้าแต่ละราย [ซื้อในสัปดาห์ที่ i]-[ซื้อในสัปดาห์ที่ j] โดยที่ j > iและจากที่นี่ เราจะคำนวณความน่าจะเป็นที่จะเปลี่ยนไปใช้ผลิตภัณฑ์อื่นในแต่ละผลิตภัณฑ์ในสัปดาห์หน้า นั่นคือสำหรับสินค้าแต่ละคู่ producti-productj เรานับจำนวนเป็นคู่ที่พบแล้วหารด้วยจำนวนคู่โดยที่ ผลิตภัณฑ์ อยู่ในสัปดาห์แรก เพื่อแยกผู้สมัคร เราจะนำใบเสร็จรับเงินล่าสุดของผู้ซื้อและแยกออกมา ท็อป-เค ผลิตภัณฑ์ถัดไปที่เป็นไปได้มากที่สุดจากเมทริกซ์การเปลี่ยนแปลงที่เราได้รับ กระบวนการสร้างเมทริกซ์การเปลี่ยนแปลงมีลักษณะดังนี้:
จากตัวอย่างจริงในเมทริกซ์ความน่าจะเป็นของการเปลี่ยนแปลง เราเห็นปรากฏการณ์ที่น่าสนใจต่อไปนี้:
ที่นี่คุณสามารถสังเกตเห็นการพึ่งพาที่น่าสนใจซึ่งเปิดเผยในพฤติกรรมผู้บริโภค ตัวอย่างเช่น ผู้ชื่นชอบผลไม้รสเปรี้ยวหรือนมยี่ห้อหนึ่งที่พวกเขามีแนวโน้มที่จะเปลี่ยนไปใช้อย่างอื่น จึงไม่น่าแปลกใจที่ผลิตภัณฑ์ที่มีความถี่ในการซื้อซ้ำสูง เช่น เนย ก็จะมาจบลงที่นี่เช่นกัน
หน่วยเมตริกในวิธีการที่มีลูกโซ่มาร์คอฟมีดังนี้:
k — จำนวนผลิตภัณฑ์ที่ได้รับสำหรับผลิตภัณฑ์ที่ซื้อแต่ละรายการจากธุรกรรมล่าสุดของผู้ซื้อ
ดังที่เราเห็น ผลลัพธ์ที่ดีที่สุดจะแสดงโดยการกำหนดค่าด้วย k=4 การเพิ่มขึ้นอย่างรวดเร็วในสัปดาห์ที่ 4 สามารถอธิบายได้จากพฤติกรรมตามฤดูกาลในช่วงวันหยุด
สินค้าที่คล้ายกันกับผู้ซื้อตามลักษณะที่สร้างขึ้นตามรุ่นต่างๆ
ตอนนี้เรามาถึงส่วนที่ยากและน่าสนใจที่สุดแล้ว - การค้นหาเพื่อนบ้านที่ใกล้ที่สุดโดยพิจารณาจากเวกเตอร์ของลูกค้าและผลิตภัณฑ์ที่สร้างขึ้นตามรุ่นต่างๆ ในงานของเราเราใช้ 3 รุ่นดังกล่าว:
- ALS
- Word2Vec (Item2Vec สำหรับงานดังกล่าว)
- อสส
เราได้จัดการกับ ALS แล้ว คุณสามารถอ่านเกี่ยวกับวิธีการเรียนรู้ได้
ที่นี่ Q — ข้อความค้นหา ข้อความค้นหาของผู้ใช้ ด[ฉัน] — เอกสาร, อินเตอร์เน็ตเพจ. ข้อมูลเข้าสู่โมเดลคือคุณลักษณะของคำขอและเพจ ตามลำดับ หลังจากแต่ละเลเยอร์อินพุตแล้ว จะมีเลเยอร์ที่เชื่อมต่อกันอย่างสมบูรณ์จำนวนหนึ่ง (multilayer perceptron) จากนั้น โมเดลจะเรียนรู้ที่จะลดโคไซน์ระหว่างเวกเตอร์ที่ได้รับในเลเยอร์สุดท้ายของโมเดล
งานแนะนำใช้สถาปัตยกรรมเดียวกันทุกประการ แทนที่จะเป็นคำขอเท่านั้นที่มีผู้ใช้ และแทนที่จะเป็นเพจ กลับกลายเป็นผลิตภัณฑ์ และในกรณีของเรา สถาปัตยกรรมนี้จะถูกแปลงเป็นดังต่อไปนี้:
ตอนนี้เพื่อตรวจสอบผลลัพธ์ ยังคงต้องครอบคลุมประเด็นสุดท้าย - หากในกรณีของ ALS และ DSSM เราได้กำหนดเวกเตอร์ผู้ใช้ไว้อย่างชัดเจน ในกรณีของ Word2Vec เราจะมีเพียงเวกเตอร์ผลิตภัณฑ์เท่านั้น ในการสร้างเวกเตอร์ผู้ใช้ เราได้กำหนดแนวทางหลักไว้ 3 แนวทาง:
- เพียงเพิ่มเวกเตอร์ จากนั้นสำหรับระยะโคไซน์ ปรากฎว่าเราเพียงเฉลี่ยผลิตภัณฑ์ในประวัติการซื้อ
- ผลรวมเวกเตอร์พร้อมการถ่วงน้ำหนักด้วยเวลา
- การชั่งน้ำหนักสินค้าด้วยค่าสัมประสิทธิ์ TF-IDF
ในกรณีของการถ่วงน้ำหนักเชิงเส้นของเวกเตอร์ผู้ซื้อ เราจะดำเนินการตามสมมติฐานที่ว่าผลิตภัณฑ์ที่ผู้ใช้ซื้อเมื่อวานนี้มีอิทธิพลต่อพฤติกรรมของเขามากกว่าผลิตภัณฑ์ที่เขาซื้อเมื่อหกเดือนที่แล้ว ดังนั้นเราจึงพิจารณาสัปดาห์ก่อนหน้าของผู้ซื้อด้วยอัตราต่อรอง 1 และสิ่งที่เกิดขึ้นต่อไปด้วยอัตราต่อรอง XNUMX/XNUMX, ⅓ ฯลฯ:
สำหรับค่าสัมประสิทธิ์ TF-IDF เราทำเช่นเดียวกับใน TF-IDF สำหรับข้อความ เพียงแต่เราถือว่าผู้ซื้อเป็นเอกสาร และเช็คเป็นข้อเสนอ ตามลำดับ คำคือผลิตภัณฑ์ ด้วยวิธีนี้ เวกเตอร์ของผู้ใช้จะเปลี่ยนไปสู่สินค้าหายากมากขึ้น ในขณะที่สินค้าที่ใช้บ่อยและคุ้นเคยสำหรับผู้ซื้อจะไม่เปลี่ยนแปลงมากนัก วิธีการนี้สามารถอธิบายได้ดังนี้:
ตอนนี้เรามาดูตัวชี้วัดกัน นี่คือลักษณะของผลลัพธ์ ALS:
ตัวชี้วัดสำหรับ Item2Vec ที่มีรูปแบบที่แตกต่างกันของการสร้างเวกเตอร์ของผู้ซื้อ:
ในกรณีนี้ จะใช้โมเดลเดียวกันทุกประการกับค่าพื้นฐานของเรา ข้อแตกต่างเพียงอย่างเดียวคือ k ตัวใดที่เราจะใช้ หากต้องการใช้เฉพาะโมเดลการทำงานร่วมกัน คุณต้องนำผลิตภัณฑ์ที่ใกล้เคียงที่สุดประมาณ 50-70 รายการสำหรับลูกค้าแต่ละราย
และหน่วยเมตริกตาม DSSM:
จะรวมวิธีการทั้งหมดได้อย่างไร?
เจ๋งเลยคุณพูด แต่จะทำอย่างไรกับชุดเครื่องมือสกัดผู้สมัครจำนวนมากเช่นนี้? จะเลือกการกำหนดค่าที่เหมาะสมที่สุดสำหรับข้อมูลของคุณได้อย่างไร? ที่นี่เรามีปัญหาหลายประการ:
- มีความจำเป็นต้องจำกัดพื้นที่การค้นหาสำหรับไฮเปอร์พารามิเตอร์ในแต่ละวิธี แน่นอนว่ามันไม่ต่อเนื่องกันทุกที่ แต่จำนวนคะแนนที่เป็นไปได้นั้นมีมาก
- เมื่อใช้ตัวอย่างวิธีการเฉพาะจำนวนจำกัดกับไฮเปอร์พารามิเตอร์เฉพาะ คุณจะเลือกการกำหนดค่าที่ดีที่สุดสำหรับเมตริกของคุณได้อย่างไร
เรายังไม่พบคำตอบที่ถูกต้องสำหรับคำถามแรก ดังนั้นเราจึงดำเนินการดังต่อไปนี้: สำหรับแต่ละวิธี จะมีการเขียนตัวจำกัดพื้นที่การค้นหาไฮเปอร์พารามิเตอร์ ขึ้นอยู่กับสถิติบางอย่างของข้อมูลที่เรามี ดังนั้นเมื่อทราบระยะเวลาเฉลี่ยระหว่างการซื้อจากผู้คน เราก็สามารถเดาได้ว่าจะใช้วิธี "สิ่งที่ซื้อไปแล้ว" และ "ระยะเวลาการซื้อที่ผ่านมานาน" ในช่วงเวลาใด
และหลังจากที่เราพิจารณารูปแบบต่างๆ ของวิธีการต่างๆ ในจำนวนที่เพียงพอแล้ว เราจะสังเกตสิ่งต่อไปนี้: การใช้งานแต่ละครั้งจะแยกตัวเลือกจำนวนหนึ่งและมีค่าเมตริกหลักที่แน่นอนสำหรับเรา (เรียกคืน) เราต้องการได้ผู้สมัครจำนวนหนึ่งทั้งหมด โดยขึ้นอยู่กับพลังการประมวลผลที่อนุญาตของเรา พร้อมด้วยตัวชี้วัดสูงสุดที่เป็นไปได้ ที่นี่ปัญหาพังทลายลงในปัญหากระเป๋าเป้สะพายหลังอย่างสวยงาม
ในที่นี้ จำนวนผู้สมัครคือน้ำหนักของแท่งโลหะ และวิธีการเรียกคืนคือมูลค่าของมัน อย่างไรก็ตาม มีอีก 2 ประเด็นที่ควรคำนึงถึงเมื่อใช้อัลกอริทึม:
- วิธีการอาจมีทับซ้อนกันในผู้สมัครที่พวกเขาดึงข้อมูล
- ในบางกรณี จะใช้วิธีหนึ่งสองครั้งด้วยพารามิเตอร์ที่แตกต่างกันจะถูกต้อง และผลลัพธ์ที่เป็นตัวเลือกจากวิธีแรกจะไม่ใช่สับเซตของวิธีที่สอง
ตัวอย่างเช่น หากเราใช้วิธี "สิ่งที่ฉันได้ซื้อไปแล้ว" โดยมีช่วงเวลาในการดึงข้อมูลต่างกัน ชุดผู้สมัครก็จะซ้อนกันอยู่ภายในกัน ในเวลาเดียวกันพารามิเตอร์ที่แตกต่างกันใน "การซื้อเป็นระยะ" ที่ทางออกไม่ได้ให้จุดตัดที่สมบูรณ์ ดังนั้นเราจึงแบ่งวิธีการสุ่มตัวอย่างด้วยพารามิเตอร์ที่แตกต่างกันออกเป็นบล็อกต่างๆ เพื่อให้จากแต่ละบล็อก เราต้องการใช้วิธีการแยกตัวอย่างด้วยไฮเปอร์พารามิเตอร์เฉพาะเพียงหนึ่งวิธี ในการทำเช่นนี้คุณต้องฉลาดเล็กน้อยในการนำปัญหาเป้ไปใช้ แต่ซีมโทติกส์และผลลัพธ์จะไม่เปลี่ยนแปลง
การผสมผสานที่ชาญฉลาดนี้ช่วยให้เราได้รับหน่วยวัดต่อไปนี้เมื่อเปรียบเทียบกับโมเดลการทำงานร่วมกัน:
ในการวัดสุดท้าย เราจะเห็นภาพต่อไปนี้:
อย่างไรก็ตาม คุณจะสังเกตเห็นว่ามีจุดหนึ่งที่ไม่เปิดเผยสำหรับคำแนะนำที่เป็นประโยชน์สำหรับธุรกิจ ตอนนี้เราเพิ่งได้เรียนรู้วิธีคาดการณ์สิ่งที่ผู้ใช้จะซื้อได้อย่างดีเยี่ยม เช่น สัปดาห์หน้า แต่การให้ส่วนลดกับของที่เขาจะซื้ออยู่แล้วนั้นไม่เจ๋งนัก แต่ก็เป็นเรื่องดีที่จะเพิ่มความคาดหวังให้สูงสุด เช่น เมตริกต่อไปนี้:
- มาร์จิ้น/มูลค่าการซื้อขายตามคำแนะนำส่วนตัว
- การตรวจสอบลูกค้าโดยเฉลี่ย
- ความถี่ในการเข้าชม
ดังนั้นเราจึงคูณความน่าจะเป็นที่ได้รับด้วยค่าสัมประสิทธิ์ต่างๆ และจัดลำดับใหม่เพื่อให้ผลิตภัณฑ์ที่ส่งผลต่อเมตริกด้านบนขึ้นไปอยู่ด้านบน ไม่มีวิธีแก้ปัญหาแบบสำเร็จรูปว่าควรใช้แนวทางใดดีที่สุด เรายังทดลองกับค่าสัมประสิทธิ์ดังกล่าวโดยตรงในการผลิต แต่นี่คือเทคนิคที่น่าสนใจซึ่งส่วนใหญ่มักให้ผลลัพธ์ที่ดีที่สุดแก่เรา:
- คูณด้วยราคา/กำไรขั้นต้นของผลิตภัณฑ์
- คูณด้วยใบเสร็จรับเงินโดยเฉลี่ยที่สินค้าปรากฏ ดังนั้นสินค้าจะเกิดขึ้นโดยที่พวกเขามักจะเอาอย่างอื่นไปด้วย
- คูณด้วยความถี่เฉลี่ยของการเข้าชมโดยผู้ซื้อผลิตภัณฑ์นี้ โดยอิงตามสมมติฐานที่ว่าผลิตภัณฑ์นี้กระตุ้นให้ผู้คนกลับมาซื้อผลิตภัณฑ์นี้บ่อยขึ้น
หลังจากทำการทดลองด้วยค่าสัมประสิทธิ์แล้ว เราได้รับเมตริกต่อไปนี้ในการผลิต:
ที่นี่ การแปลงผลิตภัณฑ์โดยรวม — ส่วนแบ่งของผลิตภัณฑ์ที่ซื้อจากผลิตภัณฑ์ทั้งหมดในคำแนะนำที่เราสร้างขึ้น
ผู้อ่านที่สนใจจะสังเกตเห็นความแตกต่างที่สำคัญระหว่างการวัดแบบออฟไลน์และแบบออนไลน์ ลักษณะการทำงานนี้อธิบายได้จากข้อเท็จจริงที่ว่าไม่ใช่ทุกตัวกรองแบบไดนามิกสำหรับผลิตภัณฑ์ที่สามารถแนะนำได้เมื่อฝึกโมเดล สำหรับเรา เป็นเรื่องปกติที่ผู้สมัครครึ่งหนึ่งที่ดึงมาสามารถกรองออกได้ ความเฉพาะเจาะจงนี้เป็นเรื่องปกติในอุตสาหกรรมของเรา
ในแง่ของรายได้ได้รับเรื่องราวต่อไปนี้ชัดเจนว่าหลังจากเปิดตัวคำแนะนำรายได้ของกลุ่มทดสอบเติบโตอย่างแข็งแกร่งขณะนี้รายได้ที่เพิ่มขึ้นโดยเฉลี่ยตามคำแนะนำของเราคือ 3-4%:
โดยสรุป ฉันอยากจะบอกว่าหากคุณต้องการคำแนะนำที่ไม่ใช่แบบเรียลไทม์ คุณภาพที่เพิ่มขึ้นอย่างมากสามารถพบได้ในการทดลองโดยแยกผู้สมัครเพื่อรับคำแนะนำ การใช้เวลาจำนวนมากในการผลิตทำให้สามารถรวมวิธีการดีๆ มากมายเข้าด้วยกัน ซึ่งโดยรวมแล้วจะให้ผลลัพธ์ที่ยอดเยี่ยมสำหรับธุรกิจ
ฉันยินดีที่จะพูดคุยในความคิดเห็นกับใครก็ตามที่พบว่าเนื้อหาน่าสนใจ สามารถสอบถามส่วนตัวได้ที่
ที่มา: will.com