🗣️ SpeechAccentAI: Разгадай акцент! 🗣️
Описание: Этот проект — ваш проводник в мир машинного обучения, где мы учим компьютер распознавать акценты по голосу! 🎙️
- SpeechAccentAI — это система, которая анализирует речь с помощью Mel-Frequency Cepstral Coefficients (MFCCs) и нейронных сетей, чтобы определить акцент человека.
Датасет: Мы используем набор данных Speech Accent Archive, доступный на Kaggle: Ссылка на Kaggle.
Файлы:
info_print.py: Скрипт для подсчета количества аудиофайлов для каждого акцента и сохранения результата в файл.delete.py: Скрипт для удаления аудиофайлов для стран с количеством меньше N.extract_mel_pad.py: Скрипт для предобработки аудиофайлов, извлечения Mel-спектрограмм, аугментации и сохранения их в формате NumPy.train_model.py: Скрипт для обучения нейронной сети на извлеченных MFCCs и сохранения обученной модели.predict_accent_from_audio.py: Скрипт для загрузки обученной модели и предсказания акцента для новых аудиофайлов.extracted_mel_pad.npy: Сохраненные Mel-спектрограммы из обучающего набора данных.accent_labels.npy: Сохраненные метки акцентов для обучающего набора данных.label_encoder_classes.npy: Сохраненные классы LabelEncoder для преобразования меток акцентов.accent_detection_model.h5: Обученная модель нейронной сети.train_model_by_google.py: Скрипт для обучения нейронной сети на извлеченных VGGish-признаков с использованием Google VGGish.predict_accent_by_google.py: Скрипт для загрузки обученной модели и предсказания акцента для новых аудиофайлов с использованием Google VGGish.test_by_google.py: Скрипт для проверки точности модели на тестовом наборе с использованием Google VGGish.test.py: Скрипт для проверки точности модели на тестовом наборе.mel_spectrograms_to_pdf.py: Скрипт для преобразования Mel-спектрограмм в PDF-документ.
Как использовать:
- Подготовка: Запустите
python info_print.pyиpython delete.py, чтобы подсчитать аудиофайлы и удалить неполные записи. - Извлечение данных: Запустите
python extract_mel_pad.py, чтобы получить Mel-спектрограммы с аугментацией.
Обучение модели:
- Модель на основе MFCCs: Запустите
python train_model.py, чтобы обучить нейронную сеть на Mel-спектрограммах. - Модель на основе VGGish: Запустите
python train_model_by_google.py, чтобы обучить модель на VGGish-признаках.
Предсказание акцента:
- Предсказание по MFCCs: Запустите
python predict_accent_from_audio.py, чтобы предсказать акцент по Mel-спектрограмме. - Предсказание по VGGish: Запустите
python predict_accent_by_google.py, чтобы предсказать акцент по VGGish-признакам.
Результаты: Точность модели будет зависеть от качества данных, размера датасета и выбранной архитектуры нейронной сети. В процессе экспериментов можно оптимизировать параметры модели и предобработки данных для достижения наилучших результатов.
Дальнейшее развитие:
- Использовать более сложные модели нейронных сетей, такие как LSTM или CNN, для учета временных зависимостей в данных MFCC.
- Использовать облачные сервисы, например, Google Cloud или Amazon Web Services, для масштабирования модели и обработки данных.