GithubHelp home page GithubHelp logo

y-vector's Introduction

y-vector

Статья, на основе которой сделано задание: https://www.isca-speech.org/archive/pdfs/interspeech_2021/zhu21b_interspeech.pdf. В статье описывается построение векторного представления (эмбеддингов) на сырых аудио данных (.wav).

Отличительной особенностью y-векторов от других подходов, основанных на извлечении признаков из сырых данных (например, таких как wav2vec), является то, что в данном случае используются три паралелльных канала со свёртками с разными ядрами, выполняющих функции фильтров разных частот. После свёрток по каналам происходит частотное и временное сжатие-расширение в трёх последующих блоках. Для повышения точности происходит объединение карт признаков с различных слоёв для каждого фрейма данных.

Выбранный датасет для экспериментов - VCTK (https://datashare.ed.ac.uk/handle/10283/2950). VCTK включает в себя речевые данные, произнесенные 109 носителями английского языка с различными акцентами. В данном случае решалась задача идентификации, то есть классификация на 109 классов. При этом в исходной статье про y-вектора рассматривалась задача верификации, поэтому полученные результаты сравнивались с результатами из статьи по VCTK датасету. Статья по VCTK: https://www.researchgate.net/publication/320280030_Dilated_Recurrent_Neural_Networks. В данной статье в качетстве метрики использовалась accuracy: MFCC+GRU - 0.77 сырые данные + Dilited GRU - 0.74 сырые данные + Fused GRU - 0.65

параметры обучения:

  • эпохи - 4
  • шаг обучения - 0.0001
  • батч - 64
  • функция потерь - CrossEntropyLoss
  • длина входящего фрагмента - 3.5с Если входящий файл меньше 3.5с, то он дополняется до длины в 3.5с самим собой.

При разбиении данных 80/20 на валидационном множестве accuracy составляет 0.92, что является высоким показателем для классификации на 109 классов. Полученный результат выше, чем в представленной выше статье по задаче идентификации на VCTK корпусе. Ниже представлены кривые обучения на 4-х эпохах:

image

image

Благодаря высокой точности при классификции данный подход можно использовать, например, в задаче диаризации для речевой аналитики команды из более 100 человек. Возможные улучшения метода: исследовать применимость различных фильтров на начальных этапах преобразования данных, более сознательный подбор гиперпараметров

.

y-vector's People

Contributors

mary-sam avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.