Модели регрессивного анализа представляют собой восстановленные функции по известным соотношениям аргументов функции и выходным значениям. То есть регрессионные модели основаны на обучении с учителем.
Немного погрузиться в терминологию можно здесь.
Подробнее почитать про функции можно здесь.
Ещё немного о моделях регрессии
Регрессионные модели бывают разными, например они могут определять разный вид функции. Ведь по-большому счёту в модели регрессии уже определён каркас функции, а всё что меняется при обучении - это коэффициенты при x.
Таким образом модели регрессии работают только с числовыми признаками и на выходе возвращают всегда только числовые значения.
Ещё немного о Data Science
Вообще-то не всё так однозначно как могло бы показаться изначально. Те же задачи регрессии можно решать, используя деревья решений, которые мы использовали для задач классификации. Да и модели регрессии могут достаточно сильно отличаться друг от друга, как набором гиперпараметров, так и методами оценки.
Выбор модели делается на основе предрасположенности данных к какой-то определённой функции. Прежде чем начать применять модель данные исследуются и далее плюс-минус становится ясно какую модель использовать - является ли зависимость линейной или полиномиальной.
Для этого требуется неплохо разбираться в визуализации данных, в построении графиков различных функций и в самих моделях. Опыта у нас явно ещё недостаточно, да и для наглядности сейчас лучше идти императивным путём в применении разных моделей.
Формулируем задачу
Давайте попробуем "восстановить" функцию определения насколько та или иная статья на Zen'е будет успешна. Для начала определимся, что мы будем считать успехом, ну например количество дочитываний статьи, охват или количество лайков. Рассмотрим разные параметры в качестве искомого y.
Что же касается признаков x, то я остановился на следующих:
Текст статьи
1) Количество слов
2) Количество букв
3) Количество заголовков
4) Теория или практика
5) Математика или ML
Картинки в статье
4) Количество формул
5) Количество сниппетов кода
Параметры публикации
1) Время публикации
2) Полноценная картинка или артефакт из статьи
3) Длина описания статьи
4) Длина заголовка
Как видно здесь представлены самые разные типы признаков и числовые и категориальные и даты, всё это нужно будет представить в виде числовых признаков.
Вот примерно на этом этапе любой бизнес начинает тормозить. Есть интересная задача, есть требования и понятно, что делать дальше. Но нет данных!
Хорошие данные для обучения - это 80% успеха. В компаниях работающих с ML, трудятся гигантские отделы ручной разметки и подготовки данных для обучения. Плюс помимо качества данных для обучения важно и их количество - с этим у меня 100% будут проблемы. Чем это мне гразит? Имеющиеся данные не будут отражать какую-то явную закономерность - такой модели доверять будет сложно.
У меня есть 18 статей - данные по ним я и подготовлю. Для того, чтобы показать принцип работы модели линейной регрессии этого хватит, но дальше - нужно будет больше данных.
Постараюсь дообучать модель с появлением новых данных и смотреть на её качество.
Если готовы поделиться статистикой своих каналов, то пишите. Соберём красивый dataset.
Я пошёл готовить датасет. Как это происходило расскажу в следующей статье.