Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Case Study: TensorFlow для угадывания голосовой почты

Case Study: TensorFlow для угадывания голосовой почты

Григорий Петров @ Moscow Python Conf 2017

Moscow Python Meetup
PRO

October 20, 2017
Tweet

More Decks by Moscow Python Meetup

Other Decks in Programming

Transcript

  1. Григорий Петров
    Voximplant
    Голосовая почта,
    Python и TensorFlow

    View Slide

  2. Что сейчас будет?
    Рассказывает Григорий Петров
    Специализация Руководство разработкой
    Чем занимается Технический евангелист
    Опыт Более 15 лет
    Время выступления 10 минут
    Вопросы В конце выступления, 5 минут

    View Slide

  3. Как вообще работает телефония?

    View Slide

  4. Как вообще работает телефония?
    +79262251608

    View Slide

  5. Телеком оператор
    Как вообще работает телефония?
    +79262251608

    View Slide

  6. Телеком оператор
    Как вообще работает телефония?
    +79262251608

    View Slide

  7. Телеком оператор
    Как вообще работает телефония?
    +79262251608
    SIP, RTP, E1...

    View Slide

  8. Как вообще работает телефония
    Оператор обрабатывает входящие звонки от
    авторизованных пользователей на
    обслуживаемый им номер.

    View Slide

  9. Как вообще работает телефония
    Оператор обрабатывает входящие звонки от
    авторизованных пользователей на
    обслуживаемый им номер.
    Звонящий оператор платит оператору,
    который обслуживает номер.

    View Slide

  10. Техническая деталь: early media
    - Пока входящий не "принят", он бесплатен
    - Можно играть гудки или автоответ
    - Обычно завершают секунд через 40
    - Такие звонки никто не любит

    View Slide

  11. Следите за руками
    - "Принимаем" звонок
    - Играем запись "оставьте сообщение"
    - 20 секунд записываем что-нибудь
    - Все это время оно тарифицируется
    - Профит!Голосовая почта

    View Slide

  12. Голосовая почта
    - Она у всех разная
    - Стандартный гудок мало кто отправляет

    View Slide

  13. А не обучить ли нам нейросеть?

    View Slide

  14. Данных слишком много
    - Голос в 8кГц - это очень много данных
    - Для очень большой сети
    - А для большой сети нужно много семплов

    View Slide

  15. Данные нужно подготовить

    View Slide

  16. Данные нужно подготовить
    - В Python все хорошо. Особенно с FFI
    - SWIG, и у нас есть либы
    - Чтобы вытащить Mel-frequency cepstrum
    - И другие страшные слова!

    View Slide

  17. Данные нужно классифицировать
    - Можно автоматически, но много категорий
    - Можно вручную

    View Slide

  18. Результат
    - Это work in progress :)
    - Очень хорошо детектится голос
    - Выбирать модели - это шаманство
    - Рекуррентные сети или Гауссианы

    View Slide

  19. Это все на сегодня
    Теперь можно задавать вопросы.
    Рассказывал и показывал Григорий Петров
    [email protected]
    http://facebook.com/grigoryvp

    View Slide