Buckets:
| import{s as Al,o as Bl,n as ze}from"../chunks/scheduler.37c15a92.js";import{S as ql,i as Ll,g as M,s,r as p,A as Nl,h as u,f as l,c as a,j as Yl,u as o,x as d,k as Fl,y as Pl,a as n,v as c,d as m,t as f,w as $}from"../chunks/index.2bf4358c.js";import{T as Xe}from"../chunks/Tip.363c041f.js";import{Y as Sl}from"../chunks/Youtube.1e50a667.js";import{C as y}from"../chunks/CodeBlock.4e987730.js";import{C as Dl}from"../chunks/CourseFloatingBanner.9ff4c771.js";import{Q as Ye}from"../chunks/Question.668688bc.js";import{F as Kl}from"../chunks/FrameworkSwitchCourse.8d4d4ab6.js";import{H as h,E as Ol}from"../chunks/getInferenceSnippets.24b50994.js";function en(J){let r,T='๐ <strong>ํ๋ จ ๋ฆฌ์์ค</strong>: ํ๋ จ์ ์์ํ๊ธฐ ์ ์ ํฌ๊ด์ ์ธ <a href="https://huggingface.co/docs/transformers/main/en/training" rel="nofollow">๐ค Transformers ํ๋ จ ๊ฐ์ด๋</a>๋ฅผ ์์งํ๊ณ <a href="https://huggingface.co/learn/cookbook/en/fine_tuning_code_llm_on_single_gpu" rel="nofollow">๋ฏธ์ธ ์กฐ์ ์ฟก๋ถ</a>์ ์ค์ฉ์ ์ธ ์์ ๋ฅผ ์ดํด๋ณด์ธ์.';return{c(){r=M("p"),r.innerHTML=T},l(i){r=u(i,"P",{"data-svelte-h":!0}),d(r)!=="svelte-1d8z8sh"&&(r.innerHTML=T)},m(i,g){n(i,r,g)},p:ze,d(i){i&&l(r)}}}function tn(J){let r,T='๐ <strong>๊ณ ๊ธ ์ค์ </strong>: ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ํ๋ จ ์ธ์์ ์ต์ ํ ์ ๋ต์ ๋ํ ์์ธํ ์ ๋ณด๋ <a href="https://huggingface.co/docs/transformers/main/en/main_classes/trainer#transformers.TrainingArguments" rel="nofollow">TrainingArguments ๋ฌธ์</a>์ <a href="https://huggingface.co/learn/cookbook/en/fine_tuning_code_llm_on_single_gpu" rel="nofollow">ํ๋ จ ๊ตฌ์ฑ ์ฟก๋ถ</a>์ ์ฐธ๊ณ ํ์ธ์.';return{c(){r=M("p"),r.innerHTML=T},l(i){r=u(i,"P",{"data-svelte-h":!0}),d(r)!=="svelte-oywe3r"&&(r.innerHTML=T)},m(i,g){n(i,r,g)},p:ze,d(i){i&&l(r)}}}function ln(J){let r,T='๐ <strong>๋ ์์ธํ ์์๋ณด๊ธฐ</strong>: Trainer ํด๋์ค์ ๊ทธ ๋งค๊ฐ๋ณ์์ ๋ํ ์์ธํ ๋ด์ฉ์ <a href="https://huggingface.co/docs/transformers/main/en/main_classes/trainer" rel="nofollow">Trainer API ๋ฌธ์</a>๋ฅผ ๋ฐฉ๋ฌธํ๊ณ <a href="https://huggingface.co/learn/cookbook/en/fine_tuning_code_llm_on_single_gpu" rel="nofollow">ํ๋ จ ์ฟก๋ถ ๋ ์ํผ</a>์์ ๊ณ ๊ธ ์ฌ์ฉ ํจํด์ ์ดํด๋ณด์ธ์.';return{c(){r=M("p"),r.innerHTML=T},l(i){r=u(i,"P",{"data-svelte-h":!0}),d(r)!=="svelte-1vnjsqm"&&(r.innerHTML=T)},m(i,g){n(i,r,g)},p:ze,d(i){i&&l(r)}}}function nn(J){let r,T='๋ค์ํ ํ๊ฐ ๋ฉํธ๋ฆญ๊ณผ ์ ๋ต์ ๋ํด ์์๋ณด๋ ค๋ฉด <a href="https://huggingface.co/docs/evaluate/" rel="nofollow">๐ค Evaluate ๋ฌธ์</a>๋ฅผ ์ฐธ๊ณ ํ์ธ์.';return{c(){r=M("p"),r.innerHTML=T},l(i){r=u(i,"P",{"data-svelte-h":!0}),d(r)!=="svelte-3mjkop"&&(r.innerHTML=T)},m(i,g){n(i,r,g)},p:ze,d(i){i&&l(r)}}}function sn(J){let r,T='๐ฏ <strong>์ฑ๋ฅ ์ต์ ํ</strong>: ๋ถ์ฐ ํ๋ จ, ๋ฉ๋ชจ๋ฆฌ ์ต์ ํ, ํ๋์จ์ด๋ณ ์ต์ ํ๋ฅผ ํฌํจํ ๊ณ ๊ธ ํ๋ จ ๊ธฐ์ ์ ๋ํด์๋ <a href="https://huggingface.co/docs/transformers/main/en/performance" rel="nofollow">๐ค Transformers ์ฑ๋ฅ ๊ฐ์ด๋</a>๋ฅผ ์ดํด๋ณด์ธ์.';return{c(){r=M("p"),r.innerHTML=T},l(i){r=u(i,"P",{"data-svelte-h":!0}),d(r)!=="svelte-1avfr8p"&&(r.innerHTML=T)},m(i,g){n(i,r,g)},p:ze,d(i){i&&l(r)}}}function an(J){let r,T='๐ <strong>๋ ๋ง์ ์์ </strong>: <a href="https://huggingface.co/docs/transformers/main/en/notebooks" rel="nofollow">๐ค Transformers ๋ ธํธ๋ถ</a>์ ์๋ ๋ฐฉ๋ํ ์๋ฃ๋ฅผ ํ์ธํด ๋ณด์ธ์.';return{c(){r=M("p"),r.innerHTML=T},l(i){r=u(i,"P",{"data-svelte-h":!0}),d(r)!=="svelte-1j34o6j"&&(r.innerHTML=T)},m(i,g){n(i,r,g)},p:ze,d(i){i&&l(r)}}}function rn(J){let r,T="๐ก <strong>ํต์ฌ ์์ :</strong>",i,g,w="<li><code>Trainer</code> API๋ ๋๋ถ๋ถ์ ํ๋ จ ๋ณต์ก์ฑ์ ์ฒ๋ฆฌํ๋ ๋์ ์์ค์ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.</li> <li><code>processing_class</code>๋ ์ ์ ํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ์ํด ํ ํฌ๋์ด์ ๋ฅผ ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.</li> <li><code>TrainingArguments</code>๋ ํ์ต๋ฅ , ๋ฐฐ์น ํฌ๊ธฐ, ํ๊ฐ ์ ๋ต, ์ต์ ํ ๋ฑ ํ๋ จ์ ๋ชจ๋ ์ธก๋ฉด์ ์ ์ดํฉ๋๋ค.</li> <li><code>compute_metrics</code>๋ฅผ ์ฌ์ฉํ๋ฉด ํ๋ จ ์์ค ์ธ์ ์ฌ์ฉ์ ์ ์ ํ๊ฐ ๋ฉํธ๋ฆญ์ ํ์ฉํ ์ ์์ต๋๋ค.</li> <li>ํผํฉ ์ ๋ฐ๋(<code>fp16=True</code>)์ ๊ทธ๋ ์ด๋์ธํธ ๋์ ๊ณผ ๊ฐ์ ์ต์ ๊ธฐ๋ฅ์ ํ๋ จ ํจ์จ์ฑ์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์์ต๋๋ค.</li>";return{c(){r=M("p"),r.innerHTML=T,i=s(),g=M("ul"),g.innerHTML=w},l(U){r=u(U,"P",{"data-svelte-h":!0}),d(r)!=="svelte-3aouuq"&&(r.innerHTML=T),i=a(U),g=u(U,"UL",{"data-svelte-h":!0}),d(g)!=="svelte-56lnro"&&(g.innerHTML=w)},m(U,b){n(U,r,b),n(U,i,b),n(U,g,b)},p:ze,d(U){U&&(l(r),l(i),l(g))}}}function pn(J){let r,T,i,g,w,U,b,Ae,H,Be,W,qe,G,il='๐ค Transformers๋ <code>Trainer</code> ํด๋์ค๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ฉด ์ฌ์ ํ์ต๋ ๋ชจ๋ธ์ ์ฌ๋ฌ๋ถ์ ๋ฐ์ดํฐ์ ์ ๋ง์ถฐ ์ต์ ๊ธฐ๋ฒ์ผ๋ก ์ฝ๊ฒ ๋ฏธ์ธ ์กฐ์ ํ ์ ์์ต๋๋ค. ์ด์ ์น์ ์์ ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ ์์ ์ ๋ชจ๋ ๋ง์ณค๋ค๋ฉด ์ด์ ๋ช ๋จ๊ณ๋ง ๊ฑฐ์น๋ฉด <code>Trainer</code>๋ฅผ ์ ์ํ ์ ์์ต๋๋ค. ๊ฐ์ฅ ์ด๋ ค์ด ๋ถ๋ถ์ <code>Trainer.train()</code>์ ์คํํ ํ๊ฒฝ์ ์ค๋นํ๋ ๊ณผ์ ์ผ ์ ์์ต๋๋ค. ์ด ์์ ์ CPU์์ ๋งค์ฐ ๋๋ฆฌ๊ฒ ์คํ๋๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ง์ฝ GPU๊ฐ ์๋ค๋ฉด <a href="https://colab.research.google.com/" rel="nofollow">Google Colab</a>์์ ๋ฌด๋ฃ๋ก ์ ๊ณตํ๋ GPU๋ TPU๋ฅผ ์ด์ฉํ ์ ์์ต๋๋ค.',Le,_,Ne,I,pl="์๋ ์ฝ๋ ์์๋ ์ด์ ์น์ ์ ์ฝ๋๋ฅผ ๋ชจ๋ ์คํํ๋ค๋ ๊ฐ์ ํ์ ์๋ํฉ๋๋ค. ์ฆ, ๋ค์ ์ฌํญ๋ค์ด ํ์ํฉ๋๋ค.",Pe,Z,Se,E,De,Q,ol="<code>Trainer</code>๋ฅผ ์ ์ํ๊ธฐ ์ ์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ <code>Trainer</code>๊ฐ ํ๋ จ ๋ฐ ํ๊ฐ์ ์ฌ์ฉํ ๋ชจ๋ ํ์ดํผํ๋ผ๋ฏธํฐ๋ฅผ ๋ด์<code>TrainingArguments</code> ํด๋์ค๋ฅผ ์ ์ํ๋ ๊ฒ์ ๋๋ค. ํ์๋ก ์ ๊ณตํด์ผ ํ๋ ์ ์ผํ ์ธ์๋ ํ๋ จ๋ ๋ชจ๋ธ๊ณผ ์ค๊ฐ ์ฒดํฌํฌ์ธํธ๊ฐ ์ ์ฅ๋ ๋๋ ํ ๋ฆฌ์ ๋๋ค. ๋๋จธ์ง๋ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๋ ์ ์์ผ๋ฉฐ, ๊ธฐ๋ณธ์ ์ธ ๋ฏธ์ธ ์กฐ์ ์์ ์๋ ์ถฉ๋ถํ ์ค์ ์ ๋๋ค.",Ke,V,Oe,X,cl='ํ๋ จ ์ค์ ๋ชจ๋ธ์ Hub์ ์๋์ผ๋ก ์ ๋ก๋ํ๋ ค๋ฉด <code>TrainingArguments</code>์์ <code>push_to_hub=True</code>๋ฅผ ์ ๋ฌํ์ธ์. ์ด ๊ธฐ๋ฅ์ ๋ํด์๋ <a href="/course/chapter4/3">Chapter 4</a>์์ ์์ธํ ์์๋ณด๊ฒ ์ต๋๋ค.',et,j,tt,z,ml='๋ ๋ฒ์งธ ๋จ๊ณ๋ ๋ชจ๋ธ์ ์ ์ํ๋ ๊ฒ์ ๋๋ค. <a href="/course/chapter2">์ด์ ์ฑํฐ</a>์์์ ๊ฐ์ด ๋ ๊ฐ์ ๋ผ๋ฒจ๊ณผ ํจ๊ป <code>AutoModelForSequenceClassification</code> ํด๋์ค๋ฅผ ์ฌ์ฉํ๊ฒ ์ต๋๋ค.',lt,Y,nt,F,fl='<a href="/course/chapter2">Chapter 2</a>์ ๋ฌ๋ฆฌ ์ด ์ฌ์ ํ๋ จ๋ ๋ชจ๋ธ์ ์ธ์คํด์คํํ๋ฉด ๊ฒฝ๊ณ ๋ฉ์์ง๊ฐ ๋ํ๋๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค. ์ด๋ BERT๊ฐ ๋ฌธ์ฅ ์ ๋ถ๋ฅ๋ฅผ ์ํด ์ฌ์ ํ๋ จ๋์ง ์์๊ธฐ ๋๋ฌธ์, ์ฌ์ ํ๋ จ๋ ๋ชจ๋ธ์ ํค๋๊ฐ ์ ๊ฑฐ๋๊ณ ์ํ์ค ๋ถ๋ฅ์ ์ ํฉํ ์๋ก์ด ํค๋๊ฐ ์ถ๊ฐ๋์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ฒฝ๊ณ ๋ ์ผ๋ถ ๊ฐ์ค์น(์ ๊ฑฐ๋ ์ฌ์ ํ๋ จ ํค๋์ ํด๋นํ๋ ๊ฐ์ค์น)๊ฐ ์ฌ์ฉ๋์ง ์์๊ณ , ์ผ๋ถ ๋ค๋ฅธ ๊ฐ์ค์น(์๋ก์ด ํค๋์ฉ)๊ฐ ๋ฌด์์๋ก ์ด๊ธฐํ๋์๋ค๋ ๊ฒ์ ๋ํ๋ ๋๋ค. ๋ง์ง๋ง์ผ๋ก ๋ชจ๋ธ์ ํ๋ จ์ํค๋ผ๋ ๋ฉ์์ง๊ฐ ๋์ค๋๋ฐ, ๋ฐ๋ก ์ง๊ธ๋ถํฐ ๊ทธ ์์ ์ ์์ํ๊ฒ ์ต๋๋ค.',st,A,$l="๋ชจ๋ธ์ด ์ค๋น๋๋ฉด, ์ง๊ธ๊น์ง ๊ตฌ์ฑํ ๋ชจ๋ ๊ฐ์ฒด(<code>model</code>, <code>training_args</code>, ํ๋ จ ๋ฐ ๊ฒ์ฆ ๋ฐ์ดํฐ์ , <code>data_collator</code>, <code>processing_class</code>)๋ฅผ ์ ๋ฌํ์ฌ <code>Trainer</code>๋ฅผ ์ ์ํ ์ ์์ต๋๋ค. <code>processing_class</code> ๋งค๊ฐ๋ณ์๋ ๋น๊ต์ ์ต๊ทผ์ ์ถ๊ฐ๋ ๊ธฐ๋ฅ์ผ๋ก, <code>Trainer</code>์๊ฒ ์ด๋ค ํ ํฌ๋์ด์ ๋ฅผ ์ฌ์ฉํด ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ์ง ์๋ ค์ค๋๋ค.",at,B,rt,q,Ml="<code>processing_class</code>์ ํ ํฌ๋์ด์ ๋ฅผ ์ ๋ฌํ๋ฉด, <code>Trainer</code>๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก <code>DataCollatorWithPadding</code>์ <code>data_collator</code>๋ก ์ฌ์ฉํฉ๋๋ค. ๋ฐ๋ผ์ ์ด ๊ฒฝ์ฐ์๋ <code>data_collator=data_collator</code> ์ค์ ์๋ตํ ์ ์์ง๋ง, ๋ฐ์ดํฐ ์ฒ๋ฆฌ ํ์ดํ๋ผ์ธ์ ์ค์ํ ๋ถ๋ถ์ ๋ณด์ฌ๋๋ฆฌ๊ธฐ ์ํด ์ฝ๋์ ํฌํจํ์ต๋๋ค.",it,C,pt,L,ul="๋ฐ์ดํฐ์ ์์ ๋ชจ๋ธ์ ๋ฏธ์ธ ์กฐ์ ํ๋ ค๋ฉด <code>Trainer</code>์ <code>train()</code> ๋ฉ์๋๋ฅผ ํธ์ถํ๊ธฐ๋ง ํ๋ฉด ๋ฉ๋๋ค.",ot,N,ct,P,dl="์ด๋ ๊ฒ ํ๋ฉด ๋ฏธ์ธ ์กฐ์ ์ด ์์๋ฉ๋๋ค(GPU์์๋ ๋ช ๋ถ ์ ๋ ์์๋ฉ๋๋ค). 500๋จ๊ณ๋ง๋ค ํ๋ จ ์์ค์ด ์ถ๋ ฅ๋์ง๋ง, ๋ชจ๋ธ์ ์ฑ๋ฅ์ด ์ผ๋ง๋ ์ข์์ง(๋๋ ๋์์ง)๋ ์๋ ค์ฃผ์ง ์์ต๋๋ค. ๊ทธ ์ด์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.",mt,S,Tl="<li><code>TrainingArguments</code>์์ <code>eval_strategy</code>๋ฅผ <code>"steps"</code> (๋งค <code>eval_steps</code>๋ง๋ค ํ๊ฐ) ๋๋ <code>"epoch"</code> (๊ฐ ์ํฌํฌ ์ข ๋ฃ ์ ํ๊ฐ)๋ก ์ค์ ํ์ง ์์์ต๋๋ค.</li> <li>ํ๊ฐ ์ค์ ๋ฉํธ๋ฆญ์ ๊ณ์ฐํ๊ธฐ ์ํ <code>compute_metrics()</code> ํจ์๋ฅผ <code>Trainer</code>์ ์ ๊ณตํ์ง ์์์ต๋๋ค. ์ด ํจ์๊ฐ ์์ผ๋ฉด ํ๊ฐ์์ ์์ค ๊ฐ๋ง ์ถ๋ ฅ๋๋๋ฐ, ์ด ๊ฐ๋ง์ผ๋ก๋ ์ฑ๋ฅ์ ํ์ ํ๊ธฐ ์ด๋ ต์ต๋๋ค.</li>",ft,D,$t,K,gl="์ด์ ์ ์ฉํ <code>compute_metrics()</code> ํจ์๋ฅผ ์ด๋ป๊ฒ ๋ง๋ค๊ณ ๋ค์ ํ๋ จ ์ ์ฌ์ฉํ ์ ์๋์ง ์์๋ณด๊ฒ ์ต๋๋ค. ์ด ํจ์๋ <code>EvalPrediction</code> ๊ฐ์ฒด(<code>predictions</code> ํ๋์ <code>label_ids</code> ํ๋๋ฅผ ๊ฐ๋ ๋ช ๋ช ๋ ํํ)๋ฅผ ์ ๋ ฅ๋ฐ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฐ ๋ฉํธ๋ฆญ์ ์ด๋ฆ์ ํค(๋ฌธ์์ด)๋ก, ์ฑ๋ฅ์ ๊ฐ(๋ถ๋์์์ )์ผ๋ก ๊ฐ๋ ๋์ ๋๋ฆฌ๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค. ๋ชจ๋ธ์ ์์ธก๊ฐ์ ์ป๊ธฐ ์ํด <code>Trainer.predict()</code>๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.",Mt,O,ut,ee,dt,te,Jl="<code>predict()</code> ๋ฉ์๋์ ์ถ๋ ฅ์ <code>predictions</code>, <code>label_ids</code>, <code>metrics</code> ์ธ ๊ฐ์ ํ๋๊ฐ ์๋ ๋ ๋ค๋ฅธ ๋ช ๋ช ๋ ํํ์ ๋๋ค. <code>metrics</code> ํ๋์๋ ์ ๋ฌ๋ ๋ฐ์ดํฐ์ ์ ๋ํ ์์ค ๊ฐ๊ณผ ์๊ฐ ๊ด๋ จ ๋ฉํธ๋ฆญ(์ด ์์ธก ์๊ฐ, ํ๊ท ์์ธก ์๊ฐ)๋ง ํฌํจ๋ฉ๋๋ค. ํ์ง๋ง <code>compute_metrics()</code> ํจ์๋ฅผ ์์ฑํ์ฌ <code>Trainer</code>์ ์ ๋ฌํ๋ฉด, ์ด ํ๋์ <code>compute_metrics()</code>๊ฐ ๋ฐํํ๋ ๋ฉํธ๋ฆญ๋ค๋ ํจ๊ป ํฌํจ๋ฉ๋๋ค.",Tt,le,yl='๋ณด์๋ค์ํผ, <code>predictions</code>๋ 408 x 2 ๋ชจ์์ 2์ฐจ์ ๋ฐฐ์ด์ ๋๋ค (408์ predict()์ ์ ๋ฌํ ๋ฐ์ดํฐ์ ์ ์ํ ๊ฐ์์ ๋๋ค). ์ด ๊ฐ๋ค์ <code>predict()</code>์ ์ ๋ฌํ ๋ฐ์ดํฐ์ ์ ๊ฐ ์ํ์ ๋ํ ๋ก์ง์ ๋๋ค (<a href="/course/chapter2">์ด์ ์ฑํฐ</a>์์ ๋ณด์๋ฏ์ด ๋ชจ๋ Transformer ๋ชจ๋ธ์ ๋ก์ง์ ๋ฐํํฉ๋๋ค). ์ด ๋ก์ง์ ์ฐ๋ฆฌ๊ฐ ๊ฐ์ง ๋ ์ด๋ธ๊ณผ ๋น๊ตํ ์ ์๋ ์์ธก๊ฐ์ผ๋ก ๋ณํํ๋ ค๋ฉด, ๋ ๋ฒ์งธ ์ถ์์ ์ต๋๊ฐ์ ๊ฐ์ง ์ธ๋ฑ์ค๋ฅผ ๊ตฌํด์ผ ํฉ๋๋ค.',gt,ne,Jt,se,Ul='์ด์ ์ด <code>preds</code>๋ฅผ ๋ผ๋ฒจ๊ณผ ๋น๊ตํ ์ ์์ต๋๋ค. <code>compute_metric()</code> ํจ์๋ฅผ ๋น๋ํ๊ธฐ ์ํด ๐ค <a href="https://github.com/huggingface/evaluate/" rel="nofollow">Evaluate</a> ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ฉํธ๋ฆญ์ ํ์ฉํ๊ฒ ์ต๋๋ค. ๋ฐ์ดํฐ์ ์ ๋ก๋ํ๋ ๊ฒ์ฒ๋ผ, MRPC ๋ฐ์ดํฐ์ ๊ณผ ๊ด๋ จ๋ ๋ฉํธ๋ฆญ๋ <code>evaluate.load()</code> ํจ์๋ก ์ฝ๊ฒ ๋ก๋ํ ์ ์์ต๋๋ค. ๋ฐํ๋ ๊ฐ์ฒด์ <code>compute()</code> ๋ฉ์๋๋ฅผ ์ฌ์ฉํด ๋ฉํธ๋ฆญ์ ๊ณ์ฐํ ์ ์์ต๋๋ค.',yt,ae,Ut,re,wt,v,bt,ie,wl='๋ชจ๋ธ ํค๋์ ๊ฐ์ค์น๊ฐ ๋ฌด์์๋ก ์ด๊ธฐํ๋๊ธฐ ๋๋ฌธ์ ์ป๊ฒ ๋๋ ๊ฒฐ๊ณผ๋ ์กฐ๊ธ์ฉ ๋ค๋ฅผ ์ ์์ต๋๋ค. ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ฉด ์ฐ๋ฆฌ ๋ชจ๋ธ์ด ๊ฒ์ฆ ์ธํธ์์ 85.78%์ ์ ํ๋์ 89.97%์ F1 ์ ์๋ฅผ ๋ฌ์ฑํ์์ ๋ณผ ์ ์์ต๋๋ค. ์ด ๋ ๊ฐ์ง๋ GLUE ๋ฒค์น๋งํฌ์ MRPC ๋ฐ์ดํฐ์ ์์ ๊ฒฐ๊ณผ๋ฅผ ํ๊ฐํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๋ฉํธ๋ฆญ์ ๋๋ค. <a href="https://arxiv.org/pdf/1810.04805.pdf" rel="nofollow">BERT ๋ ผ๋ฌธ</a>์์๋ ๊ธฐ๋ณธ ๋ชจ๋ธ์ F1 ์ ์๋ฅผ 88.9๋ก ๋ณด๊ณ ํ์์ต๋๋ค. ๋น์์๋ <code>uncased</code> ๋ชจ๋ธ์ ์ฌ์ฉํ์ง๋ง, ์ฐ๋ฆฌ๋ ํ์ฌ <code>cased</code> ๋ชจ๋ธ์ ์ฌ์ฉํ๊ณ ์๊ธฐ ๋๋ฌธ์ ๋ ๋์ ๊ฒฐ๊ณผ๊ฐ ๋์จ ๊ฒ์ ๋๋ค.',ht,pe,bl="์ด ๋ชจ๋ ๊ฒ์ ์ข ํฉํ๋ฉด, ๋ค์์ฒ๋ผ <code>compute_metrics()</code> ํจ์๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์ ์ํ ์ ์์ต๋๋ค.",_t,oe,jt,ce,hl="๊ฐ ์ํญ์ด ๋๋ ๋๋ง๋ค ๋ฉํธ๋ฆญ์ด ์ถ๋ ฅ๋๋๋ก, ์ด <code>compute_metrics()</code> ํจ์๊ฐ ํฌํจํ์ฌ <code>Trainer</code>๋ฅผ ์๋ก ์ ์ํด ๋ณด๊ฒ ์ต๋๋ค.",Ct,me,vt,fe,_l="์ฐธ๊ณ ๋ก, ์ฐ๋ฆฌ๋ <code>eval_strategy</code>๋ฅผ <code>"epoch"</code>์ผ๋ก ์ค์ ํ ์๋ก์ด <code>TrainingArguments</code>์ ์๋ก์ด ๋ชจ๋ธ์ ์์ฑํฉ๋๋ค. ์ด๋ ๊ฒ ํ์ง ์์ผ๋ฉด ์ด๋ฏธ ํ๋ จ๋ ๋ชจ๋ธ์ ํ๋ จ์ ๊ณ์ํ๊ฒ ๋ ๊ฒ๋๋ค. ์๋ก์ด ํ๋ จ์ ์์ํ๋ ค๋ฉด ๋ค์์ ์คํํ์ธ์.",kt,$e,Rt,Me,jl="์ด๋ฒ์๋ ํ๋ จ ์์ค ์ธ์๋ ๊ฐ ์ํญ์ด ๋๋ ๋๋ง๋ค ๊ฒ์ฆ ์์ค๊ณผ ๋ฉํธ๋ฆญ์ด ํจ๊ป ์ถ๋ ฅ๋ ๊ฒ๋๋ค. ์์ ๋งํ๋ฏ์ด ๋ชจ๋ธ ํค๋์ ๋ฌด์์ ์ด๊ธฐํ ๋๋ฌธ์ ์ฌ๋ฌ๋ถ์ด ์ป๋ ์ ํ๋/F1 ์ ์๋ ์ฐ๋ฆฌ๊ฐ ์ป์ ๊ฒฐ๊ณผ์ ์ฝ๊ฐ ๋ค๋ฅผ ์ ์์ง๋ง, ๋น์ทํ ๋ฒ์์ ์์ ๊ฒ๋๋ค.",xt,ue,Ht,de,Cl="<code>Trainer</code>๋ ํ๋ ๋ฅ๋ฌ๋์ ๋ชจ๋ฒ ์ฌ๋ก๋ค์ ์ฝ๊ฒ ํ์ฉํ ์ ์๋๋ก ๋ค์ํ ๋ด์ฅ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.",Wt,Te,vl="<strong>ํผํฉ ์ ๋ฐ๋ ํ๋ จ</strong>: ๋ ๋น ๋ฅธ ํ๋ จ๊ณผ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ ๊ฐ์๋ฅผ ์ํด ํ๋ จ ์ธ์์์ <code>fp16=True</code>๋ฅผ ์ค์ ํ์ธ์.",Gt,ge,It,Je,kl="<strong>๊ทธ๋ ์ด๋์ธํธ ๋์ </strong>: GPU ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ถ์กฑํ ๋ ๋ ํฐ ๋ฐฐ์น ํฌ๊ธฐ๋ก ํ์ตํ๋ ํจ๊ณผ๋ฅผ ๋ผ ์ ์์ต๋๋ค.",Zt,ye,Et,Ue,Rl="<strong>ํ์ต๋ฅ ์ค์ผ์ค๋ง</strong>: Trainer๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ํ ๊ฐ์ ๋ฐฉ์์ ์ฌ์ฉํ์ง๋ง, ์ฌ์ฉ์ ๋ง์ถค ์ค์ ์ด ๊ฐ๋ฅํฉ๋๋ค.",Qt,we,Vt,k,Xt,be,xl="<code>Trainer</code>๋ ์ฌ๋ฌ GPU ๋๋ TPU์์ ์ฆ์ ์๋ํ๋ฉฐ ๋ถ์ฐ ํ๋ จ์ ์ํ ๋ง์ ์ต์ ์ ์ ๊ณตํฉ๋๋ค. ์ด์ ๊ด๋ จ๋ ๋ชจ๋ ๋ด์ฉ์ Chapter 10์์ ๋ค๋ฃจ๊ฒ ์ต๋๋ค.",zt,he,Hl='์ด๊ฒ์ผ๋ก <code>Trainer</code> API๋ฅผ ์ฌ์ฉํ ๋ฏธ์ธ ์กฐ์ ์๊ฐ๋ฅผ ๋ง์นฉ๋๋ค. ๋๋ถ๋ถ์ ์ผ๋ฐ์ ์ธ NLP ์์ ์ ๋ํ ์์ ๋ <a href="/course/chapter7">Chapter 7</a>์์ ๋ค๋ฃฐ ์์ ์ด๋ฉฐ, ๋ค์์ผ๋ก๋ ์์ PyTorch ์ฝ๋๋ก ๋์ผํ ์์ ์ ์ํํ๋ ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.',Yt,R,Ft,_e,At,je,Wl="Trainer API์ ๋ฏธ์ธ ์กฐ์ ๊ฐ๋ ์ ๋ํ ์ดํด๋ฅผ ํ ์คํธํด๋ณด์ธ์.",Bt,Ce,qt,ve,Lt,ke,Nt,Re,Pt,xe,St,He,Dt,We,Kt,Ge,Ot,Ie,el,Ze,tl,Ee,ll,Qe,nl,x,sl,Ve,al,Fe,rl;return w=new Kl({props:{fw:J[0]}}),b=new h({props:{title:"Trainer API๋ก ๋ชจ๋ธ ๋ฏธ์ธ ์กฐ์ ํ๊ธฐ",local:"fine-tuning-a-model-with-the-trainer-api",headingTag:"h1"}}),H=new Dl({props:{chapter:3,classNames:"absolute z-10 right-0 top-0",notebooks:[{label:"Google Colab",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/master/course/en/chapter3/section3.ipynb"},{label:"Aws Studio",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/master/course/en/chapter3/section3.ipynb"}]}}),W=new Sl({props:{id:"nvBXf7s7vTI"}}),_=new Xe({props:{$$slots:{default:[en]},$$scope:{ctx:J}}}),Z=new y({props:{code:"ZnJvbSUyMGRhdGFzZXRzJTIwaW1wb3J0JTIwbG9hZF9kYXRhc2V0JTBBZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEF1dG9Ub2tlbml6ZXIlMkMlMjBEYXRhQ29sbGF0b3JXaXRoUGFkZGluZyUwQSUwQXJhd19kYXRhc2V0cyUyMCUzRCUyMGxvYWRfZGF0YXNldCglMjJnbHVlJTIyJTJDJTIwJTIybXJwYyUyMiklMEFjaGVja3BvaW50JTIwJTNEJTIwJTIyYmVydC1iYXNlLXVuY2FzZWQlMjIlMEF0b2tlbml6ZXIlMjAlM0QlMjBBdXRvVG9rZW5pemVyLmZyb21fcHJldHJhaW5lZChjaGVja3BvaW50KSUwQSUwQSUwQWRlZiUyMHRva2VuaXplX2Z1bmN0aW9uKGV4YW1wbGUpJTNBJTBBJTIwJTIwJTIwJTIwcmV0dXJuJTIwdG9rZW5pemVyKGV4YW1wbGUlNUIlMjJzZW50ZW5jZTElMjIlNUQlMkMlMjBleGFtcGxlJTVCJTIyc2VudGVuY2UyJTIyJTVEJTJDJTIwdHJ1bmNhdGlvbiUzRFRydWUpJTBBJTBBJTBBdG9rZW5pemVkX2RhdGFzZXRzJTIwJTNEJTIwcmF3X2RhdGFzZXRzLm1hcCh0b2tlbml6ZV9mdW5jdGlvbiUyQyUyMGJhdGNoZWQlM0RUcnVlKSUwQWRhdGFfY29sbGF0b3IlMjAlM0QlMjBEYXRhQ29sbGF0b3JXaXRoUGFkZGluZyh0b2tlbml6ZXIlM0R0b2tlbml6ZXIp",highlighted:`<span class="hljs-keyword">from</span> datasets <span class="hljs-keyword">import</span> load_dataset | |
| <span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoTokenizer, DataCollatorWithPadding | |
| raw_datasets = load_dataset(<span class="hljs-string">"glue"</span>, <span class="hljs-string">"mrpc"</span>) | |
| checkpoint = <span class="hljs-string">"bert-base-uncased"</span> | |
| tokenizer = AutoTokenizer.from_pretrained(checkpoint) | |
| <span class="hljs-keyword">def</span> <span class="hljs-title function_">tokenize_function</span>(<span class="hljs-params">example</span>): | |
| <span class="hljs-keyword">return</span> tokenizer(example[<span class="hljs-string">"sentence1"</span>], example[<span class="hljs-string">"sentence2"</span>], truncation=<span class="hljs-literal">True</span>) | |
| tokenized_datasets = raw_datasets.<span class="hljs-built_in">map</span>(tokenize_function, batched=<span class="hljs-literal">True</span>) | |
| data_collator = DataCollatorWithPadding(tokenizer=tokenizer)`,wrap:!1}}),E=new h({props:{title:"ํ๋ จ",local:"training",headingTag:"h3"}}),V=new y({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMFRyYWluaW5nQXJndW1lbnRzJTBBJTBBdHJhaW5pbmdfYXJncyUyMCUzRCUyMFRyYWluaW5nQXJndW1lbnRzKCUyMnRlc3QtdHJhaW5lciUyMik=",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> TrainingArguments | |
| training_args = TrainingArguments(<span class="hljs-string">"test-trainer"</span>)`,wrap:!1}}),j=new Xe({props:{$$slots:{default:[tn]},$$scope:{ctx:J}}}),Y=new y({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEF1dG9Nb2RlbEZvclNlcXVlbmNlQ2xhc3NpZmljYXRpb24lMEElMEFtb2RlbCUyMCUzRCUyMEF1dG9Nb2RlbEZvclNlcXVlbmNlQ2xhc3NpZmljYXRpb24uZnJvbV9wcmV0cmFpbmVkKGNoZWNrcG9pbnQlMkMlMjBudW1fbGFiZWxzJTNEMik=",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoModelForSequenceClassification | |
| model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=<span class="hljs-number">2</span>)`,wrap:!1}}),B=new y({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMFRyYWluZXIlMEElMEF0cmFpbmVyJTIwJTNEJTIwVHJhaW5lciglMEElMjAlMjAlMjAlMjBtb2RlbCUyQyUwQSUyMCUyMCUyMCUyMHRyYWluaW5nX2FyZ3MlMkMlMEElMjAlMjAlMjAlMjB0cmFpbl9kYXRhc2V0JTNEdG9rZW5pemVkX2RhdGFzZXRzJTVCJTIydHJhaW4lMjIlNUQlMkMlMEElMjAlMjAlMjAlMjBldmFsX2RhdGFzZXQlM0R0b2tlbml6ZWRfZGF0YXNldHMlNUIlMjJ2YWxpZGF0aW9uJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwZGF0YV9jb2xsYXRvciUzRGRhdGFfY29sbGF0b3IlMkMlMEElMjAlMjAlMjAlMjBwcm9jZXNzaW5nX2NsYXNzJTNEdG9rZW5pemVyJTJDJTBBKQ==",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> Trainer | |
| trainer = Trainer( | |
| model, | |
| training_args, | |
| train_dataset=tokenized_datasets[<span class="hljs-string">"train"</span>], | |
| eval_dataset=tokenized_datasets[<span class="hljs-string">"validation"</span>], | |
| data_collator=data_collator, | |
| processing_class=tokenizer, | |
| )`,wrap:!1}}),C=new Xe({props:{$$slots:{default:[ln]},$$scope:{ctx:J}}}),N=new y({props:{code:"dHJhaW5lci50cmFpbigp",highlighted:"trainer.train()",wrap:!1}}),D=new h({props:{title:"ํ๊ฐ",local:"evaluation",headingTag:"h3"}}),O=new y({props:{code:"cHJlZGljdGlvbnMlMjAlM0QlMjB0cmFpbmVyLnByZWRpY3QodG9rZW5pemVkX2RhdGFzZXRzJTVCJTIydmFsaWRhdGlvbiUyMiU1RCklMEFwcmludChwcmVkaWN0aW9ucy5wcmVkaWN0aW9ucy5zaGFwZSUyQyUyMHByZWRpY3Rpb25zLmxhYmVsX2lkcy5zaGFwZSk=",highlighted:`predictions = trainer.predict(tokenized_datasets[<span class="hljs-string">"validation"</span>]) | |
| <span class="hljs-built_in">print</span>(predictions.predictions.shape, predictions.label_ids.shape)`,wrap:!1}}),ee=new y({props:{code:"KDQwOCUyQyUyMDIpJTIwKDQwOCUyQyk=",highlighted:'(<span class="hljs-number">408</span>, <span class="hljs-number">2</span>) (<span class="hljs-number">408</span>,)',wrap:!1}}),ne=new y({props:{code:"aW1wb3J0JTIwbnVtcHklMjBhcyUyMG5wJTBBJTBBcHJlZHMlMjAlM0QlMjBucC5hcmdtYXgocHJlZGljdGlvbnMucHJlZGljdGlvbnMlMkMlMjBheGlzJTNELTEp",highlighted:`<span class="hljs-keyword">import</span> numpy <span class="hljs-keyword">as</span> np | |
| preds = np.argmax(predictions.predictions, axis=-<span class="hljs-number">1</span>)`,wrap:!1}}),ae=new y({props:{code:"aW1wb3J0JTIwZXZhbHVhdGUlMEElMEFtZXRyaWMlMjAlM0QlMjBldmFsdWF0ZS5sb2FkKCUyMmdsdWUlMjIlMkMlMjAlMjJtcnBjJTIyKSUwQW1ldHJpYy5jb21wdXRlKHByZWRpY3Rpb25zJTNEcHJlZHMlMkMlMjByZWZlcmVuY2VzJTNEcHJlZGljdGlvbnMubGFiZWxfaWRzKQ==",highlighted:`<span class="hljs-keyword">import</span> evaluate | |
| metric = evaluate.load(<span class="hljs-string">"glue"</span>, <span class="hljs-string">"mrpc"</span>) | |
| metric.compute(predictions=preds, references=predictions.label_ids)`,wrap:!1}}),re=new y({props:{code:"JTdCJ2FjY3VyYWN5JyUzQSUyMDAuODU3ODQzMTM3MjU0OTAxOSUyQyUyMCdmMSclM0ElMjAwLjg5OTY1Mzk3OTIzODc1NDIlN0Q=",highlighted:'{<span class="hljs-string">'accuracy'</span>: <span class="hljs-number">0.8578431372549019</span>, <span class="hljs-string">'f1'</span>: <span class="hljs-number">0.8996539792387542</span>}',wrap:!1}}),v=new Xe({props:{$$slots:{default:[nn]},$$scope:{ctx:J}}}),oe=new y({props:{code:"ZGVmJTIwY29tcHV0ZV9tZXRyaWNzKGV2YWxfcHJlZHMpJTNBJTBBJTIwJTIwJTIwJTIwbWV0cmljJTIwJTNEJTIwZXZhbHVhdGUubG9hZCglMjJnbHVlJTIyJTJDJTIwJTIybXJwYyUyMiklMEElMjAlMjAlMjAlMjBsb2dpdHMlMkMlMjBsYWJlbHMlMjAlM0QlMjBldmFsX3ByZWRzJTBBJTIwJTIwJTIwJTIwcHJlZGljdGlvbnMlMjAlM0QlMjBucC5hcmdtYXgobG9naXRzJTJDJTIwYXhpcyUzRC0xKSUwQSUyMCUyMCUyMCUyMHJldHVybiUyMG1ldHJpYy5jb21wdXRlKHByZWRpY3Rpb25zJTNEcHJlZGljdGlvbnMlMkMlMjByZWZlcmVuY2VzJTNEbGFiZWxzKQ==",highlighted:`<span class="hljs-keyword">def</span> <span class="hljs-title function_">compute_metrics</span>(<span class="hljs-params">eval_preds</span>): | |
| metric = evaluate.load(<span class="hljs-string">"glue"</span>, <span class="hljs-string">"mrpc"</span>) | |
| logits, labels = eval_preds | |
| predictions = np.argmax(logits, axis=-<span class="hljs-number">1</span>) | |
| <span class="hljs-keyword">return</span> metric.compute(predictions=predictions, references=labels)`,wrap:!1}}),me=new y({props:{code:"dHJhaW5pbmdfYXJncyUyMCUzRCUyMFRyYWluaW5nQXJndW1lbnRzKCUyMnRlc3QtdHJhaW5lciUyMiUyQyUyMGV2YWxfc3RyYXRlZ3klM0QlMjJlcG9jaCUyMiklMEFtb2RlbCUyMCUzRCUyMEF1dG9Nb2RlbEZvclNlcXVlbmNlQ2xhc3NpZmljYXRpb24uZnJvbV9wcmV0cmFpbmVkKGNoZWNrcG9pbnQlMkMlMjBudW1fbGFiZWxzJTNEMiklMEElMEF0cmFpbmVyJTIwJTNEJTIwVHJhaW5lciglMEElMjAlMjAlMjAlMjBtb2RlbCUyQyUwQSUyMCUyMCUyMCUyMHRyYWluaW5nX2FyZ3MlMkMlMEElMjAlMjAlMjAlMjB0cmFpbl9kYXRhc2V0JTNEdG9rZW5pemVkX2RhdGFzZXRzJTVCJTIydHJhaW4lMjIlNUQlMkMlMEElMjAlMjAlMjAlMjBldmFsX2RhdGFzZXQlM0R0b2tlbml6ZWRfZGF0YXNldHMlNUIlMjJ2YWxpZGF0aW9uJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwZGF0YV9jb2xsYXRvciUzRGRhdGFfY29sbGF0b3IlMkMlMEElMjAlMjAlMjAlMjBwcm9jZXNzaW5nX2NsYXNzJTNEdG9rZW5pemVyJTJDJTBBJTIwJTIwJTIwJTIwY29tcHV0ZV9tZXRyaWNzJTNEY29tcHV0ZV9tZXRyaWNzJTJDJTBBKQ==",highlighted:`training_args = TrainingArguments(<span class="hljs-string">"test-trainer"</span>, eval_strategy=<span class="hljs-string">"epoch"</span>) | |
| model = AutoModelForSequenceClassification.from_pretrained(checkpoint, num_labels=<span class="hljs-number">2</span>) | |
| trainer = Trainer( | |
| model, | |
| training_args, | |
| train_dataset=tokenized_datasets[<span class="hljs-string">"train"</span>], | |
| eval_dataset=tokenized_datasets[<span class="hljs-string">"validation"</span>], | |
| data_collator=data_collator, | |
| processing_class=tokenizer, | |
| compute_metrics=compute_metrics, | |
| )`,wrap:!1}}),$e=new y({props:{code:"dHJhaW5lci50cmFpbigp",highlighted:"trainer.train()",wrap:!1}}),ue=new h({props:{title:"๊ณ ๊ธ ํ๋ จ ๊ธฐ๋ฅ",local:"advanced-training-features",headingTag:"h3"}}),ge=new y({props:{code:"dHJhaW5pbmdfYXJncyUyMCUzRCUyMFRyYWluaW5nQXJndW1lbnRzKCUwQSUyMCUyMCUyMCUyMCUyMnRlc3QtdHJhaW5lciUyMiUyQyUwQSUyMCUyMCUyMCUyMGV2YWxfc3RyYXRlZ3klM0QlMjJlcG9jaCUyMiUyQyUwQSUyMCUyMCUyMCUyMGZwMTYlM0RUcnVlJTJDJTIwJTIwJTIzJTIwJUVEJTk4JUJDJUVEJTk1JUE5JTIwJUVDJUEwJTk1JUVCJUIwJTgwJUVCJThGJTg0JTIwJUVEJTk5JTlDJUVDJTg0JUIxJUVEJTk5JTk0JTBBKQ==",highlighted:`training_args = TrainingArguments( | |
| <span class="hljs-string">"test-trainer"</span>, | |
| eval_strategy=<span class="hljs-string">"epoch"</span>, | |
| fp16=<span class="hljs-literal">True</span>, <span class="hljs-comment"># ํผํฉ ์ ๋ฐ๋ ํ์ฑํ</span> | |
| )`,wrap:!1}}),ye=new y({props:{code:"dHJhaW5pbmdfYXJncyUyMCUzRCUyMFRyYWluaW5nQXJndW1lbnRzKCUwQSUyMCUyMCUyMCUyMCUyMnRlc3QtdHJhaW5lciUyMiUyQyUwQSUyMCUyMCUyMCUyMGV2YWxfc3RyYXRlZ3klM0QlMjJlcG9jaCUyMiUyQyUwQSUyMCUyMCUyMCUyMHBlcl9kZXZpY2VfdHJhaW5fYmF0Y2hfc2l6ZSUzRDQlMkMlMEElMjAlMjAlMjAlMjBncmFkaWVudF9hY2N1bXVsYXRpb25fc3RlcHMlM0Q0JTJDJTIwJTIwJTIzJTIwJUVDJTlDJUEwJUVEJTlBJUE4JTIwJUVCJUIwJUIwJUVDJUI5JTk4JTIwJUVEJTgxJUFDJUVBJUI4JUIwJTIwJTNEJTIwNCUyMColMjA0JTIwJTNEJTIwMTYlMEEp",highlighted:`training_args = TrainingArguments( | |
| <span class="hljs-string">"test-trainer"</span>, | |
| eval_strategy=<span class="hljs-string">"epoch"</span>, | |
| per_device_train_batch_size=<span class="hljs-number">4</span>, | |
| gradient_accumulation_steps=<span class="hljs-number">4</span>, <span class="hljs-comment"># ์ ํจ ๋ฐฐ์น ํฌ๊ธฐ = 4 * 4 = 16</span> | |
| )`,wrap:!1}}),we=new y({props:{code:"dHJhaW5pbmdfYXJncyUyMCUzRCUyMFRyYWluaW5nQXJndW1lbnRzKCUwQSUyMCUyMCUyMCUyMCUyMnRlc3QtdHJhaW5lciUyMiUyQyUwQSUyMCUyMCUyMCUyMGV2YWxfc3RyYXRlZ3klM0QlMjJlcG9jaCUyMiUyQyUwQSUyMCUyMCUyMCUyMGxlYXJuaW5nX3JhdGUlM0QyZS01JTJDJTBBJTIwJTIwJTIwJTIwbHJfc2NoZWR1bGVyX3R5cGUlM0QlMjJjb3NpbmUlMjIlMkMlMjAlMjAlMjMlMjAlRUIlOEIlQTQlRUIlQTUlQjglMjAlRUMlOEElQTQlRUMlQkMlODAlRUMlQTQlODQlRUIlOUYlQUMlMjAlRUMlOEIlOUMlRUIlOEYlODQlMEEp",highlighted:`training_args = TrainingArguments( | |
| <span class="hljs-string">"test-trainer"</span>, | |
| eval_strategy=<span class="hljs-string">"epoch"</span>, | |
| learning_rate=<span class="hljs-number">2e-5</span>, | |
| lr_scheduler_type=<span class="hljs-string">"cosine"</span>, <span class="hljs-comment"># ๋ค๋ฅธ ์ค์ผ์ค๋ฌ ์๋</span> | |
| )`,wrap:!1}}),k=new Xe({props:{$$slots:{default:[sn]},$$scope:{ctx:J}}}),R=new Xe({props:{$$slots:{default:[an]},$$scope:{ctx:J}}}),_e=new h({props:{title:"์น์ ํด์ฆ",local:"section-quiz",headingTag:"h2"}}),Ce=new h({props:{title:"1. Trainer ์์ <code> processing_class </code> ๋งค๊ฐ๋ณ์์ ๋ชฉ์ ์ ๋ฌด์์ธ๊ฐ์?",local:"1-trainer-์์-code-processingclass-code-๋งค๊ฐ๋ณ์์-๋ชฉ์ ์-๋ฌด์์ธ๊ฐ์",headingTag:"h3"}}),ve=new Ye({props:{choices:[{text:"์ฌ์ฉํ ๋ชจ๋ธ ์ํคํ ์ฒ๋ฅผ ์ง์ ํฉ๋๋ค.",explain:"๋ชจ๋ธ ์ํคํ ์ฒ๋ ๋ชจ๋ธ์ ๋ก๋ํ ๋ ์ง์ ๋๋ฉฐ, Trainer์์ ์ง์ ํ์ง ์์ต๋๋ค."},{text:"๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ฌ์ฉํ ํ ํฌ๋์ด์ ๋ฅผ Trainer์ ์๋ ค์ค๋๋ค.",explain:"processing_class ๋งค๊ฐ๋ณ์๋ ์ฌ์ฉํ ํ ํฌ๋์ด์ ๋ฅผ Trainer๊ฐ ์ ์ ์๋๋ก ๋์์ฃผ๋ ์ต์ ์ถ๊ฐ ์ฌํญ์ ๋๋ค.",correct:!0},{text:"ํ๋ จ์ ์ํ ๋ฐฐ์น ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ ํฉ๋๋ค.",explain:"๋ฐฐ์น ํฌ๊ธฐ๋ processing_class๊ฐ ์๋ TrainingArguments์์ ์ค์ ๋ฉ๋๋ค."},{text:"ํ๊ฐ ๋น๋๋ฅผ ์ ์ดํฉ๋๋ค.",explain:"ํ๊ฐ ๋น๋๋ TrainingArguments์ eval_strategy๋ก ์ ์ด๋ฉ๋๋ค."}]}}),ke=new h({props:{title:"2. ํ๋ จ ์ค ํ๊ฐ๊ฐ ์ผ๋ง๋ ์์ฃผ ๋ฐ์ํ๋์ง๋ฅผ ์ ์ดํ๋ TrainingArguments ๋งค๊ฐ๋ณ์๋ ๋ฌด์์ธ๊ฐ์?",local:"2-ํ๋ จ-์ค-ํ๊ฐ๊ฐ-์ผ๋ง๋-์์ฃผ-๋ฐ์ํ๋์ง๋ฅผ-์ ์ดํ๋-trainingarguments-๋งค๊ฐ๋ณ์๋-๋ฌด์์ธ๊ฐ์",headingTag:"h3"}}),Re=new Ye({props:{choices:[{text:"eval_frequency",explain:"TrainingArguments์๋ eval_frequency ๋งค๊ฐ๋ณ์๊ฐ ์์ต๋๋ค."},{text:"eval_strategy",explain:"eval_strategy๋ ํ๊ฐ ํ์ด๋ฐ์ ์ ์ดํ๊ธฐ ์ํด 'epoch', 'steps', ๋๋ 'no'๋ก ์ค์ ํ ์ ์์ต๋๋ค.",correct:!0},{text:"evaluation_steps",explain:"eval_steps๋ ํ๊ฐ ์ฌ์ด์ ๋จ๊ณ ์๋ฅผ ์ค์ ํ์ง๋ง, eval_strategy๊ฐ ํ๊ฐ ๋ฐ์ ์ฌ๋ถ/์๊ธฐ๋ฅผ ๊ฒฐ์ ํฉ๋๋ค."},{text:"do_eval",explain:"์ต์ TrainingArguments์๋ do_eval ๋งค๊ฐ๋ณ์๊ฐ ์์ต๋๋ค."}]}}),xe=new h({props:{title:"3. TrainingArguments์์ <code> fp16=True </code> ๋ ๋ฌด์์ ํ์ฑํํ๋์?",local:"3-trainingarguments์์-code-fp16true-code-๋-๋ฌด์์-ํ์ฑํํ๋์",headingTag:"h3"}}),He=new Ye({props:{choices:[{text:"๋ ๋น ๋ฅธ ํ๋ จ์ ์ํ 16๋นํธ ์ ์ ์ ๋ฐ๋",explain:"fp16์ ์ ์ ์ ๋ฐ๋๊ฐ ์๋ ๋ถ๋์์์ ์ ๋ฐ๋๋ฅผ ์๋ฏธํฉ๋๋ค."},{text:"๋ ๋น ๋ฅธ ํ๋ จ๊ณผ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ ๊ฐ์๋ฅผ ์ํ 16๋นํธ ๋ถ๋์์์ ์๋ฅผ ์ฌ์ฉํ ํผํฉ ์ ๋ฐ๋ ํ๋ จ",explain:"ํผํฉ ์ ๋ฐ๋ ํ๋ จ์ ์์ ํ์๋ 16๋นํธ ํ๋กํธ๋ฅผ, ๊ทธ๋ ์ด๋์ธํธ์๋ 32๋นํธ๋ฅผ ์ฌ์ฉํ์ฌ ์๋๋ฅผ ํฅ์์ํค๊ณ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ์ค์ ๋๋ค.",correct:!0},{text:"์ ํํ 16 ์ํฌํฌ ๋์ ํ๋ จ",explain:"fp16์ ์ํฌํฌ ์์ ๊ด๋ จ์ด ์์ต๋๋ค."},{text:"๋ถ์ฐ ํ๋ จ์ ์ํ 16๊ฐ GPU ์ฌ์ฉ",explain:"GPU ์๋ fp16 ๋งค๊ฐ๋ณ์๋ก ์ ์ด๋์ง ์์ต๋๋ค."}]}}),We=new h({props:{title:"4. Trainer์์ <code> compute_metrics </code> ํจ์์ ์ญํ ์ ๋ฌด์์ธ๊ฐ์?",local:"4-trainer์์-code-computemetrics-code-ํจ์์-์ญํ ์-๋ฌด์์ธ๊ฐ์",headingTag:"h3"}}),Ge=new Ye({props:{choices:[{text:"ํ๋ จ ์ค ์์ค์ ๊ณ์ฐํฉ๋๋ค.",explain:"์์ค ๊ณ์ฐ์ compute_metrics๊ฐ ์๋ ๋ชจ๋ธ์์ ์๋์ผ๋ก ์ฒ๋ฆฌ๋ฉ๋๋ค."},{text:"๋ก์ง์ ์์ธก์ผ๋ก ๋ณํํ๊ณ ์ ํ๋ ๋ฐ F1๊ณผ ๊ฐ์ ํ๊ฐ ๋ฉํธ๋ฆญ์ ๊ณ์ฐํฉ๋๋ค.",explain:"compute_metrics๋ ์์ธก๊ณผ ๋ผ๋ฒจ์ ๋ฐ์์ ํ๊ฐ๋ฅผ ์ํ ๋ฉํธ๋ฆญ์ ๋ฐํํฉ๋๋ค.",correct:!0},{text:"์ฌ์ฉํ ์ตํฐ๋ง์ด์ ๋ฅผ ๊ฒฐ์ ํฉ๋๋ค.",explain:"์ตํฐ๋ง์ด์ ์ ํ์ compute_metrics๋ก ์ฒ๋ฆฌ๋์ง ์์ต๋๋ค."},{text:"ํ๋ จ ๋ฐ์ดํฐ๋ฅผ ์ ์ฒ๋ฆฌํฉ๋๋ค.",explain:"๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ๋ ํ๋ จ ์ ์ ์ํ๋๋ฉฐ, ํ๊ฐ ์ค compute_metrics๋ก ์ํ๋์ง ์์ต๋๋ค."}]}}),Ie=new h({props:{title:"5. Trainer์ <code> eval_dataset </code> ์ ์ ๊ณตํ์ง ์์ผ๋ฉด ์ด๋ป๊ฒ ๋๋์?",local:"5-trainer์-code-evaldataset-code-์-์ ๊ณตํ์ง-์์ผ๋ฉด-์ด๋ป๊ฒ-๋๋์",headingTag:"h3"}}),Ze=new Ye({props:{choices:[{text:"ํ๋ จ์ด ์ค๋ฅ์ ํจ๊ป ์คํจํฉ๋๋ค.",explain:"eval_dataset ์์ด๋ ํ๋ จ์ ์งํํ ์ ์์ง๋ง, ํ๊ฐ ๋ฉํธ๋ฆญ์ ์ป์ ์ ์์ต๋๋ค."},{text:"Trainer๊ฐ ์๋์ผ๋ก ํ๋ จ ๋ฐ์ดํฐ๋ฅผ ํ๊ฐ์ฉ์ผ๋ก ๋ถํ ํฉ๋๋ค.",explain:"Trainer๋ ์๋์ผ๋ก ๊ฒ์ฆ ๋ถํ ์ ์์ฑํ์ง ์์ต๋๋ค."},{text:"ํ๋ จ ์ค ํ๊ฐ ๋ฉํธ๋ฆญ์ ์ป์ ์ ์์ง๋ง ํ๋ จ์ ์ฌ์ ํ ์๋ํฉ๋๋ค.",explain:"ํ๊ฐ๋ ์ ํ์ฌํญ์ ๋๋ค - ํ๊ฐ ์์ด๋ ํ๋ จํ ์ ์์ง๋ง ๊ฒ์ฆ ๋ฉํธ๋ฆญ์ ๋ณผ ์ ์์ต๋๋ค.",correct:!0},{text:"๋ชจ๋ธ์ด ํ๊ฐ๋ฅผ ์ํด ํ๋ จ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํฉ๋๋ค.",explain:"Trainer๋ ์๋์ผ๋ก ํ๊ฐ๋ฅผ ์ํด ํ๋ จ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค - ๋จ์ํ ํ๊ฐํ์ง ์์ต๋๋ค."}]}}),Ee=new h({props:{title:"6. ๊ทธ๋ ์ด๋์ธํธ ๋์ ์ด๋ ๋ฌด์์ด๋ฉฐ ์ด๋ป๊ฒ ํ์ฑํํ๋์?",local:"6-๊ทธ๋ ์ด๋์ธํธ-๋์ ์ด๋-๋ฌด์์ด๋ฉฐ-์ด๋ป๊ฒ-ํ์ฑํํ๋์",headingTag:"h3"}}),Qe=new Ye({props:{choices:[{text:"๊ทธ๋ ์ด๋์ธํธ๋ฅผ ๋์คํฌ์ ์ ์ฅํ๋ ๊ฒ์ผ๋ก, save_gradients=True๋ก ํ์ฑํ๋ฉ๋๋ค.",explain:"๊ทธ๋ ์ด๋์ธํธ ๋์ ์ ๊ทธ๋ ์ด๋์ธํธ๋ฅผ ๋์คํฌ์ ์ ์ฅํ๋ ๊ฒ๊ณผ ๊ด๋ จ์ด ์์ต๋๋ค."},{text:"์ ๋ฐ์ดํธ ์ ์ ์ฌ๋ฌ ๋ฐฐ์น์ ๊ฑธ์ณ ๊ทธ๋ ์ด๋์ธํธ๋ฅผ ๋์ ํ๋ ๊ฒ์ผ๋ก, gradient_accumulation_steps๋ก ํ์ฑํ๋ฉ๋๋ค.",explain:"์ด๋ฅผ ํตํด ์ฌ๋ฌ ์์ ํ์ ๊ฑธ์ณ ๊ทธ๋ ์ด๋์ธํธ๋ฅผ ๋์ ํ์ฌ ๋ ํฐ ๋ฐฐ์น ํฌ๊ธฐ๋ฅผ ์๋ฎฌ๋ ์ด์ ํ ์ ์์ต๋๋ค.",correct:!0},{text:"๊ทธ๋ ์ด๋์ธํธ ๊ณ์ฐ์ ๊ฐ์ํํ๋ ๊ฒ์ผ๋ก, fp16๊ณผ ํจ๊ป ์๋์ผ๋ก ํ์ฑํ๋ฉ๋๋ค.",explain:"fp16์ด ํ๋ จ์ ๊ฐ์ํํ ์ ์์ง๋ง, ๊ทธ๋ ์ด๋์ธํธ ๋์ ์ ๋ณ๋์ ๊ธฐ์ ์ ๋๋ค."},{text:"๊ทธ๋ ์ด๋์ธํธ ์ค๋ฒํ๋ก์ฐ๋ฅผ ๋ฐฉ์งํ๋ ๊ฒ์ผ๋ก, gradient_clipping=True๋ก ํ์ฑํ๋ฉ๋๋ค.",explain:"์ด๋ ๊ทธ๋ ์ด๋์ธํธ ๋์ ์ด ์๋ ๊ทธ๋ ์ด๋์ธํธ ํด๋ฆฌํ์ ์ค๋ช ํฉ๋๋ค."}]}}),x=new Xe({props:{$$slots:{default:[rn]},$$scope:{ctx:J}}}),Ve=new Ol({props:{source:"https://github.com/huggingface/course/blob/main/chapters/ko/chapter3/3.mdx"}}),{c(){r=M("meta"),T=s(),i=M("p"),g=s(),p(w.$$.fragment),U=s(),p(b.$$.fragment),Ae=s(),p(H.$$.fragment),Be=s(),p(W.$$.fragment),qe=s(),G=M("p"),G.innerHTML=il,Le=s(),p(_.$$.fragment),Ne=s(),I=M("p"),I.textContent=pl,Pe=s(),p(Z.$$.fragment),Se=s(),p(E.$$.fragment),De=s(),Q=M("p"),Q.innerHTML=ol,Ke=s(),p(V.$$.fragment),Oe=s(),X=M("p"),X.innerHTML=cl,et=s(),p(j.$$.fragment),tt=s(),z=M("p"),z.innerHTML=ml,lt=s(),p(Y.$$.fragment),nt=s(),F=M("p"),F.innerHTML=fl,st=s(),A=M("p"),A.innerHTML=$l,at=s(),p(B.$$.fragment),rt=s(),q=M("p"),q.innerHTML=Ml,it=s(),p(C.$$.fragment),pt=s(),L=M("p"),L.innerHTML=ul,ot=s(),p(N.$$.fragment),ct=s(),P=M("p"),P.textContent=dl,mt=s(),S=M("ol"),S.innerHTML=Tl,ft=s(),p(D.$$.fragment),$t=s(),K=M("p"),K.innerHTML=gl,Mt=s(),p(O.$$.fragment),ut=s(),p(ee.$$.fragment),dt=s(),te=M("p"),te.innerHTML=Jl,Tt=s(),le=M("p"),le.innerHTML=yl,gt=s(),p(ne.$$.fragment),Jt=s(),se=M("p"),se.innerHTML=Ul,yt=s(),p(ae.$$.fragment),Ut=s(),p(re.$$.fragment),wt=s(),p(v.$$.fragment),bt=s(),ie=M("p"),ie.innerHTML=wl,ht=s(),pe=M("p"),pe.innerHTML=bl,_t=s(),p(oe.$$.fragment),jt=s(),ce=M("p"),ce.innerHTML=hl,Ct=s(),p(me.$$.fragment),vt=s(),fe=M("p"),fe.innerHTML=_l,kt=s(),p($e.$$.fragment),Rt=s(),Me=M("p"),Me.textContent=jl,xt=s(),p(ue.$$.fragment),Ht=s(),de=M("p"),de.innerHTML=Cl,Wt=s(),Te=M("p"),Te.innerHTML=vl,Gt=s(),p(ge.$$.fragment),It=s(),Je=M("p"),Je.innerHTML=kl,Zt=s(),p(ye.$$.fragment),Et=s(),Ue=M("p"),Ue.innerHTML=Rl,Qt=s(),p(we.$$.fragment),Vt=s(),p(k.$$.fragment),Xt=s(),be=M("p"),be.innerHTML=xl,zt=s(),he=M("p"),he.innerHTML=Hl,Yt=s(),p(R.$$.fragment),Ft=s(),p(_e.$$.fragment),At=s(),je=M("p"),je.textContent=Wl,Bt=s(),p(Ce.$$.fragment),qt=s(),p(ve.$$.fragment),Lt=s(),p(ke.$$.fragment),Nt=s(),p(Re.$$.fragment),Pt=s(),p(xe.$$.fragment),St=s(),p(He.$$.fragment),Dt=s(),p(We.$$.fragment),Kt=s(),p(Ge.$$.fragment),Ot=s(),p(Ie.$$.fragment),el=s(),p(Ze.$$.fragment),tl=s(),p(Ee.$$.fragment),ll=s(),p(Qe.$$.fragment),nl=s(),p(x.$$.fragment),sl=s(),p(Ve.$$.fragment),al=s(),Fe=M("p"),this.h()},l(e){const t=Nl("svelte-u9bgzb",document.head);r=u(t,"META",{name:!0,content:!0}),t.forEach(l),T=a(e),i=u(e,"P",{}),Yl(i).forEach(l),g=a(e),o(w.$$.fragment,e),U=a(e),o(b.$$.fragment,e),Ae=a(e),o(H.$$.fragment,e),Be=a(e),o(W.$$.fragment,e),qe=a(e),G=u(e,"P",{"data-svelte-h":!0}),d(G)!=="svelte-knkc89"&&(G.innerHTML=il),Le=a(e),o(_.$$.fragment,e),Ne=a(e),I=u(e,"P",{"data-svelte-h":!0}),d(I)!=="svelte-hs8a7l"&&(I.textContent=pl),Pe=a(e),o(Z.$$.fragment,e),Se=a(e),o(E.$$.fragment,e),De=a(e),Q=u(e,"P",{"data-svelte-h":!0}),d(Q)!=="svelte-1enyha7"&&(Q.innerHTML=ol),Ke=a(e),o(V.$$.fragment,e),Oe=a(e),X=u(e,"P",{"data-svelte-h":!0}),d(X)!=="svelte-18au6nv"&&(X.innerHTML=cl),et=a(e),o(j.$$.fragment,e),tt=a(e),z=u(e,"P",{"data-svelte-h":!0}),d(z)!=="svelte-nt9c4b"&&(z.innerHTML=ml),lt=a(e),o(Y.$$.fragment,e),nt=a(e),F=u(e,"P",{"data-svelte-h":!0}),d(F)!=="svelte-s3sck9"&&(F.innerHTML=fl),st=a(e),A=u(e,"P",{"data-svelte-h":!0}),d(A)!=="svelte-4ai6qh"&&(A.innerHTML=$l),at=a(e),o(B.$$.fragment,e),rt=a(e),q=u(e,"P",{"data-svelte-h":!0}),d(q)!=="svelte-1m2yas3"&&(q.innerHTML=Ml),it=a(e),o(C.$$.fragment,e),pt=a(e),L=u(e,"P",{"data-svelte-h":!0}),d(L)!=="svelte-13y4n8x"&&(L.innerHTML=ul),ot=a(e),o(N.$$.fragment,e),ct=a(e),P=u(e,"P",{"data-svelte-h":!0}),d(P)!=="svelte-1vb1ztl"&&(P.textContent=dl),mt=a(e),S=u(e,"OL",{"data-svelte-h":!0}),d(S)!=="svelte-1kijd9m"&&(S.innerHTML=Tl),ft=a(e),o(D.$$.fragment,e),$t=a(e),K=u(e,"P",{"data-svelte-h":!0}),d(K)!=="svelte-1kov8l9"&&(K.innerHTML=gl),Mt=a(e),o(O.$$.fragment,e),ut=a(e),o(ee.$$.fragment,e),dt=a(e),te=u(e,"P",{"data-svelte-h":!0}),d(te)!=="svelte-44hwg3"&&(te.innerHTML=Jl),Tt=a(e),le=u(e,"P",{"data-svelte-h":!0}),d(le)!=="svelte-1f3lia8"&&(le.innerHTML=yl),gt=a(e),o(ne.$$.fragment,e),Jt=a(e),se=u(e,"P",{"data-svelte-h":!0}),d(se)!=="svelte-4of9x9"&&(se.innerHTML=Ul),yt=a(e),o(ae.$$.fragment,e),Ut=a(e),o(re.$$.fragment,e),wt=a(e),o(v.$$.fragment,e),bt=a(e),ie=u(e,"P",{"data-svelte-h":!0}),d(ie)!=="svelte-1ylr8sj"&&(ie.innerHTML=wl),ht=a(e),pe=u(e,"P",{"data-svelte-h":!0}),d(pe)!=="svelte-2jb62l"&&(pe.innerHTML=bl),_t=a(e),o(oe.$$.fragment,e),jt=a(e),ce=u(e,"P",{"data-svelte-h":!0}),d(ce)!=="svelte-vtoh1f"&&(ce.innerHTML=hl),Ct=a(e),o(me.$$.fragment,e),vt=a(e),fe=u(e,"P",{"data-svelte-h":!0}),d(fe)!=="svelte-14c26ht"&&(fe.innerHTML=_l),kt=a(e),o($e.$$.fragment,e),Rt=a(e),Me=u(e,"P",{"data-svelte-h":!0}),d(Me)!=="svelte-1yytiyu"&&(Me.textContent=jl),xt=a(e),o(ue.$$.fragment,e),Ht=a(e),de=u(e,"P",{"data-svelte-h":!0}),d(de)!=="svelte-1lmwzzc"&&(de.innerHTML=Cl),Wt=a(e),Te=u(e,"P",{"data-svelte-h":!0}),d(Te)!=="svelte-1h0qf0f"&&(Te.innerHTML=vl),Gt=a(e),o(ge.$$.fragment,e),It=a(e),Je=u(e,"P",{"data-svelte-h":!0}),d(Je)!=="svelte-pmu9yq"&&(Je.innerHTML=kl),Zt=a(e),o(ye.$$.fragment,e),Et=a(e),Ue=u(e,"P",{"data-svelte-h":!0}),d(Ue)!=="svelte-umpq8u"&&(Ue.innerHTML=Rl),Qt=a(e),o(we.$$.fragment,e),Vt=a(e),o(k.$$.fragment,e),Xt=a(e),be=u(e,"P",{"data-svelte-h":!0}),d(be)!=="svelte-kboajh"&&(be.innerHTML=xl),zt=a(e),he=u(e,"P",{"data-svelte-h":!0}),d(he)!=="svelte-1p27re0"&&(he.innerHTML=Hl),Yt=a(e),o(R.$$.fragment,e),Ft=a(e),o(_e.$$.fragment,e),At=a(e),je=u(e,"P",{"data-svelte-h":!0}),d(je)!=="svelte-1f5akmu"&&(je.textContent=Wl),Bt=a(e),o(Ce.$$.fragment,e),qt=a(e),o(ve.$$.fragment,e),Lt=a(e),o(ke.$$.fragment,e),Nt=a(e),o(Re.$$.fragment,e),Pt=a(e),o(xe.$$.fragment,e),St=a(e),o(He.$$.fragment,e),Dt=a(e),o(We.$$.fragment,e),Kt=a(e),o(Ge.$$.fragment,e),Ot=a(e),o(Ie.$$.fragment,e),el=a(e),o(Ze.$$.fragment,e),tl=a(e),o(Ee.$$.fragment,e),ll=a(e),o(Qe.$$.fragment,e),nl=a(e),o(x.$$.fragment,e),sl=a(e),o(Ve.$$.fragment,e),al=a(e),Fe=u(e,"P",{}),Yl(Fe).forEach(l),this.h()},h(){Fl(r,"name","hf:doc:metadata"),Fl(r,"content",on)},m(e,t){Pl(document.head,r),n(e,T,t),n(e,i,t),n(e,g,t),c(w,e,t),n(e,U,t),c(b,e,t),n(e,Ae,t),c(H,e,t),n(e,Be,t),c(W,e,t),n(e,qe,t),n(e,G,t),n(e,Le,t),c(_,e,t),n(e,Ne,t),n(e,I,t),n(e,Pe,t),c(Z,e,t),n(e,Se,t),c(E,e,t),n(e,De,t),n(e,Q,t),n(e,Ke,t),c(V,e,t),n(e,Oe,t),n(e,X,t),n(e,et,t),c(j,e,t),n(e,tt,t),n(e,z,t),n(e,lt,t),c(Y,e,t),n(e,nt,t),n(e,F,t),n(e,st,t),n(e,A,t),n(e,at,t),c(B,e,t),n(e,rt,t),n(e,q,t),n(e,it,t),c(C,e,t),n(e,pt,t),n(e,L,t),n(e,ot,t),c(N,e,t),n(e,ct,t),n(e,P,t),n(e,mt,t),n(e,S,t),n(e,ft,t),c(D,e,t),n(e,$t,t),n(e,K,t),n(e,Mt,t),c(O,e,t),n(e,ut,t),c(ee,e,t),n(e,dt,t),n(e,te,t),n(e,Tt,t),n(e,le,t),n(e,gt,t),c(ne,e,t),n(e,Jt,t),n(e,se,t),n(e,yt,t),c(ae,e,t),n(e,Ut,t),c(re,e,t),n(e,wt,t),c(v,e,t),n(e,bt,t),n(e,ie,t),n(e,ht,t),n(e,pe,t),n(e,_t,t),c(oe,e,t),n(e,jt,t),n(e,ce,t),n(e,Ct,t),c(me,e,t),n(e,vt,t),n(e,fe,t),n(e,kt,t),c($e,e,t),n(e,Rt,t),n(e,Me,t),n(e,xt,t),c(ue,e,t),n(e,Ht,t),n(e,de,t),n(e,Wt,t),n(e,Te,t),n(e,Gt,t),c(ge,e,t),n(e,It,t),n(e,Je,t),n(e,Zt,t),c(ye,e,t),n(e,Et,t),n(e,Ue,t),n(e,Qt,t),c(we,e,t),n(e,Vt,t),c(k,e,t),n(e,Xt,t),n(e,be,t),n(e,zt,t),n(e,he,t),n(e,Yt,t),c(R,e,t),n(e,Ft,t),c(_e,e,t),n(e,At,t),n(e,je,t),n(e,Bt,t),c(Ce,e,t),n(e,qt,t),c(ve,e,t),n(e,Lt,t),c(ke,e,t),n(e,Nt,t),c(Re,e,t),n(e,Pt,t),c(xe,e,t),n(e,St,t),c(He,e,t),n(e,Dt,t),c(We,e,t),n(e,Kt,t),c(Ge,e,t),n(e,Ot,t),c(Ie,e,t),n(e,el,t),c(Ze,e,t),n(e,tl,t),c(Ee,e,t),n(e,ll,t),c(Qe,e,t),n(e,nl,t),c(x,e,t),n(e,sl,t),c(Ve,e,t),n(e,al,t),n(e,Fe,t),rl=!0},p(e,[t]){const Gl={};t&1&&(Gl.fw=e[0]),w.$set(Gl);const Il={};t&2&&(Il.$$scope={dirty:t,ctx:e}),_.$set(Il);const Zl={};t&2&&(Zl.$$scope={dirty:t,ctx:e}),j.$set(Zl);const El={};t&2&&(El.$$scope={dirty:t,ctx:e}),C.$set(El);const Ql={};t&2&&(Ql.$$scope={dirty:t,ctx:e}),v.$set(Ql);const Vl={};t&2&&(Vl.$$scope={dirty:t,ctx:e}),k.$set(Vl);const Xl={};t&2&&(Xl.$$scope={dirty:t,ctx:e}),R.$set(Xl);const zl={};t&2&&(zl.$$scope={dirty:t,ctx:e}),x.$set(zl)},i(e){rl||(m(w.$$.fragment,e),m(b.$$.fragment,e),m(H.$$.fragment,e),m(W.$$.fragment,e),m(_.$$.fragment,e),m(Z.$$.fragment,e),m(E.$$.fragment,e),m(V.$$.fragment,e),m(j.$$.fragment,e),m(Y.$$.fragment,e),m(B.$$.fragment,e),m(C.$$.fragment,e),m(N.$$.fragment,e),m(D.$$.fragment,e),m(O.$$.fragment,e),m(ee.$$.fragment,e),m(ne.$$.fragment,e),m(ae.$$.fragment,e),m(re.$$.fragment,e),m(v.$$.fragment,e),m(oe.$$.fragment,e),m(me.$$.fragment,e),m($e.$$.fragment,e),m(ue.$$.fragment,e),m(ge.$$.fragment,e),m(ye.$$.fragment,e),m(we.$$.fragment,e),m(k.$$.fragment,e),m(R.$$.fragment,e),m(_e.$$.fragment,e),m(Ce.$$.fragment,e),m(ve.$$.fragment,e),m(ke.$$.fragment,e),m(Re.$$.fragment,e),m(xe.$$.fragment,e),m(He.$$.fragment,e),m(We.$$.fragment,e),m(Ge.$$.fragment,e),m(Ie.$$.fragment,e),m(Ze.$$.fragment,e),m(Ee.$$.fragment,e),m(Qe.$$.fragment,e),m(x.$$.fragment,e),m(Ve.$$.fragment,e),rl=!0)},o(e){f(w.$$.fragment,e),f(b.$$.fragment,e),f(H.$$.fragment,e),f(W.$$.fragment,e),f(_.$$.fragment,e),f(Z.$$.fragment,e),f(E.$$.fragment,e),f(V.$$.fragment,e),f(j.$$.fragment,e),f(Y.$$.fragment,e),f(B.$$.fragment,e),f(C.$$.fragment,e),f(N.$$.fragment,e),f(D.$$.fragment,e),f(O.$$.fragment,e),f(ee.$$.fragment,e),f(ne.$$.fragment,e),f(ae.$$.fragment,e),f(re.$$.fragment,e),f(v.$$.fragment,e),f(oe.$$.fragment,e),f(me.$$.fragment,e),f($e.$$.fragment,e),f(ue.$$.fragment,e),f(ge.$$.fragment,e),f(ye.$$.fragment,e),f(we.$$.fragment,e),f(k.$$.fragment,e),f(R.$$.fragment,e),f(_e.$$.fragment,e),f(Ce.$$.fragment,e),f(ve.$$.fragment,e),f(ke.$$.fragment,e),f(Re.$$.fragment,e),f(xe.$$.fragment,e),f(He.$$.fragment,e),f(We.$$.fragment,e),f(Ge.$$.fragment,e),f(Ie.$$.fragment,e),f(Ze.$$.fragment,e),f(Ee.$$.fragment,e),f(Qe.$$.fragment,e),f(x.$$.fragment,e),f(Ve.$$.fragment,e),rl=!1},d(e){e&&(l(T),l(i),l(g),l(U),l(Ae),l(Be),l(qe),l(G),l(Le),l(Ne),l(I),l(Pe),l(Se),l(De),l(Q),l(Ke),l(Oe),l(X),l(et),l(tt),l(z),l(lt),l(nt),l(F),l(st),l(A),l(at),l(rt),l(q),l(it),l(pt),l(L),l(ot),l(ct),l(P),l(mt),l(S),l(ft),l($t),l(K),l(Mt),l(ut),l(dt),l(te),l(Tt),l(le),l(gt),l(Jt),l(se),l(yt),l(Ut),l(wt),l(bt),l(ie),l(ht),l(pe),l(_t),l(jt),l(ce),l(Ct),l(vt),l(fe),l(kt),l(Rt),l(Me),l(xt),l(Ht),l(de),l(Wt),l(Te),l(Gt),l(It),l(Je),l(Zt),l(Et),l(Ue),l(Qt),l(Vt),l(Xt),l(be),l(zt),l(he),l(Yt),l(Ft),l(At),l(je),l(Bt),l(qt),l(Lt),l(Nt),l(Pt),l(St),l(Dt),l(Kt),l(Ot),l(el),l(tl),l(ll),l(nl),l(sl),l(al),l(Fe)),l(r),$(w,e),$(b,e),$(H,e),$(W,e),$(_,e),$(Z,e),$(E,e),$(V,e),$(j,e),$(Y,e),$(B,e),$(C,e),$(N,e),$(D,e),$(O,e),$(ee,e),$(ne,e),$(ae,e),$(re,e),$(v,e),$(oe,e),$(me,e),$($e,e),$(ue,e),$(ge,e),$(ye,e),$(we,e),$(k,e),$(R,e),$(_e,e),$(Ce,e),$(ve,e),$(ke,e),$(Re,e),$(xe,e),$(He,e),$(We,e),$(Ge,e),$(Ie,e),$(Ze,e),$(Ee,e),$(Qe,e),$(x,e),$(Ve,e)}}}const on='{"title":"Trainer API๋ก ๋ชจ๋ธ ๋ฏธ์ธ ์กฐ์ ํ๊ธฐ","local":"fine-tuning-a-model-with-the-trainer-api","sections":[{"title":"ํ๋ จ","local":"training","sections":[],"depth":3},{"title":"ํ๊ฐ","local":"evaluation","sections":[],"depth":3},{"title":"๊ณ ๊ธ ํ๋ จ ๊ธฐ๋ฅ","local":"advanced-training-features","sections":[],"depth":3},{"title":"์น์ ํด์ฆ","local":"section-quiz","sections":[{"title":"1. Trainer ์์ <code> processing_class </code> ๋งค๊ฐ๋ณ์์ ๋ชฉ์ ์ ๋ฌด์์ธ๊ฐ์?","local":"1-trainer-์์-code-processingclass-code-๋งค๊ฐ๋ณ์์-๋ชฉ์ ์-๋ฌด์์ธ๊ฐ์","sections":[],"depth":3},{"title":"2. ํ๋ จ ์ค ํ๊ฐ๊ฐ ์ผ๋ง๋ ์์ฃผ ๋ฐ์ํ๋์ง๋ฅผ ์ ์ดํ๋ TrainingArguments ๋งค๊ฐ๋ณ์๋ ๋ฌด์์ธ๊ฐ์?","local":"2-ํ๋ จ-์ค-ํ๊ฐ๊ฐ-์ผ๋ง๋-์์ฃผ-๋ฐ์ํ๋์ง๋ฅผ-์ ์ดํ๋-trainingarguments-๋งค๊ฐ๋ณ์๋-๋ฌด์์ธ๊ฐ์","sections":[],"depth":3},{"title":"3. TrainingArguments์์ <code> fp16=True </code> ๋ ๋ฌด์์ ํ์ฑํํ๋์?","local":"3-trainingarguments์์-code-fp16true-code-๋-๋ฌด์์-ํ์ฑํํ๋์","sections":[],"depth":3},{"title":"4. Trainer์์ <code> compute_metrics </code> ํจ์์ ์ญํ ์ ๋ฌด์์ธ๊ฐ์?","local":"4-trainer์์-code-computemetrics-code-ํจ์์-์ญํ ์-๋ฌด์์ธ๊ฐ์","sections":[],"depth":3},{"title":"5. Trainer์ <code> eval_dataset </code> ์ ์ ๊ณตํ์ง ์์ผ๋ฉด ์ด๋ป๊ฒ ๋๋์?","local":"5-trainer์-code-evaldataset-code-์-์ ๊ณตํ์ง-์์ผ๋ฉด-์ด๋ป๊ฒ-๋๋์","sections":[],"depth":3},{"title":"6. ๊ทธ๋ ์ด๋์ธํธ ๋์ ์ด๋ ๋ฌด์์ด๋ฉฐ ์ด๋ป๊ฒ ํ์ฑํํ๋์?","local":"6-๊ทธ๋ ์ด๋์ธํธ-๋์ ์ด๋-๋ฌด์์ด๋ฉฐ-์ด๋ป๊ฒ-ํ์ฑํํ๋์","sections":[],"depth":3}],"depth":2}],"depth":1}';function cn(J,r,T){let i="pt";return Bl(()=>{const g=new URLSearchParams(window.location.search);T(0,i=g.get("fw")||"pt")}),[i]}class yn extends ql{constructor(r){super(),Ll(this,r,cn,pn,Al,{})}}export{yn as component}; | |
Xet Storage Details
- Size:
- 45 kB
- Xet hash:
- 9e2b3ce8a3d0cf2bfbf37d75f66cf57f741ca6503112f7b33bc25b9870b0db87
ยท
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.