В первой части анализа аудиоданных мы рассмотрели характеристики, которые есть у каждого аудиосигнала. Анализ аудиоданных (часть1).  В наборе аудиоданных есть Human files -  10322 файла  ( записи   “живого” голоса (класс 1)) и Spoof files - 39678 файлов ( записи  синтетического/конвертированного/перезаписанного голоса (класс 2)) .   В одном аудиофайле (3 - 6 сек)   голос мужской или женский что-то говорит на каком-то языке (английском, русском, немецком, китайском)   Вот так выглядят  характеристики аудиофайлов  для разных аудио записей: Каждый исследователь выбирает  свои характеристики для извлечения из аудиофайла. Мы разберем относительно простой и более быстрый способ классификации аудиофайлов - алгоритм машинного обучения -  SVM (Support Vector Machines) / машины опорных векторов. ( Подробно разберем в третьей части анализа аудиоданных). А для этого нам нужно извлечь значимые характеристики и преобразовать их в структурированные данные - в двухмерную таблицу, состоящую из столбцов и строк с помощью библиотеки  Pandas.  Эта таблица называется фреймом данных - Dataframes. Из значимых характеристик я выбрала: Средние значения и стандартные отклонения Мел-кепстральных коэффициентов ( по 20 значений); Среднее значение, стандартное отклонение и skew (наклон) Спектрального центроида Среднее значение и стандартное отклонение Спектрального спада; Мел-кепстральные коэффициенты — один из важнейших признаков в обработке аудио. MFCC — это матрица значений, которая захватывает тембральные аспекты.  Мел - это единица высоты звука, это та же частотная ось, только выражается в Мелах, вместо Герц.  Кепстр - это акустическая волна (параметры голосового тракта, тоновые сигналы, шумы и фильтры). MFCC - Представляют собой набор признаков , которые описывают общую форму спектральной огибающей. Они моделируют характеристики человеческого голоса - общие (отношение к языковой группе) и индивидуальные (уникальные особенности в речи, произношения, тембра голоса ).  MFCC - коэффициенты частотной капсулы, суммируют частотное распределение по размеру окна (окно - это сегмент сигнала). Поэтому можно анализировать как частотные, так и временные характеристики звука. Перед построением графика коэффициенты нормализуются. Частотные характеристики речи: частота основного тона; период основного тона (мс); количество побочных гармоник (формантных областей); нижняя частота спектра; верхняя частота спектра; частотный диапазон; частота максимального уровня спектральной плотности Временные характеристики речи: длительность звука речи (мс); длительность пауз речи между словами (мс); длительность пауз речи между фразами (мс); скорость звуков речи (звуков/с); темп речи (слов/мин); плотность речи (%) – отношение времени наличия звука к полному времени речевого сигнала; скорость изменения уровня громкости основного тона (дБ/с); скорость изменения частоты основного тона (Гц/с). Вот так выглядят  Мел-кепстральные коэффициенты:  Мел-кепстральные коэффициенты (MFCC) в виде массива numpy:   Для каждого аудиофайла свои  Мел-кепстральные коэффициенты. Это хорошо видно, если рассмотреть Мел-кепстральные коэффициенты  в виде массива numpy. Все коэффициенты разные. Давайте посмотрим, как выглядят Средние значения и стандартные отклонения Мел-кепстральных коэффициентов   в виде двухмерной  таблицы (Dataframes), состоящей из столбцов и строки и в виде графика. Спектральный центроид относится к спектральным (частотным) признакам. Спектральные характеристики всех звуковых сигналов определяются с помощью двух зависимостей: зависимость амплитуды от времени зависимость амплитуды от частоты Спектральный центроид указывает, на какой частоте сосредоточена энергия спектра ( энергия напряжения) или, другими словами, указывает, где расположен “центр масс” для звука. Вот так выглядит Спектральный центроид: Спектральный спад относится к спектральным (частотным) признакам. Это мера формы сигнала, представляющая собой частоту, в которой высокие частоты снижаются до 0. Чтобы получить ее, нужно рассчитать долю элементов в спектре мощности, где 85% ее мощности находится на более низких частотах. Вот так выглядит Спектральный спад: Для извлечения необходимо импортировать библиотеки Python: Из всех аудиофайлов в наборе данных с помощью библиотеки librosa - librosa.feature, метода append( ) и  метода extend( ) проводим: Извлечение из Мел-кепстральных коэффициентов  - средние значения и стандартные отклонения (по 20 значений); Извлечение из Спектрального центроида - среднее значение, стандартное отклонение и skew (наклон); Извлечение из Спектрального спада - среднее значение и стандартное отклонение; Извлечение значимых характеристик:  Давайте посмотрим на аудио файлы в наборе данных:    Human files: 10322      Spoof files: 39678   Для загрузки  формата CSV файла используется метод Pandas  read.csv(). В скобках указывается путь к файлу в кавычках, чтобы  Pandas считывал файл во фрейм данных (Dataframes - df) с этого адреса.  В таблице data мы видим: столбец  ‘filename’, где указан номер и название файла  (Аудиофайлы перемешаны); столбцы ‘mfcc_mean{i}’ и ‘mfcc_std{i}’  - средние значения и стандартные отклонения (по 20 значений)  из Мел-кепстральных коэффициентов; столбцы 'cent_mean', 'cent_std', 'cent_skew' - среднее значение, стандартное отклонение и skew (наклон) из Спектрального центроида; столбцы 'rolloff_mean', 'rolloff_std'  - среднее значение и стандартное отклонение из Спектрального спада ; столбец ‘label’  метка. В следующей (третьей части анализа аудиоданных) разберем алгоритм машинного обучения -  SVM (Support Vector Machines) / Машины опорных векторов.