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

Вот, кстати, наша первая подборка, посвященная анализу защищенности мобильных и веб-приложений, реверсу зловредов, threat intelligence и расследованию сложных инцидентов. Читайте, сохраняйте в закладки, если вдруг пропустили, и будьте на шаг впереди хакеров!

В этом посте — три десятка полезных ресурсов по машинному обучению от Александры Мурзиной, Вадима Столярова и Игоря Пестрецова. По их словам, они подойдут и совсем новичкам, которые хотят развиваться в этом направлении, и тем, кто делает первые шаги и еще не успел освоить все тонкости, и опытным исследователям, которым важно следить за новостями из мира ML и data science и постоянно совершенствовать свои навыки.

Зачем машинное обучение нужно в кибербезопасности?

Если вы этого еще не знали — рассказываем.

В информационной безопасности постоянно циркулирует много данных: трафик, события, киберинциденты и прочее. С развитием сетевых технологий, например того же интернета, стало казаться, что алгоритмы, основанные на статистике и автоматизированном анализе, существовали всегда, потому что вручную анализировать такие массивы данных попросту невозможно. А чтобы обеспечивать безопасность, нужно уметь это делать быстро.

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

Разработчики пытались создавать средства защиты с ИИ либо делать эту технологию основным достоинством продуктов ИБ. Так, появились new generation продукты — новый класс продуктов (NextGen Antivirus, NextGen Firewall и XDR), использующих в основном или даже полностью только техники машинного обучения для обнаружения атак. В индустрии до сих пор так и не пришли к мысли о том, чтобы применять в кибербезопасности исключительно техники машинного обучения. И на это есть причины: традиционные техники в кибербезопасности, к примеру сигнатурный анализ, работают достаточно быстро и всегда интерпретируемы для специалистов. Кроме того, их гораздо легче поддерживать и не надо долго обучать.

Однако есть задачи, которые нельзя решить традиционными для ИБ инструментами, и тогда применяют техники ИИ. Например, машинное обучение позволяет обнаруживать ранее неизвестные атаки, и его алгоритмы не так просто обмануть. ML-техники применяются в фильтрации спама и анализе трафике, при обнаружении фрода или вредоносного программного обеспечения, для защиты данных от утечек, несанкционированного доступа и неправомерного использования пользовательских привилегий. Подробнее об использовании машинного обучения против хакеров и других киберугроз читайте здесь

Блоги и сообщества:

  • Машинное обучения для людей — простые и понятные статьи для тех, кто хочет разобраться в машинном обучении без формул и теорем, зато с примерами реальных задач и их решениями.

  • КвазиНаучный блог Александра Дьяконова

  • Towards Data Science

  • Hugging Face — сообщество по ИИ; содержит приложения, датасеты, документы, решения, а также современные модели на основе эталонного открытого исходного кода в области машинного обучения, которые можно обучать и развертывать.

  • Papers with code — бесплатный и открытый ресурс с документацией, наборами данных, методами и оценочными таблицами по машинному обучению. Кто угодно может внести свой вклад.

  • MachineLearning.ru — профессиональный ресурс, посвященный машинному обучению, распознаванию образов и интеллектуальному анализу данных.

Что слушать полезного. Подкасты:

  • Вы находитесь здесь — подкаст о том, как человек учит машину всему, что умеет сам, а именно: постигать, творить, общаться и нервничать. Обсуждают, куда нас ведет развитие ИИ и как долго человечеству еще идти по дороге прогресса.

  • Machine Learning Podcast — подкаст от неспециалиста для неспециалистов. Авторы рассказывают о развитии индустрии, проводят ликбез, объясняют терминологию и профессиональные жаргонизмы. В общем, то что надо, для новичков.

Книги:

Вадим Столяров

Специалист группы машинного обучения

В первой книге из подборки автор рассказывает о фундаментальных понятиях — начиная с основ машинного обучения и заканчивая сложными многослойными нейронными сетями. У книги есть некий порог вхождения: изложение подкрепляется расчетами, поэтому ее читателям надо дружить с математикой.

Вторая книга в списке больше практическая. Ее автор — создатель библиотеки глубокого обучения Keras, выпущенной в 2015 году. Во время чтения можно сразу пробовать реализовывать различные архитектуры нейронных сетей.

Третий участник подборки — большая обзорная книга о современном состоянии глубокого обучения (deep learning) с красивыми иллюстрациями и примерами кода.

Практика, практика и еще раз практика! Курсы и лекции:

Игорь Пестрецов

Специалист группы машинного обучения

Тем, кто хочет быстро освоить фреймворк PyTorch, советую обратить внимание на курсы Deeplizard. Авторы начинают с самых основ, затрагивают важные аспекты фреймворка, без знания которых его дальнейшая эксплуатация может быть затруднительна. При этом звуковой и визуальный ряд курса отлично оформлен, что очень помогает быстрому усвоению нового материала.

Telegram-каналы и чаты:

  • OpenDataScience — международное сообщество, объединяющее более 50 тысяч специалистов, исследователей и инженеров, связанных с data science.

  • Machinelearning — самая актуальная информация из мира ML, нейронных сетей и DI.

  • Denis Sexy IT — блог Дениса Ширяева, где простым языком рассказывается о нейронных сетях, виртуальной реальности и технологиях.

  • Machine Learning in Art — канал, где публикуются коллекции коллабораций и освещаются значимые события из мира машинного обучения в изобразительном искусстве.

  • Small Data Science for Russian Adventures — авторский канал Александра Дьяконова о машинном обучении, глубоком обучении, анализе данных, науке о данных, математике и обо всем остальном, что интересно исследователю.

Александра Мурзина

Руководитель группы машинного обучения

Я рекомендую блог и телеграм-канал Александра Дьяконова: он рассматривает как темы для новичков, так и тонкости, интересные опытным специалистам. Вопросы и проблемы, которые обсуждает Александр, очень часто совпадают с тем, что мы встречаем на практике.  Лично я пользуюсь блогом как справочником, когда мне требуется аргументировать какую-то идею, подход или привести подкрепляющий пример. Из телеграм-канала регулярно узнаю новости из мира машинного обучения, которыми делится со своими подписчиками автор. 

Twitter. За кем следить:

Где искать единомышленников:

  • ODS.ai — международное сообщество, которое объединяет специалистов, исследователей и инженеров data science. Можно совместно решать актуальные задачи по машинному обучению в самых разных предметных областях, присоединиться к сообществу в Slack.  Там же публикуются анонсы всех значимых мероприятий сообщества: конференций, Data Fests, летних и зимних школ. 

Вселенная GitHub:

  • Machine learning system design pattern — репозиторий с шаблонами проектирования систем для обучения, обслуживания и использования систем машинного обучения в производственной среде.

  • RedML — проекты, посвященные практическим методам машинного обучения. Будут полезны для offensive-задач.

  • Foolbox — библиотека Python, позволяющая легко запускать состязательные атаки на моделях машинного обучения.

  • Deep Learning with Python notebooks — репозиторий по Jupyter notebooks, реализующих примеры кода из книги «Глубокое обучение с помощью Python» (Manning Publications). Она тоже есть в нашей подборке.

  • Machine Learning for Cyber Security — хорошие инструменты и ресурсы, связанные с использованием машинного обучения в кибербезопасности.

 Совет от нас: не копите полезные закладки? — сразу же начинайте прокачивать свои знания и скилы в машинном обучении.

Ищем коллег

Прямо сейчас мы в поисках талантливых и увлеченных middle и senior ML-инженеров в нашу команду по анализу данных и машинному обучению.

??‍?Что предстоит делать:

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

  • внедрять решения в продукты (включая проектирование частей ML-компонентов и написание для них кода), проходить код-ревью и взаимодействовать с разработчиками различных компонентов продуктов.

  • искать способы решения актуальных проблем ML-безопасности (как offence, так и defence); у нас не совсем исследовательская позиция, но очень важно иметь желание погружаться в проблематику машинного обучения и информационной безопасности;

  • реализовывать другие интересные задачи вместе с командами разработки.

Если хочешь всем этим заниматься, откликайся на вакансию. Кстати, когда есть время, мы выступаем на конференциях по ИБ и не только. Поэтому будем рады коллеге, который тоже участвует в подобных мероприятиях или митапах и делится собственными исследованиями с комьюнити. Больше вакансий — на нашем сайте.

Что еще почитать на тему машинного обучения в ИБ:


Не забудьте поделиться нашей подборкой с коллегами — и вообще со всеми, кому она может быть интересна! Скоро будет новый выпуск. А пока до встречи, друзья! ?