Примеры архитектур сверточных сетей VGG-16 и VGG-19 | #15 нейросети на Python

Поділитися
Вставка
  • Опубліковано 5 лют 2025
  • Узнаете архитектуры сверточных нейронных сетей VGG-16 и VGG-19. Как их реализовать в пакете Keras на примере классификации изображений.
    Телеграм-канал: t.me/machine_l...
    Инфо-сайт: proproprogs.ru
    lesson 15. vgg16.py: github.com/sel...
    gist.github.co...

КОМЕНТАРІ • 52

  • @АрсланАтаев-ж6р
    @АрсланАтаев-ж6р 2 роки тому +18

    Спасибо тебе большое! Я уже интуитивно, когда не понимаю како-то материал, иду к сюда и ищу лекции-ролики, с полной уверенностью, что наконец-то я пойму материал и объяснят, как нельзя лучше! Ещё раз, спасибо тебе большущее!

  • @amaideltfly1512
    @amaideltfly1512 Рік тому +5

    низкий вам поклон за такой тщательный разбор! на ваших лекциях начинает приходить Понимание

  • @86Blind
    @86Blind 3 роки тому +9

    Самый лучший канал. Успехов и продвижения !!!

  • @СарматПересветов
    @СарматПересветов 3 місяці тому

    Отличный урок, премного благодарен!

  • @mriya648
    @mriya648 Рік тому +2

    Очень хорошая подача материала, спасибо большое.

  • @daniilk3737
    @daniilk3737 8 місяців тому +3

    очень интересно и доступно.
    но на 3:55 ,о что значит каждое значение карты признаков 2го сверточного слоя с размером ядра 3 на 3, эквивалент анализа ядра размерами 5 на 5? как она будет охватывать область 5 на 5?
    вы имели ввиду по количеству настраиваемых параметров выходит оптимальнее, но при этом увеличивает глубину сети или нет?
    где про это теорию можно прочитать, не подскажете, поискал в интернете , порисовал на листочке и слабо представляю связь?из-за того, что он отбрасывает границы изображения , но на прошлых уроках мы добавляли "рамки" чтобы не изменить количество?

  • @Tester-l9n
    @Tester-l9n 4 роки тому +5

    Доброго здоровья и успехов автору этого цикла уроков! Готовлюсь по ним к ВКР, все понятно и по делу, спасибо!

  • @ФишкиОтАйтишника

    Спасибо за ваши видеоуроки!

  • @fedotik827
    @fedotik827 3 роки тому +7

    вот это я называю качественным контентом

  • @LA-nc6nc
    @LA-nc6nc 2 роки тому +1

    Лайк и коммент из Турции. ТОПчик.

  • @g.s1849
    @g.s1849 8 місяців тому +3

    Здравствуйте Сергей, тут возник один вопрос, посерфил в интернете, но ответа не нашел, тут вы говорите на 4:40, что реализация с двумя последующими kernel эффективнее с точки зрения скорости обучения нейронной сети, но как такое возможно, ведь в первом случаи на том же примере VGG-16 у нас 38720 настраиваемых параметров, а в случаи с kernel (5*5) у нас будет ((5*5)*3+1)*64 = 4864 параметров, да, в ядре параметров меньше, но вот самих параметров между слоями больше, так почему тогда скорость обучения в первом случаи меньше, разве такое возможно, вроде наоборот, время больше, а плюс данной реализации в более лучшей специализации нейронов (следует из большого количества самих настраиваемых параметров) в двойной нелинейности, и в глубине самой сети, разве нет?

    • @selfedu_rus
      @selfedu_rus  8 місяців тому +2

      Там речь о том, что если вместо одного сверточного слоя с ядром 5х5 взять два последовательных слоя с ядрами 3х3, то объем вычислений снижается. Более ни очем.

    • @g.s1849
      @g.s1849 8 місяців тому +2

      ​@@selfedu_rus , да в случаи если у нас каждый слой имеет по одному фильтру, тогда да у нас будет именно такое поведение, но у нас же по 64 фильтра, так что параметров у нас в этом случаи будет больше, чем в случаи с kernel (5*5), я имею в виду что в данном случаи вычислений намного больше и плюс такого подхода не в вычислительной легкости, а в улучшении специализации нейронов, в большей нелинейности и в глубине самой сети.

    • @selfedu_rus
      @selfedu_rus  8 місяців тому +3

      @@g.s1849 а, да, действительно, не подумал об этом... тут скорее два слоя по одному фильтру и таких 64, вот тогда был бы выигрыш, вы правы, спасибо!

  • @ghebodne2644
    @ghebodne2644 3 роки тому +1

    Пошла жара 🔥 😍

  • @alekseevaleksandr
    @alekseevaleksandr Рік тому +2

    А есть ли проверка скорости и эффективности работы сети с 3x3x2 и 5x5x1? Два слоя нейронов делают нелинейную классификацию в пределах одного разрешения (размера картинки в ширину и высоту), тогда как один слой проводит прямую гиперплоскость. Возможно это тоже скажется на результатах.

  • @АндрейДьяков-ь3у

    Здравствуйте! Скажите пожалуйста, как можно сделать, чтобы нейросеть выдавала не число из базы ImageNet, а уже выдавала полный ответ, что изображено на картинке? Если вы это уже объясняли в своих видео, то можно вас в таком случае пожалуйста попросить ссылку на данный видеоролик?

    • @hizik8659
      @hizik8659 9 місяців тому

      как вариант спарсить с сайта)

    • @YbisZX
      @YbisZX 9 місяців тому

      keras.applications.vgg16.decode_predictions(res, top=3)
      Выдаст список с топ3 наиболее вероятными вариантами с расшифровкой и вероятностями

  • @userqh67vey6
    @userqh67vey6 2 роки тому +3

    Лайк за видео ! Очень познавательно.
    Как я понял, VGG19 не принципиально отличается от VGG16 (кроме 3 лишних слоев), просто чуть лучше. Модели этих сетей весят почти одинаково.
    На моих тестовых наборах с кошками и тд сети справились одинаково. Возможно где-то есть тестовые картинки, на которых можно увидеть разницу?
    Есть идея прикрутить эту сеть к инетмагазину и рекомендовать юзером товары с похожими изображениями, помимо товаров с похожими свойствами.

  • @avazgaziz
    @avazgaziz 2 роки тому

    в начале написано " Постижение непостижимого". Однако все иначе. Здесь мы постигаем постижимое. И это как раз самое правильное для образовательного материала "Постигаем известное для дальнейших достижений"

  • @alexandersavitski2831
    @alexandersavitski2831 3 роки тому +1

    Из трех изображений правильно распознало только одно и то с котом 😁

  • @kirilllevin5372
    @kirilllevin5372 2 роки тому +1

    Подскажите !!!!!Как определить контуры распознанных объектов!!!?

  • @MsNektoN
    @MsNektoN 3 роки тому +2

    Если сложение 2x сверток 3*3 дает 5*5, то что тогда дают 3, 4 или больше сверток 3*3? Каким полноразмерным сверткам они эквивалентны? Есть ли формула?

    • @selfedu_rus
      @selfedu_rus  3 роки тому

      да сами прикиньте на листочке!

  • @alikaiyr6308
    @alikaiyr6308 2 роки тому +1

    Спасибо!

  • @ПриманкаТВ-о6ш
    @ПриманкаТВ-о6ш 3 роки тому +1

    подскажите где найти информацию, как свой датасет скормить этому роботу ? )

    • @boost_456
      @boost_456 Рік тому

      Буквально в этом видео показано как преобразовать изображение в формат подходящий для этой модели

  • @ywbc1217
    @ywbc1217 4 роки тому +2

    всё работает )

  • @li.tevezz
    @li.tevezz 3 роки тому +4

    даже породу собак распознает)

  • @ertargn
    @ertargn 3 роки тому

    а как обычный фото пикселизировать в 224x224? что то не нашел в инете онлайн конвертеров в котором можно регулировать в 224

    • @selfedu_rus
      @selfedu_rus  3 роки тому

      Это мы уже сами размер формируем, фотошоп, irfanview и другие программы работы с изображениями.

  • @ЕвгенийСтепанов-х2г

    А почему нейронов с ReLu именно 4096?

    • @selfedu_rus
      @selfedu_rus  3 роки тому

      Это сугубо решение разработчиков сети. Они так решили, попробовали и увидели, что это хорошо )

    • @YbisZX
      @YbisZX 9 місяців тому

      @@selfedu_rus 2:32 Каким образом 7*7*512 (=25088) подается на слой в 4096 нейронов? Или там сначала Flattern() делается в вектор 25088, а уже после него слой на 4096?

  • @evgenykolesenko
    @evgenykolesenko Рік тому +1

    А как скачать те 533 мб для VGG16?

    • @selfedu_rus
      @selfedu_rus  Рік тому

      Я через Tensorflow это делал, там просто берем эту сетку и она автоматически скачивается.

  • @PrimaLuceAstronaut
    @PrimaLuceAstronaut 2 роки тому +1

    Немного не понятен момент с тем, почему у нас несколько слоев подряд имеют одинаковую размерность, если каждый последующий слой берет карту признаков предыдущего. Разве карта признаков не будет другого размера? Или мы просто два раза подряд применяем сверточный фильтр к одинаковому слою? Тогда не понятен смысл этой операции

    • @ЕгорБеззубенко-в1п
      @ЕгорБеззубенко-в1п 2 роки тому

      карта признаков будет того же размера. засчёт того, что добавляются дополнительные пиксели по краям картинки. в керасе, например, в Сonv2D это реализуется через параметр paddind = 'same'. в двух предыдущих уроках про это есть

    • @PrimaLuceAstronaut
      @PrimaLuceAstronaut 2 роки тому

      @@ЕгорБеззубенко-в1п благодарю

  • @naradamyan1678
    @naradamyan1678 Рік тому +1

    а как загружать фото если я не в google colaboration

  • @qobilruzmatov48
    @qobilruzmatov48 4 роки тому +2

    Nice good

  • @damirchpok7570
    @damirchpok7570 Рік тому

    Эта нейросеть плохо отгадывает, с фотографиями которые я загружал было все в порядке я их красиво обрезал и давал ей но она ошибается и говорит что мой друг это стиральная машина, потом загрузил туда какой то спорт кар а она сказала что это контейнеровоз (либо у нее отличное чувство юмора)

  • @alicenNorwood
    @alicenNorwood 3 роки тому +2

    подстава какая-то не может всё быть ТАК ПРОСТО

  • @pages777
    @pages777 3 місяці тому

    12102024

  • @LapshinLAB
    @LapshinLAB Рік тому +1

    ModuleNotFoundError: No module named 'google.colab' вылезает ошибка, библиотека pip install google-colab не помогает
    и соответственно дальше вылезают ошибки для используется files, NameError: name 'files' is not defined
    Я так понимаю надо где то регаться, чтобы фото грузились с облака, надо было тоже сказать об этом

    • @LapshinLAB
      @LapshinLAB Рік тому

      Я решил эту проблему, но там другая проблема с модулем