Deep Dive 2 Deep Learning
388 subscribers
23 photos
4 videos
330 links
Канал про глубокое машинное обучение: кейсы, новости, открытия и факапы из мира нейросетей и не только
Download Telegram
🍏Почему глубокое обучение так востребовано в медицине
Ошеломительный успех DL-алгоритма AlphaFold от компании Deep Mind, которая в 2020 году помогла получить 3D-модели множества белков человеческого тела, предсказав расстояние между парами аминокислот. Однако, это не единственный случай применения глубокого обучения в биомедицине. Например, Deep Learning позволяет автоматически изучать известные соединения, отвечая на вопросы анализа, например, какие элементы необходимы для создания молекулы, чтобы ее синтезировать. Также DL может решить более сложные задачи: какие элементы необходимы для достижения желаемой биологической активности на заданной цели. Так группе ученых из департамента биомедицинской инженерии Эйндховенского Технического Университет (Нидерланды) с помощью методов глубокого обучения в 2021 году смогли идентифицировать 12 новых биоактивных соединений для так Х-рецепторов печени, которые являются мишенями для лекарств, лечащих воспаления, регулируя метаболизм липидов.
https://phys.org/news/2021-09-augmenting-human-intelligence-ai-medicines.html
🔥Triton - новый язык разработки DL-нейросетей с открытым исходным кодом от OpenAI
В конце июля 2021 года OpenAI представила 1-ю версию Triton. Этот open-source язык программирования похож на Python, который позволяет писать высокоэффективный код на графическом процессоре без опыта работы с CUDA. С Triton можно достичь максимальной производительности оборудования с относительно небольшими усилиями. Это особенно полезно для задач глубокого обучения, которые обрабатывают множество временных тензоров. Тестирование показало, что Triton в 2 раза эффективнее PyTorch. Triton полностью автоматизирует внутренние оптимизации ЦП, чтобы разработчики могли лучше сосредоточиться на высокоуровневой логике своего параллельного кода.
Из всех доступных доменных языков и JIT-компиляторов, Triton больше всего похож на Numba: ядра определяются как декорированные функции Python и запускаются одновременно в сетке экземпляров, внутри которых достигается параллелизм. Это обеспечивается с помощью операций над блоками - небольшими массивами, размеры которых равны степеням двойки. При этом Triton эффективно абстрагирует все проблемы, связанные с параллелизмом в блоках потоков CUDA: объединение памяти, синхронизацию общей памяти, планирование тензорного ядра.
Подробное описание с примерами: https://openai.com/blog/triton/
Код на Github: https://github.com/openai/triton
🦠DL-синтез лекарств против SARS-CoV-2
Ученые из MIT разработали DL-модель для синтеза лекарств против SARS-CoV-2 с учетом осложнений, которые налагает этот вирус на людей с сердечно-сосудистыми заболеваниями. В условиях ограниченного набора данных команде потребовался новый подход. Поскольку синергия лекарств происходит за счет ингибирования биологических мишеней (белки или нуклеиновые кислоты), DL-модель изучает взаимодействие лекарство-мишень и синергию лекарство-лекарство для поиска новых комбинаций. Предиктор лекарственной мишени моделирует взаимодействие между лекарством и набором известных биологических мишеней, связанных с выбранным заболеванием. Предиктор ассоциации "мишень-заболевание" учится понимать противовирусную активность лекарства, что означает определение выхода вируса в инфицированных тканевых культурах. Вместе они могут предсказать синергию двух препаратов.
В результате исследований были обнаружены две новые комбинации лекарств: ремдесивир (в настоящее время одобрен FDA для лечения Covid-19) и резерпин, а также ремдесивир и IQ-1S, которые в биологических анализах оказались эффективными против вируса. Исследование было опубликовано в Proceedings of the National Academy of Sciences.
Важно, что комбинированный подход может снизить угрозу резистентности вируса к лекарствам. Модель подходит для разных штаммов и потенциально может использоваться для других вирусов. В частности, исследователи успешно применили этот подход к синтезу лекарств от ВИЧ и рака поджелудочной железы. Для дальнейшего совершенствования своего биологического моделирования команда планирует включить дополнительную информацию, такую как белок-белковое взаимодействие и сети регуляции генов. В перспективе также будет подключено «активное обучение», которое помогает направлять процесс сбора данных и повышать точность прогнозирования в широком химическом пространстве.
https://news.mit.edu/2021/deep-learning-helps-predict-new-drug-combinations-fight-covid-19-0924
☀️DL для оптических процессоров вместо электронных чипов
Различные формы линейных преобразований, такие как преобразование Фурье, широко используются при обработке информации. В частности, переход от аналоговой природы электрических сигналов к дискретной форме в цифровых устройствах. Такие преобразования реализуются с использованием электронных процессоров, скорость которых ограничена емкостью электронного чипа, что создает узкое место по мере увеличения размера данных. Решением этой проблемы может быть замена цифровых процессоров оптическими аналогами и использование света для обработки информации.
Исследователи из Калифорнийского университета Лос-Анджелеса разработали основанный на глубоком обучении метод проектирования для оптического вычисления произвольного линейного преобразования. Этот полностью оптический процессор использует пространственно-спроектированные дифракционные поверхности для управления оптическими волнами и вычисляет любое желаемое линейное преобразование, когда свет проходит через серию дифракционных поверхностей. Таким образом, вычисление желаемого линейного преобразования завершается со скоростью распространения света с прохождением входного света через эти дифракционные поверхности. Помимо вычислительной скорости, такие оптические процессоры также не потребляют никакой энергии для вычислений, кроме освещения, что делает их пассивной вычислительной системой с высокой пропускной способностью.
Эксперименты показали, что конструкция этих оптических дифракционных процессоров, основанная на глубоком обучении, может точно синтезировать любое произвольное линейное преобразование между входной и выходной плоскостями. А точность и дифракционная эффективность полученных оптических преобразований значительно улучшаются по мере увеличения количества дифракционных поверхностей.
Успех этого метода был продемонстрирован путем выполнения широкого диапазона линейных преобразований, включая произвольно сгенерированные преобразования фазы и амплитуды, преобразование Фурье, операции перестановки изображений и фильтрации. Эта вычислительная структура может применяться к любой части электромагнитного спектра для разработки полностью оптических процессоров, использующих пространственно спроектированные дифракционные поверхности для универсального выполнения произвольного комплексного линейного преобразования. Также метод можно использовать для формирования полностью оптических сетей обработки информации с минимальным потреблением энергии вместо цифровых процессоров.
https://phys.org/news/2021-09-desired-linear-digital-processor.html
Forwarded from Big Data Science
🍁TOP-10 the most interesting DS-conferences all over the world in October 2021
1. 5-8 Oct
- NLP Summit, Applied Natural Language Processing, online. https://www.nlpsummit.org/nlp-2021/
2. 6-7 Oct - TransformX AI Conference, with 100+ speakers including Andrew Ng, Fei-fei Li, free and open to the public. Online. https://www.aicamp.ai/event/eventdetails/W2021100608
3. 6-9 Oct -The 8th IEEE International Conference on Data Science and Advanced Analytics, Porto, Portugal https://dsaa2021.dcc.fc.up.pt/
4. 12-14 Oct - Google Cloud Next '21, a global digital experience. Online. https://cloud.withgoogle.com/next
5. 12-14 Oct - Chief Data & Analytics Officers (CDAO). Online. https://cdao-fall.coriniumintelligence.com/virtual-home
6. 13-14 Oct - Big Data and AI Toronto. Online. https://www.bigdata-toronto.com/register
7. 15 – 17 Oct - DataScienceGO, UCLA Campus, Los Angeles, USA https://www.datasciencego.com/united-states
8. 19 Oct - Graph + AI Summit Fall 2021 - open conference for accelerating analytics and AI with Graph. New York, NY, USA and virtual https://info.tigergraph.com/graphai-fall
9. 20 – 21 Oct - RE.WORK Conversational AI for Enterprise Summit, Online. https://www.re-work.co/summits/conversational-ai-enterprise-summit
10. 21 Oct - DSS Mini Salon: The Future of Retail with Behavioral Data, Online. https://www.datascience.salon/snowplow-analytics-mini-virtual-salon
🍂
Сегодня я расскажу о Cloud-провайдере Русоникс, точнее об одном из ее продуктов, который может пригодится для DS-задач: виртуальный дата-центр – облачный сервис по модели «Инфраструктура как услуга» (IaaS). https://www.rusonyx.ru/iaas/
Как и у прочих облачных провайдеров, стоимость использования зависит от потребляемых ресурсов и первичных настроек, стартуя от 1000 рублей в месяц на самой простой конфигурации (ОС Ubuntu на 1 виртуальный ЦП с 1ГБ памяти, 1 ГБ HDD и 5-ю IP-адресами). Максимальная стоимость около 87 тысяч в месяц для ОС Windows Server 2016, 24 виртуальных ЦП, 128 ГБ памяти, хранилище почти 4 терабайта SSD и 32 IP-адреса. Каждый дополнительный диск увеличивает цену и неудивительно, что SSD стоит дороже HDD. Также можно выбрать дополнительные опции: резервное копирование, VPN/L2 на Яндекс.Cloud и балансировщик нагрузки. Защита от DDoS-атак предоставляется по умолчанию.
По сравнению с Яндекс.Cloud работает быстрее для многих задач. В отношении Data Science стоит выделить тесты по распознаванию речи, детекции лиц и машинному обучению. Например, в одноядерном режиме Русоникс лидирует в детекции лиц, обрабатывая 5.26 изображений в секунду против 4.72 в Яндекс.Cloud. Распознавание речи выполняется на том же уровне, что и в облаке Яндекса (20.7 слов в секунду), а вот в ML-тестах результат несколько хуже: Русоникс обрабатывает 17.5 изображений в секунду против 20.7 в Яндекс.Cloud.
Впрочем, в многоядерном режиме Русоникс намного опережает конкурента, в секунду обрабатывая 9.27 изображений против 5.53 и почти 40 слов вместо 28.4. В ML-кейсах облако Русоникс также лидирует: 33.8 изображений в секунду, тогда как Яндекс.Cloud справляется только с 23.5.
Сравнение цен с другими конкурентами (Amazon Web Services, Microsoft Azure, Google Cloud Platform) не делает Русоникс самым дешевым вариантом, однако стоимость месячного использования сравнима с Yandex.Cloud (2 281, 69 руб/мес. для виртуальной машины с ОС Linux, 2-х ядерным ЦП, 4 Гб RAM и SSD 30 GB). А если вам нужны сервера с ОС Windows, например, для 1C и других специфических приложений, условия Русоникс для той же конфигурации виртуальной машины будут самыми выгодными (3 180, 25 руб/мес).
Точная стоимость использования облака Русоникс зависит от потребляемых ресурсов: расходы считаются каждые сутки. Оптимизировать затраты можно, настроив ресурсопотребление, прямо в разделе «Отчеты». Ежемесячный баланс определяется ежедневными расходами.
Виртуальный сервер Русоникс поддерживает 2 технологии виртуализации: контейнеры и гипервизор. Контейнеры работают чуть быстрее и обеспечивают гибкое масштабирование ресурсов. Однако, здесь есть ограничения на виды операционных систем: возможно выбрать только из представленных вариантов. Во втором случае можно загружать собственные образы операционных систем, хотя изменение ресурсов виртуальной машины может потребовать ее перезапуска.
С точки зрения пользователя стоит отметить достаточно удобный веб-интерфейс со всеми нужными в работе функциями: от создания виртуального сервера до управления пользователями и дэшборда с отчетами. В частности, создать свой сервер можно всего за 4 шага, настроив все необходимые параметры: конфигурацию, образ, диски и сети.
В заключение отмечу бесплатную голосовую поддержку 24/7 выделенным менеджером, безлимитный трафик и фиксированные цены в рублях, что особенно важно для российских проектов.
Протестировать сервис Русоникс можно бесплатно по запросу, а при переходе от другого Cloud-провайдера первый внесенный платеж удвоится.
👍🏻5 советов DL-разработчику по TensorFlow и Keras
• используйте правильные типы данных, чтобы сэкономить 50-90% памяти. Например, float32 вместо float64 или unit8 вместо int64.
• кодируйте метки с помощью моделей однократного кодирования (one-hot encoding) и авторов, которые выводят значение для каждого класса. Эта практика в целом безопасна и правильна. Для больших наборов данных или множеством классов используйте разреженные метки, хранящиеся в форме индекса: например, седьмой класс представлен числом семь, а не вектором нулей с седьмой позицией, установленной в единицу. Для задачи на 1000 классов это на несколько порядков компактнее. Число uint16 против тысячи чисел с плавающей запятой. Большинство наборов данных по умолчанию упакованы с разреженными метками, и мы заставляем их использовать горячие. Также полезна разреженная кросс-энтропия - вариант категориальной кросс-энтропии, который сравнивает выходные данные вашей модели в одном горячем формате с достоверными метками в формате индекса. Это тоже сэкономит много памяти.
• Eager-режим поможет отследить первоисточник ошибок или сосредоточиться на более широкой картине, прежде чем сузить их до проблем графического режима, например, с использованием правильных типов данных. Это актуально для внутренних ошибок TensorFlow с несовместимыми типами данных. Eager Mode пригодится и для tf.data, т.к. этот API всегда отслеживает все в графическом режиме. Хотя эта функция еще помечена как экспериментальная, начиная с TensorFlow 2.6, ее можно активировать и использовать для отладки в API tf.data.
• Используйте Lambda Callback для отслеживания прогресса обучения, чтобы внедрить код, который будет запускаться в конце эпохи. В случае «медленных» показателей можно параметр эпохи, чтобы пропустить выполнение кода в нечетные эпохи или выполнять его с большим шагом, например, каждые десять эпох.
• Сделайте свою библиотеку, например, в файле Layers.py со всеми пользовательскими данными, чтобы использовать их в текущих и будущих проектах.
https://towardsdatascience.com/taking-keras-and-tensorflow-to-the-next-level-c73466e829d3
💰Слишком дорого: главное ограничение DL-моделей
Модели глубокого обучения чрезмерно параметризованы, то есть у них больше параметров, чем точек данных, доступных для обучения. В классическом ML это приводит к переобучению, когда модель не может адекватно работать с данными, на которых была обучена. Глубокое обучение позволяет избежать этого, случайным образом инициализируя параметры, а затем итеративно корректируя их наборы для лучшего соответствия данным, используя стохастический градиентный спуск. Это обеспечивает хорошее обобщение изученной модели и огромную гибкость. Обратной стороной этих достоинств является огромные вычислительные, и, соответственно, финансовые затраты.
Во-первых, как и для всех статистических моделей, чтобы повысить производительность в k раз, необходимо использовать как минимум k2 дополнительных точек данных для обучения. А чрезмерная параметризация увеличивает вычислительные затраты до k4. Это уже становится дорого: например, 10-кратное улучшение требует, по крайней мере, 10 000-кратного увеличения вычислений. А для достижения 5-процентного коэффициента ошибок потребуется 1019 миллиардов операций с плавающей запятой.
Ученые из MIT подсчитали экономические затраты и выбросы углерода, связанные с такой вычислительной нагрузкой: обучение DL-модели обойдется в 100 миллиардов долларов и приведет к таким же выбросам углерода, равнозначным с ежемесячным выбросом такого мегаполиса, как Нью-Йорк. А если нужна большая точность, например, в 1% ошибок, результаты будут намного хуже.
Когда дочка Google, компания DeepMind обучила свою DL-систему игре в го, это обошлось в 35 миллионов долларов. Когда исследователи DeepMind разрабатывали решение для видеоигры StarCraft II, они целенаправленно не пробовали несколько способов создания DL-архитектуры, потому что стоимость обучения была бы слишком высокой. Языковая DL-модель GPT-3 от OpenAI стоила более 4 миллионов долларов. При этом в развертывании системы допущена ошибка, которая не исправлена из-за слишком высокой стоимости обучения.
Пока расходы на DL превышают ожидаемую экономическую ценность, бизнес не стремится внедрять глубокое обучение. В частности, поэтому один из крупных европейских ритейлеров отказался от DL-системы прогнозирования продаж. Поэтому научное сообщество активно ищет способы снизить затраты на Deep Learning.
Одна из стратегий - использовать процессоры, специально разработанные для DL-вычислений: графические процессоры вместо ЦП и специализированные модули обработки тензорного кода, а также аналоговые, нейроморфные, оптические или квантовые аппаратные системы.
Другой подход - создание нейросетей, которые при реализации становятся меньше. Это снижает стоимость использования, но увеличивает стоимость обучения. Для большинства моделей эксплуатационные расходы – это самая большая часть общей суммы инвестиций. А для моделей, которые часто требуют переобучения, затраты на обучение, наоборот, доминируют. Впрочем, уменьшение масштабов недостаточно сокращает затраты. Поэтому разрабатывается метод мета-обучения, когда система обучается на различных данных, а затем может применяться во многих областях. Например, вместо того, чтобы создавать отдельные системы для распознавания собак, кошек и автомобилей на изображениях, одна система может быть обучена на всех из них и использоваться несколько раз.
Однако, ученые из MIT доказали, что мета-обучение тоже является сложным и дорогим. Даже небольшие различия между исходными и реальными данными, могут серьезно ухудшить производительность. Например, современные системы распознавания изображений сильно зависят от угла зрения на фотографируемый объект и его позы. Поэтому простая задача распознавания одних и тех же объектов в разных позах снижает точность системы почти вдвое. И даже с новыми наборами данных, специально созданными для имитации исходного обучающего датасета, производительность DL-модели падает более чем на 10%. Таким образом, если небольшие изменения в данных вызывают значительное падение производительности, итоговые расходы для комплексной системы мета-обучения могут оказаться огромными.
👻AI тоже ошибается, причем намеренно
На то, чтобы компьютеры опередили людей в шахматах, потребовалось около 50 лет. Теперь даже простой смартфон может обыграть гроссмейстера. Но одна AI-программа делает ошибки специально, чтобы оценить, как играют обычные люди. Вместо того, чтобы сразу обыграть противника на доске, Maia сосредотачивается на предсказании человеческих ходов, включая ошибки. Разработчики говорят, что это первый шаг к разработке ИИ, который лучше понимает человеческую склонность к ошибкам. В будущем это поможет лучше взаимодействовать с людьми, например, обучая или договариваясь с ними.
Например, в здравоохранении ML-система, которая предвидит ошибки, может быть использована для обучения врачей чтению медицинских изображений или помощи в обнаружении неточностей. Maia была разработана с использованием кода, адаптированного из Leela Zero, клона Alpha Zero с открытым исходным кодом, революционной ИИ-программы от DeepMind. Смоделированная нейросеть содержит виртуальные нейроны, которые можно настроить для ответа на ввод. В шахматах Alpha Zero получает информацию о позициях на доске и ходах, сгенерированных в тренировочных играх, и настраивает срабатывание нейронов в пользу выигрышных ходов. Этот подход известен как обучение с подкреплением. Alpha Zero может использовать тот же подход, чтобы научиться играть в другие настольные игры, такие как шашки или Го, с минимальными изменениями.
Разработчики изменили код Leela Zero, чтобы создать программу, которая обучалась, отдавая предпочтение точному предсказанию движений человека. Причем Maia фокусируется на поиске наиболее вероятного хода, который сделает человек. DL-система обучалась с использованием данных LiChess, популярного сервера онлайн-игры в шахматы. Также Maia может быть полезна для подготовки к турниру с определенным человеком, имитируя определенных игроков. Имея достаточное количество игр, на которых можно учиться, этот DL-тренажер можно научить предсказывать только ходы конкретного игрока, например, действующего чемпиона мира или вашего соперника по завтрашней игре. Аналогичный подход можно применить и к другим играм, от киберспорта до переговоров в бизнесе.
https://www.wired.com/story/new-artificial-intelligence-mistakes-purpose-chess/
👆🏻Повторение – мать ученья, даже для DL
Глубокие нейросети – это мощные машинами для распознавания визуальных образов, но логические задачи, которые легко решает человека, могут оказаться трудными для DL-моделей. После длительного размышления люди обладают способностью экстраполировать стратегии рассуждений, изученные на простых задачах, для решения более сложных примеров. Например, человек, который научился искать выход из небольших лабиринтов, может легко расширить эти методы поиска для решения более крупных задач. В ИИ такое поведение достигается за счет использования алгоритмов, которые масштабируются до произвольно сложных экземпляров проблемы за счет дополнительных вычислений. Но бюджет последовательных вычислений нейросетей с прямой связью ограничен их глубиной, а сети, обученные простым задачам, не могут расширить свои рассуждения для более сложных задач.
Поэтому исследователи из Университета Мэриленда предложили многократную отправку выходных данных части сети обратно через один и тот же блок перед дальнейшей передачей, чтобы DL-модель могла выполнять более сложную версию задачи, чем та, на которой она была обучен. Внутреннее представление входных данных в сети должно постепенно улучшаться каждый раз, когда они проходят через повторяющийся блок. Разработчики добавили повторение в ResNets перед обучением, продублировав первый остаточный блок и поделив его веса между всеми остаточными блоками. Обучив и протестировав отдельные сети на 3-х разных задачах (лабиринты, шахматы и обработка строк) исследователи доказали, что рекуррентные сети улучшали свою производительность по более сложным задачам с каждым проходом через цикл, превосходя неповторяющиеся сети на 2-10% точности.
https://read.deeplearning.ai/the-batch/more-thinking-solves-harder-problems/
https://arxiv.org/abs/2106.04537
🍏DL на Mac: как включить GPU для Tensorflow
До сих пор для пользователя Mac установка некоторого ПО является нетривиальной задачей. Например, когда Apple отказалась от поддержки Nvidia, запустить обучение нейросети на личном ноуте, стало проблемой. Конечно, можно было воспользоваться Google Colab, но иногда требовалась локальная среда. Поэтому в конце 2020 года DS-специалисты с радостью встретили чип M1, который использует нейродвижок - Apple Neural Engine, позволяющий Mac быстро выполнять задачи машинного обучения без проблем с перегревом.
Но если вы обладатель Mac’а без M1, интеграция с Tensorflow не слишком простая, включая загрузку пакетов и конфигурирование файла среды environment.yml, чтобы исключить конфликты зависимостей. Установку Tensorflow на Miniforge с помощью подключаемого модуля Metal можно свести к следующим шагам:
1. установите Xcode из App Store вместе с CLI-инструментами
2. установите из App Store компонент MiniForge – мини-установщик conda, который по умолчанию использует канал conda-forge и поддерживает архитектуру aarch64, включая Apple M1
3. настройте среду и установите базу Tensorflow и плагин tensorflow-metal с помощью conda
4. при желании установите Jupyter
5. чтобы убедиться, что все работает и установка TensorFlow действительно использует графический процессор, выполните команды в Python prompt
Поскольку не все библиотеки можно найти в MiniForge, поэтому можно развернуть отдельную среду Anaconda или Miniconda для таких случаев.
https://betterprogramming.pub/installing-tensorflow-on-apple-m1-with-new-metal-plugin-6d3cb9cb00ca
😜Что такое LLM и как работает AL: Deep Learning в NLP
Сегодня большие языковые модели (LLM, large language models) активно используются в задачах обработки естественного языка (NLP). LLM работают по двухэтапной схеме: предварительная подготовка и точная настройка. Первый этап использует большое количество немаркированных данных для создания предварительно обученных весов. Далее на этапе тонкой настройки эти веса загружаются и обучаются размеченным данным из последующих задач. LLM позволяет достичь хороших результатов даже с небольшим набором размеченных данных, сокращая время обучения. Но в реальности разметка даже небольшого датасета может стоить дорого. А когда речь идет о многоклассовой классификации, задача маркирования еще больше усложняется. Сократить количество таких аннотаций поможет активное обучение (Active Learning, AL).
Основная идея AL заключается в том, что алгоритм может достичь лучшей производительности с меньшим количеством размеченных образцов, что сокращает усилия по разметке и время обучения. AL полезно, когда разметка данных стоит дорого или их трудно собрать, тогда как немаркированные данные есть в большом количестве. Это характерно для большинства реальных приложений, например, речевые данные и пр.
Одним из самых популярных подходов к AL является выборка на основе пула (Pool-base sampling), который предполагает наличие небольшой начальный набор размеченных данных для обучения начального классификатора, и большой набор немаркированных данных. Первоначальный классификатор выбирает образцы из немаркированного набора, используя показатель информативности. Затем отобранные образцы маркируются автоматически или вручную и добавляются к размеченным данным. Новая модель обучается с использованием нового размеченного набора. Процесс повторяется до тех пор, пока не будет достигнута желаемая производительность.
Метрика информативности или стратегия запроса помогает выбрать образцы, которые стоит маркировать. Есть несколько стратегий запросов в зависимости от данных и задачи. Например, можно использовать выборку неопределенности (Uncertainty sampling) – эвристику с вероятностными классификаторами, чтобы выбрать наиболее неопределенные выборки. Высокая неопределенность указывает на границу принятия решения, уточнение которой приведет к обучению лучшего классификатора.
https://towardsdatascience.com/transformers-meet-active-learning-less-data-better-performance-4cf931517ff6
💸Финансовая DL-система обучения с подкреплением
FinRL
- это DL-платформа с открытым исходным кодом, которая помогает создать конвейер разработки торговых стратегий с использованием глубокого обучения с подкреплением (Reinforcement Learning, RL). В обучении с подкреплением есть три основных компонента: состояние, действие и вознаграждение. Агент RL наблюдает за пространством состояний, а затем придумывает действие, чтобы максимизировать общее вознаграждение в будущем. Агент учится, постоянно взаимодействуя с окружающей средой методом проб и ошибок, принимая последовательные решения в условиях неопределенности и достигая баланса между обучением и работой на реальных данных. https://github.com/AI4Finance-Foundation/FinRL
Дополнительно улучшить решение на основе FinRL можно, подключив следующие DL-библиотеки:
RLlib обеспечивает высокую масштабируемость и унифицированный API для множества приложений. RLlib изначально поддерживает TensorFlow, TensorFlow Eager и PyTorch, но большинство его внутренних компонентов не зависят от фреймворка. https://docs.ray.io/en/latest/rllib.html
легковесный проект ElegantRL - более стабильный, чем Stable Baselines 3 и с поддержкой до 8 графических процессоров. ElegantRL реализует DL-алгоритмы с подкреплением без использования моделей: DDPG, TD3, SAC, PPO, PPO (GAE) для непрерывных задач, а также DQN, DoubleDQN, D3QN для дискретных задач. https://github.com/AI4Finance-Foundation/ElegantRL
Смотрите подробный пример практического использования всех этих DLR-инструментов: https://medium.com/analytics-vidhya/a-hitchhikers-guide-to-finrl-a-deep-reinforcement-learning-framework-for-quantitative-finance-e624c508f763
☀️Глубокое обучение со скоростью света
Одной из главных проблем глубокого обучения является стоимость вычислительных процессов. Глубокие нейросети потребляют множество энергии для обучения, поэтому DS-специалисты ищут способы сократить эти затраты. Для этого компания Lightmatter предложила стратегию вычислений с использованием фотонов, а не электронов. В конце 2021 года Lightmatter планирует выпустить световую микросхему ускорителя нейросети, доработав ранее созданный прототип чипа Mars. Вообще сама идея световых, а не электронных вычислений не нова: в микросхемах Lightmatter основным компонентом является интерферометр Маха-Цендера, изобретенный в конце 19 века. Однако, упаковать их в миниатюрный чип было невозможно до недавнего времени. Благодаря развитию интегрированной фотоники инженеры Lightmatter смогли уменьшить интерферометры до такой степени, чтобы разместить их в миниатюрный чип и использовать для выполнения матричных умножений в вычислениях нейросетей.
Обработка аналоговых сигналов, переносимых светом, снижает затраты на электроэнергию и увеличивает скорость вычислений, но пока проигрывает цифровым системам в точности. Поэтому Lightmatter и другие стартапы, работающие в этом направлении (Fathom Computing, LightIntelligence, LightOn, Luminous и Optalysis) работают над этой проблемой. Например, Luminous планирует применить оптические вычисления для объяснения принципов работы человеческого мозга и применения их к искусственным нейросетям, ожидая получить работающую систему не позже 2025 года.
https://spectrum.ieee.org/deep-learning-at-the-speed-of-light
🤦🏼‍♀️Защита частной жизни vs успехи глубокого обучения: размывание лиц в ImageNet
Бум нейросетевых алгоритмов распознавания образов, возникший в 2012 году, обусловлен не только развитием аппаратного обеспечения, но накопленному множеству обучающих датасетам, самым известным из которых является ImageNet. Однако в 2021 году исследователи, управляющие этим набором данных, решили размыть входящие в него снимки лиц реальных людей.
Сегодня ImageNet содержит 1,5 миллиона промаркированных изображений, которые часто используются для измерения производительности ML-алгоритмов или для обучения моделей компьютерного зрения. Размытие лиц затронуло 243 198 изображений, при этом другие объекты на фотографиях не были затронуты. Размытие лиц было реализовано с помощью ИИ-сервиса Amazon Rekognition и сотрудников Mechanical Turk. Примечательно, что размытие лиц не повлияло на производительность алгоритмов распознавания объектов, обученных на ImageNet.
Это не первая попытка модификации знаменитой библиотеки изображений: в декабре 2019 года команда ImageNet удалила предвзятые и уничижительные термины, используемые для маркирования фотографий. Однако, размытие лиц не исключает возможности нарушения приватности: DL-алгоритмы могут научиться искать людей и по размытым фотографиям. А DL-система, обученный на наборе данных с размытыми лицами, может быть сбита с толку внешним видом людей в реальном мире. Поэтому при принятии таких решений, касающихся использования глобальных датасетов, следует учитывать все риски и возможные негативные последствия.
https://www.wired.com/story/researchers-blur-faces-launched-thousand-algorithms/
🌸Прогнозирование взаимосвязей между генами и фенотипами с DL
Одной из актуальных задач современной системной биологии является вывод фенотипических результатов на основе геномных особенностей. Исследователи применили эволюционное DL-моделирование для прогнозирования фенотипов для анализа ответов внутривидовых и межвидовых транскриптомов для нескольких сортов кукурузы. Возможность использовать геномные данные для прогнозирования, как организм отреагирует на изменения в питании, токсинах и воздействии патогенов даст пользу для улучшения сельскохозяйственных культур, прогнозирования болезней, эпидемиологии и других биомедицинских приложений. С учетом огромного количества данных, для этой задачи ученые использовали алгоритмы глубокого обучения, разработав эволюционный ML-конвейер для идентификации важных генов.
Подробную статью с графическими иллюстрациями, формулами и таблицами читайте здесь: https://www.nature.com/articles/s41467-021-25893-w
🤜🏻🏃Восстановление после падения: новая DL-система с подкреплением
Команда исследователей из Чжэцзянского и Эдинбургского университетов научили робота вставать после падения, случившегося из-за физической атаки. Они разработали архитектуру обучения с восемью экспертными алгоритмами, которые помогают роботу-собаке выработать сложное поведение. Для каждого алгоритма создана глубокая нейросеть, обучающая виртуальную модель робота бежать или вставать, если он упал на спину. Это типичная система обучения с подкреплением: когда робот пробовал что-то, приближающее его к цели, он получал цифровое вознаграждение.
После обучения экспертных алгоритмов исследователи объединили их в единую сеть, чтобы они могли действовать вместе. Например, когда робот падает и ему необходимо восстановиться, система обнаруживает это движение и запускает алгоритм балансировки. По мере того как виртуальный робот перемещается по моделируемой среде, DL-сеть изменяет влияние отдельных экспертных алгоритмов, в зависимости от того, какие навыки необходимы в конкретный момент.
После моделирования в виртуальной среде исследователи перенесли робота в реальный мир. Эксперименты показали успешность предложенного подхода: робот учился ходить, падая и самостоятельно поднимаясь, как это делают люди в младенческом возрасте.
https://www.wired.com/story/watch-a-robot-dog-learn-how-to-deftly-fend-off-a-human/
Я продолжаю серию митапов про Data Science в геосервисах, логистике, приложениях Smart City и т.д.
28 октября в 18:00 МСК состоится 3-я онлайн встреча Citymobil Data Meetup!

💣 Программа – пушка!

🚕 Ксения Мензорова Data Science в Surge Pricing Ситимобил
«Атака тестов на свичбэк»
Расскажет какими статистическими методами можно проверить switchback-тест. А ещё подскажет, как правильно выбрать подход, позволяющий бизнесу быстро принимать решения.

🚕 Екатерина Колпакова Руководитель DWH Ситимобил
«Сказ про то как мы в Ситимобил DWH строим»
Подробно расскажет о подходе к построению сложных систем, совмещения Data Vault и Data Lake, а также будет рассмотрено, как же в компании устроены потоки данных.

🛴 Николай Рядчиков Senior ML Specialist Самокат
«Прогнозирование времени доставки заказа»
Будут рассмотрены необходимость детальной структуры местности для точного прогноза заказа, временные факторы прогноза, очередность заказа в порядке выполнения курьером как важнейший фактор прогноза, методология проведения экспериментов для проверки качества прогноза.

После доклада спикеры ответят на вопросы слушателей. Регистрация для бесплатного участия в первом комментарии)
https://citymobil.timepad.ru/event/1813232/
🕸Глубокое обучение для кибербезопасности: кейс Adobe
Команда Security Intelligence в Adobe применяет методы DL, чтобы лучше обнаруживать обфускацию команд, повышая общую безопасность. Обфускация команд - это популярный метод кибербезопасности, который намеренно затрудняет чтение части стандартного кода, продолжая выполнять его. Традиционные методы обнаружения вредоносных программ обычно основаны на правилах и не быстро адаптируются к новым типам вредоносных программ и обфускации. Обнаружить их поможет глубокое обучение, которое создает динамические ML-модели, способные адаптироваться к новым типам информации.
Есть несколько способов обнаружить обфускацию. Например, методы статистики, применяемой к соотношениям известных/неизвестных слов (токенов) и простым языковым моделям, основанным на n-граммах. Но при достаточном количестве данных глубокое обучение превосходит традиционные методы обработки естественного языка в классических основных задачах. Поэтому глубокое обучение может предоставить надежное решение для обнаружения запутанных команд, обфускация которых может принимать множество различных форм. Deep Learning позволяет создавать более динамичные модели, которые лучше работают с ранее невидимыми данными, чем традиционные методы ML.
Команда разработчиков Adobe представляет собой глубокую сверточную нейросеть (CNN) на уровне символов. Тестирование этой DL-модели на несбалансированном датасете показало отличные результаты, близкие к 100% успешности.
Исходный код и подробное объяснение доступны здесь: https://pypi.org/project/obfuscation-detection/