การรักษาลูกค้า: วิธีที่เราเขียนเครื่องมือโอเพ่นซอร์สสำหรับการวิเคราะห์ผลิตภัณฑ์ใน Python และ Pandas

สวัสดีฮับ บทความนี้เกี่ยวข้องกับผลลัพธ์ของการพัฒนาชุดวิธีการและเครื่องมือสี่ปีสำหรับการประมวลผลวิถีการเคลื่อนไหวของผู้ใช้ในแอปพลิเคชันหรือเว็บไซต์ ผู้เขียนการพัฒนา - แม็กซิม ก็อดซี่ซึ่งเป็นหัวหน้าทีมผู้สร้างผลิตภัณฑ์และเป็นผู้เขียนบทความด้วย ตัวผลิตภัณฑ์มีชื่อว่า Retentioneering ซึ่งปัจจุบันถูกแปลงเป็นไลบรารีโอเพ่นซอร์สและโพสต์บน Github เพื่อให้ทุกคนสามารถใช้งานได้ ทั้งหมดนี้อาจเป็นที่สนใจของผู้ที่เกี่ยวข้องกับการวิเคราะห์ผลิตภัณฑ์และการตลาด การส่งเสริมการขาย และการพัฒนาผลิตภัณฑ์ โดยวิธีการที่Habré มีการเผยแพร่บทความเกี่ยวกับกรณีหนึ่งของการทำงานกับ Retentioneering แล้ว. วัสดุใหม่อธิบายว่าผลิตภัณฑ์สามารถทำอะไรได้บ้างและนำไปใช้ได้อย่างไร

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

Retentioneering คืออะไร และเหตุใดจึงจำเป็น?

เป้าหมายเริ่มแรกของเราคือการย้าย Growth Hacking จากโลกแห่ง "คาถาดิจิทัล" ไปสู่โลกแห่งตัวเลข การวิเคราะห์ และการพยากรณ์ ด้วยเหตุนี้ การวิเคราะห์ผลิตภัณฑ์จึงลดลงเหลือเพียงคณิตศาสตร์ล้วนๆ และการเขียนโปรแกรมสำหรับผู้ที่ชื่นชอบตัวเลขมากกว่าเรื่องราวที่น่าอัศจรรย์ และสูตรสำหรับคำศัพท์เช่น "การรีแบรนด์" "การเปลี่ยนตำแหน่ง" ฯลฯ ซึ่งฟังดูดี แต่ในทางปฏิบัติช่วยได้เพียงเล็กน้อย

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

การเก็บรักษาเป็นวิธีและเครื่องมือซอฟต์แวร์เชิงวิเคราะห์ที่สามารถปรับและรวมเข้ากับผลิตภัณฑ์ดิจิทัล (และไม่เพียงเท่านั้น)

เราเริ่มทำงานกับผลิตภัณฑ์ในปี 2015 ตอนนี้นี่เป็นชุดเครื่องมือสำเร็จรูปใน Python และ Pandas สำหรับการทำงานกับข้อมูล โมเดลการเรียนรู้ของเครื่องที่มี API ที่คล้ายกับ sklearn เครื่องมือสำหรับการตีความผลลัพธ์ของโมเดลการเรียนรู้ของเครื่อง eli5 และรูปร่าง

มันห่อไปหมดแล้ว ไปยังไลบรารีโอเพ่นซอร์สที่สะดวกสบายในพื้นที่เก็บข้อมูล Github แบบเปิด - เครื่องมือการเก็บข้อมูล. การใช้ไลบรารีไม่ใช่เรื่องยาก เกือบทุกคนที่ชื่นชอบการวิเคราะห์ผลิตภัณฑ์แต่ไม่เคยเขียนโค้ดมาก่อน สามารถใช้วิธีการวิเคราะห์ของเรากับข้อมูลของตนได้อย่างอิสระและไม่ต้องเสียเวลาลงทุนมากนัก

โปรแกรมเมอร์ ผู้สร้างแอปพลิเคชัน หรือสมาชิกของทีมพัฒนาหรือทดสอบที่ไม่เคยทำการวิเคราะห์มาก่อนสามารถเริ่มเล่นกับโค้ดนี้และดูรูปแบบการใช้งานแอปพลิเคชันของตนได้โดยไม่ต้องอาศัยความช่วยเหลือจากภายนอก

วิถีผู้ใช้เป็นองค์ประกอบพื้นฐานของการวิเคราะห์และวิธีการประมวลผล

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

หากคุณใช้ข้อมูลเส้นทางของกลุ่มผู้ใช้และศึกษาว่าการเปลี่ยนมีโครงสร้างอย่างไร คุณจะสามารถติดตามได้อย่างแน่ชัดว่าพฤติกรรมของผู้ใช้ในแอปพลิเคชันมีโครงสร้างอย่างไร การทำเช่นนี้สะดวกผ่านกราฟที่สถานะเป็นโหนด และการเปลี่ยนระหว่างสถานะเป็นขอบ:

การรักษาลูกค้า: วิธีที่เราเขียนเครื่องมือโอเพ่นซอร์สสำหรับการวิเคราะห์ผลิตภัณฑ์ใน Python และ Pandas

“ วิถี” เป็นแนวคิดที่สะดวกมาก - ประกอบด้วยข้อมูลโดยละเอียดเกี่ยวกับการกระทำของผู้ใช้ทั้งหมดโดยสามารถเพิ่มข้อมูลเพิ่มเติมลงในคำอธิบายของการกระทำเหล่านี้ได้ ทำให้มันเป็นวัตถุสากล หากคุณมีเครื่องมือที่สวยงามและสะดวกสบายที่ช่วยให้คุณทำงานกับวิถีได้ คุณสามารถค้นหาความคล้ายคลึงและแบ่งส่วนพวกมันได้

การแบ่งส่วนวิถีอาจดูซับซ้อนมากในตอนแรก ในสถานการณ์ปกติ เป็นกรณีนี้ - คุณต้องใช้การเปรียบเทียบเมทริกซ์การเชื่อมต่อหรือการจัดลำดับ เราจัดการหาวิธีที่ง่ายกว่า - เพื่อศึกษาวิถีจำนวนมากและแบ่งส่วนออกเป็นการรวมกลุ่ม

เมื่อปรากฎว่า เป็นไปได้ที่จะเปลี่ยนวิถีเป็นจุดโดยใช้การแสดงต่อเนื่อง เช่น TF-ไอดีเอฟ. หลังจากการเปลี่ยนแปลง วิถีโคจรจะกลายเป็นจุดในอวกาศซึ่งมีการพล็อตเหตุการณ์ปกติของเหตุการณ์ต่างๆ และการเปลี่ยนระหว่างเหตุการณ์เหล่านั้นในวิถีตามแนวแกน สิ่งนี้จากพื้นที่ขนาดใหญ่นับพันหรือมากกว่านั้น (dimS=sum(ประเภทเหตุการณ์)+sum(ngrams_2 ประเภท)) สามารถฉายภาพบนเครื่องบินได้โดยใช้ ทีเอสเอ็นอี. TSNE คือการแปลงที่ลดขนาดของปริภูมิลงเหลือ 2 แกน และหากเป็นไปได้ จะรักษาระยะห่างสัมพัทธ์ระหว่างจุดต่างๆ ไว้ ดังนั้นจึงเป็นไปได้บนแผนที่แบนซึ่งเป็นแผนที่การฉายภาพเป็นรูปเป็นร่างของวิถีเพื่อศึกษาว่าจุดของวิถีที่แตกต่างกันตั้งอยู่กันอย่างไร โดยจะวิเคราะห์ว่าพวกเขาอยู่ใกล้กันหรือต่างกันแค่ไหน ไม่ว่าจะก่อตัวเป็นกระจุกหรือกระจัดกระจายไปทั่วแผนที่ ฯลฯ:

การรักษาลูกค้า: วิธีที่เราเขียนเครื่องมือโอเพ่นซอร์สสำหรับการวิเคราะห์ผลิตภัณฑ์ใน Python และ Pandas

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

เมื่อพูดถึงวิธีมาตรฐานในการประมวลผลวิถี เราหมายถึงเครื่องมือหลักสามประการที่เรานำมาใช้ใน Retentioneering ได้แก่ กราฟ เมทริกซ์ขั้นตอน และแผนที่เส้นโครงวิถี

การทำงานกับ Google Analytics, Firebase และระบบการวิเคราะห์ที่คล้ายกันนั้นค่อนข้างซับซ้อนและไม่มีประสิทธิภาพ 100% ปัญหาคือข้อ จำกัด หลายประการสำหรับผู้ใช้ซึ่งเป็นผลมาจากงานของนักวิเคราะห์ในระบบดังกล่าวขึ้นอยู่กับการคลิกเมาส์และการเลือกชิ้น การคงผู้ใช้ทำให้สามารถทำงานกับเส้นทางของผู้ใช้ได้ ไม่ใช่แค่กับช่องทางเท่านั้น ดังเช่นใน Google Analytics ซึ่งระดับรายละเอียดมักจะลดลงเหลือเพียงช่องทาง แม้ว่าจะสร้างขึ้นสำหรับกลุ่มใดกลุ่มหนึ่งก็ตาม

การเก็บรักษาและกรณีต่างๆ

เพื่อเป็นตัวอย่างของการใช้เครื่องมือที่พัฒนาขึ้น เราสามารถอ้างถึงกรณีของบริการเฉพาะกลุ่มขนาดใหญ่ในรัสเซียได้ บริษัทนี้มีแอพพลิเคชั่นบนมือถือระบบ Android ที่ได้รับความนิยมในหมู่ลูกค้า มูลค่าการซื้อขายต่อปีจากแอปพลิเคชันมือถืออยู่ที่ประมาณ 7 ล้านรูเบิล ความผันผวนตามฤดูกาลอยู่ระหว่าง 60-130 บริษัท เดียวกันนี้ยังมีแอปพลิเคชันสำหรับ iOS และการเรียกเก็บเงินเฉลี่ยของผู้ใช้แอปพลิเคชัน Apple นั้นสูงกว่าการเรียกเก็บเงินเฉลี่ย ลูกค้าที่ใช้แอปพลิเคชัน Android - 1080 rub เทียบกับ 1300 ถู

บริษัทตัดสินใจที่จะเพิ่มประสิทธิภาพของแอปพลิเคชัน Android ซึ่งได้ทำการวิเคราะห์อย่างละเอียด มีการตั้งสมมติฐานหลายสิบข้อเกี่ยวกับการเพิ่มประสิทธิภาพของแอปพลิเคชัน หลังจากใช้ Retentionneering ปรากฎว่าปัญหาอยู่ในข้อความที่แสดงต่อผู้ใช้ใหม่ พวกเขาได้รับข้อมูลเกี่ยวกับแบรนด์ ผลประโยชน์ของบริษัท และราคา แต่เมื่อปรากฎว่าข้อความควรจะช่วยให้ผู้ใช้เรียนรู้วิธีทำงานในแอปพลิเคชัน

การรักษาลูกค้า: วิธีที่เราเขียนเครื่องมือโอเพ่นซอร์สสำหรับการวิเคราะห์ผลิตภัณฑ์ใน Python และ Pandas

สิ่งนี้เสร็จสิ้น ส่งผลให้แอปพลิเคชันถอนการติดตั้งน้อยลง และการแปลงตามลำดับเพิ่มขึ้น 23% ในตอนแรก 20 เปอร์เซ็นต์ของการเข้าชมที่เข้ามาได้รับการทดสอบ แต่หลังจากนั้นไม่กี่วัน หลังจากวิเคราะห์ผลลัพธ์แรกและประเมินแนวโน้ม พวกเขาก็กลับสัดส่วน และในทางกลับกัน เหลือ 20 เปอร์เซ็นต์สำหรับกลุ่มควบคุม และ แปดสิบเปอร์เซ็นต์ถูกวางไว้ในการทดสอบ หนึ่งสัปดาห์ต่อมา มีการตัดสินใจที่จะเพิ่มการทดสอบสมมติฐานอีกสองข้อตามลำดับ ในเวลาเพียงเจ็ดสัปดาห์ มูลค่าการซื้อขายจากแอปพลิเคชัน Android เพิ่มขึ้นหนึ่งเท่าครึ่งเมื่อเทียบกับระดับก่อนหน้า

Retentioneering ทำงานร่วมกับ Retentioneering อย่างไร?

ขั้นตอนแรกนั้นค่อนข้างง่าย - ดาวน์โหลดไลบรารีด้วยคำสั่ง pip install retentioneering พื้นที่เก็บข้อมูลนั้นประกอบด้วยตัวอย่างสำเร็จรูปและกรณีของการประมวลผลข้อมูลสำหรับงานวิเคราะห์ผลิตภัณฑ์บางอย่าง ชุดได้รับการอัปเดตอย่างต่อเนื่องจนกว่าจะเพียงพอสำหรับการทำความรู้จักครั้งแรก ใครๆ ก็สามารถนำโมดูลสำเร็จรูปไปใช้และนำไปใช้กับงานของตนได้ทันที ซึ่งจะช่วยให้พวกเขาสามารถตั้งค่ากระบวนการวิเคราะห์โดยละเอียดเพิ่มเติมและเพิ่มประสิทธิภาพของวิถีผู้ใช้ได้อย่างรวดเร็วและมีประสิทธิภาพที่สุดเท่าที่จะเป็นไปได้ในทันที ทั้งหมดนี้ทำให้สามารถค้นหารูปแบบการใช้งานแอปพลิเคชันผ่านโค้ดที่ชัดเจน และแบ่งปันประสบการณ์นี้กับเพื่อนร่วมงานได้

การคงอยู่เป็นเครื่องมือที่คุ้มค่าที่จะใช้ตลอดอายุการสมัครของคุณ และนี่คือเหตุผล:

  • การคงผู้ใช้ไว้มีประสิทธิภาพในการติดตามและเพิ่มประสิทธิภาพวิถีผู้ใช้และปรับปรุงประสิทธิภาพทางธุรกิจอย่างต่อเนื่อง ดังนั้นจึงมักมีการเพิ่มคุณสมบัติใหม่ลงในแอปพลิเคชันอีคอมเมิร์ซ ซึ่งผลกระทบต่อผลิตภัณฑ์ไม่สามารถคาดการณ์ได้อย่างถูกต้องเสมอไป ในบางกรณี ปัญหาความเข้ากันได้เกิดขึ้นระหว่างฟังก์ชันใหม่และเก่า - ตัวอย่างเช่น ฟังก์ชันใหม่ "กินกัน" ฟังก์ชันที่มีอยู่ และในสถานการณ์เช่นนี้ การวิเคราะห์วิถีอย่างต่อเนื่องคือสิ่งที่จำเป็นอย่างแน่นอน
  • สถานการณ์จะคล้ายกันเมื่อทำงานกับช่องทางโฆษณา: มีการทดสอบแหล่งที่มาของการเข้าชมใหม่และโฆษณาโฆษณาอย่างต่อเนื่อง มีความจำเป็นต้องติดตามฤดูกาล แนวโน้ม และอิทธิพลของเหตุการณ์อื่น ๆ ซึ่งนำไปสู่การเกิดขึ้นของปัญหาประเภทใหม่ ๆ มากขึ้นเรื่อย ๆ นอกจากนี้ยังต้องมีการตรวจสอบและตีความกลไกของผู้ใช้อย่างต่อเนื่อง
  • มีหลายปัจจัยที่ส่งผลต่อประสิทธิภาพของแอปพลิเคชันอย่างต่อเนื่อง ตัวอย่างเช่น รุ่นใหม่จากนักพัฒนา: การปิดปัญหาปัจจุบัน ส่งคืนปัญหาเก่าโดยไม่รู้ตัวหรือสร้างปัญหาใหม่ทั้งหมด เมื่อเวลาผ่านไป จำนวนการออกใหม่เพิ่มมากขึ้น และกระบวนการติดตามข้อผิดพลาดจะต้องเป็นไปโดยอัตโนมัติ รวมถึงโดยการวิเคราะห์วิถีของผู้ใช้

โดยรวมแล้ว Retentioneering เป็นเครื่องมือที่มีประสิทธิภาพ แต่ความสมบูรณ์แบบไม่มีขีดจำกัด - สามารถและควรได้รับการปรับปรุง พัฒนา และผลิตภัณฑ์เจ๋งๆ ใหม่ที่สร้างขึ้นบนพื้นฐานของมัน ยิ่งชุมชนของโปรเจ็กต์มีความกระตือรือร้นมากขึ้นเท่าใด ก็จะมี forks มากขึ้นเท่านั้น และตัวเลือกใหม่ที่น่าสนใจสำหรับการใช้งานก็จะปรากฏขึ้น

ข้อมูลเพิ่มเติมเกี่ยวกับเครื่องมือการเก็บรักษา:

ที่มา: will.com

เพิ่มความคิดเห็น