0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
1

Поставил эксперимент. Как влияет "грязь" в датасете на точность предсказания

23.04.2022, 11:39. Показов 901. Ответов 19
Метки нет (Все метки)

Поставил эксперимент. Как влияет "грязь" в датасете на точность предсказания. Взял базу МНИСТ, две цифры,
т. е. предсказание на два класса. Постепенно по 1% от общей обучающей выборки, добавляю "грязь" (ось ОХ).
По оси ОУ - точности : "accuracy", "val_accuracy", "test_accuracy".
График в приложенном файле.

Вопрос:
1. почему "test_accuracy" в начале так долго не падает значение.
Буквально до 30% "мусора" держится на высоком уровне ?
2. и почему "test_accuracy" так сильно отличается от "accuracy" и "val_accuracy" ?
Миниатюры
Поставил эксперимент. Как влияет "грязь" в датасете на точность предсказания  
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.04.2022, 11:39
Ответы с готовыми решениями:

Как решать задачу "Грязь"
Сама задача http://acm.timus.ru/problem.aspx?space=1&num=1325 Этот код работает,но считает путь...

Как написать регулярное выражение для выдергивания английских букв и символов: "+", ",", ":", "-", " ", "!", "?" и "."
Не могу ни как собразить как написать регулярное выражение для выдергивания английских букв и...

"Точность вычислений" или "Элементарная погрешность"
Всем привет! Решаю задачку (Задача А - во вложениях), где даны координаты вершин треугольника, и...

Не отчищающиеся "грязь" на мониторе
Сегодня утром появилась "чёрная полоска" размером в 2-3мм.Выглядел как "_".Начинал просто оттирать...

19
585 / 469 / 62
Регистрация: 20.09.2014
Сообщений: 2,796
24.04.2022, 01:08 2
Куда мусор добавляете? В какой датасет?
0
0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
24.04.2022, 06:50  [ТС] 3
1. Взял базу МНИСТ (10 цифр), беру любые две цифры, т. е. классификация на два класса.

2. Например, в тестовой выборке 10000 примеров. 1% это 100 примеров. Я просто в первых ста примерах, в y-train, меняю местами ответы, 0 на 1 или наоборот, если 1 то на 0. И так по нарастающей, с шагом 1% (100 примеров) 200, 300, 400 .... , до конца - 10000. Т. е. в конечном итоге получается полностью "перевернутая база. y-test не трогаю. Надеюсь понятно объяснил.

3. Вот сам блокнот:
https://colab.research.google.... sp=sharing
0
585 / 469 / 62
Регистрация: 20.09.2014
Сообщений: 2,796
24.04.2022, 08:16 4
1. Алгоритм проявляет устойчивость к шумам - это выражается в том, что график test_accuracy падает не сразу.
2. val_accuracy симметричен и растет после 50% подмен в конце - фактически происходит инверсия данных. Метрике без разницы, какие на самом деле цифры. Если поменять местами цифры 6 и 9, то данные одинаково логичны и не имеют противоречий в закономерностях. При подмене 50/50 самая высокая неопределенность, максимум противоречий, хаос и нейросеть по сути играет в угадайку. Угадать получается в 50%, что и видно по графику.
1
0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
24.04.2022, 13:12  [ТС] 5
Спасибо.
0
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
24.04.2022, 22:22 6
Посмотрите, как будут реагировать другие метрики и по каждому классу: например prec, recall
0
0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
25.04.2022, 10:55  [ТС] 7
Цитата Сообщение от Nick07 Посмотреть сообщение
Посмотрите, как будут реагировать другие метрики и по каждому классу: например prec, recall
Примерно повторяют основную метрику "test_accuracy"
0 соответствует цифре "2", 1 это цифра "3"

Меня интересует участок (0-30% ошибок), где точность, почему то держится на высоком уровне.
Миниатюры
Поставил эксперимент. Как влияет "грязь" в датасете на точность предсказания   Поставил эксперимент. Как влияет "грязь" в датасете на точность предсказания  
0
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
25.04.2022, 11:11 8
А сеть какую используете? Попробуйте информационную ёмкость уменьшить.
А просачивания данных точно нет? Проверяли?

Добавлено через 1 минуту
Можно размеры картинок уменьшить.
Аугментация отключена?

Добавлено через 50 секунд
А цель работы какая?
0
0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
25.04.2022, 11:16  [ТС] 9
Цитата Сообщение от Nick07 Посмотреть сообщение
А сеть какую используете? Попробуйте информационную ёмкость уменьшить.
А просачивания данных точно нет? Проверяли?

Добавлено через 1 минуту
Можно размеры картинок уменьшить.
Аугментация отключена?

Добавлено через 50 секунд
А цель работы какая?
Вот сам блокнот с реализацией:
https://colab.research.google.... sp=sharing

Сеть самая простая на два Dense слоя с 800 и 2 нейрона.

Как проверить просачивание данных ?
0
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
25.04.2022, 11:21 10
Цитата Сообщение от Pristle Посмотреть сообщение
Dense слоя с 800
Поставьте 80, а потом 8, в активаторе можно скорость уменьшить
0
1272 / 1209 / 199
Регистрация: 19.02.2010
Сообщений: 3,509
25.04.2022, 11:26 11
Pristle, при обучении - обуч.примеры перемешиваются (shuffle) или нет?
0
0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
25.04.2022, 11:32  [ТС] 12
Цитата Сообщение от VTsaregorodtsev Посмотреть сообщение
Pristle, при обучении - обуч.примеры перемешиваются (shuffle) или нет?
У меня вот так:
h = model.fit(X, Y, batch_size=64, epochs=2, validation_split=0.2, verbose=0)
По у молчанию shuffle=True
0
0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
25.04.2022, 12:56  [ТС] 13
Цитата Сообщение от Nick07 Посмотреть сообщение
Поставьте 80, а потом 8, в активаторе можно скорость уменьшить
Изменения первого слоя (800, 80, 8) не меняет суть. Начальный участок графика (0-30% ошибок) остается таким же.
Миниатюры
Поставил эксперимент. Как влияет "грязь" в датасете на точность предсказания   Поставил эксперимент. Как влияет "грязь" в датасете на точность предсказания   Поставил эксперимент. Как влияет "грязь" в датасете на точность предсказания  

0
1272 / 1209 / 199
Регистрация: 19.02.2010
Сообщений: 3,509
25.04.2022, 13:49 14
Цитата Сообщение от Pristle Посмотреть сообщение
По у молчанию shuffle=True
Ну тогда вероятнее всего - наблюдается положительный эффект от грязи.
Для случая label smoothing - это ещё с 2015г известно, из статьи про вторую гуглосетку. Просто эта статья сейчас уже столько раз процитирована в научной литературе, что среди тысяч цитирующих работ можно задолбаться искать именно про другие применения label smoothing.
А вот про label noise мне что-то сейчас склероз отказывает в точном вспоминании исходной работы.
В общем, эффект известный - но мне просто лень искать/вспоминать проявлявшуюся у народа силу эффекта (для сравнения с данной ситуацией).

Цитата Сообщение от Pristle Посмотреть сообщение
epochs=2
Да если обучение так быстро сходится - то зачем в таком случае нейросетка, бери обычный линейный разделитель (сетку без скрытых слоёв).
Если на полной (все 10 классов) задаче лин.разделитель даёт 7.5-8% ошибок обобщения, то при выборе только двух цифр он для многих сочетаний цифр должен почти безошибочно отрабатывать.
0
585 / 469 / 62
Регистрация: 20.09.2014
Сообщений: 2,796
26.04.2022, 06:25 15
Цитата Сообщение от Pristle Посмотреть сообщение
Меня интересует участок (0-30% ошибок), где точность, почему то держится на высоком уровне.
Это необходимое свойство алгоритмов - устойчивость к шумам. Когда вы часть ответов подменяете, то другая часть неподмененных ответов используется для выявления подмен. В неявном виде, конечно. Происходит это примерно так: показали цифру 6 десять раз, но в одном случае назвали ее цифрой 9. Вес подкручивается, допустим, в плюс девять раз и лишь в одном случае в минус. Такое "голосование" и определяет устойчивость не только к шуму, но и к обману (подмене).
0
0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
28.04.2022, 08:35  [ТС] 16
Цитата Сообщение от Mikhaylo Посмотреть сообщение
Это необходимое свойство алгоритмов - устойчивость к шумам. Когда вы часть ответов подменяете, то другая часть неподмененных ответов используется для выявления подмен. В неявном виде, конечно. Происходит это примерно так: показали цифру 6 десять раз, но в одном случае назвали ее цифрой 9. Вес подкручивается, допустим, в плюс девять раз и лишь в одном случае в минус. Такое "голосование" и определяет устойчивость не только к шуму, но и к обману (подмене).
Несколько раз перечитывал, видимо все правильно, но для меня сложновато и очень абстрактно.
Попробую описать поконкретнее тоже самое, как я это понимаю.
При определении класса без ошибок, допустим получаем вероятность, что то около 0,9-0,99%.
При добавлении ошибок вероятность падает 0,8...0,7....0,6....0,5...., но softmax делает свое дело,
все равно превращает в "1".
0
585 / 469 / 62
Регистрация: 20.09.2014
Сообщений: 2,796
28.04.2022, 18:19 17
Почти, можно даже сказать да.
Очень условно: если показывать цифру 6 и в 10% подменять ответ на цифру 9, то хороший алгоритм должен выдавать вероятность 0,9 для цифры 6 и вероятность 0,1 для цифры 9. По определению. Но не факт, что алгоритм хороший, но скорее всего достаточно близок к нему. И в этом случае ваши рассуждения верны.
1
0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
30.04.2022, 11:36  [ТС] 18
А вот что получилось, если формировать ошибку не на уровне лейблов, а подменять сами картинки других цифр.
Видно, что суть не поменялась, точность на тестовой выборке, продолжает долго держаться на высоком уровне.
Миниатюры
Поставил эксперимент. Как влияет "грязь" в датасете на точность предсказания  
0
0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 10
30.04.2022, 11:47  [ТС] 19
Вот сам блокнот с реализацией:
https://colab.research.google.... sp=sharing
0
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
01.05.2022, 13:41 20
Цитата Сообщение от Pristle Посмотреть сообщение
Вопрос:
1. почему "test_accuracy" в начале так долго не падает значение.
Ответ:
Применяемый Вами алгоритм (ПО) является устойчивым.
Смотрите стр. 14:
"В качестве показателя устойчивости алгоритма принимают точку срыва
Пг - 6 (а) - допустимую долю выбросов в данных (результатов, содержащих
большие погрешности), наличие которых не приводит к нарушению
работоспособности алгоритма"

АТТЕСТАЦИЯ АЛГОРИТМОВ И
ПРОГРАММ ОБРАБОТКИ ДАННЫХ ПРИ
ИЗМЕРЕНИЯХ
ОСНОВНЫЕ ПОЛОЖЕНИЯ
МИ 2174-91

Добавлено через 3 часа 15 минут
Цитата Сообщение от VTsaregorodtsev Посмотреть сообщение
Для случая label smoothing
Из свежих:
"Calibrating Histopathology Image Classifiers using
Label Smoothing"
arXiv:2201.11866v1 28 Jan 2022
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.05.2022, 13:41
Помогаю со студенческими работами здесь

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло",...

Невозможно обновить представление или функцию "vwRAM_bench", так как изменение влияет на несколько базовых таблиц
insert into vwRAM_bench(ID_hardware,ID_Type,ModelCode,,ID_manufacturer,Strips,Capacity)...

Получить значение из {"text1":"val1","text2":"val2","text3":{"text":"val"}}
Есть такая строка var my = '{"text1":"val1","text2":"val2","text3":{"text":"val"}}'; Как из...

Как вернуть в окна Проводника панель инструментов с кнопками "Вперед", "Назад", "Копировать", "Вставить"?
Как вернуть в окна Проводника панель инструментов с кнопками "вперед-назад", "копировать",...

Текстовый редактор с функциями "найти","заменить","удалить","выделить всё","время и дата","отменить"
Здравствуйте. Делаю Текстовый редактор,по типу Блокнота,помогите реализовать следующие...

Реализация методов "pay", "widthdraw", "deposit", "check", "block" объекта "Банковская карта".
Всем привет, работяги! Тут такая задача, что через функции card, pay, widthdraw, deposit, check,...

Есть данные об автомобилях четырех моделей: "Ascona", "Escort", "Vectra", "Kadet 15". Как входное данное ввести название модели и получить ее характер
Есть данные об автомобилях четырех моделей: "Ascona", "Escort", "Vectra", "Kadet 15". Как входное...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru