Python vs C++ в нейронных сетях. Сравнение.
Ғылым және технология
Ты можешь стать моим Patron и помочь с развитием канала:
/ proger20
Моя страничка в ВКонтакте: altus.incantator
Мой GitHub: github.com/Intrigger/Proger-2...
В видео используется мелодии:
Sleeplessness - The Brothers Records.
New Year's Anthem - Quincas Moreira.
Пікірлер: 87
Сравнение необъективное, ибо: 1) тензорфлоу написан на тех же плюсах 2) тензорфлоу использует мощь видеокарты, распараллеливая всё на тысячи потоков
@webgoal3287
Жыл бұрын
Да по сути было сравнение C++ (TensorFlow ) с C++ (Свой код). Если б нейросеть была на чисто питоне это было бы кашмар медленный
@PEPMESHKAGDE
5 ай бұрын
для этого и были придуманы библиотеки
Спасибо за такое прекрасное видео! Автор старался, сразу видно)
Чувак!!!! Ты делаешь контент не зря! Продолжай пожалуйста, в наши времена в рунете слова c++ и нейросети встречаются слишком редко
Спасибо за видео. П.с. Твои понравившиеся комментарии в конце видео перекрывают другие всплывающие ролики по бокам. Успехов!
Получилось очень классно! Респект
Не корректное сравнение. Нужно было полностью писать на языке, в том числе и сеть, или использовать качественные библиотеки на обоих языках.
Сравнил C++ в 1 поток и C++ в несколько потоков ))
Однозначно лайк и подписка.
Не забрасывай,оч круто
@Proger20
4 жыл бұрын
Спасибо большое
Отличный контент! Лайк за это однозначно. Вопрос: Где часть видосов со скрина на твоем канале?
@Proger20
3 жыл бұрын
Не понял, что значит "со скрина"
@grandlagging0zero175
3 жыл бұрын
@@Proger20 0:21 где у тебя показаны все видео с твоего канала. Минимум 3-х точно нет на канале в разделе видео :)
@Proger20
3 жыл бұрын
@@grandlagging0zero175 удалил я их, хлам , а не видео было
не могу пока написать конструктивный комментарий, так как только учу базу в с++ (на первом курсе в вузе), но твои видосы кайфовые, спасибо за контент
@einepunch
4 жыл бұрын
но вообще я знаю, что в с++ можно задействовать для нейросети как проц, так и видюху, так что можно посмотреть что-нибудь с использованием разных количеств ядер и разных апи для видюхи (opengl, vulkan), если это возможно конечно :D
@helloworld-fv8kx
2 жыл бұрын
привет, как успехи? кем работаешь ? что изучаешь? что посоветуешь(я на 1 курсе)?
@user-is8xr7xu5i
8 ай бұрын
привет, как успехи? кем работаешь ? что изучаешь? что посоветуешь(я на 1 курсе)?@@helloworld-fv8kx
с++ vs c++ ибо большинство библиотека написаны на c++
С++ vs С++ + Python будет правильно.
@2plus588
3 жыл бұрын
Объясни
@cppprograms5868
3 жыл бұрын
@@2plus588 потому что библиотеки использующие в Python написаны на С++.
@2plus588
3 жыл бұрын
@@cppprograms5868 ок, теперь не понимаю почему Python медленный, хотя написан на библеотеках С++?
@cppprograms5868
3 жыл бұрын
@@2plus588 я не говорю что Python написан на библиотеках С++, Python написан на Си. Я говорю что используемые для ИИ библиотеки в этом видео в питона написаны на С++.
@cppprograms5868
3 жыл бұрын
@@2plus588 Python уступает потому что он очень медленный язык программирования а если бы эти библиотеки были бы написаны на Python то он бы уступил ещё больше даже сотни раз местами и 1000 раз. Поэтому этих библиотеки написаны на С++ и вызываются из Python а вызов из Python этих библиотек не работает быстро как вызов из С++ и ещё они содержат обёрку для Python-а всё это сказывается на скорости работы
чел, как думаешь, вообще есть смысл продзгать это все на сях(с использование cuda)? я вот решаю вложиться в это или нет.
@user-tp1qn2wt6t
11 ай бұрын
я думаю есть)
Полагаю tensorFlow использовал видеокарту для расчёта или расчёт в несколько потоков на процессоре. Что не было реализовано на плюсах. Вот и разница в скорости.
наверно есть возможность оптимизировать библиотеки на с++ так, чтобы обучение было быстрее, ведь сам по себе язык гораздо быстрее питона
Если Вы хотите помочь развитию канала, то можете подписать на Канал, а также стать моим Патроном: www.patreon.com/proger20 Буду безумно благодарен.
Смысл сравнивать си++ и с++? Твой код понятно хуже, чем код на тезор флоу. Не корректо использовать в одном коде relu а в другом сигмоиду, рилу считается быстрее и софт макс это мульти, а сигмоида для бинарной классификации, тоже скорость подсчета разеый)) вот над этим и экперементируй))
@Proger20
4 жыл бұрын
Эксперементировал. Relu быстрее, но незначительное. Я уже знаю как можно оптимизировать. Но если честно сейчас не до этого как-то...
Плюсы сразу файл скомпилируют и пользователю не надо питухон устанавливать.
Давай больше о c++ видео))
@Proger20
10 ай бұрын
Ну все, как приду с работы сразу запишу десяток видео по с++
@MethodiusOgolkov
9 ай бұрын
@@Proger20 )))
Блин, реально очень красиво объясняет))))жаль что популярность пока мала, ну ничего))(( Удачи тебе друг)))
Python сам по себе очень медленный по сравнению с плюсами. TensorFlow это кстати такой монстр Франкенштейна, написанный не только на питоне. Мне очень ЯП Julia нравится, мощность плюсов с синтаксисом Python. спасибо за видео!
@user-dr6wb1le9h
4 ай бұрын
tensorflow написан в основном на плюсах
Я код не смотрел, поэтому могу тебе предложить использовать SIMD операции для ускорения обучения Как именно это делается я не знаю, но очень много смотрел про эти инструкции правда давно Еще вариант на GPU делать это все Только где и как учить CUDA вопрос, Хотя я видел на одном сайте можно с помощью OpenGL перемножать матрицы на видеокарте а потом с нее просто результат забирать Ну тип тоже быстрей как вариант
@Proger20
4 жыл бұрын
Не имеется у меня GPU(( Может когда-нибудь введу систему пожертвования, чтобы накопить на GPU(( Сижу с момента сборки компа на Vega 8 R3 2200G
@user-tp1qn2wt6t
Жыл бұрын
Просто перемножать матрицы и забирать данные обратно, слишком затратно, видеокарта будет проигрывать, т.к. ты упрешься с пропускную способность pci
@endlessvd
11 ай бұрын
@@user-tp1qn2wt6tты прав, я проводил сравнение, C++ Eigen (умножение матриц на процессоре в 1 поток с хорошей оптимизацией машинного кода) против OpenGL Python (умножение матриц на GPU), так вот, встроенный графический ускоритель в процессоре умножал в 2 раза медленнее матрицы, чем 1 поток процессора 😢😢😢
@user-tp1qn2wt6t
11 ай бұрын
@@endlessvd да, там много нюансов на самом деле, у вас встройка сколько ядер имеет? мне бы еще хотелось посмотреть как вы реализовали свой код, из контекста я понял вы использовали язык glsl для compute shaders, все верно я понял?
@user-tp1qn2wt6t
10 ай бұрын
Я могу использовать glsl как для opengl, так и для vulkan, но я основном я использую opencl, вы хотите, чтобы я показал вам шейдер для перемнодения матриц?
За то что признаёшь кривость кода на C++ лайк, многие зазнаются и начинают пропихивать питон как более быстрый яп, хотя это в корне не так.
Привет, выпусти пожалуйста курс по разработке и на с++ пж я подписан
Спасибо за видео все очень хорошо насчет tensorflow то скажу что она в основном на с++ все библиотеки для нейронок написаны на плюсах а также людьми опытными а ты (извини) еще нуб , ну а питоном просто проще управлять и он удобнее
@Proger20
4 жыл бұрын
Знаю что нуб, в видео об этом сказано
@film_universe_hub
4 жыл бұрын
@@Proger20 у меня есть код своей нейронки но никак не могу подобрать формулу для коректировки весов что думаешь ?
@film_universe_hub
4 жыл бұрын
@@Proger20 извини за нуб сам такой если не хуже)
Я с тобой
Скажи, пожалуйста: ты фрилансишь или работаешь в компании какой-то?
@Proger20
3 жыл бұрын
Ни то ни другое
-На пайтоне вы можете написать все что угодно, но на плюсах вы можете написать пайтон.
Ну ты гений блин, как ты думаешь, на чём написан tensorflow? Плюсы+гпу+симд+мультитреад. Другими словами ты сравниваешь кривые плюсы с плюсами на стероидах.
А это можно сделать на бесплатной версии c++?
@Proger20
Ай бұрын
А есть платная версия С++?
@ScarletDragon21
Ай бұрын
@@Proger20 , когда скачивала там был выбор и на платную версию...поэтому стало любопытно ( я новечёк)
Не корректное сравнение - разные сети (функции активации) поэтому и время такое странное. Вычислительно сигмоида намного тяжелее релу. Чтобы сравнивать инструменты(ЯП) - заготовка(прога с данными) должна быть одно и той же по всем параметрам.
Хотелось бы взглянуть на этот питоновский вариант. Я раньше уже, наслышанный о мощи питона в нейронках, посмотрел инструкцию по созданию простой нейронки по распознаванию чисел. Воспроизвёл у себя. Тоже интересно было сравнить с тем, что получилось у меня на Java. В итоге питон по скорости проиграл даже не в разы, а на порядки. Может такой кривой вариант попался, хз. Через numpy сделано, все дела... Позволю себе дать ещё совет автору. Поразбирайте внимательно ваш сишный вариант, может найдёте, где криво. Ну не должно быть такой разницы в скорости. Библиотеки для питона на тех же плюсах пишут. Я тоже изначальный вариант на Java, который делал по видео, сначала оптимизировал, ускорив раза в два в однопотоке, а потом ещё и масштабировал, чтобы все ядра проца загружал. В итоге разница производительности и качества кода с изначальным вариантом просто пропасть.
@Proger20
5 ай бұрын
Ха-ха-ха, не .. вы видимо какой-то мусор нашли, написанный на питоне... На Tensorflow очень быстро работают нейронки. Респект любому человеку, кто напишет, чтобы у него нейронка работала так же быстро, как на TF
@Proger20
5 ай бұрын
+ у меня только на одном ядре запускается нейронка
@mirkofilipovic2054
5 ай бұрын
@@Proger20 А где скачать путёвый вариант на питоне?
@mirkofilipovic2054
5 ай бұрын
@@Proger20 Ну у вас то может и на одном ядре, а питоновкий вариант как? Это к слову о разнице в скорости.
Какую книжку рекомендуете для новичков по С++?
@Proger20
3 жыл бұрын
Все, что я знаю по С++, узнал из уроков на ютубе
@user-tp1qn2wt6t
11 ай бұрын
cpp reference официальный сайт консорциума стандарта языка с/с++, там вы можете узнать абсолютно всю информацию про с++
Слушай, а как насчёт нейросетей на ассемблере.
@AnuarLife
3 жыл бұрын
Зачем? Это нереально долго ради небольшой скорости
@thetraveler7779
3 жыл бұрын
@@AnuarLife насчет небольшой это точно? почему не средней или большой? Суть была в другом, в том что интересно бы глянуть насколько именно быстрее, пока напишешь не узнаешь, хотя печатая данное сообщение пришло в голову, что реально мог же загуглить есть ли написанные уже и глянуть скорость, если есть.
Забавно, но все написано на плюсах. Джава на плюсах, плюсы на плюсах (си) хапззхапзхпазхпаап, проги на плюсах. А все почему? Потому что он среднеуровневый ъуъ!
Норм, только на гитхабе пусто :)
@Proger20
4 жыл бұрын
Руки не доходят
Жаль что о нормальных ютуб-программистах, которые умеют нормально рассказать и показать в основном никто не знает
@Proger20
4 жыл бұрын
Это можно исправить!) Если будем распространять видео... В связи с карантином думаю переход на более интересные ролики с занимательной практикой на питоне.)
Автор ты зря завел свой канал, ты вещаешь какую то чушь.
@Proger20
5 ай бұрын
Поясни за базар
@Red_Paper6495
5 ай бұрын
@@Proger20 , на базар ты со своей мамой ходить будешь ;)