Тёмный

НЕЙРОСЕТИ - самое понятное объяснение + пишем нейросеть с нуля. 

IT_Школьник
Подписаться 2,4 тыс.
Просмотров 95 тыс.
50% 1

В этом выпуске я расскажу о том, как работают нейросети в понятной для всех форме, скажу всё, что надо знать на начальном этапе о ИИ, а также в конце ролика мы напишем свою собственную нейронную сеть на языке программирования С. Всем приятного просмотра.
------------------ССЫЛКА НА РЕПОЗИТОРИЙ GITHUB--------------------------
github.com/Nikita-bunikido/Pe...
Небольшая поправка на 12:00: следует ещё инициализировать последний элемент массива expresults нулём.
Небольшая поправка (2) на 3:32: 0.33 * 0.1 = 0.033

Опубликовано:

 

16 июн 2021

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 378   
@IT_Shkolnik
@IT_Shkolnik 3 года назад
------------------- ССЫЛКА НА РЕПОЗИТОРИЙ GITHUB --------------------------- github.com/Nikita-bunikido/Perceptron
@MathewKptge
@MathewKptge Год назад
"Я обязательно поступлю на бюджет!" - твои конкуренты:
@silkasoft1
@silkasoft1 Месяц назад
Парень, это одно из самых лучших пояснений работы нейронки. Респетище!
@alextop4217
@alextop4217 5 месяцев назад
Как приятно слышать грамотные и понятные объяснения, а видеть код на "C" особенно приятно. Спасибо!
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Спасибо большое. Да, мой любимый ЯП
@_1mrscool11_9
@_1mrscool11_9 24 дня назад
только начинаю смотреть, особенно рад слышать что видео будет на языке "С", так как мне необходимо создать нейросеть на "С++" так что схожести языков будут наруку
@s0faRy
@s0faRy Год назад
Такой молодой и шарящий, приятно видеть, продолжай в том же духе парень, у тебя большое будущее!
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо большое за поддержку!
@gyuzelinka
@gyuzelinka Год назад
Это было здорово! Просто и понятно🫶🏼 Лайк, подписка👍🏼 Посмотрю остальные видео!
@sergiooos9103
@sergiooos9103 Год назад
Только видео включил, сразу лайк. Видно, что реально школьник и уже пытается как то продвигаться, красава!
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо :)
@kzrvv8331
@kzrvv8331 Год назад
Чел, ну ты нереально хорош, я очень жалею, что в твоем возрасте ... пинал. Сейчас учусь в вузе, и мой самый главный враг это время, которого недостаточно на то, чтобы успевать узнавать и учить все, просто потому что не занимался этим раньше. Выпускай ролики по чаще, желательно еще бы что то про нейросети от тебя послушал. Как написали ниже, тема очень глубокая, так что контента можно много пилить, особенно учитывая тот факт, что нейронки сейчас используются повсеместно, а хорошего материала на русском ютубе просто нету
@IT_Shkolnik
@IT_Shkolnik Год назад
Согласен на русском ютубе вообще мало такого контента. Здесь я постарался объяснить нейронки так как понял их сам + максимально просто чтобы было понятно всем. Видео с объяснениями на канале будут дальше, но не думаю что про нейросети. Больше про алгоритмы, и языки программирования
@user-xg4qk8iu8o
@user-xg4qk8iu8o Год назад
Тоже учусь заочно на IT , мне 28 , работа семья, времени очень мало, можно сказать нету. Тоже теперь жалею что пинал ... в твои года.
@Sergey_Klimov
@Sergey_Klimov 7 месяцев назад
Ну вот тут двоякий вопрос. Те, кто учился в молодости завидует тем, кто пинал ... А те, кто пинал ... завидует тем, кто учился в это время
@wall-wrecker-my6ss
@wall-wrecker-my6ss 7 месяцев назад
Чел, ну походу ты бездарь или лодырь или и то и то, если не можешь вкатиться в эту шляпу. Нужен максимум год, чтобы +- отдуплять что-то. Знаком лично с людьми, которые и в 25 и в 30 успешно становились разработчиками. Ты сам создал себе какие-то рамки в виде возраста и времени, которые тебе мешают развиваться.
@BRIMER_
@BRIMER_ 4 месяца назад
Ну зависит што... явно тебе и сичас ненадо ето, мб гдето код написать для бота, но ето чисто увлечение.
@Votruh
@Votruh 4 месяца назад
Оставлю в поддержку Никиты, коммент для алгоритмов ютуба ) Круто молодец, тебя ждет большое будущее, не забрасывай!
@litrpiv4ansky872
@litrpiv4ansky872 11 месяцев назад
Благодарю за столь простое объяснение🙏 Ты молодец 👍
@IT_Shkolnik
@IT_Shkolnik 10 месяцев назад
Спасибо! Рад, что понятно объяснил. Успехов в дальнейшем изучении темы
@OneSideMediavideo
@OneSideMediavideo 8 месяцев назад
Ты большой молодец! Я видел кучу подобных видео, но твое самое доходчивое!
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Рад что смог понятно объяснить, спасибо вам!
@WAVESOFLIFEFUL
@WAVESOFLIFEFUL Год назад
Никита, Благодарю за информацию. Я озадачился идеей создания своей собственной нейросети и вышел на твоё видео. В силу моего возраста и недостаточности нужных навыков, это первое видео с подробным гайдом и ссылкой. Пожалуйста продолжай своё направление, я буду следить за твоими публикациями.Это очень интересная тема, которая открывает перед человеком безграничные возможности роста и увеличение благосостояния.
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо за поддержку! Я рад, что моё видео вам понравилось
@manul74
@manul74 2 года назад
Какой умный пацан.
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо за поддержку!
@DolphinArtem
@DolphinArtem 2 года назад
@@IT_Shkolnik ты очень умен!!!
@kepka55
@kepka55 8 месяцев назад
Знания ≠ Ум
@rendar9795
@rendar9795 6 месяцев назад
​@@kepka55а сам что душнила
@user-xg1es7dv8t
@user-xg1es7dv8t 6 месяцев назад
Будущий Цукерберг, видно же что инопланетянин, он ниразу не моргнул
@anton8258
@anton8258 2 года назад
Крутое и полезное видео) Благодарю!
@rtsenjoyer3861
@rtsenjoyer3861 Год назад
Мегахорош. Я наконец-то хоть начал понимать, что это такое и с чем кодить.
@IT_Shkolnik
@IT_Shkolnik Год назад
Рад, что я смог вам помочь. Продолжайте разбираться в теме, она очень интересная
@user-kx4cn1ct9v
@user-kx4cn1ct9v 9 месяцев назад
Очень приятно было смотреть твоё видео! Все сложные для меня вещи, объяснил просто и понятно. Спасибо! Желаю тебе успеха во всех твоих делах!
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Я очень рад что смог доходчиво объяснить. Спасибо большое!
@v_hackkali8634
@v_hackkali8634 2 года назад
Спасибо наконец та нашёл понятное видео для старта моего проекта
@user-fx2fj9st4m
@user-fx2fj9st4m Год назад
Спасибо, добрый юноша! Вы так хорошо все объяснили, что даже мне, гуманитарию, понятно. У вас кроме математических способностей еще и педагогический талант. Не растеряйте только всё это! Единственное замечание - темп речи, как в рекламном ролике. Объяснять все же лучше чуть медленнее.
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо за совет, рад что помог понять вам тему :)
@user-sr5ez7sx3q
@user-sr5ez7sx3q Год назад
Будучи глубоким дедушкой, смотрю его на скорости 0.75) с повторами и неоднократными.
@164neil
@164neil Год назад
Скорость видео можно настроить самостоятельно
@user-ub5ok1dq9p
@user-ub5ok1dq9p Год назад
зайца сосни
@morispioneer632
@morispioneer632 6 месяцев назад
медленно, имеется ввиду не медленно по скорости, а более развернуто, наглядно, с примерами из жизни, приводя больше ассоциаций @@164neil
@LSIGarmony
@LSIGarmony Год назад
Урок интересный, объяснения понятны. Продолжайте!
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо за комментарий, рад что вам понравилось :)
@imtolik
@imtolik 4 месяца назад
Большое спасибо. Получилось действительно простое и понятное объяснение.
@user-yg2wr7io5r
@user-yg2wr7io5r Год назад
Я офигел! Спасибо за понятное объяснение. Много по теме смотрел, а нормально объяснил только ты.
@IT_Shkolnik
@IT_Shkolnik Год назад
Рад, что смог вам помочь. Да, действительно большинство объяснений которые я пересмотрел были не совсем понятные, мне пришлось пересматривать некоторые моменты по несколько раз, а потом суммировать полученную информацию. А также экспериментировать прежде чем получить эту программу
@g_host
@g_host 2 года назад
Как же не хватало таких видео на старте обучения. Автор большой молодец👍
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо большое!
@stepaside6284
@stepaside6284 Год назад
не стоит смотреть такие видосы на старте обучение, ибо парень делает просто контент, к сожалению информативность близка к нулю
@user-sr5ez7sx3q
@user-sr5ez7sx3q Год назад
@@stepaside6284 Каждому, - свое.
@IT_Shkolnik
@IT_Shkolnik Год назад
@@stepaside6284 конкретно здесь я делал акцент больше на понимании материала
@Sol-En
@Sol-En 2 года назад
Вдохновляющее видео !
@chrisn.6760
@chrisn.6760 Год назад
Спасибо за пример. Наконец-то умный человек нашёлся, который объяснил на примере а не теории.
@IT_Shkolnik
@IT_Shkolnik 10 месяцев назад
Тут надо держать баланс теория-практика. Спасибо!
@horoshiyvibor
@horoshiyvibor Год назад
Блин, красава чувак, очень впечатляет твой уровень компетенции относительно твоего возраста!
@IT_Shkolnik
@IT_Shkolnik Год назад
Большое спасибо!
@buonsenso5586
@buonsenso5586 2 года назад
Молодец, так держать!
@user-ll6uu9fo1d
@user-ll6uu9fo1d Год назад
Респект! Дорогу осилит идущий!
@user-hb1rt1wd5f
@user-hb1rt1wd5f Год назад
Умничка! Просмотрела 2 раза. 😊
@IT_Shkolnik
@IT_Shkolnik Год назад
Я рад что вам понравилось моё объяснение)
@lehaZaDedov
@lehaZaDedov 8 месяцев назад
друг, твоё видео реально классное и ты большой молодец по тому что стараешься досконально понять тему (написать код на Си), но так же важно разбираться и в математике того о чём ты говоришь. На самом деле очень нехватило понятного математического доказательства, а так всё круто спасибо за видео
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Объяснил как сам понял, наверное. Спасибо
@davidikus29
@davidikus29 Год назад
80% преподов так качественно не разжовывают информацию
@IT_Shkolnik
@IT_Shkolnik Год назад
Я здесь постарался совместить все что знаю о теме и рассказать это так, чтобы было понятно практически любому :)
@sloupoc6325
@sloupoc6325 2 года назад
достаточно простым языком объяснил, ты заслуживаешь больше подписчиков!
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо большое!
@stepaside6284
@stepaside6284 Год назад
не заслуживает, заслуживает Сергей Балакирев
@sanchez_code
@sanchez_code Год назад
Привет, не так давно наткнулся на твой канал, желаю успехов тебе! Хотелось бы видеть побольше видео связанных с ИИ, довольно популярная тема. Сам недавно увлекся этим, сейчас пытаюсь выбрать язык для написания ИИ, выбор пал между с/с++ и питоном. Говорят питон лучше подходит, но лично мне больше по душе с/с++, особенно в плане синтаксиса
@IT_Shkolnik
@IT_Shkolnik Год назад
Привет, спасибо за комментарий! Конечно в плане синтаксиса с/с++ мне тоже больше нравятся. Но питонисты говорят что у них есть много библиотек и модулей, которые специализируются на создании различного рода нейронок. А на с/с++ это придётся писать с нуля, что мне кажется гораздо интереснее + даст углубленное понимание того как это работает, нежели просто поочередный запуск функций из библиотек
@user-pp3vx6jt8v
@user-pp3vx6jt8v 2 года назад
Спасибо большое🥺
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Я рад, что мое видео вам помогло
@AhahaStudioTM
@AhahaStudioTM 2 года назад
Круто! Продолжай
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо!
@user-wu7ui5dw8g
@user-wu7ui5dw8g 2 года назад
Все же нейросети гораздо сложнее, чем объяснение за 15 минут) Мне на своем курсе удавалось рассказать за 5-7 пар, причем это 2-3 курсу в вузе)). Там на самом деле куча математики и формул. Так что, если реально хотите понимать как устроены и почему работают нейронки, вам придется учить все с нуля. Иначе это просто нереально (по себе знаю). А так, попытка неплохая) Причем больше удивился тому, что пишешь на C. Все таки нечасто увидишь столь молодых людей на C/++. Это к моменту о том, что люди знакомясь с программированием считают знание нескольких строк кода на питоне - "программированием". В общем удачи в продвижении))
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Вау! Я удивлён что меня смотрят преподаватели. Спасибо большое вам за комментарий, они очень сильно мотивируют снимать подобный контент дальше. Я конечно знал что там куча формул и все такое, но целью видео было ввести в курс дела, и я когда его делал сам недавно познакомился с этой темой. Это обширная и интересная тема, но пока я изучаю углубленно лишь язык С. Он занимает отдельное место в моем сердечке :з Синтаксис языка просто идеален, и тут даже придраться не к чему в отличии от того же Паскаля или Алгола. Мне кажется что человек в любом возрасте может использовать инструмент, если знает как. Вы верно подметили про подростков, считающих что несколько строк на питоне это "программирование". Действительно жаль что молодое поколение во всем выбирает лёгкий путь. И да я вообще не люблю питон, у меня аллергия на интерпретаторы, высокий уровень, и динамическую типизацию. Ещё раз спасибо за коммент, так ролики чаще попадают в реки))
@rxrx0255
@rxrx0255 2 года назад
Раз уж вы тут про языки, тогда может сможете пояснить пню, почему почти во всех материалах на тему машинного обучения речь идёт именно о питоне? Я так понимаю из коробки всякие си работают шустрее из-за строгой типизации и компиляции(хотя помнится мне, что с какими-то библиотеками и интерпретаторами разница не очень заметна, не уверен). В чем вообще преимущества си перед питоном, и наоборот, в контексте данных задач?
@IT_Shkolnik
@IT_Shkolnik 2 года назад
@@rxrx0255 вообще на С можно написать всё что угодно - от ОС до нейросетей. Но я сталкивался с проблемой такой же как вы, что в большинстве материалов по машинному обучению приводят в пример код на питоне. Я кажется могу объяснять - всё дело в простоте. Вы можете писать нейросети на чем угодно - даже на чистом ассемблере, но вы хотите сосредоточится на самом алгоритме и его реализации, а не на том как работает процессор, и какие регистры можно использовать на запись. Питон - полностью абстрагирует программиста от работы с аппаратной частью - вы излагайте что надо делать машине простым английским языком. Это и есть разница между высокоуровневым и низкоуровневым программированием. А что касается преимуществ С/С++ в данной сфере (ИИ) то они быстрые по своей природе, и ваша нейросеть будет работать быстрее чем на питоне. Правда стоит вопрос - а сможете ли вы её написать на чистом С? Ну там указатели, адреса, malloc, и так далее что отвлекает от алгоритма. Я сам с этим сталкивался, но не в коем случае не хочу переходить на питон, каких бы трудностей мне это не стоило, т.к. я не фанат высокого уровня, и скорость выполнения для меня важнее чем скорость написания кода и отладки ошибок - это ли не есть программирование? Итого могу сказать что питон прост для восприятия, и помогает концентрироваться на математике, поэтому и приводятся примеры именно на нем. Если бы я писал книгу по нейросетям я бы мог написать что то такое на С: uint32_t *weights = (int*)calloc(3U, sizeof(uint32_t)); … free((void*)weights); Но не думаю, что все бы это поняли, ведь тут в отличии от питона надо хоть чуть чуть понимать из чего состоит С. И да Python можно в значительной мере ускорить с помощью JIT компилятора NumPy. Но он никогда не обойдёт по скорости вычислений чистый С, это невозможно физически. Я вот недавно учавствовал в олимпиаде ВСОШ по программированию, и вот там С меня подвёл тем что писать долго - продумывать надо. Но вы не волнуйтесь - все питонисты провалили тест на время выполнения XD
@rxrx0255
@rxrx0255 2 года назад
@You Tube Это целых 9
@jujubeperch
@jujubeperch 2 года назад
@You Tube узколобо
@kostiantynjohanlanguedoc3155
@kostiantynjohanlanguedoc3155 2 года назад
Парень, да Вы реально крут!!! Спасибо. Особенно за ясность в изложении..
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо! Я рад что вам помогло моё объяснение :)
@user-st4ih8cu6l
@user-st4ih8cu6l Месяц назад
Благодарю!!!
@aleksandrsergeev1494
@aleksandrsergeev1494 8 месяцев назад
отличный выпуск.продолжай.буду смотреть каждое твоё видео.класс.
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Спасибо, правда пока не знаю что снимать, и времени особо не хватает
@proroma9119
@proroma9119 2 года назад
Ты очень умный парень!!! Я рад,что такие,как ты люди существует
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо, да я сам ещё учусь )
@rinar3770
@rinar3770 Год назад
Развития вашему каналу🔥🔥🔥
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо вам!
@RogDraken69
@RogDraken69 Год назад
Красавчик!!!! продолжай!!!!
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо, обязательно!
@user-zh8zw9pg3f
@user-zh8zw9pg3f 6 месяцев назад
Молодчик. Он на шаг выше в обучении, которое понятно, чем специализированные школы
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Спасибо большое. Не сказал бы, просто разобрался в теме и решил объяснить
@Victor-vx4br
@Victor-vx4br 2 года назад
Спасибо)
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Я рад что объяснение вам помогло :)
@RT120t
@RT120t 3 месяца назад
ты гений делаешь качественный контент молодец😄
@fish9370
@fish9370 2 года назад
Ну не плохо, давай следующий урок
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо, рад что вам понравилось! Я сейчас работаю над новым интересным роликом.
@Hnei_
@Hnei_ 8 месяцев назад
Просто лучший!
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Большое спасибо!!
@sebacolins2006
@sebacolins2006 Год назад
Ай молодец)
@Astro69i
@Astro69i 7 месяцев назад
Молодец, продолжай дальше про нейросети, классно и понятно обьясняешь. Но еще много чего можно рассказать, ai изображения, ai видео, ai голос, ai сложные задачи, программирование с помошью нейросети и т.п.
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Спасибо!! Это да, но я ставил цель именно разобраться с основами
@rinakaretina8539
@rinakaretina8539 Год назад
Молодец !
@crtvox1107
@crtvox1107 Год назад
Отличное видео!!! Очень бы хотелось посмотреть тот же код на языке C#. Реально понятно объяснил принцип работы нейронки👍. Правда во время написания кода было слегка сложно понять, что происходит. Продолжай снимать видео такого формата простым языком. Удачи!!!👋
@IT_Shkolnik
@IT_Shkolnik Год назад
Обязательно! Ну да, код в некоторых местах сжат, и может быть не совсем понятным. Но я постарался его объяснить так, чтобы это хорошо ложилось на теорию
@Aristotle314
@Aristotle314 Год назад
Падает самооценка, когда тебя смотрю. А заодно появляется мотивация
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо за комментарий. Никогда не останавливайся, двигайся только вперёд. Я в тебя верю!
@Aristotle314
@Aristotle314 Год назад
@@IT_Shkolnik спасибо!
@vittaphoto
@vittaphoto 10 месяцев назад
Очень классный ролик, респект. Объясняешь лучше взрослых)
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Спасибо! Не сказал бы что лучше, но старался, и так классно получилось)
@sergeykaminsky4999
@sergeykaminsky4999 Год назад
Спасибо! Очень полезное и доходчивое объяснение. Возможно, ещё следует, уделить некоторое внимание сохранению и восстановлению данных натренированной сети. Как правило это не обсуждается. Видимо, считается, что это и так понятно, хотя ...
@IT_Shkolnik
@IT_Shkolnik Год назад
Да, правильно. Но это легко сделать. Самый простой способ - записать массив весов в двоичном виде в файл. А при запуске сети не тренировать её заново, а просто загрузить веса из файла
@pronikfire
@pronikfire Год назад
Моё почтение
@stakemograine266
@stakemograine266 14 дней назад
10-я строчка кода: return (a 0; 20-я строка кода, вернее вся функция train. int* привести к double * - это, конечно, сильно (я уж молчу про небезопасно), не проще ли тогда изначально объявить массив data как double? Ну это же удобнее. Т.е. просто объявляем нашу функцию void train(double data[4][3], int exp[4), и в main'e объявляем double trainingdata[4][3], и все, и не нужно есть кактус. 33-я строчка: int expresults[4] = {0, 0, 1}; - это тоже сильно. к тому же, вроде как у нас была таблица 1,0,1 = 1 0,0,1 = 0 1,1,1 = 1 1,0,0 = 1 0,1,0 = 0 а в итоге мы почему-то используем таблицу 0,0,1 = 0 0,1,1 = 0 1,0,1 = 1 0,1,0 = ? (0 по дефолту, но это не точно) да, у нас массив из 4 элементов инициируется только 3-мя значениями, так что на месте последнего элемента у нас по чистой случайности правильный 0, просто повезло, так что берем и смело переписываем: double trainingdata[4][3] = { {1,0,1}, {0,0,1}, {1,1,1}, {1,0,0} }; int i, expresults[4] = {1,0,1,1}; /* .... */ double newdata[] = {1,1,0}; И, кстати, да, а для чего у нас тут windows.h? Мы ничего из него не используем, но зачем-то инклудим. Зачем? З.Ы. fmod( rand()%100000000 * 0.1, 1.05 ) ... ну-у-у-у.... ээ-это-о-о-о... а не проще ли w[i] = rand() % 11 / 10.0; Не? Никак? Низя? Работать не будет? Точно? Да и в целом, у нас на входе 3 животинки, а на выходе только 2 (либо 0, либо 1). Эх, жизнь не справедлива. Кто-то определенно не дополз до финиша. Либо задача составлена некорректно. В общем, еще есть куда расти. Успехов. :)
@Apaximatic_Play
@Apaximatic_Play Год назад
красава!
@akstis4183
@akstis4183 Год назад
Очень классно. Крассава
@IT_Shkolnik
@IT_Shkolnik 10 месяцев назад
Спасибо!
@edwardwanderer9468
@edwardwanderer9468 2 года назад
Очень интересно, но трудно понимаемая тема, особенно когда первый раз смотришь, приходится пересматривать отдельные моменты, обидно когда я не понимаю твои объяснения, думаю придётся посидеть и обдумать. С практической частью вообще не понятно, но это и ясно, я ведь не изучал ещё язык. Вообщем итог, чтобы понять твой материал или вообще материал про нейро сеть нужно несколько раз просмотреть видео, а лучше всего записать, очень приятно, что урок даёт мой сверстник, но это вызывает сомнение в его компетенции, но пока сомнений нет, спасибо за объяснение принципа работы нейронойсети типа перцептор, пойду учить язык Си. Надеюсь ролики про нейроную сеть ещё будут.
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо за подробный комментарий. Мне самому было не легко разобраться в столь интересной, но запутанной теме. Да я действительно старался объяснить всё понятным языком, но думаю что людям не знакомым с программированием как правило не слишком легко даётся подобный материал. Я сам новичок в данном деле (машинное обучение и нейросети), но всё же как понял решил объяснить другим людям, ведь кто знает, сколько людей посмотрят это видео, и оно наставит их на правильный путь, или как минимум вызовет мотивацию для дальнейшего обучения. Естественно к этой теме я ещё вернусь, но думаю точно не сейчас. Я готовлю новый ролик. Он будет по языку С, но не связан с написанием ИИ. Но потом планирую написать более сложную нейросеть, которая соответственно справляется с более сложными задачами.
@semimaks
@semimaks Год назад
Молодец 🙂 хорошее видео
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо!
@user-li6pm7wc5n
@user-li6pm7wc5n Год назад
Автор крут!
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо :)
@niknam.
@niknam. 8 месяцев назад
красаучег++
@arithene
@arithene Год назад
реально вундеркинд😍
@PP667
@PP667 2 года назад
Друг спасибо, я разобрался в нейросетях
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Рад за тебя, чувак!
@Mintus775
@Mintus775 Год назад
Нейросеть должна выдавать 1 или 0 в зависимости от того, что стоит в 0 индексе массива, так ? Просто получается что код неправильный, так как выдает 1 даже если в 0 индексе стоит 0, но в 1 и 2 стоят единицы.
@amoralunicorn8673
@amoralunicorn8673 10 месяцев назад
Привет, молодец, желаю тебе миллион подписчиков на канал! Именно такие как ты должны быть в топе, а не трясущие жопами человекоподобные существа 😉
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Спасибо огромное!! К сожалению, мир несправедлив хаха
@bakhtiyarov_dj
@bakhtiyarov_dj Год назад
Красава
@digitaloutrage4050
@digitaloutrage4050 3 года назад
Никита, продолжай так-же, ты лучший канал по программированию с офигенной подачей
@IT_Shkolnik
@IT_Shkolnik 3 года назад
Спасибо большое за отзыв! Обязательно буду продолжать, новый ролик уже на подходе )
@alexandrosipov4186
@alexandrosipov4186 2 года назад
занудная торопливая подача
@IT_Shkolnik
@IT_Shkolnik 2 года назад
@@alexandrosipov4186 Постараюсь улучшить качество
@4upryna3Dcraft
@4upryna3Dcraft Год назад
за твои старания можно и подписку и жирный комент влепить!=)
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо вам :)
@limonello1964
@limonello1964 Год назад
красавчик
@ARTEMvorkhlik
@ARTEMvorkhlik 6 месяцев назад
Новый winderton на замену растёт 😊
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
За Winderton'а респект)
@user-vx7lx6hi6j
@user-vx7lx6hi6j Год назад
С первой секунды подумал, что сейчас будет что то из рубрики- сегодня мы поговорим о бравл старс)) но блин, мое почтение, крутой) мы в твоем возрасте палкой крапиву пизд.и)) давай юный Бил Гейтс, покажи им всем)
@IT_Shkolnik
@IT_Shkolnik Год назад
Нейронная сеть : реализация в бравл старс :) Спасибо!
@stalker32041
@stalker32041 Месяц назад
6:31 - всё немного не так. Допустим у нас есть лыжник, он упал на гору, ему нужно спуститься в самый низ. горы имеют локальный и глобальный минимум. В его распоряжении есть джетпак, который ускоряет его движение на константу LR, что позволяет проезжать локальные минимумы и даёт шанс попасть в САМУЮ низкую точку. Но мы не знаем, где будет такая точка и какое ускорение нам потребуется для её достижения, поэтому скорость обучения надо подбирать.
@mason228x
@mason228x 22 дня назад
Ваще пофиг
@ivanovserg8795
@ivanovserg8795 Год назад
Всё хорошо, но в цикле for у функции RightProp, вместо граничного числа 3, лучше поставить вот ту константу _weights. В main тоже надо бы избавиться от 3
@IT_Shkolnik
@IT_Shkolnik Год назад
Верное замечание!
@boobo0406
@boobo0406 11 месяцев назад
Гений ❤
@IT_Shkolnik
@IT_Shkolnik 10 месяцев назад
Спасибо
@user-go8mz9mp5n
@user-go8mz9mp5n Год назад
Парень ты молодец вообще! Спасибо за интересный ролик! С меня подписка и лайк! Делай пожалуйста побольше роликов по этой теме!
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо вам! Ролики будут
@moshamiracle
@moshamiracle 11 месяцев назад
спасибо за С
@IT_Shkolnik
@IT_Shkolnik 10 месяцев назад
Всегда пожалуйста! Мой любимый ЯП, поэтому и на C
@MrSaddamko
@MrSaddamko Год назад
13:49 В main в первой строке инициализации идет 4 определения входных параметров trainingdata, но тут же для них определяется массив всего из трех ожидающихся значений expresults. Тут же несоотвествие. Функция train вернет ошибку index out bounds, вероятно
@IT_Shkolnik
@IT_Shkolnik Год назад
Вы правильно заметили. Я уже писал в описании, что последний элемент expresults должен был быть проинициализирован нулём, а не опущен как на видео. И это действительно ошибка, ведь в соответствии со стандартом языка C ( ANSI ) - автоматические и регистровые переменные НЕ будут инициализироваться нулём при их определении. А массив expresults здесь как раз автоматическая переменная. Также, если вы знакомы с языком С, то знайте что в С нет никаких проверок на границы массива. Мы спокойно можем записать данные по любому адресу, и исключений на уровне программы не будет. Другое дело - ОС завершит наш процесс и кинет нам SIGSEGV в ответ на наши действия.
@Iighter
@Iighter Год назад
эмм. передача int массива в right_props через double* каст, приведёт к тому, что массив inputs будет хранить неправильно интерпретируемые данные. код не рабочий получается
@stakemograine266
@stakemograine266 14 дней назад
И это далеко не все его проблемы. :) По факту код вообще не рабочий.
@simonmatveev
@simonmatveev 2 года назад
Объясняешь тему и оформляешь видео хорошо. Спасибо за полезный контент. Желаю успехов с каналом и в программировании. Тажке очень интересно, почему ты выбрал язык C в качестве основного.
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо за поддержку! Выбрал язык С в качестве основного, потому что он подходит для решения разных прикладных задач. Я бы мог писать на Python, но он медленный. Я бы мог писать на C++, но я пока не совсем знаком с ООП. Раньше я писал на Алголе, а затем на Паскале. Мне очень не хватало гибкости этих языков. Высокий уровень ставил мне ограничения, по написанию условий циклов, выражений, создания переменных и т.д. из-за своей архитектуры. С дал мне свободу действий в написании программы. У него богатая стандартная библиотека. Он быстрый. У него относительно понятный и логичный синтаксис. Не без проколов конечно, но их минимум. Вообщем С быстрый, гибкий, и переносимый. Это именно то, почему я выбрал его как основной - он подходит для решения моих задач. P.s. Я просто фанат низкоуровневого / среднеуровневого программирования. Как по мне скорость выполнения программы гораздо важнее, чем время ее написания.
@simonmatveev
@simonmatveev 2 года назад
​@@IT_Shkolnik Спасибо за ответ. Я тебя понял. Здравый взвешенный подход. Красавец, что не страшишься низкоуровневого программирования.
@user-gu6ic8en3h
@user-gu6ic8en3h 7 месяцев назад
Крут
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Спасибо
@user-ue7vh5rj7z
@user-ue7vh5rj7z 2 года назад
Красава!у тебя будет отличное будущее продолжай!!создай своё сообщество и команду! а дальше компания деньги и яндекс в опу)
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо, обязательно
@user-ue7vh5rj7z
@user-ue7vh5rj7z 2 года назад
Напиши свой сайт и создай сообщества во всех социальных сетях! Дальше ты уже сам поймёшь что тебе делать и это естественно тебе надо будет автоматизировать! Удачи Мужик!!
@KRECHET159
@KRECHET159 10 месяцев назад
Очень интересно, но не хрена не просто! Надо знать язык программирования, понимать «элементарные» правила анализа и т.д. Но, парень молодец!
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
И то верно, хоть какая-то база всё же нужна, но я постарался объяснить некоторые моменты и оттуда тоже. Спасибо!
@lancylancy8219
@lancylancy8219 2 месяца назад
А во входе может быть также число от 0 до 1? Попробовал набор данных int[][] trainInput = new int[][] { new int[] { 5, 0, 1 }, new int[] { 5, 1, 1 }, new int[] { 0, 0, 1 }, new int[] { 5, 1, 0 }, }; int[] trainOutput = new int[] {0, 0, 1, 0}; при попытке получить ответ от { 5, 0, 1 } получаю 1, при попытке получить ответ от { 0, 0, 1 } получаю 1, при попытке получить ответ от { 5, 1, 1 } получаю 1,
@epiccode72
@epiccode72 2 года назад
продолжай
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Спасибо!
@DM_Phoenix
@DM_Phoenix Год назад
Хорош. Не забрасывай развивать свой мозг. Со временем если перестанешь этого делать - начнется деградация и вернуться к тому что было будет тяжело, особенно мышление. Мозгу свойственно забывать то что не используешь. Кажется мозг стирает то что не используешь ровно так же как и обучается)
@IT_Shkolnik
@IT_Shkolnik Год назад
Да хорошо, понял! Я не забрасывал, просто от ютуба немного отошёл в последнее время. А так сам продолжаю конечно учиться. Спасибо
@PaulWide
@PaulWide 2 года назад
Чел, продолжай. Больше умного контента на ютуб.
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Рад, что вам понравилось :)
@arthuralunts4719
@arthuralunts4719 Год назад
Сделай то же самое в excel + vba: будет круто!!!
@IT_Shkolnik
@IT_Shkolnik Год назад
Для этого мне сначала надо выучить vba)
@user-pc8dw9qj4t
@user-pc8dw9qj4t Месяц назад
Здравствуйте, поставил другие примеры не работает, если зависимым параметров является не первый параметр, а второй или третий
@Nikon-dq4ve
@Nikon-dq4ve Год назад
Привет, продолжи пожалуйста тему нейросетей. Добавь смещение и скрытый слой. Спасибо
@IT_Shkolnik
@IT_Shkolnik Год назад
Спасибо, не знаю если честно буду ли ещё заниматься нейросетями, но за идею спасибо
@stepaside6284
@stepaside6284 Год назад
@@IT_Shkolnik а че так? это ж просто
@justboy4743
@justboy4743 2 года назад
Жаль, что ты забросил канал. Ты снимаешь качественный контент, а учитывая твой возраст, это прибавляет тебе дополнительных очков репутации.
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Кто сказал, что забросил, нет конечно) Скоро продолжу делать видосы, просто недостаток времени и технические трудности внесли свой вклад в частоту выхода роликов
@justboy4743
@justboy4743 2 года назад
@@IT_Shkolnikпросто я это к тому, что твой контент вызывает уважение, сам с недавних пор решил вкатиться в изучении ИИ, и нашёл твой ролик весьма интересным.
@IT_Shkolnik
@IT_Shkolnik 2 года назад
@@justboy4743 рад это слышать!
@user-ld3pj9sb9m
@user-ld3pj9sb9m 11 месяцев назад
ты гений
@IT_Shkolnik
@IT_Shkolnik 10 месяцев назад
Спасибо, просто люблю разбираться в вещах)
@footballislifeforfree
@footballislifeforfree 6 месяцев назад
Можете, пожалуйста подсказать. Может ли вес определённого нейрона не быть постоянным и меняться в зависимости от других факторов?
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Только от обучения. Суть обучения в том чтобы найти правильный вес для каждого из нейронов
@footballislifeforfree
@footballislifeforfree 4 месяца назад
@@IT_Shkolnik Спасибо большое
@Im_like_Merphy
@Im_like_Merphy 9 месяцев назад
12:00 Почему инициализируем expresults[4] = {0, 0, 1}. Нужно же expresults[4] = {0, 0, 1, 0}, верно я понимаю?
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Спасибо за вашу внимательность, это писали уже раньше, в описании исправил
@angelika9160
@angelika9160 9 месяцев назад
На будущее могу посоветивать при написании кода использовать linter, добавлять комментарии к функциям и обязательно выводить провежуточные результаты в циклах
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Спасибо, учту
@n-em3gt
@n-em3gt 7 месяцев назад
А во втором уравнении, где к текущему весу умножается произведение цены ошибки на скорость и вход, что за вход, зачем он нужен?
@name9829
@name9829 5 месяцев назад
тоже не понял этого, нашли ответ?
@n-em3gt
@n-em3gt 5 месяцев назад
Вход это сигнал от входного нейрона к весу (типо если сигнал от него слабый, то вес не сильно влияет на общую картину и корректировать его смысла меньше, чем вес, у которого сигнал от входного нейрона сильнее)
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Вход из данных, которые подаются на обучение
@Oracule-bh5vy
@Oracule-bh5vy 2 года назад
Для понимания темы необходимо иметь базовые знания в программировании. Стоит отметить что в этом видео гораздо более приземистo и понятно объясненa суть. Насколько это возможно конечно. Спасибо за старание, очень полезнo и познавательнo! И ни в коем случае не переставай записывать ролики В подобном формате.
@IT_Shkolnik
@IT_Shkolnik 2 года назад
Огромное спасибо за поддержку!
@tymurkr
@tymurkr 11 месяцев назад
Какие ещё типы нейронок существуют? И чем они отличаются? Например, если мы получаем описания животного и надо поделить на группы, пример: вид, цвет, имеет ли хвост, клюв и тд.
@IT_Shkolnik
@IT_Shkolnik 4 месяца назад
Это за рамками простой нейросети, и я если честно не знаю
@danielzaprauski
@danielzaprauski Месяц назад
Блин, обожаю эту забавно сложившуюся ситуацию на медиапространстве ютуб в сегменте "ответы на конкретные вопросы, на которые никто не знает ответа". Когда ты уже отчаялся искать решение сам, а никто из профильных специалистов тебе так и не смогу помоч, приходится лезть с запросом в самые далекие и неизведанные живимы людьми уголки, авторы которых, RU-vid, вероятно, даже не учитвает при построении алгоритмов, так как не видел ни разу хотя бы одну посторнюю куку на их канале, но ты в свое удивление имеено там находишь четкий ответ на свой вопрос, который неделями не мог услышать от неплохо шарящего себя и нескольких "высокоКПДшных мудрецов", получающих за такое деньги. И вот будто этого было мало, эксперт на видео не выговаривает букву "Р", но уже может пояснить за отпай серверного моста без критического перегрева узлов питания, из-за чего плата не получает нагрузки для отвала, но нещадно забаговывает все цепочки питания и вызывает периодический аварийный сброс питания в системе датчиков процессора. Понять это можно было только после окончательного отвала моста вместе со всеми его участниками, вызвавшего замыкание на остальных шинах, где скачком питания были трагически унесены жизни остального оборудования и даже мышки! Ситуация абсолютно незаурядная и редко встречающаяся, но гуру из начальный шкоклы уже шарил, что за проблема может быть при определенных симптомах. Не удивлюсь, если знание он получил эмпирическим путем, потому что гнал по взломанной шине древнюю видюху, малеха крутанув вольтаж за пределы допустимых значений цепочек подачи энергии. Именно тогда я понял, что нужно сразу идти копаться в дебрях ютуба, чтобы не тратить время на бесполезных водолеев, а сразу внимать Гуру. И вот уж так выходит, что кажлый такой самый полезный видос за последний лет 10 я в 95% случаев смотрел в шакальном разрешении под еле разборчивый голос автора, которого вопреки предположению из первого тезиса, не понятно не из-за качества видео, а из-за еще не умеющего полностью владеть речью ребенка)))))) К чему это я Хоть этот ролик к не относится к вышеизложенным примерам, но совсем юный возраст автора в пересечением с развитием цепочки событий, из-за которых я здесь это пишу, вызвали аналогичные эмоции и напомнили о тех самых приятно удивляющих минутах откровенного диссонанса сложности раскрываемого вопроса в сравнении с простой понимания темы на выходе с просмотра (сейчас я как раз искал видео на русском языке по новому обсеваемому софту, и не найдя ничего в РУ сегменте, кликнул на превью ролика по нейросетям, идея освоить написание которые в рамках оптимизации экселя никак не могла оставить мою голову в покое. Ну и, судя по всему, момент настал))))))))))))))))) Если зайдет конктент, уверен, что зарашу канал за пару недель
@mason228x
@mason228x 22 дня назад
Jaja, за польшу -да -да -да, за польшу -да
@user-zl3vs2wy6l
@user-zl3vs2wy6l 4 месяца назад
3:37 очепяточка с вычислением
@p51v
@p51v 11 месяцев назад
А как ты сам учил это все, какие книги / видео использовал?
@IT_Shkolnik
@IT_Shkolnik 10 месяцев назад
Искал в интернете контент по нейросетям. Смотрел разные видео на ютубе от разных авторов пока не уловил суть. Читал статьи. Потом решил сделать такое видео, которое совмещает в себе теорию и практику так, чтобы был понятен сам принцип, на который можно опираться при дальнейшем обучении
Далее
Делаю нейросеть с нуля
17:17
Просмотров 1,4 млн
Нейронные сети за 10 минут
9:56
Просмотров 114 тыс.