Pull to refresh

Comments 25

В деме не хватает _изначально зашумлённого_ семпла.
А не «чистый + шум».
Хорошее замечание. Добавим несколько из самых жестких случаев. =)
>Internal Server Error: Удаленный сервер возвратил ошибку: (500) Внутренняя ошибка сервера.

Это все из-за хабраэффкта, да? Или я что-то не так делаю
Да, как-то все упало. =)
Дайте немного времени, сейчас все починим.
У нас наблюдаются технические проблемы с нашим внутрисервисным RPC. Приношу извинения за недоступность сервиса — мы максимально быстро постараемся все починить.
Internal Server Error: Failed to decode audio.
Пробовал WAV 48 KHz mono и 44 KHz mono. Надо сперва вручную перекодировать в 8 KHz?
Нет, все автоматически произойдет, как только мы починим. Мы, к сожалению, замерджили на продакшин сервер неработающий код, на который запитан весь другой работающий код. Бывает… =(
а какую НС использовали?
передо мной сейчас стоит проблема сделать эхо-подавитель для VoIP, так насколько я смотрю по литературе, там в основном multi-delay фильтры используются с последующим нелиненйным процессингом. Это все хорошо оптимизируется для маломощных процессоров. А насколько НС более требовательна к процессору?
В сети ~2.5М коеффициентов, соответственно ~5М операций (умножение + сложение) на каждый фрейм. С текущим окном это чуть больше 300М операций на секунду материала.
«около двух недель на 40 ядрах» — не используете видюшки, потому что применяете RNN?
Да, код местами жестко экспериментальный. Поддерживать два codebase, для CPU и GPU, тяжеловато, плюс мы активно используем MKL, поэтому выигрышь от GPU не такой гигантский. Решили пока, что второго codebase он не стоит.
сначала я подумал про адаптивное шумоподавление речевого сигнала от женщины справа
А возможно ли использовать ваш алгоритм для удаления голоса из музыки?

Например, скормить вашему алгоритму песню — он выделит из нее речь и удалит музыку как «шум». Потом вычесть отделенный речевой сигнал из суммарного. Должна остаться только музыка (если фазы правильные). Профит.
Да, структура голоса достаточно хорошо отделяется от музыки. Но для хорошего результата, мне кажется нужно было бы сделать иначе — натренировать приличных размеров RNN на удаление голоса из музыки, вместо выделения голоса из музыки. Хотя тренировать пришлось бы несколько дольше, да и материал подсобрать было бы еще той задачей, если конечно нет друзей в приличной звукозаписывающей компании, которые могу дать плюс и минус отдельно.
удаление голоса из музыки, вместо выделения голоса из музыки

Мне кажется, это задачи равноценные. Если натренировать систему на удаление голоса — то после вычитания из песни выделенного музыкального сигнала должен остаться только голос. И наоборот. Так же как и вашу систему (если она выдает на выходе речевой сигнал с удаленным шумом) можно использовать «в обратном направлении» — для выделения шума и подавления речи. Одним словом, когда смесь из двух компонентов разделена, и мы имеем на руках один компонент — то побочным продуктом получается и другой.

Другое дело, что ваша нейронная сеть натренирована не на музыке, а на типичных шумах окружающего мира, поэтому на музыке она может и не показать хороших результатов без дополнительной тренировки.
Загружаю свой семпл в надежде улучшить качество, но у меня «качество» т.е четкость голоса не повышается.

ЧЯДНТ?

MPEG Type: MPEG 0.0 Layer 3
Bitrate: CBR 8 kbps
Sample Rate: 8000Hz
Channel Mode: Single channel
Если возможно, я бы хотел посмотреть на файл. Например через tridemax@sapiensapi.com?
Здравствуйте, очень заинтересовала ваша технология. Особенно впечатлило то видео, где Дублин правильно ассоциируется с Ирландией. Мне интересно, каким образом вы создали подобные ассоциативные связи, работает ли это для всех других городов (и других предметных областей); строятся ли эти связи вручную или процесс автоматизирован.
Понимаю, конечно, что это может быть вашим «секретом фирмы», но будет здорово, если вы сможете ответить хотя бы на некоторые вопросы.
Спасибо!
Это называется латентное семантическое пространство. А вектора, которые описывают слова в этом многомерном пространстве, называются в литературе word embeddings и имеют такие вот свойства, где близкие по семантике слова находятся рядом. У нас, конечно, все несколько сложнее — само семантическое пространство объединяет сразу все поддерживаемые языки («кот» и «cat» в нем находятся рядом), а языковые модели умеют отвечать на запрос о вероятности нахождения конкретного слова на конкретной позиции в конкретном предложении, что дает возможность строить иерархии отношений слов. Но в базе современных подходов к NLP лежат именно эти word embeddings.
Спасибо за ответ!
Буду изучать, что это такое, «латентное семантическое пространство».
А можно поинтересоваться, вы сами разработали имплементацию алгоритма с нуля и или используете какие-то готовые решения?
Чтобы начать, лучше конечно воспользоваться чем-то готовым. Я бы порекомендовал word2vec.
Sign up to leave a comment.

Articles