Pull to refresh
2
0
Send message

Все DETRы мира: претрейним, скидываем жирок и другие трюки. Часть 3

Level of difficultyHard
Reading time18 min
Views1.5K

Вы еще живы после прочтения прошлых двух частей, смогли их осилить и готовы двигаться дальше? Хорошо. Обещаю закрыть вопрос с ДЕТРами в этой чати.

Да-да, мы помним, DETR долго обучается?! А что если его предобучить, да ещё и в self-supervised манере?

Материал для ТГ-канала “Варим ML”.

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments0

Книга «Аппаратный хакинг: взлом реальных вещей»

Reading time16 min
Views7.7K
imageПривет, Хаброжители!

Встроенные системы трудно атаковать. Различных конструкций плат, процессоров и операционных систем слишком много, и это затрудняет их реверс-инжиниринг. Но теперь все станет проще — вас обучат два ведущих мировых эксперта по взлому аппаратного обеспечения. Пройдите ускоренный курс по архитектуре и безопасности встроенных устройств, узнайте об электрических сигналах, анализе образов прошивок и многом другом. Авторы объединяют теорию с практическими инструкциями, которые вы можете применить на реальном железе. Книга завершается описанием атак на такие устройства, как Sony PlayStation 3, Xbox 360 и лампы Philips Hue. В приложении приведен список всего оборудования, которое понадобится вам для домашней лаборатории, независимо от того, планируете ли вы модифицировать печатную плату или собирать и анализировать графики потребляемой мощности.

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

Мы не ждем, что у вас дома найдется лазерное оборудование, ускорители частиц или другие вещи, которые любителю не по карману. А если такое оборудование у вас есть, например в лаборатории вашего университета, то книга станет еще полезнее. Что касается целевых встроенных устройств, то мы предполагаем, что у вас есть физический доступ к ним и что вам интересно с ними поэкспериментировать. И самое главное: мы предполагаем, что вам нравится изучать новые методы, вы мыслите в рамках обратного проектирования и готовы к глубокому погружению в тему!
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments4

Есть проблемы гораздо сложнее, чем NP-Complete

Level of difficultyMedium
Reading time8 min
Views11K


Люди часто сравнивают P и NP в таком духе, что проблемы P простые, а NP — сложные. Но это чрезмерное упрощение. На самом деле проблемы могут быть намного, намного сложнее, чем NP.

В этом смысле можно вспомнить интеллектуально-фантастический триллер Travelling Salesman (Коммивояжёр, 2012) о четырёх математиках, нанятых правительством США для решения самой сложной проблемы в истории информатики — равенства классов сложности P и NP (P versus NP problem). И им это удалось. Чиновник министерства обороны США предлагает за их алгоритм вознаграждение $10 млн. Но сами математики слишком хорошо понимают, какие разрушительные последствия принесёт в мир их открытие. Один из лучших фильмов про математику в истории кинематографа…
Читать дальше →
Total votes 35: ↑31 and ↓4+42
Comments3

Детекция и классификация заданных предметов по изображениям с разделением модели и данных

Level of difficultyMedium
Reading time9 min
Views5.3K

Целью данной статьи является описание моей квалификационной работы при получении профессии Data Scientist. Поскольку профессиональная деятельность до этого не была прямо связана с направлением ML, тема итоговой работы получилась несколько академической.

Как известно, для успешной работы системы детекции и классификации (СДК) с применением технологии компьютерного зрения необходим большой объем данных, в том числе разметка объектов на изображении. Такая предварительная подготовка трудоемка и длительна. До сих пор работа по разметке объектов для создания обучающей выборки проводится в ручном режиме, хотя уже применяется и определенная автоматизация. Один из возможных вариантов такой автоматизации и был рассмотрен в работе.

Читать далее
Rating0
Comments0

10 игр для изучения JavaScript

Reading time3 min
Views35K

Мы рассматривали 10 удивительных игр для изучения CSS. А в этой статье мы сделаем то же самое для JavaScript. Изучать язык, играя в игры, очень весело, а для некоторых людей это отличный способ наглядного восприятия языка.

Без лишних слов, представляю десять фантастических игр, с помощью которых вы можете изучать JavaScript.

Читать далее
Total votes 14: ↑13 and ↓1+17
Comments0

Соцсети для ИИ: «Вход с людьми запрещён»

Level of difficultyEasy
Reading time5 min
Views4.9K

Вот мы и дожили до отдельной соцсети для искусственного интеллекта. Наш маркетолог уже интересуется, когда там можно будет таргет настраивать. Команда FryAI придумала и реализовала что-то вроде Твиттера для нейронок - Chirper.ai


Читать далее
Total votes 16: ↑15 and ↓1+18
Comments7

Создание GIF-анимации с помощью OpenCV

Reading time16 min
Views13K


Из этого туториала вы узнаете, как создавать анимированные GIF-файлы с помощью OpenCV, Python и ImageMagick. Затем объедините эти методы, чтобы создать генератор мемов с OpenCV!

Нам всем нужно время от времени посмеяться. И, возможно, лучший способ найти лулзы — это мемы. Некоторые из моих любимых:

  • Лягушка Кермит: «Но это не мое дело»
  • Сварливый кот
  • Эпик фейл
  • Хороший парень Грег

Но лично для меня ни один из этих мемов не сравнится с мемом ”Deal With It" («Смирись с этим» или «Разбирайся сам»), пример которого приведён в начале статьи.
Читать дальше →
Total votes 14: ↑12 and ↓2+10
Comments1

Как ускорить вывод ML-моделей в 4 раза, или Как может выглядеть экосистема МLOps в банке

Level of difficultyEasy
Reading time10 min
Views6.7K

Привет, я Андрей Качетов, Head of ML Operations в Альфа-Банке. Отвечаю за опромышливание всех ML-моделей в банке, строю новую платформу MLOps, а также формирую единый подход для работы с модельными данными (Feature Store).

В статье, без картинок с «бесконечностями» Ops’ов, расскажу, как может выглядеть полноценный конвейер MLOps, что умеет и немного о том, как мы пришли к максимальной автоматизации процесса вывода моделей в промышленную эксплуатацию.

Читать далее
Total votes 24: ↑24 and ↓0+24
Comments4

Все DETRы мира: denoising queries и positive anchors. Часть 2

Reading time12 min
Views1.9K

В прошлой части мы поговорили про эволюцию DETR. А это значит, что сегодня самая пора поговорить про другие варианты исполнения архитектуры и их нюансы.

Материал для ТГ-канала “Варим ML”

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments0

Решения CTF 2023 от «Доктор Веб». Часть 4

Reading time8 min
Views1.4K

Друзья, продолжаем публиковать решения нашего CTF-марафона! В нем было пять уровней сложности, в каждом по пять заданий — всего 25 заданий. Каждую неделю мы выкладываем по 5 решений — сегодня рассказываем о четвертом уровне сложности. Предыдущие уровни вы можете изучить здесь: часть 1, часть 2, часть 3.

Результаты марафона мы подвели в начале апреля, но задания все еще доступны — и вы можете попробовать решить их для себя.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments0

О книге «От джуна до сеньора: как стать востребованным разработчиком» Владимира Швеца

Level of difficultyEasy
Reading time3 min
Views8.5K

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

Читать далее
Total votes 8: ↑3 and ↓5-2
Comments8

Теорема Байеса для чайников

Level of difficultyEasy
Reading time5 min
Views73K

Теорема (формула) Байеса позволяет выяснить вероятность события при условии, что произошло связанное с ним другое событие.

Теорема позволяет рассчитать вероятность события, если причину и следствие поменять местами. Например, мы знаем распространенность симптома среди больных и здоровых. Значит, мы можем вычислить вероятность заболевания от наличия симптома.

Читать далее
Total votes 20: ↑19 and ↓1+22
Comments35

Что внутри черного ящика: понимаем работу ML-модели с помощью SHAP

Level of difficultyHard
Reading time9 min
Views14K

Значения Шепли применяются в экономике, а точнее — в теории кооперативных игр. Такие значения назначаются игрокам сообразно их вкладу в игру. В сфере машинного обучения идея использования значений Шепли нашла отражение во фреймворке SHAP (SHapley Additive exPlanations). Он представляет собой эффективный инструмент для интерпретации механизмов функционирования моделей.

Если вам интересны подробности о значениях Шепли — очень рекомендую обратиться к моей предыдущей статье, посвящённой математическим и интуитивным представлениям, раскрывающим смысл этих значений. И хотя в машинном обучении эти значения применяются по‑особенному, понимание базовых принципов, на которых они основаны, может оказаться полезным.

Использование значений Шепли во фреймворке SHAP напоминает их классическое применение тем, что они отражают индивидуальное влияние признаков на «игру» (другими словами — на модель машинного обучения). Но модели машинного обучения — это «игры», где нет «кооперирования» игроков, то есть — признаки не обязательно взаимодействуют друг с другом, как это происходило бы, будь они игроками в кооперативной игре. Вместо этого каждый из признаков вносит независимый вклад в результаты работы модели. Хотя тут может быть использована формула для нахождения значений Шепли, соответствующие вычисления могут оказаться слишком «тяжёлыми» и неточными. Это так из‑за большого количества «игроков» и из‑за того, что они могут объединяться в «союзы». Для того чтобы решить эту проблему, исследователи разработали альтернативные подходы. Среди них — метод Монте‑Карло и ядерные методы. В этом материале мы будем заниматься методом Монте‑Карло.

Читать далее
Total votes 11: ↑11 and ↓0+11
Comments0

Пишем Telegram бота для распознавания голосовых сообщений и их обработки с помощью AI

Level of difficultyMedium
Reading time7 min
Views8.4K

Всем привет. Меня зовут Игорь Филиппов и я веб-разработчик. Вы, вероятнее всего, знаете, как прочно ChatGPT закрепился в медийном пространстве. Ежедневно выходит сотни статей и видео на эту тему, предлагая разнообразные варианты применения.

Мне в голову пришла идея создать бота, который автоматически под каждым голосовым сообщением оставляет свой реплай с полной расшифровкой аудио. Но в процессе разработки я подумал, что можно дополнительно проинтегрировать бота с ChatGPT - для получения краткого пересказа самого сообщения. Тем более, к тому моменту, когда я делал бота, Open AI только выпустила доступ к API.

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

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments12

Анализируй так: умные расшифровщики, поисковики, дашборды и искусственный интеллект

Level of difficultyEasy
Reading time10 min
Views1.6K

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

Читать далее
Total votes 3: ↑2 and ↓1+2
Comments0

Как начать тестировать backend и не сойти с ума

Level of difficultyEasy
Reading time9 min
Views24K

Дисклеймер: B первую очередь материал будет интересен тем, кто уже значительное время занимается тестированием пользовательского интерфейса и не знает, как подойти к тестированию backend части приложения. Я не претендую на истину: всё, что сказано ниже, является моим субъективным мнением и пережитым опытом.

Введение

Рынок IT специалистов начал стремительно развиваться в последние пару лет. Требования ко всем специальностям, которые задействованы в разработке программного обеспечения, растут со скоростью развития применяемых технологий. Требования выросли и к специалистам по тестированию. Например, если ещё в 2019 году для того, чтобы устроится тестировщиком в международную IT компанию достаточно было иметь год опыта тестирования чего-нибудь, прочитать «Тестирование dot com» Савина, уметь писать тест-кейсы, знать такие слова как «GIT», «SQL» и «Redmine», то в 2021 году ситуация стала радикально меняться. Осознание того факта, что пятилетний опыт ручного тестирования frontend части различных приложений недостаточен для конкурирования на рынке, привёл меня к выгоранию и побудил к решительным действиям. Я осознал, чтобы не остаться на обочине всей IT индустрии необходимо соответствовать современным критериям хорошего специалиста по тестированию. А именно, попытаться понять, как тестировать серверную часть приложений.

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

Читать далее
Total votes 7: ↑3 and ↓4-1
Comments4

Что делает ChatGPT… и почему это работает?

Level of difficultyMedium
Reading time75 min
Views157K

То, что ChatGPT может автоматически генерировать что-то, что хотя бы на первый взгляд похоже на написанный человеком текст, удивительно и неожиданно. Но как он это делает? И почему это работает? Цель этой статьи - дать приблизительное описание того, что происходит внутри ChatGPT, а затем исследовать, почему он может так хорошо справляться с созданием более-менее осмысленного текста. С самого начала я должен сказать, что собираюсь сосредоточиться на общей картине происходящего, и хотя я упомяну некоторые инженерные детали, но не буду глубоко в них вникать. (Примеры в статье применимы как к другим современным "большим языковым моделям" (LLM), так и к ChatGPT).

Читать далее
Total votes 248: ↑248 and ↓0+248
Comments121

Ускоряем процесс разметки с помощью интерактивной сегментации

Level of difficultyMedium
Reading time14 min
Views6.5K

Всем привет! Сегодня поговорим про задачу интерактивной сегментации на основе кликов (click-based) и как она может ускорить процесс разметки данных для различных типов сегментации. Сегментационные модели применяются в распознавании событий и объектов в видео (Video Understanding), анализе медицинских снимков и в управлении беспилотных автомобилей, а также с  их помощью реализована замена фона в приложениях для видеозвонков, бьютификация и автоматическая ретушь фотографий. SberDevices тоже активно разрабатывают свои решения для семантической сегментации – недавно мы рассказывали про задачу замены фона и бьютификацию в нашей статье, в которой представили новый большой opensource датасет для Portrait Segmentation и Face Parsing вместе с набором предобученных моделей.

Читать далее
Total votes 11: ↑10 and ↓1+13
Comments0

Кто такой погонщик нейросетей и как им стать: большая подборка ресурсов по ML для начинающих

Level of difficultyMedium
Reading time7 min
Views10K

Может ли искусственный интеллект прогнать нас от компьютеров и отправить работать на завод или собирать ягоды?

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

300+ часов полезной инфы под катом
Total votes 17: ↑15 and ↓2+22
Comments10

10 итераторов, о которых вы могли не знать

Reading time13 min
Views35K

Одним из главных достоинств Python является выразительность кода. Не последнюю роль в этом играет возможность удобной работы с коллекциями и последовательностями различного вида: перебор элементов списка по одному, чтение файла по строкам, обработка всех ключей и значений в словаре. Эти и многие другие подобные задачи в Python помогает решить так называемый протокол итераторов (Iterator protocol). Именно этот протокол обеспечивает работу цикла for, устанавливает по каким объектам можно итерироваться, а по каким нет. Как мы увидим далее, сам язык и стандартная библиотека очень широко используют возможности протокола. В этой статье попробуем отыскать не самые известные, но от этого не менее интересные примеры итераторов и итерируемых объектов, которые предлагает Python.

Читать далее
Total votes 43: ↑40 and ↓3+43
Comments18

Information

Rating
5,564-th
Registered
Activity

Specialization

Backend Developer, Fullstack Developer
Junior
Linux
OOP
Python
SQL
Git