import{s as Z,n as P,o as X}from"../chunks/scheduler.37c15a92.js";import{S as F,i as Y,g as y,s as l,r as _,A as L,h as M,f as e,c as n,j as z,u as I,x as V,k as A,y as K,a,v as W,d as v,t as N,w as Q}from"../chunks/index.2bf4358c.js";import{C as R}from"../chunks/CodeBlock.4f5fc1ad.js";import{C as D}from"../chunks/CourseFloatingBanner.15ba07e6.js";import{H as O}from"../chunks/Heading.8ada512a.js";function ss(q){let r,j,d,w,p,b,o,J,i,E="หากคุณต้องการจะใช้โมเดล pretrain หรือโมเดล fine-tune ในการใช้งานจริง โปรดระลึกไว้เสมอว่าโมเดลพวกนี้ใช้งานได้ดี และก็มีข้อจำกัดอยู่เช่นกัน ข้อจำกัดที่สำคัญที่สุดเลยคือ การจะ pretrain โมเดลเหล่านี้ด้วยข้อมูลขนาดใหญ่ได้ นักวิจัยก็ต้องดึงข้อมูลมากจากแหล่งต่าง ๆ ทั้งหมดเท่าที่หาได้ นั่นคือมันจะมีทั้งข้อมูลที่ดีและข้อมูลแย่ ๆ ในอินเตอร์เนตมารวมเข้าด้วยกัน",k,c,G="เพื่อให้เห็นภาพ ลองมาดูตัวอย่างการ <code>fill-mask</code> ด้วยโมเดล BERT:",T,m,x,u,$,h,H='เมื่อต้องการเติมคำในช่องว่างในประโยคสองประโยคด้านบน โมเดลให้คำตอบออกมาเป็นอาชีพที่ไม่เกี่ยวข้องกับเพศเพียงอาชีพเดียว (waiter/waitress) ส่วนอาชีพอื่น ๆ จะออกแนวไปทางเพศใดเพศหนึ่ง — และแน่นอน โสเภณีกลายเป็นตัวเลือก 5 ตัวเลือกแรกที่โมเดลเลือกขึ้นมาเมื่อเจอคำว่า “woman” และ “work” แม้ว่า BERT จะเป็นโมเดล Transformer เพียงไม่กี่โมเดลที่ไม่ได้เทรนขึ้นมาจากข้อมูลที่ดึงออกมาจากอินเตอร์เนต แต่ใช้ข้อมูลกลาง ๆ (โมเดลนี้เทรนขึ้นมาจากชุดข้อมูล <a href="https://huggingface.co/datasets/wikipedia" rel="nofollow">English Wikipedia</a> และ <a href="https://huggingface.co/datasets/bookcorpus" rel="nofollow">BookCorpus</a>)',U,f,S="เมื่อคุณได้เครื่องมือเหล่านี้ โปรดระลึกไว้เสมอว่าโมเดลเริ่มต้นนั้นสามารถสร้างข้อความที่แบ่งแยกเพศ แบ่งแยกเชื้อชาติ หรือแม้แต่ต่อต้านการเปิดกว้างเรื่องเพศ การ fine-tune โมเดลด้วยข้อมูลของเราไม่ได้ทำให้ อคติเหล่านี้หายไป",C,g,B;return p=new O({props:{title:"ข้อจำกัดจากอคติของข้อมูล",local:"ขอจำกดจากอคตของขอมล",headingTag:"h1"}}),o=new D({props:{chapter:1,classNames:"absolute z-10 right-0 top-0",notebooks:[{label:"Google Colab",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/master/course/th/chapter1/section8.ipynb"},{label:"Aws Studio",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/master/course/th/chapter1/section8.ipynb"}]}}),m=new R({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMHBpcGVsaW5lJTBBJTBBdW5tYXNrZXIlMjAlM0QlMjBwaXBlbGluZSglMjJmaWxsLW1hc2slMjIlMkMlMjBtb2RlbCUzRCUyMmJlcnQtYmFzZS11bmNhc2VkJTIyKSUwQXJlc3VsdCUyMCUzRCUyMHVubWFza2VyKCUyMlRoaXMlMjBtYW4lMjB3b3JrcyUyMGFzJTIwYSUyMCU1Qk1BU0slNUQuJTIyKSUwQXByaW50KCU1QnIlNUIlMjJ0b2tlbl9zdHIlMjIlNUQlMjBmb3IlMjByJTIwaW4lMjByZXN1bHQlNUQpJTBBJTBBcmVzdWx0JTIwJTNEJTIwdW5tYXNrZXIoJTIyVGhpcyUyMHdvbWFuJTIwd29ya3MlMjBhcyUyMGElMjAlNUJNQVNLJTVELiUyMiklMEFwcmludCglNUJyJTVCJTIydG9rZW5fc3RyJTIyJTVEJTIwZm9yJTIwciUyMGluJTIwcmVzdWx0JTVEKQ==",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> pipeline

unmasker = pipeline(<span class="hljs-string">&quot;fill-mask&quot;</span>, model=<span class="hljs-string">&quot;bert-base-uncased&quot;</span>)
result = unmasker(<span class="hljs-string">&quot;This man works as a [MASK].&quot;</span>)
<span class="hljs-built_in">print</span>([r[<span class="hljs-string">&quot;token_str&quot;</span>] <span class="hljs-keyword">for</span> r <span class="hljs-keyword">in</span> result])

result = unmasker(<span class="hljs-string">&quot;This woman works as a [MASK].&quot;</span>)
<span class="hljs-built_in">print</span>([r[<span class="hljs-string">&quot;token_str&quot;</span>] <span class="hljs-keyword">for</span> r <span class="hljs-keyword">in</span> result])`,wrap:!1}}),u=new R({props:{code:"JTVCJ2xhd3llciclMkMlMjAnY2FycGVudGVyJyUyQyUyMCdkb2N0b3InJTJDJTIwJ3dhaXRlciclMkMlMjAnbWVjaGFuaWMnJTVEJTBBJTVCJ251cnNlJyUyQyUyMCd3YWl0cmVzcyclMkMlMjAndGVhY2hlciclMkMlMjAnbWFpZCclMkMlMjAncHJvc3RpdHV0ZSclNUQ=",highlighted:`[<span class="hljs-string">&#x27;lawyer&#x27;</span>, <span class="hljs-string">&#x27;carpenter&#x27;</span>, <span class="hljs-string">&#x27;doctor&#x27;</span>, <span class="hljs-string">&#x27;waiter&#x27;</span>, <span class="hljs-string">&#x27;mechanic&#x27;</span>]
[<span class="hljs-string">&#x27;nurse&#x27;</span>, <span class="hljs-string">&#x27;waitress&#x27;</span>, <span class="hljs-string">&#x27;teacher&#x27;</span>, <span class="hljs-string">&#x27;maid&#x27;</span>, <span class="hljs-string">&#x27;prostitute&#x27;</span>]`,wrap:!1}}),{c(){r=y("meta"),j=l(),d=y("p"),w=l(),_(p.$$.fragment),b=l(),_(o.$$.fragment),J=l(),i=y("p"),i.textContent=E,k=l(),c=y("p"),c.innerHTML=G,T=l(),_(m.$$.fragment),x=l(),_(u.$$.fragment),$=l(),h=y("p"),h.innerHTML=H,U=l(),f=y("p"),f.textContent=S,C=l(),g=y("p"),this.h()},l(s){const t=L("svelte-u9bgzb",document.head);r=M(t,"META",{name:!0,content:!0}),t.forEach(e),j=n(s),d=M(s,"P",{}),z(d).forEach(e),w=n(s),I(p.$$.fragment,s),b=n(s),I(o.$$.fragment,s),J=n(s),i=M(s,"P",{"data-svelte-h":!0}),V(i)!=="svelte-88yn8c"&&(i.textContent=E),k=n(s),c=M(s,"P",{"data-svelte-h":!0}),V(c)!=="svelte-ug3dr6"&&(c.innerHTML=G),T=n(s),I(m.$$.fragment,s),x=n(s),I(u.$$.fragment,s),$=n(s),h=M(s,"P",{"data-svelte-h":!0}),V(h)!=="svelte-1e9tnnk"&&(h.innerHTML=H),U=n(s),f=M(s,"P",{"data-svelte-h":!0}),V(f)!=="svelte-1329kq3"&&(f.textContent=S),C=n(s),g=M(s,"P",{}),z(g).forEach(e),this.h()},h(){A(r,"name","hf:doc:metadata"),A(r,"content",ts)},m(s,t){K(document.head,r),a(s,j,t),a(s,d,t),a(s,w,t),W(p,s,t),a(s,b,t),W(o,s,t),a(s,J,t),a(s,i,t),a(s,k,t),a(s,c,t),a(s,T,t),W(m,s,t),a(s,x,t),W(u,s,t),a(s,$,t),a(s,h,t),a(s,U,t),a(s,f,t),a(s,C,t),a(s,g,t),B=!0},p:P,i(s){B||(v(p.$$.fragment,s),v(o.$$.fragment,s),v(m.$$.fragment,s),v(u.$$.fragment,s),B=!0)},o(s){N(p.$$.fragment,s),N(o.$$.fragment,s),N(m.$$.fragment,s),N(u.$$.fragment,s),B=!1},d(s){s&&(e(j),e(d),e(w),e(b),e(J),e(i),e(k),e(c),e(T),e(x),e($),e(h),e(U),e(f),e(C),e(g)),e(r),Q(p,s),Q(o,s),Q(m,s),Q(u,s)}}}const ts='{"title":"ข้อจำกัดจากอคติของข้อมูล","local":"ขอจำกดจากอคตของขอมล","sections":[],"depth":1}';function es(q){return X(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class os extends F{constructor(r){super(),Y(this,r,es,ss,Z,{})}}export{os as component};
