Найти в Дзене
Data Insights

ChatGPT для задач аналитики

История о том, как я просил ChatGPT решить задачу по продуктовой аналитике. Спойлер - оно работает, более-менее!

Недавно на работе был небольшой завал - скопились задачи в работе/тестировании, а беклог планомерно наполнялся новыми запросами, в том числе по направлению продукта.

ТЗ одной из новых задач звучало примерно так:

Хотим понять, какие типы событий совершают пользователи прежде чем они становятся активными пользователями системы. Данные передать для Customer Success и Marketing

То есть смысл задачи такой - есть некий стартовый период, который проходит пользователь, знакомство с продуктом. В этот период человек использует информационную систему определенным образом, совершает какие-то действия, после чего начинает использовать ее активнее, либо затухает и отваливается. Каждый пользователь уникален, кому-то хватит недели, а кому-то месяц.

Пользователей много, несколько тысяч, перебирать руками каждого и смотреть его активности не вариант. Нужна автоматизация, которая позволит уловить устойчивый рост активности, найти точку старта этого роста, а все что до нее - будем считать периодом знакомства и адаптации к продукту.

Кто-то мог бы сказать, что для этого есть триальный период, надо изучать активности в нем, для тех людей, кто сменил триал на подписку, но это не наш случай.

ChatGPT или новый гугл, только лучше

Я давно думал на счет нейросети GPT и решил испытать ее, сформулировав для нее задание (Prompt)

-2

Для начала я бахнул по-тупому, просто сформулировал первое попавшееся

-3

Далее был код на Python, который меня не совсем устроил:

-4

Данный код загружает данные из CSV файла, преобразует их в словарь, подсчитывает количество активностей в каждый день для каждого пользователя, находит день, когда пользователь начал совершать активности чаще всего, определяет наиболее популярные активности в этот день для каждого пользователя и выводит результаты анализа.

То есть этот ответ был совсем не про то, что я хотел. В итоге покумекав, я решил написать запрос иначе, добавив некоторую конкретику

-5

Ответ от GPT был следующим:

-6

В итоге, ответом будет значение переменной trend_start_date - это та самая точка, которая является стартом роста тренда.

Кто-то "душный" может сказать, что такое и самому можно было написать, но речь шла именно о том, чтобы потестировать запросы к GPT и понять, как она может найти подходящее решение. В итоге, как видно из переписки, не с первого раза можно получить нужный результат. Да и с второго, третьего и т.д. тоже не факт, что получится.

С другой стороны - какой-то базовый стартовый алгоритм получить можно и далее его допилить.

От себя скажу, что в итоге я сделал следующее:

1. Для каждого юзера построил скользящее среднее с окном в 7 дней - это дало сглаженный график по ежедневному кол-ву событий

2. Для данного графика построил график линейной регрессии, чтобы определить, а в общем тренд положительный или отрицательный. Просто если человек за всю свою историю "вспыхнул" в начале, а потом пошел вниз, то его данные мы в анализ не берем

3. Из тех юзеров, которые на всем своем цикле имели положительный угол наклона прямой, я использовал скрипт от ChatGPT, где для каждого нашел его предполагаемую дату роста активности

4. Для каждого юзера составил топ-20 типов активностей, которые они совершали до момента своего всплеска.

Такой вот опыт взаимодействия с этой вот популярной нейросетью, в будущем планирую периодически тестировать различные кейсы, но самое главное, это корректно и точно описывать задачу.

По сути это как с разработчиками. Хочешь получить нормальный результат? Напиши грамотное ТЗ, ведь как известно: "Без ТЗ я ХЗ"