Więcej...
Uczenie maszynowe - Sztuczna Inteligencja w produkcji muzyki
Uczenie maszynowe - Sztuczna Inteligencja w produkcji muzyki

SI, czyli Sztuczna Inteligencja, wdziera się do naszego życia – a także, coraz śmielej, procesu tworzenia muzyki. Podłączmy się zatem do Matrixa i wejdźmy głębiej...

Technologia
2019-07-28

Jak wskazuje nazwa, uczenie maszynowe jest formą SI, polegającej na analizowaniu i przechowywaniu danych przez algorytmy komputerowe, a następnie na podejmowaniu decyzji i przewidywaniu na ich podstawie przyszłych wyników. Uczenie głębokie jest kolejnym krokiem ewolucyjnym: algorytmy mogą w autonomiczny sposób, bez konieczności nadzoru ze strony człowieka, wykorzystywać cyfrowe sieci neuronowe, czyli twory działające analogicznie do ludzkiego mózgu. Mówiąc prostymi słowami, kod komputerowy może, do pewnego stopnia, zostać zaprogramowany w taki sposób, aby uczył się sam, a następnie wykorzystywał to, czego się nauczył, do wykonywania złożonych operacji na skalę, która przekracza możliwości ludzkiego umysłu.

Technologia ta, uważana za jeden z kroków milowych w rozwoju oprogramowania w ciągu ostatnich kilku lat, jest możliwa dzięki rewolucyjnemu postępowi w zakresie mocy obliczeniowej i przechowywania danych, a obecnie stanowi integralną część codziennego życia, czego przykładami są takie narzędzia jak Siri czy Alexa, przechowujące dane w sposób inteligentny, pozwalający przewidywać przyszłe poczynania użytkownika. Czy zastanawiałeś się kiedyś, dlaczego funkcja „Osoby, które możesz znać” na Facebooku, a także i te nieznośne, spersonalizowane reklamy w mediach społecznościowych są zawsze tak dokładnie dobrane? A nie wspomnieliśmy jeszcze nawet o oprogramowaniu do rozpoznawania twarzy, filtrowania spamu pocztowego, klasyfikacji obrazów, wykrywaniu oszustw...

Tak, algorytmy uczenia maszynowego są wszędzie, a dziedzina muzyki nie jest tu wyjątkiem. Algorytmy usług strumieniowych kierują się podobnymi listami sugestii, pomagając nam, konsumentom muzyki, wyszukiwać nowe utwory i artystów, których normalnie byśmy nie odkryli. W ubiegłym roku dział badań Magenta firmy Google opracował NSynth Super, syntezator open-source sterowany algorytmem NSynth, zaprojektowany do tworzenia zupełnie nowych dźwięków poprzez poznanie właściwości akustycznych już istniejących. Komputerowo wspomagane komponowanie muzyki stosowane jest już od 1990 roku, kiedy to Brian Eno wydał na dyskietce generatywny, stworzony przy użyciu programu Koan album Generative Music 1. Amper Music przenosi tę koncepcję w XXI wiek: to usługa, która wykorzystuje głębokie nauczanie do automatycznego, komputerowego komponowania muzyki do materiałów multimedialnych w oparciu o wybór „stylu” lub „nastrój użytkownika”. Twórca Taryn Southern zasłynął z tego, że przy wsparciu SI skomponował cały utwór za pomocą Amper Music, który został wyświetlony przez użytkowników YouTube niemal 2 miliony razy.

Co więcej, technologia ta jest wykorzystywana jako pomoc twórcza dla producentów muzycznych i wykonawców. Audionamix Xtrax Stems 2 to oparte na uczeniu maszynowym i działające w chmurze oprogramowanie, pozwalające rozbić w pełni zmiksowane nagrania stereo na trzy składowe sub-stemy (wokal, perkusja i warstwa melodyczna), które można następnie wykorzystać do remiksów na żywo i mashupów. Niezależnie od tego, co sądzisz na temat włączenia maszyn w proces kreowania muzyki, to nie ulega wątpliwości, że technologia sztucznej inteligencji pozostanie z nami na długo, a my jesteśmy świadkami początku kolejnej rewolucji technologicznej.

Czy roboty mają wenę?

Producenci oprogramowania iZotope wykorzystali technologię uczenia maszynowego w nowych wersjach Ozone, Neutron i Nectar. Dyrektor generalny iZotope, Jonathan Bailey, wyjaśnia jej funkcjonowanie.

Terminy „uczenie maszynowe” i „głębokie uczenie” są dziś spotykane bardzo często. Jak wyjaśnić laikowi, co one oznaczają? Jonathan Bailey: Uczenie maszynowe to termin odnoszący się do specyficznych technik w ramach szerszego pojęcia, jakim jest sztuczna inteligencja, pozwalających systemowi na odnajdywanie wzorców w większych zbiorach danych albo podejmowanie decyzji w odpowiedzi na pojawienie się nienapotkanych wcześniej danych. Typowym przykładem jest technologia rozpoznawania twarzy. Oprogramowanie w Twoim telefonie z całą pewnością nigdy nie zetknęło się z Twoimi zdjęciami – dlatego, że nie istniały, póki ich nie wykonałeś – a mimo to potrafi rozpoznawać (klasyfikować) twarze i grupować je.

Techniki uczenia maszynowego istnieją już od dekad, ale wykorzystuje się je głównie w sieciach neuronowych. Są to połączone, statystyczne modele, inspirowane sposobem, w jaki funkcjonują neurony w naszych mózgach jako system połączonych węzłów. W ciągu ostatnich dziesięciu lat nastąpiło połączenie dwóch sił: eksplozji liczby danych cyfrowych i dostępności zasobów obliczeniowych. Stało się to możliwe dzięki rozwiązaniom typu cloud computing, takim jak Amazon Web Services i umożliwiło dokonanie przełomu w wykorzystaniu technik uczenia maszynowego. W tym momencie na scenę wkracza uczenie głębokie. Odnosi się ono do wykorzystania wysoce złożonych modeli sieci neuronowych, które pracują z kilkoma warstwami węzłów, połączonych w skomplikowane konfiguracje. Wymagają one potężnych komputerów do nauki - z użyciem dużych zestawów danych - i działania.

Jak uczenie maszynowe/głębokie może wpłynąć na poprawę jakości narzędzi programowych dla muzyków i profesjonalnych dźwiękowców?

W ciągu ostatnich kilku lat iZotope włożył wiele wysiłku w rozwój tych technik. Jednym z przykładów jest Neutron, inteligentny tor kanałowy, który wykorzystuje głębokie uczenie do identyfikacji/klasyfikacji instrumentu, którego dźwięk zapisany został na danej ścieżce sesji muzycznej. W oparciu o tę kategoryzację, a także pewne cechy akustyczne analizowanego sygnału audio, formułujemy zalecenia co do ustawień dynamiki, korekcji i/lub excitera dla danej ścieżki w miksie.

Funkcja Music Rebalance zawarta w nowej odsłonie RX 7 wykorzystuje tę technikę do „rozbijania” struktury muzycznej na odrębne stemy, co pozwala na dostosowanie wzajemnych proporcji, a także indywidualne ich przetwarzanie. Badamy też możliwości w zakresie wykorzystania głębokiego uczenia w syntetyzowaniu treści muzycznej.
 
Jakie są najważniejsze zalety i wady tych koncepcji?

Głębokie uczenie pozwoliło rozwiązać pewne problemy, z którymi zmagaliśmy się w przeszłości. Na przykład, wielu naszych klientów prosiło nas o opracowanie metody pozwalającej na eliminowanie szeleszczących zakłóceń w nagraniach z mikrofonów przypinanych, co było trudne nawet przy zastosowaniu drobiazgowej analizy spektralnej i potężnej technologii przetwarzania.

W przypadku firm zainteresowanych rozwojem takiej funkcjonalności korzystanie z technik głębokiego uczenia staje się coraz łatwiejsze, ale nadal nie jest proste. Jednym z głównych wyzwań we wdrażaniu działających rozwiązań pozostaje dostęp do użytecznych danych szkoleniowych. Jest to swego rodzaju nowy obszar działania dla firm, które tradycyjnie koncentrują się na opracowywaniu algorytmów. Oprogramowanie, jak i technologia, których używamy do tworzenia sieci neuronowych, są ogólnodostępne (typowym przykładem jest Google TensorFlow). Dla wielu firm dostęp do dużej mocy obliczeniowej jest dziś stosunkowo łatwy. Jednak to dane stały się wąskim gardłem, i stanowi to interesujący problem. Google udostępnia swoje oprogramowanie i pobiera grosze za usługę przetwarzania w chmurze, ale pilnie strzeże swoich danych. Tak czy inaczej, głębokie uczenie nie jest panaceum na wszystkie problemy. Nadal w dużym stopniu polegamy na wiedzy pochodzącej z kanonu cyfrowego przetwarzania sygnałów. Uczenie się, jak efektywnie wykorzystywać głębokie sieci neuronowe, staje się coraz łatwiejsze, ale badania to wciąż domena naukowców o wysokich kwalifikacjach. Sieci neuronowe mogą być bardzo trudne do debugowania i czasami działają jak swego rodzaju „czarna skrzynka” – nie do końca wiadomo, co się dzieje w środku. Są one również wymagające pod względem obliczeniowym, jak i dostępności zasobów, w rezultacie czego ich uruchamianie w aplikacjach pracujących w czasie rzeczywistym – takich jak syntezatory lub wtyczki audio – jest bardzo trudne. Uczenie głębokie samo w sobie jest ekscytującym tematem, ale chcemy, aby ostatecznie to właśnie ta magia była wynikiem, jaki trafia do użytkownika.

Jak muzycy mogą wykorzystać tę technologię, jednocześnie zachowując kreatywność?

Istnieją dwa odrębne trendy badawcze. Jeden ma swoje korzenie w dziedzinie muzykologii i skupia się na algorytmicznych technikach komponowania muzyki. W tym nurcie działa Amper Music, oferujący produkt, który potrafi generować muzyczną oprawę dla różnych treści, takich jak wideo na YouTube czy reklamy. Zwolennicy drugiego trendu z kolei koncentrują się na aplikacjach np. do autoakompaniamentu. A zatem jedne grupy próbują automatyzować proces kreatywny, inne zaś tworzą narzędzia wspierające go.

Równowaga jest bardzo delikatna, ale iZotope zdecydowanie identyfikuje się z nurtem rozwijania kreatywności. Głęboko podziwiam zespoły badawcze, takie jak Google Magenta, których celem jest wykorzystanie uczenia maszynowego w procesie tworzenia sztuki – jakkolwiek nie na tym polega filozofia ani strategia działania iZotope. My zamierzamy wykorzystać uczenie głębokie w taki sposób, aby wspomagało proces twórczy. Obecnie skupiamy się głównie na zastosowaniach technicznych, ale dostrzegam wyraźnie, że zmierzamy w kierunku bardziej kreatywnych obszarów, trzymając się celu, jakim jest właśnie wspieranie kreatywności. Nie chcemy eliminować czynnika ludzkiego z procesu tworzenia.

Czy więc oprogramowanie będzie pisało i miksowało muzykę za nas?

W niektórych przypadkach tak jest już dziś. Jeśli jesteś wspaniałym pieśniarzem-songwriterem, ale nigdy w życiu nie miałeś do czynienia z jakimkolwiek programem DAW, to uczenie głębokie będzie mogło Ci pomóc w dokonaniu wspaniale brzmiących nagrań, a Ty nawet nie będziesz musiał się uczyć, czym jest i jak działa kompresor. Jeżeli natomiast codziennie pracujesz z aplikacją DAW, to będzie ona mogła zapamiętać, jakie efekty lubisz, a jakich nie, oraz jakie informacje wizualne i dźwiękowe są Ci potrzebne do wykonania pracy, tym samym pozwalając Ci skupić się na samej muzyce.

Spodziewano się kiedyś, że fotografia uśmierci malarstwo. Nie uśmierciła. Głęboko wierzę w nasze zdolności do wymyślania nowych idei.

Demontaż miksu ze wsparciem SI

Do demontażu fragmentu zmiksowanej muzyki użyjemy bazującego na SI modułu Music Rebalance, pochodzącego z pakietu iZotope RX 7 Advanced.

1.

Zaczynamy od pętli czterech taktów utworu z płyty winylowej. Ta gęsta próbka zawiera żeński wokal, perkusję, gitarę basową i dwie partie gitar. Uruchamiamy iZotope RX 7 i ładujemy do niego próbkę, przeciągając ją do głównego okna.

2.

Kształt przebiegu dźwiękowego można zobaczyć na głównym wyświetlaczu widmowym RX 7. Moduł Music Rebalance wykorzystuje technologię uczenia maszynowego do analizowania dźwięku i rozdzielania go na elementy składowe, które można następnie zgłaśniać i ściszać w miksie. Załadujmy go z listy po prawej stronie.

3.

Elementy sterowania modułem Music Rebalance są stosunkowo proste – cały proces dzielenia sygnału zachodzi za kulisami. Trzy algorytmy Separation decydują o tym, czy przetwarzanie zostanie zastosowane do lewego i prawego kanału razem, czy osobno. Dla uzyskania możliwie najlepszej jakości wybierz Advanced Joint Channel.

4.

Przesuń tłumik Vocal do minimum, a następnie kliknij Render, aby zgrać rezultat. Okazało się, że wokal zniknął z miksu w odtwarzanej pętli, pozostawiając po sobie jedynie niewielką ilość stereofonicznego efektu delay.

5.

Naciśnij Ctrl/Cmd+Z, aby cofnąć operację, po czym wróć do Music Rebalance. Teraz spróbujemy wyizolować podkład muzyczny i wokal w taki sposób, aby powstała „remiksowalna” pętla bez warstwy rytmicznej. W tym celu ustaw tłumik Drums na minimum, a następnie znów użyj funkcji Render. To naprawdę działa!

6.

Cofnij poprzedni render, a następnie dostosuj głośność czterech elementów, tak aby pozostał sam wokal, z odrobiną gitary w tle. Można się spodziewać, że pojawią się subtelne artefakty, ale gdy tylko dołożymy nowy rytm i linię basu, przestaną one być słyszalne.