Обробка мови є дуже популярною областю машинного навчання. Існує значна потреба в перетворенні людської мови в текст і текст в мову. Це особливо важливо у зв’язку з розвитком догляду за собою в різних місцях: магазинах, транспорті, готелях і т.д. Машини замінюють все більше людської праці, і ці машини повинні вміти спілкуватися з нами, використовуючи нашу мову. Саме тому розпізнавання мови є перспективним і важливим напрямком штучного інтелекту і машинного навчання.

Сьогодні багато великих компаній надають API для виконання різних завдань машинного навчання. Розпізнавання мовлення не є винятком. Щоб використовувати ці API, вам не потрібно бути експертом з обробки природної мови. Вони, як правило, мають зручний інтерфейс. Все, що вам потрібно зробити, це відправити HTTP-запит з необхідним вмістом на сервер API. Тоді ви отримаєте відповідь з виконаними завданнями. Такий підхід корисний, коли вам не потрібно щось особливе. Іншими словами, якщо ваша проблема стандартна і відома. Ще однією перевагою цього методу є те, що ви можете заощадити цінні ресурси, такі як час і гроші.

Однак є багато ситуацій, коли ви не можете використовувати API і вам потрібно розробити систему розпізнавання мовлення з нуля. Цей метод досить складний, вимагає великих зусиль і ресурсів, але в результаті можна створити систему, яка буде ідеально сумісна з вашими потребами. Крім того, поліпшити якість результатів можна, якщо побудувати алгоритми самостійно. У будь-якому випадку, знати про API – це добре. Ви можете зрозуміти, на що здатний кожен API, які плюси і мінуси він має і так далі. Таким чином, ви зможете визначити, коли ви повинні використовувати API (і який API) і коли ви повинні думати про свою власну систему. У цій статті ми хочемо порівняти найпопулярніші API, які можуть працювати з людською мовою.

Є два основних завдання при обробці мови. По-перше, перетворення мови в текст. По-друге, перетворити текст в людську мову. Ось список деяких популярних API для обробки мовлення:

  • Google Cloud Speech API
  • Промова до тексту IBM Watson
  • Текст у мову IBM Watson
  • Microsoft Azure Bing Voice API
  • Amazon Transcribe
  • Амазонка Поллі

Є й інші менш відомі продукти, які можуть працювати з мовленням:

  • VoxSigma API
  • Розпізнавання мовлення Twilio
  • Speechmatics ASR
  • Nexmo Voice API

Ми опишемо загальні аспекти кожного API, а потім порівняємо їх основні функції в таблиці.

Google Cloud Speech API

Google Cloud Speech API є частиною інфраструктури Google Cloud. Це дозволяє перетворити людську мову в текст. Цей API підтримує понад 110 мов. Система підтримує налаштування у вигляді надання списку можливих слів для розпізнавання (це особливо корисно, якщо ви хочете використовувати розпізнавання мовлення на деяких пристроях або в інших ситуаціях, коли список можливих слів обмежений). API може працювати як в пакетному режимі, так і в режимі реального часу. Стійкий до бічних шумів у звучанні. Для деяких мов доступний невідповідний фільтр слів. Система побудована з використанням глибоких нейронних мереж і може бути вдосконалена з плином часу. Файли, які ви хочете обробити, можна безпосередньо завантажити в API або зберегти в Google Cloud Storage.

Ціна гнучка. Кожному користувачеві надається до 60 хвилин обробленого звуку безкоштовно. Якщо ви хочете обробити більше 60 хвилин, вам доведеться заплатити $ 0,006 за 15 секунд. Цікаво, що загальна щомісячна ємність обмежена 1 мільйоном хвилин аудіо.

IBM Watson

IBM Watson Speech to Text – це послуга, що надається IBM Watson, яка може перетворювати людську мову в текст. IBM Watson підтримує налаштування не тільки для конкретного словника слів, але і для конкретного акустичного стану. Таким чином, ви можете адаптувати систему до середовища, в якому плануєте її використовувати. Основним недоліком IBM Watson Speech to Text є дуже мала кількість підтримуваних мов. Крім того, спеціальні моделі доступні для ще меншої кількості мов. На даний момент такі функції, як виявлення ключових слів і маркування динаміків, доступні в бета-версії. У поєднанні з основною версією вона дозволяє ідентифікувати різних носіїв англійської, іспанської та японської мов. Визначення ключових слів дозволяє знаходити визначені користувачем рядки безпосередньо з мови. Інші корисні функції, доступні в IBM Watson Speech to Text, – це варіанти слів (у бета-версії), термін дії слів, мітки часу слів, фільтрація ненормативної лексики, розумне форматування для телефонних номерів, дат, валюти тощо (у бета-версії). У документації можна побачити підтримувані формати аудіофайлів.

Існує три рівні доступу до послуги. Стандартний рівень забезпечує вільний доступ до перших 1000 хвилин обробленого аудіо на місяць. Потім використовуються гнучкі ціни за хвилину. Вони залежать від кількості хвилин, які ви хочете обробити (поетапні багаторівневі ціни). Якщо ви збираєтеся використовувати моделі налаштування, вам доведеться заплатити $ 0,03 на додаток до стандартних цін рівня. Щоб використовувати рівень Premium, вам слід зв’язатися з IBM, щоб узгодити деталі.

Текст у мову IBM Watson

Подібно до завдання «синтез мовлення в текст», IBM Watson надає послугу для виконання завдання перетворення тексту в мову. IBM Watson Text to Speech інструмент робить велику роботу з цього.

Система виробляє високоякісні аудіофайли з введених текстів. Він може розпізнавати деякі скорочення і цифри. Наприклад, він може сказати “долари США”, коли він з’являється в тексті з абревіатурою “USD”. API може визначити тон пропозиції (наприклад, питання). Ви можете вибрати виразність свого голосу (GoodNews, Вибачення, Невизначеність). Також доступні молоді, м’які, чоловічі, жіночі голоси. Однак виразність і різні типи голосів все ще доступні тільки для англійської мови. Функція синхронізації слів дозволяє синхронізувати текстовий потік і голос. Сервіс може створювати аудіофайли в різних форматах. Докладніше про підтримувані формати можна дізнатися в документації.

Ціна залежить від рівня використання. Якщо вам потрібен рівень Premium, вам слід зв’язатися з IBM, щоб узгодити ціни та деталі використання. Якщо стандартний рівень достатній, умови такі: Перші 1 мільйон символів обробленого тексту на місяць безкоштовні. Якщо вам потрібно обробити більше символів, вам потрібно буде заплатити 0.02 доларів США за 1000 символів. Усі мови та голоси доступні на стандартному рівні.

Microsoft Azure Bing Voice API

Microsoft Azure Bing Speech API є компонентом хмарних служб Microsoft Azure, який дозволяє одночасно вирішувати два завдання: мовлення в текст і синтез мовлення.

Завдання мовлення мовлення в Azure Bing Speech API забезпечує обробку, конфігурацію, форматування тексту, фільтрацію ненормативної лексики та нормалізацію тексту в режимі реального часу. Він також підтримує різні сценарії (умови розмови), такі як інтерактивність, розмова або диктування. Інтеграція з Azure LUIS доступна. Azure LUIS дозволяє отримати наміри як з тексту, так і з основних сутностей.

Функція перетворення тексту в мову дозволяє регулювати різні параметри голосу: стать, гучність, висоту, вимову, швидкість мовлення, контур просодії. Система може ідентифікувати і обробляти деякі слова певним чином. Наприклад, він може розпізнати суму грошей, виражену в числі з плаваючою комою, і перетворити її в слова, які містять “центи”.

Цей API можна використовувати безкоштовно, якщо ви хочете виконувати до 5000 транзакцій на місяць. Якщо вам потрібно більше, ви повинні заплатити 4 долари за кожні 1000 транзакцій.

Amazon Transcribe

Amazon Transcribe є частиною інфраструктури веб-сервісів Amazon. Ви можете проаналізувати свої аудіодокументи, що зберігаються в Amazon S3, і отримати текст, зроблений зі звуку.

Amazon Transcribe може додати пунктуацію та форматування тексту. Ще однією цінною особливістю, що надається цією послугою, є аудіопідтримка телефонії. Це пов’язано з тим, що звук під час телефонних розмов часто неякісний. Так, розробники Amazon Transcribe вважали, що вони повинні обробляти цей тип аудіо певним чином. Система додає позначки часу для кожного слова в тексті. Таким чином, ви зможете зіставити кожне слово в тексті з відповідним місцем в аудіофайлі. Очікується, що API незабаром зможе розпізнавати кілька динаміків і позначати їх голоси в тексті. Створення власних слів також має бути доступне найближчим часом. Користувачі зможуть явно додавати, наприклад, назви своїх продуктів або якісь інші конкретні слова.

Рівень цін безкоштовний: користуватися послугою можна безкоштовно протягом перших 12 місяців після реєстрації (максимум 60 хвилин аудіо на місяць). Після закінчення цього періоду вам потрібно буде заплатити $ 0,0004 за секунду обробленого звуку.

Амазонка Поллі

Amazon Polly – це сервіс, який дозволяє конвертувати текст у мову як у пакетному, так і в реальному часі. Він також є частиною інфраструктури веб-сервісів Amazon.

Amazon Polly не тільки перетворює текст в мову, але і дозволяє налаштувати деякі налаштування мови. Наприклад, ви можете налаштувати різні голоси (стать), гучність, вимову, швидкість мовлення, висоту та деякі інші властивості.

Ціни гнучкі. Безкоштовний рівень доступний протягом перших 12 місяців, але ви зможете обробляти максимум 5 мільйонів символів на місяць. Альтернативою є модель Pay-As-You-Go. Вам доведеться заплатити 4 долари за 1 мільйон оброблених персонажів.

VoxSigma API

VoxSigma API для перетворення мови в текст є продуктом дослідження Vocapia. Ця компанія спеціалізується на мовних і мовних технологіях. Api VoxSigma може не тільки перетворювати вхідну мову в текст, але і виконувати ідентифікацію мови, вирівнювання мови і тексту. Ще однією цікавою особливістю API є те, що він може додавати розділові знаки до вихідного тексту і обчислювати оцінку дійсності вихідних даних. Крім того, API VoxSigma може обробляти числові та деякі інші об’єкти (наприклад, валюти) унікальним способом. Доступну мовну модель можна налаштувати, але для цього потрібно зв’язатися з компанією і поговорити з нею безпосередньо.

Компанія пропонує кілька планів використання. Найпопулярнішим методом є pay-as-you-go. Згідно з цим планом, вам доведеться заплатити $ 0,01 (або євро) за хвилину. Цікаво, що вони враховують тільки ті місця на вхідному аудіо, де є якась мова. Іншими словами, якщо у вашому вхідному звучанні є кілька тихих місць, тривалість цих місць буде віднімана при розрахунку загальної вартості. Також доступний безкоштовний пробний період, але для цього потрібно зв’язатися з компанією безпосередньо.

Розпізнавання мовлення Twilio

Розпізнавання мови Twilio доступне як компонент платформи Twilio Flex. Це API для контакт-центрів з можливістю програмування повного стека. Можливо, оскільки це не окрема програма, розпізнавання мовлення Twilio не пропонує стільки функцій, скільки деякі інші API розпізнавання мовлення. Він забезпечує режим в режимі реального часу та фільтрацію ненормативної лексики. Так, наприклад, можна виявити деякі слова з нецензурної лексики, а зірочки замінять все, крім першого символу. Це дійсно може бути корисно при використанні в контакт-центрах.

Послугою можна скористатися на умовах передоплати. Вам потрібно буде заплатити $ 0,02 за 15 секунд обробленого звуку.

Speechmatics ASR

Speechmatics ASR – це набір з декількох послуг, які забезпечують як пакетний, так і режим реального часу для перетворення мови в текст. Вони спеціалізуються на англійській мові, що дозволяє їм розпізнавати різні діалекти англійської мови по всьому світу. Однак доступно багато інших мов. Іншими корисними функціями, доступними в SPEECHMATICS ASR, є оцінки впевненості та інформація про час для кожного слова в транскрипції, а також надання інформації про межі речень.

Вартість користування хмарними сервісами становить £ 0,06 за 1 хвилину обробленого звуку. Якщо ви купуєте більше 1000 фунтів стерлінгів, ви можете отримати знижку та заплатити 0,05 фунта стерлінгів за хвилину.

Nexmo Voice API

Голосовий API Nexmo не є окремим API. Ви можете використовувати його для дзвінків. Наприклад, якщо ви хочете зателефонувати комусь, ви можете використовувати Nexmo Voice API для перетворення тексту в мовлення. Nexmo – це програмована комунікаційна компанія. Набір доступних функцій не дуже багатий. Включає в себе тільки здатність змінювати стать голосу (чоловічого або жіночого), а також змінювати акцент мови.

Ціни залежать від країни, в яку ви хочете зателефонувати, і вашого мобільного або стаціонарного телефону. Ціни здійснюються щохвилини.

Тепер ми порівняємо основні особливості цих API для кожного завдання, щоб ви могли вибрати, що відповідає вашим потребам.

Висновок

У цій статті ми проаналізували ключові характеристики різних API, які виконують завдання синтезу мовлення та мовлення в текст. Завдяки цим сучасним технологіям комунікація стає більш природною і продуктивною.

Щоб спростити процес вибору API, який би повністю задовольнив ваші потреби, ми склали таблицю, в якій виділяються найважливіші особливості таких API. Спираючись на наш досвід, всі ці API довели свою ефективність в різних умовах. Сподіваємося, що результати наших польових досліджень стануть вам в нагоді і заощадять ваш час.