215 похожих чатов

Добрый день, мне не понятен такой момент в алгоритм knn.

Если разделить данные на train и test. То knn просто запомнит train данные, и на их основе будет вычислять test. Только почему в данных train, который knn запомнил, допускает ошибки. Почему общая сумма ошибок не равно 0?

15 ответов

72 просмотра

А почему она должна быть 0? Суть тестовых данных в том, что у модели нет запомненных правильных ответов и поэтому приходится усреднять ответы по учебной выборке. Из-за этого для объектов из тестовой выборки ответ может отличаться от правильного

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

Rahim- Автор вопроса
Frau Mann
В любом методе машина не должна запоминать правиль...

Ну если взять модель knn и тестовый набор данных, на чём она там обучается? Находит некие закономерности. Вроде говорилось в некотором источникн и чатgpt, что она когда вычисляет тестовые данные опирается на тренировочные. Тоесть нового объекта из тестовых, находит ближайщих соседей из тренировочной и ввчислчет таргет

Rahim
Ну если взять модель knn и тестовый набор данных, ...

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

Rahim- Автор вопроса
Frau Mann
Давайте подумаем, на каких данных обучается вообще...

Ну я говорю в чём заключается процесс обучения knn на тренировочных данных? Она ведь просто запоминает тестовые данные.

Rahim- Автор вопроса
Ivan
А почему она должна быть 0? Суть тестовых данных в...

Я об тренировочных данных. Как knn допускает на них ошибки, если она их запоминает

Rahim
Я об тренировочных данных. Как knn допускает на ни...

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

Rahim
Я об тренировочных данных. Как knn допускает на ни...

А вы у себя в голове имеете представление, как этот метод вообще работает? Или, мб, вы делали визуализацию своих данных и их разделения?

Rahim- Автор вопроса
Frau Mann
А вы у себя в голове имеете представление, как это...

Ну я только о нём прочитал. Тогда как он работает. Как происходит процесс обучения на тренировочных данных. Поиск неких закономерностей или...?

Rahim
Ну я только о нём прочитал. Тогда как он работает....

Если не ошибаюсь с источниками, то в этом блокноте максимально простым языком объяснены основы работы knn: https://www.kaggle.com/code/kashnitsky/topic-3-decision-trees-and-knn/notebook

Rahim- Автор вопроса
Frau Mann
Если не ошибаюсь с источниками, то в этом блокноте...

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

Rahim
Ну получается когда появляется новый объект, модел...

Именно. Метод же называется методом ближайших соседей

Rahim- Автор вопроса
Ivan
Именно. Метод же называется методом ближайших сосе...

Так это было понятно, я про другое спрашивал. Хотя я уже более менее разобрал свой вопрос

Rahim
Ну получается когда появляется новый объект, модел...

А на какую статью вы изначально ссылаетесь? В которой ошибка

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта