Python scikit-learn: почему мой классификатор LinearRegression так низок?

Для первых трех сегментов доверительного интервала верхний конец диапазона, по крайней мере, частично выходит за пределы (границы [-1, 1], а не слегка расширенный диапазон по осям). По умолчанию поведение ggplot заключается в том, чтобы не отображать какой-либо объект, который частично выходит за рамки. Вы можете исправить это, добавив oob=scales::rescale_none в scale_y_continuous:

library(scales)
graph <- ggplot(df.m, aes(group=1,disciplines,value,colour=variable,shape=variable)) +
         geom_point() +
         geom_smooth(stat="smooth", method=loess, level=0.95) +
         scale_x_discrete(name="Disciplines") +
         scale_y_continuous(limits=c(-1,1), name="Measurement", oob=rescale_none)
0
задан desertnaut 17 January 2019 в 00:30
поделиться

1 ответ

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

enter image description here

Подгонка линии (т.е. выполнение LinearRegression) над вашими данными дает вам линия, которая не является хорошим предиктором ваших данных:

enter image description here

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

enter image description here

Ваша «оценка» уходит путь вверх. Выполнение кода 1000 раз (для этого подмножества данных) дает в среднем 0,875857 баллов. Возможно, вы захотите придумать модель, которая учитывает тот факт, что при определенном проценте пользователь, вероятно, удалит файлы, чтобы освободить больше места.

0
ответ дан Joe Patten 17 January 2019 в 00:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: