Как киберръка "учи" жестове: студенти са разработили AI модел за бионична протеза

Работата върху реален проблем позволи на студентите да придобият практически опит по време на обучението си и

"Моторика" - проверка на хипотези и нови идеи.

Защо решихме да приемем това предизвикателство

Средно всяка година в света се ампутират крайници.1 милион души - и това не включва онези, които вече са родени без ръце или крака. Не всеки има достъп до добри протези, но дори и с най-модерните от тях е трудно да се постигне пълна естественост на движението.

Как работят бионичните протези и как изкуственият интелект може да помогне?

Основният принцип на действие на повечето протези етова е отчитане на електромиографския потенциал на мускулите, или по-просто казано, тяхното напрежение. В ръкава, където се поставя пънчето (частта от крайника, останала след ампутация или поради недоразвитостта му (аплазия) - бел. ред.), са монтирани два сензора, единият отговаря за отварянето на ръката, другият за затварянето. Потребителят напряга мускула и жестът се задейства.

Бионичните протези са разделени на два вида:единичен захват - може да компресира / разхлаби четката. По-сложният мулти-хват, в допълнение към този основен жест, изпълнява "уникални" програмируеми движения, защото всеки пръст може да се движи отделно. Така например работи бионичната протеза Manifesto, която по отношение на дизайна не отстъпва на най-новите модели на Boston Dynamics.

Жестът е програмиран върху 3D модела на "плъзгане и пускане" на пръстите на ръката (все едно въртите герой от видео игра в менюто). Запазете и превключете с едно кликване.

Например:


                  Козу 🤟🏻            или              Сердечко ❤️ 

Проблемът обаче остава:за да изпълните жест, първо трябва да го програмирате, ако не е в бърз достъп, след това да превключите жеста (може да се направи през приложението в смартфона или да задържите дълго напрежението на сензора) и накрая да отворите или затворите жеста, като напрегнете мускулът.

То есть, помимо самого жеста, приходится выполнять довольно много дополнительных действий. 



Manifesto Bionic Prosthesis - AI платформа за обучение

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

За по-ефективна работа на невронната мрежа, трябваимат повече принос. "Моторика" разработи оптомиографски сензори, които за разлика от стандартните електромиографски сензори разграничават промени не само в мускулите, но и в сухожилията, ставите, кръвотока и кожата. Широката гама от данни подобрява точността, гладкостта и прави възможно използването на протезата от хора с малък или никакъв мускулен сигнал. AI научава какви промени в индикаторите са свързани с конкретен жест и го възпроизвежда чрез преместване на микромоторите на желаните пръсти. Такава технологична връзка вече позволява на протезите да извършват определени жестове.

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

Как изглеждаше процесът на хакатона?

Участвовать в хакатоне могли все студенты и выпускники курса Data Science, которые отправили онлайн-заявку и обладали нужными навыками: это операции над массивами данных, навыки анализа данных, разведывательного анализа, построения моделей классификации и другие. 

Бяха избрани общо 44 участници, които бяха победениза 8 екипа от 3-6 души: така че всеки да е еквивалентен на останалите по отношение на опита и уменията на своите членове. Членовете на екипа независимо разпределят роли в рамките на: ръководител на екип, разработчик или ръководител на проекта.

Московските студенти имаха възможност да дойдатв лаборатория „Моторики” в Сколково, за да участва самостоятелно в процеса на събиране на данни от истинска протеза. Изглеждаше така: на ръката на участника бяха инсталирани оптомиографски сензори, чийто контролер беше свързан към протезата. След това протезата направи серия от жестове: отворена длан ✋, пълен хват ✊, жест „пистолет“ ????, жест „ОК“ ???? и други (общо 15), а потребителят ги възпроизведе. За всеки период от време се записват показанията на сензорите и жестът, който потребителят изпълнява в този момент. След това те бяха дигитализирани в набори от данни, които учениците използваха за решаване на проблема.

Задачата беше да се използват методи на Data Science за изграждане на модели, които въз основа на показанията на сензора да определят жестовете, извършвани от потребителя.

Работа велась в формате трехэтапного хакатона: от простой задачи к сложной для плавного погружения в предметную область. Мы решили, что сперва дадим студентам общую картину, а потом постепенно будем усложнять постановку задачи. Третья уже была максимально приближена к «боевой». 

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

Три этапа хакатона 

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

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

Например, беше направен преход от неутралнопозиция (отворена длан) към един от жестовете и обратно - от жеста към неутрална позиция. Беше необходимо моделът да се обучи да разпознава кой жест е извършен: огънете / разгънете всеки пръст, „ОК“ ???????? и „пистолет“ ???????? и така нататък.

Фрагмент от набор от данни за първата задача

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

Фрагмент датасета для второй задачи 

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

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

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

Фрагмент от набор от данни за третата задача

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

Какие были результаты 

Мы проводили хакатон с помощью платформы Kaggle. Решение проверялось алгоритмом, который оценивал качество построенной модели и ранжировал модели по степени точности, определяя результаты команд. 

Резултатите са оценени по стандарта замашинно обучение за показателя F1-резултат: тоест, чрез комбиниране на пълнотата и точността на получените данни, за втората и третата задача, показателят беше изчислен за всеки момент от време.

Идеальным считалось решение, качество которого по метрике F1-score было максимально приближено к 1. У большинства участников по первым двум задачам метрика была близка к 1, они строили достаточно результативные модели, однако фактический потолок в рамках третьей задачи составлял всего 0,7. 

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

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

Какви изводи направихме

Хакатонът е чудесен пример какОнлайн училището преминава от формата EdTech към ExperienceTech, когато теоретичните знания задължително се допълват от практически задачи от играчите на пазара. Бизнесът успя да делегира реалните си задачи на студентите и да получи някои нови интересни подходи, които могат да бъдат включени във версията за освобождаване. Бизнесът също така получава потенциални кандидати, които се потапят в предизвикателствата на индустрията, докато учат.

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

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

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

Прочетете още:

Учени от зоната на вечната замръзналост: как разработват умни дрехи и ваксина срещу рак

Учените „измамиха“ времето и изпратиха фотон в миналото: как този пробив ще промени физиката

10 научни факта, които се оказаха фалшиви. Карти