Spaces:
Sleeping
Sleeping
File size: 33,146 Bytes
d48d4f3 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
پایتورچ صحبت کنیم یه ای پی آی شبیه در واقع نامپای اری داره ساختار تنسوری که این امکان را به شما میده که در واقع گرادیان رو عددی محاسبه کنید و الان اون فرایند بی پی یا بک پروگریشن را انجام بدید در واقع قابلیتی داره که تنسور روی جی پی یو قرار بده حالا شاید اگر سیستم شخصی داشته باشید چه از کلب استفاده کنید میتونید خیلی سرعت ترین رو بیشتر کنید با حالا سنسورهای پایتونچ و حالا تنسرفلو که بلدید یا حالا تاریخچه براش نوشتم مراحل نصبش اگه بخواین در واقع سیستم رو نصب کنید به این صورت که میاید توی پایتون و با یک کد فقط یه خط کد شما میتونید نصبش کنید حالا اگر ویندوز لینوکس مک دارید مکش فکر کنم اگه ام تو به بالا داشته باشید میتونید سیلیکون ولی استفاده کنید وگرنه باید از حالت عادیش که چیز نداره وجود نداره براش رو سی پی یو ران میشه در واقع میتونید همین کوتاه ۱۱۸ رو با این دستور نصب کنید بلدید چه جوری اینجور چیزا رو نصب کنید یا اینم بگم آره یه آناکوندا روی سیستم پاورش که بیارید شما میتونید تعریف کنید تورچ دارم واردش میشیم شما هرچی بخواین رو میتونید تو نصب کنید دیگه نیازی نیست هر بار یه چیزی اشتباه شد همه چیزا رو با هم پاک کنید و راحت میتونید پایتون های مختلف داشته باشید حالا وابسته به کارتون پایتون ۳۸ تا ۱۱ یا اصلاً میخوایم پایتون ۲ کار کنیم راحت میتونید نصب کنید و اون دستور رو میزنید نصب میشه دو و خوردهای گیگ هم هستش که میتونید نصب داشته باشید این از نصبش بعد خب خیلی بخوایم ساده شروع کنیم سایزش خوبه یا درستش کنم این دیگه درشت نیست آره کلاً فقط محدودیت جی پیو داره پنج ساعت و نیم در روز و چند هفته استفاده کنید تا دو ساعت کاهش پیدا میکنه جی پی یو مجبورید چند تا ایمیل مختلف داشته باشید که حالا عوض شده تمرین های ما به اونجا نمیرسه حالا ترانسفورمتون و ال ال ام تون شاید برسه اگه بدن تمرین که مجبور بین ۴ تا مثلاً ایمیل مختلف نتایج هی جابجا کنید چند ای پاک که میره جیپیش تموم میشه ولی خب سیستمهای خودتون برای اینکه ما در واقع یک سنسور یا همون نامپای ارهای که داریم رو تبدیل کنیم به در واقع تنسورهای پایتون راحت از دستور ترش دات تنسور استفاده میکنیم حالا اگر دیتاتون به صورت خام باشه میتونید از این دستور از نام پایه باشه میتونید از فرام نامپای در واقع اونو تبدیلش کنید بزرگترینشه بیاین جلو این همه صندلی نمیبینی دیگه الان ریز نمیشه بزرگه بزار چیکار کنیم پس شما به راحتی میتونید حالا اون دیتایی که دارید از نامهای یا دیتای خام باشه را تبدیل کنید همینطور میتونید با دستور وانز لایک یا رندوم لایک یک ماتریسی به ابعاد ماتریس مورد نظرتون رو تولید کنید که حالا یا همش یک باشه یا رندم باشه و حالا میبینید حالا این کد خیلی جامع ما اگه تیکه هایش میپریم بعدا خودتون میتونید امتحان کنید چون اگه بخواهیم دوتاشو برسیم وقت نداریم در واقع عط های که میتونید از خروجی بگیرید شیپش تایپش و حالا دیوایسه تایپش که حالا میتونه فت ۳۲ ۶۴ اینت هشت و اینا باشه هر حالا وابسته به کارتون و دقت مورد نظرتون تغییر میدید دیوایس چیز مهمی میتونه باشه اینه که خب این سنسوری که شما دارید حالا وزنهای یک شبکه است روی چه سیستمی داره ران میشه رو سی پی یو جی پی یو اگه رو سی پی یو باشه که سرعت پایینه و اینکه سی پی یوهای خیلی قوی داشته باشید چند هستهای کار کنه اگر رو کوددا باشه که در واقع روی جی پی یوتونه جی پی یو لپتاپتون هم اگر از خانواده ۱۰۰۰ به بعده کودا داره ۱۰ مثلاً ۶۰ ۱۰۸۰ به حالا تا ۴۰۸۰ ۴۰ ۹۰ قبلش کودا وجود نداره براشون ام ایکس مثلا ۹صد و خورده ای ندارد آره جلوتر دستورشو بهتون میگ نه نداره فقط دیوایس رو تعریف میکنید که اگهویبل این دستور تک خطی که اینجا میبینید اگر کوتاهشویبله دیوایس بکنه کود کودا و توی نصبش هم حتما دیر اومدید نصبشو اینجا شما دو نسخه کودا دارید یه نسخه سی پی یو از اینجا میتونید کجا بودیم عملیاتی هم که حالا میتونید روش انجام بدید به راحتی همون جبری و ساده اولیه است میتونید ضربه تنسوری داشته باشید با علامت اتساین این کار میکنه اگر علامت ضرب بزار این کار رو میکنه و حالا مول و متن مود هم که در واقع همینه و اینطوری تعریف میشن دیگه از ایناش میگذریم خب الان شما یه سنسور تک بعدی دارید و در واقع یک سنسور مثلاً n در n داشتید مجمو رو حساب کردید با دات سام به شما خروجی که میده یه چنین فرمی داره تنسوری هست از کلاس تنسور و ولیو نداره ولیوش ۱۲ شما ولی خروجیش رو میخواین با دات آیتم میتونید خروجی بگیرید حالا اگه دیکشنری باشه دات ولیو با تنسور باشه با دات سایت که حالا میشه این خروجی سیستمتون اگر مدلتون مثلاً سافت مکس داشته باشه روش داشته باشه راحت میتونید با کلاس مورد نظرش رو بخونید یه بخش مهم دیگه که تو پایتون هست دیتا ست و دیتا لودر هاشن خب همونطور که میدونید یه دیتا ست های آماده ای هست برای حالا ویژه و کارهای مثلا تکست و اینجور چیزا و آماده است مثل ام نیست فشن ام نیست سی و اینجور حرفا و به شما راحتی میده که میتونید دانلود کنید این کار به سرعت کلاه و نمیخواد حتماً کل اون دیتا ست رو آماده توی خود در واقع کامپیوتر خودتون داشته باشید تو درایوتون حالا با این دو تا دستور شما اون دیتا سه تا رو میارید و حالا مثلاً من ام نیست رو میخوام با یه دستور راحت خود پایتورچم تمامی اینا رو داره یعنی این کدها رو من دقیقا از سایت خود پای ترش برداشتم که شما بتونید مراجعه کنید بهش روتش که حالا دیتاتونه اگر دیتایی دارید که تو پی سی خودتونه روت خودتون رو میدید که آدرس دیتا رو پیدا کنه اگه ترین تورو باشه حالا فال باشه دسترسی ها رو تفاوت میده خب حالا ام نیست هم فایل تست داره هم ترند داره لوکیشن ها رو برمیداره و یه ترانسفورم حالا در مورد ترانسفورم هم صحبت میکنیم ما فقط الان میخویم تو تنسور استفاده کنیم یعنی دیتایی که میاد تنسور باشه نامپ نباشه و حالا عکس یه ارای ساده نباشه حتما میخویم تبدیل به تنسور بشه و بین صفر تا یک خود توتنسور این چیزا رو هندل میکنه دانلود نمیکنه مثلاً الان من زدم میتونید ببینید توی کامپیوتر من تو کش در واقع ترکم یه تیکه شو دانلود کرده شما میتونید دانلود نکنید بعد شما میتونید با فراخوندن در واقع اونها دیتا ست بیاین حالا یه سمپلی ازش ببینید مثلا ام آورده بودم بزار من بزنم تا اینجا ران شه شما مثلا اول خود ایمیج میخونه بعد لیبلش رو میخونه بر اساس ساختار دیتا ست که داره و شما حالا میتونید هی هر بار که این چیز ران کنید میتونید نمونه های دیتا ست اولیه را ببینید و این از یه قسمت مهم دیگه که هست اینه که اوکی شما نمیخواین از دیتا ست که آماده است استفاده کنید مجبوری دیتا ست خودتون رو داشته باشید که حالا تو تمرین از این بخش خیلی استفاده شده و شما باید یک دیتا لودری بنویسید که بتونید در واقع دیتاهای خودتون رو و لیبلهاشو بخونید این کار در واقع میتونید با کاستوم دیتا ستی که خود پای توچ نوشته اعمال کنید یه خانواده در واقع از خود دیتا ست تولید میکنه از کلاس دیتا ست اصلی که میتونید شما ازش استفاده کنید سه بخش مهم حالا اینیشیال و آیتم داره که در واقع دو تا آندرلاین بغل هر کدوم شروع میشن اینا تعریف شده است و توی خود دیتا ست میدونه هر کدوم چیکار میکنه لن در واقع کل تعدادتون رو در میاره و گت آیتم اینه که هر بار فراخونده میشه یه ایندکس خاصی رو میخونه حالا اگر عکسه میره ایندکس اول مثلا پوشه ایمیج میخونه به اضافه لیبلش و حالا شما میتونید این وسط یه یک عکس دارید و میخواین بخونیدش ولی مشکلتون اینه که هر پوشتون یک سایز مختلف دارند یا حتی توی پوشه سایز عکساتون فرق داره شما میخواین همه دیتا ست در واقع میخونید همه مثلاً عکسهای ۲۲۴ در ۲۲۴ باشه شما میتونید با تعریف کردن ترانسفورم که اونجا قبلا فقط تو تنسور داشتیم ری سایز و پد انجام بدید که همه عکساتون یک سایز بشه از تغییر نکنه حالا بالای بغلش سیاه میکن بهش میگن پدینگ کردن که در واقع اون عکس فقط شیپش تغییر کنه میتونید لیبلتون رو حالا تغییر بدید مثلا اگر استرینگ هست مثلا کلاس هاتون بر اساس سگ و گربه و ایناست به عدد تبدیلش کنید بین مثلا صفر تا ۱۲ ۱۲ کلاسستون رو بذارید و حالا بخش مهم دیگهای هم که توی تمرین ممکنه ازش استفاده کنید اینه که در واقع آگمنتیشن انجام بدید خب شما مثلاً حالا من همه چی رو عکس توضیح میدم بعد شما یک دیتا ستی دارید ۱۰ هزار تا عکس داره ولی مدلتون مثلا رزنت ۵۰ هست براش کمه این ده هزار تا عکس برای در واقع ترین کردنش از یک طرف هم با مقوله داریم حالا آشنایی داریدزیشن ما میخویم در واقع مدلونزیشنش بره بالا یکی از روش هاش آگمنت کردن در واقع ورودی مسئله است شما میتونید مثلا اگر یک عکس سگ دارید میتونید اینو به روش های مختلف کپ کنید روتیت کنید فیلیپ کنید رنگش عوض کنید که در واقع مدلتون خیلی بایاس نشه روی یک فیچر خاص و در واقع هدف کلا مسئله تو تغییر کنه شما در واقع با فرا خوندن حالا ترانسفورمرهای مختلف یا کلاً به صورت حرفهای استفاده از لایبری آلبوم اتیشن در واقع آگمنتیشن رو انجام بدید خب حالا یه روش در واقع مختلف برای بالا بردن جنریزیشن میتونه کسی بگه به جز آگمنت کردن حالا جلوتر در مورد اپتیمایز که صحبت میکنیم حالا در مورد ال تو وان شنیدید مطمئنا نشنیدید در واقع میاد حساسیت مدل رو کاهش میده در واقع از شدت پیچیدگی محیط مدلتون کم میکنه ترشولدی میزاره بین کلاس ها و ممکنه در واقع دقت ترینتون یک مقدار کم بشه ولی عوضش چنینزیشن خیلی بهتری داریم یه راه دیگهای هم که داریم در واقع نویزی کردن لیبلهاست حالا یه سوال تمرینتونم فکر کنم همچین چیزی هست شما میاین دیتا ست رو میخونید دیتا ست ۱۰۰% تمیزه و برای شما خوب مناسب ممکنه نباشه برای اون مسئلهای که هست شما میاین مثلاً یک درصد از دیتا ست رو لیبلش هرچی هست رو عوض میکنید تو همین دیتا ست توی کاستوملود میکنید یه ای میذاید که اگر تو در واقع مود ترین هستید یه عدد رندوم تولید کنید اگر عدد رندوم کمتر از یک درصد بود لیبل نویزی بده این باعث میشه در واقع جنزیشن مدلتون مقداری افزایش بده دنیاهای ناشناخته آره دیتا اشتباه بهش میدیم باعث میشه دنیای ناشناخته پیدا کنه عواق اینا همه کانوکس های پیچیده ریاضیه خب یک درصد کمتر از یک درصدشه اونقدر تاثیری نداره ولی باعث میشه از مینیمومها حداقل کشیده شه بیرون ما همیشه سعی و تلاشمون اینه که از مینیموما بیایم بیرون بریم به سمت گلوبالا بعد لوکالا در واقع بیایم بیرون لوکال مینیموما رو خارج بشیم حالا میایم لرنینگ ریتمون رو بازی میکنیم اپتیمایزرامون یه قسمتو هندل میکنن یه قسمت هم اینه که دیتا ستمون یک مقدار خیلی ناچیزی نویزی باشه باعث این کامکس های پیچیده ریاضی که داره سعی میکنه گلوبال مینیمم پیدا کنه به نقاطی برسه که تا الان نرسید لیبل زدن که ما داریم لیبل داره اگه دیتا ست لیبل نداشت خب بستگی داره دیتاتون چیه اگه ایمیج باشه خب یه لایبری های هستند برای در واقع لیبل زدن عکس حالا باندریباکس بکشی سیگمنت کنی هرچی خواستی یا فقط پوشه بندی کنی مثلاً سگ دیدی بزنی ۱ مثلاً گربه دیدی بزنی ۲ خودش جدا کن تو هیچ کدوم از تمریناتو نداری چون فراهم کردن دیتا ست وقت خیلی زیادی میگیره و این هدف در واقع درس فایده نداره خب حالا که شما دیتا لودری دارید باید این دیتا لودر رو در واقع فرا بخونید و با استفاده از حالا سایزی که میگید و شافلی که براش تعریف میکنید لود میکنید من حالا که تعریف کردم یک کلاسی را برای دیتا ست میخوام کلاس رو فراخونی کنم و در واقع لودش کنیم چی چون هر بار فراش میخونی شما میخوای یهچ بهت بده نه الان هر فرا میخونی یک بار اون کد میره ایندکسش سیو میشه براش میدونه چقدرش رو رفته مثلاً شما ۱۰ هزار تا عکس داری ۱۰۰ تا ۱۰۰ تا همین جا داره میره جلو مگه اینکه وسطش خودت تو دیتا لودرت یه عدد رندوم تولید کنی که هر موقع خواستی یه چیزو بیاره با اینا ترکیب کنه مثلاً ما تو عکسا یه کاری داریم به نام کاتن میکس شما گربه داری بهش میدی ولی یک چهارم عکس سگه کات کردید از یه عکس سگ انداختی توش این باعث میشه مثلا باز اون قدرتیشن بره بالا به فیچر های کلی تری نگاه کنه این باعث میشه شما یه عدد رندوم تولید کردی که اون سگه رو بیاری بیرون دیگه بندازی رو گربه این تو دیتا لودر تو انجام میشه ولی در کل یه کاری میکنه تمام دیتاها رو شما یه بار ببینید و یه گزینه هم داره فکر کنم ریپلیس حالا اگر اشتباه نکنم وقتی دیتاتون خیلی کمه مخصوصا تو کارهای پزشکی ۱۰۰ تا دونه عکس بیشتر نداری ورمیداری آگمنت ترینو یه بار انجام میدی دفعه بعدی خب دیگه دیتا نداری مجبوری هرچی ورداشتی بزاری سر جاش دوباره شافل کنی یه وجه دیگه برداری آگمنت کنی و بزاری اینجور مواقع باید درصد آگمنتیشن ببری بالا که دیتاها دیگه هی شبیه هم نباشه هی تغییر کنه شافل هم که حالا میتونید برای اینکه ۱۰۰% تور کنید ولی برای در واقع تست و ولیدیشن میتونید شافل نکنید بعد که دیگه حالا با ایتریشن و اینا میتونید هیتریشن های مختلف بخونید ببینید در واقع چیکار میکنید دیگه از ایناش میگذریم ترنسفورم هم گفتم یه در واقع قسمتی هستش که تو دیتا ست تعریف میکنید که شما روی حالا ایکس و وایتون حالا ایمیج و لیبلش اعمال کنید مثلا من اینجا اومدم یه دستور نوشتم بیاد وان هات کنه در واقع لیبل هاونو که حالا خروجیش رو ببینید یه چنین چیزیه به به من یک کلاس مثلاً ۷ بده یه وان هات ۷ میده مثلا و این هم در واقع یک مدله که ترانسفورم تارگت در واقع فقط رو لیبلها اعمال میشه خب میریم بخش بعدی در واقع ساختن یک شبکه عصبی شما این تیکه کد رو اول هر کدتون بذارید و از این به بعد از دیوایس استفاده کنید به صورت خودکار اگر کوداتون باشه میره رو جی پی یو اگر نباشه رو سی پی یو ران میشه چرا چون خیلی مهمه هم شبکه هم در واقع ایمیج یا دیتاتون روی یک دیوایس باشه شما نمیتونید دیتاهاتون رو سی پی یو باشه مدلتون رو جی پی یو حتما باید روی یک دیوایس باشن که بتونید ران کنید در واقع رانم کنید خروجی این سیستم همیشه مال من حالا هستبل رو میزنه برای تعریف کردن یک شبکه حالا چه چیز باشه ام ال پی باشه چه سی ان ان باشه در واقع بیاین از ماژول در واقع نورال نتورک ماژول استفاده کنید خیلی کار راحت میکنه این هم دوباره یه دونه اینیشیالیزیشن داره که شما میاین اون لایههای مد نظرتون رو تعریف میکنید که در واقع حالا مثلاً من اینجا اومدم از دو روشش نوشتم براتون شما میتونید یک فلتن تعریف کنید یک سیکوئنشیال همه لایه هاتون سیکونشیال بزارید مثلا میخوید از ۲۸ در ۲۸ یه دونه ورودی توه میخویم ۵۱۲ یه ریلو بخوره دوباره ۵۲ ۵۱۲ همینطور برید و یک تیکهارد این مسیری هستش که قراره فوروارد بره حالا اینجا ما یه هد داریم یه دونه اوت هم داریم ممکنه مولتی هد باشه مدلتون چند تا ورودی مختلف بگیره چند تا مدل رو به هم کان کرد بخواهیم بکنیم تو این فوروارد این انجام میشه تو بخش اینیشیال فقط وزن ها اینشال که حالا اونم روشهای مختلف وزنا رو میدونی چه جوری دیگه یا رندمن یا حالا خاویر و اینجور چیزاست که دقتهای مختلفی برای کارهای مختلف داره یا سیکونشیال تعریف کنید یا نه شما اسم میذارید با در واقع اسمهاشون مدلا رو اینشیال میکنید تو فوروارد فقط فرا میخوید ورودیتون ایکس هست بعد همینطور میره داخل لایه های مختلف و خروجیتون حالا هرچی که هست خارج میشه این از این اگر بخواهیم اون در واقع وزن اولیه رو روش مختلفی مثل حالا رندوم خاویر یا چیز بدید تو همین بخش اینت باید تعریف کنید که چی میخواین داشته باشید بعد که حالا کلاس در واقع مدلتون رو تعریف کردید شما باید اون مدل رو بسازید مدل را فرا میخونم در واقع اون کلاس را فرا میخونم و قرارش میدم رو دیوایس که قرار بده مدلتون رو روی جی پی یو حالا پرینت هم لایهها رو میگه چیز کنید در واقع ساختار شبکه رو هم ببینید پای ترش یه دونه لایبری داره فکر کنم اسمش سامریه نصب کنید دقیقاً مثل تنسو فلو بر اساس ورودی که میگیرید تعداد پارامترها وزنش و حالا چیزهای دیگه رو مشخص میکنه خب شما میخواین حالا مدلی که طراحی ورودی بدید یک ورودی رندوم میسازیم بر اساس ورودی مثلا مون بر روی دیوایس قرارش میدیم و فقط به مدل میدیمش دیگه به فوروارد و کال نمی کنیم کل همون مدلی که اینجا در واقع در نظر گرفتیم و ساختیم رو فرا میخونیم و حالا ورودی رو بهش میدیم شما میتونید روش سافت مکس رو بزارید تو خود مدل میتونید نذارید بعدا اعمال کنید سافت مکس رو بهش و حالا اون لیبل خروجی رو بگیرید حالا اینکه هر کدوم از اینام چیه خب فلت اینکه هر ورودی بگیره بر اساس دایمنیشنی که مورد نظر شماست فلت میکنه در واقع اون ورودی لینیر که در واقع همون ام ال پی ساده است معروفترین در واقع اکتیویژن فانکشن حالا الان مدلهای سیلو و جیلو و اینا اومدن تاثیرات دیگه دارند حالا شما میتونید ان تا مدل رو به صورت سیکونشیال پشت هم فرا بخوانید ما تو هر مدل دو تا بحث پارامتر داریم یکی پارامترهای مدله که میشه همون وزن ها بایاس ها یک یک سری هم در واقع اون قضیه هایپر پارامتر هاست که سایز چقدر باشه لرنینگ ریت چقدر باشه اینا رو با هم قاطی نکنید حالا شما میتونید اگه مدلتون خیلی کوچیک باشه که فکر کنم تو تمرین های دستیتون داشته باشید میتونید بیاید در واقع ساختار و وزن های هر تیکه لایه تو رو با دستورهایی مثل در واقع یه دونه حلقه بستن روی پارامترها خروجی بگیرید و یه بحث مهمی هم که حالا اینجا بهش پرداختیم اون فرم در واقع اون اتوگرت پایتورچ هست که همون فرایند محاسبه گرادیان برای حالا ماتریسهای وزنتون که به صورت دستی شما میتونید این کار رو انجام بدید با در واقع فراخوندن یک دستور از بیشترین شده بک ورد شما ماتریس ورودی تو ایکس هست نیازی نیست گرادیان براش حساب بشه برای همین فراخونیم که این پارامتر ریکوردش رو ولی وزنتون رو میخوید گرادیان حساب بشه بعد هم که میخوید ضرب کنید در همون روش یه دونه اکسپوننشیال بگیرید در واقع حالا اینجا بخونید ریاضیاتش رو نوشتم برای محاسبه در واقع گرادیان وزن دو روش داریم یا وای و دات بکوارت کنیم میاد از آخر به اول میره و هر جا که گرادیان نیاز بوده تو ماتریس گرادیانش رو حساب میکنه یه بار مشتق زنجیرهای بگیرید و دستی حل کنید و باز گرادیانش رو در بیارید که حالا من در مورد دیتر چند پایینتر صحبت میکنم اینجا هم دو تا روش رو در واقع مقایسه کردم و نشون دادم گرادیاناش یکسانه خب حالا شما میخواین یک تیکه از مسئلهتون گرادیان نداشته باشه یا اون ماتریستون رو که تعریف کردید بدون گرادیان میزارید یا نه الان توی مرحله هستید میخوید ترینتون گرادیان حساب بشه ولی برای ولیدیشن نمیخواهیم حساب بشه و تو تستمون که کلا نداریم هیچی دو روش داره یا بیایم با یه دونه ترش نوگراد فراخونی کنیم و از اون به بعد توی در واقع اون حلقه ما هر کاری کنیم هیچ گرادیانی حساب نمیشه یا از دستور دیچ استفاده کنیم که گرادیان را در واقع محاسبه نمیکنه فرقی هم نداند با هم تا اینجا هیچ سوالی نیست چیزهای ساده تند تند رد میشیم میریم حالا جلوتر ببین خب الان ترین داری انجام میدی یه بک میبینه گرادیان حساب میکنه شبکه آپدیت میشه شما هر ایپاکی که تموم میشه خب یه ولیدیشن میخوای دیگه تا اینجای کار چیکار کردی خب تو ولیدیشن ما نمیخواهیم گرادیان حساب بشه چون قرار نیست شبکه به روز بشه اتفاقی که میفته اینجا اینه که یا باید بزار حساب شه ازش استفاده نکنیم محاسبه الکی انداخت تو گردنش یا کلا هم خب مدلتون میخوای دیگه تموم شده مدل میخوای اکسپورت بگیری دیگه گرادی نمیخوایم دیگه از اونجا به بعد دیگه بدون گرادیان چیز حساب خب در مورد هایپر پارامترها که صحبت کردم لرنینگ ریت حالا میتونیم ثابت داشته باشیم یا براش در واقع اسکجول تعریف کنیم که حالا رینگ ریت حالا بر اساس معیار خاصی باشه یا کسینوسی هی افزایش کاهشی باشه که در واقع ما از لوکال مینا خارج بشیم یه بحث هستش که شما میخواین در واقع اون لاس فانکشن رو چی تعریف کنید باز خب ماژول ان ان خودش یه تعداد زیادی فانکشن رو در واقع تعریف کرده حالا انتروپی کراس انتروپی و مدل های دیگه یه خوبی پای ترش اینه که به شما این در واقع آزادی رو میده که میتونید فانکشن های خودتون رو هر گونه ای که هست تعریف کنید حالا در فایل بعدی من یه داستان پیچیده هم براتون نوشتیم خودتون میتونید کار کنید حالا تو تنس فلو باید یه دونه کد بنویسید جداگانه که حالا فراخونی بشه بتونید تغییر بدید ولی تو پای همه چی دست شماست و خیلی تو کارهای تحقیقاتی میتونه کمکتون بکنه اپتیمایز هم که خوب اپتیمایز های معروف تو پایتون هستند حالا اس دی عدم دبلیو و بر کارهای دیگه که حالا کدوم دقتش بیشتره دبلیو ادب فقط کنده به خاطر کندی ممکنه هیچ وقت به حد آخرش نرسه خیلی سریع میره ولی همیشه یه خطای ماندگاری اون انتها داره حالا عدم و عدم دبلیو دو مدل مختلف که تمرین فکر کنم بهتون دادیم که مقایسه انجام بدید باهاش ببینید چه جوریه که حالا فرا میخونید پارامترهایی که میخواد براش گرادیان حساب شه رو بهش میدیم که معمولا پارامترهای مدلمون هست لرنینگ ریت بهش میدیم اگر حالا بخواهیم اون عملیات ریگولاریزیشن انجام بشه برامون حالا ال وان ال تو اینجا مشخص میشه که یک مقدار از در واقع پیچیدگی محیط کم مدلمون کم کنیم دقتش بهتر و این از این شما برای تو پای ترش برخلاف تنسور که فقط یه مدل دات فیت میزنید و خودش تمام اقدامات را انجام میده شما اینجا مجبورید یک حلقهای برای ترین و یک حلقه برای حالا تست یا ولیدیشن به صورت جداگانه بنویسید تو این حلقه شما دیتا لودرتون رو میارید مدل رو میارید حالا لاس فکشن و اون اپتیمایز های که مد نظر هست و حالا هر چیز دیگه که اضافه تعریف کردید از دیتا لودرتون حالا بچ و اون ایکس مورد نظر رو اون بچ که گفتید چرا چیز میکنیم ما اینجا یه بچ فرا میخونیم یه ایندکس بچ داریم که با میاد میگه وجه صفر وجه یک دو سه و حالا اون ۶۴ تایی که فرا میخو اینا رو من از قبل رو دیوایس قرار دادم اگر ندادم شما نداده بودید اینجا اولین مرحله اینه که ایکس رو بزارید رو دیوایس حالا جی پی یو سی پیوتون وای |