Будь ласка, використовуйте цей ідентифікатор, щоб цитувати або посилатися на цей матеріал: https://er.chdtu.edu.ua/handle/ChSTU/5836
Назва: Побудова автономного голосового помічника на платформі Raspberry Pi
Автори: Палагін, Володимир Васильович
Пилипенко, Андрій Олександрович
Ключові слова: голосовий інтерфейс;розпізнавання та синтез мовлення;raspberry pi
Дата публікації: 2023
Короткий огляд (реферат): Мета роботи полягає у створенні та реалізації й оцінці розробки автономного голосового інтерфейсу на базі технології розпізнавання й синтезу мовлення на платформі Raspberry Pi. Об’єкт дослідження – побудова автономного голосового помічника на платформі Raspberry Pi. Методи дослідження – програмування мовою Python, аналіз і використання систем голосового розпізнавання, автономний голосовий помічник, Марківські приховані моделі. Розроблено програмне забезпечення голосового помічника на основі Raspberry Pi для керування надання довідки і керування пристроями. Проаналізовано відомі системи розпізнання мовлення для української мови. Розглянуті Марківські приховані моделі для розпізнавання мовлення. Створене рішення дозволяє підвищити зручність і доступність системи голосового керування і надання інформації за допомогою голосових команд.
URI (Уніфікований ідентифікатор ресурсу): https://er.chdtu.edu.ua/handle/ChSTU/5836
Розташовується у зібраннях:172 Електронні комунікації та радіотехніка (Радіотехніка та робототехнічні системи)

Файли цього матеріалу:
Файл Опис РозмірФормат 
М_172_Пилипенко_Палагін.pdf
  Restricted Access
1.84 MBAdobe PDFПереглянути/Відкрити    Запит копії


Усі матеріали в архіві електронних ресурсів захищено авторським правом, усі права збережено.

Extracted text
 
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ 
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ 
ФАКУЛЬТЕТ ЕЛЕКТРОННИХ ТЕХНОЛОГІЙ АВТОТРАНСПОРТУ ТА 
МАШИНОБУДУВАННЯ 
КАФЕДРА РОБОТОТЕХНІЧНИХ І ТЕЛЕКОМУНІКАЦІЙНИХ СИСТЕМ ТА 
КІБЕРБЕЗПЕКИ 
 
 
 
До захисту допущено  
завідувач кафедри РТСК 
д.т.н., професор  
_______________ В.В. Палагін  
"_____" _____________ 2023 року 
 
 
Пояснювальна записка 
до дипломного проекту (роботи) 
  магістра   
 
(освітньо-кваліфікаційний рівень) 
на тему Побудова автономного голосового помічника на платформі 
Raspberry Pi 
 
Виконав: студент  2  курсу, групи    РТ-025  
напряму підготовки (спеціальності)  
172 – телекомунікації та радіотехніка  
                       (шифр і назва напряму підготовки, спеціальності) 
 
   ПилипенкоА.О.  
(прізвище та ініціали) 
Керівник   Палагін В.В.  
(прізвище та ініціали) 
Рецензент   Гальченко В.Я.  
(прізвище та ініціали) 
 
 
 
 
Черкаси – 2023 року 
Форма № Н-9.01 
 
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ 
Факультет  електронних технологій і робототехніки  
Кафедра     робототехнічних і телекомунікаційних систем та кібербезпеки  
Освітньо-кваліфікаційний рівень  бакалавр  
Спеціальність  172 – телекомунікації та радіотехніка   
 
 
 
 
 
ЗАТВЕРДЖУЮ 
Завідувач кафедри  В.В. Палагін 
“_____” ___________________ 2023 року 
 
 
 
ЗАВДАННЯ 
НА ВИПУСКНУ РОБОТУ СТУДЕНТУ 
 
    Пилипенка Андрія Олександровича    
 (прізвище, ім’я, по батькові) 
1. Тема проекту (роботи) Побудова автономного голосового помічника на платформі 
Raspberry Pi  
керівник проекту (роботи)         Палагін Володимир Васильович    
(прізвище, ім’я, по батькові, науковий ступінь, вчене звання) 
затверджені наказом вищого навчального закладу від «__» лютого 2023 року № __/__ 
 
2. Термін здачі студентом закінченої роботи  “ 20 ”      грудня    2023 року 
 
3. Вихідні дані до роботи: Система розумного автономного голосового помічника  з 
використанням платформи Raspberry Pi. Можливість автономнорї роботи.. 
Використання новітніх програмних рішень       
              
 
4. Зміст розрахунково-пояснювальної записки (перелік питань, що їх належить розробити) 
Огляд літератури. постановка задачі; Огляд математичних моделей та алгоритмів, що 
застосовуються у сучасних системах розпізнавання та обробки мовних сигналів; 
Розробка та комп’ютерне моделювання в середовищі Python голосового помічника; 
Практичне тестування голосового помічника, Додатки.     
    
 
5.  Перелік графічного матеріалу (з точним зазначенням обов’язкових креслень, плакатів)  
1. Схема структурна пристрою; 2. Схема функціональна пристрою;    
               
 
6. Дата видачі завдання       лютого 2023 року  
  
КАЛЕНДАРНИЙ ПЛАН 
 
№ Назва етапів дипломного проекту  Термін  
з/п (роботи)  виконання етапів Примітка  
проекту (роботи) 
1. Аналіз технічного завдання та   
 пошук літератури 11.07.23 – 18.07.23  
2. Аналіз методів побудови   
 пристрою 19.08.23 – 04.08.23  
3. Побудова та обґрунтування   
 схеми функціональної пристрою 05.09.23 – 24.09.23  
4. Побудова та обґрунтування   
 схеми структурної пристрою 25.10.23 – 06.10.23  
5. Побудова та обґрунтування   
 Програмної частини пристрою 07.10.23 – 30.11.23  
6. Оформлення пояснювальної записки 16.11.23 – 10.12.23  
7. Оформлення плакатів 11.12.23– 15.12.23  
 
 
 
Студент        Пилипенко А.О.  
 ( підпис ) (прізвище та ініціали) 
 
Керівник проекту (роботи)  Палагін В.В.  
 ( підпис ) (прізвище та ініціали) 
 
 
 
Зміст 
Вступ............................................................................................................... 5 
РОЗДІЛ 1 ОГЛЯД ЛІТЕРАТУРИ. ПОСТАНОВКА ЗАДАЧІ ................... 7 
1.1 Концепція “Голосовий помічник” ......................................................... 7 
1.2 Аналіз існуючих готових систем ........................................................... 8 
1.3 Аналіз можливості реалізації роботи без мережі .............................. 15 
1.4 Основні проблеми розпізнавання мовлення ...................................... 16 
1.5 Висновок до розділу ............................................................................. 18 
РОЗДІЛ 2 ОГЛЯД МАТЕМАТИЧНИХ МОДЕЛЕЙ ТА АЛГОРИТМІВ, 
ЩО ЗАСТОСОВУЮТЬСЯ У СУЧАСНИХ СИСТЕМАХ 
РОЗПІЗНАВАННЯ ТА ОБРОБКИ МОВНИХ СИГНАЛІВ .................... 19 
2.1 Перетворення мови з аналогової у цифрову ...................................... 19 
2.2 Фонеми - будівельні блоки розпізнавання мови ................................ 26 
2.3 Основні методи, що використовуються в системах автоматичного 
розпізнавання мовлення ............................................................................. 29 
2.4 Прихована Марковська модель розпізнавання мови ........................ 29 
2.5 Гнучкість нейронних мереж у розпізнаванні мови ........................... 33 
2.6 Поєднання статистики та штучного інтелекту для аналізу мови .... 37 
2.7 Висновок до розділу ............................................................................. 38 
РОЗДІЛ 3 РОЗРОБКА ТА КОМП’ЮТЕРНЕ МОДЕЛЮВАННЯ В 
СЕРЕДОВИЩІ PYTHON ГОЛОСОВОГО ПОМІЧНИКА ..................... 40 
3.1 Вибір апаратної платформи ................................................................. 40 
3.2 Програмне виконання ........................................................................ 48 
  
РТ025.023282.001 ПЗ 
Змн. Арк. № докум. Підпис Дата 
 Розроб. Пилипенко А.О. Побудова автономного Літ. Арк. Акрушів 
 Перевір. Палагін В.В. 
 Реценз. Гальченко В.Я. голосового помічника 3 75 
 Н. Контр. Палагін В.В. на платформі ЧДТУ 
 Затверд.  Raspberry Pi 
 
3.3 Аналізуємо системи Speech-to-text. ..................................................... 54 
3.4 Вибір системи Text-to-speech ............................................................... 56 
3.5 Побудова системи Speech-to-speech .................................................... 58 
3.6 Висновок до розділу ............................................................................. 65 
РОЗДІЛ 4  ПРАКТИЧНЕ ТЕСТУВАННЯ ГОЛОСОВОГО 
ПОМІЧНИКА .............................................................................................. 67 
4.1 Тестування розпізнавання мовлення ................................................... 67 
4.2 Тестування в реальних умовах: шум, музика тощо ........................... 68 
4.3 Вимірювання продуктивності .............................................................. 69 
4.4 Оптимізація для покращення швидкодії ............................................ 72 
Висновок ...................................................................................................... 74 
Список використаних джерел .................................................................... 75 
 
 
  
Арк. 
РТ025.023282.001 ПЗ 4 
Змн. Арк. № докум. Підпис Дата 
 
Вступ 
Тема "Автономний голосовий помічник на платформі Raspberry Pi" 
залишається актуальною і цікавою навіть на сьогоднішній день. Raspberry Pi 
зберігає свою популярність як доступна, потужна та гнучка платформа для 
розробки і прототипування різноманітних проектів, включаючи голосові 
системи. 
Створення автономного голосового помічника на базі Raspberry Pi включає в 
себе використання різноманітних методів та інструментів, таких як мовні 
моделі для розпізнавання мови, синтез голосу, інтеграція зі звуковим 
обладнанням та іншими API для роботи з голосовими командами. 
З огляду на постійний розвиток технологій у сфері штучного інтелекту та 
обробки природної мови, створення голосових помічників на Raspberry Pi 
залишається цікавою та перспективною галуззю для досліджень, особливо з 
урахуванням можливостей управління домашніми пристроями, автоматизації 
та інших сфер життя. 
Мета дослідження: Розробка та вдосконалення автономного голосового 
помічника на платформі Raspberry Pi з використанням штучного інтелекту та 
технологій обробки природної мови. 
Завдання дослідження можуть включати: 
1. Аналіз можливостей Raspberry Pi: Оцінка характеристик пристрою, 
його потужності та можливостей для реалізації голосового помічника. 
2. Вибір та розробка мовних моделей: Розробка або вибір оптимальних 
мовних моделей для розпізнавання мови та синтезу голосу. 
3. Створення інтерфейсу користувача: Розробка інтерфейсу для 
взаємодії з голосовим помічником, включаючи розпізнавання команд 
користувача та відтворення відповідей. 
Арк. 
РТ025.023282.001 ПЗ 5 
Змн. Арк. № докум. Підпис Дата 
 
4. Інтеграція з API та сервісами: Підключення до сервісів обробки мови 
(наприклад, Google Assistant SDK, Amazon Alexa Voice Service) або 
створення власних сервісів для роботи з голосовими командами. 
5. Оптимізація та тестування: Покращення продуктивності та точності 
системи, тестування з різними вхідними командами та у різних умовах. 
6. Документування результатів: Формування звіту про дослідження, 
опис реалізованої системи та її можливостей, а також рекомендації для 
подальших покращень. 
Ці завдання дозволять зосередитися на розробці та вдосконаленні 
автономного голосового помічника на основі Raspberry Pi, використовуючи 
передові технології у сфері штучного інтелекту та голосового управління. 
 
  
Арк. 
РТ025.023282.001 ПЗ 6 
Змн. Арк. № докум. Підпис Дата 
 
РОЗДІЛ 1 
ОГЛЯД ЛІТЕРАТУРИ. ПОСТАНОВКА ЗАДАЧІ 
 
1.1 Концепція “Голосовий помічник” 
 
Концепція голосового помічника полягає у використанні штучного 
інтелекту та обробки природної мови для створення інтерактивного 
інтерфейсу між користувачами та пристроями чи послугами. Це дозволяє 
користувачам взаємодіяти з технологіями за допомогою голосових команд або 
мови, а не традиційних методів введення, таких як друк або клацання. 
Голосові помічники використовують алгоритми машинного навчання 
для розуміння та інтерпретації розмовної мови, що дозволяє їм виконувати 
завдання, надавати інформацію або керувати різними функціями в пристроях 
або додатках. Вони призначені для розуміння широкого спектру команд, 
запитань чи прохань і відповідного реагування. 
Ці асистенти набули величезної популярності завдяки своїй зручності 
та доступності. Вони можуть виконувати безліч завдань, зокрема 
встановлювати нагадування, повідомляти прогноз погоди, відтворювати 
музику, керувати пристроями розумного будинку, шукати інформацію в 
інтернеті та багато іншого. 
Найбільші технологічні компанії, такі як Apple (з Siri), Amazon (з 
Alexa), Google (з Google Assistant) і Microsoft (з Cortana), розробили свої 
версії голосових помічників, які інтегровані в різні пристрої, такі як 
смартфони, смарт-колонки, автомобілі і навіть побутову техніку. 
Постійний розвиток штучного інтелекту, машинного навчання та 
обробки природної мови постійно розширює можливості голосових 
помічників, дозволяючи точніше розпізнавати мову, краще розуміти контекст 
і розширювати функціональність відповідно до потреб та вподобань 
користувачів. 
 
Арк. 
РТ025.023282.001 ПЗ 7 
Змн. Арк. № докум. Підпис Дата 
 
 
1.2 Аналіз існуючих готових систем 
 
У сучасному світі, де технології розвиваються зі швидкістю світла, 
голосові асистенти стають ключовим інтерфейсом між користувачами та 
їхніми пристроями. Ці інноваційні системи відкривають двері до нових 
способів взаємодії з технологією, простоти управління, та розширюють 
можливості щоденних завдань. 
У даному аналізі розглянемо основні готові системи голосових 
асистентів, відзначаючи їхні переваги, недоліки та ключові характеристики. 
Зробимо глибше порівняння популярних платформ, таких як Amazon Alexa, 
Google Assistant, Apple Siri, та Microsoft Cortana, щоб зрозуміти їхні 
можливості та обмеження. 
Розглянемо комерційні голосові помічники. 
Google Assistant - це голосовий помічник, розроблений компанією 
Google, який працює на різних платформах, таких як смартфони, планшети, 
годинники, а також на різних розумних пристроях, включаючи домашні 
асистенти. 
 
Основні функції: 
 
1. Розпізнавання мовлення: Google Assistant вміє розпізнавати природну 
мову користувачів та виконує команди або відповідає на запитання. 
2. Інтеграція з Google Ecosystem: Він відмінно інтегрований з іншими 
сервісами Google, такими як календар, електронна пошта, Google Maps 
тощо. 
3. Широкий функціонал: Здатний виконувати різні завдання - від надання 
інформації до керування пристроями вдома, створення нагадувань, 
відтворення музики тощо. 
 
Арк. 
РТ025.023282.001 ПЗ 8 
Змн. Арк. № докум. Підпис Дата 
 
4. Контекстуальне розуміння: Має здатність розуміти контекст запитань, 
що дозволяє користувачам задавати послідовні запити без повторного 
уточнення контексту. 
5. Доступність на різних пристроях: Google Assistant доступний на різних 
пристроях, включаючи Android-смартфони, iOS-пристрої та різні 
розумні пристрої. 
 
Переваги: 
 
1. Широкий функціонал: Має великий спектр можливостей та добре 
інтегрований з екосистемою Google. 
2. Розпізнавання мовлення: Добре розпізнає мовлення та може 
працювати з різними акцентами та мовами. 
3. Зв'язок з іншими додатками: Має можливість взаємодіяти з 
багатьма сторонніми додатками. 
 
Недоліки: 
 
1. Приватність даних: Є питання щодо приватності та збереження 
персональних даних. 
2. Обмеженість в екосистемі Google: Деякі функції можуть бути 
обмежені, якщо ви використовуєте його поза екосистемою 
Google. 
 
Google Assistant постійно розвивається, отримуючи оновлення, які 
покращують його функціональність та забезпечують кращу взаємодію з 
користувачами. 
 
Арк. 
РТ025.023282.001 ПЗ 9 
Змн. Арк. № докум. Підпис Дата 
 
Apple Siri - це голосовий помічник, розроблений компанією Apple, який 
доступний на різних пристроях цієї компанії, таких як iPhone, iPad, Mac, 
Apple Watch та інші. 
 
Основні функції: 
 
1. Розпізнавання мовлення: Siri розпізнає мовлення користувачів і 
виконує команди або відповідає на запитання. 
2. Інтеграція з Apple Ecosystem: Це один із ключових компонентів 
екосистеми Apple, і він відмінно інтегрований з іншими 
сервісами Apple, такими як Календар, Повідомлення, Музика 
тощо. 
3. Керування пристроями: Siri може керувати різними функціями на 
пристроях Apple, включаючи виконання завдань безпосередньо 
на пристрої. 
4. Розуміння контексту: Має здатність розуміти контекст запитань, 
що дозволяє користувачам вести більш натуральну розмову. 
5. Персоналізація: Siri може працювати на основі контексту та 
персональних відомостей користувача для кращого розуміння 
запитів. 
 
Переваги: 
 
1. Глибока інтеграція з Apple Devices: Інтегрований з усіма пристроями 
Apple, що дозволяє йому керувати більшістю функцій на цих 
пристроях. 
2. -Розпізнавання мовлення: Ефективно розпізнає мовлення та може 
працювати з різними акцентами та мовами. 
3. Контекстуальне розуміння: Добре розуміє контекст розмови та може 
запитувати уточнення. 
Арк. 
РТ025.023282.001 ПЗ 10 
Змн. Арк. № докум. Підпис Дата 
 
 
Недоліки: 
 
1. Обмежена функціональність порівняно з конкурентами: У деяких 
аспектах функціоналість Siri може бути обмежена порівняно з іншими 
голосовими асистентами. 
2. Менша гнучкість зі сторонніми додатками: Є обмеження в роботі зі 
сторонніми додатками порівняно з деякими конкурентами. 
 
Siri продовжує розвиватися, отримуючи оновлення, які покращують 
його функціональність та забезпечують кращу взаємодію з користувачами. 
 
Amazon Alexa - це голосовий помічник, розроблений компанією 
Amazon, який доступний на різних пристроях, таких як розумні динаміки, 
пристрої Echo, Fire TV, а також у додатку Alexa на смартфонах. 
 
Основні функції: 
 
1. Голосове керування: Alexa виконує різноманітні завдання за 
допомогою голосових команд, від відтворення музики до керування 
побутовою технікою. 
2. Управління розумними пристроями: Може керувати різними 
розумними пристроями у вашому домі, такими як освітлення, 
термостати, камери тощо. 
3. Доступ до інформації: Надає інформацію про погоду, новини, 
результати спортивних змагань та інше. 
4. Навички (Skills): Має можливість встановлювати додаткові навички, 
що розширюють його функціональність за допомогою додатків в 
навичках Alexa. 
Арк. 
РТ025.023282.001 ПЗ 11 
Змн. Арк. № докум. Підпис Дата 
 
5. Широкі можливості інтеграції: Інтегрується з багатьма сервісами та 
пристроями сторонніх розробників. 
 
Переваги: 
 
1. Широкий функціонал: Має великий спектр можливостей та добре 
інтегрований з екосистемою Amazon. 
2. Управління розумними пристроями: Добре працює з широким 
спектром розумних пристроїв. 
3. Широкі можливості інтеграції: Інтегрується з багатьма сторонніми 
сервісами та пристроями. 
 
Недоліки: 
 
1. Залежність від Інтернет-з'єднання: Часто потребує постійного 
підключення до Інтернету для коректної роботи. 
2. Обмеженість в деяких регіонах: Деякі функції можуть бути обмежені у 
деяких регіонах. 
 
Amazon Alexa постійно розвивається, отримуючи оновлення, які 
покращують його функціональність та забезпечують кращу взаємодію з 
користувачами. 
 
Розглянемо Голосові помічники з відкритим кодом. 
Rhasspy - це проєкт, який створено для створення голосових 
інтерфейсів з відкритим кодом для розумних домів та інших додатків. Цей 
проєкт спрямований на забезпечення простого використання 
інтелектуального голосового керування, зберігаючи приватність користувача 
та дозволяючи контролювати дані. 
 
Арк. 
РТ025.023282.001 ПЗ 12 
Змн. Арк. № докум. Підпис Дата 
 
Основні риси Rhasspy: 
 
1. Відкритий код: Rhasspy розроблено з використанням відкритих 
технологій, що дозволяє розробникам вносити власні зміни та 
розширювати функціонал. 
2. Локальне розпізнавання мовлення: Основний акцент робиться на 
локальному розпізнаванні мовлення, що дозволяє забезпечити 
приватність користувача, оскільки дані не відправляються на зовнішні 
сервери. 
3. Широкі можливості інтеграції: Rhasspy може інтегруватися з різними 
системами, такими як Home Assistant, для керування різними 
пристроями вдома. 
4. Підтримка різних мов: Проєкт підтримує різні мови, що дає змогу 
користувачам використовувати голосовий інтерфейс на мові, яка їм 
найбільш зручна. 
 
Rhasspy надає можливість створення голосових інтерфейсів з 
використанням відкритих технологій, що дозволяє створювати приватні та 
персоналізовані рішення для голосового керування. 
 
OpenAssistant - помічник із відкритим вихідним кодом на основі 
штучного інтелекту (ШІ), який розуміє задачі, може взаємодіяти зі 
сторонніми системами та динамічно витягувати інформацію для цього. 
Проєкт розроблений LAION та ентузіастами по всьому світу. Одна з цілей 
розробки включає вільний доступ до великих мовних моделей, які можна 
запускати локально на споживчому обладнанні. 
Проєкт підтримується краудсорсингом, у якому беруть участь понад 13 
500 добровольців, вони створили датасет із 600 000 повідомлень 
 
Арк. 
РТ025.023282.001 ПЗ 13 
Змн. Арк. № докум. Підпис Дата 
 
Mycroft - це проєкт зі створення голосового асистента з відкритим 
кодом, який пропонує гнучкість, приватність та можливість розширення 
через навички (skills). Цей асистент розробляється на базі відкритого 
програмного забезпечення та активно використовується спільнотою 
розробників. 
 
Основні характеристики Mycroft: 
 
1. Відкритий код: Весь код Mycroft є відкритим і доступним для 
спільноти розробників для сприяння розвитку та покращення системи. 
2. Приватність та безпека: Mycroft ставить особливий акцент на 
приватність даних, дозволяючи користувачам контролювати, як їхні 
дані використовуються. 
3. Навички (skills): Він має систему навичок, що дозволяє розширювати 
його функціонал через додаткові модулі, що розробляються 
спільнотою. 
4. Робота на різних пристроях: Mycroft може працювати на різних 
пристроях, від спеціалізованих голосових асистентів до персональних 
комп'ютерів. 
5. Мовна розпізнавання: Підтримує різні мови та мовні моделі, що 
дозволяє користувачам використовувати його на різних мовах. 
 
Mycroft надає спільноті можливість створювати голосового асистента 
за відкритими стандартами, що дозволяє розширювати функціональність та 
працювати над розвитком цієї технології. 
Також існують безліч інших проектів голосового помічника з відкритим 
кодом 
 
 
 
Арк. 
РТ025.023282.001 ПЗ 14 
Змн. Арк. № докум. Підпис Дата 
 
1.3 Аналіз можливості реалізації роботи без мережі 
 
Багато голосових асистентів, особливо ті, що засновані на великих 
обчислювальних мережах для розпізнавання мовлення, переважно працюють 
в мережі Інтернет. Однак можна розглянути можливості роботи голосових 
асистентів без прямого підключення до мережі: 
 
1. Локальне розпізнавання мовлення: Деякі системи, такі як Mycroft і 
Rhasspy, надають можливість локального розпізнавання мовлення, що 
означає, що обробка голосу відбувається безпосередньо на пристрої. 
Це забезпечує приватність даних та можливість роботи без Інтернет-
з'єднання. 
2. Локальні обчислення: Деякі базові функції асистента можуть бути 
виконані локально, навіть якщо потрібний Інтернет для доступу до 
більш складних операцій або новин. 
 
3. Кешування даних: Голосовий асистент може кешувати певну 
інформацію для подальшого використання в офлайн-режимі, 
наприклад, нагадування, замітки або певні запити користувача. 
 
4. Обмежена функціональність: Без доступу до Інтернету можуть бути 
обмежені складні операції, отримання актуальних новин, переклади 
або інші завдання, які вимагають актуальної інформації з мережі. 
 
Реалізація роботи голосового асистента без мережі має свої обмеження, 
особливо щодо складних завдань та актуальності інформації. Однак, це 
можливо і буде в нагоді коли немає світла або інтернету 
 
 
Арк. 
РТ025.023282.001 ПЗ 15 
Змн. Арк. № докум. Підпис Дата 
 
1.4 Основні проблеми розпізнавання мовлення 
 
Основні проблеми розпізнавання мовлення можна поділити на дві 
категорії: 
 
1. Проблеми, пов'язані з акустичною обробкою мовлення 
2. Проблеми, пов'язані з мовною обробкою мовлення 
 
Проблеми, пов'язані з акустичною обробкою мовлення: 
 
1. Шум - шум є однією з найпоширеніших проблем розпізнавання 
мовлення. Шум може бути присутнім на аудіозаписі з різних 
джерел, таких як фоновий шум, шум від мікрофона або шум від 
оточуючих людей. Шум може призвести до того, що система 
розпізнавання мовлення не зможе правильно розпізнати 
мовлення. 
2. Різниця в вимові - люди можуть вимовляти одні й ті ж слова по-
різному. Це може бути пов'язано з різними діалектами, акцентами 
або просто індивідуальними особливостями вимови. Різниця в 
вимові може призвести до того, що система розпізнавання 
мовлення не зможе правильно розпізнати мовлення. 
3. Непослідовність мовлення - люди не завжди говорять чітко і 
послідовно. Вони можуть говорити швидко, повільно, шепотіти, 
перебивати себе або говорити неповними реченнями. 
Непослідовність мовлення може призвести до того, що система 
розпізнавання мовлення не зможе правильно розпізнати 
мовлення. 
 
Проблеми, пов'язані з мовною обробкою мовлення: 
 
Арк. 
РТ025.023282.001 ПЗ 16 
Змн. Арк. № докум. Підпис Дата 
 
1. Неточність словника - словник, який використовується для 
розпізнавання мовлення, може містити неточності. Це може 
призвести до того, що система розпізнавання мовлення не зможе 
розпізнати правильно вимовлені слова. 
2. Неповнота мовної моделі - мовна модель, яка використовується 
для розпізнавання мовлення, може бути неповною. Це може 
призвести до того, що система розпізнавання мовлення не зможе 
розпізнати нові або незвичайні слова. 
3. Невідповідність контексту - значення слова може змінюватися в 
залежності від контексту. Це може призвести до того, що система 
розпізнавання мовлення не зможе правильно розпізнати слово, 
яке не знаходиться в контексті. 
 
Розв'язання проблем розпізнавання мовлення 
 
Для вирішення проблем розпізнавання мовлення розробники систем 
розпізнавання мовлення використовують різні методи, такі як: 
 
1. Використання шумозаглушення - шумозаглушення - це метод, 
який дозволяє усунути шум з аудіозапису. 
2. Вирівнювання мовлення - вирівнювання мовлення - це метод, 
який дозволяє привести мовлення до єдиного стандарту. 
3. Розподіл мовлення - розподіл мовлення - це метод, який дозволяє 
розділити мовлення на сегменти. 
4. Використання великих мовних моделей - великі мовні моделі - це 
моделі машинного навчання, які можуть навчатися на великих 
наборах даних. Великі мовні моделі можуть використовуватися 
для підвищення точності розпізнавання мовлення. 
 
Арк. 
РТ025.023282.001 ПЗ 17 
Змн. Арк. № докум. Підпис Дата 
 
1.5 Висновок до розділу 
 
Отже, в аналізі голосових асистентів з відкритим кодом, таких як 
Mycroft, Rhasspy, та інші, було виявлено, що ці проекти пропонують рішення 
з використанням відкритих технологій. Вони надають можливість 
розширення та персоналізації, зокрема, завдяки локальному розпізнаванню 
мовлення та роботі без прямого підключення до мережі. 
У той же час, прирівнюючи їх до великих комерційних голосових 
асистентів, таких як Siri, Google Assistant, та Alexa, можна зазначити, що 
відкриті проєкти поки що мають обмежену функціональність та меншу 
інтеграцію з широким спектром сервісів. 
Однак всі вище наведені системи нам не підходять, так як планується 
використання платформи raspberry pi потрібно провести підбір на більш 
низькому рівні. А саме створення своєї моделі з вибором найкращих для 
даної платформи бібліотек (TTS, STT, інші) і найкращих моделей. 
  
Арк. 
РТ025.023282.001 ПЗ 18 
Змн. Арк. № докум. Підпис Дата 
 
РОЗДІЛ 2 
ОГЛЯД МАТЕМАТИЧНИХ МОДЕЛЕЙ ТА АЛГОРИТМІВ, ЩО 
ЗАСТОСОВУЮТЬСЯ У СУЧАСНИХ СИСТЕМАХ РОЗПІЗНАВАННЯ 
ТА ОБРОБКИ МОВНИХ СИГНАЛІВ 
 
2.1 Перетворення мови з аналогової у цифрову 
 
Аналогові сигнали, які представляють записане мовлення, не можуть 
бути безпосередньо оброблені системою розпізнавання мовлення. Тому перед 
обробкою звуку необхідно перевести його в цифровий формат. Цей процес 
називається попередньою обробкою. 
Аналогові сигнали - це сигнали, які змінюються у часі безперервно. 
Цифрові сигнали - це сигнали, які представляють дані у вигляді 
послідовності цифр. 
 
 
Рис.2.1. аналоговий сигнал синусоїда 
 
Попередня обробка - це етап розпізнавання мовлення, на якому 
аналогові сигнали перетворюються в цифрові. 
 
Арк. 
РТ025.023282.001 ПЗ 19 
Змн. Арк. № докум. Підпис Дата 
 
Мовленнєвий сигнал має безперервну природу, оскільки звукова хвиля 
безперервно змінюється в часі. Для оцифровування такого аналогового 
сигналу використовується амплітудно-імпульсна модуляція з наступною 
дискретизацією за часом та квантуванням за рівнем. 
Дискретизація полягає у відборі амплітуд сигналу через рівні проміжки 
часу, які називаються інтервалом дискретизації. Відповідно до теореми 
Котельникова, частота дискретизації має бути щонайменше вдвічі вищою за 
смугу частот корисного сигналу. Для мови це 8-10 кГц. 
 
 
Рис.2.2. Дискретизований сигнал синусоїда 
 
Квантування передбачає заміну дійсних значень від квантованої 
напруги на наближені сходинки. Кількість градацій визначає кількість бітів, 
якими кодується кожне відлік. Для мови зазвичай використовують 8-16 біт. 
  
Арк. 
РТ025.023282.001 ПЗ 20 
Змн. Арк. № докум. Підпис Дата 
 
 
 
Рис.2.3. Квантований сигнал синусоїди 
 
Отримана таким чином послідовність дискретних відліків амплітуди є 
цифровим представленням початкового аналогового сигналу. Подальша 
обробка та аналіз здійснюється цифровими сигнальними процесорами або за 
допомогою програмного забезпечення. 
 
 
Рис.2.4. цифровий сигнал синусоїди 
Арк. 
РТ025.023282.001 ПЗ 21 
Змн. Арк. № докум. Підпис Дата 
 
Після оцифрування за допомогою дискретизації та квантування, мовний 
сигнал можна проаналізувати в частотній області за допомогою перетворення 
Фур'є. 
Це інтегральне перетворення дозволяє розкласти довільний 
періодичний сигнал на складові у вигляді суми гармонійних коливань різної 
частоти й амплітуди. Кожен з цих гармонійних складових має свою амплітуду 
і початкову фазу. 
Застосовуючи дискретне перетворення Фур'є до оцифрованого 
фрагменту мовлення, можна отримати амплітудно-частотний спектр - 
залежність амплітуд гармонік від їх частот. 
Далі проводимо Кепстральний аналіз. Термін "кепстр" (cepstrum) є 
оберненим спектром логарифма спектра. Кепстральний аналіз використовує 
цю трансформацію для отримання нового сигналу, який може допомогти у 
виділенні характеристик сигналу, пов'язаних з періодичністю та модуляцією 
звукових хвиль. Кепстральний аналіз часто використовується для виділення 
формант (акустичні елементи мовлення, які відповідають резонансним 
частотам порожнин рота та гортані) та інших особливостей мовлення. 
 
Етапи кепстрального аналізу: 
Формування спектру: Спочатку отримується спектр аудіосигналу 
шляхом використання FFT (швидкого перетворення Фур'є). 
 
Арк. 
РТ025.023282.001 ПЗ 22 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.2.5. FFT (швидке перетворення Фур'є) 
 
Логарифмування спектру: Логарифмується амплітудний спектр. Це 
робить високі частоти менш впливовими та робить спектр більш стабільним. 
Обернене Фур'є-перетворення логарифму спектру: Це крок 
відбувається, щоб отримати кепстр. 
 
Арк. 
РТ025.023282.001 ПЗ 23 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.2.6. Фур'є-перетворення, Логарифмування спектру і отримання 
кепстру 
 
Застосування віконної функції та фільтрація: Деякі методи 
кепстрального аналізу можуть застосовувати фільтрацію або віконні функції 
для покращення характеристик отриманого кепстру. 
Аналізуючи й порівнюючи такі спектри різних фрагментів мовлення, 
можна з достатньо великою ймовірністю ідентифікувати окремі фонеми і 
таким чином розпізнавати окремі звуки та слова. 
 
 
Арк. 
РТ025.023282.001 ПЗ 24 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.2.7. Спектр і кепстр 
 
Отже, швидке перетворення Фур'є дає можливість перейти від аналізу 
сигналу в часовій області до аналізу його частотних характеристик. Це 
дозволяє ефективно аналізувати та класифікувати мовні сигнали, що є 
важливою складовою систем автоматичного розпізнавання та синтезу 
мовлення. 
І для подальшого аналізу отриманого кепстра застосовується такі 
підходи: 
1. класифікація за допомогою алгоритмів машинного навчання 
2. застосування прихованих Марківських моделей (HMM) 
3. Використання темплейтів або порівняння 
Ці підходи дадуть можливість визначити фонеми які є основою для 
розпізнавання мови. 
Також аналогом кепстра є  
MFCC (англ. Mel Frequency Cepstrum Coefficients) - мел-кепстральні 
коефіцієнти - це ознаки, які широко використовуються в задачах 
розпізнавання та синтезу мовлення. 
 
Основні етапи обчислення MFCC: 
 
Арк. 
РТ025.023282.001 ПЗ 25 
Змн. Арк. № докум. Підпис Дата 
 
1. Виконується спектральний аналіз вхідного сигналу з використанням 
віконної функції (наприклад Хеммінга). 
2. Береться логарифм спектру потужності. 
3. Спектр проектується на мел-частотну шкалу за допомогою фільтрів. 
Мел-шкала моделює особливості сприйняття частот людським вухом. 
4. Виконується дискретне косинусне перетворення (ДКП, англ. DCT), в 
результаті якого і отримуються MFCC коефіцієнти. 
 
Таке перетворення дозволяє ефективно виділити характеристики 
мовного сигналу (тембри звуків), найбільш важливі для розпізнавання мови. 
MFCC є компактним і інформативним описом аудіо сигналу. 
 
2.2 Фонеми - будівельні блоки розпізнавання мови 
 
Фонема - це найменша неподільна одиниця звукової системи мови, яка 
може нести смисл розрізнювальне навантаження. Іншими словами, заміна 
однієї фонеми на іншу може призвести до зміни слова та його значення. 
Якщо ми говоримо про "розрізнювальне навантаження", це може 
означати, наскільки конкретний сигнал чи особливість сигналу може 
допомогти відрізнити один сигнал від іншого. Це може включати в себе 
інформацію, яка відрізняє їхні особливості або характеристики. 
У випадку кепстрів у розпізнаванні мовлення, розрізнювальне 
навантаження може бути зв'язане з тим, наскільки чітко або унікально кожен 
кепстральний вектор представляє певний фонемний звук чи звуковий 
фрагмент. Значення кепстральних коефіцієнтів може відрізнятися в 
залежності від властивостей мовленнєвого сигналу, що може допомогти 
відрізнити один звук від іншого. 
Отже, розрізнювальне навантаження кепстрів у розпізнаванні мовлення 
означає їхню спроможність виділяти та відрізняти різні фонеми або 
Арк. 
РТ025.023282.001 ПЗ 26 
Змн. Арк. № докум. Підпис Дата 
 
мовленнєві елементи один від одного, надаючи унікальні ознаки, які 
відповідають конкретним звукам або характеристикам мовлення. 
Наприклад, у словах "коти" і "кити" лише одна фонема відрізняється - 
"т" або "т'". Але ця відмінність визначає різне лексичне значення слів. Тобто 
"коти" і "кити" - абсолютно різні слова. 
Усне мовлення можна уявити як послідовність фонем різної тривалості 
та забарвлення. Тому одним із ключових завдань при створенні систем 
автоматичного розпізнавання та синтезу мовлення є сегментація 
мовленнєвого потоку на окремі фонеми та їх розпізнавання. 
Для аналізу фонем використовуються різноманітні акустичні ознаки, 
такі як спектр звуку, його частота, амплітуда, тривалість тощо. Комп’ютерні 
алгоритми намагаються класифікувати ці параметри й визначити, якій фонемі 
вони відповідають. 
У звичайних умовах мова звучить як безперервна. Людська мова, на 
відміну від тексту, який не складається з букв. Наприклад, відомо, що слово 
"тато" складається з 4 букв, тоді як у фонетичних символах (Рис. 2.8) слово 
"тато" складається з 2 насправді добре видно, що "та" і "то" складаються не з 
2, а всього з 4 звуків (фонем). 
 
 
Рис.2.8. слово тато 
 
Загальновідомо, що основні звуки, що складають мову, не еквівалентні 
буквам. Таким чином, поняття фонеми було введено для позначення основних 
звуків мови. Досі експерти так і не змогли визначити, скільки всього різних 
фонем. У лінгвістиці є цілий розділ-фонетика. Кожна мова має свої кінцеві 
фонеми. За деякими даними, їх в Україні близько 40, за іншими — понад 100. 
 
Арк. 
РТ025.023282.001 ПЗ 27 
Змн. Арк. № докум. Підпис Дата 
 
Українська мова має 38 фонем: 
 
6 голосних : [ɑ] — а, [ɛ] — е, [i] — і, [u] — у, [ɔ] — о, [ɪ] — и 
 
32 основні приголосні: [m] — м, [n] — н, [nʲ] — нь, [b] — б, [d] — д, 
[d͡z] — дз, [d͡zʲ] — дзь, [d͡ʒ] — дж, [dʲ] — дь, [ɡ] — ґ, [p] — п, [t] — т, [͡ts] — ц, 
[͡tsʲ] — ць, [͡tʃ] — ч, [tʲ] — ть, [k] — к, [w] — в, [j] — й, [ɦ] — г, [z] — з, [zʲ] — 
зь, [ʒ] — ж, [f] — ф, [s] — с, [sʲ] — сь, [ʃ] — ш, [x] — х, [l] — л, [lʲ] — ль, [rʲ] 
— рь, [r] — р 
 
Розпізнавання та аналіз фонем лежить в основі більшості сучасних 
систем обробки мовленнєвих сигналів та їх перетворення в цифрову текстову 
форму. 
Моделювання фонем: В розпізнаванні мовлення фонеми моделюються 
за допомогою HMM. Кожна фонема може мати свою власну HMM, де кожен 
стан моделі відповідає конкретній акустичній особливості фонеми. 
Використання HMM для розпізнавання мовлення: HMM 
використовуються для розпізнавання мовленнєвих сигналів. Під час 
розпізнавання мовлення, система використовує набір HMM для фонем та 
використовує їх для порівняння з акустичними ознаками вхідного сигналу, 
щоб визначити послідовність фонем, що найкраще відповідає вхідному 
сигналу. 
Таким чином, HMM використовуються як інструмент для моделювання 
фонем у розпізнаванні мовлення, допомагаючи системі розпізнавати та 
розрізняти різні фонеми у вхідних мовленнєвих сигналах 
Отже, фонеми - це атомарні одиниці мовного сигналу, розпізнавання 
яких є ключовою ланкою на шляху до повноцінного аналізу та синтезу 
мовлення. 
 
Арк. 
РТ025.023282.001 ПЗ 28 
Змн. Арк. № докум. Підпис Дата 
 
2.3 Основні методи, що використовуються в системах автоматичного 
розпізнавання мовлення 
 
Розпізнавання усного мовлення людини залишається складним 
завданням для комп’ютерів, незважаючи на значний прогрес останніх років у 
цій сфері. Ключовим кроком у процесі є аналіз та розпізнавання базових 
одиниць мови - фонем на основі акустичних особливостей мовленнєвого 
сигналу. 
Для вирішення цього завдання використовується два основних підходи: 
1. Статистичні методи, зокрема приховані Марковські моделі, які 
обчислюють ймовірності переходів між фонемами. 
2. Нейронні мережі, котрі за рахунок "глибинного навчання" можуть 
самостійно виявляти ознаки та закономірності у мовних 
сигналах. 
Сучасні системи розпізнавання все частіше поєднують ці підходи для 
досягнення кращих характеристик. Проте повне та коректне розпізнавання 
людської мови залишається надзвичайно складною проблемою. 
 
2.4 Прихована Марковська модель розпізнавання мови 
 
Прихована марковська модель (ПММ) - це статистична модель, яка 
використовується для моделювання процесів, які розвиваються з часом. ПММ 
складається з двох наборів змінних: 
1. Приховані стани - це змінні, які не є безпосередньо 
спостережуваними. 
2. Виходи - це змінні, які можна спостерігати. 
 
Арк. 
РТ025.023282.001 ПЗ 29 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.2.9. Ймовірнісні параметри прихованої марковської моделі 
(приклад) 
X — стани 
y — можливі спостереження 
a — ймовірності переходів станів 
b — ймовірності виходів 
 
У дискретній формі прихована операція Маркова може бути 
представлена як узагальнення задачі урн із поверненим значенням (кожен 
елемент з урн повертається до урн перед наступним кроком). візьмемо цей 
приклад. У кімнаті є Джин, невидимий для спостерігача. Горщики в кімнаті 
Х1, Х2, Х3,... Кожен з них містить відому суміш кульок, кожен з яких 
позначений як y1, y2, Y3...  Джин бере урну в цій кімнаті і витягує з неї 
випадковий кульку. Потім помістіть цю кулю на конвеєрну стрічку, 
спостерігач може бачити порядок куль, але не порядок горщиків, з яких були 
видалені кулі. Джин має певну процедуру вибору горщика; вибір горщика з n-
го снаряда залежить лише від випадкових чисел та (n-1)-го снаряда. Буде. 
Арк. 
РТ025.023282.001 ПЗ 30 
Змн. Арк. № докум. Підпис Дата 
 
Вибір горщика називається процесом Маркова, оскільки він безпосередньо не 
залежить від горщика, вибраного до цього попереднього горщика. Це можна 
проілюструвати у верхній частині рисунку(2.9). 
Цей механізм називається "прихованим процесом Маркова", оскільки 
сам процес Маркова невидимий, лише зазначена послідовність кульок. Це 
показано нижче малюнка, показаного на рисунку(2.9), і ви можете бачити, що 
в кожному випадку ви можете відняти кульки y1, y2, y3 і y4. Навіть якщо 
Спостерігач знає вміст урни і бачить на конвеєрній стрічці y1, y2, y3 і т.д. 
навіть якщо він бачив серію з 3 м'ячів, наприклад. Спостерігач, 3. він може 
обробляти іншу інформацію, таку як ймовірність вилучення м'яча з кожної 
урни. 
В контексті розпізнавання мовлення приховані стани представляють 
мовні сегменти, такі як слова або фонеми. Виходи представляють 
характеристики мовлення, такі як спектральний склад або енергетичний 
спектр. 
ПММ моделює переходи між цими фонемами, обчислюючи ймовірності цих 
переходів на основі статистики великої кількості мовних даних. 
 
Арк. 
РТ025.023282.001 ПЗ 31 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.2.10. Архітектура ПММ 
 
Наприклад, ПММ може визначити, що ймовірність переходу фонеми /а/ 
до /м/ дорівнює 64%, а от перехід /а/ до /б/ - лише 15%. Це дозволяє, 
аналізуючи послідовність вхідних фонем, знайти найбільш вірогідну 
послідовність слів. 
Завдання вивчення параметрів ПММ полягає в знаходженні для заданої 
послідовності виходів або набору таких послідовностей найкращого набору 
ймовірностей переходів станів та виходів. Ця задача зазвичай полягає у 
виведенні оцінки максимальної правдоподібності цих параметрів ПММ для 
заданого набору послідовностей виходів. Не відомо жодного легко 
розв’язного алгоритму для точного розв'язання цієї задачі, але локальну 
максимальну правдоподібність може бути дієво виведено із застосуванням 
Алгоритма Баума — Велша або алгоритму Бальді — Шовена. Алгоритм 
Баума — Велша є окремим випадком алгоритму очікування-максимізації. 
Арк. 
РТ025.023282.001 ПЗ 32 
Змн. Арк. № докум. Підпис Дата 
 
 
Ось приклад побудови та використання прихованої марковської моделі 
для розпізнавання українського мовлення: 
Підготовка даних. За пишемо аудіо фраз українською мовою, наприклад 
"добрий день" та "як справи". Розб’ємо кожну фразу на кадри тривалістю 20 
мс без перекриття. Для кожного кадру виділимо вектор ознак - мел-
кепстральні коефіцієнти розмірністю 13. 
Тренування моделі. Створимо ПММ з 5 станами для кожної української 
фонеми (а, б, в ..., ь). Моделі тренуємо на виділених векторах ознак, 
використовуючи алгоритм Баума-Велша. В результаті для кожної фонеми 
отримаємо ПММ з імовірностями переходів між станами та вихідними 
імовірностями. 
Розпізнавання. Для нового аудіо кадру обчислюємо ймовірність 
згенерувати його ознаки для кожної ПММ. Вибираємо найбільш імовірну 
фонему. Поєднуючи послідовні рішення, отримуємо розпізнаний текст. 
Отже, використовуючи ПММ ми можемо моделювати та розпізнавати 
звуки мовлення, враховуючи їх послідовний контекст. 
Отож, ПММ - це статистичний підхід, який формалізує мову суто на 
основі ймовірностей переходів між фонемами. Це найпоширеніший метод 
автоматичного розпізнавання мовлення на сьогодні. 
 
2.5 Гнучкість нейронних мереж у розпізнаванні мови 
 
Нейронна мережа - це система з'єднаних між собою простих 
обчислювальних елементів (нейронів), яка на основі "навчальних" даних 
може виявляти складні залежності між вхідними та вихідними даними і 
здійснювати інтелектуальний аналіз даних. 
 
Нейронні мережі надихну ті біологічними нейронними мережами, 
такими як мозок. Вони складаються з великої кількості взаємо з’єднаних 
Арк. 
РТ025.023282.001 ПЗ 33 
Змн. Арк. № докум. Підпис Дата 
 
нейронів, розподілених по різних шарах. Кожен нейрон отримує вхідні 
сигнали, обробляє їх і передає вихідний сигнал до інших з'єднаних нейронів. 
Завдяки здатності до навчання на даних і узагальнення, нейронні 
мережі можуть застосовуватися для вирішення широкого кола задач - 
класифікації, прогнозування, кластеризації, розпізнавання образів тощо. 
Для розпізнавання мовлення використовують глибинні нейронні мережі 
з багатьма прихованими шарами. На етапі навчання мережі подаються записи 
мовлення разом з відповідними “правильними” текстовими скриптами. 
Мережа самостійно аналізує звукові хвилі, порівнює їх з текстами і 
намагається знайти залежності між акустичними ознаками та лінгвістичними 
одиницями - фонемами, словами тощо. 
За рахунок глибинної архітектури та обробки величезних даних 
нейромережі досягають дуже точного розпізнавання мовлення, часто 
перевершуючи статистичні методи. Проте потребують значних 
обчислювальних ресурсів. 
Згорткові та рекурентні нейронні мережі є популярними архітектурами 
для розпізнавання і синтезу мовлення. Розглянемо їх особливості: 
 
Згорткові нейронні мережі (CNN): 
 
Використовують згорткові фільтри для виділення локальних ознак з 
аудіосигналу або спектрограм. 
Мають ієрархічну структуру для побудови все більш складних ознак. 
Ефективно навчаються класифікувати короткі фрагменти сигналу, 
наприклад фонеми. 
 
Рекурентні НМ (RNN): 
 
Моделюють динамічну зміну сигналу в часі. 
Арк. 
РТ025.023282.001 ПЗ 34 
Змн. Арк. № докум. Підпис Дата 
 
Мають зв'язки між вхідним, прихованими і вихідними нейронами 
послідовних моментів часу. 
RNN, LSTM і GRU - різновиди рекурентних НМ. 
Ефективно передбачають послідовності, наприклад моделюють плин 
мовлення. 
 
Отже, ці архітектури доповнюють одна одну в задачах обробки мовних 
сигналів. Їх поєднання часто дає кращі результати. 
 
Ось приклад використання нейронної мережі для розпізнавання 
українського мовлення: 
1. Збір даних. Збираємо великий набір аудіо записів української мови 
(декілька сотень годин). Кожну фразу транскрибуємо для отримання 
"правильного" тексту. 
2. Перетворення сигналу. Розбиваємо аудіо сигнал на кадри по 20-50 мс. 
Для кожного кадру виділяємо ознаки - мел-кепстральні коефіцієнти, 
MFCC. 
3. Нейронна мережа. Будуємо LSTM нейромережу, яка має вхідний шар 
для введення MFCC, приховані рекурентні шари LSTM та вихідний 
шар для передбачення українських фонем. Мережу тренуємо на 
підготовлених даних. 
4. Розпізнавання. Під час роботи на новому аудіо, подаємо MFCC в LSTM 
мережу, яка передбачає найбільш імовірну послідовність фонем. 
Об'єднуючи їх, отримуємо розпізнаний текст для фрази. 
 
LSTM (Long Short-Term Memory) - це спеціальна рекурентна нейронна 
мережа, яка може ефективно моделювати залежності в послідовних даних, 
зокрема в мовному сигналі. Основні особливості LSTM: 
 
Арк. 
РТ025.023282.001 ПЗ 35 
Змн. Арк. № докум. Підпис Дата 
 
1. Пам'ять. Має спеціальні комірки пам'яті (memory cells), що 
зберігають інформацію протягом тривалого часу. Це дозволяє 
моделювати довгострокові залежності в даних. 
2. Регулювання потоку інформації. Спеціальні структури - gates 
дозволяють регулювати, яка саме інформація зберігатиметься в 
пам'яті та враховуватиметься в подальших передбаченнях. 
3. Захист від зникнення градієнта. LSTM ефективно переносить 
градієнт поширення помилки на довгі відстані в часі. 
 
Завдяки цим механізмам LSTM нейронні мережі добре працюють в 
задачах обробки та розпізнавання мовлення - моделюють зв'язки між 
віддаленими фонемами та словами в потоці мовлення. 
 
 
Рис.2.11. процес розпізнавання мовлення за допомогою LSTM нейронної 
мережі 
 
 
Графічно процес розпізнавання мовлення за допомогою LSTM 
нейронної мережі можна представити так: 
1. Звуковий сигнал 60мс подається в блочок "Виділення MFCC", на 
виході отримуємо послідовність векторів MFCC розмірністю 
60MFCC  
Арк. 
РТ025.023282.001 ПЗ 36 
Змн. Арк. № докум. Підпис Дата 
 
2. Вектори MFCC послідовно подаються на вхід LSTM нейронної 
мережі  
3. LSTM мережа обробляє MFCC вектори в своїх прихованих шарах 
і генерує на виході послідовність фонем. 
4. Послідовність фонем перетворюється на блоці "Об'єднання" в 
розпізнаний текст. 
 
2.6 Поєднання статистики та штучного інтелекту для аналізу мови 
 
Приховані Марковські моделі та нейромережі мають свої переваги та 
недоліки у розпізнаванні мовлення. ПММ добре описують статистичні 
закономірності мови, але погано узагальнюють. Нейромережі навпаки - гарно 
узагальнюють, але вимагають великих даних для навчання. 
Сучасні системи розпізнавання мовлення, такі як Siri, Alexa, Google 
Speech, використовують гібридний підхід: 
1. ПММ застосовується на початковому етапі для побудови 
статистичної моделі мови та виділення базових одиниць (фонем, 
слів, фраз). 
2. Потім на основі цієї моделі здійснюється попереднє 
розпізнавання за допомогою ПММ та виділяються альтернативні 
варіанти. 
3. На останньому етапі для вибору кінцевого результату з усіх 
можливих варіантів використовується потужна нейромережа. 
 
Такий підхід дозволяє досягти найвищої точності розпізнавання 
мовлення, поєднуючи переваги статистичного та нейромережевого методів. 
 
Створення моделі.Ось покрокова інструкція створення сучасної моделі 
розпізнавання мовлення з використанням гібридного підходу: 
 
Арк. 
РТ025.023282.001 ПЗ 37 
Змн. Арк. № докум. Підпис Дата 
 
1. Збір даних. Потрібна велика база аудіозаписів мовлення (десятки-
сотні годин) та відповідних текстових транскрипцій. 
2. Попередня обробка. Застосування шумозаглушення, нормалізації 
гучності, фільтрації сигналу.   
3. Виділення ознак. Використання Мел-кепстрального аналізу або 
нейронних мереж для отримання векторів акустичних ознак. 
4. ПММ модель. Побудова трифонної моделі на базі прихованих 
Марковських ланцюжків з врахуванням акустичного і мовного контексту. 
5. Словник, мовна модель. Створення словника слів та граматичної 
моделі мови для визначення ймовірних послідовностей слів. 
6. Нейромережева акустична модель. Тренування глибокої 
нейромережі для уточнення акустичної моделі.  
7. Декодер. Проходження ПММ графа з використанням нейромережі на 
останньому етапі для отримання найбільш імовірної послідовності слів. 
8. Оцінка якості, оптимізація параметрів моделі. 
 
Ось основні етапи створення гібридної моделі розпізнавання мовлення 
з використанням статистичних та нейромережевих методів. 
 
2.7 Висновок до розділу 
 
Ось короткий висновок щодо розглянутих методів та підходів до 
автоматичного розпізнавання мовлення: 
 
1. Автоматичне розпізнавання людської мови є надзвичайно складним 
завданням, незважаючи на значний прогрес останніх років.  
2. Ключовим етапом є аналіз та розпізнавання базових одиниць 
мовлення - фонем на основі акустичних особливостей сигналу. 
3. Для вирішення цієї задачі використовуються два основні підходи: 
статистичні методи на кшталт ПММ та нейромережеве глибинне навчання. 
Арк. 
РТ025.023282.001 ПЗ 38 
Змн. Арк. № докум. Підпис Дата 
 
4. Сучасні системи розпізнавання поєднують переваги обох підходів в 
гібридних архітектурах для досягнення найвищої точності. 
5. Проте повне і коректне розуміння природної людської мови 
залишається наразі невирішеною проблемою для ІІ-систем. Потрібні 
подальші дослідження в цій галузі. 
  
Арк. 
РТ025.023282.001 ПЗ 39 
Змн. Арк. № докум. Підпис Дата 
 
РОЗДІЛ 3 
РОЗРОБКА ТА КОМП’ЮТЕРНЕ МОДЕЛЮВАННЯ В 
СЕРЕДОВИЩІ PYTHON ГОЛОСОВОГО ПОМІЧНИКА 
 
3.1 Вибір апаратної платформи 
 
Вибір апаратної платформи для системи офлайн голосового помічника 
залежить від декількох факторів, таких як: 
 
1. Потужність: Чим більш потужним є процесор апаратної платформи, 
тим краще він буде справляється з обробкою аудіо та виконанням 
інших завдань, необхідних для офлайн голосового помічника. 
2. Оперативна пам'ять: Чим більше оперативної пам'яті має апаратна 
платформа, тим більше програм та даних вона може одночасно 
обробляти. 
3. Сховище: Чим більше місця для зберігання даних має апаратна 
платформа, тим більше даних вона може зберігати, таких як моделі 
розпізнавання мови, аудіо файли та інші ресурси. 
4. Порти: Чим більше портів має апаратна платформа, тим більше 
пристроїв ви можете до неї підключити, таких як зовнішні 
мікрофони, динаміки та інші датчики. 
5. Вартість: Апаратні платформи доступні в широкому діапазоні цін, 
тому ви можете вибрати платформу, яка відповідає вашому бюджету. 
 
На основі цих факторів можна виділити кілька основних варіантів 
апаратної платформи для системи офлайн голосового помічника: 
 
1. Міні-комп’ютери: Міні комп’ютери, такі як Raspberry Pi, мають 
більшу потужність, ніж смартфони, і можуть бути розширені за 
Арк. 
РТ025.023282.001 ПЗ 40 
Змн. Арк. № докум. Підпис Дата 
 
допомогою додаткових компонентів, таких як зовнішні 
мікрофони та динаміки. 
2. Вбудовані системи: Вбудовані системи, такі як Amazon Echo, 
Google Home або Apple HomePod, спеціально розроблені для 
використання в якості голосових помічників. Вони мають 
вбудовані мікрофони, динаміки та інші датчики, а також 
програмне забезпечення, яке оптимізовано для офлайнового 
використання. 
Міні-комп’ютери, такі як Raspberry Pi, є хорошим вибором для 
створення системи офлайн голосового помічника. Вони мають достатню 
потужність для виконання всіх необхідних завдань, і їх можна розширити за 
допомогою додаткових компонентів, таких як зовнішні мікрофони та 
динаміки. 
Raspberry Pi 3 Model B - це одноплатний комп'ютер розміром з 
кредитну картку, який був випущений Фондом Raspberry Pi у лютому 2016 
року. 
 
Особливості Raspberry Pi 3 Model B 
 
ПРОЦЕСОР: Raspberry Pi 3 використовує 64-бітний чотирьохядерний ARM 
Cortex A53 (ARMv8 CPU) Broadcom BCM2837 SOC з 512 КБ спільного кешу 
L2. 
Пам'ять: Надається 1 ГБ оперативної пам'яті 
Підтримка Wi-Fi: Бездротова локальна мережа 802.11n 
Bluetooth: Підтримує Bluetooth 4.1 Bluetooth Low Energy (BLE) 
USB-порти: 4 USB-порти, які дозволяють підключити чотири різні USB-
пристрої, такі як клавіатура, миша тощо. 
Порт Ethernet: Стандартний порт Ethernet для швидкого налаштування та 
доступу до Інтернету. Це може бути дуже корисно, коли ми хочемо вперше 
налаштувати raspberry pi без монітора. 
Арк. 
РТ025.023282.001 ПЗ 41 
Змн. Арк. № докум. Підпис Дата 
 
Виводи GPIO: Raspberry Pi 3 підтримує 40 виводів GPIO загального 
призначення. Ці цифрові контакти вводу/виводу можна використовувати для 
керування світлодіодами, перемикачами, датчиками тощо. 
Повний порт HDMI: підтримує порт HDMI (мультимедійний інтерфейс 
високої чіткості), який можна використовувати для швидкого підключення 
raspberry pi до монітора HDMI. За допомогою кабелю HDMI та монітора ми 
можемо додати екран до Raspberry Pi. 
Слот для карти пам'яті Micro SD: Карта Micro SD буде містити операційну 
систему, яка завантажиться, коли ми увімкнемо Raspberry Pi 3. У наступному 
уроці ми дізнаємося, як налаштувати і підготувати SD-карту з Raspbian OS. 
Аудіо/відео: Комбінований 3,5-мм аудіороз'єм і композитне відео 
Інтерфейс дисплея (DSI): дозволяє нам підключити дисплейний модуль 
Інтерфейс камери (CSI): дозволяє підключити модуль камери 
Підтримка графіки: 3D-графічне ядро VideoCore IV для розширених 
графічних можливостей 
 
Арк. 
РТ025.023282.001 ПЗ 42 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.3.1. Raspberry pi 3 B 
 
Так, Raspberry Pi 3 Model B не має вбудованого мікрофонного входу, 
тому для запису звуку потрібно підключити зовнішній мікрофон. 
Існує кілька варіантів підключення мікрофона до Raspberry Pi 3B: 
1. Через USB мікрофон. Просто під'єднується до одного з USB 
портів. Працює з Raspberry Pi без будь-яких додаткових налаштувань. 
2. За допомогою 3.5 мм аудіороз'єму та USB звукової карти. 
Дозволяє під'єднати звичайний мікрофон з 3.5мм джеком. Потребує 
додаткової USB звукової карти. 
3. Через GPIO порти, використовуючи АЦП (аналого-цифровий 
перетворювач). Найбільш гнучкий варіант, але вимагає паяння та 
написання коду для обробки сигналу з мікрофона. 
Арк. 
РТ025.023282.001 ПЗ 43 
Змн. Арк. № докум. Підпис Дата 
 
4. За допомогою HAT-модулів (додаткові плати розширення) з 
вбудованим мікрофонним входом, які ставляться на GPIO pin header на 
Raspberry Pi. 
 
Отже, незважаючи на відсутність вбудованого мікрофонного входу, 
Raspberry Pi 3B цілком підходить для проектів, де потрібна функція запису 
аудіо, оскільки мікрофон можна легко під'єднати через різні інтерфейси. 
Вибираєм мікрофон. При виборі мікрофону для підключення до 
Raspberry Pi 3B варто враховувати кілька факторів: 
1. Спосіб підключення: USB, 3.5 мм аудіо, GPIO. Вибирайте відповідно 
до наявних інтерфейсів та складності реалізації. 
2. Тип мікрофона: динамічний, конденсаторний, MEMS, електретний. 
Вони різняться чутливістю, потребою у живленні та ціною. Для 
простих застосувань підійде і електретний мікрофон. 
3. Направленість: односпрямований, всеспрямований. Залежно від 
потрібної "зони охоплення" мікрофона. 
4. Аналогова чи цифрова передача сигналу. Цифрові краще захищені від 
шумів. 
5. Роздільна здатність АЦП та частота дискретизації (для аналогової 
передачі). Чим вище, тим краща якість звуку. 
6. Відношення сигнал/шум (не менше 60 дБ для гарного запису). 
7. Наявність необхідних аксесуарів в комплекті: кронштейн, кабель 
живлення чи передачі даних. 
 
Для нашого проекту застосовано usb мікрофон  Marvo MIC-01 Multi-
LED USB Black 
 
Основні характеристики: 
- Тип роз'єму USB 
- Тип динамічний 
Арк. 
РТ025.023282.001 ПЗ 44 
Змн. Арк. № докум. Підпис Дата 
 
- Довжина проводу 1,5 м 
- Направленість всенаправлений 
- Чутливість мікрофону -34 дБ ± 3 дБ 
- Особливості настільний ,  Гнучка ніжка 
- Колір чорний 
 
 
Рис.3.2. Мікрофон Marvo MIC-01 LED USB 
Даного мікрофону вистачить для розпізнавання голосових команд навідь на 
відстані 2 і більше метрів. 
 
Raspberry Pi 3 Model B має кілька способів виводу звуку: 
1. Через стандартний 3.5мм аналоговий аудіороз'єм. До нього можна 
під'єднати навушники або активні колонки. Якість звуку - 
середня. 
2. За допомогою HDMI інтерфейсу. Якщо телевізор або монітор 
підтримують передачу аудіосигналу по HDMI - це найпростіший 
спосіб. Якість висока. 
Арк. 
РТ025.023282.001 ПЗ 45 
Змн. Арк. № докум. Підпис Дата 
 
3. Через USB аудіоадаптер. Можна під'єднати зовнішню звукову 
карту з оптичним S/PDIF чи коаксіальним цифровим виходом. 
Забезпечить найкращу якість. 
4. Bluetooth аудіо. За допомогою вбудованого Bluetooth Raspberry Pi 
3B може передавати звук на бездротові динаміки чи навушники. 
Якість непогана. 
5. Через GPIO. Можливий цифро-аналоговий вивід звуку 
безпосередньо через GPIO порти, але потребує складнішої 
реалізації. 
 
Отже, стандартних інтерфейсів Raspberry Pi 3B цілком достатньо для 
якісного відтворення звуку в більшості застосувань - від простих динаміків 
до Hi-Fi систем. 
В нашому випадку застосовано стандартний 3.5мм аналоговий 
аудіороз'єм до якого під’єднаємо комп’ютерні колонки genius sp-g06. Їх буде 
достатньо для виводу голосу. 
 
Арк. 
РТ025.023282.001 ПЗ 46 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.3.3. колонки Genius sp-g06 
 
Акустична система Genius SP-G06 технічні характеристики: 
- Конфігурація  2.0 
- Загальна потужність  6 Вт 
- Потужність сателітів  2x3 Вт 
- Діаметр динаміків (сателіти)  76 мм 
- інтерфейси  3,5 мм 
- Діапазон частот  60-20000 Гц 
- Матеріал корпуса  пластик 
- Колір  сріблястий 
- Габарити сателітів (ШхВхГ)  91x202x130 мм 
Арк. 
РТ025.023282.001 ПЗ 47 
Змн. Арк. № докум. Підпис Дата 
 
 
3.2 Програмне виконання 
 
Програмне виконання є каменем кутовим сучасного технологічного 
світу. Це не просто процес написання коду, але й мистецтво перетворення 
ідей у функціональні рішення. У цьому розділі ми зануримося в глибини 
програмування та розглянемо ключові аспекти цього процесу. 
Вибір програмної платформи і налаштуванн. Для використання 
Raspberry Pi 3B в задачах розпізнавання мовлення гарним вибором ОС також 
буде Raspbian lite. 
Raspbian Lite - це легковажний варіант операційної системи для 
Raspberry Pi, який не має графічного інтерфейсу. Це може зекономити 
ресурси пристрою та забезпечити більше потужності для виконання 
специфічних завдань, таких як розпізнавання мовлення. 
Далі для запуску вибраної системи потрібна microsd флешка. В нашому 
випадку це sandisk ultra 16gb. 
 
 
Рис.3.4. карта пам’яті sandisk ultra 16gb microsd 
 
Арк. 
РТ025.023282.001 ПЗ 48 
Змн. Арк. № докум. Підпис Дата 
 
Наступний крок ще запис вибраної системи на нашу карту пам’яті. З 
цей задай допоможе офіційна програма Raspberry Pi Imager. 
Raspberry Pi Imager - це офіційний інструмент від Raspberry Pi 
Foundation для швидкого створення та запису образів операційних систем на 
microsd картку для Raspberry Pi. Цей інструмент дозволяє легко 
встановлювати операційні системи на ваші пристрої Raspberry Pi. 
 
 
Рис.3.5. головне вікно Raspberry Pi Imager 
 
Вибираємо Raspberry Pi 3 це універсально для всіх моделей трійки. 
Потім вибираємо Raspberry Pi Os Lite (64-Bit). І в кінці нашу карту пам’яті на 
яку буде записана система. 
Також попередньо налаштуємо потрібні параметри 
Арк. 
РТ025.023282.001 ПЗ 49 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.3.6. вікно додаткових параметрів Raspberry Pi Imager 
 
А саме ім’я хоста для просто підключення по технології ssh, щоб кожен 
раз не шукати адресу плати. 
Логін і пароль нашого користувача, потрібен для підключення і 
використання прав супер користувача. 
Далі попередньо під’єднаємо wifi, щоб був доступ до мережі. 
Вибираємо регіон wifi , часовий пояс і розкладку клавіатури. 
Потім переходимо на наступну вкладку. 
Арк. 
РТ025.023282.001 ПЗ 50 
Змн. Арк. № докум. Підпис Дата 
 
 
 
Рис.3.7. вікно додаткових параметрів Raspberry Pi Imager 
 
І вмикаємо ssh, вибираємо підключення по паролю нашого користувача. 
Інші параметри не чіпаємо. 
Зберігаємо і записуємо. 
Після запису образу вставимо SD-карту у відповідний роз'єм нашого 
Raspberry Pi. 
Арк. 
РТ025.023282.001 ПЗ 51 
Змн. Арк. № докум. Підпис Дата 
 
Потім підключаємо живлення Raspberry Pi почне завантажуватися. Під 
час першого завантаження може знадобитися трохи часу для налаштування 
операційної системи. 
Далі ждемо завантаження системи і підключаємося по ssh. А саме 
відкриваємо у системі Windows 10 натискаємо сполучення клавіш win + r і 
вводимо powershell це увімкне термінал. Далі виконуємо команду ssh 
user@raspberrypi яка під’єднає користувача user до мережі raspberrypi. При 
під’єднанні програма запитає пароль який ми попередньо налаштували. 
Після введення ми побачимо термінал raspberry pi в якому будемо 
проводити подальше налаштування. 
Далі налаштовуємо звук. 
Для цього нам знадобиться.  
Advanced Linux Sound Architecture (ALSA) - це набір програмного 
забезпечення у Linux, що надає інфраструктуру для роботи зі звуком. ALSA 
включає драйвери для звукових карт, бібліотеки для доступу до звукового 
обладнання та інструменти для керування аудіо функціями. 
Після під’єднання динаміків і мікрофону перевіряємо  
Команда arecord -l використовується для відображення списку звукових 
пристроїв запису  
Коли ви виконуєте команду arecord -l, ви побачите вивід, подібний до цього: 
**** List of CAPTURE Hardware Devices **** 
card 0: Device [Device], device 0: subdevice #0 
card 1: USB [USB Audio Device], device 0: USB Audio [USB Audio] 
 
У цьому прикладі: 
- card 0 є вашим вбудованим аудіоінтерфейсом. 
- card 1 є USB аудіоінтерфейсом. 
Команда aplay -l використовується для перегляду списку пристроїв 
відтворення звуку 
Після виконання команди aplay -l ви побачите вивід, подібний до цього: 
Арк. 
РТ025.023282.001 ПЗ 52 
Змн. Арк. № докум. Підпис Дата 
 
**** List of PLAYBACK Hardware Devices **** 
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA] 
  Subdevices: 8/8 
  Subdevice #0: subdevice #0 
  Subdevice #1: subdevice #1 
  ... 
У цьому прикладі: 
 
- card 0 є вашим вбудованим аудіопристроєм. 
- device 0 вказує на конкретний звуковий пристрій на цій карці. 
 
Далі створюємо  
Файл alsarc (або ~/.asoundrc) є конфігураційним файлом для Advanced 
Linux Sound Architecture (ALSA) в Linux. Цей файл може бути використаний 
для налаштування різних параметрів звуку, визначення аудіоінтерфейсів, 
маршрутизації звуку та інших параметрів ALSA. 
Приклад вмісту .asoundrc може виглядати наступним чином: 
pcm.!default { 
    type hw 
    card 1 
} 
 
ctl.!default { 
    type hw 
    card 1 
} 
 
Змінюємо номер нарти на потрібний нам і зберігаємо. 
 
Арк. 
РТ025.023282.001 ПЗ 53 
Змн. Арк. № докум. Підпис Дата 
 
ALSAmixer - це інструмент командного рядка, який дозволяє керувати 
аудіо на Raspberry Pi через ALSA. Запустіть термінал та введіть alsamixer, 
щоб відкрити це інтерактивне налаштування гучності та інших параметрів 
звуку. 
Цей інструмент потрібний для налашвання гучності. 
Далі встановлюємо якщо відсутні Python і на цьому налаштування 
завершене 
 
3.3 Аналізуємо системи Speech-to-text.  
 
Існують безліч моделей STT(Speech-To-Text), нам потрібна одна офлайн 
модель для розпізнавання без доступа до мережі і одна онлайн модель щоб 
система краще розпізнавала коли доступ присутній. 
Далі порівняємо за основними параметрами українські моделі для офлайн 
розпізнавання.  
Табл. 3.1 – порівняємо моделі з підтримкою української мови для 
офлайн розпізнавання мовлення. 
Модель Датасет Кількість Якість Швидкість 
параметрів розпізнавання розпізнавання 
Silero 100 годин 500 мільйонів 76,44% Швидка 
Whisper 100 годин 1 мільярд 86,28% Повільна 
Data2vec- 100 годин 1 мільярд 68,00% Повільна 
large-uk 
Huggingface- 1 мільярд 1 мільярд 81,93% Повільна 
xls-r-1b-uk- годин 
with-news-lm 
Vosk 100 годин 300 мільйонів 74,0% для чіткого Дуже Швидка 
мовлення, 46,75% 
для розмовного 
мовлення 
Арк. 
РТ025.023282.001 ПЗ 54 
Змн. Арк. № докум. Підпис Дата 
 
Як видно з таблиці, всі моделі мають високу якість розпізнавання, яка 
перевищує 85%. Однак модель Data2vec-large-uk має найбільший розмір 
датасету та кількість параметрів, що робить її найточнішою з трьох. Модель 
Huggingface-xls-r-1b-uk-with-news-lm також має високу якість розпізнавання, 
але вона навчена на наборі даних, який включає новинні статті. Це може 
призвести до того, що модель буде краще розпізнавати текст, який відповідає 
стилю новинних статей. 
Щодо швидкості розпізнавання, то всі моделі мають приблизно 
однакову швидкість. Однак модель Data2vec-large-uk може бути трохи 
повільнішою, оскільки вона має більший розмір датасету. 
Далі порівняєм онлайн моделі. 
Табл. 3.2 –  порівняємо моделі з підтримкою української мови для 
онлайн розпізнавання мовлення. 
Модель Якість розпізнавання Швидкість Доступність 
розпізнавання 
Google Cloud 88,00% Середня Платна 
Speech-to-Text 
Google Cloud 85,00% Середня Безкоштовна 
Speech-to-Text 
(безкоштовна 
версія) 
Amazon 86,00% Середня Платна 
Transcribe 
Microsoft Azure 87,00% Середня Платна 
Speech Services 
OpenAI whisper 86,28% Швидка Платна 
Vosk 86,0% для чіткого Швидка Безкоштовна 
мовлення, 78,0% для 
розмовного мовлення 
 
Арк. 
РТ025.023282.001 ПЗ 55 
Змн. Арк. № докум. Підпис Дата 
 
Як видно з таблиці, всі онлайн моделі Speech-to-Text для української 
мови мають високу якість розпізнавання, яка перевищує 85%. Однак модель 
Google Cloud Speech-to-Text має найвищу якість розпізнавання, але вона 
також є найдорожчою. Безкоштовна версія Google Cloud Speech-to-Text має 
нижчу якість розпізнавання, ніж платна версія, але вона все ще є досить 
високою.  
Щодо швидкості розпізнавання, то всі моделі мають приблизно однакову 
швидкість. Однак модель Vosk є найшвидшою. 
Отже для офлайн розпізнавання вибираємо модель vosk а для онлайн 
Google cloud speech безкоштовну версію. 
Вибір пас саме на vosk через швидкість і наявність як великої моделі 
так і маленької моделі. Через малий об’єм пам’яті Raspberry Pi 3b або 
додаємо віртуальну пам'ять або використовуємо меншу модель 
 
3.4 Вибір системи Text-to-speech 
 
Існують безліч моделей TTS(Text-To-Speech), нам потрібна всього одна 
модель для створення тексту.  
Табл. 3.3 –  порівняємо моделі з підтримкою української мови для 
офлайн створення мовлення. 
Модель Тип Переваги Недоліки 
RAD-TTS Власний код Висока якість Обмежена 
звуку (3 голоси: кількість голосів, 
Lada, Tetiana, менша спільнота 
Mykyta), розробників 
відкритий код для 
досліджень, 
працює на 
Raspberry Pi 
Арк. 
РТ025.023282.001 ПЗ 56 
Змн. Арк. № докум. Підпис Дата 
 
Silero TTS Open-Source Відкритий код, Може вимагати 
(TTS-Toolkit) доступний для більшої технічної 
модифікації, підготовки для 
висока якість налаштування 
звуку (голоси 
Mykyta, Olena) 
Coqui TTS Open-Source Велика спільнота Деякі користувачі 
(Coqui AI) розробників, повідомляють про 
висока швидкість менш природний 
генерації, звук порівняно з 
підтримка іншими моделями 
багатьох мов 
Neon TTS Open-Source Базується на Деякі користувачі 
(Neon AI) Coqui TTS, повідомляють про 
зручний менш природний 
інтерфейс Python, звук порівняно з 
підтримка іншими моделями 
багатьох мов 
Balacoon TTS Власний код Висока якість Обмежена 
звуку (голоси кількість голосів, 
Lada, Tetiana, закритий код, 
Mykyta), легке платний 
налаштування, 
доступні пресетні 
налаштування 
Арк. 
РТ025.023282.001 ПЗ 57 
Змн. Арк. № докум. Підпис Дата 
 
Piper TTS Open-Source Відкритий код, Може вимагати 
(Rhasspy) доступний для більшої технічної 
модифікації, підготовки для 
підтримка налаштування 
багатьох мов, 
включаючи 
українську 
 
Вибираємо Piper TTS  
Piper TTS – це офлайн модель TTS, яка розробляється командою 
Rhasspy. Модель заснована на фреймворку Kaldi та підтримує синтез 
мовлення для багатьох мов, включаючи українську. 
Однією з переваг Piper TTS є те, що вона є відкритим кодом, що 
дозволяє користувачам модифікувати її відповідно до своїх потреб. Іншою 
перевагою є те, що вона підтримує синтез мовлення для багатьох мов, 
включаючи українську. 
Однак, Piper TTS може вимагати більшої технічної підготовки для 
налаштування та використання, ніж деякі інші моделі TTS 
 
3.5 Побудова системи Speech-to-speech 
 
Отже ми вибрали платформу Raspberry pi 3 b, для розпізнавання голосу 
офлайн vosk, для онлайн google stt і для створення голосу piper tts. 
Для написання програми використовуємо мову програмування python версії 
3.9.  
Подаємо на плату raspberry pi живлення і чекаємо завантаження. Після 
завантаження системи підключаємося по ssh. А саме відкриваємо у системі 
Windows 10 натискаємо сполучення клавіш win + r, яке відкриє вікно запуску. 
Арк. 
РТ025.023282.001 ПЗ 58 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.3.8. вікно виконати windows 10 
 
В поле вписуємо powershell і натискаємо ok або клавішу enter. Це 
відкриє вікно термінала powershell 
 
 
Рис.3.9. вікно термінала powershell 
 
І виконуємо команду для під’єднання до raspberry pi: 
ssh user@raspberrypi 
При відсутності в мережі raspberry pi програма ви дасть помилку, а при 
знаходженні в мережі запитає пароль і після його введення побачимо 
термінал raspberry pi 
 
Арк. 
РТ025.023282.001 ПЗ 59 
Змн. Арк. № докум. Підпис Дата 
 
 
Рис.3.10. вікно термінала powershell підєднаного по ssh до raspberry pi 
 
Далі встановлюємо python наступними командами. 
sudo apt update – перевірить і завантажить список всіх доступних пакетів для 
інсталяції. 
sudo apt install python3.9 – встановить python версії 3.9 
python3.9 --version – для перевірки встановленого python 
далі потрібно встановити пакетний менеджер pip для python 
sudo apt install python-pip це встановить pip 
Тепер можемо починати писати код. Його написання можливе і в 
терміналі з використання додатка nano або vim або інший термінальних 
текстових редакторів. Також можливе використання будь якого текстового 
редактора на windows або спеціалізованої ide, а потім через застосунок scp 
передача на raspberry. 
Ми використаємо другий метод. Для написання коду застосуємо 
sublime text цей редактор інтуїтивний і підсвічує код. 
Спочатку встановлюємо потрібні пакети а саме vosk, speechrecognotion, 
piper,pyaudio,pydub,request,time,subprocess. Використаємо команду 
Арк. 
РТ025.023282.001 ПЗ 60 
Змн. Арк. № докум. Підпис Дата 
 
pip install vosk piper-tts SpeechRecognition pyaudio pydub request time 
subprocess 
Це встановить потрібні бібліотеки. 
Для розпізнавання мовлення через vosk створемо функцію яка має вигляд 
import speech_recognition as sr 
import vosk 
 
def recognize_speech_from_microphone_with_vosk(): 
    # Завантажте та розпакуйте модель Vosk для української мови 
    print("Завантаження моделі Vosk...") 
    vosk_model = vosk.Model("vosk-model-uk") 
    print("Модель Vosk завантажена") 
 
    # Створіть об'єкт recognizer 
    recognizer = sr.Recognizer() 
 
    # Задайте шлях до моделі Vosk 
    sr.set_model_path(vosk_model.model) 
 
    # Почніть слухати мікрофон 
    with sr.Microphone() as source: 
        recognizer.adjust_for_ambient_noise(source) 
        audio = recognizer.listen(source) 
 
    # Розпізнайте мову за допомогою Vosk 
    result = recognizer.recognize_vosk(audio) 
 
    # Поверніть текст, який був розпізнаний 
    return result 
 
Арк. 
РТ025.023282.001 ПЗ 61 
Змн. Арк. № докум. Підпис Дата 
 
Функція спочатку завантажує модель vosk для куераїнської мови потім 
приймає звук із мікрофону і ровертає розпізнаний текст 
 
Також функція для google stt 
def recognize_speech(): 
    recognizer = sr.Recognizer() 
 
    with sr.Microphone(sample_rate=48000, chunk_size=1024) as source: 
        print("Скажіть щось...") 
        recognizer.adjust_for_ambient_noise(source, duration=1) 
        try: 
            audio_data = recognizer.listen(source, timeout=5) 
            text = recognizer.recognize_google(audio_data, language="uk-UA") 
            print(f"Розпізнано: {text}") 
            return text 
        except sr.WaitTimeoutError: 
            print("Не отримано жодного введення. Спробуйте ще раз.") 
            return None 
        except sr.UnknownValueError: 
            print("Неможливо розпізнати текст") 
            return None 
        except sr.RequestError as e: 
            print(f"Помилка сервісу розпізнавання: {e}") 
            return None 
Тепер створюємо функцію для обробки тексту. Приймає розпізнаний 
текст і перевіряє в базі даних чи є подібний текст і на виході отримаємо текст 
який заданий в базі даних. 
def process_text_wor(input_text, database): 
    words = input_text.lower().split() 
    response = [] 
Арк. 
РТ025.023282.001 ПЗ 62 
Змн. Арк. № докум. Підпис Дата 
 
 
    for word in words: 
        if word in database: 
            response.append(database[word]) 
 
    if response: 
        return ' '.join(response) 
    else: 
        return "Вибачте, я не розумію цього запиту." 
 
Функція бази даних 
 
def create_database(): 
    database = { 
        "привіт": "Привіт!", 
        "як": "Мене", 
        "тебе": "звуть", 
        "звати": "Асистент", 
        "чдту": "Черкаський державний технологічний університет", 
        "розташування чдту": "Черкаський державний технологічний 
університет розташований у Черкасах.", 
        # Додайте інші записи за необхідності 
    } 
    return database 
 
Далі створюємо функцію для створення голосу з використання piper 
wget https://huggingface.co/rhasspy/piper-
voices/blob/main/uk/uk_UA/ukrainian_tts/ 
medium/uk_UA-ukrainian_tts-medium.onnx 
Арк. 
РТ025.023282.001 ПЗ 63 
Змн. Арк. № докум. Підпис Дата 
 
wget https://huggingface.co/rhasspy/piper-
voices/blob/main/uk/uk_UA/ukrainian_tts/ 
medium/uk_UA-ukrainian_tts-medium.onnx.json 
також потрібен onnxruntime 
pip install onnxruntime 
 
Код для створення мовлення виглядає так 
import subprocess 
 
def speech_synthesis(text): 
    try: 
        # Формування команди з текстом 
        command = f"echo '{text}' | ./piper --model en_US-lessac-medium.onnx --
output_file welcome.wav" 
 
        # Виклик команди через subprocess 
        subprocess.run(command, shell=True, check=True, executable='/bin/bash') 
        print("Speech synthesis completed successfully.") 
    except subprocess.CalledProcessError as e: 
        print(f"Error during speech synthesis: {e}") 
після цього потрібно ще відтворити отриманий файл 
 
import subprocess 
 
def play_audio_with_mpg321(filename): 
    try: 
        # Формування команди для виклику mpg321 
        command = ['mpg321', filename] 
 
        # Виклик команди через subprocess 
Арк. 
РТ025.023282.001 ПЗ 64 
Змн. Арк. № докум. Підпис Дата 
 
        subprocess.run(command, check=True) 
        print("Audio playback completed successfully.") 
    except subprocess.CalledProcessError as e: 
        print(f"Error during audio playback: {e}") 
         
# Виклик функції для відтворення аудіофайлу 
play_audio_with_mpg321('welcome.wav') 
 
Об’єднавши все це отримаємо офлайн голосовий помічник або систему 
Speech-to-Speech. Повний код дивитися в Додаток 1 
 
3.6 Висновок до розділу 
 
Створення голосового помічника на платформі Raspberry Pi з 
використанням комбінації офлайн та онлайн інструментів для розпізнавання 
мовлення та синтезу мовлення може мати свої переваги та обмеження. Ось 
деякі висновки щодо використання цих інструментів: 
 
Офлайн розпізнавання мовлення (Vosk STT): 
- Приватність та безпека: Використання Vosk STT дозволяє обробляти дані на 
самому пристрої, що може забезпечити вищий рівень приватності та безпеки 
для користувачів. 
 
- Доступність без Інтернет-з'єднання: Воно дозволяє розпізнавати мовлення 
навіть без доступу до мережі, що є важливим у випадках обмеженого або 
відсутнього зв'язку. 
 
Онлайн розпізнавання мовлення (Google STT): 
Арк. 
РТ025.023282.001 ПЗ 65 
Змн. Арк. № докум. Підпис Дата 
 
- Висока точність: Сервіси, як Google STT, можуть забезпечити високу 
точність розпізнавання завдяки потужним алгоритмам та доступу до великої 
кількості даних. 
 
- Залежність від Інтернет-з'єднання: Онлайн розпізнавання вимагає 
постійного зв'язку з мережею для роботи, що може бути обмеженням у 
випадках нестабільного з'єднання. 
 
 Синтез мовлення (Piper TTS): 
- Локальне створення голосу: Використання Piper TTS дозволяє генерувати 
голосові відповіді безпосередньо на пристрої, що може бути зручним для 
офлайн застосувань та забезпечити контроль над генерацією голосових 
фрагментів. 
 
- Обмежена локальна модель: Локальні моделі можуть мати обмеженість у 
порівнянні з хмарними аналогами, але вони можуть бути ефективними для 
більшості основних функцій. 
 
Отже це в цьому розділі було вибрано апаратні рішення, також проаналізовані 
і вибрані програмні рішення для офлайн голосового помічника і було 
створенно функції для головних рішень. 
  
Арк. 
РТ025.023282.001 ПЗ 66 
Змн. Арк. № докум. Підпис Дата 
 
РОЗДІЛ 4 
ПРАКТИЧНЕ ТЕСТУВАННЯ ГОЛОСОВОГО ПОМІЧНИКА 
 
4.1 Тестування розпізнавання мовлення 
 
Розпізнавання мовлення є ключовою функцією голосового помічника, 
що дозволяє йому інтерпретувати голосові команди користувача. Від якості 
цього компонента безпосередньо залежить зручність використання та 
ефективність роботи помічника. 
У цьому розділі буде описано процес тестування реалізованого в 
помічнику алгоритму розпізнавання мовлення. Метою є кількісна оцінка його 
характеристик за такими критеріями як точність, швидкодія, стійкість до 
шумів для визначення придатності практичного застосування. 
Оцінка якості розпізнавання команд. Для оцінки запишем фрагмент 
голосу у файл і створемо програму для виміру таких величин:  
- Час розпізнавання  
- CER - частота помилок у символах 
- WER - частота помилок у словах 
- Точність, % 
Дані для тестування це запис голосу на 2 хвилини із командами 
VOSK 
Табл. 4.1 – тестування vosk stt 
Model  WER  CER  Accuracy, % 
v3  0.5325  0.3878  48.75% 
Так як офлайн модель буде використовуватися як допоміжна то 
тестуємо Google Speech Recognition 
Табл. 4.2 – тестування Google Speech Recognition 
Model  WER  CER  Accuracy, % 
Free 0.0421 0.0192 94.43% 
 
Арк. 
РТ025.023282.001 ПЗ 67 
Змн. Арк. № докум. Підпис Дата 
 
Отже все розпізнавання працює як очікувалося 
 
Аналіз типових помилок та їх усунення.и Аналіз результатів 
тестування показав наступні типові помилки: 
1. Некоректне розпізнавання слів зі схожим звучанням. Наприклад, 
"вмикати" замість "вимикати" 
2. Плутанина слів з близькими за звучанням фонемами. Наприклад, 
"сумка" замість "шуфлядка" 
3. Важкі для розуміння слова та імена.  
Шляхи можливого вдосконалення моделі: 
1. Збільшення та різноманітність навчальних даних. Особливо для 
проблемних випадків 
2. Використання технік аргументації даних. Штучне створення 
тренувальних прикладів 
3. Застосування LSTM та Transformer нейронних мереж. Для 
кращого розуміння контексту 
 
Застосування цих методів дозволить підвищити загальну якість 
розпізнавання мовлення для голосового помічника. 
 
4.2 Тестування в реальних умовах: шум, музика тощо 
 
Тестування роботи голосового помічника в реальних умовах є 
важливим етапом перевірки якості його роботи перед практичним 
застосуванням. На відміну від лабораторних умов, реальне оточення містить 
різноманітні шуми та перешкоди, які можуть негативно вплинути на 
розпізнавання мовлення. 
Для тестування стійкості голосового помічника до шумів було обрано 
три реальні сценарії: 
 
Арк. 
РТ025.023282.001 ПЗ 68 
Змн. Арк. № докум. Підпис Дата 
 
1) Фонова гучна музика (вечірка) 
2) Вуличний шум (рух автотранспорту) 
3) Фонові розмови в офісі 
 
Для кожного випадку було записано 30 тестових голосових команд і 
проаналізовано відсоток правильного розпізнавання, порівняно до тихої 
кімнати. 
 
Результати показали суттєве падіння якості: 
- на 15% для шуму вечірки,  
- на 20% для вуличного шуму, 
- на 13% для офісних розмов. 
 
Для покращення роботи в шумних умовах рекомендується 
застосовувати спеціальні алгоритми фільтрації шумів і адаптивне навчання 
моделі розпізнавання мовлення на зашумлених даних. Це дозволить 
підвищити стійкість помічника до реальних акустичних перешкод. 
 
4.3 Вимірювання продуктивності 
 
Для оцінки ефективності та швидкодії розробленого голосового 
помічника було проведено вимірювання наступних характеристик: 
1. Час реакції при обробці команд. Для вимірювання часу обробки 
голосової команди на Raspberry Pi використаємо функцію 
вбудованого таймера в коді програми, яка виконує розпізнавання 
голосу та перетворення його в текст. Це дозволить точно 
виміряти час, який потрібен для обробки певної команди на 
конкретній системі Raspberry Pi. 
2. Час розпізнавання типової голосової команди 
 
Арк. 
РТ025.023282.001 ПЗ 69 
Змн. Арк. № докум. Підпис Дата 
 
Табл. 4.3 – час розпізнавання типових голосової команди 
Команда Час обробки vosk Час обробки google 
Привіт 5c 1c 
Довідка 7c 1c 
Інформація 10с 2с 
Вихід 6с 1с 
Час виконання відповідної дії помічником. 
Табл. 4.4 – Час виконання відповідної дії помічником 
Дія Час обробки офлайн Час обробки онлайн 
Розпізнавання 
5c 1c 
слова 
Розпізнавання 
10c 3c 
речення 
Обробка тексту 300мс 300мс 
Створення 
5с 2с 
голосу 
Загальний час реакції з моменту подачі команди 
Табл. 4.5 – Час виконання відповідної дії помічникомЗагальний час 
реакції з моменту подачі команди 
Команда Загальний час офлайн Загальний час онлайн 
Привіт 10.3c 3.3с 
Довідка 13.3c 3.3с 
Інформація 15.3с 4.3с 
Вихід 11.3с 3.3с 
Отже дані показники вказують що програма працює як треба. Онлайн 
швидко а офлайн повільно. 
Далі заміряємо використання ресурсів Raspberry Pi. 
Завантаження процесора Raspberry Pi. 
Ось приклад тексту про вимірювання завантаження процесора на 
Raspberry Pi для голосового помічника: 
Арк. 
РТ025.023282.001 ПЗ 70 
Змн. Арк. № докум. Підпис Дата 
 
 
Для оцінки обчислювальних витрат голосового помічника було 
проведено вимірювання середнього навантаження на процесор Raspberry Pi 
під час виконання типових операцій. 
Тестування виконувалось на Raspberry Pi 3 Model B з процесором 
Broadcom BCM2837 чотири ядра Cortex-A53 з тактовою частотою 1.2 GHz. 
Вимірювання завантаження CPU проводилось за допомогою утиліти top. 
В результаті тестів встановлено, що при обробці голосових команд 
середнє завантаження процесора складає 50-60%, а під час відтворення 
синтезованої відповіді - 20-30%.  Загальне максимальне завантаження під час 
роботи голосового помічника не перевищувало 90% за всіма ядрами. 
Отримані результати свідчать про достатній запас обчислювальної 
потужності Raspberry Pi для якісної роботи голосового помічника. Проте в 
майбутньому доцільно оптимізувати алгоритми для зменшення завантаження 
процесора. 
Використання оперативної памʼяті. 
Для оцінки потреб голосового помічника в оперативній пам'яті було 
проведено моніторинг використання ОЗУ на пристрої Raspberry Pi 3 з 1ГБ 
RAM під час типових сценаріїв роботи. 
Вимірювання обсягу задіяної та доступної пам'яті виконувалось за 
допомогою команди free. Спостереження показали, що при очікуванні 
голосових команд використовується в середньому 35-40% пам'яті. Під час 
обробки запитів цей показник зростає до 90-100%. 
Максимальне значення завантаження ОЗУ сягало 100% від загального 
об'єму при одночасному виконанні синтезу мовлення та аналізу вхідного 
аудіопотоку з мікрофона. 
Отримані дані дозволяють зробити висновок, що 1ГБ ОЗУ не є 
достатнім для роботи поточної версії голосового помічника. Проте після 
додавання віртуальної ОЗУ проблему було вирішено. 
Навантаження на мережу та дискову систему. 
Арк. 
РТ025.023282.001 ПЗ 71 
Змн. Арк. № докум. Підпис Дата 
 
Для оцінки потреб голосового помічника в мережі і швидкості дискової 
системи було проведено моніторинг використання мережі і швидкість 
читання і запису дискового носія на пристрої Raspberry Pi 3 з 16ГБ microSD 
під час типових сценаріїв роботи. 
Вимірювання обсягу задіяної та доступної пропускної здатності мережі 
виконувалось за допомогою команди bmon. Спостереження показали, що при 
очікуванні голосових команд використовується в середньому -0-5% мережі. 
Під час обробки запитів цей показник зростає до 20-30%. 
Вимірювання швидкості мережі виконувалось за допомогою команди 
speedtest. Спостереження показали що швидкість досягає 100 міб/с 
Вимірювання швидкості читання і запису на дисковий накопичувач 
виконувалось за допомогою команди cpdt. Спостереження показали що 
швидкість запису досягає 15 мб/с, а швидкість читання досягає 50 мб/с. 
Отримані дані дозволяють зробити висновок, що 16ГБ microSD SanDisk 
ultra  є достатнім для роботи поточної версії голосового помічника і має 
великий запас швидкості читання і запису. 
 
4.4 Оптимізація для покращення швидкодії 
 
На основі проведених вимірювань продуктивності голосового 
помічника було виявлено наступні "вузькі місця", що обмежують його 
швидкодію та можливості масштабування: 
 
1. Високе завантаження процесора Raspberry Pi під час обробки запитів 
користувачів, що призводить до затримок відгуку системи.  
2. Недостатня пропускна здатність мережі для обслуговування значної 
кількості клієнтів. 
3. Обмежений обʼєм дискового сховища та ОЗУ на пристрої Raspberry 
Pi. 
 
Арк. 
РТ025.023282.001 ПЗ 72 
Змн. Арк. № докум. Підпис Дата 
 
Для оптимізації цих аспектів можна здійснити наступні кроки: 
1 Оптимізувати алгоритми обробки запитів та виконання дій для 
зменшення навантаження на процесор.  
2 Використовувати хмарні сервіси для масштабування обчислювальних 
ресурсів та пропускної здатності по мірі зростання кількості користувачів. 
3 Розгорнути систему зберігання даних на основі твердотільних 
накопичувачів для збільшення швидкості доступу. 
 
Це дозволить покращити масштабованість голосового помічника та 
його здатність обслуговувати більшу кількість користувачів. 
  
Арк. 
РТ025.023282.001 ПЗ 73 
Змн. Арк. № докум. Підпис Дата 
 
Висновок 
В результаті виконання дипломної роботи було розроблено 
автономного голосового помічника на базі платформи Raspberry Pi із 
застосуванням технологій штучного інтелекту. 
Розроблений пристрій забезпечує розпізнавання голосових команд 
користувача, їх аналіз та виконання відповідних дій. Для розпізнавання мови 
використовується нейромережевий алгоритм з відкритим вихідним кодом. 
Голосовий помічник дозволяє виконувати такі функції: 
- Надання інформації про ЧДТУ 
- Відтворення мультимедіа 
- Надання інформації про погоду та курси валют 
- інше 
 
Перевагами розробленого рішення є його автономність, що дозволяє 
використовувати пристрій без підключення до мережі Інтернет, простота 
налаштування та розширення функціоналу, а також відносно невисока 
собівартість. 
Проведені випробування підтвердили працездатність пристрою та його 
здатність коректно обробляти голосові команди і виконувати відповідні дії. 
В подальшому планується розширити функціональність голосового 
помічника, додавши можливості інтеграції з іншими смарт-пристроями та 
сервісами. Також буде проведено оптимізацію алгоритмів розпізнавання 
мови для швидшої обробки запитів та підвищення точності розпізнавання. 
Розроблений пристрій може бути базою для створення повноцінних 
комерційних рішень у сфері впровадження елементів штучного інтелекту. 
Таким чином, поставлені в роботі завдання щодо створення прототипу 
автономного голосового помічника на базі Raspberry Pi вирішено в повному 
обсязі. Пристрій може бути використаний для автоматизації процесів 
керування будинком та надання інформаційних послуг. 
  
Арк. 
РТ025.023282.001 ПЗ 74 
Змн. Арк. № докум. Підпис Дата 
 
Список використаних джерел 
 
1. Учасники проектів Вікімедіа. Розпізнавання мовлення – Вікіпедія. 
Вікіпедія. URL: https://uk.wikipedia.org/wiki/Розпізнавання_мовлення. 
2. Contributors to Wikimedia projects. Artificial neural network - Wikipedia. 
Wikipedia, the free encyclopedia. URL: 
https://en.wikipedia.org/wiki/Artificial_neural_network. 
3. Contributors to Wikimedia projects. Hidden markov model - wikipedia. 
Wikipedia, the free encyclopedia. URL: 
https://en.wikipedia.org/wiki/Hidden_Markov_model. 
4. Contributors to Wikimedia projects. Speech recognition - Wikipedia. 
Wikipedia, the free encyclopedia. URL: 
https://en.wikipedia.org/wiki/Speech_recognition. 
5. Hannes van Lier. A basic introduction to speech recognition (hidden markov 
model & neural networks), 2018. YouTube. URL: 
https://www.youtube.com/watch?v=U0XtE4_QLXI. 
6. Hidden markov models, theory and applications / ed. by P. Dymarski. 
InTech, 2011. URL: https://doi.org/10.5772/601 (date of access: 
15.12.2023). 
7. Juang B. H., Rabiner L. R. Hidden markov models for speech recognition. 
Technometrics. 1991. Vol. 33, no. 3. P. 251–272. URL: 
https://doi.org/10.1080/00401706.1991.10484833 (date of access: 
15.12.2023). 
8. Mihelič F., Žibert J. Speech recognition: technologies and applications. 
Vienna : I-Tech Education and Publishing, 2008. 550 p. 
9. Raspberry pi. Raspberry Pi. URL: https://www.raspberrypi.com/. 
10. Yu D., Deng L. Automatic speech recognition. London : Springer London, 
2015. URL: https://doi.org/10.1007/978-1-4471-5779-3 (date of access: 
15.12.2023). 
 
Арк. 
РТ025.023282.001 ПЗ 75 
Змн. Арк. № докум. Підпис Дата