របៀបដែល AI បង្កើតស្នាមសាក់: ការពន្យល់ដំណើរការ

កម្មវិធី AI បង្កើតស្នាមសាក់គឺជាគំរូ diffusion ដែលបានបណ្តុះបណ្តាលពិសេសសម្រាប់រូបភាពស្នាមសាក់។ វាអានការពិពណ៌នារបស់អ្នក បន្ទាប់មករំសាយ noise ចេញពី field ចៃដន្យមួយជំហានម្តងៗ ហើយបង្ហាញស្នាដៃដើមមួយ ដែលបានជ្រើសរើសដោយគំរូដែលវាបានរៀនក្នុងដំណើរការបណ្តុះបណ្តាល។

តើស្ថាបត្យកម្មគំរូអ្វីដែលដំណើរការ AI បង្កើតស្នាមសាក់ធម្មតា?

កម្មវិធីបង្កើតស្នាមសាក់ភាគច្រើនដំណើរការ latent diffusion model ដែលបានបណ្តុះបណ្តាលពិសេសសម្រាប់សិល្បៈស្នាមសាក់។ text encoder បំប្លែងការពិពណ៌នារបស់អ្នកទៅជា vectors, U-Net រំសាយ latent image ជំហានម្តងៗ ហើយ decoder បំប្លែង latent ចុងក្រោយទៅជាគំនូរដែលមើលឃើញបាន។

ស្ថាបត្យកម្មសំខាន់នាពេលបច្ចុប្បន្នគឺ latent diffusion — គ្រួសារដូចគ្នាដែលគ្រប់គ្រង Stable Diffusion, SDXL, Midjourney និង fork ស្នាមសាក់ជាច្រើនផ្សេងទៀតដែលបើកចំហរ។ ពាក្យ «latent» គឺជាគន្លឹះ: ជំនួសឱ្យការ denoise នៅ resolution pixel ពេញ គំរូធ្វើការនៅក្នុង representation ដែលបង្ហាប់ ប្រហែលមួយភាគដប់ប្រាំមួយនៃទំហំ ដែលជាមូលហេតុដែលការបង្កើតបញ្ចប់ក្នុងរយៈពេលប៉ុន្មានវិនាទីជំនួសឱ្យប៉ុន្មាននាទី។

សមាសភាគបីសំខាន់ជួយយើង។ text encoder (ជាធម្មតា variant CLIP ឬ T5) បំប្លែងការពិពណ៌នាជាអក្សររបស់អ្នកទៅជា vector ដែលចាប់បានន័យ មិនមែនគ្រាន់តែពាក្យគ្រាប់ប្រកបនោះទេ។ U-Net ធ្វើការ denoise ពិតប្រាកដ ដែលបានកំណត់ក្នុងគ្រប់ជំហានដោយ vector អត្ថបទនោះ — ដូច្នេះ គំរូត្រូវបានណែនាំឥតឈប់ឈរឆ្ពោះទៅ «រឿងដែលមើលទៅដូចការពិពណ៌នា»។ variational autoencoder decoder បន្ទាប់មកពង្រីក latent ចុងក្រោយត្រឡប់ទៅជារូបភាពដែលមើលឃើញ។

ផ្នែកពិសេសសម្រាប់ស្នាមសាក់កើតឡើងក្នុងអំឡុង fine-tuning។ គំរូមូលដ្ឋានដែលបានមើលឃើញ web ចំហបើក ត្រូវបានបណ្តុះបណ្តាលបន្ថែមលើ corpus ថ្មីនៃសិល្បៈស្នាមសាក់ — flash sheets, រូបថតដែលបានជាសះស្បើយ, line work, stencils — រហូតដល់ weights ណែត់វ័ររបស់ network ទំនោរទៅរក grammar ភ្នែករបស់ស្នាមសាក់: គ្រោងជឿជាក់, negative space ដែលគ្រប់គ្រង, dot shading, អ្នកតំណាង fine-line ប្រៀបធៀបនឹង traditional។ ផលិតផលខ្លះបន្ថែម LoRAs (adapters ជំនាញតូច) ក្នុងមួយ style។ ឯកសារ DDPM ដើមនៅ <a href="https://arxiv.org/abs/2006.11239">arxiv.org/abs/2006.11239</a> គឺជាឯកសារយោងស្តង់ដារ ប្រសិនបើអ្នកចង់បានគណិតវិទ្យានៅពីក្រោយ denoising process។ លទ្ធផលជាក់ស្តែងសម្រាប់អ្នកគឺ ឧបករណ៍ ស្គាល់រួចហើយនូវអ្វីដែល «single needle» ឬ «American traditional» មានន័យ មុនពេលអ្នកវាយពួកវា។ ប្រសិនបើអ្នកចង់ <a href="/blog/best-ai-tattoo-generator">ប្រៀបធៀបឧបករណ៍ AI ស្នាមសាក់បច្ចុប្បន្ន</a> ស្ថាបត្យកម្មស្ទើរតែជានិច្ចជា variant ណាមួយនៃ stack នេះ — ភាពខុសគ្នាស្ថិតនៅក្នុងទិន្នន័យបណ្តុះបណ្តាល និង inference defaults។

តើឧបករណ៍បំប្លែងការពិពណ៌នាជាអក្សរទៅជាគំនូរស្នាមសាក់យ៉ាងដូចម្តេច?

ការពិពណ៌នារបស់អ្នកត្រូវបាន tokenize, embed ទៅជា vector ហើយបញ្ជូនទៅ U-Net ជា conditioning ក្នុងគ្រប់ជំហាន denoising។ គំរូចាប់ផ្តើមពី noise ស្អាត ហើយលុបបំបាត់ iteratively ផ្នែកដែលមិនត្រូវនឹង vector ការពិពណ៌នា ដោយទុករូបភាពដែលត្រូវគ្នា។

ការបំប្លែងពីពាក្យទៅរូបភាពមិនមែនជាការស្វែងរកទេ។ គំរូមិនស្វែងរក database នៃស្នាមសាក់ដែលត្រូវនឹងការពិពណ៌នារបស់អ្នកទេ — វាកំពុងបង្កើតរូបភាពដែលមិនធ្លាប់មានពីមុន ក្រោមការណែនាំរបស់ pattern ស្ថិតិដែលវាបានស្រូបក្នុងដំណើរការបណ្តុះបណ្តាល។ ភាពខុសគ្នានោះសំខាន់ ព្រោះវាពន្យល់ភាពខ្លាំង (ភាពដើម, ភាពប្រែប្រួលគ្មានដែន) និងភាពខ្សោយ (កំហុស anatomy, prompt drift)។

ផ្នែកស្ថិតិ ការពិពណ៌នាឆ្លងតាម tokenizer ដែលបំបែកវាទៅ sub-word units បន្ទាប់មកតាម text encoder ដែលផលិត sequence នៃ vectors ចាប់បាន semantic meaning។ «ក្រេប, fine-line, negative space» ក្លាយជា coordinates ក្នុងលំហ ដែល «ក្រេប» ស្ថិតនៅជិតបក្សីកទ្រីត «fine-line» ស្ថិតនៅជិត styles minimalist ផ្សេងទៀត ហើយ «negative space» ទាញទៅរក compositions ដែលមាន emptiness ចេតនា។ U-Net ទទួលការ conditioning នេះ ហើយប្រើវាដើម្បីសម្រេចចិត្ត ក្នុងគ្រប់ជំហាន denoising, pattern noise ណាដែលត្រូវរក្សា ហើយណាដែលត្រូវដក។

Classifier-free guidance គឺជា lever ដែលគ្រប់គ្រងថាតើគំរូបកស្រាយអ្នកឱ្យតឹង rigi យ៉ាងណា។ Guidance ទាបផ្តល់ interpretation ទន់ជាងនិងច្នៃប្រឌិតជាងគំនិត; guidance ខ្ពស់បង្ខំការប្រកាន់ខ្ជាប់យ៉ាងតឹងចំពោះការពិពណ៌នា — ពេលខ្លះប្រឆាំងនឹងគុណភាពរូបភាព។ ផលិតផលដែលបានក conditioned ស្នាមសាក់ជាធម្មតាជ្រើសរើស value កណ្តាលសម្រាប់អ្នក។ sampling steps (ជាធម្មតា ២០ ទៅ ៥០) ដោះដូរល្បឿនសម្រាប់ refinement។ seed — លេខ integer មួយ — កំណត់ noise field ដំបូង; prompt ដូចគ្នា និង seed ដូចគ្នាផ្តល់រូបភាពដូចគ្នា ដែលជារបៀបដែល iteration ក្លាយជា deterministic ជំនួសឱ្យ slot-machine។ ម្តងដែលអ្នកមានការបង្កើតដែលអ្នកចូលចិត្ត អ្នកអាច <a href="/tryon">preview ស្នាមសាក់ដែលបានបង្កើតលើស្បែករបស់អ្នក</a> ឬ <a href="/stencil">បំប្លែងគំនូរដែលបានបង្កើតទៅជា stencil</a> ដើម្បីយកទៅជាងស្នាមសាក់របស់អ្នក។

តើ input រូបថតដើរតួយ៉ាងណាក្នុងការបង្កើតដែលយល់ដឹងអំពីស្បែក?

Input រូបថតអនុញ្ញាតឱ្យគំរូ condition លើ anatomy ពិតប្រាកដរបស់អ្នក។ រូបភាពត្រូវបាន encode ជាមួយការពិពណ៌នា ដូច្នេះ ការបង្កើតគោរព curves, scale, និងការដាក់ placement នៃផ្នែករាងកាយ — ជំនួសឱ្យការផ្តល់គំនូរ flat ដែលត្រូវ retrofit ទៅស្បែកក្រោយ។

ការបង្កើត text-to-image ស្អាតផ្តល់គំនូរ floating នៅលើ background ស។ នោះល្អសម្រាប់ការជ្រើសរើសអ្វីដែលអ្នកចង់បាន ប៉ុន្តែវាមិនអើពើ constraint តែមួយដ៏សំខាន់ ដែលស្នាមសាក់ពិតប្រាកដមាន: រាងកាយដែលវាស្ថិតលើ។ ស្បែកគឺ curved, asymmetric, និង three-dimensional។ composition ដែលមើលទៅ balanced ជា PNG ការ៉េអាចអានបានដូចជាឆ្វេងឆ្វង ម្តងដែលវា wrap ជុំវិញ forearm ឬដើរតាម line នៃ clavicle។

ការបង្កើតដែល conditioned ដោយរូបថត បិទ gap នោះ។ នៅពីក្រោយ system ប្រើ technique ណាមួយ — ControlNet, IP-Adapter, depth conditioning, ឬ img2img ជាមួយ denoising strength ទាប — ដើម្បីចាក់ information អំពីរូបថតរបស់អ្នកទៅក្នុង diffusion process។ គំរូអាចអាន contour នៃដៃ, definition筋肉 សាច់ដុំខ្នង, slope នៃ ribcage, ហើយ adjust គំនូរ accordingly។ ពស់ដែលត្រូវ wrap bicep របស់អ្នក ត្រូវបានបង្កើតរួច wrapping ហើយ; piece sized សម្រាប់ inner forearm របស់អ្នក ត្រូវបានបង្កើតក្នុង aspect ratio ត្រឹមត្រូវ។

ការប្រើប្រាស់ទីពីរនៃ input រូបថត គឺ virtual try-on: ជំនួសឱ្យការ conditioning ការបង្កើត system composites គំនូរដែលបញ្ចប់ទៅ photo របស់អ្នក ជាមួយ perspective correction, opacity matching, និង shadow handling។ នេះជារបៀបដែលអ្នកឃើញ ថាតើ ស្នាមសាក់នឹងមើលទៅដូចម្តេច មុនពេល booking — ហើយវាជាវិធីដ៏ថ្លៃថោកបំផុតដើម្បីរកឃើញ ថា concept ដែលអ្នកចូលចិត្តនៅ screen ខុសសម្រាប់ placement ដែលអ្នកស្រមៃ។ workflow ទាំងពីរ បំប្លែង conversation រចនា ពី «តើខ្ញុំចូលចិត្តរូបភាពនេះ» ទៅ «តើខ្ញុំចូលចិត្តស្នាមសាក់នេះលើខ្ញុំ» ដែលជាសំណួរផ្ទុយគ្នាខ្លាំងណាស់។

តើ AI ស្នាមសាក់នៅទ្រុស្តពីជាងមនុស្សក្នុងផ្នែកណា?

AI ពូកែល្អនៅ ideation ហើយខ្សោយក្នុង finish work។ វា struggle ជាមួយ symmetry តឹង, មុខ, ដៃ, អក្សរ, និង practical judgment អំពីរបៀបដែលគំនូរនឹង age, scar, និងអានបានក្នុងទំហំតូច — រឿងទាំងអស់ ដែលជាងស្នាមសាក់ ដ៏ជំនាញដោះស្រាយដោយ instinct។

ចម្លើយស្មោះ គឺ AI គឺជា brainstorming partner ល្អជាង finisher។ វា លឿន ជាងមនុស្សណាម្នាក់ ក្នុងការ explore directions, generate variations, និងបង្ហាញអ្នកអ្វីដែល takes ១០០ ខុសៗគ្នាលើ concept ដូចគ្នានឹងមើលទៅដូចម្តេច។ នោះផ្លាស់ប្តូររាល់អ្វីអំពីដំណាក់កាលដំបូង នៃការ design ស្នាមសាក់ ។ ប៉ុន្តែ gap រវាង «generated image ល្អ» និង «ស្នាមសាក់ល្អ» គឺ ពិតប្រាកដ, ហើយ វា show up ក្នុងកន្លែងជាក់លាក់។

Symmetry គឺជាដំបូង។ Diffusion models គឺ probabilistic — ពួកវាមិន enforce ថា ភ្នែកឆ្វេង ត្រូវនឹងភ្នែកស្តាំ, ថា stems ផ្កា ពីរ mirror ស្អាត, ឬ sectors ១២ នៃ mandala គឺ identical។ អ្នកអាចចូលជិតជាមួយ prompt និង seed ត្រឹមត្រូវ ប៉ុន្តែ មនុស្ស cleaning file ជាធម្មតា ចាំបាច់ ប្រសិនបើ symmetry គឺជា point នៃ piece នោះ។ Faces, hands, និង small text គឺជា failure mode ទីពីរ ដោយ reason ដូចគ្នា: high-frequency detail ក្នុង regions semantically dense ជាកន្លែងដែល diffusion ញឹកញាប់បំផុត hallucinate។

ការកំណត់ ជ្រៅ ជាង គឺ judgment។ Diffusion model ពុំដែលមើលស្នាមសាក់ heal ពេញ ទេ ។ វាមិនដឹងថា lines ស្ដើងខ្លាំងនៅ side ម្រាមដៃ នឹង blur ក្នុងរយៈពេល ២ ឆ្នាំ, white ink fades ក្នុងព្រះអាទិត្យ, design ដែន pack ខ្ជាប់ ក្នុងទំហំ ៣ cm នឹង បាត់ detail ទាំងអស់ ទៅ ink spread, ឬ back piece ចាំបាច់ ពិចារណា ថាតើ រាងកាយ move ដូចម្តេច។ ទាំងអស់នោះ គឺ ជារឿង ជាងស្នាមសាក់ ដ៏ ជំនាញ នឹង ប្រាប់អ្នក ភ្លាម ។ ប្រើ AI ដើម្បី generate, iterate, និង validate ភ្នែករូបភាព — បន្ទាប់មក យករូបភាព ទៅ អ្នកដែល បានដាក់ ម៉ោង រាប់ពាន់ ក្នុងការ មើល ink behave លើ bodies, ហើយ ឱ្យ ពួកគេ ធ្វើ ផ្នែក machine ធ្វើ មិនបាន ។

ប្រភេទ generator តាម input modality និងគុណភាព output

គំរូ diffusion — ណែត់វ័រ neural generative ដែលរៀន reverse ដំណើរការ noising ជំហានម្តងៗ។ ចាប់ផ្តើមពី noise ចៃដន្យ វា iteratively ព្យាករ និងដក noise — ក្រោមការណែនាំដោយ prompt អក្សរ ឬ រូបភាព — រហូតដល់ mean coherent image ចេញមក។