Google суттєво покращила Google Handwriting Input для клавіатури Gboard
Google значно покращила Google Handwriting Input для клавіатури Gboard
Google істотно покращила рукописне введення в Gboard за допомогою ІІ. Хоча ця функція користується небагатьма користувачами, все ж таки модуль Google Handwriting Input для клавіатури Gboard дозволяє набирати текст на мобільних пристроях за допомогою рукописного введення. Це корисно, наприклад, під час використання цифрового пера. На момент запуску у 2015 році функція працювала з 82 мовами, а за минулий рік їхня кількість перевищила сотню. Продовжуючи вдосконалювати розпізнавання рукописного тексту, найбільш помітний результат Google досягла за допомогою машинного навчання.
У початковому підході Google рядок розбивався на окремі письмові символи, кожен з яких асоціювався з кількома варіантами відповідних літер, а потім підбиралися найімовірніші слова. Тепер відбувається аналіз послідовності ключових точок з урахуванням тимчасових міток і штрихів між ними, яка потім нормалізується і перетворюється на кубічні криві Безьє. Цей процес декодування символів надає вступні дані для багатошарової рекурентної нейронної мережі (RNN). Експериментуючи з різними типами RNN, розробники Google зупинилися на квазірекурентних нейронних мережах (QRNN). Вони забезпечують кращі результати прогнозування, що стає можливим завдяки чергуванню згорткових та рекурентних шарів.
Рекурентна нейронна мережа створює матрицю, в якій кожен стовпець відповідає одній вхідній кривій, а кожен рядок відповідає букві в алфавіті. Стовпець для конкретної кривої можна розглядати як розподіл ймовірностей за всіма буквами алфавіту (яскравість осередку відповідає ступеню ймовірності). Однак кожна літера може складатися з кількох кривих. Наприклад, g та o на наведеному зображенні складаються з чотирьох і трьох кривих відповідно. Розпізнавач на основі QRNN перетворює послідовність кривих на послідовність ймовірностей символів. У матриці декодера зустрічаються в основному пробіли та яскраві точки для символів "g" та "o", в результаті чого виводиться текст "go".
Новий підхід дозволив суттєво на 20–40 % зменшити кількість помилок при розпізнаванні рукописного тексту. Але для забезпечення зручного користувача оточення недостатньо домогтися точної роботи, її потрібно зробити ще й швидкою. Тому розробники сконвертували навчені в TensorFlow моделі моделі TensorFlow Lite, вчетверо скоротивши навантаження, і досягли мінімальних затримок у клавіатурі Gboard при виконанні всіх завдань на самому мобільному пристрої.
