Ұстап қалу: Python және Pandas-та өнімді талдау үшін ашық бастапқы құралдарды қалай жазғанбыз

Сәлем, Хабр. Бұл мақала қолданбада немесе веб-сайтта қолданушылардың қозғалыс траекторияларын өңдеуге арналған әдістер мен құралдар кешенін әзірлеудің төрт жылдық нәтижелеріне арналған. Әзірлеудің авторы - Максим Годзи, ол өнім жасаушылар командасын басқарады, сонымен қатар мақаланың авторы. Өнімнің өзі Retentioneering деп аталды; ол қазір ашық бастапқы кітапханаға айналдырылды және оны кез келген адам пайдалана алатындай етіп Github сайтында орналастырылды. Мұның бәрі өнімді және маркетингтік талдау, жылжыту және өнімді әзірлеумен айналысатындарды қызықтыруы мүмкін. Айтпақшы, Хабреде Retentioneering-пен жұмыс істеу жағдайларының бірі туралы мақала жарияланған. Жаңа материал өнімнің не істей алатынын және оны қалай пайдалануға болатынын түсіндіреді.

Мақаланы оқығаннан кейін сіз өзіңіздің Retentioneering-ді жаза аласыз; бұл қолданбада және одан тыс жерде пайдаланушы траекторияларын өңдеудің кез келген стандартталған әдісі болуы мүмкін, бұл мінез-құлық сипаттамаларын егжей-тегжейлі көруге және одан өсу туралы түсінік алуға мүмкіндік береді. іскерлік көрсеткіштер.

Сақтау дегеніміз не және ол не үшін қажет?

Біздің бастапқы мақсатымыз Growth Hacking-ті «цифрлық сиқыршылық» әлемінен сандар, аналитика және болжамдар әлеміне көшіру болды. Нәтижесінде, өнімді талдау фантастикалық оқиғалардың орнына сандарды ұнататындар үшін таза математика мен бағдарламалауға, ал формулалардан «ребрендинг», «қайта позициялау» және т.б. сияқты жақсы естіледі, бірақ іс жүзінде көмектеспейді.

Бұл мәселелерді шешу үшін бізге графиктер мен траекториялар арқылы аналитиканың негізі және сонымен бірге адамдарға да, роботтарға да түсінікті болатын өнімді талдаудың тұрақты тапсырмаларын сипаттаудың тәсілі ретінде әдеттегі аналитиктердің жұмыс тәртібін жеңілдететін кітапхана қажет болды. Кітапхана пайдаланушы мінез-құлқын сипаттау және оны өнім бизнес көрсеткіштерімен байланыстыру мүмкіндігін осындай ресми және түсінікті тілде қамтамасыз етеді, бұл әзірлеушілер мен талдаушылардың күнделікті тапсырмаларын жеңілдетеді және автоматтандырады және олардың бизнеспен байланысын жеңілдетеді.

Retentioneering - кез келген сандық (тек қана емес) өнімге бейімделуге және біріктіруге болатын әдіс және аналитикалық бағдарламалық құрал құралдары.

Біз 2015 жылы өніммен жұмыс істей бастадық. Енді бұл Python және Pandas деректермен жұмыс істеуге арналған дайын құралдар жиынтығы, sklearn тәрізді api бар машиналық оқыту үлгілері, eli5 және shap машиналық оқыту үлгілерінің нәтижелерін интерпретациялауға арналған құралдар.

Мұның бәрі аяқталды ашық Github репозиторийіндегі ыңғайлы ашық бастапқы кітапханаға - retentioneering-tools. Кітапхананы пайдалану қиын емес; өнім аналитикасын жақсы көретін, бірақ бұрын код жазбаған кез келген адам дерлік біздің аналитикалық әдістерімізді өз деректеріне дербес және айтарлықтай уақыт жұмсамай қолдана алады.

Бағдарламашы, қолданба жасаушы немесе бұрын ешқашан аналитика жасамаған әзірлеуші ​​немесе тестілеу тобының мүшесі осы кодпен ойнауды бастай алады және сыртқы көмексіз өз қолданбасының пайдалану үлгілерін көре алады.

Пайдаланушы траекториясы талдаудың негізгі элементі және оны өңдеу әдістері ретінде

Пайдаланушы траекториясы - белгілі бір уақыт нүктелеріндегі пайдаланушы күйлерінің тізбегі. Сонымен қатар, оқиғалар онлайн және офлайн сияқты әртүрлі деректер көздерінен келуі мүмкін. Пайдаланушымен болатын оқиғалар оның траекториясының бөлігі болып табылады. Мысалдар:
• түймені басқан
• суретті көрді
• экранды басыңыз
• электрондық хат алды
• өнімді досыңызға ұсынған
• нысанды толтырды
• экранды түртіңіз
• айналдырылды
• кассаға барды
• бурритоға тапсырыс берді
• буррито жеді
• буррито жеп уланған
• кафеге артқы есіктен кірді
• алдыңғы кіреберістен кірді
• қолданбаны азайтты
• push хабарландыру алды
• экранда X-тен ұзағырақ тұрып қалды
• тапсырыс үшін төленген
• тапсырысты сатып алды
• несие беруден бас тартылды

Пайдаланушылар тобының траектория деректерін алсаңыз және ауысулар қалай құрылымдалғанын зерттесеңіз, қолданбадағы олардың әрекетінің қалай құрылымдалғанын дәл бақылай аласыз. Мұны күйлер түйіндер, ал күйлер арасындағы ауысулар шеттер болып табылатын график арқылы орындау ыңғайлы:

Ұстап қалу: Python және Pandas-та өнімді талдау үшін ашық бастапқы құралдарды қалай жазғанбыз

«Траектория» - бұл өте ыңғайлы ұғым - ол осы әрекеттердің сипаттамасына кез келген қосымша деректерді қосу мүмкіндігі бар пайдаланушының барлық әрекеттері туралы толық ақпаратты қамтиды. Бұл оны әмбебап нысанға айналдырады. Егер сізде траекториялармен жұмыс істеуге мүмкіндік беретін әдемі және ыңғайлы құралдар болса, онда ұқсастықтарды тауып, оларды сегменттеуге болады.

Траекторияны сегменттеу бастапқыда өте күрделі болып көрінуі мүмкін. Қалыпты жағдайда бұл жағдай - қосылымдық матрицаны салыстыруды немесе реттілікпен туралауды пайдалану керек. Біз қарапайым жолды таба алдық – траекториялардың үлкен санын зерттеу және оларды кластерлеу арқылы сегменттеу.

Белгілі болғандай, траекторияны үзіліссіз бейнелеу арқылы нүктеге айналдыруға болады, мысалы, TF-IDF. Трансформациядан кейін траектория кеңістіктегі нүктеге айналады, онда траекториядағы әртүрлі оқиғалардың және олардың арасындағы өтулердің нормаланған пайда болуы осьтер бойымен сызылады. Үлкен мың немесе одан да көп өлшемді кеңістіктегі бұл затты (dimS=sum(оқиға түрлері)+sum(gramms_2 түрлері)) көмегімен жазықтыққа проекциялауға болады. TSNE. TSNE - кеңістік өлшемін 2 оське дейін азайтатын және мүмкін болса нүктелер арасындағы салыстырмалы қашықтықтарды сақтайтын түрлендіру. Тиісінше, жазық картада, траекториялардың бейнелі проекциялық картасында әртүрлі траекториялардың нүктелерінің бір-біріне қалай орналасқанын зерттеу мүмкін болады. Ол олардың бір-біріне қаншалықты жақын немесе әртүрлі болғанын, кластерлерді құрағанын немесе картада шашырағанын және т.б. талдайды:

Ұстап қалу: Python және Pandas-та өнімді талдау үшін ашық бастапқы құралдарды қалай жазғанбыз

Сақтау аналитикалық құралдары күрделі деректер мен траекторияларды бір-бірімен салыстыруға болатын көрініске айналдыру мүмкіндігін береді, содан кейін түрлендіру нәтижесін зерттеп, түсіндіруге болады.

Траекторияларды өңдеудің стандартты әдістері туралы айтатын болсақ, біз Retentioneering жүйесінде енгізген үш негізгі құралды айтамыз - графиктер, қадамдық матрицалар және траектория проекциялық карталары.

Google Analytics, Firebase және ұқсас аналитикалық жүйелермен жұмыс істеу өте күрделі және 100% тиімді емес. Мәселе пайдаланушы үшін бірқатар шектеулер болып табылады, нәтижесінде аналитиктің мұндай жүйелердегі жұмысы тінтуірді басу мен кесінділерді таңдауға байланысты. Ұстап қалу Google Analytics-тегідей шұңқырлармен ғана емес, пайдаланушы траекторияларымен жұмыс істеуге мүмкіндік береді, мұнда егжей-тегжей деңгейі белгілі бір сегмент үшін жасалған болса да, жиі шұңқырға дейін төмендейді.

Сақтау және істер

Әзірленген құралды пайдаланудың мысалы ретінде біз Ресейдегі үлкен тауашалық қызметтің жағдайын келтіруге болады. Бұл компанияда тұтынушылар арасында танымал Android мобильді қосымшасы бар. Мобильді қосымшаның жылдық айналымы шамамен 7 миллион рубльді құрады, маусымдық ауытқулар 60-130 мың аралығында болды. Сол компанияның iOS үшін қосымшасы да бар, Apple қолданбасын пайдаланушының орташа есепшоты орташа есепшоттан жоғары болды. Android қолданбасын пайдаланатын клиент - 1080 руб. 1300 рубльге қарсы.

Компания Android қосымшасының тиімділігін арттыру туралы шешім қабылдады, ол үшін мұқият талдау жүргізді. Қолданбаның тиімділігін арттыру туралы бірнеше ондаған гипотеза жасалды. Retentionneering қолданбасын пайдаланғаннан кейін мәселе жаңа пайдаланушыларға көрсетілетін хабарларда екені белгілі болды. Олар бренд, компанияның артықшылықтары мен бағалары туралы ақпарат алды. Бірақ, белгілі болғандай, хабарламалар пайдаланушыға қолданбада қалай жұмыс істеу керектігін үйренуге көмектесуі керек еді.

Ұстап қалу: Python және Pandas-та өнімді талдау үшін ашық бастапқы құралдарды қалай жазғанбыз

Бұл жасалды, нәтижесінде қолданба азырақ жойылды және тапсырысқа түрлендірудің өсуі 23% құрады. Бастапқыда кіріс трафиктің 20 пайызы сынаққа берілді, бірақ бірнеше күннен кейін алғашқы нәтижелерді талдап, тенденцияны бағалағаннан кейін олар пропорцияларды өзгертті және, керісінше, бақылау тобына 20 пайызын қалдырды, ал сексен пайызы сынаққа жіберілді. Бір аптадан кейін тағы екі гипотезаны тексеруді дәйекті түрде қосу туралы шешім қабылданды. Жеті аптаның ішінде Android қосымшасының айналымы алдыңғы деңгеймен салыстырғанда бір жарым есеге өсті.

Retentioneering-пен қалай жұмыс істеу керек?

Алғашқы қадамдар өте қарапайым - кітапхананы pip install retentioneering пәрменімен жүктеп алыңыз. Репозиторийдің өзінде кейбір өнімді талдау тапсырмалары үшін деректерді өңдеудің дайын мысалдары мен жағдайлары бар. Жинақ бірінші танысу үшін жеткілікті болғанша үнемі жаңартылып отырады. Кез келген адам дайын модульдерді ала алады және оларды өз міндеттеріне дереу қолдана алады - бұл оларға неғұрлым егжей-тегжейлі талдау және пайдаланушы траекторияларын оңтайландыру процесін тез және тиімдірек орнатуға мүмкіндік береді. Мұның бәрі түсінікті код арқылы қолданбаны пайдалану үлгілерін табуға және осы тәжірибені әріптестермен бөлісуге мүмкіндік береді.

Сақтау - бұл қолданбаңыздың қызмет ету мерзімі ішінде пайдалануға тұрарлық құрал, сондықтан мынау:

  • Ұстау пайдаланушы траекторияларын қадағалау және үздіксіз оңтайландыру және бизнес өнімділігін арттыру үшін тиімді. Осылайша, электрондық коммерция қолданбаларына жиі жаңа мүмкіндіктер қосылады, олардың өнімге әсерін әрқашан дұрыс болжау мүмкін емес. Кейбір жағдайларда жаңа және ескі функциялар арасында үйлесімділік проблемалары туындайды - мысалы, жаңалары бұрыннан барларын «каннибализациялайды». Бұл жағдайда траекторияларды үнемі талдау қажет.
  • Жарнама арналарымен жұмыс істеу кезінде де жағдай ұқсас: жаңа трафик көздері мен жарнамалық креативтілік үнемі сыналады, маусымдылықты, тенденцияларды және басқа оқиғалардың әсерін бақылау қажет, бұл проблемалардың көбірек жаңа сыныптарының пайда болуына әкеледі. Бұл сонымен қатар пайдаланушы механикасын үнемі бақылауды және түсіндіруді талап етеді.
  • Қолданбаның өнімділігіне үнемі әсер ететін бірқатар факторлар бар. Мысалы, әзірлеушілердің жаңа шығарылымдары: ағымдағы мәселені жабу, олар байқамай ескісін қайтарады немесе мүлдем жаңасын жасайды. Уақыт өте келе жаңа шығарылымдардың саны өседі және қателерді қадағалау процесін автоматтандыру қажет, оның ішінде пайдаланушы траекторияларын талдау арқылы.

Жалпы алғанда, Retentioneering тиімді құрал болып табылады. Бірақ жетілдіруге шектеу жоқ - оны жақсартуға, дамытуға және оның негізінде жаңа керемет өнімдерді жасауға болады және қажет. Жобаның қауымдастығы неғұрлым белсенді болса, соғұрлым көп шанышқылар болады және оны пайдаланудың жаңа қызықты нұсқалары пайда болады.

Retentioneering құралдары туралы қосымша ақпарат:

Ақпарат көзі: www.habr.com

пікір қалдыру