„Facebook“ skelbia „EnCodec“ garso kodeką naudodamas mašininį mokymąsi

Meta/Facebook (uždraustas Rusijos Federacijoje) pristatė naują garso kodeką EnCodec, kuris naudoja mašininio mokymosi metodus, kad padidintų suspaudimo laipsnį neprarandant kokybės. Kodekas gali būti naudojamas tiek garso transliacijai realiuoju laiku, tiek kodavimui, kad vėliau būtų galima išsaugoti failus. „EnCodec“ nuorodos diegimas yra parašytas „Python“, naudojant „PyTorch“ sistemą, ir yra licencijuotas pagal CC BY-NC 4.0 („Creative Commons Attribution-NonCommercial“) licenciją tik nekomerciniam naudojimui.

Siūlomi atsisiųsti du paruošti modeliai:

  • Priežastinis modelis, kuriame naudojamas 24 kHz diskretizavimo dažnis, palaikomas tik monofoninis garsas ir parengtas naudojant įvairius garso duomenis (tinka kalbos kodavimui). Modelis gali būti naudojamas supakuoti garso duomenis, skirtus perduoti 1.5, 3, 6, 12 ir 24 kbps bitų sparta.
  • Nepriežastinis modelis, kuriame naudojamas 48 kHz atrankos dažnis, palaikomas stereofoninis garsas ir mokomas tik muzikos. Modelis palaiko 3, 6, 12 ir 24 kbps bitų spartą.

Kiekvienam modeliui buvo parengtas papildomas kalbos modelis, leidžiantis pasiekti reikšmingą suspaudimo laipsnio padidėjimą (iki 40%) neprarandant kokybės. Skirtingai nuo anksčiau sukurtų projektų, naudojant mašininio mokymosi metodus garso glaudinimui, EnCodec gali būti naudojamas ne tik kalbos pakavimui, bet ir muzikos glaudinimui su 48 kHz atrankos dažniu, atitinkančiu garso kompaktinių diskų lygį. Pasak naujojo kodeko kūrėjų, perduodant 64 kbps bitų sparta, palyginti su MP3 formatu, jie sugebėjo maždaug dešimt kartų padidinti garso suspaudimo laipsnį išlaikant tą patį kokybės lygį (pavyzdžiui, naudojant MP3, reikalingas 64 kbps pralaidumas, perdavimui tokia pačia kokybe EnCodec pakanka 6 kbps).

Kodeko architektūra yra sukurta neuroniniame tinkle su „transformatoriaus“ architektūra ir yra pagrįsta keturiomis nuorodomis: kodavimo, kvantavimo, dekoderio ir diskriminatoriaus. Kodavimo įrenginys ištraukia balso duomenų parametrus ir konvertuoja supakuotą srautą į mažesnį kadrų dažnį. Kvantizeris (RVQ, Residual Vector Quantizer) konvertuoja kodavimo įrenginio išvestą srautą į paketų rinkinius, suglaudindamas informaciją pagal pasirinktą bitų spartą. Kvantizerio išvestis yra suspaustas duomenų vaizdas, tinkamas perduoti tinklu arba įrašyti į diską.

Dekoderis iššifruoja suspaustą duomenų atvaizdą ir atkuria pradinę garso bangą. Diskriminatorius gerina generuojamų mėginių kokybę, atsižvelgdamas į žmogaus klausos suvokimo modelį. Nepriklausomai nuo kokybės lygio ir bitų perdavimo spartos, kodavimui ir dekodavimui naudojami modeliai išsiskiria gana kukliais resursų poreikiais (realiajam darbui būtini skaičiavimai atliekami viename procesoriaus branduolyje).

„Facebook“ skelbia „EnCodec“ garso kodeką naudodamas mašininį mokymąsi


Šaltinis: opennet.ru

Добавить комментарий