Data Science Guy – Telegram
Data Science Guy
3.6K subscribers
106 photos
10 videos
4 files
174 links
Канал проекта Data Science Guy на ютубе.

https://www.youtube.com/c/DataScienceGuy


Есть вопросы по обучению Data science и ML? Пишем в чат - https://news.1rj.ru/str/dsguy_chat
Download Telegram
В 2-х словах о том, как стартовать соревнование на kaggle новичкам:
Более подробно поговорим о kaggle в одном из следующих видео.
Наткнулся на неплохой сайт с подборкой бесплатных книг по программированию в общем и по Python в частности. Делюсь)
http://programming-motherfucker.com/become.html
Намечается бесплатный онлайн курс «Введение в машинное обучение» от сообщества The Rolling Scopes. Начало занятий 18 января 2021.
https://rs.school/machine-learning

Возможно будет годный.
GPU Basics
#ai_hardware

Несмотря на обилие возможностей глубинного обучения в облаке, десятки тысяч людей продолжают делать это дома на своих компьютерах. И, наверное, уже все знают, что для обучения модели будет использоваться видеокарта – graphical processing unit (“GPU”), а не процессор (“CPU”).

Чтобы дать числовую оценку преимуществ GPU (будем использовать англоязычный термин, так как в нем присутствует «вычислительный» аспект, в отличие от слова «видеокарта») приведу недавний пример из практики. Решили посмотреть, за какое время центральный процессор справится с задачей, на которую у GPU уходит около часа. Оказалось – за 25 часов!

Конечно, данное значение будет отличаться для разных видов задач, CPU и GPU, архитектур систем и используемых для обучения библиотек, но вывод не изменится – GPU быстрее. Намного быстрее. До такой степени, что заниматься современным глубинным обучением на центральном процессоре сейчас вряд ли имеет смысл.

Сегодня немного поговорим о том, почему же GPU быстрей? Простой ответ – процесс глубинного обучения практически целиком состоит из перемножений очень больших матриц для оптимизации огромного количества параметров, а GPU с такой задачей справляется лучше.

Но возникает следующий вопрос – а почему именно GPU лучше перемножает матрицы?

Есть классическая аналогия, что CPU работает как гоночный автомобиль (чаще всего используется Феррари), а GPU как огромный трак. Если нужно доставить из пункта А в пункт Б небольшой груз, то Феррари это сделает намного быстрей.

Но если нужно перевести большое количество стройматериалов, то медленный трак сделает это намного быстрей, так как сможет это сделать за одну «ходку», в то время как Феррари потребуется десятки.

Самый простой способ продемонстрировать этот эффект, сравнить количество ядер. Для самых мощных современных процессоров это несколько десятков (32 – очень круто; 48 – фактически существующий предел). Это очень впечатляет, особенно тех, кто застал времена всего с одним единственным ядром. Но топовые GPU сейчас имеют более 10 тысяч ядер!

Да, ядра GPU другие, намного проще, чем сложные ядра CPU. Но против грубой силы приема нет, 10 тысяч ядер все равно позволяет производить намного больше параллельных вычислений, чем 32, а значит намного быстрей обучать модель.

С перевозкой грузов на траке есть одна большая проблема – его нужно долго нагружать и это может очень сильно удлинять общее время транспортировки.

И действительно, в базовом варианте необходимость перемещения больших объемов данных от процессора на GPU могла бы привести к большим потерям времени.

Но современные системы научились хорошо с этим справляться – они используют параллелизм, фактически, большое количество траков, работающих одновременно, и это позволяет решить проблему перемещения данных относительно быстро.

Таким образом, GPU имеют огромный выигрыш в скорости вычислений и теряют совсем немного из-за необходимости перемещения данных. Общий выигрыш в скорости очень велик.

Глубже в технические детали не пойдем – кто хочет легко может найти про них информацию в других источниках, да и для большинства задач обучения Искусственного интеллекта это не обязательно. Но время от время мы будем писать про практические аспекты «домашнего глубинного обучения».
AI и open source

Мы уже не раз писали, что Python — главный язык AI. Например, тут рассказывали, как самим начать делать AI (это не очень сложно!), а здесь обсуждали основные библиотеки, которые для этого используются.

Одна из важнейших причин, почему для Питона написано много библиотек, пишутся новые, и все ими пользуются, в том, что они бесплатные и open source — с открытым, доступным в интернете программным кодом. Именно это позволяет разработчикам всего мира кооперироваться в работе над ними, объединяя усилия и знания.

Говоря про open source, сразу хочется вспомнить известный анекдот про Microsoft: в начале 2000х они активно боролись с open source, а CEO Стив Баллмер говорил: "Линукс — это рак".
С тех пор, впрочем, многое поменялось. Так, компания активно развивает open source-продукт Visual Studio Code — одну из самых удобных сред для написания кода. Часть нашей команды пользуется именно ею.

Почти для всех популярных программ и задач есть open source-аналоги. Их довольно удобно искать через так называемые awesome-подборки, куда попадают "хорошие" по мнению пользователей программы: вот, например, большая подборка по Питону, а вот — отличная подборка только по AI (сюда мы и сами часто заглядываем). Рекомендуем!
Если вы интересуетесь компьютерным зрением и нейросетями, то у меня для вас есть хорошая новость. Недавно на kaggle началось соревнование, которое очень хорошо подойдет для новичков в этой сфере, чтобы разобраться как вообще работает классификация изображений с помощью нейросетей, поюзать аугментации, различные препроцессинги и тд. Да и не только для новичков подойдет, думаю там будет с чем разобраться и опытным.
Наверно после нового года и сам ворвусь туда, так что возможно увидимся на лидерборде)
https://www.kaggle.com/c/cassava-leaf-disease-classification

Кстати в ближайшее время (в начале декабря) выпущу видео, про то как врываться в свое первое соревнование на kaggle.
Нашел тут пару интересных ресурсов, которые могут вам помочь в подготовке к собеседованию в дата саенс вакансиях. Успехов! 👨‍🎓👩‍🎓

https://github.com/slgero/testovoe
https://github.com/andrewekhalel/MLQuestions
https://interview-mds.ru/
https://www.analyticsvidhya.com/blog/2018/06/comprehensive-data-science-machine-learning-interview-guide/
Media is too big
VIEW IN TELEGRAM
Нейросетевой клип.
Предупреждаю сразу, там дичь) 🙈
Песня из последнего видео, сгенеренная нейросеткой. Видеоряд тоже сгенерирован нейросеткой и пытается попадать под слова в песне.
Получилось что то в духе канала @NeuralShit
Скоро новый год, это время дарить подарки! 🎅
В одном из следующих видео я анонсирую розыгрыш, думаю это будут книги.
Решил провести опрос, по какой теме вы хотели бы выиграть книгу?
Anonymous Poll
33%
Статистика
29%
Python
39%
Машинное обучение
24%
Глубокое обучение (нейронки)
Небольшая прикольная методичка по ML, как раз на выходные чтобы было чем заняться. 👨‍🎓👩‍🎓
Forwarded from Neural Shit
This media is not supported in your browser
VIEW IN TELEGRAM
Время наряжать нейроёлки!

Всю ночь обучал стайлган генерировать ёлочные игрушки
В видео мы генерировали 3 мелодии, а в послушали только одну. Остальные 2 можно послушать тут)
С наступающим новым годом 🥳