درباره دوره:
مدل flexbox یا جعبه انعطافپذیر در CSS یک مدل چیدمان تکبعدی است که دارای طرحبندیهای انعطافپذیر و کارآمد با فضاهای توزیعشده بین آیتمها برای کنترل ساختار همترازی آنها است، یعنی یک مدل چیدمان است که روشی آسان و تمیز برای چیدمان آیتمها در داخل ارائه میکند. Flexbox میتواند برای ایجاد طرحبندی در مقیاس کوچک مفید باشد و پاسخگو و سازگار با موبایل است. در دوره آموزش فلکس باکس شما یاد خواهید گرفت که چطور با این تکنولوژی در طراحیهای خود کار کنید و آنها را از هر لحاظ انعطافپذیر کنید.
CSS مخفف عبارت Cascading Style Sheets است. اینیک زبان شیوهنامه است که برای توصیف ظاهر و قالببندی یک صفحه در یک زبان نشانهگذاری استفاده میشود. اینیک ویژگی اضافی برای HTML فراهم میکند. CSS بهطورکلی با HTML برای تغییر سبک صفحات وب و رابط کاربری استفاده میشود.
قبل از اینکه به سراغ معرفی دوره آموزش فلکس باکس رایگان مکتب خونه برویم ابتدا اجازه دهید کمی در رابطه با این تکنولوژی و جنبههای مختلف آن صحبت کنیم.
Flexible boxes که با نام CSS Flexbox نیز شناخته میشود، یک حالت طرحبندی جدید در CSS پیشرفته است. فلکس باکس برای ایجاد رفتار قابل پیشبینی المانها در اندازههای مختلف صفحهنمایش و دستگاههای نمایش متفاوت استفاده میشود. راه کارآمدتری برای چیدمان، تراز و توزیع فضا بین اقلام موجود در کانتینر فراهم میکند.
فلکس باکس عمدتاً برای ساختن CSS3 استفاده میشود که بتواند عرض و ارتفاع اقلام خود را به بهترین شکل برای همه فضاهای موجود تغییر دهد و این مدل بر مدل بلوک ترجیح داده میشود. در دوره آموزش فلکس باکس ما با جنبههای مختلف این طرحبندی آشنا خواهیم شده و بهصورت پروژه محور آن را به کارخواهیم برد.
همانطور که گفتیم فلکس باکس یک الگوی چیدمان یکبعدی است که طراحی پوستههای انعطافپذیر و مؤثر را آسان میکند. استفاده از flexbox تضمین میکند که عناصر بهدرستی قرارگرفته و قابل پیشبینی هستند. اقلام فلکس در داخل یک کانتینر فلکس در امتداد یک خط فلکس قرار میگیرند. بهطور پیشفرض، تنها یک خط انعطافپذیر در هر کانتینر فلکس وجود دارد.
در دوره آموزش فلکس باکس شما بهصورت واضع و عملی به مزایای این طرحبندی پی خواهید برد.
فلکس باکس ویژگیهای زیاد و منحصربهفردی دارد که ازجمله مهمترین آنها میتوان به موارد زیر اشاره کرد:
قبل از مدل flexbox، ما 4 حالت چیدمان داشتیم:
2 جزء اصلی Flexbox وجود دارد:
در دوره آموزش فلکس باکس بهصورت تخصصی این موارد پوشش دادهشده است.
برای دوره آموزش فلکس باکس لازم است که قبل از دیدن دوره و بهعنوان یک پیشنیاز با اصلاحات رایج در آن آشنا شوید. پس بیایید خود را با اصطلاحات اساسی که در فلکس باکس رایج است آشنا کنیم.
فلکس باکس خواص زیادی دارد که از مهمترین آنها میتوان به موارد زیر اشاره کرد:
یکی از بهترین دورههای آموزش فلکس باکس به زبان فارسی دوره رایگان فلکس باکس مکتب خونه است که بهصورت تخصصی و با زبانی شیوا و رسا به تفهیم مسائل مربوط به فلکس باکس میپردازد.
در دوره رایگان آموزش فلکس باکس شما کار با جنبههای مختلف این نوع طرحبندی را یاد خواهید گرفت. همچنین برخی از ویژگیهای flexbox را که در کار با عناصر flex مفید هستند و نحوه استفاده از آنها برای دستیابی به نتایج مختلف در CSS را یاد میگیرید.
Flexbox یک روش طرحبندی تکبعدی برای چیدمان آیتمها در سطرها و ستونهای مشخص است. فلکس باکس در واقع کلاسی است که در CSS3 آورده شده و میتواند مشکلات رایج در استفاده از کدهای float را رفع کند.
درواقع در گذشته از جدولها (table) برای طرحبندی استفاده میشد که به هیچوجه ابزار مناسبی برای این کار نبودند. سپس float و positioning به وجود آمدند که نسبت به جدولها ابزارهای سازگارتری بودند، اما بازهم محدودیتها و مشکلات خاص خودشان را داشتند. سرانجام flexbox توانست بر تمام این مشکلات غلبه کرده و طراحی سایت را به کاری لذتبخش تبدیل کند.
در دوره آموزش Flexbox ابزارها و کدهایی به شما آموزش داده میشود که میتوانید با کمک آنها بهراحتی سایتهای زیبا، رسپانسیو و جذاب طراحی کنید.
با استفاده از فلکس باکس میتوانید کارهای زیر را بهراحتی و بدون دردسر انجام دهید:
در دوره آموزش Flexbox در css بهجای آموزش پراپرتیهای فلکس باکس، موارد کاربردی آن را در قالب پروژه و بهصورت عملی به شما آموزش میدهیم؛ بنابراین این دوره یک دوره کاملاً کاربردی است که تمام نکات مربوط به فلکس باکس را در حین انجام پروژه به شما عزیزان آموزش میدهد.
کسانی که به HTML & CSS مسلطاند و میخواهند مهارتهای خود را ارتقا دهند.کسانی که به ساخت وبسایتهای واکنشگرا و جذاب علاقهمندند.کسانی که قصد دارند تجربه کاربری سایت خود را بهبود بخشند.برنامهنویسانی که در اوایل مسیر طولانی طراحی سایت قرار دارند.
آموزش HTML & CSS و همچنین فلکس باکس مهارتهای ابتدایی طراحی سایت است. اگر قصد دارید در این زمینه به پیشرفتهای چشمگیری دست پیدا کنید و مهارتهای طراحی سایت خود را افزایش دهید، از دورههای آموزشی زیر میتوانید بهعنوان منابع مکمل بهره ببرید:
طراحی یک سایت رسپانسیوطراحی بخشهای مختلف یک سایت از جمله هدر، فوتر، navbar، ارتباط با ما و غیره.قراردادن background image و ویو پورتهمترازسازی عناصرتنظیم فونت، سایز و رنگ متنهاکار با مدیا کوئریها آشنایی با انواع کلاسهای فلکس باکس
دورههای آموزش برنامهنویسی زیادی برای طراحی سایت وجود دارند که هیچکدام از آنها بهاندازه کافی به فلکس باکس آنچنان که باید نپرداختهاند.
اگر به فکر ارتقای مهارتهای خود در طراحی سایت هستید، بدون شک آموزش فلکس باکس در این رابطه به شما خیلی کمک خواهد کرد. استفاده از فلکس باکس در طراحیها به شما قدرت بیشتری در اعمال انعطافپذیری میدهد.
آموزش برنامه نویسی اندروید
آموزش رایگان html و css
فصل اول: آشنایی با FlexBox:
1 - FlexBox چیست؟
2 - Flex و Flex Direction
3 - Flex Wrap و Flex Flow
4 - Justify Content
5 - Align و Order
فصل دوم: پروژه FlexBox:
1 - معرفی و آماده سازی پروژه
2 - ایجاد Header
3 - ایجاد Section ها
4 - ایجاد Contact و Footer
5 - Responsive پروژه برای دیوایس ها WideScreen
6 - پروژه Responsive برای موبایل
درباره دوره:
اسکرچ جونیور یک زبان برنامهنویسی برای کودکان ۴ تا ۹ سال است. با استفاده از این زبان برنامهنویسی کودک میتواند بلوکها را کنار هم بچیند و یک بازی یا انیمیشن درست کند.
اسکرچ جونیور به کودک کمک میکند تا مفاهیم برنامهنویسی را یاد بگیرد سناریو را خودشان طراحی کنند و بازی و انیمیشن مطابق سناریو خودشان بسازند.طراحی سناریو، بازی و انیمیشن باعث افزایش اعتمادبهنفس و تقویت مهارت تفکر خلاق و انتقادی و تقویت مهارت حل مسئله است که در این دوره از مجموعه دورههای آموزش اسکرچ مکتب خونه به آن پرداخته شده است.
اسکرچ جونیور یک زبان برنامه نویسی جذاب است که به کودکان اجازه میدهد تا بازیها و داستانهای ذهنی خود را با آن پیادهسازی کنند. با توجه به تأثیر مثبت برنامه نویسی روی ذهن و قدرت خلاقیت کودک، آموزش اسکرچ جونیور بسیار پرطرفدار و مهم است.
اسکرچ جونیور (scratch junior) یک پلت فرم برنامه نویسی است. نام این نرم افزار از «اسکراچ» برگرفته شده که یک زبان برنامه نویسی کودکانه است. نرم افزار اسکرچ جونیور، در واقع برای برنامه نویسی با اسکرچ برای کودکان (از سن ۵ سال به بالا) طراحی شده است.
زبان اسکرچ، مبتنی بر بلوک است. یعنی کودک میتواند با جابهجایی بلوکها و عناصر، یک شخصیت، صدا و یا داستان ویژه بسازد. توجه داشته باشید که پلت فرم اسکرچ جونیور، رابط کاربری بسیار سادهای دارد و برای کودکان ۵ سال به بالا (معمولاً ۵ تا ۷ سال) توصیه میشود.
آموزش اسکرچ جی آر، به تمام کودکانی توصیه میشود که دوست دارند مفاهیم برنامه نویسی را یاد گرفته و با آن کار کنند. افراد خلاقی که در ذهن خود ایدههای فراوانی دارند، افرادی که عاشق بازی و انیمیشن هستند و افرادی که به کارهای کامپیوتری و کدنویسی علاقه نشان میدهند، از مخاطبین آموزشهای scratch junior خواهند بود.
هر فردی با یادگیری برنامه نویسی، مهارتهای بسیار زیادی برای ورود و حضور در دنیای کامپیوتری و نرم افزاری بهدست خواهد آورد. علاوه بر آن، برنامه نویسی از جمله مهارتهایی است که خواص خود را در تقویت ذهن و قدرت حل مسأله در زندگی، به نمایش خواهد گذاشت. تمام اینها سبب خواهند شد تا دیدگاهی متفاوت و مثبت به یادگیری مفاهیم برنامه نویسی داشته باشیم.
کودکان نیز از این قاعده مستثنی نیستند. آنها نیاز دارند تا مهارتهای ضروری برای بقا در عصر حاضر را یاد بگیرند. باید کودکان را آموزش داد که مهارتهای رایانهای جزو ضروریترین نیازها هستند. آنها باید بفهمند که چطور میتوانند مهارتهای مفید و کاربردی کامپیوتر را یاد بگیرند و چطور از آن استفاده کنند.
کدنویسی و آشنایی با مفاهیم برنامه نویسی سبب رشد مهارتهای ریاضی و منطقی در کودک میشود. این موضوع، به کودک اجازه میدهد تا فرصت بیشتری برای بروز خلاقیت داشته باشد. او با تکنیکهای حل مسأله آشنا شده و یاد میگیرد که چطور بهتر فکر کند. علاوه بر آن، دنیای برنامه نویسی و آموزشهای کامپیوتری میتوانند سرگرمی سالم و مفیدی برای این گروه سنی بهحساب آید.
از سوی دیگر، این آموزشها میتواند تلنگری برای تعیین مسیر حرفهای در آینده باشد. کودکان با یادگیری برنامه نویسی و مفاهیم مربوط به آن، میتوانند برا اشتغال در حرفهی کامپیوتر آماده شوند. باتوجه به اهمیت این رشته، میتوان آیندهی شغلی خوب و درآمد معقولی را برآورد نمود.
رابط کاربری بسیار ساده و جذاب اسکرچ جی آر، سبب میشود تا کودکان به خوبی متوجه فهم کار با این پلت فرم شوند. این رابط ساده، به کودک کمک میکند تا آنچه در ذهن دارد را به نحو احسن، پیادهسازی کند؛ با اینکه هنوز مهارتی برای خواندن و نوشتن ندارند.
این موضوع، سبب تقویت قدرت تفکر منطقی کودک میشود. از سوی دیگر، کودک خلاقیت بیشتری را برای ساخت بازی و داستان بهخرج میدهد که هم به منظور سرگرمی و هم به منظور افزایش قدرت ذهن، مؤثر و مفید خواهد بود.
تقویت ذهن و خلاقیت کودک سبب میشود تا درک مسائل مختلف برای وی راحتتر باشد. در نتیجه به نسبت همسن و سالان خود، فرصتهای بیشتری را در مسیر تحصیلی و شغلی آینده بهدست میآورد. این امر منجر به افزایش اعتماد به نفس کودک و توانایی استفادهی او از تکنولوژی میگردد.
بهطور کلی نرم افزار اسکرچ جونیور برای برنامه نویسی و کدنویسی ایجاد شده است. منتهی کاربری این برنامه آنقدر ساده و جذاب است که حتی کودکان کم سن و سال (بدون سواد خواندن و نوشتن) هم میتوانند از آن استفاده کنند. بعد از آموزشهای کار با این نرم افزار، میبایست مهارتهای زیر ایجاد شده باشد.
• خلق شکلک دلخواه
• حرکت دادن شکلکها
• نمایش شکلکها به صورتهای مختلف
• گفتوگو و صداگذاری روی شکلکها
• حذف شکلکها
• توقف در صحنه، شروع و پایان آن
• رفتن به صحنهی بعدی
• انجام دستورات تکراری
خوشبختانه نرم افزار اسکرچ جونیور برای تمام دستگاههای اپل (بهجز آيفون)، اندروید، گوگل و آمازون در دسترس است. حتی خبر خوش اینکه این برنامه کاملاً رایگان است. بنابراین مشکلی با تهیهی نرم افزار و استفاده از آن نخواهید داشت.
برای یادگیری اسکرچ جونیور، میتوانید ابتدا دانلود اسکرچ جونیور مناسب برای دستگاه خود را انجام دهید. بعد از آن، نوبت به نصب اسکرچ جونیور میرسد. شما میتوانید از منابع مختلفی، این نرم افزار را روی دستگاه نصب نمایید.
محیط کاربری اسکرچ جونیور بسیار ساده است و به همین دلیل اغلب کودکان، با مشاهدهی محیط و تجربهی عملی، میتوانند کار با آن را یاد بگیرند. با اینحال، میتوان از انواع منابع برای آموزش scratch junior نیز استفاده کرد. مشاهدهی ویدیوهای آموزش اسکرچ جونیور در کامپیوتر و یا مطالعهی منبع آموزش اسکرچ جونیور pdf میتواند مفید باشد. بعد از اتمام آموزش مباحث مقدماتی، شما میتوانید از منابع مختلف، آموزش اسکرچ جونیور پیشرفته را دنبال کنید.
با توجه به اینکه این برنامه برای کودکان نوشته شده است، دستورالعملهای اجرای یک پروژه بسیار ساده است. در زیر، مراحل برنامه نویسی اسکرچ جونیور ذکر شده است.
۱- دانلود برنامهی اسکرچ جونیور از طریق سایت آن به آدرس scratchjr
۲- نصب نرم افزار روی دستگاه مورد نظر
۳- راهاندازی و اجرای اسکرچ جونیور
۴- مطالعهی دستورالعمل راهنما با کلیک روی آیکون علامت سؤال
۵- ورود به برنامه و رفتن به محیط برنامهسازی با کلیک روی آیکون خانه
۷- تنظیم صحنه (ایجاد پس زمینه و سفارشی سازی آن)
۸- پیادهسازی شخصیتها (sprites) و کلیت پروژهی مورد نظر
۹- کار با بلوکهای کدگذاری در اسکرچ جونیور
نکته: برای یادگیری ابزارهای اسکرچ جونیور، بهتر است تا آموزشها را از طریق دوره آموزش scratch junior بهصورت آنلاین و مجازی، دنبال کنید. شما میتوانید آموزشهای پروژه محور مانند آموزش ساخت بازی با اسکرچ جونیور را انتخاب کنید تا ایدهی ساخت بازی و پروژه در اسکرچ جونیور به تقویت خلاقیتتان کمک کند. حتی منابع فراوانی برای آموزش اسکرچ جونیور با گوشی وجود دارد که برای کار با اسکرچ جونیور روی گوشی مفید است.
زبان اسکرچ، مبتنی بر بلوک است. لذا شما برای کار با آن، باید با بلوکها آشنا شده و ویژگیهای هر یک را بدانید. در نرم افزار اسکرچ جی آر، شش نوع بلوک برنامه نویسی داریم که عبارتند از:
• بلوک شروع
این بلوک که با دکمهی زردرنگ نشان داده میشود، کد را شروع میکند و میتوان به دیگر اسکریپتها، پیامهایی را ارسال کرد.
• بلوک حرکت
بلوک حرکت یک بلوک آبی رنگ با علامت فلش به راست روی آن است. این بلوک برای مدت زمان حرکت شخصیتی که در scratch jr ایجاد کردهایم، تغییر زاویهی آن، محل حرکت و غیره کاربرد دارد.
• بلوک ظاهر
این بلوک آیکون یک انسان و زمینهی بنفش رنگی دارد. این بلوک برای نمایش و ظاهر استفاده خواهد شد.
• بلوک صدا
این بلوک برای صداگذاری روی سناریو و پروژه استفاده میشود. بلوک صدا آیکون بلندگو داشته و با رنگ سبز مشخص شده است.
• بلوک کنترل
این بلوک به شما اجازه میدهد تا یک اسکریپت و یا بخشی از آن را به تعداد دفعات، تکرار کنید. بلوک کنترل نارنجی رنگ است.
• بلوک پایان
از بلوک پایان برای زمان پایان اسکریپت استفاده میشود. این بلوک رنگ قرمز دارد.
با توجه به اینکه نرم افزار scratch jr برای برنامه نویسی کودکان طراحی شده است، مباحث دورهی آموزشی آن نیز ویژهی کودکان است. با توجه به سطح سواد کودکان (که در سنین پایینتر، حتی سواد نوشتاری و خواندن را هم شامل نمیشود) مباحث این دوره به طرز کاملاً ساده بیان شده است. این آموزشها، هیچ پیش نیازی را شامل نمیشود.
در این دورهی آموزشی که برای کودکان ۵ سال به بالا طراحی شده است، شما کار با نرم افزار scratch jr را یاد میگیرید. ابتدا با محیط برنامه آشنا شده و یاد میگیرید که چطور با استفاده از بلوکها، ایدهی ذهنی خود را پیادهسازی کنید. این ایدهی ذهنی میتواند در قالب یک بازی، یک انیمیشن و یا سناریوی دیگر باشد.
این دوره به کودکان کمک میکند تا با مفاهیم پایه در برنامه نویسی آشنا شده و بتوانند بازی دلخواه خود را پیادهسازی کنند. این امر، سبب افزایش خلاقیت، بهبود ذهن، تقویت مهارت تفکر و نهایتاً افزایش اعتماد به نفس کودک خواهد شد.
تمرینهای متعددی که در متن آموزشی این دوره، نهاده شده است به کودک توانایی کار عملی با این برنامه و ساخت انیمیشنهایی مانند انیمیشن مدرسه، انیمیشن قورباغه و پروانه، چراغ راهنمایی و رانندگی، رفتن به مکانهای مختلف و غیره را میدهد.
اگر برای یادگیری کار با نرم افزار اسکرچ جی آر، از دورههای آموزشی استفاده میکنید؛ بهتر است تا سرفصلهای آموزش را بررسی کنید. یک دورهی آموزشی خوب و کامل، میبایست سرفصلهای جامع را پوششدهی کرده باشد. در فهرست زیر، مهمترین سرفصلهای آموزش نرم افزار اسکرچ جونیور عنوان شده است.
• مقدمهی اسکرچ جونیور و معرفی برنامه
• دانلود و نصب scratch jr
• معرفی محیط برنامه و بلوکها
• آشنایی با بلوکهای حرکت در اسکرچ جونیور
• بلوکهای شیء
• بلوکهای کنترل
• بلوکهای اتمام
• بلوک صدا
• بلوک شروع
• اجرای چند انیمیشن در scratch jr
مدت زمان آموزشهای scratch jr در دورهی مکتب خونه، حدود ۱ ساعت است. بعد از تماشای هر ویدیو، تمارین و پروژههایی بهصورت عملی انجام میشود که برای تسلط به مفاهیم آن درس در نظر گرفته شده است. بنابراین مدت زمان کل این آموزش، بسته به سرعت یادگیری و تمرین کودک میتواند متفاوت باشد.
برای یادگیری کار با پلت فرم اسکرچ جونیور، میتوانید از آموزشهای مکتب خونه استفاده کنید. این دورهی آموزشی با هدف یادگیری صفر تا صد نرم افزار scratch jr تدوین شده است. زبان آموزش بسیار ساده و روان است و مناسب کودکان با هر سطح سواد و بدون هیچ پیش نیاز خاصی، خواهد بود.
آموزش اسکرچ جونیور، کمک میکند تا کودکان بتوانند در محیط ساده و مبتنی بر بلوک آن، ایدههای خود را در قالب انیمیشن، بازی و یا دیگر سناریوها پیادهسازی کنند. آشنایی با مفاهیم برنامه نویسی برای کودکان فواید بیشماری دارد که تقویت ذهن و افزایش اعتماد به نفس در رأس آن است. همچنین در مکتب خونه انواع دوره آموزش برنامه نویسی و آموزش برنامه نویسی کودکان و نوجوانان به عنوان مکمل و پیش نیاز این دوره موجود است.
مقدمهای بر اسکرچ جونیور:
1 - معرفی نرمافزار اسکرچ جونیور
2 - نقاشی در اسکرچ جونیور
3 - شروع بلوک نویسی در اسکرچ جونیور
4 - دانلود و نصب اسکرچ جونیور
5 - تمرین در منزل
بلوکهای حرکت در اسکرچ جونیور:
1 - بلوکهای حرکت
2 - ایجاد یک پروژه با بلوکهای حرکت
3 - تمرین در منزل
بلوکهای ظاهر:
1 - گفتگو و کلیک روی شی
2 - بزرگ و کوچک کردن شی و نمایش و مخفی
3 - تمرین در منزل
بلوکهای کنترل:
1 - استراحت
2 - سرعت
3 - تکرار
4 - تمرین در منزل
بلوکهای پایان:
1 - تکرار بی نهایت
2 - بلوک اتمام
3 - عوض شدن صحنه
4 - تمرین در منزل
بلوک صدا:
1 - ضبط صدا
2 - تمرین در منزل 1
3 - تمرین در منزل 2
بلوک رویداد شروع:
1 - رویداد برخورد
2 - بلوک ایست
3 - ارسال و دریافت پیام
4 - تمرین در منزل
انیمیشنها:
1 - انیمیشن اقیانوس
2 - انیمیشن مدرسه - بخش اول
3 - انیمیشن مدرسه - بخش دوم
4 - قورباغه و پروانه
5 - چراغ راهنمایی و رانندگی
6 - انیمیشن رفتن به مکانهای مختلف - بخش اول
7 - انیمیشن رفتن به مکانهای مختلف - بخش دوم
سخنی با والدین:
1 - سخنی با والدین
درباره دوره:
در دوره Intermediate Python، شما با ویژگیهای کلیدی پایتون برای ساخت برنامههای واقعی آشنا خواهید شد. در این دوره، از لیست کامپری هنشنها برای دستکاری حجمهای بزرگداده استفاده خواهید کرد و با اصول برنامهنویسی شی گرا در پایتون آشنا خواهید شد. همچنین، نحوه مدیریت خطاها، استفاده از کتابخانهها و ماژولهای خارجی، و بهرهبرداری از فریمورکهای وب برای ساخت یک برنامه وب پایتون را یاد خواهید گرفت.
این دوره به شما کمک میکند تا مفاهیم اساسی پایتون را به کار ببرید و مهارتهای لازم برای ساخت برنامههای پیچیده و کاربردی را کسب کنید. با پایان دوره، شما قادر خواهید بود با استفاده از ابزارها و تکنیکهای پیشرفته پایتون، برنامههای واقعی و مؤثری ایجاد کنید و با چالشهای مختلف در توسعه نرمافزار مواجه شوید. همچنین در مکتب خونه انواع دوره آموزش پایتون و آموزش برنامه نویسی به عنوان مکمل و پیش نیاز این دوره موجود است.
مقدمه:
1 - مقدمه و پیشنیازها
2 - REPL و اجرای پایتون در VS Code
3 - مقدمه به دوره
4 - فلسفه پایتون
5 - تبدیل بین انواع داده
6 - تمرین: تبدیل بین انواع داده
Comprehensions:
1 - Comprehensions لیست
2 - شرطها
3 - عملیات بر روی لیستها
4 - مجموعهها و دیکشنریها
5 - بیانهای تولیدکننده
6 - برش لیستها
7 - تابع zip
8 - تمرین: Comprehensions، برش، و تابع zip
برنامهنویسی شیگرا:
1 - برنامهنویسی شیگرا
2 - کلاسها
3 - نمونههای کلاس
4 - متد اولیهساز
5 - متدهای کلاس
6 - انواع، isinstance، و issubclass
7 - متدهای جادویی: str و repr
8 - وراثت
9 - تمرین: کلاسها
10 - تمرین: وراثت
11 - مرور متدهای جادویی
استثناها:
1 - انواع استثناها
2 - Try Except
3 - ویژگیهای خاص خطا
4 - استثناهای سفارشی
5 - کاربرد استثناهای سفارشی
6 - تمرین: استثناها
کتابخانهها و ماژولها:
1 - کتابخانهها و ماژولها
2 - وارد کردن ماژولها
3 - استفاده از بستههای خارجی
4 - تمرین: کتابخانه استاندارد
5 - خط فرمان
تست:
1 - تستنویسی در پایتون
2 - تست واحد
3 - ادعاهای TestCase و کتابخانههای تست
4 - تمرین: تست واحد
فریمورکهای وب:
1 - فریمورکهای وب
2 - سلام دنیا با Flask
3 - مسیریابی
4 - قالبها و منابع دیگر
5 - آمادهسازی تمرین Flask
6 - تمرین: اپلیکیشن Flask
7 - خلاصه Flask
جمعبندی:
1 - جمعبندی
درباره دوره:
ASP.NET Core MVC یک فریمورک توسعه برنامه وب است که توسط شرکت مایکروسافت طراحی و عرضه شده است. در واقع، میتوان گفت یک چارچوب برای ساخت برنامههای وب و API با استفاده از الگوی طراحی Model-View-Controller است. از ASP.NET Core MVC برای ساخت سایتهایی با امنیت بالا استفاده میشود که متنباز بوده و یکی از جدیدترین فریمورکهای ساخت سیستمهای وب است.
در این دوره کاربردی قصد داریم با ایجاد یک پروژه جدید ASP.NET Core 3.1 MVC در ویژوال استودیو آموزش خود را شروع کنیم. ابتدا یک توضیحات کلی در مورد نحوه نصب و قابلیتهای این فریمورک میدهیم. در این دوره از بهترین تکنیکهای کدنویسی و ریفکتور استفاده میکنیم که حاصل تجربه سالها برنامهنویسی است. این یکی از حرفهایترین و کاملترین دورههای آموزش ASP.NET Core در بستر وب است که در ۱۴ ساعت به آموزش طراحی سایت با ASP.NET Core 3.1.5 پرداخته و به صورت پیشرفته شما را برای ورود به بازار کار طراحی برنامههای تحت وب آماده میکند.
آنچه در آموزش ASP.NET Core 3.1 MVC جهت ورود به بازار کار خواهید آموخت:
مفاهیم پایه:
1 - مقدمه ASP.NET Core و پیشنیازها
2 - نحوه نصب NET Core
3 - ساختار NET Core و ایجاد اولین پروژه
4 - ساختن Controller
5 - Anchor Tag
6 - ساختار عملیات HTML Method - CRUD
7 - متدهای GET و POST
8 - افزونه ReSharper
ارسال اطلاعات از Controller به View:
1 - ViewBag
2 - ViewData
3 - TempData
4 - ViewModel
مینی پروژه ماشین حساب:
1 - مینی پروژه ماشین حساب
2 - اصلاح (refactor) کدهای مینی پروژه ماشین حساب
Session:
1 - Session
Cookies:
1 - Cookies
Generics:
1 - تعریف Generic Class و Generic Type
2 - Generic Types
3 - Generic Constraints
الگوهای طراحی Design patterns در ASP.NET Core:
1 - IOC
2 - Dependency Injection
3 - In Memory User Access Services
4 - Repository patterns
5 - Generic Repository
Actions:
1 - Actions - بخش اول
2 - Actions - بخش دوم
اجزای صفحه frontend:
1 - Layouts
2 - ViewComponent
3 - نمونه تمرینی ViewComponent
دستورات موازی:
1 - Async
2 - Cancellation Token
Middleware:
1 - Middleware - بخش اول
2 - Middleware - بخش دوم
مینی پروژه File Uploader:
1 - بخش اول مینی پروژه
2 - اصلاح کد (refactoing)
3 - افزودن لیست فایلهای آپلود شده
App Setting:
1 - فایل AppSetting
Authorization & Login:
1 - Login Page
2 - Web Authorize system - بخش اول
3 - Web Authorize system - بخش دوم
4 - NET Core Identity Service
Auto Mapper:
1 - AutoMapper Service
تنظیمات چندین محیط اجرایی همزمان:
1 - Multi Environment Configuration
کار با دیتابیس:
1 - Entity Framework Core
2 - Unit of Work Pattern
3 - Repository Pattern in EF Core
4 - Services Patterns
5 - CRUD Actions
6 - نکات پایانی دیتابیس
7 - معرفی نمونه کامل سیستم های ASP.NET Core
Web Sockets:
1 - معرفی WebSockets
2 - مفاهیم پایه WebSockets
3 - مفاهیم برنامه نویسی موازی Asynchronous
4 - Array Segments
5 - ایجاد اولین پروژه WebSocket - تنظیمات اولیه
6 - ایجاد اولین پروژه WebSocket - نحوه اتصال
7 - ایجاد اولین پروژه WebSocket - تنظیمات اتصال و بستن کانکشنها
8 - مینی پروژه چت همزمان با WebSocket - بخش اول
9 - مینی پروژه چت همزمان با WebSocket - بخش دوم
10 - مینی پروژه چت همزمان با WebSocket - بخش سوم
11 - مینی پروژه چت همزمان با WebSocket - ارسال فایل در چت، بخش اول
12 - مینی پروژه چت همزمان با WebSocket - ارسال فایل در چت، بخش دوم
13 - تیمپلیتهای مناسب برای استفاده در پروژههای webSocket
درباره دوره:
طی دهههای اخیر، با ظهور یوتیوب، آمازون، نتفلیکس و بسیاری از وب سرویسهای دیگر، سیستم های پیشنهاد دهنده جایگاه ویژهای در زندگی ما پیدا کردهاند. کاربرد اینگونه سیستمها در خدمات متنوعی از جمله تجارت الکترونیکی، تبلیغات آنلاین و حتی سفرهای آنلاین رومزه غیرقابل انکار است.
وقتی یک محصولی را به صورت آنلاین خریداری میکنید، ممکن است مقالاتی به شما پیشنهاد داده شود؛ یا حتی وقتی در اینترنت در حال گشتوگذار هستید، مطالبی مناسب با شما و طبق ترجیحاتتان برایتان نمایش داده میشود. این قبیل موارد که هر روزه با آنها مواجه هستید، با کمک Recommender System ها امکانپذیر است.
با توجه به اهمیت سامانههای پیشنهاد دهنده در دنیای امروز، تصمیم گرفتیم دورهای برای آموزش سیستم توصیهگر (Recommender Systems) طراحی کنیم. در این دوره بعد از معرفی این سیستمها به روش ساخت آنها با استفاده از تکنیکهای مدرن هوش مصنوعی و یادگیری ماشین هم میپردازیم.
طی این دوره با مقدمات و مفاهیم بازیابی اطلاعات (Information Retrieval) و سامانههای توصیهگر، لزوم طراحی و استفاده از آنها در وبسایتها و اپلیکیشنها و تاثیر این سامانهها بر افزایش نرخ تبدیل (Conversion Rate) در کسبوکارهای آنلاین آشنا خواهید شد. پس از آشنایی با این موارد، مدرنترین روشها و متدهای روز دنیا برای پیادهسازی سیستمهای پیشنهاددهنده در پایتون را بررسی خواهیم کرد.
دوره آموزش سیستم پیشنهاد دهنده از از مجموعه دورههای آموزش هوش مصنوعی و آموزش ماشین لرنینگ مکتب خونه تنها به این مباحث ختم نمیشود. مهمترین بخش این دوره، تدریس گام به گام چگونگی پیادهسازی سیستمهای پیشنهاد دهنده در پایتون است. طبق این برنامه آموزشی، شما یاد میگیرید که براساس علایق و سوابق جمعآوری شده از کاربران، با استفاده از هوش مصنوعی و شبکههای عصبی مصنوعی (Artificial Neural Networks) به کاربران خود فیلم پیشنهاد دهید. در این راستا از زبان برنامهنویسی Python و فریمورک TensorFlow و Keras استفاده خواهیم کرد.
در این دوره آموزشی خواهید توانست از مفاهیم پایه و معرفی سیستم تا استقرار روی سرورهای عملیاتی را قدم به قدم فرا بگیرید. بنابراین اگر قصد آموزش عملی و صفر تا صد پیاده سازی سیستمهای پیشنهاد دهنده را دارید، دوره آموزش طراحی و توسعه سیستمهای پیشنهاد دهنده (Recommender Systems) مکتبخونه را به شما پیشنهاد میدهیم.
همانطور که اشارده شد سیستمهای پیشنهاد دهنده یکی از بهروزترین شیوههای ارتقاء کسبوکار و جذب مشتری هستند. طبق پژوهشهای انجامشده به طور قطع تا چندین سال آینده، این سیستمها از مهمترین مباحث موجود در کسبوکارها و دنیای دیجیتال خواهد بود.
بنابراین، دوره آموزشی طراحی و توسعه سیستمهای پیشنهاد دهنده با هدف آشنایی دانشجویان، برنامهنویسان، مهندسان و مدیران کسبوکارهای آنلاین با سامانه توصیه گر، چگونگی پیادهسازی و استفاده از آنها در کسبوکارها طراحی شدهاست.
بعد از گذراندن این دوره به راحتی میتوانید با استفاده از هوش مصنوعی و یادگیری ماشین، سیستم های پیشنهاد دهنده امروزی را برای استفاده در صنعت یا کارهای پژوهشی، پیادهسازی و ارزیابی کنید.
روشهای آموزشی استفاده شده در دوره آموزش سیستمهای پیشنهاد دهنده ویژگیهای منحصر به فردی دارد که شما را نسبت به نتیجهی نهایی حاصل از فراگیری دوره مطمئن خواهد کرد. این ویژگیها به شرح ذیل است:
به طور کلی، سیستم های توصیه گر یا سیستم های پیشنهاد دهنده الگوریتمهایی هستند که هدف آنها پیشنهاد دادن موارد مرتبط با کاربران است. پیشنهاد فیلم برای تماشا، متن برای خواندن، محصول برای خرید یا هرچیز دیگری از جمله این موارد هستند. بسته به صنعتی که در آن فعالیت دارید، میتوانید از سیستم پیشنهاد دهنده برای جذب مخاطب استفاده کنید.
پیادهسازی سیستمهای پیشنهاد دهنده در بعضی از صنایع واقعا حیاتی هستند؛ چرا که اگر کارایی لازم و کافی را داشته باشند، درآمد قابل توجهی را برایتان به ارمغان خواهند آورد. برای اثبات اهمیت این موضوع میتوانیم به Netflix اشاره کنیم. این شرکت حاضر است برای ده درصد بهبود در سامانه توصیه گر فیلم خود مبلغ یک میلیون دلار بپردازد!
سیستمهای پیشنهاد دهنده از دو منظر دستهبندی میشوند؛ تقسیمبندی محصولی و تقسیمبندی الگوریتمی. تقسیمبندی محصولی ریکامندر سیستمها شامل دو دسته آیتممحور و کاربرمحور است. توصیههایی که در دسته آیتممحور به کاربر داده میشود، برای یک آیتم خاص است. در این حالت اگر وارد صفحهای از یک سایت شوید، یک مطلب در ارتباط با عنوان همان صفحه به شما نمایش داده میشود.
سیستمهای پیشنهاد دهنده کاربرمحور براساس سلیقه کاربر پیشنهاد ارائه میدهند. مثلا اگر یک برنامهنویس پایتون باشید و وارد یک سایت شوید، مطلبی در ارتباط با پایتون به شما نمایش داده خواهد شد. این سیستمها را از منظر الگوریتم و دیتای ورودی هم میتوان به دو دسته محتوا محور و بازدید محور تقسیم میکنند. در دسته محتوا محور، سامانه توصیه گر محتوای آیتمها را تحلیل کرده و نزدیکترین مطلب یا محصول را نمایش میدهد. ریکامندر سیستمهای بازدید محور بدون توجه به محتوای آیتمها، از دیتای بازدید کاربران سایت استفاده میکند. مثلا در یک سایت، سامانه پیشنهاد دهنده بین دو کاربر شباهت پیدا کرده و یک محصول را به هردوی آنها پیشنهاد میدهد.
سیستمهای پیشنهاد دهنده در پایتون از روشهای مختلفی میتوانند به علایق کاربران دست یابند و آنها را پیشبینی کنند. آنها از ماتریسهایی برای شناسایی رابطه بین موجودیت آیتم و کاربران استفاده میکنند. علاوهبراین، سیستمهای پیشنهاد دهنده برای استخراج ویژگیهای خاص هر کاربر از یادگیری عمیق بهره میگیرند. شبکههای عصبی عمیق نقش چشمگیری در پردازش متن، تشخیص گفتار، پیشبینی در حوزههای مختلف و غیره دارند. از این ویژگیها میتوان در پیاده سازی سیستمهای پیشنهاد دهنده به خوبی استفاده کرد.
آموزش ساخت سیستم های توصیه گر یکی از آموزشهای مهم و پرکاربرد برای طراحی بخش پیشنهادات در وب سایتها است. در آموزش ساخت سیستم های پیشنهاد دهنده، با استفاده از هوش مصنوعی و یادگیری ماشین و همچنین زبانهای برنامه نویسی نظیر پایتون، به ارائهی پیشنهادات متنوع و کاربردی به کاربران میپردازیم. عمدتاً گزینههای این پیشنهادات از روی رفتار کاربر و یا مجموعهی کاربران و تعاملات با آنها، ایجاد میشود.
سیستم توصیه گر یا Recommendation systems (که با اسامی دیگری مانند سیستم پیشنهادگر، ریکامندر و یا پیشنهاد دهنده نیز شناخته میشود) یک نوع سیستم نرم افزاری برای پیشنهاد دادن اقلام مختلف در یک زمینهی خاص به کاربر است.
حتماً در فروشگاههای اینترنتی و وبسایتهای ارائهدهندهی محتوا، با این موضوع برخوردهاید که در صفحهی معرفی یک محصول، اقلام دیگر نیز به شما پیشنهاد میشود. مثلاً در یک وب سایت تماشای فیلم، ممکن است دیگر فیلمهای آن کارگردان یا ژانرهای مشابه به شما توصیه شود. این موضوع، توسط یک سیستم توصیه گر انجام میشود.
بهطور کلی، سیستم های پیشنهاد دهنده دارای سه زیرگروه هستند که عبارتند از:
این نوع سیستمهای پیشنهاد دهنده، از تعاملات کاربر برای پیشنهاد کردن یک کالا به وی استفاده میکنند. به این صورت که علاقهمندی تمام کاربران به کالاهای مختلف، تحت ارزیابی قرار میگیرد. مثلاً اگر کاربر «الف»، کالای x را پسندیده و کاربر «ب» به کالاهای x و y علاقهمند است؛ میتواند کالای y را به کاربر «الف» پیشنهاد دهد.
این سیستمها، پیشنهاد را با استفاده از پروفایل کاربر و ویژگیهای اقلام انتخابی وی، ارائه میدهند. این سیستم در نظر میگیرد که چون کاربر قبلاً به چنین کالایی علاقهمند بوده، پس احتمال دارد تا مجدد نیز علاقهمندی وی به کالاهای پیشنهاد شده، برقرار شود.
این نوع از سیستم های پیشنهاد کننده، ترکیبی از روشهای قبلی را ارائه میدهد. معمولاً خروجی این سیستمها دقت بالاتری نسبت به دیگر انواع Recommendation systems خواهد داشت. دستهبندی دیگری نیز برای این سیستمها پیشنهاد شده است که طبق آن، ریکامندرها از انواع فیلترینگ مشارکتی (Collaborative filtering) و یا فیلترینگ هیبریدی خواهند بود.
ریکامندرها، کاربردهای زیادی دارند که در صنایع مختلف برای کاربران و ارائهدهندگان کالا یا خدمات، ایدهآل و مفید خواهد بود. یکی از مهمترین بخشهای هر وب سایت فروشگاهی، سیستم ریکامندر آن است. کاربران همیشه علاقه دارند تا در خصوص خرید بهترین گزینه، راهنمایی شوند. طوری که آنها بتوانند کالاهای همسان را با یکدیگر مقایسه کرده و راحتتر و سریعتر برای خرید آن، تصمیمگیری نمایند.
در فهرست زیر، مهمترین مزایای این سیستمها نشان داده شده است.
• جستوجو در میان محصولات سایت recommendation systems، سادهتر انجام میشود.
• سیستمهای توصیه گر، سبب سهولت در تصمیمگیری و انتخاب خواهند شد.
• سیستمهای پیشنهاد دهنده به ارائهدهندگان کمک میکنند تا فروش خود را افزایش داده و به درآمد بالاتری برسند.
• سیستمهای پیشنهادگر، بستر بهتری برای مقایسهی کالاها و خدمات ایجاد میکنند.
تمام این مزایا و قابلیتها، سبب میشوند تا طراحی و پیادهسازی این سیستمها اهمیت زیادی داشته و کاربرد سیستم های توصیه گر در حرفههای ارائه دهندهی کالا یا خدمت، دیده شود. در نتیجه، با آموزشهای ساخت سیستمهای ریکامندر، میتوانیم این نیازها را پاسخگو باشیم.
آموزش ساخت سیستمهای ریکامندر کمک میکند تا با استفاده از هوش مصنوعی و یادگیری ماشین، با ساختار Recommendation systems آشنا شده و مهارت پیادهسازی آن را بهدست آورید. برای این منظور، شما میتوانید از کتاب سیستم های توصیه گر و یا دورههای آموزشی متعدد استفاده کنید.
در آموزش ساخت سیستم های توصیه گر، شما از زبان برنامه نویسی پایتون و فریمورکهای تنسورفلو یا keras استفاده خواهید کرد. همچنین شما برای پیاده سازی این سیستمها به هوش مصنوعی و گراف شبکههای عصبی مصنوعی نیاز دارید. خلاصه اینکه گام به گام صفر تا صد طراحی سیستمهای توصیه کننده، در این آموزشها گنجانده میشود.
بهطور کلی دورهی آموزش ساخت پروژه سیستم های توصیه گر، به تمام آن دسته از برنامه نویسان و علاقهمندانی توصیه میشود که به پیادهسازی سیستمهای جذاب مبتنی بر هوش مصنوعی علاقه دارند. همچنین اگر شما جزو آن دسته از مدیران دلسوزی هستید که برای رشد و پیشرفت کسب و کارتان، تلاش زیادی را به خرج میدهید، میتوانید از این دورهی آموزشی بهرهمند شوید.
در دورهی آموزش ساخت سیستم های پیشنهادگر، از زبان برنامه نویسی پایتون (python) استفاده میشود. لذا برای اینکه بتوانید مباحث آموزشی این دوره را درک کنید، میبایست تسلط خوبی روی زبان پایتون و دستورات آن داشته باشید. شما میتوانید از دورههای آموزش پایتون مکتب خونه برای تسلط روی این زبان برنامه نویسی استفاده کنید.
انتظار میرود با کتابخانههای رایج پایتون آشنا باشید. چراکه در این آموزشها، از کتابخانههای متعددی نظیر tensorFlow استفاده شده است. کار با این کتابخانه را میتوانید از طریق دورههای آموزش تنسورفلو مکتب خونه، یاد بگیرید. همچنین برای مباحث حرفهایتر در آموزش ساخت سیستم پیشنهاد دهنده، شما نیاز به یادگیری کامل این کتابخانه و موضوع یادگیری عمیق خواهید داشت.
موضوع دیگر در ساخت سیستم های ریکامندر، اهمیت هوش مصنوعی و یادگیری ماشین است. توصیه میکنیم از دورههای آموزش یادگیری ماشین مکتب خونه برای آشنایی مقدماتی با مفاهیم ML و هوش مصنوعی استفاده کنید.
آنچه در این دورهی آموزشی، مد نظر قرار میگیرد؛ در مباحث زیر قابل بررسی خواهد بود.
• مقدمهای بر سیستمهای پیشنهاد دهنده
• بارگذاری دادهها با استفاده از کتابخانهی TFDS
• پیش پردازش ویژگیها با استفاده از Keras Preprocessing Layers
• ساخت یک مدل بازیابی اطلاعات (Retrieval Task)
• جستوجوی نزدیکترین همسایگی (K-nearest Neighbors)
• ساخت یک مدل رتبهبندی (Ranking Task)
• استقرار مدل هوش مصنوعی با استفاده از TF Serving
• پروژهی عملی
دورهی آموزشی مذکور در ۲۷ ساعت ویدیویی طراحی و تدوین شده است. از این مدت زمان، ۶ ساعت آموزش و ۲۱ ساعت به تمرینات عملی و پروژه اختصاص دارد. بازهی زمانی نهایی، با توجه به تسلط کاربر روی مفاهیم پیش نیاز و سرعت عمل وی، قابل محاسبه خواهد بود.
برای اینکه بتوانید سیستم های توصیه گر را طراحی و پیادهسازی کنید، میتوانید از آموزشهای موجود در مکتب خونه استفاده نمایید. شما میتوانید تمام موارد پیش نیاز ساخت این سیستمها را در میان دورههای مکتب خونه جستوجو کرده و دنبال نمایید. بعد از تسلط کامل بر روی مفاهیم پیش نیاز، استفاده از آموزش ساخت سیستمهای پیشنهاد دهنده به شما کمک میکند تا صفر تا صد Recommendation systems را پیادهسازی کنید.
آموزش ساخت سیستم های پیشنهاد دهنده به شما نشان میدهد که چطوری میتوان سیستمی را برای پیشنهاد دیگر کالاها و خدمات به کاربران ارائه دهیم. از آموزش ساخت سیستم های توصیه گر، برای پیادهسازی این بخش در وب سایتها و فروشگاههای اینترنتی استفاده میشود. در مکتب خونه انواع دوره آموزش برنامه نویسی، آموزش پایتون، آموزش هوش مصنوعی، آموزش دیتاساینس و آموزش یادگیری ماشین به عنوان مکمل و پیش نیاز این دوره موجود است.
فصل اول: مقدمهای بر سیستمهای پیشنهاد دهنده:
1 - سامانه پیشنهاد دهنده (Recommender System) چیست؟!
2 - کوییز سیستمهای پیشنهاد دهنده
3 - مراحل مختلف (Taskها) در یک سامانه پیشنهاد دهنده
4 - کوییز مراحل مختلف در یک سیستم پیشنهاد دهنده
5 - روشهای فیلتر کردن اقلام برای پیشنهاددهی
6 - کوییز روشهای فیلتر کردن اقلام برای پیشنهاد دهی
7 - نمایش (Representation) ویژگیهای آشکار و نهان کاربران و اقلام به الگوریتمهای یادگیری ماشین
8 - کوییز نمایش (Representation) ویژگیهای آشکار و نهان کاربران و اقلام به الگوریتمهای یادگیری ماشین
9 - معرفی دیتاست MovieLens
10 - کوییز معرفی دیتاست MovieLens
فصل دوم: بارگذاری دادهها با استفاده از کتابخانه TFDS:
1 - معرفی کتابخانه Tensor Flow Datasets
2 - کوییز معرفی کتابخانه Tensor Flow Datasets
3 - بارگذاری دیتاست MovieLens
4 - کوییز بارگذاری دیتاست MovieLens
5 - بررسی و نمایش دادهها در قالب Pandas DataFrame
6 - کوییز بررسی و نمایش دادهها در قالب Pandas DataFrame
7 - انتخاب ویژگیها (Feature Selection)
8 - کوییز انتخاب ویژگیها (Feature Selection)
9 - جداسازی دیتاست آموزش (Train) و آزمایش (Test)
10 - کوییز جداسازی دیتاست آموزش (Train) و آزمایش (Test)
فصل سوم: پیشپردازش ویژگیها با استفاده از Keras Preprocessing Layers:
1 - پیشپردازش دادههای انواع ویژگیها و ساخت مدلهای End-to-End
2 - کوییز پیشپردازش دادههای انواع ویژگیها و ساخت مدلهای End-to-End
3 - نرمالسازی دادههای یک ویژگی عددی (Numerical)
4 - کوییز نرمالسازی دادههای یک ویژگی عددی (Numerical)
5 - پیشپردازش ویژگیهای دستهای (Categorical) مانند "شناسه کاربر" و تبدیل آنها به بردار Embedding
6 - کوییز پیشپردازش ویژگیهای دستهای (Categorical) مانند "شناسه کاربر" و تبدیل آنها به بردار Embedding
7 - بهدست آوردن بردار Embedding برای ویژگی "شناسه فیلم"
8 - کوییز بهدست آوردن بردار Embedding برای ویژگی "شناسه فیلم"
9 - پیشپردازش ویژگیهای متنی (Textual) با تکنیکهای پردازش زبان طبیعی (NLP)
10 - کوییز پیشپردازش ویژگیهای متنی (Textual) با تکنیکهای پردازش زبان طبیعی (NLP)
11 - مدلی برای نمایش Query ها و Candidate ها در شبکه عصبی دو برجی (Two-Tower Neural Networks)
12 - کوییز مدلی برای نمایش Query ها و Candidate ها در شبکه عصبی دو برجی (Two-Tower Neural Networks)
فصل چهارم: ساخت یک مدل بازیابی اطلاعات (Retrieval Task):
1 - استفاده از ویژگیهای جانبی (Side Features) برای غلبه بر مشکل Cold Start
2 - کوییز استفاده از ویژگیهای جانبی (Side Features) برای غلبه بر مشکل Cold Start
3 - مقدمهای بر Retrieval Task
4 - کوییز مقدمهای بر Retrieval Task
5 - استفاده ضمنی (Implicit) از دیتاست MovieLens برای انجام تسک بازیابی اطلاعات
6 - کوییز استفاده ضمنی (Implicit) از دیتاست MovieLens برای انجام تسک بازیابی اطلاعات
7 - معرفی کتابخانه TensorFlow Recommenders
8 - کوییز معرفی کتابخانه TensorFlow Recommenders
9 - پیادهسازی لایه Retrieval با استفاده از کتابخانه TFRS
10 - پیادهسازی لایه Retrieval با استفاده از کتابخانه TFRS
11 - ساخت مدل Retrieval دو برجی با استفاده از کتابخانه TFRS
12 - کوییز ساخت مدل Retrieval دو برجی با استفاده از کتابخانه TFRS
13 - آموزش (Fit) و ارزیابی (Evaluation) مدل بازیابی اطلاعات با استفاده از توابع Keras
14 - کوییز آموزش (Fit) و ارزیابی (Evaluation) مدل بازیابی اطلاعات با استفاده از توابع Keras
15 - رسم نمودار تغییرات خطا (Loss) هنگام آموزش مدل با استفاده از کتابخانه Matplotlib
16 - کوییز رسم نمودار تغییرات خطا (Loss) هنگام آموزش مدل با استفاده از کتابخانه Matplotlib
فصل پنجم: جستجوی نزدیکترین همسایگیها (K-nearest Neighbors):
1 - جستجوی KNN به صورت Brute-force
2 - کوییز جستجوی KNN به صورت Brute-force
3 - جستجوی KNN به صورت تقریبی با استفاده از کتابخانه Google ScaNN
4 - کوییز جستجوی KNN به صورت تقریبی با استفاده از کتابخانه Google ScaNN
5 - ذخیره مدل آموزشدیده در محیط Google Colab و انتقال آن به Google Drive
6 - کوییز ذخیره مدل آموزشدیده در محیط Google Colab و انتقال آن به Google Drive
فصل ششم: ساخت یک مدل رتبهبندی (Ranking Task):
1 - مقدمهای بر تسک Ranking
2 - کوییز مقدمهای بر تسک Ranking
3 - پیادهسازی مدل Ranking با استفاده از کتابخانه TFRS
4 - کوییز پیادهسازی مدل Ranking با استفاده از کتابخانه TFRS
5 - آموزش (Fit) و ارزیابی (Evaluation) مدل رتبهبندی با استفاده از توابع Keras
فصل هفتم: استقرار مدل هوش مصنوعی با استفاده از TF Serving:
1 - آشنایی با داکر و TensorFlow Serving برای استقرار یک مدل یادگیری ماشین روی سرور عملیاتی
2 - کوییز آشنایی با داکر و TensorFlow Serving برای استقرار یک مدل یادگیری ماشین روی سرور عملیاتی
3 - اجرای TensorFlow Serving روی سرور لینوکس و ارسال درخواست HTTP برای دریافت لیست اقلام پیشنهادی
4 - کوییز اجرای TensorFlow Serving روی سرور لینوکس و ارسال درخواست HTTP برای دریافت لیست اقلام پیشنهادی
فصل هشتم: پروژه پایانی:
1 - پروژه پایانی
درباره دوره:
برنامهنویسی C یکی از زبانهای برنامه نویسی محبوب و قدرتمند است که تعداد زیادی برنامهنویس را به سمت خود جذب کرده است. زبان C را میتوان پدر زبان برنامهنویسی ++C و پدربزرگ زبان #C دانست. زبانهای Java و ++C بر پایه C نوشته و ایجاد شدهاند.اگر قصد آموزش زبان برنامه نویسی C را دارید، لازم است پیشزمینهای از سازوکار حافظه کامپیوتر داشته باشید؛ زیرا این مورد در زبان سی از اهمیت خاصی برخوردار است.
زبان برنامهنویسی سی یک زبان همه منظوره، سطح میانی، ساخت یافته و دستوری است. یکی از مزیتهای زبان C، عدم وابستگی به سخت افزار یا سیستم عامل خاصی است. این زبان لزوماً پیشنیازی برای سایر زبانها محسوب نمیشود؛ این است که از آنجایی که زبانهای دیگر باگهای خود را تا حد زیادی رفع کردهاند و جلوی خطای شما را تا حدود 80٪ گرفتهاند، قدرت تفکر الگوریتمی و حل مساله را نیز از شما میگیرند! در حالی که زبان C این فرصت را برای کدآموز فراهم کرده است که با عمیقتر فکر کردن در حین کدنویسی به خاطر ذات این زبان، ذهنی قویتر برای خود بسازد.
برنامه نویسی C یک زبان برنامه نویسی عمومی بسیار محبوب، ساده و کاربردی است. C یک زبان برنامه نویسی ساختیافته و مستقل از ماشین است که به طور گسترده برای نوشتن برنامهها و سیستمعاملهای مختلف مانند ویندوز و انجام پروژههای سنگین و پیچیده استفاده میشود. پایگاه داده Git، oracle، مفسر پایتون و غیره با این زبان نوشته شدهاند.
بسیاری از افراد معتقدند که زبان سی خدای همه زبانهای برنامهنویسی است. بعضی افراد آن را پایهای برای برنامه نویسی میدانند. چرا که اگر با زبان برنامهنویسی سی آشنا باشید، یادگیری سایر زبانهای برنامهنویسی که از مفاهیم C استفاده میکنند، برایتان بسیار راحتتر خواهد بود.
این که زبان سی را پایه برنامهنویسی میدانند و بیشتر دانشجویان رشته کامپیوتر به عنوان اولین زبان با آن خاطره دارند، بیدلیل نیست. کاربردهای زبان برنامه نویسی C را میتوانید در سطح گستردهای از جهان از سیستمهای ساده چراغهای زماندار گرفته تا سیستمعامل معروفی مانند ویندوز یافت. برای درک بهتر اهمیت یادگیری زبان C به موارد زیر توجه کنید:
حال که با این زبان مهم و ارزشمند آشنا شدید، خوب است بدانید مکتبخونه دوره صفر تا صد آموزش برنامهنویسی C از مجموعه دورههای آموزش برنامه نویسی را برای شما عزیزان فراهم دیده است. این دوره هیچ پیشنیازی ندارد. شما میتوانید همگام با تدریس استاد، مفاهیم را به طور کامل فرا بگیرید و آنها را در قالب پروژههای تعریف شده در هر فصل پیاده کنید.
زبان برنامه نویسی سی پایه شما را در برنامهنویسی تقویت میکند؛ چرا که این زبان به عنوان زبان پایه برای بسیاری از زبانهای برنامهنویسی شناخته شده است. این زبان از مفاهیمی مانند انواع دادهها، عملگرها، دستورات کنترل و سایر موارد را در اختیار شما قرار میدهد. دانستن این مفاهیم برای شروع برنامهنویسی بسیار ضروری است.
برنامه نویسی سی C حوزه کاربردی بسیار گستردهای دارد؛ از ساخت سادهترین برنامهها گرفته تا برنامههای بزرگی مانند پایگاههای داده و سیستمعامل ویندوز، همه با زبان C امکانپذیر هستند. C یک زبان برنامه نویسی ساده با اجرای سریع است. مشاغل زیادی برای یک توسعهدهنده C در بازار وجود دارد.
ساختار و ویژگیهای زبان C به گونهای است که آزمایش، نگهداری و رفع باگ را بسیار آسان میکند. ویژگی دیگر برنامه نویسی C این است که قابلیت گسترش خود را دارد. برنامه C شامل انواع تابعهاست که بخشی از کتابخانه هستند. بنابراین شما میتوانید ویژگیها و توابع خود را به کتابخانه اضافه کنید تا در زمان نیاز به آنها دسترسی داشته باشید. این ویژگی برنامه نویسی به زبان سی C را راحت میکند.
با این تفاسیر اگر به دنبال یک زبان برنامهنویسی همهمنظوره و نسبتا راحت هستید، میتوانید زبان های برنامه نویسی سی را انتخاب کنید. در این دوره به آموزش زبان C از پایه میپردازیم.
همانطور که میدانید برنامه نویسی به زبان C و سایر زبانها را نمیتوان تنها با آموزش مباحث تئوری فراگرفت. استفاده از آموختهها در پروژهها و درگیر شدن با مباحث اهمیتی بیشتری دارد. دوره آموزش زبان برنامه نویسی C مکتبخونه پروژهمحور است. این بدین معناست که شما در خلال آموزش مباحث مهم، باید پروژههای مطرح شده توسط استاد را انجام داده و ارسال کنید.
دوره آموزش زبان c مکتبخونه یک دوره آموزشی جامع است که دقیقا از صفر شروع به آموزش برنامه نویسی به زبان C میکند. در ابتدای این دوره با مبانی برنامه نویسی و نحوه کار کامپیوتر و حافظه آن آشنا میشوید، مفاهیم اولیه را فرا میگیرید و رفته رفته وارد مباحث عملی برنامه نویسی C میشوید. در خلال آموزشهای تئوری، مفاهیم برنامه نویسی C به صورت عملی در قالب پروژههایی به شما آموزش داده میشود. در هر فصل تعدادی تمرین و پروژه به شما داده میشود که حل آنها الزامی است. در پایان هم یک پروژه جامع به زبان برنامه نویسی سی برایتان تعریف شده است که باید در زمان معین بتوانید آن را انجام دهید.
فراهم آوردن یک محیط تعاملی به شما کمک میکند که مشکلات خود را با استاد درمیان بگذارید و از او راهنمایی بگیرید. بدین منظور مکتبخونه تالار گفتگویی برای شما فراهم آورده است. همچنین با گرفتن نمره 80 از این دوره گواهینامه دانشگاه صنعتی شریف به شما عزیزان اعطا خواهد شد. این گواهینامه باعث تسهیل در استخدام میشود.
دوره آموزش برنامهنویسی C از صفر تا صد برنامه نویسی به زبان C را آموزش میدهد. این دوره در ابتدای کار تمام موارد لازم را به شما آموزش میدهد. بنابراین آموزش برنامه نویسی C مکتبخونه هیچ پیشنیازی ندارد و شما میتوانید از صفر برای یادگیری این زبان ارزشمند اقدام کنید.
برای شروع برنامه نویسی سی ابتدا باید یک محیط برنامهنویسی را روی سیستم خود نصب کنید. یک IDE تمام مواردی که برای ایجاد برنامههای قابل اجرا مورد نیاز است را دارد. در ابتدای این دوره نحوه نصب و راهاندازی IDE به شما آموزش داده میشود. پیشنهاد میکنیم از نرمافزار Code Blocks استفاده کنید.
فصل اول – مقدمهای بر برنامه نویسی:
1 - مقدمات برنامهنویسی
2 - یک گام جلوتر
3 - برنامه چگونه نوشته میشود؟
4 - الگوریتم اشتراک دو مجموعه
فصل دوم – نوشتن اولین برنامه:
1 - Be Ready to write the first program
فصل سوم – متغیر ها و مفاهیم اولیه حافظه:
1 - Variables-1
2 - Variables-2
3 - Characters
4 - Characters
5 - Standard Input and output
6 - Circumference and Area
7 - Character Number
8 - تبدیل کاراکتر
فصل چهارم – عبارات ریاضی:
1 - Arithmetics
2 - Arithmetics-2
3 - Arithmetics-3
فصل پنجم – کنترل اجرای برنامه:
1 - if statement-1
2 - if statement-2
3 - if statement
4 - 1-While loop
5 - While loop-2
6 - While loop-3
7 - While loop-4
8 - For loop-1
9 - For loop-2
10 - For loop-3
11 - For loop-4
12 - Switch-Case
13 - Triangular Numbers
14 - min and max
15 - Khayam Pascal Triangle
16 - Same Divisor
17 - Star
فصل ششم – کتابخانه استاندارد:
1 - What is library
2 - Library
3 - math.h library
فصل هفتم – توابع:
1 - Function-1
2 - Function-۲
3 - Function-۳
4 - Function-۴
5 - Function-۵
6 - Function-۶
7 - Function
8 - فاکتوریل
9 - دنباله فیبوناچی
10 - چاپ اعداد
فصل هشتم – آرایهها:
1 - Array-1
2 - Array-2
3 - Array-3
4 - Array-4
5 - Array-5
6 - Array-6
7 - Array
8 - Bubble Sort
9 - Average of Array
10 - Decimal to Binary
فصل نهم – رشتهها:
1 - String-1
2 - String-2
3 - String-3
4 - رشته داخلی
5 - رشتهی palindrome
6 - رشته با بزرگترین طول
فصل دهم - اشارهگرها:
1 - Pointers-1
2 - Pointers-2
3 - Pointers-3
4 - Pointers-4
5 - Pointers-5
فصل یازدهم - ساختار:
1 - Struct-1
2 - Struct-2
3 - Struct-3
4 - Struct-4
5 - Struct-5
فصل دوازدهم – کار با فایل:
1 - FileProcessing-1
2 - FileProcessing-2
3 - لیست دانشآموزان
فصل سیزدهم - پروژه نهایی:
1 - عملیات ریاضی بر روی دو عدد 50 رقمی
درباره دوره:
هدف از ارائه این درس آشنایی با اصول طراحی مدارهای واسط کاربری، محدودیتها و ویژگیهای آنها است. در ابتدا دانشجویان با Transmission Lines و مفاهیم مربوط به آن آشنا میشوند و محدودیتهایی که در طراحی مدارها وجود دارند بیان میشوند. توضیحاتی دربارهی حافظههای مختلف داده میشود و همچنین حافظههای DDR2 و DDR3 معرفی میگردند. در ادامه انواع باسها از قبیل PCI، PCI-X و AGP بررسی و اجزای مختلف آنها شرح داده میشوند، پروتکل ارتباطی USB و اهداف طراحی آن ذکر میگردند. و در نهایت دانشجویان با واسطهای کاربری شامل نمایشگرهای LCD، Keyboard، Printer و Mouse آشنا میشوند.
فیلم های آموزشی:
1 - جلسه اول - Transmition Lines
2 - جلسه دوم - high speed digital design
3 - جلسه سوم - Serial Data Transmition
4 - جلسه چهارم - حافظه
5 - جلسه پنجم - حافظه های DRAM
6 - جلسه ششم - انواع DRAM
7 - جلسه هفتم - SDR DRAM
8 - جلسه هشتم - SDR DRAM
9 - جلسه نهم - حافظه های DDR2
10 - جلسه دهم - جافظه های DDR2
11 - جلسه یازدهم - کنترلر های DRAM
12 - جلسه دوازدهم - تحلیل سرعت حافظه های DRAM
13 - جلسه سیزدهم - مقدمه Display
14 - جلسه چهاردهم - گرافیک کامپیوتری
15 - جلسه پانزدهم - Computer Graphics - Transformation
16 - جلسه شانزدهم - Scan Conversion
17 - جلسه هفدهم - Clipping & Shading
18 - جلسه هجدهم - GPU
19 - جلسه نوزدهم - Open GL - direct X
20 - جلسه بیستم - معرفی و تقسیم بندی عمومی باس ها
21 - جلسه بیست یکم - معرفی و مقدمات PCI express
22 - جلسه بیست دوم - مرور یک مثال Open GL
23 - جلسه بیست سوم - ادامه بحث PCIe: معرفی لایه Transaction، لایه Data Line، لایه Physical
24 - جلسه بیست چهارم - تکمیل مباحث PCIe
درباره دوره:
آیندهی کار با عصر هوش مصنوعی مولد همراه شده و برخوردهای مشترک زیاد هستن. در واقع، بعضیها استدلال میکنن که ما در یکی از مهمترین لحظات تاریخ بشریت زندگی میکنیم. به گفتهی بیل گیتس، عصر هوش مصنوعی آغاز شده و هوش مصنوعی مولد مهمترین پیشرفت فناوری در 40 سال گذشتهست.
به گفتهی مککینزی، «نوآوریهایی که هوش مصنوعی مولد میتونه برای کسبوکارها در هر اندازه و سطوحی از مهارتهای فنآوری ایجاد کنه، واقعا هیجانانگیزه، با کاربردهایی در بازاریابی، فروش، عملیات، ریسک، فناوری اطلاعات و حتی منابع انسانی».
چندین شرکت مانند مورگان استنلی، پیدابلیوسی، استرایپ و سیلزفورس از هوش مصنوعی مولد برای کارآمدتر کردن فرآیندهای کاری استفاده میکنن. این تقاطع، این لحظه قابلیت بازتعریف ماهیت کار و دگرگونی سازمانها رو در هر سطحی داره.
این پتانسیل نه تنها بازتعریف شیوهی کار، بلکه بازگشایی سطوح نمایی از بهرهوری، رشد و نوآوری رو نیز به همراه داره. از اونجایی که سازمانها با چالشها، عدم قطعیتها و فرصتهای این دهه مواجه هستن، هوش مصنوعی مولد میتونه به ایجاد چابکی، پاسخگویی و نوآوری مورد نیاز برای هدایت آیندهای که در پیش روی ماست کمک کنه.
همونطور که هوش مصنوعی مولد رشد میکنه و پیچیدهتر میشه، در حال ظاهر شدن بهعنوان یک دارایی استراتژیک قدرتمند و ضروری برای سازمانهاست. استفاده از پتانسیل هوش مصنوعی مولد و سرمایهگذاری از پتانسیلی که ارائه میده، محرک مهمی از مزیت رقابتی برای سازمانهای امروز و آینده خواهد بود.
الان زمان این رسیده که گفتگو دربارهی نقشی که منابع انسانی در تقاطع هوش مصنوعی مولد و آیندهی کار ایفا می کنن رو آغاز کنیم که این دوره آموزشی از مجموعه دورههای آموزش هوش مصنوعی مکتب خونه، مختص این کار است.
مقدمه:
1 - هوش مصنوعی مولد و تغییر منابع انسانی
سرعت دادن به منابع انسانی با هوش مصنوعی مولد:
1 - آیندهی کار و عصر هوش مصنوعی
2 - هوش مصنوعی مولد به منابع انسانی سرعت، تحویل و قدرت میبخشه
اعمال هوش مصنوعی مولد در منابع انسانی:
1 - جذب استعداد و حضور
2 - رهبری و توسعهی کارمندی
3 - تنوع، شمول و برابری
4 - تجربهی کارمندان
5 - توسعهی سیاستهای منابع انسانی
آمادهسازی نیروی کار برای هوش مصنوعی مولد:
1 - ارزیابی آمادگی سازمانی
2 - ایجاد آگاهی و تسلط نسبت به هوش مصنوعی مواد
3 - ایجاد موارد استفاده
4 - شناسایی حفرههای مهارتی
5 - آموزش و آزمایش اولیه
ملاحظات قانونی و آیندهی هوش مصنوعی مولد:
1 - مسئولیتهای قانونی و اخلاقی
2 - آیندهی هوش مصنوعی و مشاغل
اختتامیه:
1 - ادامهی ماجراجویی در هوش مصنوعی در منابع انسانی
درباره دوره:
در دوره آموزش مقدماتی یادگیری ماشین در پروداکشن با زیرنویس اختصاصی از مکتبخونه، شما اجزای مختلف را شناسایی کرده و یک سیستم تولید ML را به صورت سرتاسر طراحی میکنید: محدوده پروژه، نیازهای داده، استراتژیهای مدلسازی و محدودیتها و الزامات استقرار. همچنین یاد خواهید گرفت که چگونه یک خط پایه مدل ایجاد کنید، گذار مفهوم و فرآیند توسعه، استقرار و بهبود مستمر یک برنامه کاربردی ML تولیدی را نمونهسازی کنید.
درک مفاهیم یادگیری ماشین و یادگیری عمیق ضروری است، اما اگر به دنبال یک شغل موثر در حوزه هوش مصنوعی هستید، به مهارت مهندسی تولید نیز نیاز دارید. مهندسی یادگیری ماشین برای تولید، مفاهیم اساسی یادگیری ماشین را با تخصص عملکردی توسعه نرمافزار مدرن و نقشهای مهندسی ترکیب میکند تا به شما در توسعه مهارتهای Production-Ready کمک کند.
برای شروع یک دوره آموزش مقدماتی یادگیری ماشین در پروداکشن، مهم است که ابتدا با مفاهیم اصلی و پایهای یادگیری ماشین آشنا شوید. در این دوره، شما با الگوریتمهای یادگیری ماشین، از جمله نظارتی و بدون نظارت آشنا خواهید شد و یاد میگیرید چگونه دادهها را برای آموزش مدلها پیشپردازش کنید.
یادگیری ماشین چیست؟ استفاده از یادگیری ماشین در پروداکشن میتواند مزایای قابلتوجهی داشته باشد. نخست، افزایش بهرهوری و کارایی است؛ مدلهای یادگیری ماشین میتوانند دادههای بزرگ را تجزیهوتحلیل کنند و بهسرعت تصمیمگیریهای دقیق ارائه دهند. دوم، اتوماسیون فرایندها؛ این مدلها قادرند فرایندهای تکراری را اتوماتیک کرده و از نیروی انسانی برای وظایف پیچیدهتر و خلاقانهتر استفاده کنند. سوم، بهبود تجربه مشتری؛ یادگیری ماشین میتواند به شناسایی الگوها و نیازهای مشتریان کمک کرده و خدمات شخصیسازی شده ارائه دهد که این امر منجر به افزایش رضایت مشتری میشود.
در نهایت، نوآوری و توسعه محصول؛ دادههای بهدستآمده از یادگیری ماشین میتوانند درک بهتری از بازار فراهم آورده و به توسعه محصولات و خدمات جدید کمک کنند. این مزایا نشان میدهند که چرا یادگیری ماشین در پروداکشن به یک ابزار کلیدی در دنیای تکنولوژی و کسبوکار تبدیل شده است.
دوره ماشین لرنینگ، راهنمای اساسی شما برای ورود به این فضاست. ضمن آن آموزش رایگان یادگیری ماشین با پایتون، یکی از اصلیترین و پر جستجو ترین مباحث در این زمینه است.
پس از آن، تمرکز دوره بر روی استقرار مدلها در محیطهای تولید است که شامل معماری سیستمهای یادگیری ماشین، انتخاب پلتفرمها و ابزارهای مناسب برای استقرار، و نحوه مدیریت وابستگیها و مشکلات مقیاسپذیری است. علاوه بر این، شما با مفاهیم اصلی نظارت بر عملکرد مدل در محیطهای واقعی و روشهای بهبود مداوم مدلها پس از استقرار آنها آشنا خواهید شد. همچنین، مباحثی درباره تقسیم دادهها به دادههای آموزش، آزمایش و اعتبارسنجی پوشش داده میشود.
یادگیری ماشین در پروداکشن به معنای استفاده از الگوریتمها و مدلهای یادگیری ماشینی در محیطهای عملیاتی و تولیدی است. این فرایند، از جمعآوری دادهها و آموزش مدلها تا استفاده از آنها برای انجام وظایف و پردازشهای مختلف در محیطهای واقعی، از جمله سرویسهای آنلاین، دستگاههای هوشمند، یا سیستمهای تولیدی، را شامل میشود.
در این روند Machine learning، دادهها به طور مداوم جمعآوری میشوند و مدلها بهروزرسانی میشوند تا با تغییرات محیط و نیازهای کاربران همگام شوند. این روند نهتنها نیازمند داشتن مدلهای دقیق و کارآمد است، بلکه به مدیریت دادهها، نگهداری مدلها، و ارتباط مستمر با تیمهای مهندسی و توسعه نیز نیاز دارد.
در آموزش مقدماتی یادگیری ماشین برای استفاده در محیطهای تولید (پروداکشن)، مباحث مختلفی مورد بررسی قرار میگیرند. این مباحث در آموزش یادگیری ماشین با پایتون بهطورکلی به دودسته تقسیم میشوند: فنی و مدیریتی.
مدلسازی و ارزیابی:
1. آموزش دادهها: انتخاب و پیشپردازش دادهها برای آموزش مدل.
2. ساخت مدلهای یادگیری ماشین: انتخاب الگوریتمهای مناسب برای مسئله موردنظر.
3. ارزیابی مدل: استفاده از معیارهای عملکردی برای سنجش کیفیت مدلها.
مدیریت دادهها:
1. برخورد با دادههای بزرگ: مدیریت حجم زیاد دادهها و استفاده از ابزارهای مناسب مانند Hadoop یا Spark.
2. تمیزکاری داده: اطمینان از دقت و کیفیت دادهها قبل از آموزش مدل.
بهینهسازی مدل:
1. تنظیم پارامترها: بهینهسازی تنظیمات مدل برای بهبود عملکرد.
2. انتخاب ویژگیها: انتخاب دادهها و ویژگیهایی که بیشترین تأثیر را بر پیشبینی دارند.
عملیاتیسازی مدل (MLOps):
1. دیپلوی مدلها: استراتژیهای برای بهکارگیری مدلها در محیطهای تولید.
2. نظارت و مانیتورینگ: رصد عملکرد مدل در زمان واقعی و اطمینان از پایداری و کارایی مدل.
3. بهروزرسانی مدلها: ارزیابی مدلها و اعمال تغییرات لازم بر اساس دادههای جدید.
امنیت و حریم خصوصی:
1. حفاظت از دادهها: اطمینان از امنیت دادهها و رعایت قوانین حفاظت از دادهها مانند GDPR.
2. اخلاق در یادگیری ماشین: توجه به مسائل اخلاقی در استفاده از مدلهای یادگیری ماشین.
افرادی که به دوره آموزش مقدماتی یادگیری ماشین در پروداکشن نیاز دارند عمدتاً شامل چندین گروه مختلف هستند:
1. توسعهدهندگان نرمافزار: توسعهدهندگانی که قصد دارند مهارتهای خود را در زمینه یادگیری ماشین توسعه دهند و بتوانند مدلهای یادگیری ماشین را در محصولات نرمافزاری خود ادغام کنند.
2. تحلیلگران داده و دانشمندان داده: این افراد که قبلاً با تحلیل دادهها آشنایی دارند، میتوانند از یادگیری ماشین برای بهبود تحلیلهای خود و ایجاد مدلهای پیشبینی دقیقتر استفاده کنند.
3. مهندسین یادگیری ماشین: مهندسینی که به تازگی وارد این حوزه شدهاند یا آنهایی که میخواهند دانش فنی خود را در زمینه بهکارگیری مدلهای یادگیری ماشین در محیطهای واقعی و پروداکشن افزایش دهند.
4. مدیران پروژه و مدیران محصول: این افراد باید درک کافی از فناوریهای یادگیری ماشین داشته باشند تا بتوانند تصمیمات آگاهانهای در مورد ادغام این تکنولوژیها در محصولات و خدمات شرکت خود بگیرند.
5. استارتاپها و کارآفرینان: کسانی که در حال راهاندازی یک کسبوکار جدید هستند و میخواهند از قدرت یادگیری ماشین برای ایجاد مزیت رقابتی استفاده کنند.
دورههای مقدماتی به این افراد کمک میکنند تا با مفاهیم اصلی یادگیری ماشین و نحوه پیادهسازی آنها در محیطهای واقعی آشنا شوند. این آموزشها معمولاً شامل مواردی مانند پردازش دادهها، ساخت مدلها، آزمایش و توسعه مدلها در محیط پروداکشن میشود.
آموزش مقدماتی ماشین لرنینگ در محیطهای تولیدی و پروداکشن کاربردهای گستردهای دارد که میتوانند به بهبود کارایی، کاهش هزینهها و افزایش کیفیت محصولات کمک کنند. این کاربردها نمونههایی از چگونگی استفاده از یادگیری ماشین در پروداکشن هستند که میتوانند به شرکتها کمک کنند تا کارایی خود را افزایش دهند و درعینحال هزینهها را کاهش دهند.
مدلهای یادگیری ماشین میتوانند با تجزیهوتحلیل دادههای تاریخی فروش، ترندهای مصرفی و دادههای بازار، به پیشبینی تقاضای آینده برای محصولات کمک کنند. این اطلاعات به شرکتها امکان میدهد تا موجودی خود را بهتر مدیریت کنند و برنامهریزی تولید خود را بهینهسازی نمایند.
با استفاده از کتاب یادگیری میتوان تجهیزات و محصولات را بهصورت مداوم نظارت کرد و کیفیت تولید را در زمان واقعی ارزیابی نمود. این فناوری میتواند عیوب را بهسرعت شناسایی کند و به کاهش هزینههای مرتبط با مرجوعیها و تعمیرات کمک کند.
مدلهای یادگیری ماشین میتوانند در شناسایی الگوهای پنهان در دادههای تولیدی و پیشنهاد راهحلهایی برای بهبود فرآیندها کمک کنند. این بهینهسازی میتواند شامل کاهش زمان توقف ماشینآلات، افزایش بهرهوری و کاهش مصرف انرژی باشد.
با تجزیهوتحلیل دادههای سنسورهای تجهیزات، مدلهای یادگیری ماشین میتوانند زمانهای بالقوه خرابی را پیشبینی کنند و به شرکتها امکان میدهند تعمیرات را قبل از وقوع خرابی انجام دهند. این کار به کاهش زمان تعطیلی و افزایش عمر مفید تجهیزات کمک میکند.
در خطوط تولید، روباتها و سیستمهای خودکار میتوانند با استفاده از الگوریتمهای یادگیری ماشین برای انجام دقیقتر و سریعتر فعالیتها به کار روند. این فناوریها میتوانند به افزایش سرعت تولید و کاهش خطاهای انسانی کمک کنند.
آموزش یادگیری ماشین در محیط پروداکشن در دنیای مکتب خونه، یک فرآیند چالشبرانگیز و حیاتی است که نیازمند توجه دقیق به جزئیات و اجرای موثر است. در این فرآیند، مدلهای یادگیری ماشین که پیشتر در محیط آزمایشی آموزش داده شدهاند، باید به طور صحیح و با کیفیت به محیط پروداکشن منتقل شوند. ابتدا، لازم است که دادههای ورودی مدل در محیط پروداکشن بررسی شوند تا اطمینان حاصل شود که دقیق و کامل هستند. سپس، معماری مدل و پارامترهای آن باید با دقت مورد بررسی قرار گیرند تا اطمینان حاصل شود که مدل بهدرستی عمل میکند و بهینهسازیهای لازم انجام شدهاند.
ضمن آن، لازم است که روند نگهداری و بهروزرسانی مدلها در محیط پروداکشن مشخص شود تا همیشه از بهترین عملکرد ممکن برخوردار باشیم. این شامل نظارت مداوم بر عملکرد مدل، اعمال بهروزرسانیهای لازم به مدل بر اساس دادههای جدید، و ارزیابی دقیق نتایج و خطاها است. در نهایت، برای اطمینان از پایداری و عملکرد مدلها در محیط پروداکشن، استفاده از تکنولوژیهای مانیتورینگ و لاگگیری لازم است تا هرگونه مشکلات و نقاط ضعف بهسرعت شناسایی و رفع شوند.
· بهبود دقت در پیشبینی تقاضا
· افزایش کیفیت محصول
· کاهش هزینههای تولید
· بهینهسازی فرآیندهای تولید
· کاهش زمان توقف تجهیزات
· پیشگیری از خرابیها و تعمیرات گرانقیمت
· افزایش بهرهوری کارکنان
· خودکارسازی و بهبود عملکرد روباتیک
· کاهش خطاهای انسانی
· افزایش سرعت تولید
از مزایای فراگیری این دوره در سری آموزشهای زبان ماشین و ماشین لرنینگ مکتب خونه است!
بسته به این که آموزش مقدماتی یادگیری ماشین را در چه پلتفرمی میگذرانید، ممکن است با سرفصلهای مختلفی مواجه شوید. اما هوش مصنوعی دنیای گستردهای دارد و در مکتب خونه، دورهای که ارائه میگردد دارای تمامی زیر و بومهای سطح مقدماتی آن برای کسانی است که قصد ورود به این فضا را دارند:
1. تعریف مسئله و تجمیع دادهها:
2. پیشپردازش دادهها:
3. انتخاب مدل:
4. آموزش مدل:
5. ارزیابی مدل:
6. بهینهسازی مدل:
7. استقرار مدل:
8. پایش و نگهداری:
این دوره به فراگیران کمک میکند تا با اطمینان بیشتری به توسعه و پیادهسازی راهکارهای پیشرفته یادگیری ماشین در محیطهای پروداکشن بپردازند، ضمن اینکه درکی جامع از چالشها و موانع را به دست میآورند که این امر در نهایت به بهبود و افزایش کارایی و اثربخشی تجاری منجر میشود.
مخاطبین دوره یادگیری ماشین در محیط پروداکشن (Production) معمولاً شامل طیف وسیعی از علاقهمندان به حوزههای کامپیوتر و یادگیری زبان ماشین خواهد شد. آنها را میتوان در این گروهها دستهبندی کرد:
1. توسعهدهندگان نرمافزار: این افراد به دنبال دانش و مهارتهایی هستند که لازم است تا مدلهای یادگیری ماشین را در برنامهها و سیستمهای نرمافزاری ادغام کنند.
2. مهندسین داده: این گروه بر روی زیرساختهای مدیریت دادهها، پیکربندی و بهینهسازی پایگاههای داده برای عملیات یادگیری ماشین تمرکز دارند.
3. متخصصان یادگیری ماشین: این افراد که دارای دانش پیشرفته در مدلهای یادگیری ماشین هستند، به دنبال بهبود و بهینهسازی مدلها برای کاربردهای واقعی هستند.
4. مدیران پروژه و محصول: آنها مسئولیت نظارت بر توسعه و پیادهسازی پروژههای یادگیری ماشین را دارند و به دنبال فهم بهتری از چگونگی ادغام فناوریهای یادگیری ماشین در محصولات و خدمات هستند.
5. تحلیلگران کسبوکار: این گروه از متخصصان که به دنبال درک تأثیرات یادگیری ماشین بر روی تجارت و تصمیمگیریهای استراتژیک هستند.
6. متخصصان امنیت سایبری: این افراد به کاربرد یادگیری ماشین در تشخیص و مقابله با تهدیدات سایبری علاقهمند هستند.
دوره آموزش مقدماتی یادگیری ماشین به این افراد کمک میکنند تا درک بهتری از پیادهسازی، نگهداری و بهینهسازی مدلهای یادگیری ماشین در محیطهای پروداکشن به دست آورند و بتوانند با چالشهای واقعی که در این محیطها وجود دارد بهتر مقابله کنند.
در دنیای امروز که تکنولوژی بهسرعت در حال تغییر و پیشرفت است، داشتن دانش عمیق و کاربردی از یادگیری ماشین در محیطهای واقعی و تولیدی میتواند تفاوت قابلتوجهی در موفقیت پروژهها و نوآوریها ایجاد کند. این دورهها معمولاً مهارتهایی مانند ادغام مدلها با زیرساختهای موجود، مدیریت دادهها، نظارت و بهینهسازی عملکرد مدلها در زمان واقعی را آموزش میدهند.
طیکردن کاملترین دوره یادگیری ماشین در محیط پروداکشن برای هر کسی که در این حوزه فعال است از اهمیت بالایی برخوردار است. همچنین، فراگیری نحوه مدیریت و حل مسائل مرتبط با امنیت، حریم خصوصی دادهها و مقیاسپذیری از جنبههای دیگری است که در چنین دورهای پوشش داده میشود.
اگر به دنبال کاملترین و دقیقترین آموزش مقدماتی یادگیری ماشین در پروداکشن هستید، لازم است که تمامی سرفصلهای یک دوره را بررسی کنید. در مکتب خونه، این دوره با تمامی جزئیات و اطلاعات فنی، در دسترس شماست. همچنین در مکتب خونه انواع دوره آموزش برنامه نویسی، آموزش پایتون، آموزش هوش مصنوعی و آموزش ماشین لرنینگ به عنوان مکمل و پیش نیاز این دوره موجود است.
مروری بر چرخه حیات و استقرار ML:
1 - خوشآمدگویی
2 - مراحل یک پروژه ML
3 - مطالعه موردی: تشخیص گفتار
4 - طرح کلی دوره
5 - چالشهای اصلی
6 - الگوهای استقرار
7 - نظارت
8 - نظارت بر pipeline
انتخاب و آموزش یک مدل:
1 - نمای کلی مدلسازی
2 - چالشهای اصلی
3 - چرا میانگین خطای پایین به اندازه کافی خوب نیست؟
4 - ایجاد یک خط پایه
5 - نکاتی برای شروع
6 - مثال تجزیه و تحلیل خطا
7 - اولویتبندی
8 - مجموعه دادههای منحرف
9 - حسابرسی عملکرد
10 - توسعه هوش مصنوعی داده محور
11 - تصویر مفیدی از افزایش دادهها
12 - افزایش دادهها
13 - آیا افزودن دادهها میتواند ضرر داشته باشد؟
14 - افزودن امکانات
15 - ردیابی آزمایشی
16 - از دادههای بزرگ تا دادههای خوب
تعریف داده و خط مبنا:
1 - چرا تعریف داده سخت است؟
2 - نمونههای بیشتر ابهام لیبل
3 - انواع عمده مشکلات داده
4 - دادههای کوچک و سازگاری لیبل
5 - بهبود ثبات لیبل
6 - عملکرد سطح انسانی (HLP)
7 - افزایش HLP
8 - به دست آوردن دادهها
9 - سلسله داده
10 - متا داده، منشأ داده و اصل و نسب
11 - تقسیمهای متوازن آموزش/dev/تست
12 - محدودهبندی چیست؟
13 - فرآیند محدوده
14 - دقت در امکانسنجی و ارزش
15 - اهتمام به سنجش
16 - نقاط عطف و منابع
درباره دوره:
دوره "Analyze Data to Answer Questions" پنجمین دوره در گواهینامه تحلیل داده گوگل است. در این دوره، شما به عمق تحلیل دادهها پرداخته و دانش تئوری خود را به کاربرد عملی تبدیل خواهید کرد.
با استفاده از تکنیکهای مختلف، آنچه که در دورههای قبلی آموختهاید را به کار میگیرید تا به درک و تحلیل دادههای جمعآوری شده بپردازید. دوره شامل سازماندهی و فرمتدهی دادهها با استفاده از ابزارهایی مانند صفحات گسترده و SQL است که به شما امکان میدهد دادههای خود را از زوایای مختلف مشاهده و تفسیر کنید.
همچنین یاد خواهید گرفت که چگونه محاسبات پیچیدهای را برای دستیابی به اهداف کسبوکار انجام دهید، با استفاده از فرمولها، توابع و کوئریهای SQL در طول تحلیل. این دوره توسط تحلیلگران داده فعلی گوگل تدریس میشود که تجربیات عملی را با بهترین ابزارها و منابع برای انجام وظایف رایج تحلیل داده ارائه میدهند.
با اتمام این برنامه گواهینامه، یادگیرندگان برای درخواست شغلهای مقدماتی بهعنوان تحلیلگر داده آماده خواهند بود، بدون نیاز به تجربه قبلی. تا پایان این دوره، یادگیرندگان توانایی سازماندهی دادهها برای تحلیل و درک فرایندهای فرمتدهی و تنظیم دادهها را خواهند داشت.
آنها روشهای تجمیع دادهها در صفحات گسترده و با استفاده از SQL را کاوش خواهند کرد و یاد خواهند گرفت که چگونه با استفاده از فرمولها و توابع در صفحات گسترده محاسبات دادهای را انجام دهند. علاوه بر این، یادگیرندگان مهارتهای لازم برای انجام محاسبات با استفاده از کوئریهای SQL را به دست خواهند آورد که آنها را با ابزارهای اساسی برای یک کار موفق در زمینه تحلیل داده مجهز میکند.
سازماندهی دادهها برای تحلیل مؤثرتر:
1 - مقدمهای بر سازماندهی
2 - فرآیند تحلیل
3 - آیانا: پایبندی به آن
4 - همیشه نیاز به سازماندهی
5 - فیلتر کردن دادهها با SQL
6 - مرتبسازی دادهها در spreadsheets
7 - استفاده از تابع SORT در صفحات گسترده
8 - اما: سفری به سوی یک شغل معنادار
9 - مرتبسازی دادهها با SQL
فرمتدهی و تنظیم دادهها:
1 - شروع با فرمتدهی دادهها
2 - از یک نوع به نوع دیگر
3 - اعتبارسنجی دادهها
4 - فرمتدهی شرطی
5 - ادغام رشتههای متنی برای کسب بینش
6 - رشتهها در spreadsheets
7 - وقتی که گیر میکنید
8 - لیلا: همه چیز درباره مرحله تحلیل
9 - مواجه شدن با چالشها؟ نگران نباشید!
10 - چه زمانی از کدام ابزار استفاده کنیم
تجمیع دادهها برای تحلیل:
1 - تجمیع دادهها برای تحلیل
2 - آمادهسازی برای VLOOKUP
3 - VLOOKUP در عمل
4 - شناسایی و رفع خطاهای رایج VLOOKUP
5 - بررسی نحوه کار JOINs
6 - کوئریهای درون کوئری
7 - استفاده از زیرکوئریها برای تجمیع دادهها
8 - جاستین: تحلیل دادهها شما را به کجا میبرد
انجام محاسبات دادهها:
1 - محاسبات دادهها
2 - فرمولهای محاسبات رایج
3 - توابع و شرایط
4 - توابع مرکب
5 - شروع کار با جداول محوری
6 - ادامه جداول محوری
7 - کوئریها و محاسبات
8 - درج محاسبات ساده با SQL
9 - محاسبات با دستورات دیگر
10 - بررسی و بازبینی
11 - جداول موقت
12 - تنوع در چند جدول
13 - تبریک! جمعبندی دوره