প্রযুক্তিগত গাইড
সমান্তরালভাবে ধার করা ডেটা
সম্পূর্ণরূপে শার্ডেড ডেটা প্যারালাল (FSDP) হল একটি বিতরণ করা প্রশিক্ষণ কৌশল যা একটি মডেলের প্যারামিটার, গ্রেডিয়েন্ট এবং অপ্টিমাইজার স্টেটকে অনেক GPU জুড়ে বিভক্ত করে যাতে প্রতিটি ডিভাইসে শুধুমাত্র একটি স্লাইস থাকে।
এই নির্দেশিকা শুনুনএআই-বর্ণিত · ~2 min
এই পৃষ্ঠায়2 মিনিট পঠিত
ওভারভিউ
এটি হার্ডওয়্যারে বিশাল মডেলের প্রশিক্ষণ সম্ভব করে তোলে যা কখনোই একটি জিপিইউ-এর মেমরিতে পুরো মডেলকে ফিট করতে পারে না।
গভীর ডুব
ঐতিহ্যগত ডেটা সমান্তরালতা প্রতিটি GPU-তে মডেলের একটি সম্পূর্ণ অনুলিপি রাখে, যা মেমরি এবং ক্যাপ মডেলের আকার নষ্ট করে। FSDP, Meta-এর PyTorch দ্বারা জনপ্রিয় এবং Microsoft-এর ZeRO দ্বারা অনুপ্রাণিত, পরিবর্তে ডিভাইস জুড়ে তিনটি জিনিস ভাগ করে: প্যারামিটার, গ্রেডিয়েন্ট এবং অপ্টিমাইজার স্টেট। ফরোয়ার্ড পাসের সময়, প্রতিটি GPU অল-গেদারের মাধ্যমে কম্পিউট করা লেয়ারের জন্য অস্থায়ীভাবে সম্পূর্ণ ওজন সংগ্রহ করে, গণনা চালায়, তারপরে সংগৃহীত অনুলিপিটি অবিলম্বে মুক্ত করে। পশ্চাদগামী পাস একইভাবে কাজ করে, একটি হ্রাস-স্ক্যাটার দ্বারা অনুসরণ করে যা গ্রেডিয়েন্ট স্লাইসগুলিকে তাদের নিজস্ব GPU-তে ফিরিয়ে দেয়। যেহেতু প্রতিটি ডিভাইস স্থায়ীভাবে মডেলের একটি ভগ্নাংশ সঞ্চয় করে, মেমরির ব্যবহার জিপিইউ-এর সংখ্যার সাথে মোটামুটিভাবে রৈখিকভাবে কমে যায়, দলগুলিকে দশ বা কয়েকশ বিলিয়ন প্যারামিটার সহ মডেলগুলিকে প্রশিক্ষণ দিতে দেয়।
বাস্তব-বিশ্ব বাস্তবায়ন
8টি GPU জুড়ে একটি 70-বিলিয়ন-প্যারামিটার Llama মডেলের ফাইন-টিউনিং যা পৃথকভাবে সম্পূর্ণ ওজন ধরে রাখতে পারে না।
শত শত অ্যাক্সিলারেটর জুড়ে অপ্টিমাইজার স্টেট (যা অ্যাডামের সাথে মেমরির উপর আধিপত্য করে) শার্ডিং করে AI ল্যাবগুলিতে বৃহৎ ভাষার মডেলগুলিকে প্রশিক্ষন করা।
গবেষকরা ফ্ল্যাগশিপ 80GB জিপিইউ না কিনে ইউনিভার্সিটি ক্লাস্টারে ভিশন ট্রান্সফরমার প্রশিক্ষণের জন্য PyTorch এর FSDP র্যাপার ব্যবহার করছেন।
মিশ্র-নির্ভুলতা bfloat16-এর সাথে FSDP-এর সংমিশ্রণ মোটামুটিভাবে মেমরিকে অর্ধেক করা এবং মাল্টিমোডাল মডেলগুলিতে প্রশিক্ষণের গতি বাড়ানো।
সম্পূর্ণভাবে সংরক্ষিত ডেটা সমান্তরাল ভবিষ্যত
PyTorch-এ FSDP2 ব্যবহারযোগ্যতা এবং প্রতি-প্যারামিটার শার্ডিংয়ের উন্নতির সাথে FSDP খোলা বড়-মডেল প্রশিক্ষণের জন্য ডিফল্ট হয়ে উঠছে। ট্রিলিয়ন-প্যারামিটার মডেলের জন্য টেনসর এবং পাইপলাইন সমান্তরালতার সাথে আরও কঠোর ইন্টিগ্রেশন আশা করুন, মিশ্র নির্ভুলতা এবং fp8 এর জন্য আরও ভাল সমর্থন এবং আপনার জন্য শার্ডিং সীমানা বাছাই করে এমন আরও স্মার্ট স্বয়ংক্রিয় মোড়ক। NVLink এবং InfiniBand-এর মতো আন্তঃ-GPU আন্তঃসংযোগগুলি দ্রুততর হওয়ার ফলে, শার্ডিংয়ের যোগাযোগ খরচ ক্রমাগত সঙ্কুচিত হতে থাকে, এটিকে আরও বড় স্কেলে ব্যবহারিক করে তোলে।
এটাকে বাস্তবে প্রয়োগ করা হচ্ছে
কেন এটা গুরুত্বপূর্ণ
- খরচ ও বাজেট. আর্কিটেকচারের সিদ্ধান্তগুলি বছরের পর বছর ধরে কর্মক্ষমতা এবং অপারেটিং খরচ চালায়।
- সুস্পষ্ট সিদ্ধান্ত. কারিগরি শিক্ষা দলগুলোকে সঠিক স্ট্যাক বেছে নিতে সাহায্য করে, শুধু নতুনটি নয়।
- মান নিয়ন্ত্রণ. ভালো ইঞ্জিনিয়ারিং পছন্দ উৎপাদনে নির্ভরযোগ্যতার ঘটনা কমিয়ে দেয়।
জন্য সতর্ক
- একটি বেঞ্চমার্ক অপ্টিমাইজ করা বৃহত্তর সিস্টেম দুর্বলতা আড়াল করতে পারে।
- অবকাঠামো এবং রক্ষণাবেক্ষণের খরচ প্রায়ই অবমূল্যায়ন করা হয়।
- সিস্টেমগুলি আরও জটিল হওয়ার সাথে সাথে সুরক্ষা এবং পর্যবেক্ষণযোগ্যতার ফাঁক বাড়তে পারে।
পরবর্তী পদক্ষেপ
- বাস্তবায়নের আগে বিলম্ব, গুণমান এবং খরচের লক্ষ্য নির্ধারণ করুন।
- বাস্তবসম্মত লোড এবং ডেটা অবস্থার অধীনে বেঞ্চমার্ক।
- ত্রুটি, প্রবাহ, এবং ব্যবহারকারীর প্রভাবের জন্য যন্ত্র পর্যবেক্ষণ।
- স্কেল করার আগে রোলব্যাক এবং ঘটনার প্রতিক্রিয়া পাথ প্রস্তুত করুন।
অন্বেষণ চালিয়ে যান
ফ্রি নিউজলেটার
প্রতিদিনের এআই ব্রিফিং পান
প্রতি সপ্তাহের কাজের দিন সকালে তিনটি যাচাইকৃত এআই স্টোরি, সহজ ইংরেজিতে লেখা। চিরকালের জন্য ফ্রি, কোনো বিজ্ঞাপন নেই।
প্রতি সপ্তাহের কাজের দিনে একটি ইমেল। এক ক্লিকেই আনসাবস্ক্রাইব করুন। আমরা কখনোই আপনার ঠিকানা বিক্রি বা শেয়ার করি না।
নিজেকে পরীক্ষা করুন
Take the Fully Sharded Data Parallel quiz
প্রতিটি উত্তরের তাৎক্ষণিক ফিডব্যাক, এবং কোর্স পাস করার পর যাচাইযোগ্য আইডি সহ একটি শেয়ারযোগ্য সার্টিফিকেট।
ফ্রি এআই শিক্ষাকে সমর্থন করুন। AI Understanding একটি 501(c)(3) অলাভজনক প্রতিষ্ঠান — কোনো বিজ্ঞাপন নেই, কোনো পেওয়াল নেই, কখনোই না। একটি দান করুন
প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী
সম্পূর্ণভাবে শার্ডেড ডেটা সমান্তরাল কি?
সম্পূর্ণরূপে শার্ডেড ডেটা প্যারালাল (FSDP) হল একটি বিতরণ করা প্রশিক্ষণ কৌশল যা একটি মডেলের প্যারামিটার, গ্রেডিয়েন্ট এবং অপ্টিমাইজার স্টেটকে অনেক GPU জুড়ে বিভক্ত করে যাতে প্রতিটি ডিভাইসে শুধুমাত্র একটি স্লাইস থাকে। এটি হার্ডওয়্যারে বিশাল মডেলের প্রশিক্ষণ সম্ভব করে তোলে যা কখনোই একটি জিপিইউ-এর মেমরিতে পুরো মডেলকে ফিট করতে পারে না।
এফএসডিপি জিপিইউ জুড়ে কী ধারণ করে যা স্ট্যান্ডার্ড ডেটা সমান্তরালতা করে না?
FSDP মডেলের প্যারামিটার, গ্রেডিয়েন্ট এবং অপ্টিমাইজার স্টেটগুলিকে ডিভাইস জুড়ে শার্ড করে, যেখানে স্ট্যান্ডার্ড ডেটা সমান্তরালতা প্রতিটি GPU-তে সম্পূর্ণ মডেলের প্রতিলিপি করে।
কম্পিউট করার আগে একটি স্তরের সম্পূর্ণ ওজন পুনর্গঠনের জন্য FSDP কোন যৌথ অপারেশন ব্যবহার করে?
একটি স্তর চলার আগে, FSDP সমস্ত শার্ড থেকে সম্পূর্ণ প্যারামিটারগুলিকে সাময়িকভাবে একত্রিত করার জন্য একটি অল-গেদার করে, তারপরে সেগুলিকে মুক্ত করে।
কেন FSDP একটি স্তরের গণনার পরপরই সংগৃহীত পূর্ণ ওজন মুক্ত করে?
স্থায়ীভাবে শুধুমাত্র একটি শার্ড ধরে রাখা এবং ক্ষণস্থায়ীভাবে সম্পূর্ণ ওজন সংগ্রহ করা যা মেমরির ব্যবহার কম রাখে এবং মডেলের একটি ভগ্নাংশের সাথে মোটামুটি সমানুপাতিক।
FSDP মূলত কোন পূর্ববর্তী মেমরি-অপ্টিমাইজেশন পদ্ধতির দ্বারা অনুপ্রাণিত হয়েছিল?
FSDP-এর পরামিতি, গ্রেডিয়েন্ট, এবং অপ্টিমাইজার স্টেটগুলি ডিপস্পিড লাইব্রেরি থেকে Microsoft-এর ZeRO-তে প্রবর্তিত ধারণাগুলিকে ঘনিষ্ঠভাবে অনুসরণ করে।
কিভাবে FSDP ওজন সংগ্রহ করা থেকে নেটওয়ার্ক লেটেন্সি অনেক লুকিয়ে রাখে?
FSDP পরবর্তী স্তরের পরামিতিগুলিকে প্রিফেট করে যখন বর্তমান স্তরটি এখনও কম্পিউটিং করে, দরকারী কাজের সাথে সমস্ত-সংগ্রহের যোগাযোগকে ওভারল্যাপ করে৷
শিখতে থাকুন
সম্পর্কিত গাইড
এই বিষয়ের জন্য বাছাই করা আরও গাইড