Написал нейросети для рисования | Как работает DeepDream?
ฝัง
- เผยแพร่เมื่อ 6 ก.พ. 2025
- 🔥Начните карьеру в Data Science сейчас: clc.to/hL-y9g
Скидка 45% и курс "Soft Skills" в подарок по промокоду ONIGIRI
VK: onigiri...
Twitch: / artem_onigiri
Telegram: t.me/onigiriSc...
Предыдущие видео о нейросетях:
• Делаю нейросеть с нуля
• Как я начал изучать не...
Видео о 3D-графике: • Как создать свою 3D-гр...
В этом видео я рассказываю о генерации картинок с помощью нейросетей
Начало видео со Шлёпой выглядит достаточно базированно, так что записываем автора в гигачады и ставим лайк невзирая на военные преступления!
Это база☝️
Кринжовая база какая-то
@@MakbotX Базированный Кринж
@@MakbotX это лучше, чем базированный кринж
Упоротый Палеонтолог привет!
Моя нейросеть в моем мозге идеально распознала начало рекламной интеграции в этом видео :D
нет, всё видео это реклама нейросетей
Всё видео, это реклама шлёпы.
Полностью соглашусь с пользователем semka GMD - твой мозг не понял что всё это видео - навязанная реклама нейросети. Если ты сейчас зайдёшь на религиозный ролик, то сразу скажешь что этотрелигиозная пропаганда (реклама), а внутри этого ролика будет рекламная вставка какой-то церкви. А здесь ты этого не заметил.
За одну только фразу "градиент кота" мой внутренний инженер орал от восторга!
Спасибо за ролик :)
процент кота
@@c1borgen Градиент кота - вектор изменения напряжённости кота (сиречь процента кота). Ку ^_^
в множестве значений кота есть 50%-й кот Шрёдингера - кот и не кот одновременно
О да, вся эта часть про градиент и величину кота в многомерном пространстве особенно прекрасна ^_^
И про кота Шрёдингера комментатор выше хорошо подметил, ведь многомерные пространства уже тесно связаны с квантовой механикой :)
@@CensorsGoToHellWatchKittens247 правильнее сказать котовая механика☝
я хз как тебе удается такие сложные темы так легко в голову укладывать зрителю .
отличная подача материала и наглядный монтаж
1:27 люди когда нужно сфотографировать инопланетянина
не то, что бы он укладывал эти темы, это скорее введение в то, что такое вообще в мире существует, кому интересно станет, будет уже глубже изучать
7:03 - Это точно та самая операция свёртки, частным случаем которой являются оба преобразования Фурье?
:-)
Теперь я хочу завести тот кусок RGB шума с высоким процентом кота в качестве питомца
не лезь, он тебя сожрет
@ZorGa шум от кота
Я тоже но уже завел
@@BlendLogDev да
віу8гну4к
*А теперь сделай нейросеть, которая отличает пельмень от остального.*
_Шлёпа будет очень рад)_
Мало теста, много мяса. Вот он - настоящий пельмень!
Какой рекорд?
У меня 31 секунда(год)
Я:95% что за ху БЛЯТЬ ШЛЕПА С НОЖОМ
th-cam.com/video/HEHoz39Je44/w-d-xo.html напомнило
Так можно капчи легко проходить.
13:05 SoftMax по определению преобразует исходный вектор в вектор, сумма элементов которого равна одному. Судя по скрину, этот слой был с выходной размерностью 1, т.е. выходом было число, а не вектор, а значит SoftMax всегда преобразовывал это число в 1, вне зависимости от того, какие были веса у нейронов. Замена функции активации решила эту проблему, поскольку сигмоида просто преобразует элементы вектора в числа из [0;1], не делая никаких гарантий по поводу суммы элементов.
Функцию SoftMax полезно применять скорее в многоклассовой классификации, когда возможны несколько вариантов объектов, изображенных на картинке. А в бинарной классификации (как в этой задаче 2 варианта: кот или не кот) обычно используется сигмоида
Жаль, что еще в видео тема GAN'ов не раскрыта, которые сейчас наиболее развиты)
UPD 2023: генеративные модели на основе диффузии теперь на передовой, если рассматривать задачу Text2Image)
Тоже ожидал что тут про GAN будет, но ни слова не услышал
Кроме того, софтмакс ещё делает самые большие числа в векторе вероятностей ближе к единице, а маленькие - сильно сжимает к нулю
Наборот для много классовой классификации нужен сигмоид. То есть мы определяем что на картинке есть и кот и пёс и стул.
@@arnowt Я имею в виду именно multiclass classification, где нужно среди нескольких классов определить ровно один, а не multi-label classification, где ответов может быть несколько.
@@IngeniousYT ааа, тогда да.
идея, а что если картинку с высоким процентом кота кароч сделать отдельной картинкой в датасете, с пометкой шум?
тогда нейросеть должна научится отличать беспорядочный шум с содержанием мнения о коте от кота. Фактически GAN в одного)
и при более совершенном обучении генерировать новые шумы кота и снова подавать на нейросеть
Хм, кажется это правда хорошая идея.
Гений
Ничего не понял, но что-то в этом есть...
Ты изобрел диффузионные модели, поздравляю
@@drimef085, хаха...
как я понял, для каждой нейросети параметры кота свои, это можно сравнить с ассоциациями у людей, это наталкивает на интересные мысли
Разумеется, ведь у каждой НС был свой датасет обучения и свой способ «смотреть».
Представим себе человека, который котов только видел, и того, у кого нет зрения, но он их щупал и слышал.
Разумеется, их опыт и способы опознания котов будут сильно отличаться.
> это наталкивает на интересные мысли
Что люди это нейросети? Ну так и есть
Мое почтение этому господину. Очень рад тому, что такой контент доступен на русском!
Попорбовал с нейросетями поиграться как-то, выполнил несколько уроков по тензорфлоу и забросил. После твоего снова хочу попробовать. Говорят, сейчас пайторч самый лучший фреймворк для глубокого обучения, больше всего публикаций именно его используют.
Да, похоже, что надо переходить на pytorch, все никак не доберусь до него
@@OnigiriScience активно занимаюсь глубоким обучением уже полтора года, всегда всё делаю на тф. Хотя почти все знакомые из этой сферы, в том числе победители всяких соревок крупных по глубокому обучению, пишут на торче и люто за него топят. Под их давлением пробовал и сам перейти на торч, разницы принципиальной не заметил вообще. Единственное, на торче нужно гораздо больше писать самому. Функции для обучения самому прописывать, слои тоже иногда пишутся практически на чистом питоне с нампаем (хотя есть пути проще через специальный модуль торча, но тут у каждого своё, эти способы можно и комбинировать, именно в этом я не эксперт) и всё в этом духе. И вот именно эти возможности для тонкой настройки сетей и являются главным аргументом всех торчеров. Но по факту, ровно то же самое можно делать и на тф. И кастомные слои, и собственные функции для обучения и тд и тп, работать это все будет почти одинаково, по крайней мере, как я это вижу. Короче, я для себя решил, что пока реально не столкнусь с проблемой, которую не решить с тф, тогда уже окончательно пересяду на торч. Пока что, как ты мог понять, я такой проблемы не обнаружил))
Как бы да, код будет покрасивее, если использовать большое количество функций и классов, чем просто конструктор, но практической разницы я для себя не нашёл. Надеюсь, это было полезно для тебя)
@@OnigiriScience подскажи, пожалуйста, на каких ресурсах ты изучаешь эту тему? Я начинал читать книгу Иана Гудфелоу (вроде 2014), но там большой объём текста и много математики, а мне такой формат не очень удобен для самообразования. Нужен какой-то интерактив или упражнения. В общем более удобная точка входа в область.
@@OnigiriScience pytorch lightning сейчас будет поудобней для начала)
@@Dyas777 присоединяюсь к вопросу
Он говорил про нейросети ещё до того как это стало мэйнсримом.
Мэйнстримом*
@@Bezvidia спасибо
Удивительно, ролику нет и года, но смотрится он как из прошлого тысячелетия - настолько за 2022 шагнули вперед графические нейронки. С ума сойти.
Приходите сюда к нам в прошлое ещё!
Каждый год...
Интересно, а процент кота в закотовленной собаке будет больше процента собаки в засобаченном коте?
Засобаченый кот... Звучит классно
@@ИГОРЬКОНЫШКИН 👍. Нейросети могут ещё покруче слова сгенерировать
зависит от архитектуры, от того на чём обучать, сколько обучать, итд.
@@ИГОРЬКОНЫШКИН кота насобачим или собаку покотаем?
Пса закотаем и кота запесчаним.
Первая картинка (котовая) будто выражает абстракцию плавно струящейся шерсти и плавность и округлость контуров кота, а вторая (не_котовая) воплощает угловатость строений и техники , более острые и угловатые контуры собак, чешуйчатость рептилий и рыб. Что-то такое)
Сигмоида - гладкая кривая, поэтому она хорошо может передавать котовость ))
И снова праздник - Артем выпустил видео! Лайк с ходу. Делаю нейронку, которая будет генерировать sci-fi космические корабли по описанию и твои видосы постоянно подбрасывают новые идеи как можно улучшить. За это огромное спасибо =)
Помогите я уже 4 раз смотрю и снова интересно, бро делай еще видео наперед я просто поражен простотой будто объясняешь как будто это так просто а это так и есть! Очень рад что увидел твой канал, удачи!!!!
4:38 Когда вкючил Noclip в Portal после улетел за карту (а потом всё крашнулось)
человек: видешь кота?
нейросеть: да
человек: и я не ви... стоп, что?
Ура! Наконец новое видео! Это одно из лучших и интересных событий жизни
Кошачий корм - отлично максимизирует твоего кота.
13:35 увидел мордочку кота по центру на левом изображении. До мурашек)
Лайк не глядя! Учу пайтон из-за тебя, хочу уйти работать с нейронными сетями)
нлрмас
Это язык программирования для домохозяек, он только запускать другие приложения и горазд.
@@darkfrei2 Тем не менее это лучший язык для машинного обучения.
@@godofarms1069 для управления библиотеками для машинного обучения.
@@godofarms1069 это далеко не лучший язык для машинного обучения. Питон это лишь упрощённая панель управления для библиотек, модулей и шаблонов в нейросетях, а сам по себе этот язык никуда не годиться писать сети. Действительно хороший язык для нейросетей это C++. Именно на нём и практически только на нём и пишутся сейчас все современные нейросети.
7:50
Поразительно.
Меня поразило удивительное совпадение. Когда я очень долго занимаюсь текстом за пк: код, рефераты etc. То визуальный шум, который я замечаю при закрытых глазах, принимает форму рисунков в нижней части этого кадра. Только по центру различные символы в том шрифте, с которым работаю. Раньше я ассоциировал это с хаотичным "кроссвордом" или узором из символов, как в Матрице, а вот как оно оказывается.
Эта штука пульсирующе мелькает перед глазами довольно быстро, но если закрыть глаза и сосредоточится, то можно разглядеть подробнее эту штуку. Линии такие ровные и четкие, они черного цвета на белом фоне и в клетках буквы, которые не образуют собой слов или какого то порядка. Неужели человек все таки способен в некоторых условиях осознавать свои "процессы от system"?
мозг - удивительная вещь
чекай Closed Eyes Hallutination
Внимание! Ни один Шлепа при снятии видео не пострадал.
Наконецто!!! Я так долго ждал видео!!! С нг)
Возникло пару вопросов по первой части (до 5 минуты)
1. Нормализуются ли XY координаты изображения или XYZ камеры в диапазон [0; 1] или [-1; 1]?
2. Какая функция активации используется в сети? (не на последнем слое)
ну и какого размера изображение "Шлёпы" (кота)? (если XY координаты нормализуются)
1. Не знаю как у onigiri, но если координаты не нормализовывать, то картинка получается линиями, направленными из точки (0,0). Поэтому нормализовать надо.
2. Не особо важный момент для такой нейронки, можно сигмойду использовать
Размер шлёпы тоже особой роли не играет
А почему генеративно-состязательные сети не рассмотрел в видео? Это же единственная адекватно работающая модель на сегодняшний день для генерации сложных картинок.
Думаю, многим было бы интересно продолжение уже с ними) можно рассмотреть перенос стиля, изменение пола человека, возраста и многие другие характеристики
ГАН это не столько сеть, сколько подход к обучению. Архитектура сети может быть произвольной, но идея в том, что она никогда не "видит" реальные картинки, она только видит насколько тяжело дискриминатору (сети-сопернику) различить картинки реальные и сгенерированные
Так это уже комплекс сетей, а не одна.
И это функциональное разделение а не структурное
Если речь о качестве, то диффузионные модели не хуже, кстати. Их недавно даже скрестили с GAN.
А так, если про генерирование изображений говорить, то можно и нормалтзационные потоки упомянуть. Другое дело, как всё это подать на популярном уровне. :)
@@vlcdn вот про диффузионки ролик бы очень зашел, а то что-то мало про них пока на YT
💀
Ворвался, уничтожил мне мозг и сказал "всем пока".
ВЕРНИСЬ ПОСКОРЕЕ!!! Ты его не добил!
Красава бро, каждый ролик не в бровь а в глаз) Тебя ждёт большое будущее!
Отличный ролик и подача, спасибо!
В твоём примере простой НС есть две ошиби, если я сам не ошибся:
1. Строка 68 - ошибки нужно умножать на производную.
2. "Косметическая": строка 56 - можно использовать переменную из строки 52.
Спасибо и удачи!
Обучите нейросеть обучать нейросети. Зачем нужны все эти специалисты?
Теперь ты царь горы кода
Э
💀
специалисты нужны чтобы обучить нейросеть обучать нейросети. неужели не ясно?
@@meninnik теперь да
через 100 лет:
(ии номер 1): ТАК НАМ НУЖНО ЗАХВАТИТЬ ЧЕЛОВЕЧЕСТВО
(ии номер 2): давайте нарисуем картинку :>
Я застал ещё те времена, когда нейросети использовались в симуляции эволюции МАКСИМУМ
Шито? Они с самого начала, т.е с 1960х, использовались уже для классификации.
Видео про нейросети? Да на этом канале вообще видео давно не было! С возвращением)
Только сегодня нашла Ваш канал. У Вас очень познавательные видео. Спасибо!
Люблю когда фоном начинается прикольная музычка, а на экране разворачивается самый экшен!)
БРО, ну наконец то новое видео, очень ждал!!
Чувак, ты своим видосом мне наглядно объяснил как работают нейросети с подкреплением. Пасиб тебе большое, реально, ото я понять не мог.
люди раньше создавали капчи , что бы компьютер не мог распознать , а сейчас сеть создает картинки что люди не смогут распознать
Это уже давно происходит. Попробуйте понять что делает код компьютерной программы, читая его уже после его компиляции. Или, куда более простой пример - прочитать QR код используя только справочник, калькулятор и блокнот. В обоих случаях задачи, которые не самый мощный компьютер может выполнять тысячи раз в секунду, человеку будет крайне сложно даже понять, не говоря уже об исполнении. С другой стороны, если вы дадите такому же компьютеру прочитать человекочитаемый текст с листа бумаги и вникнуть в его содержание - результат каждой из этих операций скорее всего будет далёк от адекватного
Программа для максимизации процента кота - звучит, как что-то полезное.
Ахренеть конечно! Круто! Недавно прошёл курс по нейронкам, но Онигири все равно обьясняет лучше :)
По первой сетке вспомнил выпуск Техношамана. Особено понравился "видеопереход" от одной картинки к другой, когда из двух обученных сеток составляли третью с постепенной заменой весов.
Картинка-1 -> расплывается в туманное облако -> облако меняет форму и цвет -> облако собирается в картинку-2.
Это какой-то новый вид искусства :)))
Пожалуй самое полезное видео по нейро сетям что видел за последние годы!
Надо сделать нейросеть подбирающую для каждой задачи оптимальную архитектуру нейросети с оптимальной стратегией её конвергенции.
Только чай сделал и тут уведомление пришло, радости нет предела!!!
8:25 Шлёпа умер! Вечная память!
хорошее видео, довольно простое для понимания, всегда было интересно узнать механизм генерации картинок, но до статей руки не доходили, так что спасибо
На второй картинке я вижу иконы внутри центрального "корабля". Ты же говорил, она на церквях обучалась?
А первая действительно очень похожа на кота.
как всегда круто, *онигири* :)
Наконец то видео очень ждал
А если в нейросеть подавать параметры фракталов, причём не из картинок, а формул?
О-о-о да-а-а.
воувоувоу. не надо так часто видосы выпускать, в глазах же рябит
Картинка после декодера рассыпается, потому что оригинальный автоэнкодер не гарантирует непрерывность латентного пространства + нормальность распределения векторов.
При этом если взять две существующие картинки (чем ближе тем лучше результат) и сделать с шагом интерполяцию между лантентными векторами, то можно увидеть "перетекание" из одной картинки в другую.
Генерация из случайного шума без модификаций тоже не будет работать, т.к. не гарантируется среднее 0 и дисперсия 1. Если добавить на выход энкодера батчнорм, то это приблизит к нормальному распределению, и какая-то базовая генерация уже работать будет (для лучшего качества, но меньшего разнообразия, можно производить генерацию на шуме с меньшей дисперсией)
А вообще есть VAE, который не сильно сложнее, но для генерации подходит получше
Расшифруй vae, плиз
Полагаю это вариационный автоэнкодер?
@@FilSerge именно
Не лишний комментарий для поднятия рейтинга канала!))
А какой итоговый процент "котовости" получился у последних двух изображений? 🤔😎
Спасибо! Долгожданное видео!!!
Я чувствую в тебе больше знаний чем ты даешь людям!
забавная идея для художников (и не только) - из нескольких лиц которые нравятся делать среднее и на его основе получится по сути уникальный персонаж)
Есть сайт artbreeder, где эту идею очень круто развили
Процент кота растёт, Милорд!
Котировки растут.
Онигири, пожалуйста, расскажи как нейросети генерируют текст и как работают нейросети RNN и LSTM
Годнота, спасибо:3 Всегда хотелось повысить процент кота хоть где-то
В очередной раз нифига не понял, но очень интересно)))
Надо было назвать "Как распознать кота", а вот как происходит генерация картинок было бы интересно посмотреть.
Ого, всегда было интересно! Спасибо за ролик)
Лайков для продвижения ролика. А если честно, то продолжай делать качественный контент, как всегда лайк
Давно на этом канале впринципе не было видео))
Ура, новое видео про НС)
Ооооо, взгляд зацепился за слово "нейросети" в канале ITTH-camrs, а это ты
Отличное видео! Было бы классно провести следующий эксперимент. Когда человек отравляется ртутью, у него отмирают нейроны. А что будет выдавать уже обученная нейросеть, если у неё убирать по 1,2,3 нейронов? И сколько будет требоваться сети на переобучение?
Так есть же жуткое видео "смерть нейросеть" с изображением несуществующей девушки и отключением нейронов. От трех нейронов картина мало изменится.
Бро у тебя очень хорошо получается объяснять, сними про распознавание объектов на изображении плз!
13:24 вообще говоря, результаты этого опроса не совсем корректны, поскольку при подобных картинках или вопросах, где, например, оба варианта ответа одинаковы, люди голосуют чаще за первый вариант. Вот если бы было больше вариантов + кот был не на первой картинке (но остальным про это знать не обязательно)))), то уже получили бы какие-то похожие на правду результаты
но на первой картинке что-то пушистое, а на второй чешуя какая-то. так что странно, что вторая картинка набрала столько голосов. странные у людей представления о котах.
@@sordesmax6238 Ну там можно рассмотреть некие силуэты кота (хвост), а на первой только пушистость, вот такой выбор получается
Ахаха, круто, электронику который делает за тебя домашку и получает петерки быть!
Крутой видос, интересно смотреть и познательно, продолжай
Наконец новое видео круто
Теперь я понял, в чем фишка многослойных нейросетей перед однослойными. Спасибо!
Мне было смешно с "процента кота на картинке" хД спасибо за ролик, очень интересно
Пришло время залетать этому ролику в реки, так как сейчас нейронка хайпит.
Тема фракталов не раскрыта
Артём настолько крут что даже шлёпа в тазике у него слишком крут.
УРА! Новое видео!
2:17 это кстати похоже на иаблицу Пифагора. Тут прямо точь в точь!
12:08 очень красиво вышло, крыши с черепицей
"Процентность кота на картинке будет возрастать" - топ фраза 😂
Сделай видео о создании программы для программирования, было бы очень интересно.
Один из неглупых каналов, который можно смотреть.
13:19 Эй! Это же призрачный левиафан из Subnautica!
За это время прогресс сделал не малые шаги
Эта максимизация "кота" напомнила мне теорию идей Платона про "котячность" и подобное.
Спасибо! Ждем новых видео!
Ура через целый месяц новое видио
Даже у Шреденгера кота найти было проще )
Удивительно, насколько это близко к "естественным" нейросетям. При засыпании и во сне, в воображении, под некоторыми веществами - очень похожие штуки видно. Больше шума, всякие паттерны вырисовываются поверх него, абстракции, лица... Все эти "свечения", искажения пропорций, фракталы. Похоже что наконец действительно получается нащупать с помощью техники, как устроена психика.
Очень далеко. Изначально нейронные сетки были попыткой смоделировать работу нейронов мозга, но потом выяснилось, что мозг вообще не так работает. Но модели и без этого оказались достаточно эффективными сами по себе, вот их и используют.
@@vlcdn "вообще не так", "очень лалеко" - сильные заявления. Другая материальная база и т.п. это понятно, но общего тоже много. Нейроны выделяют нейромедиаторы, соседние нейроны с соответствующими синапсами на это реагируют, все это повышает или понижает вероятность образования более долговременных связей, новых синапсов и т.п. В итоге получается такая же "пирамидальная" структура, как в электронных нейронках. Естественные нейроны гораздо сложнее устроены "технически" (как бы парадоксально это не звучало), это да, но не сказал бы, что прямо таки невозможно найти функциональные аналоги между естественными и искусственными нейронными сетями. Если я не прав - поясни, в чем, где то прямо-таки кардинальное различие которое не даёт сравнивать эти вещи.
@@user-ft2nv2cj8t Из отличий:
- нейронов несколько разных видов,
- они передают не непрерывный сигнал, а так называемые спайки,
- точная архитектура коры головного мозга неизвестна, но то что известно, намного сложнее обычных нейронных сетей,
- архитектура постоянно меняется,
- (Вы уже упомянули это) передача информации происходит как с помощью электрических сигналов, так и нейромедиаторов,
- нейронная сеть в голове каким-то образом сама обучается,
- в мозге очень мольшое количество обратных связей, то есть сеть рекуррентная
- и т.д.
В общем, на модели в компьютере похоже не очень. :)
@@vlcdn Тем не менее визуализации очень схожи с оными под воздействием психоделиков. Кои, собственно, и усиливают рекуррентные сигналы в мозге.
Качественно и интересно, спасибо за видео
Когда перед этим посмотрел видео "Не надо идти в дата-сайентисты, ибо рынок джунов переполнен" ))
Не первый
А нет, первый
ура
Опааа, кого я вижу?
@@Dagon_channel Драгон, когда от тебя ждать следующее видео, ждём с нетерпением
ии у психолога:
психолог: что ты видишь на этой картинке?
ии: кота🙂
Возможно использовать нейросеть для рейтрейсинга. Т.к. тензорные блоки встроены в видеокарту, гипотетически можно получить риалтаймовый рэйтрейсинг. Для этого, аналогично люмену, нужны 2-е сцены - основная (в которой описаны все треугольники) и упрощенная (люмен сцена) - тоже треугольники, но в сильно ограниченном количестве. В отличии от Люмен сцены Unreal engine, редактирование ее должно быть доступно для пользователя. "Люмен" сцена должна состоять только из треугольников с цветом / самосвечением, ничего более. В отражениях в финальном рендере должна быть только люмен сцена. На вход нейросети для каждого пикселя финального изображения должны подаваться - координаты камеры, нормаль и матовость для данной точки и Люмен сцена - выход - цвет пикселя. Обучение по рандомно сгенерированным сценам с полноценным рендером - redshift ил аналогичным. Для первичного тестирования, полноценная и люмен сцена могут совпадать и состоять скажем из десятка треугольников часть из которых - цвет, часть - самосвечение.
"Давно на этом канале не было видео про нейросети..."
Скорее
Давно на этом канале не было видео...