Facebook objavljuje EnCodec audio kodek koristeći mašinsko učenje

Meta/Facebook (zabranjen u Ruskoj Federaciji) predstavio je novi audio kodek, EnCodec, koji koristi metode mašinskog učenja za povećanje omjera kompresije bez gubitka kvalitete. Kodek se može koristiti i za streaming zvuka u realnom vremenu i za kodiranje za kasnije pohranjivanje u datoteke. EnCodec referentna implementacija je napisana na Python-u koristeći PyTorch okvir i licencirana je pod CC BY-NC 4.0 (Creative Commons Attribution-NonCommercial) licencom samo za nekomercijalnu upotrebu.

Za preuzimanje su ponuđena dva gotova modela:

  • Kauzalni model koji koristi stopu uzorkovanja od 24 kHz, podržava samo monofoni zvuk i obučen na različitim audio podacima (pogodan za kodiranje govora). Model se može koristiti za pakiranje audio podataka za prijenos pri brzinama od 1.5, 3, 6, 12 i 24 kbps.
  • Ne-kauzalni model koji koristi stopu uzorkovanja od 48 kHz, podržava stereo zvuk i trenira samo na muzici. Model podržava bitrate od 3, 6, 12 i 24 kbps.

Za svaki model pripremljen je dodatni jezički model koji vam omogućava da postignete značajno povećanje omjera kompresije (do 40%) bez gubitka kvalitete. Za razliku od prethodno razvijenih projekata koji koriste metode mašinskog učenja za audio kompresiju, EnCodec se može koristiti ne samo za govorno pakovanje, već i za kompresiju muzike sa stopom uzorkovanja od 48 kHz, što odgovara nivou audio CD-a. Prema rečima programera novog kodeka, prilikom prenosa brzinom od 64 kbps u poređenju sa MP3 formatom, uspeli su da povećaju stepen kompresije zvuka za otprilike deset puta uz održavanje istog nivoa kvaliteta (na primer, kada se koristi MP3, potrebna je propusnost od 64 kbps, za prijenos sa istim kvalitetom u EnCodec-u je dovoljno 6 kbps).

Arhitektura kodeka je izgrađena na neuronskoj mreži sa arhitekturom „transformatora“ i bazirana je na četiri veze: koder, kvantizator, dekoder i diskriminator. Koder izdvaja parametre govornih podataka i pretvara ih u upakovani tok pri nižoj brzini kadrova. Kvantizer (RVQ, Residual Vector Quantizer) konvertuje izlazni tok od strane enkodera u skupove paketa, komprimirajući informacije na osnovu odabranog bitrate-a. Izlaz kvantizatora je komprimovani prikaz podataka, pogodan za prijenos preko mreže ili spremanje na disk.

Dekoder dekodira komprimovani prikaz podataka i rekonstruiše originalni zvučni talas. Diskriminator poboljšava kvalitet generisanih uzoraka, uzimajući u obzir model ljudske slušne percepcije. Bez obzira na nivo kvaliteta i bitrate, modele koji se koriste za kodiranje i dekodiranje odlikuju prilično skromni zahtevi za resursima (proračuni neophodni za rad u realnom vremenu izvode se na jednom CPU jezgru).

Facebook objavljuje EnCodec audio kodek koristeći mašinsko učenje


izvor: opennet.ru

Dodajte komentar