Как мы спасали видео одного IT-евангелиста нейросетями

-oq0wjcxznu3mr83vgbgmddhrzk.png

Недавно нам понадобилось чистить звук на рекламном ролике: во время записи шумел кулер. Обычно, в таких ситуациях дергается звукорежиссер, который долго и мучительно вычищает звуковую дорожку руками.

Но мы решили пойти новым путем и прогнали звуковую дорожку через нейросети плагина Nvidia RTX voice, всего за 6 минут мы получили настолько впечатляющий результат, что мы не смогли бы спокойно спать, пока не:

  • разобрались, как работает эта нейросеть
  • проверили, как плагин работает на ASMR — теряется ли эффект или становится лучшие

Что за видео мы чистили


У Macloud появился амбассадор — девушка Анна. Она ничего не знала об администрировании серверов до знакомства с нами, но ей оказалось интересно учиться.

У Ани довольно пикантная работа в 18+ стримингах и она решила объединить два хобби: во время стримов настраивать серверы по подсказкам зрителей.

Мы познакомились с Nvidia RTX voice, когда помогали ей чистить звук на первом ролике, где она поднимает VPN.


Но теперь давайте вернемся к нейросетям и ASMR — может ли нейросетка уничтожить тот самый эффект?
Человеческое сознание еще не раскрыло нам всех своих тайн, люди почти досконально исследовали строение мозга, работу мембран в нейронах, механизм деполяризации и функции медиаторов, но само сознание все еще ускользает от исследователей и до сих пор нет четкого понимания о том — что же оно такое. С момента поэтического определения, данного академиком Павловым, который сравнил его с солнечными зайчиками, скользящим по коре головного мозга, прошло очень много лет, но, с тех пор, ученые так и не могут определенно сказать — что оно такое.

Что такое ASMR и откуда берутся мурашки?


Несколько лет назад был открыт забавный эффект, который, у некоторых людей, вызывает очень своеобразные ощущения, при прослушивании записей, где намеренно преувеличены шуршащие и шипящие звуки. Его назвали: ASMR (Autonomous sensory meridian response или Автономная сенсорная меридиональная реакция). Сложное определение не облегчает понимание его природы, которое выражается в «мурашках» возникающих где-то в затылке и спускающихся по шее к спине. Ощущения, чаще всего, приятные и очень залипательные, больше всего они похожи на мурашки, которые вызывает «массажер мозга» с пружинками.
b807eeedbb4bc0c6aae331d6c80a6903.png

Этому эффекту подвержены не все, он возникает примерно у трети людей, которые прослушивают ASMR-записи и сильно отличается по степени воздействия, тем не менее — это не самовнушение и не коллективная галлюцинация, ощущения мурашек возникают совершенно однозначно и ярко.

Сама природа дрожи и озноба очень древняя, доставшаяся нам в наследство от далеких диких предков, живших в условиях постоянной угрозы жизни и здоровью. Все помнят теорию о происхождении видов и то, что нашими предками были приматы, той или иной степени волосатости. Шерсть — это не пассивная ткань, состоящая из одних только омертвевших клеток, содержащих роговые пластинки и несет не чисто декоративную функцию. Одно из ее назначений, это защита от холода, с помощью создания воздушной теплоизолирующей прослойки, между кожей и окружающей средой. Изменение температуры воздуха, заставляет волосяной покров менять свою толщину. От холода сокращаются специальные мышцы, расположенные в толще кожи и поднимающие или опускающие волоски. Когда животному холодно, то волоски приподнимаются и шерсть становится более пышной, увеличивая толщину воздушной прослойки. Наверняка, все замечали, какими круглыми бывают снегири и синицы зимой, когда они нахохливаются от холода, это следствие работы «пиломоторного (буквально: волоско-двигательного) рефлекса».  

3468df9e386c727af3eb1b1aceecd04f.png

Другая причина изменения тонуса мускулатуры у волосяных фолликулов — угроза. Древний рефлекс поднимает волоски дыбом, увеличивая контуры тела, иногда довольно значительно, чтобы произвести на потенциального врага впечатление того, что животное больше, чем есть на самом деле. 
d4f68b0b6db471572b7053bf4f735215.png

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

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

Как звукорежиссеры борятся с шепотом и шумом


Ученые так и не разобрались с причинами этого эффекта, видимо, пока находятся более увлекательные задачи, чем разбираться в мурашках от шипящих звуков. На обычных видео они почти всегда считаются дефектом записи и звукорежиссеры борются с ними самыми разными способами.

Первый круг обороны звукорежиссера от помех — это фильтры микрофона, они часто попадают в кадр при съемках и любой может вспомнить как они выглядят. При студийной записи, перед микрофоном ставят так называемый «поп-фильтр» в виде очень тонкой сетки или мембраны, которая снижает помехи от дыхания человека. Когда съемка идет на открытом воздухе, то на микрофоны надевают меховые чехлы с очень длинными ворсинками и они становятся похожими на ангорских котов, это снижает турбулентные завихрения от ветра обтекающего микрофон.

53fa4e6a52a5efde1f7a5128775f6c34.png

Следующий этап борьбы с подобным шумом электронный. Чтобы понять, как он работает, разберемся в частотном составе человеческой речи. 

Больше всего энергии человеческого голоса (около 60%) лежит в диапазоне от 63 Гц до 500 Гц, но информационное наполнение этого интервала всего 5%. Больше всего информации несет диапазон от 500 Гц до 1 кГц, ее в нем примерно 35%. Оставшиеся 60% информации приходится на шипящие звуки в диапазоне от 1 кГц до 8 кГц, но они несут всего всего 5% энергии. Хотя такие звуки самые слабые, от них сильно зависит разборчивость человеческой речи. Для удаления их из записи используется эквалайзер, при его правильной настройке, речь становится более четкой. 

253d7ee7ed10b59726d5728462d58d8d.png

Хотя, микшерный пульт с огромным количеством настроек в разных частотных диапазонах, все еще является одним из главных атрибутов звукозаписывающей студии, в обработке используется и более современная технология: цифровой сигнальный процессор (digital signal processor, DSP). Комплекс, состоящий из узкоспециализированного микропроцессора и программ, который занимается автоматической обработкой аудиосигнала, сочетая в себе множество функций, которые раньше выполнялись с помощью ручной настройки или электронных схем. Помимо продвинутого эквалайзера, процессор может имитировать задержку сигнала для построения сцены в определенном участке помещения и многие другие функции обработки звука. DSP используются как в музыкальных плеерах, так и в системах распознавания речи, выделяя из сигнала наиболее информативные диапазоны частот.

Нейросети на тензорных ядрах: Nvidia RTX


70c310f4073f34dfef50ad0af14a59e1.png

Технология не стоит на месте, на смену ручному микшерному пульту и ограниченному набору обычных программ пришли нейронные сети. В 2017 году разработчики Nvidia опубликовали статью Interactive Reconstruction of Monte Carlo Image Sequences using a Recurrent Denoising Autoencoder, в которой описали метод машинного обучения для восстановления последовательностей изображений, полученных с помощью методов Монте-Карло, на его основе была создана программа NVIDIA OptiX AI-Accelerated Denoiser, которая занимается удалением шума с 3D-рендеров. 

Если кто-то подзабыл суть метода Монте-Карло, мы напоминаем его в этой ASMR-записи:


На этом исследования не остановились: весной прошлого года, компания Nvidia представила продукт, который использует мощь современных видеокарт не только для взлома хэшей, майнинга крипты или банальных видеоигр, но и для улучшения качества видео-стриминга. Кроме вычитания фона из видеотрансляции, числомолотилка RTX используется в программе NVIDIA RTX Voice для интеллектуального шумоподавления в режиме реального времени. Теперь, владельцы дорогущих видеокарт могут значительно улучшить качество своих стримов. 

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

Началось все с того, что Nvidia разработала графические процессоры содержащие «тензорные ядра». Раньше в графике использовались процессоры с «шейдерными ядрами», они отличаются от обычных настольных процессоров тем, что могут производить более простые вычислительные операции, но зато во множестве параллельных конвейеров. Узкая специализация позволила сильно увеличить скорость обработки графики и такие процессоры стали называться GPU. 

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

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

В конце 2018 года, фирма NVIDIA представила новую возможность в своих видеокартах — улучшение качества изображения с помощью нейросети под названием DLSS (Deep Learning Super Sampling), суперсемплинг с помощью глубокого обучения. Традиционный ресемплинг и сглаживание требуют огромного количества вычислений и являются причиной высокой стоимости видеокарт,   увеличение разрешения изображения происходит с помощью тупых числомолотилок, которые, по сути своей, производят предельно простые математические операции, но в огромном количестве. DLSS работает по другому, чтобы избежать масштабных вычислений, картинка считается для сравнительно небольшого разрешения, а зачем «растягивается» с помощью искусственного интеллекта. Это требует намного меньше ресурсов, чем прямой пересчет, при сравнимом качестве изображения и позволяет получать хорошую картинку на не очень дорогих видеокартах, а на мощных — существенно повысить частоту кадров. 

Первые версии нейросети DLSS работали используя тензорные ядра процессоров RTX Turing. Но получилось совсем не так, как в радужных обещаниях разработчиков NVIDIA, картинка выглядела мутной и с большим количеством артефактов, будто нарисованная грубыми мазками масляных красок:

3ucoy3rkmaia0ttnnd0yzf5kzty.png

Картинка кликабельная — при клике она откроется в более высоком разрешении

Игроки без восторга встретили новую технологию, тем более, что она была привязана к определенным разрешениям и качеству, а поддерживалась только в небольшом количестве игр. 

В итоге, Nvidia отказалась от DLSS первой версии и продолжала работу над усовершенствованием алгоритма. Следующий шаг был сделан для игры под названием Control, в ней использовалась работа нейросети на обычных шейдерных ядрах, но уже показывающая неплохие результаты, которые получились благодаря обучению нейросети на семплах рендеринга в высокое разрешение, взятых из этой самой игры. 

Отличия разглядеть можно, но они не бросаются в глаза, как в первой версии, а затраты по мощности заметно меньше, что позволяет увеличить частоту кадров до комфортной. Если первая версия алгоритма, работавшая на тензорных ядрах, не давала существенного прироста качества, по сравнению с рендерингом в 1440 и апскейлом до 4К, но еще и работала почти с той-же скоростью. То последняя версия, на шейдерных ядрах, работает быстрее апскейла и со сравнимым качеством.

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

У алгоритма есть проблемы, он пока не очень хорошо работает на сетках и тонких линиях, но уже вполне оправдывает себя. Версия, работающая на тензорных ядрах примерно на 30–40% быстрее, чем шейдерная.

Как NVIDIA RTX Voice автоматически подрезает шум


bd4321dfa1cfbf4bbfb335fee5728fa7.png

После успешного запуска DLSS для графики, разработчики Nvidia не остановились на достигнутом и расширили примирение нейросети до обработки звука, плагин NVIDIA RTX Voice построен на ее основе, но алгоритм немного отличается. Нейросеть используемая в этом случае, относится к «вариационным автоэнкодерам» или «автокодировщикам». 
d02a2a5266a6040a2241029912da9e45.png

В отличии от традиционных нейросетей, у которых в промежуточных слоях очень много нейронов, у автоэнкодера количество нейронов уменьшается в каждом последующем слое. Его задачей является не распознавание объекта, а наоборот — отбрасывание всех данных, не являющихся ключевыми для него. Другими словами — он удаляет шум, сначала кодируя объект с помощью аппроксимации, а потом декодируя его обратно. Нейросеть для RTX Voice обучалась на сэмплах человеческого голоса, тренируясь отсекать все посторонние звуки, которые не относятся к речи. Если ее «запустить наоборот», то она отфильтрует из звуковой дорожки все посторонние шумы, оставив только чистый голос. (Что-то похожее делали ретушеры при обработке фотографий, до того, как для этого были выпущены многочисленные плагины-шумодавы. Фотография уменьшалась в полтора-два раза, а потом увеличивалась обратно, в результате этой операции качество страдало не очень сильно, но зато заметно сглаживались шумы характерные для джпеговской компрессии ли скана с журнального оттиска.)

Поскольку для подобной операции используются тензорные ядра видеокарт и потому, технология работает только на графических адаптерах серии RTX. 

Нейросетка в действии: как сработало на обычном стриме и ASMR


Пришло время рассказать о том, как мы попробовали применить видеокарту RTX для очистки нашей записи от шумов и к чему это привело. На видео ниже фрагмент стрима, на котором выключено шумоподавление:
Полное видео, как Аня настраивает VPN можно посмотреть на Vimeo. Версия для смелых без цензуры на onlyfans.

Видео записывалось смартфоном iPhone 11. На этом ролике последовательно демонстрируется запись звука с разных источников

  • встроенные микрофоны iPhone, все шумодавы выключены;
  • встроенные микрофоны iPhone, включен шумодав Nvidia RTX Voice;
  • микрофоны гарнитуры из ценового диапазона $100-$120, шумодавы выключены;
  • микрофоны гарнитуры из ценового диапазона $100-$120, включен шумодав Nvidia RTX Voice;
  • USB-микрофон, все шумодавы выключены;
  • USB-микрофон, включен шумодав Nvidia RTX Voice;

Побочные шумы «выключаются» практически полностью и становится очень наглядна разница между микрофонами разного качества. В одних речь звучит отчетливее. 

В следующем ролике видны слабые места алгоритма RTX Voice. У нейросети явные проблемы с шепотом, она «проглатывает» первые и последние звуки, принимая их за паразитный шум. Справедливости ради стоит сказать, что вряд ли можно выделать речь традиционными способами из такого шума.

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

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


Спектограммы из видео-ролика с ASMR


На спектрограммах наглядно видна работа TRX Voice — звуковая дорожка из ролика, где девушка шептала и шуршала в микрофон.

40b680167405ccc8a509277189c38db7.png
Исходный звук, без вмешательство искусственного интеллекта

b7cn7ryr6zmegk-a-b2kqxdxrak.png
Звук, обработанный нейросетью

А всплеск на пустом участке справа — это та самая «говорящая открытка»!

Для мурашек нейросети еще придется постараться


Nvidia RTX voice отлично справляется с обработкой шумов, если бюджет ограничен, а видео нужно спасать. Но для записи и обработки ASMR он не подходит.
VPS серверы от Маклауд быстрые и безопасные.

Зарегистрируйтесь по ссылке выше или кликнув на баннер и получите 10% скидку на первый месяц аренды сервера любой конфигурации!

et1aypandyuamqprsz3m2ntm4ky.png

© Habrahabr.ru