Pull to refresh
137.95
JUG Ru Group
Конференции для Senior-разработчиков

Неочевидное ML: примеры от SberDevices

Level of difficultyEasy
Reading time5 min
Views2.3K
Реклама. ПАО Сбербанк. ИНН 7707083893. Erid: 2RanykTAQFr
Реклама. ПАО Сбербанк. ИНН 7707083893. Erid: 2RanykTAQFr

Казалось бы, нам всем так прожужжали уши аббревиатурой «ИИ», что с ней всё уже очевидно.

Но весь хайп последних лет крутится вокруг нескольких сценариев: «нарисуй картинку», «напиши код», «ответь на вопрос».

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

Скоро мы проведём конференцию I'ML, а недавно помогали SberDevices провести GIGA R&D DAY. Я посмотрел записи докладов GIGA R&D DAY — и там как раз говорится о подобных гранях AI. По-моему, это интересно, поэтому захотелось сделать так: 

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

  • Буду рад, если в комментариях вы добавите, какие направления развития ИИ вам лично кажутся перспективными и небанальными.


3D-моделируем

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

Например, мой хороший знакомый @denull увлекается фотограмметрией как хобби. Если он гуляет и видит интересный объект, то делает очень много снимков с разных ракурсов, а потом специальным софтом создаёт на их основе 3D-модель. Я однажды тоже послужил для него объектом:

Тут текстуры не загрузились, но вообще-то они есть :) 
Тут текстуры не загрузились, но вообще-то они есть :) 

Это было интересно попробовать. Однако от меня требовалось несколько минут сидеть как можно неподвижнее, пока он обходил меня со всех сторон. Так что фотограмметрией затруднительно получить 3D-модель «баскетболист в прыжке». И делать её вручную с выдуманным баскетболистом — занятие непростое и небыстрое. 

Куда проще было бы написать промпт, правда? Почему тогда все тогда их ещё не пишут? Тут возникает много вопросов и сложностей. Например, датасетов фотографий и текстов уже много, а здесь с датасетами что? И как вообще должны работать генеративные модели для 3D-контента?

Оказывается, здесь есть разные варианты, и в SberDevices решили делать всё в две стадии: сначала 2D-модель создаёт консистентные multi-view картинки, а затем на их основе реконструируется 3D-представление. Подробнее об этом — в докладе: 

Также компания уже писала об этом на Хабре.


Исправляем правописание

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

Вот про код сложился такой консенсус: машины пока не готовы программировать сами себя, однако живым программистам могут быть полезны «ИИ-помощники». И думаю, что с текстами стоит ставить вопрос так же. Не «могут ли машины заменить живого автора», а «чем могут быть машины полезны живому автору».

И здесь одно из полезных применений — проверка грамотности. Спеллчекеры существуют давно, но они просто сравнивают слова со словарём. А насколько дальше теперь можно зайти с помощью нейросетей?

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

Ну ладно, последний вопрос я добавил сам, но вот с предыдущими в SberDevices действительно пришлось столкнуться при работе над проектом SAGE. Вот их доклад об этом:

Ещё по этой теме есть хабрапост. А на нашей конференции IML тоже будет доклад об этом — и там смогут раскрыть тему ещё полнее.


Отвечаем на фактологические запросы

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

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

А что такое чат-бот для его разработчиков? Конечно, труднообъяснимой статистики хватает, разработчики сами не могут полностью предсказать его поведение. Однако это не значит, что в их распоряжении есть только один загадочный чёрный ящик и всё.

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

Что делать с этим всем? Тут придумали RAG (Retrieval-Augmented Generation): а давайте мы будем дополнять информацией из поисковой выдачи. Там и про фактчекинг мы хоть что-то понимаем, и информация может быть свежей, возникшей уже после обучения модели.

Но как именно дополнять этой информацией, не переобучая модель каждый день? Можно подсовывать её прямо в запрос. Если пользователь спрашивает что-то «википедийное», можно сначала взять соответствующие результаты поиска, а затем передать нейросети всё сразу: мол, вот что спросил пользователь, а вот что об этом знает интернет, сформируй нормальный ответ.

Конечно, источникам в интернете тоже нельзя полностью доверять. Но в случае с ними можно хотя бы смотреть на конкретные. Какой выглядит надёжным ресурсом, а какой свалкой анонимных комментариев? Где опубликованные данные подкреплены чем-то, а где просто приведены по принципу «trust me bro»? С таким иметь дело куда проще, чем с «галлюцинациями» нейросетей.

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

Поэтому в SberDevices не только реализовали подход RAG, но и добавили указание источников. И рассказали о своём подходе в докладе: 


Заключение

В докладах GIGA R&D DAY рассматривают и другие темы, от распознавания жестового языка до выбора самой интересной сцены в фильме.

Но этот список тем легко можете сами увидеть, поэтому здесь вместо него задам вопрос: а можете ли вы в комментариях добавить примеры использования ИИ, которые вам кажутся значимыми, но от мейнстримового обсуждения ускользают? Думаю, многие люди знают что-то интересное по своему профилю — можем совместными усилиями Хабра составить подборку такого.

А напоследок добавлю, что в мае на I’ML будет сразу несколько докладов от SberDevices/Сбера:

Tags:
Hubs:
+8
Comments2

Articles

Information

Website
jugru.org
Registered
Founded
Employees
51–100 employees
Location
Россия
Representative
Алексей Федоров