Получи случайную криптовалюту за регистрацию!

STACK MORE LAYERS

Логотип телеграм канала @stackmorelayers — STACK MORE LAYERS S
Логотип телеграм канала @stackmorelayers — STACK MORE LAYERS
Адрес канала: @stackmorelayers
Категории: Без категории
Язык: Русский
Количество подписчиков: 2.39K
Описание канала:

Еще один канал в твоем списке, который ты не будешь читать
Author: @alxmamaev

Рейтинги и Отзывы

4.33

3 отзыва

Оценить канал stackmorelayers и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

2

4 звезд

0

3 звезд

1

2 звезд

0

1 звезд

0


Последние сообщения 2

2022-02-15 18:44:50
660 viewsAlexander Mamaev, 15:44
Открыть/Комментировать
2022-02-15 18:44:48 Инженерная задача

Есть у меня чисто инженерная задача, над которой я думаю в последнее время, может в комментариях предложите интересные решения.
Представим что мы гугл, который собирает огромную базу разметки с Re-Capcha и мы хотим обучить классификатор на этих данных.
Предположим что данных за все время набралось порядка 10тб, как же нам обучаться в таких объемах?

Основные проблемы здесь это:
* Хранить копию данных на каждой машине кластера на котором мы учимся - расточительно, особенно при условии, что датасет может регулярно обновляться
* Любая работа по декодированию картинки в float32 тензор и последующие аугментации занимают много процессорного времени, от чего наши гпушки могут простаивать
* Хочется делать максимально скелбл пайплан

Мое решение:

Скорее всего мы не захотим хранить картинки где-то на локальном диске, т.к. на нем просто не будет хватать места, давайте будем делать это в неком s3 подобном облаке.
Поскольку выгрузка и декодирование картинки с аугментациями это сильно CPU bound задача, то мы разделим наш кластер на две части.
1 - GPU тачки с кучей видеокарт
2 - Мощные CPU воркеры с десятком процессорных ядер

Вторые будут молотить картинки для первых и если гпушки будут простаивать, мы просто будем добавлять CPU воркеров до оптимума.

Но как теперь доставлять данные от первых ко вторым? Можно поднять базу по типу кафки и пусть CPU воркеры кладут в нее сразу готовые батчи в виде последовательности байт.
Тогда GPU машины вообще не будут тратить время на формирование батча, а будут копировать набор байт по сети и сразу класть их в сегмент памяти на видеокарте.


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

И тут мне уже не понятно на сколько сложно добиться таких скоростей
625 viewsAlexander Mamaev, 15:44
Открыть/Комментировать
2022-02-12 16:56:45 Computer Vision Math

Нашел очень интересный канал с лекциями по математике применительно к обработке фотографий.
Это лекции не про привычный вам машин лернинг и сверточки, а скорее разбор математических моделей камеры, как работают различные преобразования координат, некоторная математика применительная к self driving и прочее.

Например очень интересно послушать подноготную фотограметрии!
https://www.youtube.com/c/CyrillStachniss/videos
653 viewsAlexander Mamaev, edited  13:56
Открыть/Комментировать
2022-02-08 18:56:07
Там кстати можно передать флажок и смотреть прогресс бар, советую изучить!

https://www.gnu.org/software/parallel/parallel_tutorial.html
777 viewsAlexander Mamaev, 15:56
Открыть/Комментировать
2022-02-08 18:55:17
GNU Parallel

Если вы активный пользователь Linux, вы наверняка пользуетесь кучей инструментов GNU, такие как ls, cat, emacs, tar и прочее

Каждый из этих инструментов обладает большим функционалом, который не используется и зачастую то, что можно было бы сделать с помощью встроенных утилит я делаю на питончике.
Так было и с GNU Parallel, утилитка которая позволяет вам запустить работу скриптов в параллели. Обычно при обработке разных данных я просто использую питон + joblib. Но тут мне понадобилось обработать 300гб аудио. Делать это питоном - глупо, слишком маленький перформанс. Нужен FFmpeg!

Но запускать его в из питона тоже как-то не по канону, тут я и вспомнил про GNU Parallel, двухстрочный код на баше + строчка запуска параллели и вот наши данные обрабатываются во всю мощь.
663 viewsAlexander Mamaev, edited  15:55
Открыть/Комментировать
2022-01-31 01:11:31 Если есть интересные линки по теме, можете постить их в комменты
710 viewsAlexander Mamaev, 22:11
Открыть/Комментировать
2022-01-31 01:09:24 Часто вижу в русском твиттере самолюбование некоторых разработчиков на тему того какие они крутые, а простые людишки ничего не понимают и получают копейки.

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

Если представить computer science как церковь, а Джон Кармак - батюшка, то твиттеровские-прогеры - дети пришедшие освятить куличик.

Чтобы не быть как они, а присоединиться к движению Computer Church вот вам пару линков:

https://t.me/experimentalchill - Канал про плюсы и то как делать высоконагруженные сервисы ( очень хорош, чтобы почувствовать себя глупым)

https://t.me/brainfuckpc - Чел собрал компьютер на реле, а сейчас собирает компьютер на лампах

https://hackaday.com - Хабр каким он должен быть

https://free-van-ec5.notion.site/Reading-List-c9665d42914841f69ad63e7c41e84896 - ноушен где я по мере возможности собираю прикольные ссылки ( это не много, но это честная работа)
702 viewsAlexander Mamaev, 22:09
Открыть/Комментировать
2022-01-24 23:40:06
Calculator

Как ни странно хочу вам порекомендовать калькулятор для мака которым сам пользуюсь - numi.app

Штука достаточно умная, умеет работать с разными системами счисления, конвертитровать различные величины, причем достаточно интуитивно.

Интересно что, такую приятную штуку сделал рускоязычный разработчик
717 viewsAlexander Mamaev, edited  20:40
Открыть/Комментировать
2022-01-23 19:47:23
WAV Preview

Если вы часто работаете со звуком по своей работе, рекомендую установить плагин WAV Preview для vscode. Он позволяет прослушивать аудио на удаленном сервере, а с недавних пор показывает аудиодорожку и спектрограмму

https://marketplace.visualstudio.com/items?itemName=sukumo28.wav-preview
681 viewsAlexander Mamaev, 16:47
Открыть/Комментировать
2022-01-08 19:45:45
Мне нужно простое рабочее место, без этих геймерских изысков

*после пятой рюмки*
823 viewsAlexander Mamaev, 16:45
Открыть/Комментировать