Задать вопрос
Ответы пользователя по тегу Регрессионный анализ
  • Представление категорических и порядковых данных линейной регрессии (машинное обучение)?

    @SeptiM
    1. По сути вся машинка сводится к решению оптимизационных задач. Есть набор ограничений и есть функция, которую надо оптимизировать (min, max). В вашем случае вы, скорее всего, минимизируете среднеквадратическое отклонение. Делите выборку на две части, обучаетесь на тренировочной, считаете значение на контрольной. Вот это значение и есть критерий качества вашей модели.

    2. Если есть несколько моделей и непонятно какую выбрать. Нужно поделить выборку на три части. На первой части мы тренируем модели, на второй -- выбираем модель с наилучшим показателем, на третьей -- получаем значение оптимизируемой функции на победителе предыдущей части, тот самый критерий качества.

    3. Вывод: теория -- это хорошо, но лучше честно сравнить модели по данным.

    4. Теория. Если вы представляете одну категорию несколькими переменными, то у вас получается большая размерность. На примере, если цвет вносит вклад по принципу белый -- 0, красный -- 10, черный -- 20, то в одной модели это будет 10 * x_цвет, а в другой 0 * x_белый + 10 * x_красный + 20 * x_черный. В то же время ситуация выглядит как белый -- 0, красный -- 10, черный -- 100, то в первой модели точного представления уже не получится, а во второй можно по прежнему расставить соответствующие веса.

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

    @SeptiM
    В первом приближении NULL's можно заменить средним значением или медианой. Если хочется лучше, можно попробовать угадать значения через дополнительную регрессию. Еще более тонкий метод через создание нескольких версий оригинальных данных (см. multiple imputation).
    Ответ написан
    2 комментария
  • Как построить регрессию на данных типа string (машинное обучение)?

    @SeptiM
    Можно попробовать сделать следующее. Берем каждую колонку, по сути категорию. Смотрим сколько значений она имеет. Пусть это будет k. Заводим k переменных, которые будут принимать значения либо 0, либо 1.

    Если, скажем, дом был построен из кирпича, то ставим переменной x_кирпич = 1, а x_бетон и x_дерево равным 0. Ну и обучаем веса.

    P.S. Можно сделать k - 1 переменную, проставляя нули всем переменным для одного из значений.
    Ответ написан
    Комментировать