10:01:19 From sashca : + 10:01:22 From Michael : + 10:01:22 From Oleg Mironov : + 10:01:23 From Alexander Nozdrin : + 10:01:23 From vas.che : + 10:01:32 From denis : + 10:01:33 From Алексей Прохоренков : Доброе утро! 10:01:48 From Anton Pekarskii : Доброе утро 10:02:42 From Aleksandr Zaitsev : + 10:02:45 From Anton Pekarskii : + 10:02:48 From Василий Володин : + 10:03:13 From Oleg Mironov : видно, только он не отцентрован 10:04:11 From Alexander Nozdrin : В текстовом виде норм вариант) 10:09:06 From Michael : Что значила А в формуле под первой картинкой? 10:09:09 From Oleg Mironov : получается у автокодировщика выход в центре? 10:09:53 From Oleg Mironov : так а какой смысл на выходе получать то же, что и на входе? 10:10:37 From Василий Володин : типа архиватора? 10:10:50 From Michael : D(E(x)) = x, если D- кодирование, E - декодирование. Как обозвать и зачм А не совсем ясно 10:11:07 From Michael : потери? 10:12:02 From Oleg Mironov : оператор автокодировщика 10:12:13 From Oleg Mironov : A = DE 10:12:31 From Oleg Mironov : тОчнее А=ап 10:12:38 From Oleg Mironov : fg 10:14:48 From Michael : Так на входе же - х. Если оператор представляет автокодировщик, то он долен действовать на х и быть равен по сути D(E(x)). Если A(E) = D(E), то то опертор декодирования, т.е. половины работы 10:15:36 From Oleg Mironov : я подозреваю, что E - единичный оператор и где-то опечатка) 10:15:48 From Oleg Mironov : то есть A = fg = E 10:16:06 From Oleg Mironov : A(x) = f(g(x)) = E(x) 10:16:52 From Michael : вот это правдоподобно) 10:19:55 From Dmitry Glinyanov : Разве тогда 10:20:05 From Dmitry Glinyanov : A(x) = D(E(x)), 10:20:23 From Dmitry Glinyanov : где E - encoder, D - decoder? 10:20:25 From Алексей Прохоренков : Обучаем мы полный автоэнкодер, а применяем получается только первую половину кодировщика? 10:21:37 From Michael : В моем текущем понимании должно быть A(x) = D(E(x)) = x, где A - оператор кодировщика. 10:21:37 From Oleg Mironov : Вы говорите о сжатии, то есть цель автокодировщика - сжать данные? Но при этом, Вы упоминали, что выход автокодировщика справа, то есть выход равен входу. Быть может смысл автокодировщика - это разделенная на две части сеть? Левая часть кодирует, потом, например, канал связи, для которого, собственно, и сжимаются данные, а потом правая часть на стороне приема эти данные декодирует? Но т 10:24:03 From Алексей Прохоренков : Ну вот есть подозрение, что обучается автоэнкодер полностью, а применяется только его первая часть) 10:24:37 From Alexander Nozdrin : Если мы предобучаем сеть для классификации, то в таком случае латентный слой будет равен по размеру количеству классов? 10:24:57 From Dmitry Glinyanov : Получается, предобучение мы проводим на выходе всего автокодировщика, не на скрытом слое? 10:26:41 From Oleg Mironov : я так понимаю, что обучается он полностью, а используется по частям) 10:27:17 From Michael : Похоже на то 10:27:55 From Dmitry Glinyanov : восстановление данных и предобучение пока выглядит как использование целоиком 10:29:28 From Oleg Mironov : ну да, просто если у Вас кодер - канал связи-декодер, то используется она виртуально целиком, только посредине еще засунут канал связи) 10:29:28 From Алексей Прохоренков : Видимо для разных задач разные части используют. Для предобучения, сжатия - первую часть, для восстановления вторую. Но обучается автоэнкодер всё равно целиком 10:29:50 From Michael : архивировал левой половиной, перевез через океан, разархивировал правой. 10:29:58 From Алексей Прохоренков : Неплохо бы развеять наши сомнения преподавателем 10:32:51 From Oleg Mironov : то есть это еще и нетолько кодировщик, но еще и фильтр?.. Я как радиоинженер уже стою по стойке "смирно")))) 10:37:32 From Roman Novokshanov : Т.е. Автокодировщик сознательно теряет часть информации? 10:37:33 From Алексей Прохоренков : Получается, автоэнкодер может, например, восстановить VHS видео, убрав характерные для неё помехи? Если предварительное его натаскать именно на VHS помехи? 10:38:10 From Dmitry Glinyanov : При обучении с аугментацией мы loss считаем по расстоянию до исходных незашумленных данных? 10:40:57 From Василий Володин : Латентный слой всегда один? 10:41:33 From Василий Володин : Не очень понятно как эта штука используется в предобучении 10:44:52 From Василий Володин : Звук или видео пробовали так сжимать? 10:51:34 From Василий Володин : Есть какой-то пример во сколько раз эта штука может сжать данные? 10:51:43 From Roman Novokshanov : можно сказать что автокодировщик это то, что в классическом ml называют feature engineering? 10:53:03 From Roman Novokshanov : спс 10:53:40 From Roman Novokshanov : т.е. Уменьшение размерности 10:55:18 From Алексей Прохоренков : Продублирую ещё раз вопрос, который мы обсуждали: автоэнкодер обучается полностью, а когда его применяем, используем либо энкодер, либо декодер в зависимости от задачи? Можно тогда ещё раз кратко по задачам - где какая часть применяется? Предобучение, сжатие, восстановление и т.д? 10:55:29 From Василий Володин : получается почти в 1000 раз? 10:56:01 From Василий Володин : Благодарю! 10:58:09 From Алексей Прохоренков : в обучении понятно, вопрос про применение был) 11:00:31 From Алексей Прохоренков : Тогда как сжать данные - это получается надо их выдернуть из середины автоэнкодера? 11:01:33 From Roman Novokshanov : я так понял что автоэнкодер только сжимает, но процесс обучения включает сжатие/расшифровку 11:03:42 From Roman Novokshanov : я имею ввиду что так как результат работы автоэнкодера это инпут с потерей информации по по сути он только сжимает 11:05:21 From vas.che : т.е резюме, если вобщем. Аугментация - генерация новых данных путем зашумения. Автоенкодер - выявлениее призников путем сжатия/восстановления входных данных. 11:05:27 From vas.che : ? 11:08:42 From denis : дропаут? 11:15:10 From Roman Novokshanov : Gj verve jib,rf 11:15:14 From Roman Novokshanov : по моему ошибка 11:16:04 From Roman Novokshanov : во втором слагаемым тоже пренебрегли (1-p) * log (1-p) ? 11:17:45 From Michael : В обработке естественного языка вроде как-то используется 11:19:06 From vas.che : можно поточнее utils рассмотреть. у меня нет mnist в этом модуле 11:20:01 From vas.che : его нет:) 11:20:46 From denis : Почему в transform.Normalize значения 0.5 используем? 11:21:00 From Roman Novokshanov : А почему нормализуем 0ю5? 11:21:04 From Roman Novokshanov : 0.5 11:23:07 From vas.che : я так понимаю чтобы получились данные от -1 до 1 11:23:21 From vas.che : Я про нормализацию 11:23:37 From Roman Novokshanov : Почему не от 0 до 1 .. 11:23:42 From vas.che : а не. 11:25:20 From vas.che : да, попутал. и рпвда не понятно 11:26:05 From vas.che : среднее и девиация 0,5. похоже 0-1 да. 11:26:51 From Roman Novokshanov : Не, там с 0.5 от 0 до 1 не получится (первая домашка) 11:28:32 From Roman Novokshanov : просто тренировать надо на нормализованных данных - Артур вроде говорил 11:31:34 From Алексей Прохоренков : а что за size_average? За что он отвечает? 11:32:11 From Roman Novokshanov : для moist’a 0.1307, 0.3081 (нормализация 0-1) 11:46:26 From Roman Novokshanov : А где рел? 11:46:30 From Roman Novokshanov : relu 11:47:54 From Roman Novokshanov : Там в обоих по моему tanh и sigmoid 11:48:02 From Dmitry Glinyanov : relu в активации в encoder / decoder 11:48:10 From Dmitry Glinyanov : второй ipynb 11:49:44 From Roman Novokshanov : Все вижу, спс 11:50:33 From vas.che : что значит "Обнулить левую/правую половину картинки"? 11:50:41 From vas.che : в ДЗ 11:50:50 From Алексей Прохоренков : Дмитрий, можете дать потом ссылки, где можно дополнительно почитать про автоэнкодеры? 11:51:05 From Roman Novokshanov : Зашумить видимо в ноль 11:51:29 From Oleg Mironov : лучше в общий 11:51:33 From Roman Novokshanov : Скиньте в салак плз 11:51:35 From Michael : А можно всем? 11:51:35 From Roman Novokshanov : слак 11:52:11 From vas.che : левая/правая кортинка это до атокодировщика и после? 11:53:01 From vas.che : вот и я не понимаю:) это как раз из ДЗ. левую/правую половину картинки 11:53:13 From Michael : Обновляем функцияю rho_loss? 11:53:52 From vas.che : ок, теперь понятно. спс 11:55:00 From Roman Novokshanov : Да, понятнее но ссылки не помешают ) 11:55:06 From Алексей Прохоренков : Если честно, надеялся что хоть практика прояснит лекцию, но понятней не стало. Поэтому прошу ссылки) 11:55:26 From Michael : Идея понятна, но не более. Практика не помогла 11:55:33 From Roman Novokshanov : После домашки все будет кристально чисто ) 11:56:03 From Michael : Надо руками попробовать и что-нибудь почитать. 11:57:09 From Алексей Прохоренков : Мне видимо в целом не хватает понимания, а вопросы по контексту лекции мы задавали. Лучше самому поэтапно разобраться 11:57:21 From Michael : В домашке надо внедрить дивергенцию в стиле min? 11:57:35 From vas.che : формула дивергениции в def rho_loss? 11:57:45 From vas.che : или я туплю? 11:58:15 From vas.che : они рождаются по ходу дела:) 11:58:23 From vas.che : давайте еще реализацию. 11:58:41 From denis : давайте посмотрим 11:58:48 From vas.che : + 11:58:50 From denis : + 11:58:57 From vas.che : если что можно и запись посмотреть 12:06:01 From vas.che : вопрос возник, какой размер латентного слоя обычно задают. Есть какие-кибудь правила хорошего тона? 12:13:11 From denis : сколько нужно обучать, чтобы достичь такого качества очистки от шумов? 12:14:42 From denis : в нашем случае мы и близко к этому не приблизились 12:15:53 From Michael : еще по обязательной домашке. Формула в def rho_loss прямо как на слайде 25. Не могу понять, что в ней нужно менять. Или мы просто переименовываем ее в def loss? И это вся обязательная часть? 12:17:11 From Michael : ок 12:17:42 From Oleg Mironov : Спасибо, до свидания.