import{s as $t,n as wt,o as bt}from"../chunks/scheduler.b8dd6794.js";import{S as qt,i as It,g as p,s as a,r as M,A as Ct,h as i,f as e,c as n,j as ht,u,x as m,k as Ut,y as gt,a as l,v as r,d as c,t as y,w as f}from"../chunks/index.0a3e3d78.js";import{C as E}from"../chunks/CodeBlock.822b8cc6.js";import{H as _t,E as xt}from"../chunks/EditOnGithub.065de0ac.js";function kt(mt){let o,N,G,Q,J,F,T,ot="오디오 분류는 녹음된 오디오 내용에 기반하여 하나 혹은 여러개의 레이블을 할당하는 작업입니다. 이 레이블은 음악, 음성, 노이즈 같은 카테고리에 해당할 수도 있고, 새소리나 차 엔진 소리처럼 더 구체적인 카테고리일 수도 있습니다.",B,j,Mt="인기 있는 오디오 트랜스포머 모델들이 세부적으로 어떻게 작동하는지, 커스텀 모델을 어떻게 파인튜닝하는지 등을 알아보기 전에 🤗 Transformers를 이용하여 단 몇줄의 코드만으로 사전학습된 모델을 오디오 분류에 쓰는 법을 알아봅시다.",R,d,ut='이전 단원에서 사용했던 <a href="https://huggingface.co/datasets/PolyAI/minds14" rel="nofollow">MINDS-14</a> 데이터셋을 쓰겠습니다. 기억하시다시피, MINDS-14는 사람들이 인터넷뱅킹 시스템에 대해 전화로 여러 언어와 방언으로 묻는 것이 녹음돼있습니다. 각 녹음에는 <code>intent_class</code>가 있으며 이를 이용해 녹음들을 전화의 의도에 따라 분류할 수 있습니다.',D,h,rt="파이프라인을 써보기 위해 이전과 마찬가지로 데이터의 <code>en-AU</code> 부분을 가져와 모델이 요구하는 16 kHz 샘플링 속도를 가지도록 업샘플링 해봅시다.",S,U,H,$,ct=`🤗 Transformers의 <code>audio-classification</code> 파이프라인을 사용하면 녹음된 오디오를 클래스 집합으로 분류할 수 있습니다.
우리의 경우, MINDS-14 데이터셋의 의도 분류를 위해 파인튜닝된 모델이 필요합니다. 운좋게도, 바로 그럴때 쓰이는 모델이 허브에 있습니다! <code>pipeline()</code> 함수를 써서 이를 불러보겠습니다:`,L,w,V,b,yt="이 파이프라인은 오디오 데이터로 넘파이 배열을 요구합니다. 원시 오디오 데이터의 모든 전처리는 편리하게도 파이프라인이 해결해줍니다. 한 예를 봅시다:",P,q,X,I,ft="데이터셋의 구조를 기억하신다면, 원시 오디오 데이터가 <code>[&quot;audio&quot;][&quot;array&quot;]</code> 아래에 넘파이 배열로 저장돼있는걸 기억하실겁니다. 그대로 <code>classifier</code>에 넘겨봅시다:",Y,C,O,g,Jt="<strong>Output:</strong>",K,_,tt,x,Tt="모델은 전화하는 사람이 청구서의 지불 방법에 대해 묻고 있다고 매우 확신하고 있습니다. 실제 레이블은 어떤지 확인해봅시다:",st,k,et,z,jt="<strong>Output:</strong>",lt,v,at,A,dt="만세! 예측값이 맞았습니다! 운 좋게도 우리는 필요한 레이블을 정확하게 분류할 수 있는 모델을 찾을 수 있었습니다. 그러나 분류 작업을 다루는 많은 경우에는 사전학습된 모델의 클래스가 우리가 바라는 분류 클래스와 일치하지 않습니다. 이와 같은 경우, 여러분은 사전학습된 모델을 “보정(calibrate)“하여 여러분의 클래스 레이블에 맞출 수 있습니다. 이후 단원에서 이를 어떻게 하는지 배우게 됩니다. 이제 음성 처리에서 매우 일반적인 작업인 <em>자동 음성 인식</em>에 대해 살펴봅시다.",nt,W,pt,Z,it;return J=new _t({props:{title:"파이프라인을 이용한 오디오 분류",local:"audio-classification-with-a-pipeline",headingTag:"h1"}}),U=new E({props:{code:"ZnJvbSUyMGRhdGFzZXRzJTIwaW1wb3J0JTIwbG9hZF9kYXRhc2V0JTBBZnJvbSUyMGRhdGFzZXRzJTIwaW1wb3J0JTIwQXVkaW8lMEElMEFtaW5kcyUyMCUzRCUyMGxvYWRfZGF0YXNldCglMjJQb2x5QUklMkZtaW5kczE0JTIyJTJDJTIwbmFtZSUzRCUyMmVuLUFVJTIyJTJDJTIwc3BsaXQlM0QlMjJ0cmFpbiUyMiklMEFtaW5kcyUyMCUzRCUyMG1pbmRzLmNhc3RfY29sdW1uKCUyMmF1ZGlvJTIyJTJDJTIwQXVkaW8oc2FtcGxpbmdfcmF0ZSUzRDE2XzAwMCkp",highlighted:`<span class="hljs-keyword">from</span> datasets <span class="hljs-keyword">import</span> load_dataset
<span class="hljs-keyword">from</span> datasets <span class="hljs-keyword">import</span> Audio

minds = load_dataset(<span class="hljs-string">&quot;PolyAI/minds14&quot;</span>, name=<span class="hljs-string">&quot;en-AU&quot;</span>, split=<span class="hljs-string">&quot;train&quot;</span>)
minds = minds.cast_column(<span class="hljs-string">&quot;audio&quot;</span>, Audio(sampling_rate=<span class="hljs-number">16_000</span>))`,wrap:!1}}),w=new E({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMHBpcGVsaW5lJTBBJTBBY2xhc3NpZmllciUyMCUzRCUyMHBpcGVsaW5lKCUwQSUyMCUyMCUyMCUyMCUyMmF1ZGlvLWNsYXNzaWZpY2F0aW9uJTIyJTJDJTBBJTIwJTIwJTIwJTIwbW9kZWwlM0QlMjJhbnRvbi1sJTJGeHRyZW1lX3NfeGxzcl8zMDBtX21pbmRzMTQlMjIlMkMlMEEp",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> pipeline

classifier = pipeline(
    <span class="hljs-string">&quot;audio-classification&quot;</span>,
    model=<span class="hljs-string">&quot;anton-l/xtreme_s_xlsr_300m_minds14&quot;</span>,
)`,wrap:!1}}),q=new E({props:{code:"ZXhhbXBsZSUyMCUzRCUyMG1pbmRzJTVCMCU1RA==",highlighted:'example = minds[<span class="hljs-number">0</span>]',wrap:!1}}),C=new E({props:{code:"Y2xhc3NpZmllcihleGFtcGxlJTVCJTIyYXVkaW8lMjIlNUQlNUIlMjJhcnJheSUyMiU1RCk=",highlighted:'classifier(example[<span class="hljs-string">&quot;audio&quot;</span>][<span class="hljs-string">&quot;array&quot;</span>])',wrap:!1}}),_=new E({props:{code:"JTVCJTBBJTIwJTIwJTIwJTIwJTdCJTIyc2NvcmUlMjIlM0ElMjAwLjk2MzE1MjUyNzgwOTE0MzElMkMlMjAlMjJsYWJlbCUyMiUzQSUyMCUyMnBheV9iaWxsJTIyJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTdCJTIyc2NvcmUlMjIlM0ElMjAwLjAyODE5Njk4MzAzOTM3OTEyJTJDJTIwJTIybGFiZWwlMjIlM0ElMjAlMjJmcmVlemUlMjIlN0QlMkMlMEElMjAlMjAlMjAlMjAlN0IlMjJzY29yZSUyMiUzQSUyMDAuMDAzMjc4NzQ5Mjk2NDQxNjc0MiUyQyUyMCUyMmxhYmVsJTIyJTNBJTIwJTIyY2FyZF9pc3N1ZXMlMjIlN0QlMkMlMEElMjAlMjAlMjAlMjAlN0IlMjJzY29yZSUyMiUzQSUyMDAuMDAxOTQxNDQ0NTg1MDk5ODE2MyUyQyUyMCUyMmxhYmVsJTIyJTNBJTIwJTIyYWJyb2FkJTIyJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTdCJTIyc2NvcmUlMjIlM0ElMjAwLjAwMDgzNzg2OTM2MDExMTY1MzglMkMlMjAlMjJsYWJlbCUyMiUzQSUyMCUyMmhpZ2hfdmFsdWVfcGF5bWVudCUyMiU3RCUyQyUwQSU1RA==",highlighted:`[
    {<span class="hljs-string">&quot;score&quot;</span>: <span class="hljs-number">0.9631525278091431</span>, <span class="hljs-string">&quot;label&quot;</span>: <span class="hljs-string">&quot;pay_bill&quot;</span>},
    {<span class="hljs-string">&quot;score&quot;</span>: <span class="hljs-number">0.02819698303937912</span>, <span class="hljs-string">&quot;label&quot;</span>: <span class="hljs-string">&quot;freeze&quot;</span>},
    {<span class="hljs-string">&quot;score&quot;</span>: <span class="hljs-number">0.0032787492964416742</span>, <span class="hljs-string">&quot;label&quot;</span>: <span class="hljs-string">&quot;card_issues&quot;</span>},
    {<span class="hljs-string">&quot;score&quot;</span>: <span class="hljs-number">0.0019414445850998163</span>, <span class="hljs-string">&quot;label&quot;</span>: <span class="hljs-string">&quot;abroad&quot;</span>},
    {<span class="hljs-string">&quot;score&quot;</span>: <span class="hljs-number">0.0008378693601116538</span>, <span class="hljs-string">&quot;label&quot;</span>: <span class="hljs-string">&quot;high_value_payment&quot;</span>},
]`,wrap:!1}}),k=new E({props:{code:"aWQybGFiZWwlMjAlM0QlMjBtaW5kcy5mZWF0dXJlcyU1QiUyMmludGVudF9jbGFzcyUyMiU1RC5pbnQyc3RyJTBBaWQybGFiZWwoZXhhbXBsZSU1QiUyMmludGVudF9jbGFzcyUyMiU1RCk=",highlighted:`id2label = minds.features[<span class="hljs-string">&quot;intent_class&quot;</span>].int2str
id2label(example[<span class="hljs-string">&quot;intent_class&quot;</span>])`,wrap:!1}}),v=new E({props:{code:"JTIycGF5X2JpbGwlMjI=",highlighted:'<span class="hljs-string">&quot;pay_bill&quot;</span>',wrap:!1}}),W=new xt({props:{source:"https://github.com/huggingface/audio-transformers-course/blob/main/chapters/ko/chapter2/audio_classification_pipeline.mdx"}}),{c(){o=p("meta"),N=a(),G=p("p"),Q=a(),M(J.$$.fragment),F=a(),T=p("p"),T.textContent=ot,B=a(),j=p("p"),j.textContent=Mt,R=a(),d=p("p"),d.innerHTML=ut,D=a(),h=p("p"),h.innerHTML=rt,S=a(),M(U.$$.fragment),H=a(),$=p("p"),$.innerHTML=ct,L=a(),M(w.$$.fragment),V=a(),b=p("p"),b.textContent=yt,P=a(),M(q.$$.fragment),X=a(),I=p("p"),I.innerHTML=ft,Y=a(),M(C.$$.fragment),O=a(),g=p("p"),g.innerHTML=Jt,K=a(),M(_.$$.fragment),tt=a(),x=p("p"),x.textContent=Tt,st=a(),M(k.$$.fragment),et=a(),z=p("p"),z.innerHTML=jt,lt=a(),M(v.$$.fragment),at=a(),A=p("p"),A.innerHTML=dt,nt=a(),M(W.$$.fragment),pt=a(),Z=p("p"),this.h()},l(t){const s=Ct("svelte-u9bgzb",document.head);o=i(s,"META",{name:!0,content:!0}),s.forEach(e),N=n(t),G=i(t,"P",{}),ht(G).forEach(e),Q=n(t),u(J.$$.fragment,t),F=n(t),T=i(t,"P",{"data-svelte-h":!0}),m(T)!=="svelte-1f5hdt5"&&(T.textContent=ot),B=n(t),j=i(t,"P",{"data-svelte-h":!0}),m(j)!=="svelte-1pbyuyc"&&(j.textContent=Mt),R=n(t),d=i(t,"P",{"data-svelte-h":!0}),m(d)!=="svelte-1oiet0d"&&(d.innerHTML=ut),D=n(t),h=i(t,"P",{"data-svelte-h":!0}),m(h)!=="svelte-n7qc2f"&&(h.innerHTML=rt),S=n(t),u(U.$$.fragment,t),H=n(t),$=i(t,"P",{"data-svelte-h":!0}),m($)!=="svelte-oztqy5"&&($.innerHTML=ct),L=n(t),u(w.$$.fragment,t),V=n(t),b=i(t,"P",{"data-svelte-h":!0}),m(b)!=="svelte-qdshyx"&&(b.textContent=yt),P=n(t),u(q.$$.fragment,t),X=n(t),I=i(t,"P",{"data-svelte-h":!0}),m(I)!=="svelte-c5buei"&&(I.innerHTML=ft),Y=n(t),u(C.$$.fragment,t),O=n(t),g=i(t,"P",{"data-svelte-h":!0}),m(g)!=="svelte-1mvdyro"&&(g.innerHTML=Jt),K=n(t),u(_.$$.fragment,t),tt=n(t),x=i(t,"P",{"data-svelte-h":!0}),m(x)!=="svelte-iw7pnk"&&(x.textContent=Tt),st=n(t),u(k.$$.fragment,t),et=n(t),z=i(t,"P",{"data-svelte-h":!0}),m(z)!=="svelte-1mvdyro"&&(z.innerHTML=jt),lt=n(t),u(v.$$.fragment,t),at=n(t),A=i(t,"P",{"data-svelte-h":!0}),m(A)!=="svelte-115np59"&&(A.innerHTML=dt),nt=n(t),u(W.$$.fragment,t),pt=n(t),Z=i(t,"P",{}),ht(Z).forEach(e),this.h()},h(){Ut(o,"name","hf:doc:metadata"),Ut(o,"content",zt)},m(t,s){gt(document.head,o),l(t,N,s),l(t,G,s),l(t,Q,s),r(J,t,s),l(t,F,s),l(t,T,s),l(t,B,s),l(t,j,s),l(t,R,s),l(t,d,s),l(t,D,s),l(t,h,s),l(t,S,s),r(U,t,s),l(t,H,s),l(t,$,s),l(t,L,s),r(w,t,s),l(t,V,s),l(t,b,s),l(t,P,s),r(q,t,s),l(t,X,s),l(t,I,s),l(t,Y,s),r(C,t,s),l(t,O,s),l(t,g,s),l(t,K,s),r(_,t,s),l(t,tt,s),l(t,x,s),l(t,st,s),r(k,t,s),l(t,et,s),l(t,z,s),l(t,lt,s),r(v,t,s),l(t,at,s),l(t,A,s),l(t,nt,s),r(W,t,s),l(t,pt,s),l(t,Z,s),it=!0},p:wt,i(t){it||(c(J.$$.fragment,t),c(U.$$.fragment,t),c(w.$$.fragment,t),c(q.$$.fragment,t),c(C.$$.fragment,t),c(_.$$.fragment,t),c(k.$$.fragment,t),c(v.$$.fragment,t),c(W.$$.fragment,t),it=!0)},o(t){y(J.$$.fragment,t),y(U.$$.fragment,t),y(w.$$.fragment,t),y(q.$$.fragment,t),y(C.$$.fragment,t),y(_.$$.fragment,t),y(k.$$.fragment,t),y(v.$$.fragment,t),y(W.$$.fragment,t),it=!1},d(t){t&&(e(N),e(G),e(Q),e(F),e(T),e(B),e(j),e(R),e(d),e(D),e(h),e(S),e(H),e($),e(L),e(V),e(b),e(P),e(X),e(I),e(Y),e(O),e(g),e(K),e(tt),e(x),e(st),e(et),e(z),e(lt),e(at),e(A),e(nt),e(pt),e(Z)),e(o),f(J,t),f(U,t),f(w,t),f(q,t),f(C,t),f(_,t),f(k,t),f(v,t),f(W,t)}}}const zt='{"title":"파이프라인을 이용한 오디오 분류","local":"audio-classification-with-a-pipeline","sections":[],"depth":1}';function vt(mt){return bt(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Zt extends qt{constructor(o){super(),It(this,o,vt,kt,$t,{})}}export{Zt as component};
