Определение токсичности комментариев с помощью глубокого обучения

В этой статье рассмотрим, как можно использовать глубокое обучение для оценки различных негативных окрасок текста, таких как угрозы, непристойности, оскорбления.
Основа искусственного интеллекта
В этой статье рассмотрим, как можно использовать глубокое обучение для оценки различных негативных окрасок текста, таких как угрозы, непристойности, оскорбления.
Несколько месяцев я пытался разбираться в ML и когда мне под руку попался легенький хакатон для школьников, связанный с CV, я решил, что это мой шанс!
Изучая задачу, я понял, что мне нужно обнаруживать чаек по фотографиям. Для решения задачи я решил использовать yolov8s, потому что он мне показался оптимальнейшим из линейки yolov8 для моего случая. Также, мне как-то рассказывали про sahi (Slicing Aided Hyper Inference), и я решил, что это мой шанс попробовать этот инструмент в качестве улучшения конечного результата.
Итак, у меня был датасет, включающий фотографии, уже разбитые на train, validation, test, запакованные в zip архив. Первым делом, я клонирую репозиторий для yolov8, устанавливаю и импортирую необходимые на первых парах библиотеки и распаковываю то, что нужно распаковать.
Всем привет! В прошлой статье мы рассказывали, как можно ускорить процесс разметки данных с помощью интерактивной сегментации, и уже упоминали state-of-the-art-решение в этой области — модель Segment Anything. Сегодня остановимся на том, как можно улучшить качество и производительность SAM: научить модель генерировать более детализированные и гранулярные маски, а также ускорить её работу в 50 раз и адаптировать для мобильных устройств. А в следующей части на примерах покажем, что способности SAM не ограничиваются одной только сегментацией: модель может применяться для решения самых разных задач компьютерного зрения.
Что такое Segment Anything (SAM)?
SAM (Segment Anything Model) — это сегментационная модель, которая была выпущена Meta AI* весной 2023 года и быстро стала одной из самых популярных AI-моделей. SAM называют первой фундаментальной моделью в компьютерном зрении и сравнивают с ChatGPT в NLP из-за рекордно большого количества разнообразных данных, которые видела модель (SAM обучалась на датасете SA-1B, содержащем более одного миллиарда масок); а также из-за её способности к zero-shot transfer, то есть способности легко обобщаться для решения смежных задач.
В последнее время я часто писал о вычислительной сложности, алгоритмах и моделях (например 1, 2, 3). Вычислительные модели лежат в основе вычислительной науки и не только её, и всё же немногие обладают чётким представлением о том, что такое вычислительная модель на самом деле. Это программное обеспечение? Или алгоритм? Как это связано с математическими моделями? Какие языки или обозначения подходят для описания вычислительной модели? Сделает ли ИИ вычислительные модели устаревшими? В процессе обсуждения с некоторыми товарищами сформулировалось достаточно подробное и, надеюсь, понятное описание, которое я и хотел бы представить в этой статье.
Любое научное вычисление предполагает применение одной или нескольких вычислительных моделей. Некоторые из этих моделей кажутся настолько очевидными, что иной раз трудно признать их в таком качестве. С другой стороны, некоторые модели настолько сложны, что кажутся самой сутью компьютерных наук и квинтэссенцией программного обеспечения. Существуют также разделы вычислительной науки, в частности, биоинформатика, которые делают упор на методы решения проблем, а не на модели, представляющие лежащие в их основе явления, и, как следствие, почти не затрагивают сами модели. Но модели в любом случае существуют в виде предположений об изучаемых системах, которые неявно заложены в алгоритмах решения задач.
Если свести процесс научного исследования к его основам, то он предполагает создание и итеративное совершенствование моделей, описывающих эмпирические наблюдения. Таким образом, модели и наблюдения являются основными понятиями науки. Две давние специализации многих дисциплин — это теоретик, придумывающий и совершенствующий модели, и практик, проектирующий конкретные установки для проведения наблюдений.
Мы побеседовали с руководителем направления системного программирования в «Криптоните» Александром Авраменко о карьерном пути Rust-разработчика, особенностях языка Rust и его применении к моделям машинного обучения в высоконагруженных системах.
В этой статье будет описан подход (идея), как при помощи детектирующей нейросети решать более сложные задачи, чем детекция. Идея, лежащая в основе: давайте решать не задачу детекции объекта, а задачу детекции ситуации. Причем, вместо того, чтобы конструировать новую нейросетевую архитектуру, мы будем конструировать входящий кадр. А решать саму задачу будем при помощи стандартных предобученных сетей.
В качестве детектирующей нейросети использована архитектура YOLO, и все гипотезы этого подхода проверены для неё. Вероятно, эти же подходы будут работать и на других архитектурах. Действительно ли они будут работать, надо проверять отдельно.
В заметке я покажу как «переформулировать» задачу детекции так, чтобы решать другие, более сложные задачи. А именно, при помощи YOLO можно не только решать задачу детекции, но и задачу трекинга. И даже больше.
Не буду вдаваться в подробности о том, откуда берутся миллионы временных серий и почему они умудряются изменяться еженедельно. Просто возникла задача еженедельно сделать прогноз на 2-8 недель по паре миллионов временных серий. Причем не просто прогноз, а с кроссвалидацией и выбором наиболее оптимальной модели (ARIMA, нейронная сеть, и т.п.).
Имеется свыше терабайта исходных данных и достаточно сложные алгоритмы трансформации и чистки данных. Чтобы не гонять большие массивы данных по сети решено было реализовать прототип на одном сервере.
Обретите цифрового двойника
Цель этой статьи - показать, как эффективно и с минимальными затратами настроить LLM на пользовательском датасет. Мы рассмотрим использование модели Falcon-7B с адаптерами LoRa, с использованием библиотеки Lit-GPT.
Большинство инженеров, работающих с машинным обучением, уже знакомы с форматом данных ONNX. Его часто используют для хранения обученных моделей и конвертации их мeжду фреймворками.
В этой статье расскажу об ONNX и о том, почему этот формат данных широко используется. Посмотрим на особенности формата и конвертации в него и на экосистему полезных инструментов.
В прошлых частях статьи я описывала, как мы экспериментировали с рекомендательными моделями на датасете онлайн-кинотеатра Kion. Считали метрики, проводили визуальный анализ, диагностировали popularity bias и другие проблемы алгоритмов, строили двухэтапные модели.
Кроме онлайн приложения мы построили небольшую, но цельную платформу для экспериментов с рекомендательными моделями. Сегодня я подробно на ней остановлюсь:
- Расскажу о workflow экспериментов и пайплайнах обработки данных.
- О том, какие инструменты мы использовали для реализации платформы.
- Нарисую полную инфраструктуру проекта.
А также опишу, как мы построили эксперименты с кросс-валидацией скользящим окном для моделей, которые используют фичи, зависящие от времени. В том числе как мы сделали валидацию для двухэтапной модели с градиентным бустингом.
Будет много MLOps для RecSys.
Привет, Хабр! Меня зовут Иван Сивков, я наставник на курсе «Специалист по Data Science» в Яндекс Практикуме. В этой статье покажу, как построить пайплайн в библиотеке scikit-learn на базе встроенных инструментов и сократить количество кода при преобразовании данных. Эта статья рассчитана на новичков, которые только начинают изучать Data Science, но уже знают основные понятия.
Продолжаем разбирать подходы призеров Kaggle-соревнований от американской национальной футбольной лиги (NFL). Участники этого челленджа детектировали столкновения игроков в американском футболе, анализируя данные с видеокамер и датчиков, прикрепленных к форме футболистов. В продолжении первой части статьи расскажу про самые успешные подходы к этой задаче.
В прошлом месяце Stability AI выпустила Stable Diffusion XL 1.0 (SDXL) и дала открытый доступ к его исходному коду всем желающим. Как добиться более точных и детальных генераций, скормив сетке плохие примеры?
Нейросети - восхитительно мощный, полезный, эффективный инструмент. Но все ли любят их так, как любим их мы, разработчики? Пытаясь продвигать идеалы нейросетевой разработки при создании небольшого ретро-шутера, мы неожиданно наткнулись на шквал ненависти в наш адрес со стороны простых игроков. Как мы используем нейросети в геймдеве? Справедливы ли обвинения в воровстве? И за что ненавидят «художников новой волны»?
Не так давно мы рассказывали про то, как мы обучили модель-полиглот mGPT, которая говорит на 61 языке. Этим летом в открытый доступ мы выложили большую мультиязычную модель (претрейн) mGPT-13B под открытой лицензией MIT.
Сегодня мы хотим поделиться с вами семейством моделей-экспертов на основе оригинальной mGPT для языков СНГ и малых народов России. Оригинальная модель уже владела этими языками, но нам хотелось сделать максимально качественные моноязычные модели, использовав доступные открытые сеты.
Из общего набора в 61 язык мы дообучили 23 модели на дополнительных данных под каждый язык стран СНГ и малых народов России. И в этой статье мы расскажем про то, как мы это сделали и насколько лучше каждый конкретный файнтьюн знает свой язык. А сами модели можете найти на Hugging Face.
Привет, Хабр!
Сегодня с Вами Илья Абрамчук и Дарья Ульянова, участники профессионального сообщества NTA.
Нередко на практике, когда работаешь с алгоритмами машинного обучения, а в особенности с нейронными сетями, сталкиваешься с проблемой нехватки данных для нормального обучения модели или хотя бы получения более-менее стабильного результата. Вот и мы оказались в подобной ситуации и перед нами возникла задача генерации синтетического датасета, состоящего из изображений, похожих на те, что имеются в распоряжении.
Чем бы вы ни занимались, звуковое сопровождение играет довольно важную роль. Для учёбы или вдумчивой работы люди часто выбирают одноимённые плейлисты, состоящие по большей части из спокойной музыки, эмбиента или классики. Для бега тоже есть своя музыка, которая обычно куда динамичнее — многим нравится подбирать её в зависимости от скорости и интенсивности бега.
Но большинство треков, как правило, содержат слова, которые могут отвлекать от таких занятий, где хочется подумать или сконцентрироваться. И поэтому приходится тратить много времени на поиски подходящей подборки, но и там может попасться отвлекающее. Поэтому здорово, когда есть возможность подстроить звуковое окружение под себя.
В этом посте я расскажу о том, как задумывалась и создавалась Нейромузыка: как мы обучили модель писать музыкальные лупы, сочетать их между собой и подстраивать музыкальный поток под каждого пользователя.