🤣 Странная, но забавная штука: 😅
Ребята из лаборатории яндекса обучили image2image сетку вычислять математические выражения.
То есть, на входе картинка “2+2”, на выходе ответ “4.”.
https://yandex.ru/lab/calc?lang=ru
https://habr.com/ru/company/yandex/blog/493950/
Ребята из лаборатории яндекса обучили image2image сетку вычислять математические выражения.
То есть, на входе картинка “2+2”, на выходе ответ “4.”.
https://yandex.ru/lab/calc?lang=ru
https://habr.com/ru/company/yandex/blog/493950/
Хабр
Нейросетевой калькулятор для сложения и вычитания не очень больших чисел
Мы рады представить хабросообществу наш смелый эксперимент: калькулятор, работающий на основе нейросети. Он работает следующим образом: математическое выражение преобразуется в изображение и подается...
Версия калькулятора на tfjs:
https://yandex.ru/lab/calc_tfjs
Если tfjs не фурычит:
https://yandex.ru/lab/calc
https://yandex.ru/lab/calc_tfjs
Если tfjs не фурычит:
https://yandex.ru/lab/calc
Тут наши китайские 🇨🇳 коллеги из Huawei не унывают и выпустили свой Фреймворк для обучения сеток.
Называется MindSpore.
Раньше было как, у тебя есть выбор:
❤️ Красная таблетка - Tensorflow, статические графы, компиляция, быстрая скорость работы, но отвратительный дебаг.
💙 Синяя - Pytorch, динамические графы, удобное написание кода, но никакой компиляции, а об ошибке узнаешь только в рантайме
(Конечно в последнее время многое поменялось, есть TF 2.0, и PyTorch JIT)
Эти ребята, заявляют, что им удалось сесть на два стула. Как именно - узнаем позже.
💛 А ещё у них встроенный параллелизм для обучения
И вроде как, будет удобно делать мобайл решения
Ссылка вот: https://github.com/mindspore-ai/mindspore
Называется MindSpore.
Раньше было как, у тебя есть выбор:
❤️ Красная таблетка - Tensorflow, статические графы, компиляция, быстрая скорость работы, но отвратительный дебаг.
💙 Синяя - Pytorch, динамические графы, удобное написание кода, но никакой компиляции, а об ошибке узнаешь только в рантайме
(Конечно в последнее время многое поменялось, есть TF 2.0, и PyTorch JIT)
Эти ребята, заявляют, что им удалось сесть на два стула. Как именно - узнаем позже.
💛 А ещё у них встроенный параллелизм для обучения
И вроде как, будет удобно делать мобайл решения
Ссылка вот: https://github.com/mindspore-ai/mindspore
GitHub
GitHub - mindspore-ai/mindspore: MindSpore is a new open source deep learning training/inference framework that could be used for…
MindSpore is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios. - mindspore-ai/mindspore
😍Нейронка научилась петь🎤
Вы только послушайте, что сделали ребята из OpenAi, модель для синтеза песен.
Любой tts просто нервно курит в сторонке
https://openai.com/blog/jukebox/
Вы только послушайте, что сделали ребята из OpenAi, модель для синтеза песен.
Любой tts просто нервно курит в сторонке
https://openai.com/blog/jukebox/
Openai
Jukebox
We’re introducing Jukebox, a neural net that generates music, including rudimentary singing, as raw audio in a variety of genres and artist styles. We’re releasing the model weights and code, along with a tool to explore the generated samples.
🤟Крутая нормализация русского текста для синтеза речи🗣
Пару месяцев назад искал хороший open source нормализатор для русского языка.
Ничего адекватного найти не мог. Все, что было, обновлялось от силы два года назад, да и работало через семантические правила.
Наткнулся на статью в бложике этих ребят:
https://spark-in.me/post/russian_text_normalization
На удивление работает весьма не плохо, поэтому можете использовать:
https://github.com/snakers4/russian_stt_text_normalization
Краткая справка, нормализация текста, это такой процесс, когда различные краткие записи расписываются в виде слов.
Например: в 2020 году -> в дветысячи двадцатом году.
Пару месяцев назад искал хороший open source нормализатор для русского языка.
Ничего адекватного найти не мог. Все, что было, обновлялось от силы два года назад, да и работало через семантические правила.
Наткнулся на статью в бложике этих ребят:
https://spark-in.me/post/russian_text_normalization
На удивление работает весьма не плохо, поэтому можете использовать:
https://github.com/snakers4/russian_stt_text_normalization
👨🏫 Полезное на YouTube 📺
Нашел прекрасный канал с лекциями по алгоритмам, которые могут быть полезны в машинке и не только.
Например тут хорошо разбираются алгоритмы быстрого поиска в векторных пространствах, backprop и многое другое.
https://www.youtube.com/c/VictorLavrenko
Нашел прекрасный канал с лекциями по алгоритмам, которые могут быть полезны в машинке и не только.
Например тут хорошо разбираются алгоритмы быстрого поиска в векторных пространствах, backprop и многое другое.
https://www.youtube.com/c/VictorLavrenko
🤳Self supervised📚
Наткнулся на интересную статью с обзорами Self-Supervised методов для обучения моделей.
В принципе это полезно к изучению, т.к. иногда встречаются задачи, где у вас просто недостаточно качественной разметки для ее решения
https://lilianweng.github.io/lil-log/2019/11/10/self-supervised-learning.html
Наткнулся на интересную статью с обзорами Self-Supervised методов для обучения моделей.
В принципе это полезно к изучению, т.к. иногда встречаются задачи, где у вас просто недостаточно качественной разметки для ее решения
Self Supervised обучение, это когда у вас есть только набор данных без какой либо разметки и вы хотите предобучить модель, так, чтобы она научилась искать закономерности самостоятельно.
Это активно используется в языковых моделях, например GPT-1/2/3
В этой статье описываются общие методики, которые можно применять к видео и картинкам.
https://lilianweng.github.io/lil-log/2019/11/10/self-supervised-learning.html
Lil'Log
Self Supervised Learning
😘 Полезная функция OpenCV 🌚
Часто встречаюсь с тем, что у меня есть какая-то компетенция в области компьютерного зрения, но большая часть знаний сводится к использованию различных нейросетевых методов. Однако ими все не должно ограничивается, и существуют не менее мощные методы, которые используют классический математический аппарат.
В последнее время изучаю тему беспилотных автомобилей, там большой упор делается не предобработку изображений, например перевод вида дороги из перспективы в “вид птичьего полета”. Оказывается для этого даже не нужно изобретать велосипед и есть встроенные методы библиотеки OpenCV.
Ради общего образования можете почитать эту заметку о том как это делается. Тут также рассказывается о том, как применить эту механику, чтобы сделать свой “сканер документов”, который вы возможно встречали в стандартных заметках iOS.
https://www.pyimagesearch.com/2014/08/25/4-point-opencv-getperspective-transform-example/
Часто встречаюсь с тем, что у меня есть какая-то компетенция в области компьютерного зрения, но большая часть знаний сводится к использованию различных нейросетевых методов. Однако ими все не должно ограничивается, и существуют не менее мощные методы, которые используют классический математический аппарат.
В последнее время изучаю тему беспилотных автомобилей, там большой упор делается не предобработку изображений, например перевод вида дороги из перспективы в “вид птичьего полета”. Оказывается для этого даже не нужно изобретать велосипед и есть встроенные методы библиотеки OpenCV.
Ради общего образования можете почитать эту заметку о том как это делается. Тут также рассказывается о том, как применить эту механику, чтобы сделать свой “сканер документов”, который вы возможно встречали в стандартных заметках iOS.
https://www.pyimagesearch.com/2014/08/25/4-point-opencv-getperspective-transform-example/
PyImageSearch
4 Point OpenCV getPerspective Transform Example - PyImageSearch
Last updated on July 4, 2021. 4:18am. Alarm blaring. Still dark outside. The bed is warm. And the floor will feel so cold on my bare feet. But I got out of bed. I braved the morning, and I took…
💻 GPU MacOS 🖥
В среде ML/DS есть большое число пользователей macbook, однако часто встает проблема с тем, что тренировать сеточки выходит только на серверах или облаках.
Связано это в первую очередь с тем, что Apple давно отказались от графики Nvidia, в пользу AMD. Как ни странно выход есть!
Около года назад в MacOS появилась подержка eGPU, это когда вы покупаете обычную карточку и с помощью специального дока присоединяете ее через USB-C к вашему MacBook. Это в первую очередь создано для ускорения работы с видео и фото.
О том как направить всю мощь GPU для решения задач DL написно здесь:
https://medium.com/@janne.spijkervet/accelerated-deep-learning-on-a-macbook-with-pytorch-the-egpu-nvidia-titan-xp-3eb380548d91
В среде ML/DS есть большое число пользователей macbook, однако часто встает проблема с тем, что тренировать сеточки выходит только на серверах или облаках.
Связано это в первую очередь с тем, что Apple давно отказались от графики Nvidia, в пользу AMD. Как ни странно выход есть!
Около года назад в MacOS появилась подержка eGPU, это когда вы покупаете обычную карточку и с помощью специального дока присоединяете ее через USB-C к вашему MacBook. Это в первую очередь создано для ускорения работы с видео и фото.
О том как направить всю мощь GPU для решения задач DL написно здесь:
https://medium.com/@janne.spijkervet/accelerated-deep-learning-on-a-macbook-with-pytorch-the-egpu-nvidia-titan-xp-3eb380548d91
Medium
Accelerated Deep Learning on a MacBook with PyTorch: the eGPU (NVIDIA Titan XP)
This is a little blogpost about installing the necessary environment to use an external GPU (eGPU) on an older, Thunderbolt 2 equipped…
🛩 Состоялся релиз версии Pytorch 1.6🔥
🤔 Что нового?
⚡️ 16bit precision
В Pytorch core был интегрирован модуль AMP, который теперь позволяет использовать для вычисления 16 битные числа с плавающей точкой, вместо 32 битных. Это уменьшает потребляемую память и ускоряет вычисления на тех GPU, где это поддерживается.
Самый кайф в том, что вам не нужно думать о том, как и какие тензоры перевести в 16 бит, все производится автоматически.
Ранее это было доступно с помощью отдельного модуля APEX от Nvidia.
Теперь поддержка вычислений с половинной точностью доступно прямо из коробки с помощью простого интерфейса.
Подробнее в блоге:
https://pytorch.org/blog/accelerating-training-on-nvidia-gpus-with-pytorch-automatic-mixed-precision/
📈 Beta версия профайлера памяти
В виде бета версии встроен профайлер, с помощью которого вы сможете отследить сколько CPU/GPU памяти потребляет каждый конкретный слой сети.
Подробнее здесь:
https://pytorch.org/docs/stable/autograd.html#profiler
⏳ Параллельные операции в TorchScript
Теперь на уровне языка поддерживаются операции для параллелизации операций на уровне TorchScript. То есть параллельное выполнение хардкодится прямо внутрь модели.
Это может быть полезно, например в случае bi-directional сетей, или еще где вы это придумаете.
Подробнее тут:
https://pytorch.org/docs/stable/jit.html
Об остальных изменениях можно прочитать в чейнжлоге:
https://github.com/pytorch/pytorch/releases
🤔 Что нового?
⚡️ 16bit precision
В Pytorch core был интегрирован модуль AMP, который теперь позволяет использовать для вычисления 16 битные числа с плавающей точкой, вместо 32 битных. Это уменьшает потребляемую память и ускоряет вычисления на тех GPU, где это поддерживается.
Самый кайф в том, что вам не нужно думать о том, как и какие тензоры перевести в 16 бит, все производится автоматически.
Ранее это было доступно с помощью отдельного модуля APEX от Nvidia.
Теперь поддержка вычислений с половинной точностью доступно прямо из коробки с помощью простого интерфейса.
Подробнее в блоге:
https://pytorch.org/blog/accelerating-training-on-nvidia-gpus-with-pytorch-automatic-mixed-precision/
📈 Beta версия профайлера памяти
В виде бета версии встроен профайлер, с помощью которого вы сможете отследить сколько CPU/GPU памяти потребляет каждый конкретный слой сети.
Подробнее здесь:
https://pytorch.org/docs/stable/autograd.html#profiler
⏳ Параллельные операции в TorchScript
Теперь на уровне языка поддерживаются операции для параллелизации операций на уровне TorchScript. То есть параллельное выполнение хардкодится прямо внутрь модели.
Это может быть полезно, например в случае bi-directional сетей, или еще где вы это придумаете.
Подробнее тут:
https://pytorch.org/docs/stable/jit.html
Об остальных изменениях можно прочитать в чейнжлоге:
https://github.com/pytorch/pytorch/releases
👀 Превью архитектуры нейронок 🔬
Бывало такое, что есть условный граф нейронки одного из фреймворков (grapdef, savedmodel, torch noscript, onnx ….)
И хочется просто клацнуть и посмотреть как устроены операции внутри?
Прямо как в TensorBoard, но быстро и прямо сейчас.
Предтавляю вам тулзу, которая поменяла мою жизнь в лучшую сторону, Netron:
https://github.com/lutzroeder/netron
Бывало такое, что есть условный граф нейронки одного из фреймворков (grapdef, savedmodel, torch noscript, onnx ….)
И хочется просто клацнуть и посмотреть как устроены операции внутри?
Прямо как в TensorBoard, но быстро и прямо сейчас.
Предтавляю вам тулзу, которая поменяла мою жизнь в лучшую сторону, Netron:
https://github.com/lutzroeder/netron
GitHub
GitHub - lutzroeder/netron: Visualizer for neural network, deep learning and machine learning models
Visualizer for neural network, deep learning and machine learning models - lutzroeder/netron
⚡️Быстрый поиск по векторным пространствам🔎
Иногда так случается, что вам нужно реализовать поиск по миллионам векторов.
Например, если вы делаете FAQ чат бота, поиск по лицам или картинкам, агрегатор новостей и многое другое.
И зачастую мы упираемся в скорость работы алгоритма, т.к. векторов может быть очень много и мы должны уметь искать за адекватное время.
Эта статья рассказывает об эффективных алгоритмах поиска на больших векторных пространствах
https://habr.com/ru/company/mailru/blog/338360/
Иногда так случается, что вам нужно реализовать поиск по миллионам векторов.
Например, если вы делаете FAQ чат бота, поиск по лицам или картинкам, агрегатор новостей и многое другое.
И зачастую мы упираемся в скорость работы алгоритма, т.к. векторов может быть очень много и мы должны уметь искать за адекватное время.
Эта статья рассказывает об эффективных алгоритмах поиска на больших векторных пространствах
https://habr.com/ru/company/mailru/blog/338360/
Хабр
Методы приближенного поиска ближайших соседей
Довольно часто программисты и специалисты из области data science сталкиваются с задачей поиска похожих профилей пользователей или подбора схожей музыки. Решения могут сводиться к преобразованию...
🏳️🌈Transformers, transformers everywhere 🏳️🌈
Мы уже видели примеры, когда трансформеры эффективно применяются для анализа текста и генерации звука, при этом побивая все бенчмарки
И вот наконец у сверточных сетей для картинок появилась конкуренция, интересный подход по применению трансформеров для анализа картинок
А ещё авторы статьи предпочли остаться анонимными 👀 и не написали свои имения в заголовке статьи
https://youtu.be/TrdevFK_am4
Мы уже видели примеры, когда трансформеры эффективно применяются для анализа текста и генерации звука, при этом побивая все бенчмарки
И вот наконец у сверточных сетей для картинок появилась конкуренция, интересный подход по применению трансформеров для анализа картинок
А ещё авторы статьи предпочли остаться анонимными 👀 и не написали свои имения в заголовке статьи
https://youtu.be/TrdevFK_am4
YouTube
An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale (Paper Explained)
#ai #research #transformers
Transformers are Ruining Convolutions. This paper, under review at ICLR, shows that given enough data, a standard Transformer can outperform Convolutional Neural Networks in image recognition tasks, which are classically tasks…
Transformers are Ruining Convolutions. This paper, under review at ICLR, shows that given enough data, a standard Transformer can outperform Convolutional Neural Networks in image recognition tasks, which are classically tasks…
🔨Parallel pandas
Случайно нашел супер полезную тулзу, которая в одну строчку делает apply в pandas параллельным.
https://towardsdatascience.com/pandaral-lel-a-simple-and-efficient-tool-to-parallelize-your-pandas-operations-on-all-your-cpus-bb5ff2a409ae
⚙Случайно нашел супер полезную тулзу, которая в одну строчку делает apply в pandas параллельным.
https://towardsdatascience.com/pandaral-lel-a-simple-and-efficient-tool-to-parallelize-your-pandas-operations-on-all-your-cpus-bb5ff2a409ae
Medium
Pandarallel — A simple and efficient tool to parallelize your pandas computation on all your CPUs
How one line of code could significantly speed up your workflow.
💭 Production QA 💬
Если вам когда-то придется делать вопросно ответную систему для продакшена, возможно я нашел для вас решение.
Эта штука предоставляет набор уже готовых тулов, моделей и интерфейсов, чтобы запустить QA на больших масштабах.
* Внутри есть возможность конвертации базы документов во внутренний формат из PDF и DocX
* Готовые препроцессоры текстов
* Совместимость с ElasticSearch, FAISS, SQL и InMemory
* Различные движки поиска от Elastic Search, до поиска по векторам
* Встроенные Reader модели на базе трансформеров претренированные на SQuAD (это только английский, если что)
* RestAPI
* А так же тулзу для разметки ваших датасетов внутри веб интерфейса!
https://github.com/deepset-ai/haystack
Если вам когда-то придется делать вопросно ответную систему для продакшена, возможно я нашел для вас решение.
Эта штука предоставляет набор уже готовых тулов, моделей и интерфейсов, чтобы запустить QA на больших масштабах.
* Внутри есть возможность конвертации базы документов во внутренний формат из PDF и DocX
* Готовые препроцессоры текстов
* Совместимость с ElasticSearch, FAISS, SQL и InMemory
* Различные движки поиска от Elastic Search, до поиска по векторам
* Встроенные Reader модели на базе трансформеров претренированные на SQuAD (это только английский, если что)
* RestAPI
* А так же тулзу для разметки ваших датасетов внутри веб интерфейса!
https://github.com/deepset-ai/haystack
GitHub
GitHub - deepset-ai/haystack: AI orchestration framework to build customizable, production-ready LLM applications. Connect components…
AI orchestration framework to build customizable, production-ready LLM applications. Connect components (models, vector DBs, file converters) to pipelines or agents that can interact with your data...
🔉Facebook denoiser🎧
Понадобилось тут почистить датасет с записью голоса человека и убрать из него лишний шум. Зашел на гитхаб в поиске подходящией либы и с удивлением нашел готовый к использованию инструмент из коробки.
Тулза работает сразу из консоли и позволяет вам почистить ваши аудио.
(примеры ниже)
https://github.com/facebookresearch/denoiser
Понадобилось тут почистить датасет с записью голоса человека и убрать из него лишний шум. Зашел на гитхаб в поиске подходящией либы и с удивлением нашел готовый к использованию инструмент из коробки.
Тулза работает сразу из консоли и позволяет вам почистить ваши аудио.
(примеры ниже)
https://github.com/facebookresearch/denoiser
GitHub
GitHub - facebookresearch/denoiser: Real Time Speech Enhancement in the Waveform Domain (Interspeech 2020)We provide a PyTorch…
Real Time Speech Enhancement in the Waveform Domain (Interspeech 2020)We provide a PyTorch implementation of the paper Real Time Speech Enhancement in the Waveform Domain. In which, we present a ca...