Вернуться к профилю
Датасеты
Слои модели

1234567890QWERTYUIOP[]ASDFGHJKL;'ZXCVBNM,./Shift—↔
Набор текста
Траектория и клик

Загрузка демонстрации…

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

Октябрь 2026 · Генеративные модели · Динамика ввода

Human Input: движения и печать

Генератор движений мыши и ритма печати с естественной вариативностью. Превращает цель и текст в готовую последовательность действий — с API и наглядной демонстрацией.

Автор и разработчик

Задача

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

01 · Подход

От данных к готовым действиям

Подготовка данных, нейронная генерация и программный интерфейс объединены в одну систему.

  • Подготовил исследовательский корпус, организовал контроль качества и кластеризацию данных.
  • Разработал и сравнил генеративные модели движения мыши и ритма печати на PyTorch.
  • Создал API, поддержку EN/RU/Unicode и интерактивную демонстрацию готовых сценариев.
  1. 01

    Данные

    Подготовка и контроль качества

  2. 02

    Модели

    Обучение и сравнение подходов

  3. 03

    Интеграция

    Программный интерфейс и план ввода

  4. 04

    Демонстрация

    Визуальное воспроизведение результата

От данных к готовым действиям. Подготовка данных, нейронная генерация и программный интерфейс объединены в одну систему.

02 · Движение мыши

От условий к траектории

Условная спектральная flow-модель генерирует весь путь и длительность. Три масштаба обучаются совместно; схемы показывают слои и размерности, а не значения весов.

01

Условия

Представление условий, общее для генератора.

Представление условий, общее для генератора.

02

Общий ход

Общий ход и длительность движения.

Общий ход и длительность движения.

03

Коррекции

Уточнение пути с учётом общего хода.

Уточнение пути с учётом общего хода.

04

Детали

Детали с учётом предыдущих масштабов.

Детали с учётом предыдущих масштабов.

Одна модель, три масштаба

Общий ход и время — 17 координат, коррекции — 32, детали — 140. Каждый масштаб преобразует свою часть случайного вектора и получает контекст предыдущих. Обратное спектральное преобразование восстанавливает 96 точек пути.

Температура 0–1 управляет разбросом. Попадание в цель и границы обеспечивает геометрия; отдельная сеть добавляет реакцию и поправку времени по ширине цели.

Что считали реалистичностью

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

Сравнивали длину и форму пути, скорость, ускорение, jerk, длительность, повороты, паузы и возвраты. Дополнительно — временные зависимости, микрокоррекции и геометрию на разных масштабах.

Как контролировали обобщение

Разбиения — по участникам; нормировки и преобразования обучались только внутри train. Проверяли разрыв NLL между train и validation, корреляции признаков и близость генераций к обучающим примерам.

Повторные проверки помогали выбирать модель. Они не являются независимым финальным тестом или доказательством человеческого реализма.

03 · Нажатия клавиш

Ритм с памятью предыдущих нажатий

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

01

Контекст строки

Преобразует строку в числовые признаки: каждая клавиша получает информацию о соседних символах.

Преобразует строку в числовые признаки: каждая клавиша получает информацию о соседних символах.

02

Память ритма

Учитывает предыдущие удержания и интервалы, чтобы сохранять ритм набора на протяжении фразы.

Учитывает предыдущие удержания и интервалы, чтобы сохранять ритм набора на протяжении фразы.

03

Распределение времён

Определяет, сколько удерживать клавишу и когда нажимать следующую, с вариативностью между сгенерированными последовательностями.

Определяет, сколько удерживать клавишу и когда нажимать следующую, с вариативностью между сгенерированными последовательностями.

04

Как сеть обучается

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

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

От одной клавиши к последовательности

Модель создаёт связный ритм всей фразы: каждое новое удержание и интервал зависят от уже сгенерированных времён. Параметр вариативности управляет предсказуемостью последовательности.

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

Как выбирали модель

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

Сравнивал 14 характеристик: удержания, интервалы, паузы, перекрытия и связи между нажатиями. Выбранную модель дополнительно проверил на записях 248 новых участников.

Языки и границы применения

Ритм обучен на английской раскладке. Русские буквы сопоставляются с теми же физическими клавишами; Shift, смену языка и ввод других Unicode-символов добавляет планировщик.

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

04 · Результаты исследования

Исследование в цифрах

Полный цикл работы: от открытых данных и обучения моделей до API, многоязычного ввода и интерактивной демонстрации.

308 191
эпизод данных

7 открытых источников

19
кластеров данных

Паттерны движений и ритма печати

12 855
примеров движения мыши

Обучающая выборка · 82 участника

4 980
последовательностей печати

Обучающая выборка · 343 участника

14
итераций исследования мыши

От базовой модели к итоговому генератору

7
итераций исследования печати

Архитектура, память ритма и функции потерь

585 545
параметров генератора мыши

Траектория, коррекции и длительность

58 773
параметра генератора печати

Удержания, интервалы и зависимости

Подготовка данных

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

Два направления исследования

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

Готовая система

API возвращает траектории, клики и последовательности нажатий. Планировщик поддерживает EN/RU/Unicode, а интерактивная демонстрация наглядно показывает результат генерации.

Инженерный итог

Контекст

Исследовательский продукт для воспроизводимой симуляции ввода: от подготовки данных и обучения моделей до программного интерфейса и демонстрации результата.

  • Модели движения сравнивались на раздельных группах участников, а печать — дополнительно на новых людях из того же источника данных. Другие устройства и языки требуют отдельной проверки.
  • Готовый план объединяет нейронную генерацию и прикладные правила исполнения.
  • Результаты относятся к исследованным сценариям; интеграция в конкретную среду требует собственной проверки.

Подход

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

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

Выводы

  • Качество генерации нужно оценивать по совокупности результатов, а не одному показателю обучения.
  • Воспроизводимость и понятный интерфейс превращают отдельную ML-модель в проверяемый прикладной инструмент.

Продукты, системы и идеи, доведённые до работающего кода.