Bosh sahifa Wiki Training

Training

Training — machine-learning model parametrlarini dataset va objective asosida bosqichma-bosqich yangilab, kerakli pattern yoki vazifani o‘rgatish jarayoni. Model inputdan prediction qiladi, loss hisoblanadi va optimizer parameterlarni lossni kamaytiradigan yo‘nalishda o‘zgartiradi.

Training sifati faqat model architecture’siga emas, data, objective, optimization, evaluation va hisoblash infratuzilmasiga ham bog‘liq.

Dataset

Training dataset model ko‘radigan sample’lardan tashkil topadi.

Sample:

  • input va label;
  • matn;
  • rasm;
  • audio;
  • event;
  • positive-negative pair;
  • trajectory

bo‘lishi mumkin.

Data real vazifani va target userlarni yetarli ifodalashi kerak.

Train, validation va test

Dataset ko‘pincha uch qismga ajratiladi:

  • train — parameterlarni o‘zgartirish;
  • validation — hyperparameter va model tanlash;
  • test — yakuniy mustaqil baho.

Bir user yoki bir documentning juda o‘xshash nusxalari turli splitga tushsa leakage yuz beradi.

Preprocessing

Training va inference inputi bir xil qoidaga tayanadi.

Jarayon:

Preprocessing versioni model artifact bilan saqlanadi.

Forward pass

Batch modelga beriladi va output hisoblanadi.

Masalan:

image → logits
text → token probability
features → prediction

Forward pass activationlarni hosil qiladi.

Trainingda ular backward pass uchun memory’da saqlanishi mumkin.

Loss function

Loss prediction va target orasidagi xatoni sonli qiymatga aylantiradi.

Misollar:

  • cross-entropy;
  • mean squared error;
  • contrastive loss;
  • ranking loss;
  • reconstruction loss.

Loss business metric bilan aynan bir xil bo‘lmasligi mumkin.

Backpropagation

Backpropagation chain rule orqali lossning har parameterga gradientini hisoblaydi.

Gradient parameter o‘zgarsa loss qanday o‘zgarishini ko‘rsatadi.

Framework automatic differentiation bilan computation graph bo‘ylab gradient chiqaradi.

Optimizer

Optimizer gradient asosida parameterlarni yangilaydi.

Keng tarqalgan:

  • SGD;
  • momentum;
  • Adam;
  • AdamW;
  • RMSProp.

Optimizer state memory sarfini sezilarli oshirishi mumkin.

Learning rate

Learning rate update qadamining kattaligini belgilaydi.

Juda katta bo‘lsa training beqaror yoki divergent.

Juda kichik bo‘lsa sekin convergence.

Schedule:

  • warmup;
  • cosine decay;
  • step decay;
  • linear decay;
  • plateau bo‘yicha kamaytirish.

Batch

Dataset sample’lari batchlarga bo‘linadi.

Katta batch gradientni barqarorroq hisoblaydi va hardware throughputni oshiradi.

Juda katta batch generalizationga ta’sir qilishi mumkin.

Gradient accumulation kichik device memory bilan katta effective batch yaratadi.

Epoch

Model training datasetning barcha sample’larini bir marta ko‘rsa bir epoch tugaydi.

Katta streaming datasetda epoch tushunchasi step soni bilan almashtirilishi mumkin.

Bir necha epoch model data’ni takror ko‘radi.

Juda ko‘p epoch overfittingga olib kelishi mumkin.

Shuffle

Training sample’lari har epochda aralashtiriladi.

Bu batchlar bir xil tartibda kelishini kamaytiradi.

Time series yoki sequence dependency mavjud bo‘lsa to‘liq shuffle noto‘g‘ri.

Distributed trainingda sampler barcha workerlar orasida sample’larni taqsimlaydi.

Regularization

Overfittingni kamaytirish usullari:

  • weight decay;
  • dropout;
  • data augmentation;
  • label smoothing;
  • early stopping;
  • noise;
  • mixup.

Regularization modelning train data’ni aynan yodlashini cheklaydi.

Overfitting

Training loss pasayib, validation sifati yomonlashsa model training data’ga ortiqcha moslashgan bo‘lishi mumkin.

Sabablar:

Test set tuning uchun ishlatilmaydi.

Underfitting

Trainingning o‘zida ham sifat past bo‘lsa model capacity, feature, optimization yoki training vaqti yetishmasligi mumkin.

Juda kuchli regularization ham underfitting yaratadi.

Train va validation error birgalikda ko‘riladi.

Checkpoint

Training davomida:

saqlanadi.

Nosozlikdan keyin training davom ettiriladi.

Faqat weight saqlansa ayni optimization holati tiklanmasligi mumkin.

Mixed precision

FP16 yoki BF16 hisoblash throughput va memoryni yaxshilashi mumkin.

Ayrim operationlar FP32da saqlanadi.

FP16da gradient underflow uchun loss scaling ishlatilishi mumkin.

Hardware va framework automatic mixed precision beradi.

Distributed training

Katta model yoki dataset bir nechta acceleratorga taqsimlanadi.

Usullar:

  • data parallel;
  • tensor parallel;
  • pipeline parallel;
  • sharded optimizer;
  • distributed data.

Communication bandwidth va synchronization bottleneck bo‘lishi mumkin.

Reproducibility

Random seed, data order, library, hardware va nondeterministic kernel natijaga ta’sir qiladi.

Config va artifactlar versionlanadi.

To‘liq bit-level reproducibility har platformada mumkin bo‘lmasligi ehtimoli bor.

Metric diapazoni va bir nechta run muhim.

Data governance

Training data uchun:

  • source;
  • license;
  • consent;
  • privacy;
  • retention;
  • filtering;
  • deletion;
  • lineage

boshqariladi.

Sensitive va copyrighted data’dan foydalanish texnik masaladan tashqari huquqiy talablarni ham keltiradi.

Hyperparameter

Model weightidan tashqari developer tanlaydigan qiymatlar hyperparameter hisoblanadi:

  • learning rate;
  • batch size;
  • layer soni;
  • dropout;
  • optimizer;
  • schedule;
  • augmentation.

Ular validation natijasi va hisoblash budgeti bilan tanlanadi. Test set hyperparameter tanlashda ishlatilmaydi.

Curriculum

Training sample’lari osondan qiyinga yoki ma’lum tartibda berilishi mumkin. Curriculum learning ayrim vazifada convergence’ni yaxshilaydi. Noto‘g‘ri curriculum modelni tor distributionga yopishtirib qo‘yishi mumkin.

Data loader

Storage’dan batch tayyorlash GPUdan sekin bo‘lsa accelerator bekor kutadi. Prefetch, parallel worker, sharding va pinned memory throughputni oshirishi mumkin. Data transform deterministik va xatoga chidamli bo‘ladi.

Experiment tracking

Har run config, code commit, dataset version, metric va artifact bilan saqlanadi. Eng yaxshi checkpoint qaysi sharoitda yaratilgani keyin qayta tiklanadi.

Bog‘liq tushunchalar

Machine-learning training, Dataset, Loss function, Backpropagation, Optimizer, Learning rate, Batch, Epoch, Regularization, Checkpoint, Distributed training