実際の問題に取り組むことで、学生は学習中に実践的な経験を積むことができ、
なぜこの挑戦をしようと思ったのか
平均して、世界では毎年手足が切断されています。100 万人 - 生まれつき手足のない人は含まれていません。誰もが優れたプロテーゼを利用できるわけではありませんが、最先端のプロテーゼを使用しても、完全に自然な動きを実現することは困難です。
バイオニック義肢はどのように機能し、人工知能はどのように役立つのでしょうか?
ほとんどのプロテーゼの操作の基本原則は、これは、筋肉の筋電図電位、またはより簡単に言うと、筋肉の緊張を読み取るものです。切り株が挿入されるスリーブ(切断後に残された手足の部分、またはその未発達(形成不全)による編)には、2つのセンサーが取り付けられています。1つは手を開き、もう1つは閉じる役割を果たします。ユーザーが筋肉を緊張させると、ジェスチャーがトリガーされます。
バイオニック義足は、次の 2 つのタイプに分類されます。シングルグリップ - ブラシを圧縮/緩めることができます。この基本的なジェスチャに加えて、より複雑なマルチグリップは、各指が別々に動くことができるため、「独自の」プログラム可能な動きを実行します。したがって、たとえば、マニフェスト バイオニック プロテーゼは機能します。これは、デザインの点で最新のボストン ダイナミクス モデルに劣るものではありません。
ジェスチャーは、手の指の「ドラッグ アンド ドロップ」の 3D モデルでプログラムされます (メニューでビデオ ゲームのキャラクターを回転させているかのように)。ワンクリックで保存して切り替えます。
例えば、


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


Бионический протез Manifesto — платформа для обучения ИИ
Поэтому, чтобы делать жесты без подготовки и сразу распознавать их как можно точнее, исследователи решили обратиться к искусственному интеллекту, а точнее — к ИИ-моделям, которые обучаются под каждого пользователя на его персональных данных.
Для более эффективной работы нейросети нужно иметь больше входных данных. «Моторика» разработала оптомиографические датчики, которые, в отличие от стандартных электромиографических, различают изменения не только в мышцах, но и в сухожилиях, суставах, кровотоках и коже. Широкий диапазон данных повышает точность, плавность и дает возможность использовать протез людям со слабым сигналом от мышц или вообще с его отсутствием. ИИ изучает, какие изменения показателей сопряжены с тем или иным жестом, и воспроизводит его, двигая микродвигателями нужных пальцев. Такая технологическая связка уже сейчас позволяет протезам выполнять определенные жесты.
Студенты, принимавшие участие в хакатоне, должны были усовершенствовать прототип ИИ-модели для системы управления протеза руки.
Как выглядел процесс хакатона
Участвовать в хакатоне могли все студенты и выпускники курса Data Science, которые отправили онлайн-заявку и обладали нужными навыками: это операции над массивами данных, навыки анализа данных, разведывательного анализа, построения моделей классификации и другие.
Всего было выбрано 44 участника, которых разбили на 8 команд по 3–6 человек: так, чтобы каждая была равносильна другим по опыту и навыкам ее членов. Участники команды самостоятельно распределяли роли внутри: тимлид, разработчик или проджект-менеджер.
У московских студентов была возможность приехать в лабораторию «Моторики» в Сколково, чтобы самостоятельно поучаствовать в процессе сбора данных с реального протеза. Выглядело это так: на руку участника устанавливали оптомиографические датчики, контроллер которых подключали к протезу. Затем протез делал серию жестов: открытая ладонь ✋, полный хват ✊, жест «пистолет» 👉, жест «ОК» 👌 и другие (всего их было 15), а пользователь их воспроизводил. Показания датчиков и жест, который выполнял пользователь в этот момент, фиксировались для каждого промежутка времени. Затем они оцифровывались в наборы данных, которые студенты использовали для решения задачи.
Задача заключалась в том, чтобы с использованием методов Data Science построить модели, которые по показаниям датчиков будут определять жесты, выполняемые пользователем.
Работа велась в формате трехэтапного хакатона: от простой задачи к сложной для плавного погружения в предметную область. Мы решили, что сперва дадим студентам общую картину, а потом постепенно будем усложнять постановку задачи. Третья уже была максимально приближена к «боевой».
После каждого этапа команды показывали свои решения, из которых мы отмечали лучшие. В процессе хакатона участники могли обращаться к нам — менторам — за консультациями. Мы также отвечали за разработку задач и критериев для оценки результатов. По окончании каждого этапа студенты получали от нас фидбэк, насколько их решение было актуальным и эффективным, а также комментарии относительно структуры кода и технических ошибок, связанных с машинным обучением.
Три этапа хакатона
В начале работы студенты получили данные и базовую модель как некий ориентир. Идея хакатона заключалась в том, чтобы команды улучшили результат базовой модели или приблизились к нему. Так мы хотели проверить, можно ли вообще улучшить нашу базовую модель.
На первом этапе командам нужно было классифицировать жесты по участку данных, то есть определить, из какого жеста в какой произошел переход.
Например, был совершен переход из нейтрального положения (открытая ладонь) в один из жестов и наоборот — из жеста в нейтральное положение. Нужно было обучить модель распознавать, какой был выполнен жест: сгиб/разгиб каждого пальца, жест «ОК» 👌🏻 и «пистолет» 👉🏻 и так далее.
Фрагмент датасета для первой задачи
На втором этапе требовалось классифицировать жест и определять его начало и окончание во времени. В итоге должна была получиться модель, которая распознает, как, в какой последовательности и с каким временным интервалом рука переходит от одного жеста к другому.
Фрагмент датасета для второй задачи
Если в первой задаче во всем исследуемом временном промежутке случился жест, то во второй задаче мы хотели, чтобы участники в каждый момент времени определили, какой выполнялся жест. Например, большой палец сгибался в течение определенного временного отрезка, а потом произошел переход к жесту открытой ладони.
На третьем этапе было необходимо сегментировать непрерывную запись на отдельные жесты с определением их начала и окончания во времени.
Задача качественно усложнилась. Теперь участники работали не с подготовленными наборами данных, а непрерывными сырыми данными. Требовалось самостоятельно разработать систему работы с ними: как их извлечь и как нарезать, чтобы потом обучать модели.
Фрагмент датасета для третьей задачи
В первой и второй задачах мы брали один участок времени, то есть переход из одного жеста в другой, не больше. Но в реальности наша рука постоянно меняет свое положение, это происходит непрерывно, а не только в определенный промежуток времени. Мы переходим из одного жеста в другой, потом из этого жеста в третий, и так далее. И третья задача состояла в том, чтобы зафиксировать момент каждого перехода из одного жеста в другой и понять, в какой жест произошел переход, при этом жестов могло быть сколько угодно много.
Какие были результаты
Мы проводили хакатон с помощью платформы Kaggle. Решение проверялось алгоритмом, который оценивал качество построенной модели и ранжировал модели по степени точности, определяя результаты команд.

Результаты оценивались по стандартной для машинного обучения метрике F1-score: то есть по сочетанию полноты и точности полученных данных, для второй и третьей задачи метрика рассчитывалась для каждого момента времени.
Идеальным считалось решение, качество которого по метрике F1-score было максимально приближено к 1. У большинства участников по первым двум задачам метрика была близка к 1, они строили достаточно результативные модели, однако фактический потолок в рамках третьей задачи составлял всего 0,7.
При оценке работ мы учитывали и то, какой подход применяли студенты: насколько он отличался от базового алгоритма «Моторики», были ли найдены какие-то интересные закономерности, было ли решение универсальным с точки зрения потребляемых ресурсов, куда относятся используемая для решения оперативная память и скорость вычислительной мощности. Можно построить такую тяжеловесную модель, которая будет предсказывать идеально, но будет делать это в течение нескольких минут. Для человека с ампутированной рукой, носящего протез, ждать несколько минут, пока у него один палец начнет двигаться, совсем не оптимально. Система должна работать буквально в режиме реального времени с задержкой не более 100 мс.
По итогам хакатона практически все команды приблизили свой результат к базовой модели разработчиков и предложили некоторые интересные подходы. Модели, построенные участниками на первом и втором этапах, были результативными и хорошо работали в заданных условиях, помогли погрузиться в предметную область. В дальнейшем их будут тестировать в реальной ситуации. В третьей задаче участники предложили обновленные подходы к обработке данных перед тем, как отправлять их в модель, но эти гипотезы также нужно проанализировать и проверить. Если испытания пройдут успешно, полученные результаты могут быть использованы в дальнейшей работе.
Какие выводы мы сделали
Хакатон — это отличный пример того, как онлайн-школа движется от формата EdTech к ExperienceTech, когда теоретические знания обязательно дополняются практическими задачами от игроков рынка. Бизнес смог делегировать свои реальные задачи студентам и получить несколько новых интересных подходов, которые могут войти в релизную версию. Бизнес также получает потенциальных кандидатов, которые в процессе обучения погружаются в задачи индустрии.
Студенты отметили, что постепенное усложнение задач упростило переход от теоретической модели к реальной. Это позволило лучше погрузиться в проблему даже тем, у кого мало опыта в написании кода. Тем, кто раньше имел дело только с классическими моделями машинного обучения, было особенно интересно познакомиться с современными наработками в области глубокого обучения.
По окончании первого этапа мы увидели, что многим участникам не хватает навыков презентации результатов. Поэтому ввели дополнительный критерий оценки работ (культура кода), который включал в себя оформление кода по стандартам, документирование, следование правилам визуализации и текстовое сопровождение хода решения.
Из-за внешних обстоятельств время хакатона увеличилось с одного до двух месяцев, и мотивация некоторых участников снизилась, а другие вовсе вышли из проекта. В будущем мы постараемся оптимизировать время хакатона и рассчитывать его длительность более внимательно, чтобы сохранить высокий уровень вовлеченности и уделить больше внимания мотивации участника на каждом этапе.
続きを読む:
永久凍土地帯の科学者: スマートな服とがんワクチンを開発する方法
科学者は時間を「だまし」、光子を過去に送った:このブレークスルーが物理学をどのように変えるか
偽物であることが判明した10の科学的事実.カード