‫آموزش یادگیری عمیق 5 - مقایسه تمام پارامترها و جزییات دو شبکه عصبی ساده و عمیق با تعداد نورون برابر

แชร์
ฝัง
  • เผยแพร่เมื่อ 1 ต.ค. 2024
  • ‫دوره آموزش یادگیری عمیق (Deep learning)
    ‫‫جلسه پنجم - شبکه عصبی مصنوعی (Artificial Neural Network) ساده بهتره یا عمیق؟
    .
    ‫توی این جلسه با هم دو مدل درست میکنیم:
    ‫1. مدل اول دارای سه لایه هست، لایه ورودی، یک لایه پنهان با 1024 نورون و لایه خروجی
    2. مدل دوم دارای 6 لایه هست، لایه ورودی، 4 لایه پنهان با 256 نورون و لایه خروجی
    هر دو مدل تعداد نورونهای کلی یکسانی دارند، ولی جزییات آنها از جمله تعداد پارامترها و بازدهی عملکردی اونها با توجه به تابع هزینه مشخص شده متفاوت خواهد بود. در این ویدیو تمامی جزییات این دو مدل با هم مقایسه شده و در آخر با مقایسه نتایج میبینیم کدام مدل بهتر عمل میکند و چرا!؟
    ‫مقایسه نتایج به دو صورت عددی (numerical) و گرافیکی (graphical) انجام شده است.
    .
    دوره های مرتبط با این دوره:
    دوره آموزش پایتون از مقدماتی تا پیشرفته • ‫دوره کامل آموزش برنام...
    دوره آموزش یادگیری ماشین از مقدماتی تا پیشرفته • دوره کامل ماشین لرنینگ...
    .
    ویدیوهای انجام پروژه جهت کسب مهارت کدزنی و مرور تمامی مفاهیم مرتبط:
    پنج پروژه با استفاده از پایتون • پنج پروژه با استفاده ا...
    ‫3 پروژه کاملا کاربردی و مبتنی بر واقعیت برای تمرین بیشتر یادگیری ماشین • ‫3 پروژه کاملا کاربردی...
    .
    ممنون میشم اگر آموزشها براتون کاربردی و مفید هست، لایک کنین و در کانال سابسکرایب کنین و همچنین ویدیوها رو با دوستانتون به اشتراک بذارین!
    لطفا از دانلود ویدیوها اجتناب کنین، برای این ویدیوها زحمت زیادی کشیده شده (من راضی نیستم که اونها رو دانلود کنید) و به همین دلیل تنها راه استفاده رایگان، تماشای آنلاین هست.
    لینک کانال تلگرام t.me/techwithh...
    اگر برای ورود به دنیای برنامه نویسی و آموزش آن به صورت خودآموز نیاز به راهنمایی و مشاوره دارید، میتونین از طریق لینک زیر جهت رزرو زمان مناسب اقدام کنید تا با هم در موردش صحبت کنیم و یه شروع قدرتمند داشته باشین.
    calendly.com/t...

ความคิดเห็น • 55

  • @elhampaseban1612
    @elhampaseban1612 10 หลายเดือนก่อน +2

    سلام و سپاس.منظور از input_shape ک میگین ورودیهاست همون featureهاست؟

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  10 หลายเดือนก่อน

      بله
      اینجا منظور از سایز ورودی، همون سایز فیچرها هست

  • @MPar-dn2qv
    @MPar-dn2qv 9 หลายเดือนก่อน +1

    سلام
    من خیلی با اعداد بازی کردم و ارقام رو هی بالا پائین کردم ودیدم که هرچه تعداد batch_size کوچکتر باشه و همینطور هرچه epochs ها بیشترنتیجه بهتری بدست میاد
    من برای شبکه ساده (مدل 1) batch_size رو مساوی 1 قرار دادم و دیدم نقاط دقیقا رو نقاط خط اصلی (train) قرار گرفت.
    البته نیم ساعت طول کشید تا دستور fit اجرا شد که فکر میکنم مقداری از اون بخاطر اینه که آنلاین هست و اگر این دستورات local انجام بگیره و tensorflow رو روی کامپیوترشخصی نصب کنیم احتمالا با استفاده از Visual Studio زمان کمتری طول خواهد کشید ولی اگه حتی به هفت هشت دقیقه هم تنزل پیدا کنه باز خیلی زیاده و زمان بری برنامه مشکل اساسی خواهد بود
    حالا باید دید در ادامه چه راهکارهای دیگری پیش خواهد آمد و ادامه برنامه به چه صورت خواهد بود.

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  9 หลายเดือนก่อน +1

      خیلی خوبه که همه چیو تست میکنی
      موفق باشی

  • @hanaarghavani1354
    @hanaarghavani1354 4 หลายเดือนก่อน +1

    سلام وقتتون بخیر، چیزی که این جلسه فهمیدم اینه که ما باید همه لایه های هیدن و لایه خروجی رو تعریف کنیم، ولی جلسه قبلی شبکه ای ک ساختین لایه خروجی رو تعریف نکردین و ارروری هم نداشتیم. این امکان داره؟ میشه لایه خروجی رو تعریف نکرد؟ البته جلسه ثبل بجای دستور add برای اضافه کردن لایه ها از لیست داخل squential استفاده کردین.

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  4 หลายเดือนก่อน

      همیشه باید لایه خروجی رو تعریف کنیم
      جلسه قبل هم تعریف کردیم منتهی به یک شکل دیگر و بر اساس نوع کاربرد

  • @hanaarghavani1354
    @hanaarghavani1354 4 หลายเดือนก่อน +1

    من دقیقا عین شما همه مراحل رو رفتم فقط برای سامری مدل دوم برای شما اسم لایه ها dense_2 تا 6 بود ولی برای من زد dense-8تا 12؟ چرا؟ مرسی از وقتی که میزارید

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  4 หลายเดือนก่อน

      یکبار رفرش کنین کدتون رو و بعد ریستارت مجددا اجرا کنین

  • @amohammadimohammad5320
    @amohammadimohammad5320 5 หลายเดือนก่อน +1

    بسیار عالی و شفاف تدریس کردید. بینهایت ممنونم. واقعا چنین آموزشهایی نایاب هست! یه خواهش هم دارم ، اگه ممکنه روش ذخیره مدل را هم آموزش بدید تا هربار که میخواهیم ازش استفاده کنیم مجور نباشیم ترین کنیم! همچنین خیلی مهمه که ارتباط بینن مدل و دیتاهای جدید جهت پیش بینی رو هم یادبگیریم! یعنی بعد از ساخته شدن مدل چه جوری هر کاربری بتونه با یه محیط کاربری مناسب دیتای جدید با فرمت صحیح رو برای مدل بفرسته تا مدل پیش بینی کنه و جواب بده. باتشکر از آقای عباسی عزیز

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  5 หลายเดือนก่อน

      خواهش میکنم
      خوشحالم که از آموزشها راضی هستین
      جهت تهیه این آموزشها زحمت زیادی کشیده شده، ممنون میشم اگر حس میکنین مفید هستن با دوستانتون به اشتراک بذارین
      چه پیشنهاد خوبی، حتما اینکار رو خواهم کرد

  • @adwardwilson1857
    @adwardwilson1857 หลายเดือนก่อน +1

    سلام ، ضمن تشکر از چنل خوب و عالیتون ، سوالم اینه که چطور میتونیم تمریناتی مرتبط با اموزش هایی که ارائه دادید رو انجام بدیم ایا منبع یا وبسایت خاصی هست واسه این کار؟

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  หลายเดือนก่อน

      سلام دوست عزیز
      سلامت باشین
      در حال حاضر وب سایتی نداریم اما در دست بررسی هست و انشا الله سعی بر این هست که سریعتر این بخش به کانال اضافه بشه

  • @ahraz2620
    @ahraz2620 9 หลายเดือนก่อน +1

    سلام آقای عباسی میشه ازتون درخواست کنم راجب پاتورچ هم میشه ویدیو بسازید ممنون

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  9 หลายเดือนก่อน +1

      سلام دوست عزیز
      حتما اینکار رو خواهم کرد

  • @ahraz2620
    @ahraz2620 9 หลายเดือนก่อน +1

    آقای عباسی چرا واسه لالیه آخر تابع فعال ساز تعریف نمیکنیم؟

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  9 หลายเดือนก่อน

      بهتر هست که جلسه قبل رو مشاهده کنین. چون ما میخوایم عمل رگرسیون رو انجام بدیم اگر تابع فعالساز تعریف کنیم محدودیت برای خروجی در نظر گرفتیم که اینکار برای رگرسیون مناسب نیست

  • @Rel_axation
    @Rel_axation 10 หลายเดือนก่อน +2

    Thanks a lot.

  • @mitradadashi-p6c
    @mitradadashi-p6c 10 หลายเดือนก่อน +1

    amazing content, thank you!

  • @MohammadW-ez8ix
    @MohammadW-ez8ix 23 วันที่ผ่านมา +1

    عالی

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  21 วันที่ผ่านมา

      خواهش میکنم
      خوشحالم که از آموزشها راضی هستین
      جهت تهیه این آموزشها زحمت زیادی کشیده شده، ممنون میشم اگر حس میکنین مفید هستن با دوستانتون به اشتراک بذارین

  • @hadimahami3384
    @hadimahami3384 7 หลายเดือนก่อน +1

    با عرض خسته نباشید
    این این ویدیو یک ویدیوی کاملا غلط است. لطفا دقت بیشتری کنین، شما یهو اومدید یه چیزی گفتید که برای این موضوع بسیار پیش پا افتاده درست است. این در حالی هست که توی موضوع های پیچیده نمیشه اصلا از این حرفا زد. کلا اینطور جنرال صحبت کردن در مورد مدل های دیپ لرنینگ اشتباه محض هستش.
    من میتونم کلی مقاله درست و حسابی معرفی کنم که این حرف شما رو صد در صد نقض کنه.

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  7 หลายเดือนก่อน

      سلام دوست عزیز
      من خیلی موارد رو در این ویدیو مطرح کردم، دقیقا کدوم بخش ویدیو غلط هست؟ بفرمایید تا با هم یاد بگیریم 😊

    • @hadimahami3384
      @hadimahami3384 7 หลายเดือนก่อน

      @@TechWithHasanAbbasi 1) شما فرمودید که پس با تعداد لایه ها ما به دقت زیادی دست خواهیم یافت و یه اشاره ای کوتاه به بحث overfitting کردین، در حالیکه ما به هیچ وجه، به هیچ وجه بازم تاکید میکنم به هیچ وجه نمیتونیم به این وضوح اظهار نظر کنیم. شما بجای اینکه اینطوری به قضیه نگاه کنین، بنظرم بهتر بود که بگید کارکرد لایه ها چیه؟ (هر چقدر مساله پیچیده باشه، میتونه روابط رو بهتر یاد بگیره) و کارکرد نورون ها چیه؟ (میتونی ویژگی های بیشتری رو یاد بگیره) اینکه شما یک مساله بسیار بسیار ساده رو میارید اجرا میکنین و اینطوری نتیجه میگیرید بشدت اشتباهه
      2) ما تا کجا میتونیم تعداد لایه ها رو افزایش بدیم؟ اگر تعداد لایه های بیشتر منجر به دقت بیشتر میشه، پس چرا VGG نتونسته بیشتر از 20 لایه پیش بره؟ در حالیکه ResNet تا 300 لایه هم پیش رفته و دقت های خیلی خوبی گرفته و در مقاله Deep residual learning for image recognition شما میتونین علت این رو ببینین.
      اگر نیاز به توضیح بیشتر است بفرمایید تا بیشتر توضیح بدم🙂

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  7 หลายเดือนก่อน

      ممنون دوست عزیز@@hadimahami3384
      1. اگر این ویدیو و آموزشهای قبلی رو تماشا بفرمایید، من دقیقا مطرح کردم که توی ماشین لرنینگ همه چیز وابسته به اپلیکیشن مورد استفاده و مدل انتخابی هست! به این مسئله هم اشاره شده که برای کاربردهای ساده قرار نیست مدل پیچیده در نظر بگیریم!
      2. در مورد کاربرد لایه ها هم در جلسات بعدی همین دوره آموزشی و در ادامه در شبکه های کانولوشنی توضیح دادم. به همین دلیل فکر میکنم کسی که قرار هست با دیدن ویدیوها دید خوبی پیدا کنه، به هدفش میرسه
      3. اینکه شما میاین VGG رو با ResNet مقایسه میکنین اونم توی ویدیویی که قرار هست برای کسانی باشه که تازه قرار هست ماشین لرنینگ رو یاد بگیرن خیلی کار درستی نیست. چرا؟ چون ساختار شبکه فرق داره و ResNet با shortcut connectionها مسئله عمق زیاد رو حل کرده! بله اگر من میخواستم یه ویدیو داشته باشم که چطور میشه شبکه عمیق تری ساخت این مسئله رو توضیح میدادم.
      4. در حالت کلی کسی اینجا قانون کلی صادر نکرده، هیچ وقت قانون کلی صادر نمیشه کرد (حتی اگر دوره قبلی رو مشاهده بفرمایید من بارها به این مسئله تاکید کردم)، اینکه یک ویدیو از انبوه ویدیوهای دوره رو ببینین و بگین غلطه خیلی کار جالبی نیست.
      5. مسئله دیگه بسته به نوع نگاه آدما داره! شما میتونین با توضیح یک مثال سخت کاری کنین که همه از اون حوزه زده بشن، میتونین هم با یک مثال ساده بخش بزرگی از مسئله رو توضیح بدین. من ترجیحم حالت دوم هست.
      در حالت کلی بازم ممنونم و بله شما درست میفرمایید، هیچ وقت نمیشه قانون کلی صادر کرد و به صورت کلی در مورد تمامی مدلها صحبت کرد. من هم فکر کنم در انتهای این ویدیو و سایر ویدیوها به این مسئله اشاره کردم. اینجا هم هدف آموزش به مردم ایران هست، پس ممنون میشم با این علمی که دارین بقیه ویدیوها رو مشاهده بفرمایید و اگر جایی اشتباه بود بگین تا مثل این کامنت بیشتر بحث بشه و کسایی که واقعا دوست دارن مسئله رو بهتر و عمیقتر یاد بگیرن یا حداقل با کلید واژها برای سرچ بیشتر آشنا بشن.

    • @hadimahami3384
      @hadimahami3384 7 หลายเดือนก่อน

      آقای عباسی عزیز، شما با این نوع تولید محتوا، بیشتر به خواننده جهت میدید، عنوان ویدیوی شما چیه؟ شبکه عمیق خوبه یا معمولی؟ با یک مساله بسیار ساده میاید یه نتیجه ای میگیرید که اگر این مساله رو حتی یکم تغییر بدیم ممکنه نتیجه برعکس بشه. شما دارید عملا این القا میکنین که با در نظر گرفتن هر چیزی، هر پارامتر و هایپرپارامتری، هر نوع مساله ای در نهایت شبکه عمیق بهتره. اگر این رو قبول ندارید، من حرفی ندارم واقعا. سر بحث منم اینه که نمیشه مقایسه به این شکل انجام بدیم@@TechWithHasanAbbasi

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  7 หลายเดือนก่อน +1

      فکر میکنم توضیحاتی که دادم (چه در ویدیو، چه در کامنتها) کاملا واضح هست
      ممنون بابت وقتتون
      موفق باشید

  • @MaryamFaramarz
    @MaryamFaramarz 9 หลายเดือนก่อน +1

    عالی بود، ممنون

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  9 หลายเดือนก่อน

      خواهش میکنم، خیلی خوشحالم که از آموزشها راضی هستین
      جهت تهیه این آموزشها زحمت زیادی کشیده شده، به همین خاطر ممنون میشم اگر از آموزشها راضی هستین، با دوستانتون به اشتراک بذارین

  • @MaryamFaramarzQaramaleki
    @MaryamFaramarzQaramaleki 10 หลายเดือนก่อน +1

    عالی بود، ممنون

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  8 หลายเดือนก่อน

      خواهش میکنم، خوشحالم که آموزشها مفید هست

  • @alirezagx26
    @alirezagx26 2 หลายเดือนก่อน +1

    You are the best

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  2 หลายเดือนก่อน

      Glad you think so!
      Thank you for your support!

  • @ZeinabHashemifard
    @ZeinabHashemifard 7 หลายเดือนก่อน +1

    Thanks

  • @atf-yh8uz
    @atf-yh8uz 10 หลายเดือนก่อน +1

    😍😍😍

  • @Sara_MUA
    @Sara_MUA 10 หลายเดือนก่อน +1

    👌👌👌

  • @amindrh6851
    @amindrh6851 8 หลายเดือนก่อน +1

    damet garm

  • @hosseindr.askari6161
    @hosseindr.askari6161 10 หลายเดือนก่อน

    Like always great video 😀

  • @mehdismaeili3743
    @mehdismaeili3743 10 หลายเดือนก่อน +2

    Excellent.

  • @alirezagx26
    @alirezagx26 2 หลายเดือนก่อน

    Thanks a lot

  • @hessam6271
    @hessam6271 10 หลายเดือนก่อน +2

    Your teach is nice.

  • @TLblue-ni4ub
    @TLblue-ni4ub 10 หลายเดือนก่อน +1

    عالی بود، منتظر قسمت های بعدی هستیم.

    • @TechWithHasanAbbasi
      @TechWithHasanAbbasi  10 หลายเดือนก่อน

      خواهش میکنم، خوشحالم که از آموزشها راضی هستین
      ممنون میشم اگر از آموزشها راضی هستین، با دوستانتون به اشتراک بذارین