Все потоки
Поиск
Написать публикацию
Обновить
767.73

Машинное обучение *

Основа искусственного интеллекта

Сначала показывать
Порог рейтинга
Уровень сложности

SAGE: коррекция орфографии с помощью языковых моделей

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров11K

Коррекция правописания является одной из основополагающих задач в области Natural Language Processing (NLP). Достаточно прозаичная формулировка и кажущаяся жёсткой структура орфографической системы скрывают под собой нетривиальные внутриязыковые взаимодействия, являющиеся традиционно сложными для языковых моделей. В этом посте мы расскажем, как решали эту проблему внутри SberDevices, и как это привело к созданию проекта по исследованию задачи коррекции текста, а также решения, опережающего модели OpenAI.

Читать далее

Python, Go или… готовим сырой видеопоток с полсотни камер

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров14K

В проектах, связанных с машинным зрением и обучением приходится работать с сырым видеопотоком с камер. Чтобы принимать, предобрабатывать и передавать эти данные нейросетям необходим отдельный программный компонент, который мы условно называем «видеоридер». Это микросервис, который выполняет функцию декодирования RTSP-потоков с камер, отбирает определенные кадры и отправляет в базу данных для дальнейшего анализа. И все это в режиме реального времени.

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

Читать далее

Как мы используем NLP в банке

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4.7K
Изначально у нас была витрина, в которой лежали данные о платежах пользователей банка.

Это данные оплаты различных штрафов, пошлин, налогов и так далее. Такая информация потенциально может быть полезна для разных банковских сервисов. Например, если человек часто платит штрафы ГИБДД, значит, у него есть автомобиль, и это полезно знать для многих вещей вроде кредитного скоринга или понимания, что он может легко уехать в соседний регион и сделать «нетипичную» транзакцию в банкомате. Это позволяет, к примеру, эффективнее проводить фрод-мониторинг по картам и нетипичному месту проведения операции, что привлекательно и для банка, и для клиентов. Таких классов — сотни, то есть в идеале надо пытаться понять по документам платежа смысл действия.

image

Сначала мы просто искали слова вроде «авто» правилами, а потом перешли на NLP-подходы.

Natural Language Processing чаще всего используется в банках для автоматизации обработки заявок и анализа входящих документов, чтобы их маршрутизировать или классифицировать.

Конечно, это можно было бы делать и руками, но тогда это стало бы очень долго и дорого.
Читать дальше →

Нейронные сети для планирования движения беспилотных автомобилей

Время на прочтение16 мин
Количество просмотров19K

Планировщик движения беспилотного автомобиля — это алгоритм-помощник, который общается с другими участниками движения посредством манёвров. То есть он действует так, чтобы другим было понятно, куда поедет беспилотник, и сам по действиям других пытается определить, кто куда будет двигаться и почему.

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

Под катом — детальный разбор логики движения беспилотника, примеры свёрточных и трансформерных архитектур моделей для предсказания движения и много формул для расчёта вероятных траекторий других машин и пешеходов. А ещё я расскажу, в чём преимущества машинного обучения перед эвристиками и чем может помочь Reinforcement Learning.

Читать далее

Организация GPU-вычислений для машинного обучения в компании: проблемы и трудности

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров2.7K

По мере того как компании стремятся использовать возможности искусственного интеллекта, резко возрос спрос на специализированные вычислительные ресурсы, в частности, на графические процессоры (GPU). Графические процессоры раньше ассоциировались в основном с играми и графикой, но теперь стали основой многих операций машинного обучения. 

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

Читать далее

Детекция дефектов дорожного покрытия без размеченных данных: Хакатон, LiDAR, RANSAC, ICP и 44 бесcонных часов

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров6.3K

Здравствуйте, читатели Хабра! Решил активнее вкатываться в DS (хотя уже больше года в "теме" и даже нет ни одной публикации, ужас) и написать первую статью на Хабре.

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

Читать далее

Чат GPT-4V, который видит — что он умеет

Время на прочтение4 мин
Количество просмотров55K
Случилось вот что: вышел большой отчёт про возможности GPT-4V. Внезапно оказалось, что LLM могут обращаться с картинками так же, как с текстовыми промптами, и никакой особой разницы нет. Что та фигня, что эта фигня, главное — научиться распознавать, дальше те же логические связки. Это давно ожидалось, потому что люди в основном смотрят, и большая часть информации приходит через глаза. Но мало кто ждал, что это так круто получится вот уже сейчас и с LLM.

Отчёт вот. Теперь давайте смотреть, а не читать.


Хорошие мультимодальные способности, чётко считывает указатели, хорошее общее понимание ситуации

Если вы пьяны, он пересчитает пиво и сверит с чеком:



Собственно, важное:
  • Хорошо понимает что за сцена изображена и какие взаимосвязи между объектами на ней.
  • Читает текст, ориентируется на местности, опознаёт конкретных людей
  • Умеет в абстракции и обратно
  • Отлично ищет то, чего не должно быть (отклонения от базовой идеи) — дефекты на деталях, дефекты в людях (в особенности на рентгене) и так далее.
  • Плохо считает.

Давайте к деталям.
Читать дальше →

Feature engineering и кластерный анализ клиентов на PySpark

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров3K

Привет, Хабр!

Сегодня с вами Смолюк Анастасия и Путилова Елена, участницы профессионального сообщества NTA.

BigData плотно входит в нашу жизнь, датасеты растут и постоянно изменяются, что усложняет задачу кластеризации клиентов. Обычно для задач кластеризации используется библиотека Sklearn, но с большим объёмом данных её использовать не получиться. Spark позволяет реализовать параллельные вычисления на кластерах и имеет в составе своего фреймворка библиотеку машинного обучения MLlib. В случае больших данных, когда привычные инструменты отказываются работать с такими объёмами, PySpark приходит на выручку. При этом прежде чем запустить алгоритмы машинного обучения на датасете, необходимо подготовить данные и провести feature engineering, а это достаточно трудозатратная задача, но в то же время необходимая, так как от этого этапа во многом зависит качество конечного результата. Данный этап также необходимо делать на PySpark, опять‑таки из‑за объёма данных.

Узнать больше

Этические проблемы нейросетей, которые стоит учитывать, чтобы избежать проблем в онлайн-бизнесе

Время на прочтение6 мин
Количество просмотров3.5K

Разговоры о нейронных сетях не прекращаются. Постоянно выпускают новые программы и приложения на основе ИИ. Специалистам, работающим в области маркетинга, нелегко отслеживать тенденции, и ещё труднее среди большого количества приложений выбрать именно те, которые действительно стоят того, чтобы их использовали.

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

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

Читать далее

Нейросеть, генерирующая нейросети. Часть 2. RL агент создаёт свои первые нейросети

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров3.8K

Наконец пришло время объединить код из предыдущей части, в которой мы создавали нейросеть по списку слоёв, с RL алгоритмами! Сегодня мы поставим задачу для обучения с подкреплением, опишем, как будет производиться взаимодействие агента со средой и на практике реализуем код на языке python.

Читать далее

Как мы ускоряли получение результата на ML-проектах

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров2.6K

Привет! Меня зовут Олег Андриянов, в ИТ я работаю 6 лет. Начинал инженером в службе технической поддержки, а последние 3 года развиваю интеллектуальные механизмы в Directum Ario.

Сейчас я тимлид в команде ML-инженеров. Вместе с коллегами мы много работаем над качественным улучшением интеллектуальных механизмов продукта. Из реализованного: добились безошибочного распознавания ИНН в 94% случаев, а распознавания всех фактов в СНИЛС – в 82% случаев без единой опечатки.

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

Читать далее

Stable Diffusion: text-to-person

Уровень сложностиПростой
Время на прочтение35 мин
Количество просмотров38K

Многие из вас сталкивались со Stable Diffusion и знают, что с помощью этой нейросети можно генерировать разнообразные изображения. Однако не всем интересно создавать случайные картинки с кошкодевочками, пускай даже и красивыми, и всем прочим. Согласитесь, было бы гораздо интереснее, если бы можно было обучить нейросеть создавать изображения... нас самих? Или наших любимых актёров и музыкантов? Или наших почивших родственников? Конкретных людей, в общем, а не какие-то собирательные образы из того, что было заложено при обучении нейросети. И для достижения этой цели нам потребуется обучить некую модель. Этим мы и займёмся, пытаясь определить наиболее оптимальный воркфлоу и максимально его автоматизировать.

Читать далее

Трансформером по A*, или как уменьшить число итераций самого известного алгоритма поиска пути

Уровень сложностиСредний
Время на прочтение24 мин
Количество просмотров8.5K

Привет! Меня зовут Константин Яковлев, я научный работник и вот уже более 15 лет я занимаюсь методами планирования траектории. Часто эта задача сводится к поиску пути на графе, для чего обычно используется алгоритм эвристического поиска A*. Этот алгоритм был предложен в 60-х годах XX века и с тех пор используется повсеместно. Скорее всего, юнит вашей любимой RTS бежит по карте с помощью той или иной вариации A*. Точно так же, под капотом беспилотного авто вы, наверняка, найдёте A*, хотя там, конечно, не только он.

A* — это хороший алгоритм, но его вычислительная эффективность сильно зависит от эвристической функции, которую должен задать разработчик. Основная проблема стандартных эвристик заключается в том, что они не учитывают расположение препятствий на карте и ведут поиск буквально напролом, тратя на это ресурсы (итерации поиска). Почему бы нам не воспользоваться современными нейросетями для решения этой проблемы, а именно попросить нейросеть посмотреть на карту и подсказать поиску как лучше обходить препятствия, чтобы быстрее (за меньшее число итераций) найти нужный путь?

Этот текст посвящен как самому алгоритму A*, так и попыткам повысить его эффективность с помощью методов искусственного интеллекта. Заодно я расскажу о том, какие новшества в этом направлении придумали мы с коллегами: научная статья на эту тему опубликована в сборнике конференции AAAI 2023.

Читать далее

Ближайшие события

Футбольная аналитика: что поменялось за 2 года

Время на прочтение10 мин
Количество просмотров8.6K
Пару лет назад я рассказывал, как мы трекаем движения игроков на поле, что помогает очень круто оцифровать тренировки детей (в наших футбольных школах). Потом оказалось, что это нужно футбольным клубам по всему миру. Но там классическая засада — мы дошли до определённого предела точности и остановились. А дальше последовал мир дивных открытий, отчасти связанный с ночной лигой Лондона, которая играет, внезапно, вечером. Ну и потому что наш софт начали тестить в большом футболе, и им зашло.

Принцип такой:
  1. Берём кадр видео и Ёлу, она размечает все объекты (игроков, зрителей, мяч, ворота и так далее), затем мы отсеиваем птичек, зрителей и судей и оставляем только значимые объекты.
  2. Делаем так для каждого кадра видео.
  3. Затем привязываем координаты игроков к плоскости поля и получаем положение каждого объекта с точностью до 0,5 метра.
  4. Пытаемся связать игрока из первого кадра с максимально близким (или похожим) объектом во втором кадре и так далее, то есть оттрекать каждого конкретного человека, чтобы можно было видеть их движение по полю весь матч.
  5. Пытаемся понять, что с мячом: кто-то им владеет, он летит и где он вообще.

То есть сначала у нас есть группа разрозненных объектов, потом каждый из них приобретает траекторию, потом, когда есть траектории, на них появляются события вроде «получил мяч», «отдал пас» и так далее.

Чтобы вы понимали глубину проблемы, покажу вот этого архангела:



Вокруг него не святая аура, а футболист другой команды. И нужно как-то это понять.

Давайте сначала перечислю проблемы, а потом расскажу, что мы с этим делали (или не делали).
Читать дальше →

Компиляция моделей МО в С

Уровень сложностиСложный
Время на прочтение28 мин
Количество просмотров5.9K

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

Недавно у меня состоялся приятный разговор с моим другом Крисом. Он познакомил меня с основами машинного обучения, когда я разбирал написанный Андреем Карпаты micrograd.

Для тех, кто не знает, micrograd – это небольшая реализация нейронной сети, написанная на чистом Python без библиотек, в которой вычислительными единицами выступают не векторы и матрицы, а скалярные величины.
Читать дальше →

Как начать в DL: книги и курсы

Время на прочтение3 мин
Количество просмотров16K

What's up guys!

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

Читать далее

Попросил нейросеть нарисовать биологические объекты: посмотрите, какая дичь получилась

Время на прочтение3 мин
Количество просмотров66K

Привет, я Артем, копирайтер-маркетолог для проектов о здоровье. Постоянно пишу много текстов о медицине и биологии, и мне часто нужны картинки соответствующей тематики. Воровать нехорошо, на стоковых сайтах можно найти далеко не всё, а на дизайнера у клиентов не всегда предусмотрен бюджет. Поэтому недавно решил взять себе в помощники популярную нейросеть Midjourney. Провел эксперимент и попросил ее нарисовать некоторые медицинские, биологические объекты. Смотрите, что получилось (можно ли показывать слабонервным – решайте сами).

Читать далее

Галлюцинации нейросетей: что это такое, почему они возникают и что с ними делать

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров18K

Новости о достижениях нейронных сетей появляются практически каждый день — ChatGPT, Midjourney и другие являются суперпопулярными историями в Google Trends. Нейронные сети, похоже, стали всемогущими и могут заменить людей на рабочих местах.

Да, машины в состоянии решить множество задач, но их «мозги» недостаточно хороши. Например, роботы вообще не обладают творческими способностями. Кроме того, у ИИ часто случаются галлюцинации, а потому он не является надёжной заменой человеку. Особенно в тех областях, где речь идёт о жизни и здоровье.

Читать далее

Hadoop в любой непонятной ситуации. Как выжить кластеру в большой ML команде

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров6.2K

Привет, Habr !

Я работаю инженером по машинному обучению в Мегафоне. Занимаюсь аналитикой данных и являюсь частью команды разработки MLOps платформы. Задача нашей команды состоит в том, чтобы выстраивать и оптимизировать процессы разработки и продуктивизации моделей машинного обучения, предоставлять функционал для основных этапов (сбор данных, MQ/DQ, продуктивизация).

Сегодня поговорим о том, какие сложности могут возникать при работе с кластером Hadoop и какие есть методы для их решения.

Видеозапись по мотивам статьи можно посмотреть здесь.

Эта статья будет интересна аналитикам и инженерам, которые работают с BigData и регулярно сталкиваются с необходимостью продуктивизировать модели на Hadoop.

Читать далее

Как развернуть свой собственный ChatGPT, только лучше

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров92K

Бесплатная версия ChatGPT не включает в себя доступ к языковой модели GPT-4 -  самой современной и продвинутой модели от OpenAI. Хотя платная версия снимает эти ограничения за $20 в месяц, однако оплатить её с помощью карты Российского банка тоже не получится

К тому же интерфейс ChatGPT не менялся уже почти год, в то время как сторонние решения предоставляют набор полезных и удобных инструментов уже сейчас.

Читать далее

Вклад авторов