import{S as Qs,i as Ns,s as xs,e as M,k as i,w as k,t,M as Bs,c as u,d as s,m as y,a as o,x as V,h as a,b as J,G as l,g as r,y as z,L as _s,q as Z,o as R,B as F,v as ks}from"../../chunks/vendor-hf-doc-builder.js";import{I as Vs}from"../../chunks/IconCopyLink-hf-doc-builder.js";import{C as te}from"../../chunks/CodeBlock-hf-doc-builder.js";function zs(Us){let j,ae,c,T,Y,g,Ee,G,Se,Me,U,be,W,De,Qe,q,Ne,xe,L,Be,_e,ue,p,ke,X,Ve,ze,f,Ze,Re,oe,d,$,Fe,Ye,O,Ge,We,P,Le,re,C,Xe,$e,Oe,ie,Q,Pe,ye,w,He,H,Ke,es,Ue,v,pe,m,ss,K,ls,ns,de,E,Je,N,ee,ts,je,S,ce,I,as,se,Ms,us,Te,b,Ce,x,le,os,we,D,me,A,rs,ne,is,ys,Ie;return g=new Vs({}),v=new te({props:{code:"Z2lnYXNwZWVjaCUyMCUzRCUyMGxvYWRfZGF0YXNldCglMjJzcGVlY2hjb2xhYiUyRmdpZ2FzcGVlY2glMjIlMkMlMjAlMjJ4cyUyMiUyQyUyMHN0cmVhbWluZyUzRFRydWUp",highlighted:'gigaspeech = load_dataset(<span class="hljs-string">&quot;speechcolab/gigaspeech&quot;</span>, <span class="hljs-string">&quot;xs&quot;</span>, streaming=<span class="hljs-literal">True</span>)'}}),E=new te({props:{code:"bmV4dChpdGVyKGdpZ2FzcGVlY2glNUIlMjJ0cmFpbiUyMiU1RCkp",highlighted:'<span class="hljs-built_in">next</span>(<span class="hljs-built_in">iter</span>(gigaspeech[<span class="hljs-string">&quot;train&quot;</span>]))'}}),S=new te({props:{code:"JTdCJTBBJTIwJTIwJTIwJTIwJTIyc2VnbWVudF9pZCUyMiUzQSUyMCUyMllPVTAwMDAwMDAzMTVfUzAwMDA2NjAlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjJzcGVha2VyJTIyJTNBJTIwJTIyTiUyRkElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjJ0ZXh0JTIyJTNBJTIwJTIyQVMlMjBUSEVZJ1JFJTIwTEVBVklORyUyMCUzQ0NPTU1BJTNFJTIwQ0FOJTIwS0FTSCUyMFBVTEwlMjBaQUhSQSUyMEFTSURFJTIwUkVBTExZJTIwUVVJQ0tMWSUyMCUzQ1FVRVNUSU9OTUFSSyUzRSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMmF1ZGlvJTIyJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIycGF0aCUyMiUzQSUyMCUyMnhzX2NodW5rc18wMDAwJTJGWU9VMDAwMDAwMDMxNV9TMDAwMDY2MC53YXYlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJhcnJheSUyMiUzQSUyMGFycmF5KCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QjAuMDAwNTE4OCUyQyUyMDAuMDAwODU0NDklMkMlMjAwLjAwMDEyMjA3JTJDJTIwLi4uJTJDJTIwMC4wMDEyNTEyMiUyQyUyMDAuMDAwNzYyOTQlMkMlMjAwLjAwMDM2NjIxJTVEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMnNhbXBsaW5nX3JhdGUlMjIlM0ElMjAxNjAwMCUyQyUwQSUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMmJlZ2luX3RpbWUlMjIlM0ElMjAyOTQxLjg5JTJDJTBBJTIwJTIwJTIwJTIwJTIyZW5kX3RpbWUlMjIlM0ElMjAyOTQ1LjA3JTJDJTBBJTIwJTIwJTIwJTIwJTIyYXVkaW9faWQlMjIlM0ElMjAlMjJZT1UwMDAwMDAwMzE1JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIydGl0bGUlMjIlM0ElMjAlMjJSZXR1cm4lMjB0byUyMFZhc3NlbGhlaW0lMjAlN0MlMjBDcml0aWNhbCUyMFJvbGUlM0ElMjBWT1glMjBNQUNISU5BJTIwJTdDJTIwRXBpc29kZSUyMDQzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIydXJsJTIyJTNBJTIwJTIyaHR0cHMlM0ElMkYlMkZ3d3cueW91dHViZS5jb20lMkZ3YXRjaCUzRnYlM0R6cjJuMWZMVmFzVSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMnNvdXJjZSUyMiUzQSUyMDIlMkMlMEElMjAlMjAlMjAlMjAlMjJjYXRlZ29yeSUyMiUzQSUyMDI0JTJDJTBBJTIwJTIwJTIwJTIwJTIyb3JpZ2luYWxfZnVsbF9wYXRoJTIyJTNBJTIwJTIyYXVkaW8lMkZ5b3V0dWJlJTJGUDAwMDQlMkZZT1UwMDAwMDAwMzE1Lm9wdXMlMjIlMkMlMEElN0Q=",highlighted:`{
    <span class="hljs-string">&quot;segment_id&quot;</span>: <span class="hljs-string">&quot;YOU0000000315_S0000660&quot;</span>,
    <span class="hljs-string">&quot;speaker&quot;</span>: <span class="hljs-string">&quot;N/A&quot;</span>,
    <span class="hljs-string">&quot;text&quot;</span>: <span class="hljs-string">&quot;AS THEY&#x27;RE LEAVING &lt;COMMA&gt; CAN KASH PULL ZAHRA ASIDE REALLY QUICKLY &lt;QUESTIONMARK&gt;&quot;</span>,
    <span class="hljs-string">&quot;audio&quot;</span>: {
        <span class="hljs-string">&quot;path&quot;</span>: <span class="hljs-string">&quot;xs_chunks_0000/YOU0000000315_S0000660.wav&quot;</span>,
        <span class="hljs-string">&quot;array&quot;</span>: <span class="hljs-built_in">array</span>(
            <span class="hljs-selector-attr">[0.0005188, 0.00085449, 0.00012207, ..., 0.00125122, 0.00076294, 0.00036621]</span>
        ),
        <span class="hljs-string">&quot;sampling_rate&quot;</span>: <span class="hljs-number">16000</span>,
    },
    <span class="hljs-string">&quot;begin_time&quot;</span>: <span class="hljs-number">2941.89</span>,
    <span class="hljs-string">&quot;end_time&quot;</span>: <span class="hljs-number">2945.07</span>,
    <span class="hljs-string">&quot;audio_id&quot;</span>: <span class="hljs-string">&quot;YOU0000000315&quot;</span>,
    <span class="hljs-string">&quot;title&quot;</span>: <span class="hljs-string">&quot;Return to Vasselheim | Critical Role: VOX MACHINA | Episode 43&quot;</span>,
    <span class="hljs-string">&quot;url&quot;</span>: <span class="hljs-string">&quot;https://www.youtube.com/watch?v=zr2n1fLVasU&quot;</span>,
    <span class="hljs-string">&quot;source&quot;</span>: <span class="hljs-number">2</span>,
    <span class="hljs-string">&quot;category&quot;</span>: <span class="hljs-number">24</span>,
    <span class="hljs-string">&quot;original_full_path&quot;</span>: <span class="hljs-string">&quot;audio/youtube/P0004/YOU0000000315.opus&quot;</span>,
}`}}),b=new te({props:{code:"Z2lnYXNwZWVjaF9oZWFkJTIwJTNEJTIwZ2lnYXNwZWVjaCU1QiUyMnRyYWluJTIyJTVELnRha2UoMiklMEFsaXN0KGdpZ2FzcGVlY2hfaGVhZCk=",highlighted:`gigaspeech_head = gigaspeech[<span class="hljs-string">&quot;train&quot;</span>].take(<span class="hljs-number">2</span>)
<span class="hljs-built_in">list</span>(gigaspeech_head)`}}),D=new te({props:{code:" ",highlighted:`[
    {
        <span class="hljs-string">&quot;segment_id&quot;</span>: <span class="hljs-string">&quot;YOU0000000315_S0000660&quot;</span>,
        <span class="hljs-string">&quot;speaker&quot;</span>: <span class="hljs-string">&quot;N/A&quot;</span>,
        <span class="hljs-string">&quot;text&quot;</span>: <span class="hljs-string">&quot;AS THEY&#x27;RE LEAVING &lt;COMMA&gt; CAN KASH PULL ZAHRA ASIDE REALLY QUICKLY &lt;QUESTIONMARK&gt;&quot;</span>,
        <span class="hljs-string">&quot;audio&quot;</span>: {
            <span class="hljs-string">&quot;path&quot;</span>: <span class="hljs-string">&quot;xs_chunks_0000/YOU0000000315_S0000660.wav&quot;</span>,
            <span class="hljs-string">&quot;array&quot;</span>: array(
                [
                    <span class="hljs-number">0.0005188</span>,
                    <span class="hljs-number">0.00085449</span>,
                    <span class="hljs-number">0.00012207</span>,
                    ...,
                    <span class="hljs-number">0.00125122</span>,
                    <span class="hljs-number">0.00076294</span>,
                    <span class="hljs-number">0.00036621</span>,
                ]
            ),
            <span class="hljs-string">&quot;sampling_rate&quot;</span>: <span class="hljs-number">16000</span>,
        },
        <span class="hljs-string">&quot;begin_time&quot;</span>: <span class="hljs-number">2941.89</span>,
        <span class="hljs-string">&quot;end_time&quot;</span>: <span class="hljs-number">2945.07</span>,
        <span class="hljs-string">&quot;audio_id&quot;</span>: <span class="hljs-string">&quot;YOU0000000315&quot;</span>,
        <span class="hljs-string">&quot;title&quot;</span>: <span class="hljs-string">&quot;Return to Vasselheim | Critical Role: VOX MACHINA | Episode 43&quot;</span>,
        <span class="hljs-string">&quot;url&quot;</span>: <span class="hljs-string">&quot;https://www.youtube.com/watch?v=zr2n1fLVasU&quot;</span>,
        <span class="hljs-string">&quot;source&quot;</span>: <span class="hljs-number">2</span>,
        <span class="hljs-string">&quot;category&quot;</span>: <span class="hljs-number">24</span>,
        <span class="hljs-string">&quot;original_full_path&quot;</span>: <span class="hljs-string">&quot;audio/youtube/P0004/YOU0000000315.opus&quot;</span>,
    },
    {
        <span class="hljs-string">&quot;segment_id&quot;</span>: <span class="hljs-string">&quot;AUD0000001043_S0000775&quot;</span>,
        <span class="hljs-string">&quot;speaker&quot;</span>: <span class="hljs-string">&quot;N/A&quot;</span>,
        <span class="hljs-string">&quot;text&quot;</span>: <span class="hljs-string">&quot;SIX TOMATOES &lt;PERIOD&gt;&quot;</span>,
        <span class="hljs-string">&quot;audio&quot;</span>: {
            <span class="hljs-string">&quot;path&quot;</span>: <span class="hljs-string">&quot;xs_chunks_0000/AUD0000001043_S0000775.wav&quot;</span>,
            <span class="hljs-string">&quot;array&quot;</span>: array(
                [
                    <span class="hljs-number">1.43432617</span>e-03,
                    <span class="hljs-number">1.37329102</span>e-03,
                    <span class="hljs-number">1.31225586</span>e-03,
                    ...,
                    <span class="hljs-number">-6.10351562</span>e-05,
                    <span class="hljs-number">-1.22070312</span>e-04,
                    <span class="hljs-number">-1.83105469</span>e-04,
                ]
            ),
            <span class="hljs-string">&quot;sampling_rate&quot;</span>: <span class="hljs-number">16000</span>,
        },
        <span class="hljs-string">&quot;begin_time&quot;</span>: <span class="hljs-number">3673.96</span>,
        <span class="hljs-string">&quot;end_time&quot;</span>: <span class="hljs-number">3675.26</span>,
        <span class="hljs-string">&quot;audio_id&quot;</span>: <span class="hljs-string">&quot;AUD0000001043&quot;</span>,
        <span class="hljs-string">&quot;title&quot;</span>: <span class="hljs-string">&quot;Asteroid of Fear&quot;</span>,
        <span class="hljs-string">&quot;url&quot;</span>: <span class="hljs-string">&quot;http//www.archive.org/download/asteroid_of_fear_1012_librivox/asteroid_of_fear_1012_librivox_64kb_mp3.zip&quot;</span>,
        <span class="hljs-string">&quot;source&quot;</span>: <span class="hljs-number">0</span>,
        <span class="hljs-string">&quot;category&quot;</span>: <span class="hljs-number">28</span>,
        <span class="hljs-string">&quot;original_full_path&quot;</span>: <span class="hljs-string">&quot;audio/audiobook/P0011/AUD0000001043.opus&quot;</span>,
    },
]`}}),{c(){j=M("meta"),ae=i(),c=M("h1"),T=M("a"),Y=M("span"),k(g.$$.fragment),Ee=i(),G=M("span"),Se=t("Streaming de donn\xE9es audio"),Me=i(),U=M("p"),be=t(`L\u2019un des plus grands d\xE9fis auxquels sont confront\xE9s les ensembles de donn\xE9es audio est leur taille.
Une seule minute d\u2019audio non compress\xE9 de qualit\xE9 CD (44,1 kHz, 16 bits) occupe un peu plus de 5 Mo de stockage. En r\xE8gle g\xE9n\xE9rale, un jeu de donn\xE9es audio contient des heures d\u2019enregistrements.
Dans les sections pr\xE9c\xE9dentes, nous avons utilis\xE9 un tr\xE8s petit sous-ensemble de jeux de donn\xE9es audio MINDS-14, mais les jeux de donn\xE9es audio typiques sont beaucoup plus volumineux.
Par exemple, la configuration `),W=M("code"),De=t("xs"),Qe=t(" (la plus petite) de "),q=M("a"),Ne=t("GigaSpeech de SpeechColab"),xe=t(` ne contient que 10 heures de donn\xE9es d\u2019entra\xEEnement, mais prend plus de 13 Go d\u2019espace de stockage pour le t\xE9l\xE9chargement et la pr\xE9paration.
Alors, que se passe-t-il lorsque nous voulons nous entra\xEEner sur un split plus grand ?
La configuration `),L=M("code"),Be=t("xl"),_e=t(` compl\xE8te du m\xEAme jeu de donn\xE9es contient 10 000 heures de donn\xE9es d\u2019entra\xEEnement, n\xE9cessitant plus de 1 To d\u2019espace de stockage.
Pour la plupart d\u2019entre nous, cela d\xE9passe largement les sp\xE9cifications d\u2019un disque dur typique. Devons-nous d\xE9bourser et acheter du stockage suppl\xE9mentaire ? Ou existe-t-il un moyen de nous entra\xEEner sur ces ensembles de donn\xE9es sans contraintes d\u2019espace disque ?`),ue=i(),p=M("p"),ke=t("\u{1F917} "),X=M("em"),Ve=t("Datasets"),ze=t(" vient \xE0 la rescousse en proposant le mode "),f=M("a"),Ze=t("streaming"),Re=t(`.
Le streaming nous permet de charger les donn\xE9es progressivement au fur et \xE0 mesure que nous it\xE9rons sur le jeu de donn\xE9es. Plut\xF4t que de t\xE9l\xE9charger l\u2019ensemble du jeu de donn\xE9es en une seule fois, nous chargeons le jeu de donn\xE9es un exemple \xE0 la fois.
Nous it\xE9rons sur le jeu de donn\xE9es, chargeant et pr\xE9parant des exemples \xE0 la vol\xE9e lorsqu\u2019ils sont n\xE9cessaires. De cette fa\xE7on, nous ne chargeons que les exemples que nous utilisons, et non ceux que nous ne sommes pas !
Une fois que nous avons termin\xE9 avec un exemple d\u2019exemple, nous continuons \xE0 it\xE9rer sur le jeu de donn\xE9es et chargeons le suivant.
Le mode streaming pr\xE9sente trois avantages principaux par rapport au t\xE9l\xE9chargement simultan\xE9 de l\u2019ensemble du jeu de donn\xE9es :`),oe=i(),d=M("ul"),$=M("li"),Fe=t("Espace disque : les exemples sont charg\xE9s en m\xE9moire un par un au fur et \xE0 mesure que nous it\xE9rons sur l\u2019ensemble de donn\xE9es. \xC9tant donn\xE9 que les donn\xE9es ne sont pas t\xE9l\xE9charg\xE9es localement, il n\u2019y a pas d\u2019espace disque requis, vous pouvez donc utiliser des jeux de donn\xE9es de taille arbitraire."),Ye=i(),O=M("li"),Ge=t("Temps de t\xE9l\xE9chargement et de traitement: les ensembles de donn\xE9es audio sont volumineux et n\xE9cessitent beaucoup de temps pour \xEAtre t\xE9l\xE9charg\xE9s et trait\xE9s. Avec le streaming, le chargement et le traitement se font \xE0 la vol\xE9e, ce qui signifie que vous pouvez commencer \xE0 utiliser le jeu de donn\xE9es d\xE8s que le premier exemple est pr\xEAt."),We=i(),P=M("li"),Le=t("Exp\xE9rimentation facile : vous pouvez exp\xE9rimenter sur une poign\xE9e d\u2019exemples pour v\xE9rifier que votre script fonctionne sans avoir \xE0 t\xE9l\xE9charger l\u2019ensemble du jeu de donn\xE9es."),re=i(),C=M("p"),Xe=t(`Il y a une mise en garde au mode streaming. Lors du t\xE9l\xE9chargement d\u2019un jeu de donn\xE9es complet sans streaming, les donn\xE9es brutes et les donn\xE9es trait\xE9es sont enregistr\xE9es localement sur le disque.
Si nous voulons r\xE9utiliser ce jeu de donn\xE9es, nous pouvons charger directement les donn\xE9es trait\xE9es \xE0 partir du disque, en sautant les \xE9tapes de t\xE9l\xE9chargement et de traitement.`),$e=M("br"),Oe=t(`
Par cons\xE9quent, nous ne devons effectuer les op\xE9rations de t\xE9l\xE9chargement et de traitement qu\u2019une seule fois, apr\xE8s quoi nous pouvons r\xE9utiliser les donn\xE9es pr\xE9par\xE9es.`),ie=i(),Q=M("p"),Pe=t(`Avec le mode streaming, les donn\xE9es ne sont pas t\xE9l\xE9charg\xE9es sur le disque. Ainsi, ni les donn\xE9es t\xE9l\xE9charg\xE9es ni les donn\xE9es pr\xE9trait\xE9es ne sont mises en cache.
Si nous voulons r\xE9utiliser le jeu de donn\xE9es, les \xE9tapes de streaming doivent \xEAtre r\xE9p\xE9t\xE9es, avec les fichiers audio charg\xE9s et trait\xE9s \xE0 nouveau \xE0 la vol\xE9e.
Pour cette raison, il est conseill\xE9 de t\xE9l\xE9charger des jeux de donn\xE9es que vous \xEAtes susceptible d\u2019utiliser plusieurs fois.`),ye=i(),w=M("p"),He=t("Comment activer le mode streaming ? Facile! Il suffit de d\xE9finir "),H=M("code"),Ke=t("streaming=True"),es=t(" lorsque vous chargez votre jeu de donn\xE9es. Le reste sera pris en charge pour vous :"),Ue=i(),k(v.$$.fragment),pe=i(),m=M("p"),ss=t(`Tout comme nous avons appliqu\xE9 des \xE9tapes de pr\xE9traitement \xE0 un sous-ensemble t\xE9l\xE9charg\xE9 de MINDS-14, vous pouvez effectuer le m\xEAme pr\xE9traitement avec un jeu de donn\xE9es en streaming exactement de la m\xEAme mani\xE8re.
La seule diff\xE9rence est que vous ne pouvez plus acc\xE9der \xE0 des \xE9chantillons individuels \xE0 l\u2019aide de l\u2019indexation Python (c\u2019est-\xE0-dire `),K=M("code"),ls=t('gigaspeech["train"][sample_idx]'),ns=t(`).
Au lieu de cela, vous devez it\xE9rer sur le jeu de donn\xE9es. Voici comment acc\xE9der \xE0 un exemple lors de la diffusion en continu d\u2019un jeu de donn\xE9es :`),de=i(),k(E.$$.fragment),Je=i(),N=M("p"),ee=M("strong"),ts=t("Sortie :"),je=i(),k(S.$$.fragment),ce=i(),I=M("p"),as=t("Si vous souhaitez pr\xE9visualiser plusieurs exemples d\u2019un grand jeu de donn\xE9es, utilisez "),se=M("code"),Ms=t("take()"),us=t(" pour obtenir les $n$ premiers \xE9l\xE9ments. Prenons les deux premiers exemples dans le jeu de donn\xE9es gigaspeech :"),Te=i(),k(b.$$.fragment),Ce=i(),x=M("p"),le=M("strong"),os=t("Sortie :"),we=i(),k(D.$$.fragment),me=i(),A=M("p"),rs=t(`Le mode streaming peut faire passer vos recherches au niveau sup\xE9rieur : non seulement les plus grands jeux de donn\xE9es vous sont accessibles mais vous pouvez facilement \xE9valuer les syst\xE8mes sur plusieurs jeux de donn\xE9es en une seule fois sans vous soucier de votre espace disque.
Par rapport \xE0 l\u2019\xE9valuation sur un seul jeu de donn\xE9es, l\u2019\xE9valuation multi-jeux de donn\xE9es donne une meilleure mesure des capacit\xE9s de g\xE9n\xE9ralisation d\u2019un syst\xE8me de reconnaissance vocale (cf. `),ne=M("em"),is=t("End-to-end Speech Benchmark"),ys=t(" (ESB))."),this.h()},l(e){const n=Bs('[data-svelte="svelte-1phssyn"]',document.head);j=u(n,"META",{name:!0,content:!0}),n.forEach(s),ae=y(e),c=u(e,"H1",{class:!0});var Ae=o(c);T=u(Ae,"A",{id:!0,class:!0,href:!0});var ps=o(T);Y=u(ps,"SPAN",{});var ds=o(Y);V(g.$$.fragment,ds),ds.forEach(s),ps.forEach(s),Ee=y(Ae),G=u(Ae,"SPAN",{});var Js=o(G);Se=a(Js,"Streaming de donn\xE9es audio"),Js.forEach(s),Ae.forEach(s),Me=y(e),U=u(e,"P",{});var h=o(U);be=a(h,`L\u2019un des plus grands d\xE9fis auxquels sont confront\xE9s les ensembles de donn\xE9es audio est leur taille.
Une seule minute d\u2019audio non compress\xE9 de qualit\xE9 CD (44,1 kHz, 16 bits) occupe un peu plus de 5 Mo de stockage. En r\xE8gle g\xE9n\xE9rale, un jeu de donn\xE9es audio contient des heures d\u2019enregistrements.
Dans les sections pr\xE9c\xE9dentes, nous avons utilis\xE9 un tr\xE8s petit sous-ensemble de jeux de donn\xE9es audio MINDS-14, mais les jeux de donn\xE9es audio typiques sont beaucoup plus volumineux.
Par exemple, la configuration `),W=u(h,"CODE",{});var js=o(W);De=a(js,"xs"),js.forEach(s),Qe=a(h," (la plus petite) de "),q=u(h,"A",{href:!0,rel:!0});var cs=o(q);Ne=a(cs,"GigaSpeech de SpeechColab"),cs.forEach(s),xe=a(h,` ne contient que 10 heures de donn\xE9es d\u2019entra\xEEnement, mais prend plus de 13 Go d\u2019espace de stockage pour le t\xE9l\xE9chargement et la pr\xE9paration.
Alors, que se passe-t-il lorsque nous voulons nous entra\xEEner sur un split plus grand ?
La configuration `),L=u(h,"CODE",{});var Ts=o(L);Be=a(Ts,"xl"),Ts.forEach(s),_e=a(h,` compl\xE8te du m\xEAme jeu de donn\xE9es contient 10 000 heures de donn\xE9es d\u2019entra\xEEnement, n\xE9cessitant plus de 1 To d\u2019espace de stockage.
Pour la plupart d\u2019entre nous, cela d\xE9passe largement les sp\xE9cifications d\u2019un disque dur typique. Devons-nous d\xE9bourser et acheter du stockage suppl\xE9mentaire ? Ou existe-t-il un moyen de nous entra\xEEner sur ces ensembles de donn\xE9es sans contraintes d\u2019espace disque ?`),h.forEach(s),ue=y(e),p=u(e,"P",{});var B=o(p);ke=a(B,"\u{1F917} "),X=u(B,"EM",{});var Cs=o(X);Ve=a(Cs,"Datasets"),Cs.forEach(s),ze=a(B," vient \xE0 la rescousse en proposant le mode "),f=u(B,"A",{href:!0,rel:!0});var ws=o(f);Ze=a(ws,"streaming"),ws.forEach(s),Re=a(B,`.
Le streaming nous permet de charger les donn\xE9es progressivement au fur et \xE0 mesure que nous it\xE9rons sur le jeu de donn\xE9es. Plut\xF4t que de t\xE9l\xE9charger l\u2019ensemble du jeu de donn\xE9es en une seule fois, nous chargeons le jeu de donn\xE9es un exemple \xE0 la fois.
Nous it\xE9rons sur le jeu de donn\xE9es, chargeant et pr\xE9parant des exemples \xE0 la vol\xE9e lorsqu\u2019ils sont n\xE9cessaires. De cette fa\xE7on, nous ne chargeons que les exemples que nous utilisons, et non ceux que nous ne sommes pas !
Une fois que nous avons termin\xE9 avec un exemple d\u2019exemple, nous continuons \xE0 it\xE9rer sur le jeu de donn\xE9es et chargeons le suivant.
Le mode streaming pr\xE9sente trois avantages principaux par rapport au t\xE9l\xE9chargement simultan\xE9 de l\u2019ensemble du jeu de donn\xE9es :`),B.forEach(s),oe=y(e),d=u(e,"UL",{});var _=o(d);$=u(_,"LI",{});var ms=o($);Fe=a(ms,"Espace disque : les exemples sont charg\xE9s en m\xE9moire un par un au fur et \xE0 mesure que nous it\xE9rons sur l\u2019ensemble de donn\xE9es. \xC9tant donn\xE9 que les donn\xE9es ne sont pas t\xE9l\xE9charg\xE9es localement, il n\u2019y a pas d\u2019espace disque requis, vous pouvez donc utiliser des jeux de donn\xE9es de taille arbitraire."),ms.forEach(s),Ye=y(_),O=u(_,"LI",{});var Is=o(O);Ge=a(Is,"Temps de t\xE9l\xE9chargement et de traitement: les ensembles de donn\xE9es audio sont volumineux et n\xE9cessitent beaucoup de temps pour \xEAtre t\xE9l\xE9charg\xE9s et trait\xE9s. Avec le streaming, le chargement et le traitement se font \xE0 la vol\xE9e, ce qui signifie que vous pouvez commencer \xE0 utiliser le jeu de donn\xE9es d\xE8s que le premier exemple est pr\xEAt."),Is.forEach(s),We=y(_),P=u(_,"LI",{});var As=o(P);Le=a(As,"Exp\xE9rimentation facile : vous pouvez exp\xE9rimenter sur une poign\xE9e d\u2019exemples pour v\xE9rifier que votre script fonctionne sans avoir \xE0 t\xE9l\xE9charger l\u2019ensemble du jeu de donn\xE9es."),As.forEach(s),_.forEach(s),re=y(e),C=u(e,"P",{});var he=o(C);Xe=a(he,`Il y a une mise en garde au mode streaming. Lors du t\xE9l\xE9chargement d\u2019un jeu de donn\xE9es complet sans streaming, les donn\xE9es brutes et les donn\xE9es trait\xE9es sont enregistr\xE9es localement sur le disque.
Si nous voulons r\xE9utiliser ce jeu de donn\xE9es, nous pouvons charger directement les donn\xE9es trait\xE9es \xE0 partir du disque, en sautant les \xE9tapes de t\xE9l\xE9chargement et de traitement.`),$e=u(he,"BR",{}),Oe=a(he,`
Par cons\xE9quent, nous ne devons effectuer les op\xE9rations de t\xE9l\xE9chargement et de traitement qu\u2019une seule fois, apr\xE8s quoi nous pouvons r\xE9utiliser les donn\xE9es pr\xE9par\xE9es.`),he.forEach(s),ie=y(e),Q=u(e,"P",{});var hs=o(Q);Pe=a(hs,`Avec le mode streaming, les donn\xE9es ne sont pas t\xE9l\xE9charg\xE9es sur le disque. Ainsi, ni les donn\xE9es t\xE9l\xE9charg\xE9es ni les donn\xE9es pr\xE9trait\xE9es ne sont mises en cache.
Si nous voulons r\xE9utiliser le jeu de donn\xE9es, les \xE9tapes de streaming doivent \xEAtre r\xE9p\xE9t\xE9es, avec les fichiers audio charg\xE9s et trait\xE9s \xE0 nouveau \xE0 la vol\xE9e.
Pour cette raison, il est conseill\xE9 de t\xE9l\xE9charger des jeux de donn\xE9es que vous \xEAtes susceptible d\u2019utiliser plusieurs fois.`),hs.forEach(s),ye=y(e),w=u(e,"P",{});var ge=o(w);He=a(ge,"Comment activer le mode streaming ? Facile! Il suffit de d\xE9finir "),H=u(ge,"CODE",{});var gs=o(H);Ke=a(gs,"streaming=True"),gs.forEach(s),es=a(ge," lorsque vous chargez votre jeu de donn\xE9es. Le reste sera pris en charge pour vous :"),ge.forEach(s),Ue=y(e),V(v.$$.fragment,e),pe=y(e),m=u(e,"P",{});var qe=o(m);ss=a(qe,`Tout comme nous avons appliqu\xE9 des \xE9tapes de pr\xE9traitement \xE0 un sous-ensemble t\xE9l\xE9charg\xE9 de MINDS-14, vous pouvez effectuer le m\xEAme pr\xE9traitement avec un jeu de donn\xE9es en streaming exactement de la m\xEAme mani\xE8re.
La seule diff\xE9rence est que vous ne pouvez plus acc\xE9der \xE0 des \xE9chantillons individuels \xE0 l\u2019aide de l\u2019indexation Python (c\u2019est-\xE0-dire `),K=u(qe,"CODE",{});var qs=o(K);ls=a(qs,'gigaspeech["train"][sample_idx]'),qs.forEach(s),ns=a(qe,`).
Au lieu de cela, vous devez it\xE9rer sur le jeu de donn\xE9es. Voici comment acc\xE9der \xE0 un exemple lors de la diffusion en continu d\u2019un jeu de donn\xE9es :`),qe.forEach(s),de=y(e),V(E.$$.fragment,e),Je=y(e),N=u(e,"P",{});var fs=o(N);ee=u(fs,"STRONG",{});var vs=o(ee);ts=a(vs,"Sortie :"),vs.forEach(s),fs.forEach(s),je=y(e),V(S.$$.fragment,e),ce=y(e),I=u(e,"P",{});var fe=o(I);as=a(fe,"Si vous souhaitez pr\xE9visualiser plusieurs exemples d\u2019un grand jeu de donn\xE9es, utilisez "),se=u(fe,"CODE",{});var Es=o(se);Ms=a(Es,"take()"),Es.forEach(s),us=a(fe," pour obtenir les $n$ premiers \xE9l\xE9ments. Prenons les deux premiers exemples dans le jeu de donn\xE9es gigaspeech :"),fe.forEach(s),Te=y(e),V(b.$$.fragment,e),Ce=y(e),x=u(e,"P",{});var Ss=o(x);le=u(Ss,"STRONG",{});var bs=o(le);os=a(bs,"Sortie :"),bs.forEach(s),Ss.forEach(s),we=y(e),V(D.$$.fragment,e),me=y(e),A=u(e,"P",{});var ve=o(A);rs=a(ve,`Le mode streaming peut faire passer vos recherches au niveau sup\xE9rieur : non seulement les plus grands jeux de donn\xE9es vous sont accessibles mais vous pouvez facilement \xE9valuer les syst\xE8mes sur plusieurs jeux de donn\xE9es en une seule fois sans vous soucier de votre espace disque.
Par rapport \xE0 l\u2019\xE9valuation sur un seul jeu de donn\xE9es, l\u2019\xE9valuation multi-jeux de donn\xE9es donne une meilleure mesure des capacit\xE9s de g\xE9n\xE9ralisation d\u2019un syst\xE8me de reconnaissance vocale (cf. `),ne=u(ve,"EM",{});var Ds=o(ne);is=a(Ds,"End-to-end Speech Benchmark"),Ds.forEach(s),ys=a(ve," (ESB))."),ve.forEach(s),this.h()},h(){J(j,"name","hf:doc:metadata"),J(j,"content",JSON.stringify(Zs)),J(T,"id","streaming-de-donnes-audio"),J(T,"class","header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full"),J(T,"href","#streaming-de-donnes-audio"),J(c,"class","relative group"),J(q,"href","https://huggingface.co/datasets/speechcolab/gigaspeech"),J(q,"rel","nofollow"),J(f,"href","https://huggingface.co/docs/datasets/stream"),J(f,"rel","nofollow")},m(e,n){l(document.head,j),r(e,ae,n),r(e,c,n),l(c,T),l(T,Y),z(g,Y,null),l(c,Ee),l(c,G),l(G,Se),r(e,Me,n),r(e,U,n),l(U,be),l(U,W),l(W,De),l(U,Qe),l(U,q),l(q,Ne),l(U,xe),l(U,L),l(L,Be),l(U,_e),r(e,ue,n),r(e,p,n),l(p,ke),l(p,X),l(X,Ve),l(p,ze),l(p,f),l(f,Ze),l(p,Re),r(e,oe,n),r(e,d,n),l(d,$),l($,Fe),l(d,Ye),l(d,O),l(O,Ge),l(d,We),l(d,P),l(P,Le),r(e,re,n),r(e,C,n),l(C,Xe),l(C,$e),l(C,Oe),r(e,ie,n),r(e,Q,n),l(Q,Pe),r(e,ye,n),r(e,w,n),l(w,He),l(w,H),l(H,Ke),l(w,es),r(e,Ue,n),z(v,e,n),r(e,pe,n),r(e,m,n),l(m,ss),l(m,K),l(K,ls),l(m,ns),r(e,de,n),z(E,e,n),r(e,Je,n),r(e,N,n),l(N,ee),l(ee,ts),r(e,je,n),z(S,e,n),r(e,ce,n),r(e,I,n),l(I,as),l(I,se),l(se,Ms),l(I,us),r(e,Te,n),z(b,e,n),r(e,Ce,n),r(e,x,n),l(x,le),l(le,os),r(e,we,n),z(D,e,n),r(e,me,n),r(e,A,n),l(A,rs),l(A,ne),l(ne,is),l(A,ys),Ie=!0},p:_s,i(e){Ie||(Z(g.$$.fragment,e),Z(v.$$.fragment,e),Z(E.$$.fragment,e),Z(S.$$.fragment,e),Z(b.$$.fragment,e),Z(D.$$.fragment,e),Ie=!0)},o(e){R(g.$$.fragment,e),R(v.$$.fragment,e),R(E.$$.fragment,e),R(S.$$.fragment,e),R(b.$$.fragment,e),R(D.$$.fragment,e),Ie=!1},d(e){s(j),e&&s(ae),e&&s(c),F(g),e&&s(Me),e&&s(U),e&&s(ue),e&&s(p),e&&s(oe),e&&s(d),e&&s(re),e&&s(C),e&&s(ie),e&&s(Q),e&&s(ye),e&&s(w),e&&s(Ue),F(v,e),e&&s(pe),e&&s(m),e&&s(de),F(E,e),e&&s(Je),e&&s(N),e&&s(je),F(S,e),e&&s(ce),e&&s(I),e&&s(Te),F(b,e),e&&s(Ce),e&&s(x),e&&s(we),F(D,e),e&&s(me),e&&s(A)}}}const Zs={local:"streaming-de-donnes-audio",title:"Streaming de donn\xE9es audio"};function Rs(Us){return ks(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Ws extends Qs{constructor(j){super();Ns(this,j,Rs,zs,xs,{})}}export{Ws as default,Zs as metadata};
