«Особые потребности» — это не постоянный диагноз, а ситуация, которая может коснуться любого: временная травма руки, возрастное ухудшение зрения, стресс, мешающий сконцентрироваться. Учёные из Нижнего Новгорода создают технологию, которая учит программы понимать не идеальные, а реальные команды — дрожащий клик, нечёткий голос, рассеянный взгляд. Эта разработка важна для каждого.
В интервью Борис Улитин, руководитель команды ученых из Нижегородского кампуса Высшей школы экономики, рассказывает, как выглядит по-настоящему инклюзивный цифровой мир, в котором технологии слушают и слышат каждого.
— Борис, мы с вами говорим о научной работе, а не просто разработке программного обеспечения. В чем суть?
— Наше исследование полностью сосредоточено на цифровых продуктах. Мы разработали инструмент — программный модуль, — который адаптирует интерфейсы, внешний вид систем управления и других цифровых решений под индивидуальные запросы пользователя. В процессе использования нашего ПО мы собираем и анализируем множество данных о человеке, чтобы непрерывно дорабатывать и совершенствовать код.
Суть проблемы в следующем. Для любого пользователя критически важна интуитивная понятность интерфейса — чтобы было очевидно, куда нажать и что сделать. Однако интуитивный и удобный интерфейс для людей с особыми потребностями — это зачастую нечто совершенно иное. То, что кажется простым большинству, может быть серьёзным препятствием для человека, например, со слабым зрением, с нарушением восприятия цвета или с когнитивными особенностями после перенесённой операции.
Разработчикам отдельно взятой программы практически невозможно заранее учесть все подобные сценарии и создать под каждый из них специальную версию интерфейса — это невероятно дорого и сложно.
Поэтому наша команда создала программу-прослойку. Её можно один раз настроить под конкретные потребности пользователя, и тогда работа с обычными, уже существующими приложениями станет для него значительно проще.
Команда Бориса Улитина создала своего рода умного помощника-переводчика, который работает между человеком и любой компьютерной программой или сайтом. Если человеку сложно пользоваться мышкой, плохо видно мелкий текст или не получается нажать нужную кнопку — помощник это замечает и мгновенно подстраивает интерфейс: увеличивает кнопки, помогает голосовыми командами, «ловит» неточные движения. В итоге человек можете пользоваться тем же самым сайтом «Госуслуг» или банка, но в удобном формате — без переучивания и без того, чтобы сайт пришлось переделывать.
— Эта программа устанавливается на компьютер пользователей?
— Всё верно, но не только. Мы сделали два варианта решения.
Первый — это действительно программа, которую можно установить на компьютер или смартфон. Получается, человек работает со своим обычным устройством, а наш модуль работает фоном: он следит за особенностями действий, анализирует реакции. Если у человека возникают сложности — например, он замедляется или ищет элемент — модуль это замечает. Он как бы угадывает, что пользователь хотел сделать, и помогает ему: может запустить нужную программу или сформировать правильный запрос.
Но так как сейчас многие инструменты переехали в онлайн или в облака, а с некоторыми сайтами тоже бывает непросто справиться, мы сделали второе решение — расширение для браузера. Оно решает ту же задачу, но уже прямо в интернете.
— На какие показатели вы обращаете внимание? Анализируете данные, время поиска кнопки?
— Да, с точки зрения продукта это верно. Основной показатель, на который мы смотрим — это время. А именно время доступа пользователя к конкретному функционалу. Если оно начинает заметно отклоняться от наших контрольных цифр или от других экспериментов — это для нас красный флаг. Значит, здесь что-то пошло не так, нужно разбираться и, возможно, вносить коррективы.
Сбор данных для нас — это не только метрики продукта. Мы также собираем информацию, чтобы сделать само приложение максимально эффективным и комфортным помощником. И здесь мы используем не только обратную связь — спрашиваем, что было неудобно, что вызвало затруднения.
Дополнительно, в реальном времени и с согласия пользователя, мы собираем его физиологические данные: мозговую активность и сердцебиение как главный маркер волнения. Ведь когда человек расслаблен и уверенно пользуется программой, его пульс почти не отклоняется от нормы. Совсем другое дело, если возникают сложности. Человек начинает волноваться, и это сразу отражается на показателях. Таким образом, даже такие, казалось бы, простые данные дают нам огромный объем информации и позволяют точно определить, где технология дала сбой или где эффективность упала.
Для чистоты эксперимента у нас есть две группы: контрольная — люди без особых потребностей, и группа с такими потребностями. Для вторых мы проводим тестирование в два этапа. Сначала они работают с обычными программами без нашего инструмента адаптации. Это дает нам базовую оценку, отправную точку, от которой мы ожидаем улучшений.
Но бывает и так, что значительных изменений не происходит, потому что сам программный инструмент изначально понятен и прост. Такие случаи были, например, с Госуслугами — там уже встроен голосовой помощник, и часть задач можно решать без какой-либо дополнительной корректировки с нашей стороны.
— Для каких случаев модули уже готовы и на стадии апробации?
— Мы начали с того, что научились работать с цветоаномалиями. С точки зрения адаптации интерфейсов это наиболее простой сценарий, поскольку он требует только визуальной настройки. Вторым этапом научились работать со случаями поддержки пациентов с механическими повреждениями. В этом случае мы уже комбинируем голосовую настройку интерфейса с управлением жестами. И самыми сложными для нас стали случаи, затрагивающие нервную систему, с которыми мы сейчас активно работаем.
— С чем пока не удается справиться?
— Самый сложный кейс, который у нас сейчас в работе — это адаптация под тремор. Здесь нельзя полагаться только на компьютерное зрение, потому что нет стабильной фокусировки. Нельзя и на механику движения — оно постоянно меняется.
Расскажу о нашем самом первом опыте с тремором. Мы тогда не умели с такими случаями работать вообще. Проблема была в подходе: мы считали, что можно применить одни и те же универсальные методы адаптации ко всем ситуациям. С точки зрения разработки, в любом продукте есть функционал, и наша задача — понять, какой именно хочет использовать пользователь, а затем запустить этот сценарий.
Когда мы начали работать с тремором, программа реагировала совершенно неадекватно. Она пыталась отслеживать взгляд, но это было неточно. Голосовое управление помогало, но тоже давало сбои — возник рассинхрон между анализом изображения и распознанной командой.
В итоге мы поняли главное: нельзя полагаться только на один источник данных. Пришлось объединять их. Этот кейс был очень показательным, потому что наш участник эксперимента, вместо того чтобы расстроиться, сказал: «Давайте я вам объясню, как я это всё чувствую?»
Мы посмотрели на ситуацию с его позиции: как он ежедневно борется со своими ограничениями. Его объяснение привело нас к решению анализировать три источника данных одновременно: взгляд, любые механические движения и голос. Только их комбинация позволяет по-настоящему адаптировать интерфейс, а не просто немного скорректировать движение курсора. Сейчас мы как раз работаем над таким прототипом.
— Получается, участник эксперимента стал соучастником проекта?
— Этот опыт сильно изменил парадигму работы всей команды. Раньше мы разрабатывали продукт и потом его тестировали. Теперь мы пришли к модели, где каждый кейс уникален и требует доработки в реальном времени. Но поскольку мы не можем физически присутствовать в каждом случае при масштабировании, мы поняли, что нужны методы искусственного интеллекта.
— А как быть, если у пользователя нет доступа к одному из источников данных? Например, для незрячего человека остаются только голос и механическое движение?
— Да, в этом случае два оставшихся компонента помогают нивелировать недостаток информации. Мы используем своеобразную аппроксимацию: данные от механических движений и уточняющие голосовые команды взаимно дополняют друг друга. Это позволяет системе скорректировать понимание намерения пользователя, даже когда одного из каналов — например, отслеживания взгляда — нет в принципе.
— А когда вы сталкиваетесь с таким сложным барьером, как в случае с тремором, как справляетесь с этим? Как понимаете, что пора остановиться, чтобы не было перегрузки?
— Если говорить о том, как мы с этим справляемся, я бы разделил на личный уровень и на уровень команды.
Для команды единственный вариант — собраться всем вместе и подробно обсудить все возможные пути развития ситуации. Мы изначально готовы к тому, что могут быть случаи, где мы не сможем значительно улучшить результат. Конечно, это всегда обидно с точки зрения помощи конкретному человеку, но такое возможно, ведь мы работаем именно с особыми потребностями. В остальных случаях главное — услышать разные точки зрения.
И здесь как раз помогает разнообразие опыта в нашей команде. У нас есть выпускники программы «Фундаментальная и прикладная лингвистика», которые глубоко разбираются в языковом анализе и речевых аспектах. Есть чистые разработчики, которые могут объяснить ограничения на уровне кода: почему, например, мы не можем сопоставить желаемую картинку с тем, что реально происходит в программе.
Поэтому такие «посиделки» — самый продуктивный вариант. Чаще всего в таком диалоге рождается гипотеза, которую мы потом можем проверить. И одна из них может стать ключом, который продвинет нас дальше. Получается, слепые зоны в исследовании подсвечиваются именно за счёт разных компетенций. Без них, честно говоря, ни одно исследование невозможно.
— Ваша команда состоит в основном из выпускников и сотрудников нижегородской Вышки? Или вы целенаправленно собирали специалистов из разных городов — кто-то переехал в Нижний Новгород ради проекта?
— Если говорить о составе нашей команды, то начиналось всё исключительно внутри Высшей школы экономики. Исследование родилось из моей кандидатской диссертации и затем из совместных выпускных квалификационных работ студентов. Фактически первые три участника команды были только из ВШЭ.
Затем, когда мы вышли на площадку кампуса «НЕЙМАРК», к нам присоединились специалисты из других регионов. Сейчас мы очень тесно сотрудничаем с факультетом компьютерных наук московского кампуса ВШЭ. Появились и индустриальные партнёры, именно технические консультанты. Это очень важно, потому что когда речь идёт о цифровом продукте, нужен взгляд со стороны индустрии.
— Какой средний возраст у вашей команды?
— На текущий момент он в районе 30 лет. Дело в том, что для нашего проекта оказалось очень востребованным участие молодых учёных на всех этапах. Здесь вопрос не только в возрасте, а скорее в опыте и типе мышления.
Когда мы говорим об адаптации цифровых продуктов, нам критически важны люди, которые не просто изучают технологии по мере их появления, а те, кто буквально вырос в этой цифровой среде. У них есть определённая «насмотренность», внутреннее чувство интуитивности интерфейса. Они могут скорректировать разработку в сторону того, что привычно и понятно им самим.
Потому что самый простой критерий понятного интерфейса — если вы дадите его ребёнку, и он разберётся за пять минут. Он не знаком ни с задумкой продукта, ни с его внутренней логикой. Но если он понял, как им пользоваться, значит, мы на верном пути. Это и есть эталонный вариант с точки зрения понятности.
— Возник ещё один вопрос по ходу: мы привыкли, что исследование — это либо пробирки, либо работа с большим массивом данных. А здесь я слышу про создание программного продукта, написание кода. Как в вашем случае сочетаются научное исследование и разработка? Как это вообще происходит в IT?
— Я бы сказал, что научное исследование служит основой для любой IT-разработки. Когда мы, например, решили заняться адаптацией интерфейсов, первый вопрос, который мы себе задали, был: можем ли мы это вообще гарантировать хотя бы на теоретическом уровне? Ведь каждый продукт кажется уникальным — у него своя функциональность, свои задачи, своя аудитория.
Но когда мы начали изучать этот процесс с точки зрения фундаментальной науки, оказалось, что любой программный продукт с привычным нам графическим интерфейсом — это, по сути, конструктор. Интерфейс здесь тоже лишь посредник: когда мы нажимаем кнопку, внутри кода что-то происходит, и мы получаем результат.
Именно осознав, что мы работаем не напрямую с исходным кодом, а с этим посредником — интерфейсом, мы поняли, что можем настраивать его как инструмент под конкретные запросы пользователя. Потому что интерфейс — это и есть конструктор: в нём есть кнопки, текстовые поля, формы. И наша задача — понять, какой из этих элементов нужен пользователю здесь и сейчас.
— Задумка откуда взялась такая? У вас в профиле виден спорт, экономика, бизнес-информатика, а теперь — люди с особыми потребностями. Как произошёл такой поворот?
— На самом деле, идея родилась именно на стыке направлений. Мы позаимствовали её из музыки. Когда вы слушаете произведение, в его основе всегда есть мелодия, лейтмотив. На его основе можно создать множество аранжировок, но сама мелодия при этом не меняется. Фактически мы поняли, что в нашем приложении мы работаем как раз с такими «аранжировками» интерфейса, но наша цель — добраться до той самой «мелодии», до изначальной функциональности, которую задумал разработчик.
— Это очень живая и понятная метафора. Вы сами музыкой занимаетесь?
— Да, я закончил музыкальную школу, играю на фортепиано, сочиняю музыку. Так что имею к этому прямое отношение.
— Интересно, когда пересекаются такие, казалось бы, разные сферы — IT, цифры, код, и музыка. Хотя и там, и там есть клавиши.
— На самом деле, в основе всего, как верно подметил Пушкин, лежит случай — «Бог-изобретатель». Даже в IT, в создании продукта, всё часто начинается с какой-то мысли, услышанной краем уха, которая потом находит отклик в другом наблюдении или эксперименте. Именно так, проведя параллель, мы и пришли к этой истории.
— Вся ваша команда такая музыкальная?
— Нет, не вся. Хотя у нас есть как минимум ещё один гитарист. Так что в этом смысле мы стараемся всех приобщать к музыке, но пока нас только двое.
— А вы лично чем ещё увлекаетесь?
— Я лично очень люблю театр, особенно наш театр оперы и балета. Обожаю оперетты. Для меня это лучший способ отвлечься от всего и полноценно отдохнуть.
— Какие ближайшие рубежи у проекта? Какие у вас планы?
— По самому проекту мы надеемся в ближайшие полгода-год завершить работу над сложным кейсом с тремором. А следующая большая веха, к которой мы стремимся в трёхлетней перспективе, — это тиражирование технологии. Либо как готовой платформы или модуля для бизнеса, либо через распространение в открытых источниках, чтобы такие адаптации стали доступнее.
— Ваш проект нацелен на повседневные программы или же на рабочие инструменты для повышения эффективности?
— В первую очередь мы говорим о повседневных программах. Конечно, подход можно адаптировать и для специфических рабочих инструментов, например, чтобы повысить эффективность менеджеров. Но наша основная цель сейчас — именно улучшение качества жизни, решение бытовых цифровых проблем.
Мы пока сознательно не идём в сторону профессиональных систем, чтобы избежать риска «переусложнения» или создания узкоспециализированного инструмента, которым будут пользоваться единицы. Мы фокусируемся на адаптации интерфейсов под сложные, индивидуальные жизненные ситуации.
— Как проект финансировался за эти полтора года? Это грантовая история внутри вуза, федеральная поддержка или что-то ещё?
— У нас гибридная модель. Мы, безусловно, подаёмся на гранты — например, РНФ. Один из грантов как раз был связан с адаптацией интерфейсов. В нём мы заложили программную составляющую, потому что на тот момент было сложно гарантировать что-либо в прикладном аспекте. Сейчас, кстати, в РНФ появились и прикладные конкурсы, что очень здорово.
Второй путь — это поиск финансирования через партнёров. Здесь нам очень помог ИТ-кампус «НЕЙМАРК» с его широкими связями — как с компаниями, так и с государственными структурами. Это значительно ускорило процесс: мы выходили к ним с уже готовыми технологическими наработками, и задача стояла в их апробации — проверить те самые гипотезы и фундаментальные выводы, которые мы получили ранее.
— То есть партнёры помогают с апробацией, или они уже выступают как полноценные индустриальные партнёры?
— Сейчас они уже стали именно индустриальными партнёрами. Дело в том, что наша технология адаптации не интегрируется в само существующее решение, а работает поверх него.
Это снимает один ключевой барьер, который мы обнаружили в ходе исследований: когда адаптация встроена в продукт, она часто остаётся «вишенкой на торте», на которую не все обращают внимание. Основная цель бизнеса — масштабируемость, чтобы у большинства пользователей не было барьеров при входе в продукт. Но изначально не все компании закладывают глубокую адаптацию под особые потребности.
А мы выступили как компромиссный вариант: не нужно дорабатывать уже готовый функционал. Достаточно дать доступ для внешней надстройки, чтобы она могла обратиться к нужной части интерфейса и адаптировать его под конкретного пользователя.
— Кто может стать коммерческим заказчиком? Это государственные органы, которые захотят закупить ваше решение для определённой группы людей?
— Да, это одна из возможных моделей. Если мы говорим о локальном внедрении в рамках какого-то конкретного продукта, то это, как правило, остаётся локальной историей.
А для повсеместного распространения, для унификации или даже будущей стандартизации, безусловно, нужен более системный подход — здесь как раз может быть востребована государственная поддержка или заказ. Пока же работа ведётся на уровне отдельных групп, даже не регионов.
На текущий момент мы работаем именно с небольшими тестовыми группами и в этом плане от меня огромная благодарность нашему партнёру ИТ-кампусу «НЕЙМАРК», потому что мы как раз совместно с ними проводим все испытания технологий и контролируем на всех этапах доработки.
Второй вариант, как это может в принципе выглядеть, это пожалуй то, что сейчас получило отдельное распространение, все структуры, все организации, которые занимаются инклюзивными технологиями, потому что в этом случае мы говорим не только о людях с особыми потребностями, мы говорим в целом про вопросы адаптации, про различные восстановительные медицинские процедуры – процедуры реабилитации. И тогда основным потребителям являются группы со специфическими потребностями. Также заказчиком может выступать государство и уже через государственные структуры идет распространение.
— Что вам даёт работа именно в вузовской системе, а не уход в чисто коммерческую разработку?
— Основная ценность — это возможность находиться в образовательной среде. Во-первых, это прямой доступ к подбору новых кадров. Я всегда говорю студентам, что их идеи могут вырасти в стартап или новую разработку — у них очень много свежих мыслей. Главное — направить их в нужное русло. Это, пожалуй, самое существенное преимущество для состава команды.
Другой важный момент, особенно для Нижнего Новгорода и Вышки, — это отсутствие явной дихотомии между наукой и индустрией. Часто бывает чёткое разделение: наука — это исследование, а внедрение — дело компаний. Но здесь, в последние лет пять, я наблюдаю именно взаимное проникновение. Научное исследование может стать основой для технологии, а какая-то технология, наоборот, потребует фундаментального подтверждения. Вместо разделения получается полноценное, дополняющее друг друга сотрудничество всех участников.
_________
Больше про нижегородских ученых читайте в проекте «Наука в Нижнем» ВКонтакте, Телеграм или Дзен. Проект создан в рамках инициативы «Десятилетие науки и технологий».