«Сбербанк» проводит соревнование в области ИИ с главным призом в 1 млн рублей

Возврат к списку

14.09.2017     
Крупнейший коммерческий банк запустил конкурс проектов в области машинного обучения и искусственного интеллекта Sberbank Data Science Journey, общий призовой фонд которого составит 2 млн рублей.

Онлайн-конкурс пройдет с 14 сентября по 30 октября и будет включать две задачи. Сначала участникам предстоит построить алгоритм для определения релевантности поставленных вопросов к параграфу текста, при этом необходимо не только понимать, относится ли вопрос к параграфу, но и определять насколько корректно он поставлен.

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

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

Тот, кто лучше всех решит первую задачу, получит приз в размере 200 тыс. рублей, обладатели второго и третьего места – 100 и 50 тыс рублей. Приз за лучшее решение второй задачи – 1 млн рублей, тем, кто займет второе и третье место вручат – 200 и 100 тыс. рублей соответственно. Также жюри определит участника, создавшего чат-бот с наиболее качественными ответами в режиме реального времени. За это полагается 250 тыс. рублей.

В качестве данных для создания системы участникам предоставят ряд вопросов и ответов на русском языке, составленных на основе 2,5 тыс. статей на общие и финансовые темы. Всего было собрано около 100 тыс. пар вопросов и ответов. Также база данных включает информацию о банке и его продуктах, хотя они и закрыты для участников, именно на них и будет тестироваться качество разработанных систем. Всего по итогам соревнования будет выбрано десять финалистов. Имена победителей будут объявлены 11 ноября на конференции Sberbank Data Science Day, посвященной машинному обучению и искусственному интеллекту.

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



Комментарии
1. в п (panvartan) 14.09.17 20:00 Сейчас в теме
Практика решения серьезных задач за еду плавно перекочевала из 1с на различные хакатоны и конкурсы.
shard; alxarz; papami; wonderboy; +4 Ответить
2. nick perel (nickperel) 2 14.09.17 23:32 Сейчас в теме
"Должен понимать человеческий язык". Язык зверей видно уже заборот сбербанком ранее. 1.5 месяца и 2 лимона.
Завезили бы им уже галоперидол на все деньги. Для всей комиссии.
3. Сергей Смирнов (protexprotex) 140 15.09.17 07:58 Сейчас в теме
В общем, самим лень или не могут написать такого бота. Отдают на аутсортинг :-) - дешевле банку два лимона отдать чем от своих программеров мучить прогу :-)
4. борян петров (TODD22) 16 15.09.17 08:00 Сейчас в теме
На хабре похожий конкурс от сбера обсуждался. Там приводили выдержку из правил участия. Все исходные коды и права на разработки обязаны передать банку.
5. PerlAmutor IC (PerlAmutor) 7 15.09.17 08:35 Сейчас в теме
(4) Когда начал читать новость сразу об этом подумал. Похоже на развод лохов или аукцион на сайте госзакупок. У меня знакомые в сбере работали лет 7, сам часто имел дело с продуктами сбера и тех.поддержкой. Доверия, а тем более уважения, к ним у меня нет никакого. Репутация у банка ниже плинтуса. Единственный его плюс - 50% и 1 акция принадлежат государству.
6. Сергей Смирнов (protexprotex) 140 15.09.17 08:42 Сейчас в теме
Была бы сумма - лимонов 5, и времени полгода - можно было бы на рекуррентной нейронной сети построить бота. Ну и обучающую выборку надо поболее - хотя - бы миллиард записей типа вопрос - ответ. На 100000 - слишком мала выборка. Ну или аугментацию выборки надо делать - но с этим сложнее - аугментацию графики намного легче делать чем предложения. Можно было бы взяться.
7. Антон Антонов (monkbest) 28 15.09.17 09:08 Сейчас в теме
Нормальная тема, т.к. лям в руки это неплохой годовой доход многих специалистов. Нельзя на это смотреть, как на лям за проект по разработке чего-либо. В ляме за проект спецу дойдет на руки 100к в лучшем случае, остальное налоги, прибыль владельца, аренда офиса, зарплата менеджеров....

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

Правда с этого приза придется заплатить НДФЛ:)
8. борян петров (TODD22) 16 15.09.17 09:21 Сейчас в теме
(7)
Нормальная тема, т.к. лям в руки это неплохой годовой доход многих специалистов.

Это если задачу сделает один специалист. Но там скорее всего рассчитывают на команду. При чём команду людей имеющих опыт в решении подобных задача, а это довольно дорогие специалисты. И тогда миллион не выглядит уже таким хорошим вознаграждением.
shard; KSy; Muzik92; +3 Ответить
9. Evgeniy T. (hashpnd) 16 15.09.17 09:53 Сейчас в теме
(8) Важнее, что победившая команда сразу будет обеспечена хорошей работой в своей сфере
10. борян петров (TODD22) 16 15.09.17 09:57 Сейчас в теме
(9) А что это гарантируется условиями конкурса?
11. Глеб Зломанов (Glebis) 6 15.09.17 10:01 Сейчас в теме
Ещё один аналог Сири хитрый Греф решил создать всего за 2млн деревянных, собрав все наработки отечественных программистов. Хитро...
15. Антон Антонов (monkbest) 28 18.09.17 07:30 Сейчас в теме
(11) ничего хитрого, все нейронные сети уже придуманы как несколько десятков лет назад. Их давно уже разжёвывают в университетах (нормальных). Написано море фреймворков.

Самое сложное это выбрать удачные параметры для нейронной сети и написать удачный алгоритм (функцию) преобразования большого текста в небольшие числа. Дальше огромные бюджеты подобных проектов вырастают из обучения сети, ей надо скормить кучу эталонных текстов. Яндекс например для этого запустил проект, где можно заработать анализируя тексты своей головой, а потом результаты твоих анализов отдаются сети как образец для обучения. Человеку 50копеек за текст, системе 1 эталон.
За 2 месяца собрать нормальную выборку образцов - нереально и видимо это не входит в задачу, а значит это не система под ключ, а заготовка, которую надо докручивать, настраивать и упорно тестирвать
12. lefthander lefthander (lefthander) 15.09.17 10:01 Сейчас в теме
Мне кажется за создание подобных алгоритмов в сумме призовых должно быть на три нуля больше. Нет?
13. Сергей Смирнов (protexprotex) 140 15.09.17 10:04 Сейчас в теме
(12) Ну хотя бы на один - и то гуд будет :-)
16. Антон Антонов (monkbest) 28 18.09.17 07:34 Сейчас в теме
(12) если бы им еще понадобилось собрать самим выборку для обучения, обучить, протестировать и так несколько раз подряд, пока не получат результат, потом долго тестировать и допиливать, то да. Тут же надо только алгоритм, одну попытку, обучил на готовой выборке и сдал работу, за тебя проверят и поставят оценку :) это даже не запуск в опытную эксплуатацию, не альфа и не бета тестирование, а проверка работоспособности
17. Сергей Смирнов (protexprotex) 140 18.09.17 12:31 Сейчас в теме
(16)"Тут же надо только алгоритм, одну попытку"
- при обучении нейронной сети - нет алгоритма как такового - есть просто алгоритм обучения - подстройка весовых коэффициентов сети - например, методом обратного распространения ошибки - если данные один и те же, и все будут использовать реку рентные сети (а так и будет скорее всего у всех) - то и результат будет примерно один и тот же - (+- проценты) а это они и сами могут - фреймворков для нс. сетей - куча. У них задача, скорее всего, в том, чтобы к этой сетке прикрутить еще алгоритм коррекции ошибок сети - а вот тут уже и думать надо :-)
18. Антон Антонов (monkbest) 28 19.09.17 08:53 Сейчас в теме
(17) алгоритм самой сети - да, их уже полно готовых. Задание параметров сети, установка начального состояния это не алгоритм, согласен. Обучение сети тоже не создание алгоритма, т.к. обратная связь это тоже всего лишь подбор коэффициентов влияния.
А вот как сунуть текст на вход - это и есть та часть, которую надо не настроить готовую, а придумать и спрограммировать, ведь на вход сети можно подавать вектор или матрицу чисел, а текст произвольной длины таковым не является.
19. борян петров (TODD22) 16 19.09.17 09:00 Сейчас в теме
(18)
А вот как сунуть текст на вход - это и есть та часть, которую надо не настроить готовую, а придумать и спрограммировать, ведь на вход сети можно подавать вектор или матрицу чисел, а текст произвольной длины таковым не является.

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

Основная как мне кажется проблема, это научить понимать контекст.
21. Сергей Смирнов (protexprotex) 140 19.09.17 15:44 Сейчас в теме
(19) Да, точно - с контекстом у всех сетей основная проблема сейчас.
25. Антон Антонов (monkbest) 28 20.09.17 08:49 Сейчас в теме
(21) у яндекса нет проблем, их поиск "Королев" работает на ура
20. Сергей Смирнов (protexprotex) 140 19.09.17 15:44 Сейчас в теме
(18) "А вот как сунуть текст на вход - это и есть та часть, которую надо не настроить готовую, а придумать и спрограммировать, ведь на вход сети можно подавать вектор или матрицу чисел, а текст произвольной длины таковым не является" - ну, на самом деле текст как раз и можно сунуть на вход сети - для этого рекурентная сеть и существует. LSTM - сеть - как раз для этого.
24. Антон Антонов (monkbest) 28 20.09.17 08:47 Сейчас в теме
(20)LSTM - там в вектор чисел превращается слово и слова последовательно суются на вход. После каждого слова функция меняется. Получается, в зависимости от положения слова в тексте получим разное его влияние на результат, а на самом деле это не так. Фразы:
"я хучу пиво"
"пива я хочу"
идентичны, но для LSTM это разная последовательность входов с огромной вероятностью даст разный результат

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

Прежде чем совать текст на вход сети, надо провести его анализ, выделить подлежащие сказуемые, ключевые слова их взаимосвязь. Уменьшить словарь текста заменив все синонимами, отсортировать в едином синтаксическом формате, а потом уже совать это на вход в сеть.
Если мы хотим, чтобы функция сети сделала предварительный анализ за нас, то в этой функции должно быть больше многочленов и дольше будем искать коэффициенты этих многочленов. Если мы знаем часть реальной функции, то надо ей воспользоваться, чтобы уменьшить черный ящик, который мы моделируем нашей сетью.
27. Сергей Смирнов (protexprotex) 140 20.09.17 11:55 Сейчас в теме
(24)"я хучу пиво"
"пива я хочу" - дайте на вход сети эти два одинаковые по смыслу предложения - и на выходе сети установите в 1 (я очень упрощенно пишу) - а для "не хочу я пива" и "пива я не хочу" - установите на выходе 0. Обучайте сеть. И удивитесь что будет, я Вас уверяю. А если таких "синонимов" будет порядка миллиард, то Вы еще больше удивитесь способности сети. :-)
22. Сергей Смирнов (protexprotex) 140 19.09.17 15:47 Сейчас в теме
(18)
т.к. обратная связь это тоже всего лишь подбор коэффициентов влияния
- это не так - обратная связь это не подбор коэффициентов влияния (точнее это не совсем так) - это передача выходного состояния нейрона на себя или на нейрон с предыдущего слоя (для нейронов послойной сети).
23. Антон Антонов (monkbest) 28 20.09.17 08:26 Сейчас в теме
(22) из нейрона выходят не состояния, а числа. Это число умножается на весовой коэффициент и идет куда угодно: на следующий слой, на слой ниже, в самого себя.
Нейроны/шмейроны - все термины.
Дали числа на вход, применили математическую функцию, получили числа ответа. Любая функция может быть приближенно описана комбинацией умножений и сложений, чем больше членов в приблизительной функции тем ближе она к реальной. Нейрон - член этой функции, который складывает входы и умножает на свой коэффициент. нейронная сеть - огромный многочлен.

Почему-то я никогда не смотрел на сети, как на сети, а просто как на очуметь какую большую но очень простую функцию ВеторЧиселОтвета = f(ВекторЧиселНаВходе). А обратная связь - та же функция вычисления коэффициентов первой в зависимости от отклонений результата от правильного ответа.

Дальше начинается магия с тыканьем пальцем в небо, т.к. реальная функция неизвестна по определению. Сколько надо членов (нейронов) в приблизтельной функции чтобы она была максимально точна? Какая степень каждого члена (количество слоев)? Как подрать функцию обратной связи? Какие задать коэффициенты членам (начальное состояние сети)?
KapasMordorov; +1 Ответить
14. Капитан Немо (capitan) 582 17.09.17 12:32 Сейчас в теме
Алгоритм простой как два байта об асфальт:
Условие: Посетитель присутствует.
Тогда произнести фразу :
Вариант 1: В каком отделении карту получали -туда и обращайтесь
Вариант 2: Ваше заявление на рассмотрении - зайдите через две недели
Выбор ответа можно производить случайным образом
Профит!
shard; torbeev; protexprotex; +3 Ответить
26. Дмитрий Неважнов (bsturtle) 165 20.09.17 11:07 Сейчас в теме
Оставьте свое сообщение