Web Analytics

pytorch-accelerated

⭐ 193 stars Assamese by Chris-hughes10

🌐 ভাষা

pytorch-accelerated

pytorch-accelerated এটা হালকা-ফুলকা গ্ৰন্থাগাৰ যি PyTorch মডেলৰ প্ৰশিক্ষণ প্ৰক্ৰিয়া তীব্ৰ কৰিবলৈ এটা সৰু, কিন্তু বিস্তৃত প্ৰশিক্ষণ লুপ প্ৰদান কৰে - যি এটা কেৱল Trainer বস্তুৰ ভিতৰত সন্নিবিষ্ট - যি বেছিভাগ ব্যৱহাৰৰ ক্ষেত্ৰত যথেষ্ট নমনীয়, আৰু বিভিন্ন হাৰ্ডৱেৰ বিকল্প ব্যৱহাৰ কৰিবলৈ সক্ষম, একো কোড পৰিৱৰ্তন নকৰাকৈ। pytorch-accelerated এটা সুসংগঠিত বৈশিষ্ট্য সংগ্ৰহ প্ৰদান কৰে, আৰু সহজতা আৰু স্বচ্ছতা-ৰ ওপৰত গুৰুত্ব আৰোপ কৰে,

ব্যৱহাৰকাৰীসকলক ঠিক কি হৈছে তাৰ গভীৰতাত বুজিবলৈ সক্ষম কৰাৰ বাবে, কিন্তু তেওঁলোকে নিজে বয়লাৰপ্লেট লিখি আৰু ৰক্ষা নকৰিব লাগে!

মূল বৈশিষ্ট্যসমূহ:

আচৰণ ইনহেৰিটেন্স আৰু/অথবা কলব্যাক ব্যৱহাৰ কৰি কাষ্টমাইজ কৰিব পাৰি।
  • ডিভাইচ প্লেসমেন্ট, মিক্সড-প্ৰিসিশন, DeepSpeed ইন্টেগ্ৰেশ্বন, মাল্টি-GPU আৰু ডিষ্ট্ৰিবিউটেড ট্ৰেইনিং কোনো কোড পৰিবৰ্তন নোহোৱাকৈ হেণ্ডল কৰে।
  • শুদ্ধ PyTorch উপাদান ব্যৱহাৰ কৰে, কোনো অতিৰিক্ত পৰিবৰ্তন বা ৰ্যাপাৰ নোহোৱা, আৰু সহজে আন্তঃপ্ৰচলিত
আন জনপ্ৰিয় লাইব্ৰেৰী যেনে
timm, transformers আৰু torchmetricsৰ সৈতে। লাইব্ৰেৰীৰ প্ৰতিটো অংশ - ভিতৰ আৰু বাহিৰৰ উপাদান - স্পষ্ট আৰু সহজভাৱে তৈয়াৰ কৰাৰ বাবে উল্লেখযোগ্য চেষ্টা কৰা হৈছে, যাৰ ফলত কাষ্টমাইজ, ডিবাগ আৰু ঠিক কি হৈছে তাৰ পিছে বুজিবলৈ সহজ হয়; Trainerৰ বহুত আচৰণ এটা একক ক্লাছত সীমিত! Pythonৰ স্পিৰিটত, কিবা লুকোৱা নাই আৰু সকলো উপলভ্য।

pytorch-accelerated গর্বেৰে আৰু স্বচ্ছভাৱে Hugging Face Accelerateৰ ওপৰত নিৰ্মিত, যি ডিভাইচসমূহৰ মাজত ডেটা স্থানান্তৰ আৰু ট্ৰেইনিং কনফিগাৰেচন লঞ্চ কৰাৰ বাবে দায়ী। Trainer কাষ্টমাইজ কৰা, বা ট্ৰেইনিং লঞ্চ কৰাৰ সময়ত, ব্যৱহাৰকাৰীসকলক Accelerate documentation ত পৰামর্শ লোৱা উৎসাহিত কৰা হয় যাতে সকলো উপলভ্য বিকল্প বুজিব পাৰে; Accelerate সুবিধাজনক ফাংশনসমূহ প্ৰদান কৰে যেনে টেন্সৰ সংগ্ৰহ আৰু গ্ৰেডিয়েন্ট ক্লিপিং, যাৰ ব্যৱহাৰ pytorch-accelerated examples ফোল্ডাৰত দেখা যায়!

এই লাইব্ৰেৰীৰ পিছে থকা উদ্দেশ্যসমূহ আৰু এটা বিস্তৃত আৰম্ভণি গাইডৰ বিষয়ে অধিক জানিবলৈ, এই ব্লগ পোষ্ট চাওক।

স্থাপন

pytorch-accelerated pipৰ পৰা তলৰ কমাণ্ড ব্যৱহাৰ কৰি স্থাপন কৰিব পাৰি:

pip install pytorch-accelerated
উদাহৰণসমূহ চলাবলৈ প্ৰয়োজনীয় পেকেজসমূহ ডিফ'ল্টভাৱে সংলগ্ন কৰা হোৱা নাই যাতে পেকেজটো সকলোতকৈ সৰু হ’ব পাৰে। এই পেকেজসমূহ সংলগ্ন কৰিবলৈ, আপুনি তলত দিয়া আদেশ ব্যৱহাৰ কৰিব পাৰে:

pip install pytorch-accelerated[examples]

দ্ৰুত আৰম্ভণি

আৰম্ভ কৰিবলৈ, মাত্ৰ Trainer নামৰ pytorch-accelerated ইম্প'ৰ্ট কৰক আৰু ব্যৱহাৰ কৰক, তলৰ উদাহৰণত দেখুওৱা অনুসৰি, আৰু তাৰ পিছত তলত বৰ্ণনা কৰা accelerate CLI ব্যৱহাৰ কৰি প্ৰশিক্ষণ আৰম্ভ কৰক।

# examples/core/train_mnist.py
import os

from torch import nn, optim from torch.utils.data import random_split from torchvision import transforms from torchvision.datasets import MNIST

from pytorch_accelerated import Trainer

class MNISTModel(nn.Module): def __init__(self): super().__init__() self.main = nn.Sequential( nn.Linear(in_features=784, out_features=128), nn.ReLU(), nn.Linear(in_features=128, out_features=64), nn.ReLU(), nn.Linear(in_features=64, out_features=10), )

def forward(self, input): return self.main(input.view(input.shape[0], -1))

def main(): dataset = MNIST(os.getcwd(), download=True, transform=transforms.ToTensor()) train_dataset, validation_dataset, test_dataset = random_split(dataset, [50000, 5000, 5000]) model = MNISTModel() optimizer = optim.SGD(model.parameters(), lr=0.001, momentum=0.9) loss_func = nn.CrossEntropyLoss()

trainer = Trainer( model, loss_func=loss_func, optimizer=optimizer, )

trainer.train( train_dataset=train_dataset, eval_dataset=validation_dataset, num_epochs=8, per_device_batch_size=32, )

trainer.evaluate( dataset=test_dataset, per_device_batch_size=64, ) if __name__ == "__main__": main()

accelerate CLI ব্যৱহাৰ কৰি প্ৰশিক্ষণ আৰম্ভ কৰিবলৈ , আপোনাৰ মেচিন(সমূহ)ত এইটো চলাও:

accelerate config --config_file accelerate_config.yaml

আৰু সোধা হোৱা প্ৰশ্নসমূহৰ উত্তৰ দিয়া। এইটো এটা কনফিগ ফাইল সৃষ্টি কৰিব যি ঠিকভাৱে ডিফল্ট বিকল্পসমূহ সংহত কৰিবলৈ ব্যৱহাৰ কৰা হ'ব

accelerate launch --config_file accelerate_config.yaml train.py [--training-args]

টোকা: accelerate CLI ব্যৱহাৰ কৰা সম্পূৰ্ণৰূপে ঐচ্ছিক, প্ৰশিক্ষণ সাধাৰণ উপায়তো আৰম্ভ কৰিব পাৰি:

python train.py / python -m torch.distributed ...

আপোনাৰ অৱকাঠামো কনফিগাৰেশ্যন অনুসৰি, যিসকল ব্যৱহাৰকাৰী অধিক সূক্ষ্ম নিয়ন্ত্রণ বজাই ৰাখিব বিচাৰে launch command ওপৰত।

অধিক জটিল প্ৰশিক্ষণ উদাহৰণসমূহ উদাহৰণ ফোল্ডাৰত চাব পাৰি ইয়াত

অন্যথা, যদি আপুনি প্ৰথমে মূল ধাৰণাবোৰ বুজিবলৈ বিচাৰে, এইটো documentationত পোৱা যাব।

ব্যৱহাৰ

pytorch-accelerated কাক লক্ষ্য কৰি তৈয়াৰ কৰা হৈছে?

প্রশিক্ষণ loop-ৰ ৰাইজিত অংশসমূহত কেন্দ্ৰিত হবলৈ।

কেতিয়া pytorch-accelerated ব্যৱহাৰ নকৰা উচিত?

যি আপোনাক model, optimizer বা loss function নিৰ্বাচন কৰাত সহায় কৰে, আপুনি হয়তো fastai-ৰ বাবে অধিক উপযুক্ত হ'ব। pytorch-accelerated কেৱল প্ৰশিক্ষণ প্ৰক্ৰিয়াত কেন্দ্ৰিত, অন্যান্য সকলো দায়িত্ব ব্যৱহাৰকাৰীৰ ওপৰত থাকে। আপুনি হয়তো Accelerate সিদৰে ব্যৱহাৰ কৰাৰ বাবে অধিক উপযুক্ত হ'ব! যদিও Trainer-ৰ প্ৰতিটো অংশ কাষ্টমাইজ কৰা সম্ভৱ, training loop মূলত কেইটা ভাগত বিভক্ত

আপোনাক অতিক্ৰম কৰিব লগা বিভিন্ন পদ্ধতি আছে। কিন্তু, আপুনি যাওঁতে, সেই for লুপবোৰ লিখাটো আকৌ আৰম্ভ কৰা যথেষ্ট গুৰুত্বপূৰ্ণ নেকি 😉।

স্বীকৃতি

pytorch-accelerated ৰ ডিজাইন আৰু বৈশিষ্ট্যসমূহৰ বহু দিশ কিছু উৎকৃষ্ট লাইব্ৰেৰী আৰু ফ্ৰেমৱৰ্ক যেনে fastai, timm, PyTorch-lightning আৰু Hugging Face Accelerate ৰ পৰা বহুত প্ৰভাৱিত হৈছে। এইবোৰ টুলে এই লাইব্ৰেৰী আৰু মেচিন লাৰ্নিং কমিউনিটিত বৃহৎ প্ৰভাৱ পেলাইছে আৰু তেওঁলোকৰ প্ৰভাৱ যথেষ্টকৈ উল্লেখ কৰিব নোৱাৰি!

pytorch-accelerated এইবোৰ টুলৰ পৰা কেৱল অনুপ্ৰেৰণ লৈছে, আৰু সকলো ফাংচনেলিটি শূন্যৰ পৰা এনেদৰে তৈয়াৰ কৰা হৈছে যাতে এই লাইব্ৰেৰীৰ লাভ হয়। কেৱল কিছু স্ক্ৰিপ্ট বাদে উদাহৰণসমূহ ফোল্ডাৰত বিদ্যমান উৎস লৈ সংশোধন কৰা হৈছে যাতে pytorch-accelerated ৰ বৈশিষ্ট্য দেখুওৱা যায়; এই ক্ষেত্ৰবোৰ স্পষ্টকৈ চিহ্নিত কৰা হৈছে, আৰু মূল লেখকক স্বীকৃতি দিয়া হৈছে।

--- Tranlated By Open Ai Tx | Last indexed: 2026-02-28 ---