Фитнес-данные не пропадут зря: ChatGPT на страже твоего здоровья

от автора

Я активно пользуюсь умными браслетами и весами, и однажды задумался: а что если обработать накопленные данные через ChatGPT для анализа здоровья? Оказалось, что это довольно просто, и с этим справится практически любой.

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

Давайте заставим эту бездушную машину поработать на наше благо!

Подготовка данных

Для начала нужно убедиться, что данные по здоровью есть в Google Fit, откройте приложение на вашем Android. Если синхронизация с устройствами подключена, ваши данные уже там. Google Fit также может собирать шаги с телефона, и этого будет достаточно для начального анализа. 

  1. Переходим на Google Архиватор, продуктов Google много, сразу нажмите на “Отменить выбор”. 

  1. Найдите в списке Fit и выберите его. После нажмите на “Далее” внизу страницы. 

  1. В появившемся окне можно настроить параметры, нас устроят настройки по умолчанию, нажимаем “Создать экспорт”. 

  1. Данные будут сформированы и отправлены вам на e-mail в виде ссылки (время зависит от объема данных).

Важно

  • Google Fit закрывается с 2025 года, и данные будут доступны через Health Connect, но процесс экспорта останется похожим.

  • Если при скачивании возникают ошибки (например, проблемы с переадресацией), попробуйте открыть ссылку в режиме инкогнито, мне помогло.

Состав архива

В архиве 4 папки:

  • Тренировки (Activities) – тренировки и автоматически отслеживаемая активность (бег, велосипед и т.д.).

  • Показатели ежедневной активности (Daily activity metrics) – ежедневные данные о шагах, расстоянии и другой активности.

  • Все данные (All Data) – все данные Google Fit, распределенные по источникам.

  • Все сеансы (All Sessions) – записи физической активности, включая тренировки и сон.

В папках много всего интересного, в том числе и данные с браслетов (сон, тренировки и т.п.). Для начального анализа нас интересует папка “Показатели ежедневной активности” и одноименный файл .CSV в ней, который состоит из следующих столбцов: 

В моём случае файл содержал пропущенные значения (например, дни без шагов). Я удалил их с помощью Excel.

После очистки осталось 2139 строк, что соответствует данным за 5 лет и 7 месяцев.

Загрузка .CSV файла в ChatGPT

Открываем сайт ChatGPT, авторизуемся (или регистрируемся через Google-аккаунт). Учтите, что ChatGPT не работает в России, так что нужен VPN. Для работы с файлами используйте модель GPT-4o, а токен на использование прикрепленного файла дают в ограниченном количестве: раз в 12-24 часа. 

Далее открываем чат-диалог, находим кнопку прикрепления файла и прикрепляем .csv файл. Для анализа данных нам нужно сформировать гипотезы о том, что мы хотим спросить. 

Формирование гипотез и анализ от ChatGPT

Просто смотреть графики не особо интересно, это можно сделать и в приложении Google Fit.

Лучше попробуем сформировать интересные гипотезы для проверки.

Я достаточно активен и соответствую нормам по активности

Как проверим: посмотрим среднее количество шагов за период, среднее количество часов сна за период и сравнить с нормами в России (7-10 тыс. шагов). Подсчитаем сколько раз цель была достигнута успешно; неуспешно; сверх нормы и попросить нейросеть сделать итоговый вывод по моей активности за этот период. 

Результат от ChatGPT

Моя оценка результата: В общем, гипотеза частично верна. В 49% дней за 5 лет и 7 месяцев я выполнял норму по шагам, а в 25% дней – даже перевыполнял, проходя больше 10 000 шагов.

Я прогрессирую в тренировках и становлюсь более тренированным 

Как проверим: изучить динамику изменения среднего и максимального пульса, а также минут кардиотренировок (подробнее про показатель в статье на Хабре) относительно времени. Попросим нейросеть посчитать средний и максимальный пульс  с разбивкой по кварталам; сделать вывод на основе данных становится тело более тренированным или нет.

Результат от ChatGPT

Графики динамики пульса и кардиотренировок

Моя оценка результата: ChatGPT в целом правильно понял, что за последние два года мои тренировки стали более стабильными, и я достиг прогресса. Это видно по снижению среднего пульса – сердце стало эффективнее работать. Одновременно с этим уменьшение кардиотренировок также указывает на улучшение: чем тренированнее становишься, тем больше усилий нужно для прогресса. Однако, как мне кажется, выводы можно было сделать более явными – возможно, я не совсем корректно составил запрос.

Тренировки помогают поддерживать вес

Как проверим: проведем корреляционный анализ между количеством пройденных шагов, активностью (ходьба, бег) и изменениями веса за годы. Попросим перечислить корреляции параметров и сделать выводы помогают ли тренировки и ходьба поддерживать вес на основании моих данных.

Результат от ChatGPT

Корреляционная матрица

Со знаком минус отрицательные корреляции, без – прямые. 

Моя оценка результата: чем больше шагов, тем больше времени на ходьбу – всё логично. Корреляция равна 1.0. Есть отрицательная корреляция между шагами и весом, она составляет 0.39 (слабая связь). Аналогичная ситуация с кардиотренировками и средним пульсом. Эти слабые связи показывают, что зависимость есть, но её нельзя объяснить только двумя параметрами – вероятно, есть другие факторы, например, расход калорий за день.

Чтобы похудеть на 5 кг, мне нужно увеличить активность в 2 раза

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

Результат от ChatGPT

Моя оценка результата: это уже более сложная задача, и, на мой взгляд, ChatGPT не справился. Он предположил, что за три месяца я могу сбросить 5 кг, если каждый день буду делать на 2000 шагов больше. Звучит сомнительно. Чтобы получить точный результат, нейросети нужно больше данных и уточнений.

Через сколько лет я скорее всего умру, если сохраню уровень активности на прежнем уровне

Как проверим: попросить ChatGPT проанализировать мою текущую активность, а также исследования и статистику, на основе этих данных предположить точное количество лет через сколько я умру без учета факторов случайной смерти.

Результат от ChatGPT

Моя оценка результата: Результат близок к нулю, поскольку ChatGPT, очевидно, встроены ограничения, не позволяющие предсказывать дату смерти.

Если бы я был покемоном, то определенно мощным и огненного типа

Спойлер: мой любимый покемон Чаризард.

Как проверим: спросим у ChatGPT каким покемоном на основе данных я по её мнению являюсь, уточнив, что скорее всего я мощный и огненный.

Результат от ChatGPT

Моя оценка первого результата: Вау, он угадал Чаризарда! Но я понял, что сам натолкнул его на ответ, когда указал в гипотезе «огненный и мощный». Решил переспросить: «Если бы я был покемоном, то каким?»

Второй результат от ChatGPT

Моя оценка второго результата: В целом я доволен результатом, хотя не знаю такого покемона. Он выглядит так:

Рост 1.2 метра, 54 кг веса. Его сила возможно в чем-то другом

Рост 1.2 метра, 54 кг веса. Его сила возможно в чем-то другом

Формируем запрос для ChatGPT

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

Запрос для ChatGPT

Привет, ChatGPT. Во вложении файл с данными из Google Fit. Проанализируй его, пожалуйста. Будь в роли опытного аналитика данных, постарайся качественно проанализировать эти запросы. 

Я хочу проверить следующие гипотезы:

1. Я достаточно активен и соответствую нормам.

Анализ: посмотри среднее количество шагов за период, среднее количество часов сна за период и сравнить с нормами в России (7-10 тыс. шагов). Подсчитать сколько раз цель была достигнута успешно; неуспешно; сверх нормы и сделай итоговый вывод по моей активности за этот период. 

2. Я прогрессирую в тренировках и становлюсь всё более тренированным.

Анализ: изучи динамику изменения среднего и максимального пульса, а также минут кардиотренировок относительно времени (поквартально), оцени насколько я становлюсь более тренированным. Отобрази средний и максимальный пульс с течением времени с разбивкой по кварталам и сделай вывод на основе данных становится тело более тренированным или нет.

3. Тренировки помогают поддерживать вес.

Анализ: корреляционный анализ между количеством пройденных шагов, активностью (ходьба, бег) и изменениями веса за годы. Перечисли корреляции параметров, сделать выводы о том что лучше помогает поддержке веса, сделай вывод об истинности или ложности гипотезы. 

4. Чтобы похудеть на 5 кг, мне нужно увеличить активность в 2 раза

Анализ: на основе динамики моего веса и активности рассчитай насколько много мне надо двигаться, чтобы только через активность похудеть на 5 кг. Рассчитай подробно насколько много мне надо пройти шагов в целом, сколько в среднем шагов мне надо ходить дополнительно в день и сколько времени потеря 5 кг может занять. 

5. Через сколько я скорее всего умру, если сохраню уровень активности на прежнем уровне

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

6. Если бы я был покемоном, то каким? 

Анализ: определи каким покемоном я бы был на основе данных и тщательно обоснуй свой ответ. 

Выводы

Связка ChatGPT + Google Fit отлично подходит для проверки простых гипотез о вашем здоровье. Сложные гипотезы могут потребовать более детальной проработки данных и запросов, но зато всегда можно развлечься и узнать, какой вы покемон.

P.S. Я могу разобрать архив от Google Fit глубже в новой статье: там хранятся подробные данные с браслета: активности, сон и т.п. Возможно, получится проверять более интересные и сложные гипотезы. Пишите в комментариях, если вас заинтересовало. 


ссылка на оригинал статьи https://habr.com/ru/articles/852344/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *