Твоя ПЕРВАЯ НЕЙРОСЕТЬ на Python с нуля! | За 10 минут :3
ฝัง
- เผยแพร่เมื่อ 30 ก.ค. 2023
- Вероятно, самый понятный и нескучный урок по нейросетям с нуля.
Только при помощи Python + NumPy и на реальной задаче, с последующим сохранением модели.
Освойте профессию «Python-разработчика» с нуля в Яндекс Практикуме - clck.ru/357mxW
🆇 Ссылки из видео 🆇
𝟭: Часовой урок по работе с нейросетями на Tensorflow и Pytorch - • Учим Нейронные Сети за...
𝟮: Статья про нейрон смещения - habr.com/ru/articles/313216/
𝟯: Датасет MNIST в формате NPZ - storage.googleapis.com/tensor...
𝟰: Статья про алгоритм Backpropagation - habr.com/ru/articles/198268/
𝟱: Статья про функции активации - habr.com/ru/articles/727506/
𝟲: Графики активационных функций - machine-learning.paperspace.c...
𝟳: Архив с кодом из урока - drive.google.com/file/d/1CtEt...
𝟴:
𝟵:
🆇 Главы 🆇
0:00 - Начало
🔵 Наш TELEGRAM: t.me/howdyho_official
Наш ВК: howdyho_net
Сотрудничество topic-84392011_33285530
💗 Музыка предоставлена TH-cam Audio Library. - วิทยาศาสตร์และเทคโนโลยี
💗 С вас лайк, я честно старался!)
А еще обязательно чекните часовой урок по нейросетям на Tensorflow + PyTorch - th-cam.com/video/1quKqf47V6s/w-d-xo.html
Ау хауди а где Джарвис 3?
Хорош братанчик, знал что снимешь более глубокое объяснение
Ты кстати manim попробовал использовать? Если да, то как тебе библиотека?
Хауди Хо™ Как скачать игру, Демка дрифт игры на Unity (эксперимент) v4 которую ти сделал фильм 6 частей вроде
Хауди, сделай видео "Учим Godot 4 за час" или плейлист по Godot 4.1! Этот движок сейчас быстро развивается и классно бы было посмотреть в твоей подаче и русской озвучке, а также язык GDscript очень похож на python!🙂
Это все конечно сложно но я надеюсь Хауди что ты рано или поздно создашь нейросеть которая будет искать бабки в интернете и сбрасывать их на карточку пользователю) Это будет топчик. Я верю в тебя.
проще создать сеть,которая берёт бабки у олигархов и ложит на карту пользователя,но проблема в том что потом за своими бабками придут бандиты и менты🤣🤣🤣
единомышленник нашёлся
Ага но об этом ты не когда не узнаешь
Это про тот самый пост в тг?)
@@user-duignwkfpcb2 не понял о чём, я даже не могу найти свой комментарий, чтобы понять о чём речь
Images, labels = utils.load.dataset() выдает ошибку, что нет такой команды. Что делать?
8:13
На самом деле из видео именно про основы я ничего не понял: какие среды используют для работы с неросетями, ни того, как Пайтон используется для нейросетей - для полноценного понимания видео я уже должен был это знать.
Подскажите, что за обои у автора ( мб ссылку на wallpaper engine /название). Заранее спасибо
Это самый простой урок по нейронкам из того, что я видел! Ты реально крут! Я попробовал и у меня всё получилось! Правда на видео есть ошибка в функции загрузки модели для обучения, но есть исходники, которые отлично работают!
Это что, я стану умным?
Да
Возможно
Зависит от человека
Нет
@@alexandrunknown1456жаль
Хауди, давай больше подобного контента, это суперски. Из русско-язычных мало кто так понятно обьясняет нейросети. Спасибо
Спасибо, жду виде про временные ряды на tensorflow на примере прогнозирования цены Bitcoin
Очень круто! Спасибо большое!
Спасибо очень интересно. Искал базовый понятный пример работы нейросети.
Вот, где действительно нужен матанализ с линейной алгеброй))))
да какой там матанализ лол...
11 классник поймет, математика в более сложных вещах используется
@@TurboGamasek228 ну насчёт того, что это еще не самое сложное, я согласен.
Но в backpropagation при обучении нейросети используются производные как минимум, это уже матанализ))
@@dimondsafkage4620 11 класс
@@dimondsafkage4620тебе же не надо самому дифференцировать ничего. Разве что в образовательных целях.
матана там нет, только линал
Хауди какой программой для обработки видео ты пользуешься?❤
И будет ли по ней ролик?
А это разве не оффтоп?
@@MrYbs-ie1jjоффтоп?
Спасибо за урок! Просто и понятно. То, что нужно в самом начале пути!!!
уже пробовала?
Доброго дня, автор подскажите пожалуйста а почему инициализация весов начинается в диапазоне -0,5 0,5 почему именно это. Интервал? Не 0 и 1 не -1 и 0, прошу объяснить спасибо
Хороший урок👍👍. А про рекуррентные нейронные сети видео будет???
2:16 - мелкая поправка: вы и есть сама "Нейросеть".
Спасибо за этот видос, Хауди!!
помогите, пожалуйста, программа выдает ошибку:
cannot reshape array of size 47040000 into shape (60000,28)
Выделяет строку x_train = np.reshape(x_train, (x_train.shape[0], x_train.shape[1]))
там надо было на 9 строке в файле utils.py дописать ", x_train.shape[1]" , то есть
x_train = np.reshape(x_train, (x_train.shape[0], x_train.shape[1], x_train.shape[1]))
@@defaultz01 хорош мужик, не подскажешь с hidden_raw = bias_input_to_hidden + weights_input_to_hidden @ image
ошибка: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?) (size 28 is different from 784)
Давай видос про свою модель GPT с нуля)
Вопрос не по теме. Где взять такие обои для рабочего стола? Они просто великолепны!
Как же я благодарен этому миру, за то что есть хауди и его канал. Не знаю кому как, но мне его подача невероятно помогает . сколько уже тем я благодаря ему освоил, даже посчитать сложно. Всегда дает качественную выжимку сложной темы без лишних углублений, только суть и четкое направление куда копать, чтобы реализовать собственную идею идею.
Чува ты не чего не объясняешь, просто говоришь просто объявляем это, если вам что-то не понятно купите курс по программированию. Ты как учебник информатики не чего не объясняешь, я только понял что нейроны пропускаю через себе информацию, и то я это вспомнил из видео как работают нейросети где чел объяснял 1 час 20 минут. Ты даже понятным простым языком не объяснил что такое матрицы, нет сказать что матрицы они по каждому пикселю собирают изображение в виде 00, 01. np.random.uniform(-0.5, 0.5, (20,784)) вот что это? ты просто что веса это : чтобы нейросеть лучше справлялась с задачей, ты даже пример не показал, ты не объяснил понятным кратким языком что это, ты просто сказал что это просто надо, это как рассказывать куча воды которой не понадобиться под предлогом что это понадобится, и спустя час воды в уши говоришь съёмным видо, для чего это надо, почему не рассказать всё понятным языком? Почему ты не мог понятно объяснять код? Ты даже не объяснил значения переменных, мне кажется ты даже сам не чего не понимал поэтому читал статью, и переписовал код с сайта. Если не разбираешься, то зачем учить не правильной логикой других людей?
А ты чё хотел за 18 мин?
Сейчас я вам за 3 минуты объясню, как делать операцию на мозге
Тут важен контекст. Если понимать, что 'с нуля' это значит человек незнаком даже с мат аппаратом, то такого обьяснения недостаточно. А если знаешь матаппарат и Пайтон, но совсем не знаешь как делать сеть на пайтоне, то норм. То есть с нуля, означало без использования более высокоуровневых пакетов, чисто на пайтоне. Он так вначале и пояснил.
Кринж чел. Это развлекательный контент, а не обучающий. Если хочешь чему-то научиться, то лучше уж посмотреть каналы с лекциями по то или иной теме и почитать учебники. На развлекательных видео ты ничему не научишься, если у тебя уже нет опыта. Развлекательные видео сделаны, что заинтересовать человека в той или иной сфере, в дальше если человеку понравилось то он пойдёт изучать матчасть. Крч жаловаться на малую информативность в развлекательном видео - кринж, как я и сказал вначале
Это просто для общей информации, обучения тут нету))
Можете дать ссылку на видео или расскажите мне как хауди настроил свой саблайм текст
хорошее видео!
сжато и информативно...
Спасибо за видео!
Когда сделаешь видео по какому-то интересному проекту? (Типа джарвиса и тд)
Как я понял, больше всего времени занимает преобразование обучающих и тестовых данных к стандарту в обучнии нейронки. А остальное было обьяснение и написание самой нейронки?
Круто, попробовал, да действительно работает!!! Очень доступно и понятно, и все реализовано на широкораспространенных бибилиотеках.
Спасибо за видео. А как научить общаться? Ну или выдавать нужную инфу по "скормленным" данным? Кучу роликов пересмотрел и что-то вроде понятно, но не простым языком там сказано, у тебя попроще объяснения, хотя смотрю и слушаю тебя на скорость 1.75, уж больно медленно излагаешь для меня))
Опана, вот это вкусненько
что-то я картинку свою сделал, нейросети скормил, а сетка её не распознаёт.
Говорит что моя 4 на самом деле 3. А если одну эпоху накинуть, то вообще 7.
"Backpropagation - дебри нейросетей."
Понял.
Благодарю! Повторил - работает! правда описочек по коду.... :-)
Оо Хауди в рекламе годноту рекламировать начал, держи царский лайк))))
Наконец-то годната😊
Но не у него(( я начал писать и у меня какая- то ошибка
в какой програме ты роботаеш?
Супер ❤
Попробуем 👍
Ну это каждый ребенок может нагуглить и разобраться. Давай что-то посложнее, например, реализацию свертки в виде матричного умножения и ручками бэквард реализовать для этого слоя. Все на нампи офк)
Не каждый
Што 6лять?
Благодарю за урок! Четко, интересно и грамотно изложил.
Спасибо за видео но как потом юзать сеть которая может определять буквы в картинках 28х28? Что дальше делать с ней? Фотографии имеют размеры на тысячи пикселей. Как в такой фотке найти цифры?
Надо изменить размер изображения с исходного на 28х28. По идеи можно и оставить как есть, но! Нейронная сеть полносаязная ( каждый нейрон связан с каждым) 28х28- это 784 нейрона на входном слое + нужно расставить веса на каждый нейрон( каждый с каждым) , представил что будет с изображением 1200х1600😅. Сеть не сможет нормально обучиться из-за огромного количества весовых коэффициентов.
Братан, хорош, давай, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
Харооош
Супер 🙌
3:28 Выхлоп нейросети?? Кто-то перелюил субару
Мне нужно разработать приложение с ИИ, которое будет давать советы по окружщей среде с камеры смартфона. С чего начать обучение программированию? Какие языки и ИИ выбрать для этой задачи?
Еще осталось видео по тому, как делать свой датасет с нуля.
на примере нынешних нейронок, возможно ли обучение нейронки по предсказанию курса валют или акций? Интересно, насколько точными были бы такие предсказания нейронкой. Камнями не закидывайте, просто вопрос из любопытства. (или уже все так делают?)
Уже давно делают, правда чаще обходятся бустингами какими-нибудь, но и нейронки тоже можно
@@mrgeodezik2122 О, прикольно, трейдеры получается ещё до шумихи про нейронки делали подобное)
Нет, потому что слишком много нужно учитывать данных
@@rucat284 Ну это же nonsense. Много данных - ну и отлично, много признаков - можно отобрать поменьше.
При этом нормальные модели получаются, на kaggle куча соревнований от банков на прогнозирование временных рядов. И качество топовых решений там впечатляет.
Чисто по графику не получится прогнозировать, потому что на курс валюты влияет ситуация в мире. Закономерности, конечно, есть, но проще какой-нибудь дефолтный алгоритм написать, чем нейросеть городить.
Сам помню писал с нуля нейросеть, но именно "мини-библиотеку" для работы с ней (на С++) (это был простой перцептрон и при создании я мог настраивать количество слоев, нейронов, скорости обучения т.д.)... Мудохался 2 месяца, разбирался, учил и пытался перенести все в код. В итоге все заработало. Точность 90-95% и больше. Но когда начал тестить на картинках которых нету в тестовом файле она начала тупить (в среднем порядка 70% точность) думал что переобучил - нет, проверил код на ошибки - все ок, много чего перепробовал и в итоге оказалось что в этом "шедевральном" датасете цифры 6, 7, 9 и вроде 1 рисованы по какому-то шаблону. Цифры 6 и 7 например, буквально большинство нарисовано в верхней части картинки, а 9тки почти все без закругления снизу и больше напоминали "q". В итоге сделал выравнивание по центру и все заработало на ура (на тестах что-то 95%, а на написаных мной 90+%, ну почти так же). Незнаю как у других, может то я что-то не то загрузил или что, но у меня такой прикол был. Я типа грузил картинки в формате .jpg с какого-то левого сайта, может там что-то. Но главное что нейросеть заработала и работает дальше (тестил уже много раз на разных заданиях - все хорошо).
Надо было наоборот не выравнивать, а каждую цифру "размножить" так, чтобы они на разных вариантах были в разных частях поля и можно ещё угол менять
@@lintop3908 да, называется аугментация)
@@lintop3908но тогда пришлось бы дольше обучать, а по сути ничего бы не изменилось
@@lintop3908это называется аугментация данных
а на каком языке ты писал саму нейронку
Привет, мир!
Привет Харди, можешь ли ты создать собственную гугл камеру которая будет снимать программные ограничения с камеры телефона?, например есть поко ф5 и ф5 про, у них одна и тоже камера и почти один процессор, но про снимает 4к 60 фпс а просто ф5 снимает 4к 30 фпс из-за программного ограничения
Харди Бэк?
вхахвахахахахаххаха че за кринж
Сделай видео где ты будешь создавать нейросеть которая будет общаться с пользователём
как выгрузить датасет пж скажите
Хауди: посвещает отдельное видео о нейросетях из за того что какому-то челу что то не понравилось.
Половина комментаторов под видео “учим Юнити за час” которая писала о том что видос длится 2 часа: 🗿
1:31 я думаю, это первая буква из слова "Задача" 🤣
Вообще в качестве обучения, ты использовал метод градиентного спуска , в который входит так же обратное распространение ошибки
4:35 для таких задач и делают квантовые компьютеры. Это буквально одна из самых простых функций квантового компьютера.
о новий видос❤ ура
Скажи как открить і редактировать файли bin?
Спасибо большое, ты супер!
Бро, спасибо за твою работу только новичку не понятно не слова. Это для тех кто в теме, а можеш сделать самую простую нейронку чтобы было понятно новичку? где каждая строчка кода была бы обьяснена? заранее спасибо
Можно гайд на тенсорфлоулайт для юнити?
После изучения elasticsearch и фонетической токинизации я думал что способен понять все...
Спасибо что спустил на землю
4:39 Вау! Это Latex в анимации Python Manim?
Изменено: Ответьте пожалуйста
Да, прикольная штука
@@HowdyhoNet то есть ты умеешь пользоваться библиотекой ManimCE?
Подскажите, как скачать библиотеки numpy и другие?
Import numpy as np ( при вызове этой библиотеке пишешь потом np)
@@user-yx1xm1uw3k где же ты был всё это время? Я уже HTML знаю, а python забросил...
@@thelevan4ik если для вас было проблемой импортировать библиотеку то это не ваше...
@@glebboyko8256 аххаха, невозможное-возможно, теперь на питоне сервера делаю и чат ботов
Пасиба!
Как называется музыка в динозаврике ?
Когда дрифт ))))))))
Очень жду
Класс осталась сделать нпс с нейро в место сценарий поведения будет круто вот только как простимулировать её понимать что хорошо что плохо
AttributeError: module 'utils' has no attribute 'load_dataset'
Также, не пойму почему
@@user-xq9rh1ke4zкак же я тебя понимаю
Привет. А на C# покажешь?
Как же жалко, что этого не было в школе 30 лет назад, когда я хорошо знал математику...
так а как в итоге сохранить обученную нейронку? кто-нибудь обьясните пж
Ты же редактировал весы каждую эпоху, сохрани их в конце в файле, затем создай код который уже будет использовать готовые обученные весы
Здравствуй автор, а вы можете записать гайд по созданию и обучению нейронки и по сборке пк для обучения нейронки допустим на материнской плате X99 D4X8 с двумя сокетами под процессоры зеон ? Спасибо
У меня мозг расплавился😢❤
🍅
Боже 4-5 лет назад смотрел твои видео и смотрел твоë видео делаю динозаврик 3д🥲
джарвис на питоне не работает :(( что то с обработкой проблема
Неработает даже полностью скопированный код из "custom-nn.zip" что не так то ??
будешь выпускать урок по расту ???
Возможно, в будущем
Боже, какие уроки по расту, он сам ничего толком не умеет, призываю найти адекватный канал, чтобы адекватно выучить rust, но лучше всё равно просто открыть элементарную документациб
Круто🔥как всегда качество на все 💯. Даёшь в графическим интерфейсом 😍
Го раст за час
Благодарю!!!
Омг, я думал я хорош в пайтоне, а тут целый темный лес для меня 😢
Благодарствую
Говорят что хауди замечает коменты
Слухи
Хауди, профи🦾💖💖💖 максимально!!!
Распознает текст уже начало, но хотелось бы чтобы искала информацию и давала результат после обработки
Короче это оч полезно даже для человека который не занимается програмированием
Полезно чем ?…
Тут сухая тех информация без подробных объяснений даже самого концепта
Как сказал сам автор: «Нейросеть будет не учиться, а запоминать»
@@nikozdevдля общего понимания
Огромное спасибо, у Вас обалденные уроки, так доспупно еще никто не обяснял- как дважды два. Теперь осталась только практика и время на неё. Вы супер❤!!! 🦾🦾🦾👍
невероятно, так это то что мне нужно, ну почти...
мне бы распознавание лиц или голоса, но это тоже пригодится, спасибо!
Для распознания лиц я использую в основном OpenCv
@@davvik_ спасибо, возьму на заметку!
Когда в Ютюб стикеры добавили? Вкюб какой-то
@@davvik_так то эту задачу можно решить используя тот же tensorflow илм pytorch, но с opencv наверное попроще будет, ведь эта библиотека (если я не ошибаюсь, ещё не изучал её) направлена на работу с компьютерным зрением, отсюда и название - opencv (open computer vision)
Видео хорошее и понятное, но мои цифры расспознает очень плохо. Теперь появился повод углубиться в изучение нейронок и научить распознавать мои цифры.
Уже гораздо лучше, чем было. Только не стоит сразу переходить к коду, сначала объясните, как работает нейросеть в плане теории для понимания, чтобы любой мог создать свою нейросеть
было бы супер, но на создание учебного материала уходит много времени походу.
@@psevdonim0_o Да, но думаю, тем, кто готовит материал, просто нужно исправлять моменты, которые не понятны или не очень, постепенно повышая свой уровень в подаче информации, тем самым обеспечивая гораздо лучший результат)
Тебе объяснили в самом начале, как она работает.
@@rucat284 круто, с тех пару слов, я теперь понимаю как написать нейронку. Люди книги посвящают . Ага , держи в курсе.
Почему нейрон смещения инициализируется нулями? bias_input_to_hidden = np.zeros((20, 1)) разве не единицами правилно: bias_input_to_hidden = np.ones((20, 1))
так у тебя функция сместится сразу, в чем смысл. Ты же его у в уравнении потом используешь.
@@fiftyfive5857 Да уже допер, это не сам нейрон смещения а его вес, единица опускается потому что на нее бесмысленно умножать веса, веса и получатся, просто по видео сразу не понятно.
В случае со смещениями это не так важно, градиентный спуск сам разберётся куда идти, хоть двойками заполнить можно.
А вот сами веса никогда ни в коем случае нулями нельзя инициализировать, только рандомные числа (а ещё лучше учитывать используемые активации и юзать, к примеру, инициализацию Ксавье)
хауди как выучить C++ пожалуйста дай совет
Хотелось бы увидеть это все на пайторче или тензорфлоу
🤡
Здравствуйте.
Помогите пожалуйста создать и обучить нейросеть оборудование электроподстанции
Ахахахаххаха
Конца крутая!
Это единственное видео, где НОРМАЛЬНО объясняют, как писать нейросеть
Фантастика! Второй год изучаю Python и только сейчас начинаю понимать его мощь и возможности. Спасибо, автор. Я подписался
Когда 3 часть Geometry Dash в 3D?
Нифига не понял, но очень интересно. Пойду напишу нейросетку на стене на языке русском, нейросеть будет злить дворников да и вобще прохожих, ну это её основная функция будет 😁