Перевод поста Риты Крук " Бенедикт Камбербэтч может очаровать людей, но сможет ли он обмануть компьютер? ".
На этой неделе вышел долгожданный фильм « Игра в имитацию " ( Игра в имитацию ) рассказывает историю жизни Алана Тьюринга (100-летие которого совпало с 22-летием системы Математика - более подробную информацию см.
в сообщении Стивена Вольфрама.
С Днем Рождения, Алан Тьюринг ).
Центральная тема фильма — машины Тьюринга.
Интересно, что в 2007 году компания Wolfram Research объявила приз за доказательство универсальности 2.3 машин Тьюринга.
Конечно, рекламное видео Бенедикт Камбербэтч, в котором он имитирует голоса и поведение других известных актеров, понравился многим.
Но я хотел узнать, может ли эта функциональность Математика из региона Машинное обучение распознать его голос, иначе он сможет «обмануть» и компьютер.
Лично я не могу перестать смеяться при просмотре этого видео, но мне хочется смотреть на эти пародии непредвзято.
Итак, я задался вопросом: действительно ли он так хорошо имитирует голоса других актеров, или мы все, включая меня, просто очарованы его личностью? Может быть, мой разум играет со мной злую шутку? Если взять всю выборку оригинальных голосов, действительно ли пародии неотличимы от них? Чтобы ответить на этот вопрос, 10 лет назад нам пришлось бы ходить по улицам и проигрывать отрывки из фильмов о Джеймсе Бонде, «Сиянии», «Бэтмене» и подражателе Камбербэтча, брать интервью у 300 человек и затем анализировать их мнение.
В современном мире можно использовать такие системы, как Математика чтобы ответить на эти вопросы! Язык Wolfram Language имеет встроенный функционал, позволяющий создать классификатор на основе обучающих выборок аудиофрагментов, что в конечном итоге позволит выяснить, сможет ли Камбербэтч «обмануть» компьютер.
Итак, я поставил перед собой задачу создать достаточно "приличную" базу данных голосовых клипов, помимо этого выделил фрагменты, соответствующие каждой из пародий Камбербэтча, а все остальное, наконец, предоставил сделать за меня.
Математика .
Построим путь к каждой из баз голосовых фрагментов, которые будут использоваться.
Математика для анализа.
Теперь давайте импортируем все оригинальные голоса:
Классификатор был создан с помощью функции Классифицировать , которому в качестве входных данных была передана обучающая выборка.
Для повышения производительности единожды созданный классификатор ( КлассификаторФункция ) затем можно мгновенно загрузить в систему из файла cfActorWDX.wdx (в закомментированной части кода, собственно, есть конструкция, создающая классификатор):
В моей базе данных были образцы оригинального голоса Бенедикта, голоса актеров, которым Бенедикт имитирует, и, наконец, фрагменты пародий на Бенедикта.
Исходники для создания обучающего набора были взяты отсюда: Алан Рикман , Кристофер Уокен , Джек Николсон , Джон Малкович , Майкл Кейн , Оуэн Уилсон , Шон Коннери , Том Хиддлстон , И Бенедикт Камбербэтч .
Всего я использовал 560 фрагментов, но, конечно, чем больше данных будет использовано, тем достовернее будет результат. При этом семплы должны быть максимально «чистыми» (без смеха, музыки, разговоров других людей и т. д.).
Они также должны быть одинаковой длины (3,00 с).
Чтобы убедиться, что у всех одинаковая длина, вы можете использовать в Wolfram Language такую конструкцию:
Некоторые файлы не были одноканальными, поэтому эту особенность также необходимо было устранить, чтобы оптимизировать наши результаты на этапе генерации и экспорта сэмплов.
Я благодарю Мартина Хэдли и Джона МакЛуна за помощь в создании этого кода.
Барабанная дробь.
пора поделиться результатами! Наверное, сейчас я разобью всем сердца, и мне определенно не хотелось бы этого делать.
так что я "виню" во всем себя Математика , поскольку машинное обучение фактически позволяет определить, чей голос звучит в том или ином фрагменте, а значит, позволяет распознать имитацию голоса и определить, кто на самом деле говорил.
Результаты ниже показывают, кто из действующих лиц и с какой вероятностью Математика дал «авторство» в каждом из фрагментов «подражания» Бенедикту голосам других актеров:
В большинстве случаев вероятность того, что заговорил какой-либо актер, кроме Бенедикта Камбербэтча или Алана Рикмана, близка к нулю.
Возможно, стоит отметить, что Рикман, Коннери и Уилсон говорят довольно медленно с большим количеством пауз (что весьма заметно в использованных мной отрывках), что в целом может несколько «запутать» алгоритм.
Сейчас самое время преодолеть это маленькое потрясение, не затаив «обиды» на Бенедикта.
Он по-прежнему, конечно, очень обаятелен.
В целом я восхищаюсь его талантом и с нетерпением жду возможности увидеть его игру в фильме, о котором я упомянул в самом начале своего короткого поста.
Ресурсы для изучения Wolfram Language (Mathematica) на русском языке: http://habrahabr.ru/post/244451 Теги: #wolfram #Wolfram #Wolfram Mathematica #язык вольфрама #машинное обучение #программирование