افتخار آفرینی مهندسان ایرانی در عرصه جهانی رباتیک!
دوستان عزیز و علاقهمندان به دنیای رباتیک، با خوشحالی فراوان به اطلاع شما میرسانیم که نمایندگان تیم مهندسی "امبد لب" پس از داوری موفق و درخشش در مسابقات نوآوری و کسب و کار المپیک فناوری ۲۰۲۴ در پارک علم و فناوری پردیس، به عنوان داوران رسمی مسابقات جهانی رباتیک ۲۰۲۴ اوراسیا در ترکیه دعوت شدهاند.
ما، به نمایندگی از ایران عزیز، در این رویداد بینالمللی مهم حضور خواهیم یافت تا با دانش و تجربه خود، به داوری دقیق و عادلانه رقابتها کمک کنیم.
امیدواریم بتوانیم با این افتخار، نام ایران را در زمره پیشگامان عرصه رباتیک جهان قرار دهیم.
از شما عزیزان دعوت میکنیم تا با حمایتهای معنوی خود، ما را در این مسیر مهم یاری نمایید.
با سپاس فراوان
گروه مهندسی "امبد لب"
#الکترونیک #رباتیک #مسابقات_اوراسیا
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
دوستان عزیز و علاقهمندان به دنیای رباتیک، با خوشحالی فراوان به اطلاع شما میرسانیم که نمایندگان تیم مهندسی "امبد لب" پس از داوری موفق و درخشش در مسابقات نوآوری و کسب و کار المپیک فناوری ۲۰۲۴ در پارک علم و فناوری پردیس، به عنوان داوران رسمی مسابقات جهانی رباتیک ۲۰۲۴ اوراسیا در ترکیه دعوت شدهاند.
ما، به نمایندگی از ایران عزیز، در این رویداد بینالمللی مهم حضور خواهیم یافت تا با دانش و تجربه خود، به داوری دقیق و عادلانه رقابتها کمک کنیم.
امیدواریم بتوانیم با این افتخار، نام ایران را در زمره پیشگامان عرصه رباتیک جهان قرار دهیم.
از شما عزیزان دعوت میکنیم تا با حمایتهای معنوی خود، ما را در این مسیر مهم یاری نمایید.
با سپاس فراوان
گروه مهندسی "امبد لب"
#الکترونیک #رباتیک #مسابقات_اوراسیا
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
❤12👍6
سلام خدمت همراهان گرامی
به درخواست شما عزیزان، بهزودی نسخه جدید کتابخانه آلتیوم مجموعه رو با قطعات جدید و بهبود یافته منتشر میکنیم!
اگر قطعه خاصی مدنظرتونه که تو کتابخانه باشه یا پیشنهادی برای بهبودش دارید، حتماً با ما در میون بذارید.
نظرات و پیشنهادات شما، راهنمای ما برای ارائه یه کتابخانه بینقص و کاربردیه.
شما میتونید از طریق آی دی @mBedLab_Admin با ما در ارتباط باشید.
منتظر نظراتتون هستیم!
#الکترونیک #کتابخانه #قطعات_کاربردی #آلتیوم_دیزاینر
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
به درخواست شما عزیزان، بهزودی نسخه جدید کتابخانه آلتیوم مجموعه رو با قطعات جدید و بهبود یافته منتشر میکنیم!
اگر قطعه خاصی مدنظرتونه که تو کتابخانه باشه یا پیشنهادی برای بهبودش دارید، حتماً با ما در میون بذارید.
نظرات و پیشنهادات شما، راهنمای ما برای ارائه یه کتابخانه بینقص و کاربردیه.
شما میتونید از طریق آی دی @mBedLab_Admin با ما در ارتباط باشید.
منتظر نظراتتون هستیم!
#الکترونیک #کتابخانه #قطعات_کاربردی #آلتیوم_دیزاینر
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
❤6
آیا با #استاندارد MISRA C آشنا هستید؟
استاندارد MISRA C مجموعهای از دستورالعملها برای برنامهنویسی به زبان C، بهویژه در سیستمهای حیاتی و حساس است. این استاندارد به ما کمک میکند کدی بنویسیم که:
✅ ایمنتر باشد (جلوگیری از باگها و خطاهای خطرناک)
✅ قابلاطمینانتر باشد (کاهش احتمال خرابی و عملکرد نامناسب)
✅ قابلحملتر باشد (اجرا بر روی سیستمهای مختلف)
✅ خواناتر و قابلنگهداریتر باشد (درک و تغییر آسانتر کد)
چرا MISRA C مهم است؟
در سیستمهایی که ایمنی و پایداری بسیار مهم است (مانند خودروها، تجهیزات پزشکی، سیستمهای هوافضا و...) استفاده از این استاندارد تقریباً ضروری است. MISRA C با ارائه قوانین و راهنماها، از بروز خطاهای رایج برنامهنویسی جلوگیری میکند و کیفیت نرمافزار را بهبود میبخشد.
کجا بیشتر بدانیم؟
اگر دوست دارید بیشتر درباره MISRA C بدانید، میتوانید عضو ما شوید.
#برنامه_نویسی #استاندارد_MISRA
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
استاندارد MISRA C مجموعهای از دستورالعملها برای برنامهنویسی به زبان C، بهویژه در سیستمهای حیاتی و حساس است. این استاندارد به ما کمک میکند کدی بنویسیم که:
✅ ایمنتر باشد (جلوگیری از باگها و خطاهای خطرناک)
✅ قابلاطمینانتر باشد (کاهش احتمال خرابی و عملکرد نامناسب)
✅ قابلحملتر باشد (اجرا بر روی سیستمهای مختلف)
✅ خواناتر و قابلنگهداریتر باشد (درک و تغییر آسانتر کد)
چرا MISRA C مهم است؟
در سیستمهایی که ایمنی و پایداری بسیار مهم است (مانند خودروها، تجهیزات پزشکی، سیستمهای هوافضا و...) استفاده از این استاندارد تقریباً ضروری است. MISRA C با ارائه قوانین و راهنماها، از بروز خطاهای رایج برنامهنویسی جلوگیری میکند و کیفیت نرمافزار را بهبود میبخشد.
کجا بیشتر بدانیم؟
اگر دوست دارید بیشتر درباره MISRA C بدانید، میتوانید عضو ما شوید.
#برنامه_نویسی #استاندارد_MISRA
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
👍10🤩3
#قانون 1.1 MISRA C - یک محیط استاندارد C
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #الزامی
○ اعمال برای: C90, C99, C11
امروز میخوایم در مورد یکی از مهمترین قوانین MISRA C صحبت کنیم: قانون 1.1. این قانون به طور خلاصه میگه که کدی که مینویسیم باید کاملاً با قواعد و محدودیتهای تعریف شده در استاندارد C (نسخه انتخابی) سازگار باشه.
چرا این قانون مهمه؟
○ قابلیت حمل: کدی که از استاندارد C پیروی میکنه، به احتمال زیاد روی کامپایلرهای مختلف و سیستمعاملهای گوناگون به درستی اجرا میشه.
○ پیشگیری از خطا: رعایت قواعد استاندارد، از بروز بسیاری از خطاهای رایج برنامهنویسی جلوگیری میکنه.
○ قابلیت نگهداری: کدی که استاندارد باشه، خواناتر و قابل فهمتره و نگهداری و توسعه اون آسونتره.
قانون 1.1 چی میگه؟
این قانون سه نکته اصلی رو شامل میشه:
1. عدم تخطی از قواعد نحوی و معنایی C
2. عدم تجاوز از محدودیتهای پیادهسازی
3. مجاز بودن افزونههای زبان
نکات مهم:
○ کامپایلرها موظفند برای تخطی از قواعد و محدودیتها، پیام خطا یا هشدار (warning) تولید کنن. اما این به معنی توقف حتمی کامپایل نیست.
○ تجاوز از محدودیتهای پیادهسازی ممکنه باعث تولید خروجی اجرایی بشه، اما اجرای صحیح اون تضمینشده نیست.
#برنامه_نویسی #استاندارد_MISRA
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #الزامی
○ اعمال برای: C90, C99, C11
امروز میخوایم در مورد یکی از مهمترین قوانین MISRA C صحبت کنیم: قانون 1.1. این قانون به طور خلاصه میگه که کدی که مینویسیم باید کاملاً با قواعد و محدودیتهای تعریف شده در استاندارد C (نسخه انتخابی) سازگار باشه.
چرا این قانون مهمه؟
○ قابلیت حمل: کدی که از استاندارد C پیروی میکنه، به احتمال زیاد روی کامپایلرهای مختلف و سیستمعاملهای گوناگون به درستی اجرا میشه.
○ پیشگیری از خطا: رعایت قواعد استاندارد، از بروز بسیاری از خطاهای رایج برنامهنویسی جلوگیری میکنه.
○ قابلیت نگهداری: کدی که استاندارد باشه، خواناتر و قابل فهمتره و نگهداری و توسعه اون آسونتره.
قانون 1.1 چی میگه؟
این قانون سه نکته اصلی رو شامل میشه:
1. عدم تخطی از قواعد نحوی و معنایی C
کد نباید هیچگونه تخطی از قواعد نگارشی (syntax) و محدودیتهای (constraints) تعریف شده در استاندارد C داشته باشه.
2. عدم تجاوز از محدودیتهای پیادهسازی
کامپایلرها محدودیتهایی برای ترجمه کد دارن (مثل طول نام متغیرها یا عمق توابع). کد نباید از این محدودیتها تجاوز کنه.
3. مجاز بودن افزونههای زبان
استفاده از افزونههای خاص کامپایلرها (language extensions) مجازه، به شرطی که مستند شده باشن و در طراحی پروژه توجیه شده باشن. برای مثال، کلماتی مثل inline یا مشخصکنندههای مکان حافظه مثل zpage، near و far__ که در سیستمهای embedded رایج هستند، از این دستهاند.
نکات مهم:
○ کامپایلرها موظفند برای تخطی از قواعد و محدودیتها، پیام خطا یا هشدار (warning) تولید کنن. اما این به معنی توقف حتمی کامپایل نیست.
○ تجاوز از محدودیتهای پیادهسازی ممکنه باعث تولید خروجی اجرایی بشه، اما اجرای صحیح اون تضمینشده نیست.
#برنامه_نویسی #استاندارد_MISRA
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
👍11🤩2🔥1👏1
#قانون 1.2 MISRA C - از افزونههای زبان C استفاده نکنیم!
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #توصیه_شده
○ اعمال برای: C90, C99, C11
یکی از نکات مهم در برنامهنویسی به زبان C، پرهیز از استفاده از افزونههای (Extensions) خاص کامپایلرهاست. چرا؟
برنامهای که به این افزونهها وابسته باشد، ممکن است به راحتی روی کامپایلرهای مختلف یا سیستمعاملهای گوناگون اجرا نشود (مشکل Portable بودن). استاندارد زبان C از کامپایلرها میخواهد که افزونههای خود را مستند کنند، اما این مستندات همیشه کامل نیستند و ممکن است رفتار افزونه در شرایط خاص را به طور دقیق شرح ندهند.
راه حل:
○ تا حد امکان از افزونهها استفاده نکنید.
○ اگر مجبور به استفاده از افزونهای هستید، دلیل آن را در مستندات پروژه خود ذکر کنید.
○ نحوه اطمینان از استفاده صحیح افزونه (مثلاً بررسی کامپایلر و پیامهای خطا) را نیز مستند کنید.
نکته مهم: در سیستمهای #Embedded (نهفته)، استفاده از افزونهها گاهی ضروری است. اما دقت کنید که افزونه نباید رفتار برنامههای استاندارد C را تغییر دهد. برای مثال، اگر کامپایلری، ارزیابی کامل عملگرهای منطقی (مثل && و ||) را به عنوان یک افزونه پیادهسازی کند (در حالی که استاندارد C میگوید ارزیابی به محض مشخص شدن نتیجه متوقف شود)، این افزونه با استاندارد سازگار نیست، زیرا ممکن است باعث بروز اثر جانبی (Side Effect) های ناخواسته شود.
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #توصیه_شده
○ اعمال برای: C90, C99, C11
یکی از نکات مهم در برنامهنویسی به زبان C، پرهیز از استفاده از افزونههای (Extensions) خاص کامپایلرهاست. چرا؟
برنامهای که به این افزونهها وابسته باشد، ممکن است به راحتی روی کامپایلرهای مختلف یا سیستمعاملهای گوناگون اجرا نشود (مشکل Portable بودن). استاندارد زبان C از کامپایلرها میخواهد که افزونههای خود را مستند کنند، اما این مستندات همیشه کامل نیستند و ممکن است رفتار افزونه در شرایط خاص را به طور دقیق شرح ندهند.
راه حل:
○ اگر مجبور به استفاده از افزونهای هستید، دلیل آن را در مستندات پروژه خود ذکر کنید.
○ نحوه اطمینان از استفاده صحیح افزونه (مثلاً بررسی کامپایلر و پیامهای خطا) را نیز مستند کنید.
نکته مهم: در سیستمهای #Embedded (نهفته)، استفاده از افزونهها گاهی ضروری است. اما دقت کنید که افزونه نباید رفتار برنامههای استاندارد C را تغییر دهد. برای مثال، اگر کامپایلری، ارزیابی کامل عملگرهای منطقی (مثل && و ||) را به عنوان یک افزونه پیادهسازی کند (در حالی که استاندارد C میگوید ارزیابی به محض مشخص شدن نتیجه متوقف شود)، این افزونه با استاندارد سازگار نیست، زیرا ممکن است باعث بروز اثر جانبی (Side Effect) های ناخواسته شود.
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
👍8👌1
Media is too big
VIEW IN TELEGRAM
#یادگیری_ماشین چیست؟
یادگیری ماشین (ML) به برخی از مهمترین فناوریهایی که ما استفاده میکنیم، از برنامههای ترجمه گرفته تا وسایل نقلیه خودران، قدرت میدهد. آموزشهای ما در این کانال مفاهیم اصلی ML را توضیح و #آموزش می دهد.
ML راه جدیدی برای حل مشکلات، پاسخ به سوالات پیچیده و ایجاد محتوای جدید ارائه می دهد. ML میتواند آب و هوا را پیشبینی کند، زمان سفر را تخمین بزند، آهنگها را توصیه کند، جملات را بهطور خودکار تکمیل کند، مقالات را خلاصه کند و تصاویری که قبلاً دیده نشدهاند تولید کند.
در اصطلاح اولیه، ML فرآیند آموزش یک نرمافزار است که مدل نامیده میشود تا پیشبینیهای مفید یا تولید محتوا از دادهها را انجام دهد.
به عنوان مثال، فرض کنید میخواهیم اپلیکیشنی برای پیشبینی بارندگی ایجاد کنیم، در اینصورت ما می توانیم از یک رویکرد سنتی یا یک رویکرد ML استفاده کنیم:
1. با استفاده از یک رویکرد سنتی، ما یک نمایش مبتنی بر فیزیک از جو و سطح زمین ایجاد میکنیم و مقادیر زیادی معادلات دینامیک سیالات را محاسبه میکنیم که کار بسیار دشواری است.
2. با استفاده از رویکرد ML، ما به مدل ML مقادیر زیادی داده آب و هوا می دهیم تا زمانی که مدل ML در نهایت رابطه ریاضی بین الگوهای آب و هوایی را که مقادیر متفاوتی از باران تولید می کنند را یاد بگیرد . سپس داده های آب و هوای فعلی را به مدل می دهیم و مقدار باران را پیش بینی می کند.
انواع سیستم های ML
سیستم های ML بر اساس نحوه یادگیری پیش بینی یا تولید محتوا در یک یا چند دسته از دسته های زیر قرار می گیرند:
○ یادگیری تحت نظارت
○ یادگیری بدون نظارت
○ یادگیری تقویتی
○ هوش مصنوعی مولد
#برنامه_نویسی #یادگیری_ماشین
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
یادگیری ماشین (ML) به برخی از مهمترین فناوریهایی که ما استفاده میکنیم، از برنامههای ترجمه گرفته تا وسایل نقلیه خودران، قدرت میدهد. آموزشهای ما در این کانال مفاهیم اصلی ML را توضیح و #آموزش می دهد.
ML راه جدیدی برای حل مشکلات، پاسخ به سوالات پیچیده و ایجاد محتوای جدید ارائه می دهد. ML میتواند آب و هوا را پیشبینی کند، زمان سفر را تخمین بزند، آهنگها را توصیه کند، جملات را بهطور خودکار تکمیل کند، مقالات را خلاصه کند و تصاویری که قبلاً دیده نشدهاند تولید کند.
در اصطلاح اولیه، ML فرآیند آموزش یک نرمافزار است که مدل نامیده میشود تا پیشبینیهای مفید یا تولید محتوا از دادهها را انجام دهد.
به عنوان مثال، فرض کنید میخواهیم اپلیکیشنی برای پیشبینی بارندگی ایجاد کنیم، در اینصورت ما می توانیم از یک رویکرد سنتی یا یک رویکرد ML استفاده کنیم:
1. با استفاده از یک رویکرد سنتی، ما یک نمایش مبتنی بر فیزیک از جو و سطح زمین ایجاد میکنیم و مقادیر زیادی معادلات دینامیک سیالات را محاسبه میکنیم که کار بسیار دشواری است.
2. با استفاده از رویکرد ML، ما به مدل ML مقادیر زیادی داده آب و هوا می دهیم تا زمانی که مدل ML در نهایت رابطه ریاضی بین الگوهای آب و هوایی را که مقادیر متفاوتی از باران تولید می کنند را یاد بگیرد . سپس داده های آب و هوای فعلی را به مدل می دهیم و مقدار باران را پیش بینی می کند.
انواع سیستم های ML
سیستم های ML بر اساس نحوه یادگیری پیش بینی یا تولید محتوا در یک یا چند دسته از دسته های زیر قرار می گیرند:
○ یادگیری تحت نظارت
○ یادگیری بدون نظارت
○ یادگیری تقویتی
○ هوش مصنوعی مولد
#برنامه_نویسی #یادگیری_ماشین
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
🤩2
به سوال زیر پاسخ دهید:
"مدل" در یادگیری ماشین چیست؟
"مدل" در یادگیری ماشین چیست؟
Final Results
17%
نمایش کوچکتری از چیزی است که شما در حال مطالعه آن هستید.
80%
یک رابطه ریاضی است که از دادههایی به دست میآید که یک سیستم ML از آن برای پیش بینی استفاده می کند
2%
یک قطعه سخت افزار کامپیوتر است
👍7
#قانون 1.3 MISRA C - از رفتارهای تعریفنشده و نامشخص در C دوری کنیم!
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #الزامی
○ اعمال برای: C90, C99, C11
یکی از مهمترین قوانین در برنامهنویسی C، بهخصوص در سیستمهای حساس، پرهیز از رفتارهای «تعریفنشده» (Undefined Behavior) و «نامشخص» (Unspecified Behavior) است. استاندارد MISRA C هم بر این موضوع تأکید ویژهای دارد.
رفتار تعریفنشده یعنی چی؟
رفتار نامشخص چطور؟
چرا این موضوع مهمه؟
فرض کنید برنامهای نوشتید که در شرایط خاصی، دچار رفتار تعریفنشده میشه. این برنامه ممکنه روی سیستم شما به درستی کار کنه، اما روی یه سیستم دیگه یا حتی با یه کامپایلر دیگه، رفتاری کاملاً متفاوت و غیرمنتظره داشته باشه. این موضوع میتونه منجر به باگهای پنهان و مشکلات امنیتی جدی بشه.
MISRA C چی میگه؟
قانون 1.3 استاندارد MISRA C به طور خاص از وقوع هرگونه رفتار تعریفنشده و رفتارهای نامشخص «بحرانی» جلوگیری میکنه. این استاندارد یه لیست از این رفتارها رو در ضمیمه H خودش آورده و مشخص کرده که کدوم قوانین MISRA C از بروز هر کدوم جلوگیری میکنن.
یه مثال ساده:
دسترسی به عنصری خارج از محدوده یک آرایه، یه نمونه از رفتار تعریفنشده است.
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #الزامی
○ اعمال برای: C90, C99, C11
یکی از مهمترین قوانین در برنامهنویسی C، بهخصوص در سیستمهای حساس، پرهیز از رفتارهای «تعریفنشده» (Undefined Behavior) و «نامشخص» (Unspecified Behavior) است. استاندارد MISRA C هم بر این موضوع تأکید ویژهای دارد.
رفتار تعریفنشده یعنی چی؟
رفتار تعریفنشده به وضعیتی در کد گفته میشه که استاندارد زبان C هیچ تضمینی برای نحوه عملکرد برنامه در اون حالت نمیده. این یعنی کامپایلرها میتونن هر کاری انجام بدن، از کرش کردن برنامه گرفته تا تولید نتایج عجیب و غیرقابل پیشبینی. این اتفاقات ممکنه باعث بروز مشکلات جدی در سیستمهای حیاتی بشه.
رفتار نامشخص چطور؟
رفتار نامشخص هم وضعیتیه که استاندارد C، رفتارهای مختلفی رو برای اون حالت مجاز دونسته، اما انتخاب نهایی به کامپایلر یا محیط اجرا سپرده شده. گرچه به اندازه رفتار تعریفنشده خطرناک نیست، اما میتونه باعث عدم قابلیت انتقال کد بین سیستمهای مختلف بشه.
چرا این موضوع مهمه؟
فرض کنید برنامهای نوشتید که در شرایط خاصی، دچار رفتار تعریفنشده میشه. این برنامه ممکنه روی سیستم شما به درستی کار کنه، اما روی یه سیستم دیگه یا حتی با یه کامپایلر دیگه، رفتاری کاملاً متفاوت و غیرمنتظره داشته باشه. این موضوع میتونه منجر به باگهای پنهان و مشکلات امنیتی جدی بشه.
MISRA C چی میگه؟
قانون 1.3 استاندارد MISRA C به طور خاص از وقوع هرگونه رفتار تعریفنشده و رفتارهای نامشخص «بحرانی» جلوگیری میکنه. این استاندارد یه لیست از این رفتارها رو در ضمیمه H خودش آورده و مشخص کرده که کدوم قوانین MISRA C از بروز هر کدوم جلوگیری میکنن.
یه مثال ساده:
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
👍4
Media is too big
VIEW IN TELEGRAM
#هوش_مصنوعی #یادگیری_ماشین
یادگیری تحت نظارت
مدلهای یادگیری نظارت شده میتوانند پس از دیدن دادههای زیاد با پاسخهای صحیح و سپس کشف ارتباط بین عناصر موجود در دادهها که پاسخهای صحیح را تولید میکنند، پیشبینی کنند.
این عمل مانند دانش آموزی است که با مطالعه امتحانات قدیمی که شامل سؤال و پاسخ است، مطالب جدیدی را یاد می گیرد. هنگامی که دانش آموز به اندازه کافی در امتحانات قدیمی آموزش دید، دانش آموز به خوبی برای شرکت در امتحان جدید آماده می شود. این سیستمهای ML تحت نظارت هستند به این معنا که یک انسان دادههای سیستم ML را با نتایج صحیح شناخته شده میدهد.
دو مورد از رایج ترین موارد استفاده برای یادگیری تحت نظارت، رگرسیون و طبقه بندی هستند.
1. رگرسیون
یک مدل رگرسیون یک مقدار عددی را پیش بینی می کند. به عنوان مثال، یک مدل آب و هوا که میزان بارندگی را بر حسب اینچ یا میلی متر پیش بینی می کند، یک مدل رگرسیونی است.
2. طبقه بندی
مدلهای طبقهبندی احتمال تعلق چیزی به یک دسته را پیشبینی میکنند. بر خلاف مدلهای رگرسیون که خروجی آنها عدد است، مدلهای طبقهبندی مقداری را به دست میدهند که بیان میکند آیا چیزی به یک دسته خاص تعلق دارد یا نه. برای مثال، مدلهای طبقهبندی برای پیشبینی هرزنامه بودن ایمیل یا عکس حاوی گربه استفاده میشود.
مدل های طبقه بندی به دو گروه تقسیم می شوند:
○ طبقه بندی باینری
○ طبقه بندی چند طبقه
#برنامه_نویسی #یادگیری_ماشین #هوش_مصنوعی
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
یادگیری تحت نظارت
مدلهای یادگیری نظارت شده میتوانند پس از دیدن دادههای زیاد با پاسخهای صحیح و سپس کشف ارتباط بین عناصر موجود در دادهها که پاسخهای صحیح را تولید میکنند، پیشبینی کنند.
این عمل مانند دانش آموزی است که با مطالعه امتحانات قدیمی که شامل سؤال و پاسخ است، مطالب جدیدی را یاد می گیرد. هنگامی که دانش آموز به اندازه کافی در امتحانات قدیمی آموزش دید، دانش آموز به خوبی برای شرکت در امتحان جدید آماده می شود. این سیستمهای ML تحت نظارت هستند به این معنا که یک انسان دادههای سیستم ML را با نتایج صحیح شناخته شده میدهد.
دو مورد از رایج ترین موارد استفاده برای یادگیری تحت نظارت، رگرسیون و طبقه بندی هستند.
1. رگرسیون
یک مدل رگرسیون یک مقدار عددی را پیش بینی می کند. به عنوان مثال، یک مدل آب و هوا که میزان بارندگی را بر حسب اینچ یا میلی متر پیش بینی می کند، یک مدل رگرسیونی است.
2. طبقه بندی
مدلهای طبقهبندی احتمال تعلق چیزی به یک دسته را پیشبینی میکنند. بر خلاف مدلهای رگرسیون که خروجی آنها عدد است، مدلهای طبقهبندی مقداری را به دست میدهند که بیان میکند آیا چیزی به یک دسته خاص تعلق دارد یا نه. برای مثال، مدلهای طبقهبندی برای پیشبینی هرزنامه بودن ایمیل یا عکس حاوی گربه استفاده میشود.
مدل های طبقه بندی به دو گروه تقسیم می شوند:
○ طبقه بندی باینری
مدلهای طبقهبندی باینری مقداری را از کلاسی که فقط شامل دو مقدار است، خروجی میدهد، برای مثال، مدلی که خروجی rain یا no rain را دارد.
○ طبقه بندی چند طبقه
مدلهای طبقهبندی چند کلاسه مقداری را از کلاسی که بیش از دو مقدار دارد، خروجی میدهد، برای مثال، مدلی که میتواند rain ، hail ، snow یا sleet را خروجی دهد.
#برنامه_نویسی #یادگیری_ماشین #هوش_مصنوعی
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
❤2
برنامه زمانبندی و دسته بندی مطالب:
#برنامه_نویسی
#الکترونیک
#مکاترونیک
#رباتیک
#یادگیری_ماشین (یکشنبه ها و سه شنبه ها)
#استاندارد_MISRA (یکشنبه ها و سه شنبه ها)
چند نکته مهم:
- مطالب کانال با #هشتگ مناسب منتشر خواهد شد
- استفاده از محتوای این کانال کاملا رایگان بوده و انتشار آن با ذکر منبع بلامانع است
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
#برنامه_نویسی
#الکترونیک
#مکاترونیک
#رباتیک
#یادگیری_ماشین (یکشنبه ها و سه شنبه ها)
#استاندارد_MISRA (یکشنبه ها و سه شنبه ها)
چند نکته مهم:
- مطالب کانال با #هشتگ مناسب منتشر خواهد شد
- استفاده از محتوای این کانال کاملا رایگان بوده و انتشار آن با ذکر منبع بلامانع است
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
❤8👍2
- نسخه: 1.17.0
- سیستم عامل: ویندوز
همانطور که میدانید نرمافزار قدرتمند STM32CubeIDE، یه محیط توسعه یکپارچه و چندسکویی (Multi-OS) برای توسعه برنامههای میکروکنترلرها و میکروپروسسورهای STM32 هست که به صورت رایگان ارائه شده. این نرمافزار، بخشی از اکوسیستم نرمافزاری STM32Cube محسوب میشود.
امکانات کلیدی STM32CubeIDE:
🐞 امکانات دیباگ پیشرفته شامل نمایش رجیسترها، حافظه، و دیباگ RTOS
🐧 پشتیبانی از سیستمعاملهای ویندوز، لینوکس و macOS (نسخههای ۶۴ بیتی)
با استفاده از STM32CubeIDE، شما میتوانید به راحتی پروژههای خودتان را برای میکروکنترلرهای STM32 ایجاد، کدنویسی، کامپایل و دیباگ کنید. این نرمافزار با ارائه امکانات پیشرفته، به شما کمک میکند تا پروژههای خودتان را سریعتر و کارآمدتر توسعه دهید.
برای دانلود مستقیم STM32CubeIDE به لینک زیر مراجعه نمایید:
https://news.1rj.ru/str/mBedLabLearning/48
#STM32 #STM32CubeIDE #میکروکنترلر #برنامه_نویسی #الکترونیک #EmbeddedSystems #نرم_افزار
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1🤩1
en.st-stm32cubeide_1.17.0_23558_20241125_2245_x86_64.exe.zip
1 GB
فایل نرم افزار STM32CubeIDE نسخه 1.17.0
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
❤2🤩2👍1
#قانون 1.4 MISRA C - از ویژگیهای جدید زبان C11 با احتیاط استفاده کنید!
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #الزامی
○ اعمال برای: C11
در توسعه نرمافزارهای حساس به ایمنی و امنیت، رعایت استانداردها و پرهیز از رفتارهای غیرقابل پیشبینی بسیار حیاتی است. Rule 1.4 در استاندارد MISRA C به همین موضوع میپردازد و استفاده از ویژگیهای "نوظهور" زبان را محدود میکند.
چرا این قانون مهم است؟
استفاده از این ویژگیها میتواند منجر به رفتارهای undefined (تعریفنشده)، unspecified (نامشخص) یا implementation-defined (وابسته به پیادهسازی) شود. این یعنی کد شما ممکن است در کامپایلرها یا سیستمعاملهای مختلف، رفتارهای متفاوتی داشته باشد و این امر میتواند خطرات جدی به همراه داشته باشد. حتی اگر رفتاری کاملاً تعریفشده باشد، ممکن است با انتظارات توسعهدهنده همخوانی نداشته باشد و منجر به باگ شود.
به طور خاص، این قانون استفاده از ویژگیهای Annex K (رابطهای بررسی مرزها) را به جز تعریف __STDC_WANT_LIB_EXT1__ به 0، ممنوع میکند.
راه حل چیست؟
اگر مجبور به استفاده از یک ویژگی نوظهور هستید، حتماً باید یک "انحراف" (deviation) ثبت کنید و رفتارهای نامطلوب احتمالی را شناسایی و اقدامات لازم برای جلوگیری از تأثیر آنها بر ایمنی و امنیت سیستم را مشخص کنید.
به عبارت دیگر، قبل از استفاده از هر ویژگی جدید، به دقت مستندات آن را بررسی کنید و از پیامدهای احتمالی آن آگاه باشید.
قوانین مرتبط:
○ قانون 1.3
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #الزامی
○ اعمال برای: C11
در توسعه نرمافزارهای حساس به ایمنی و امنیت، رعایت استانداردها و پرهیز از رفتارهای غیرقابل پیشبینی بسیار حیاتی است. Rule 1.4 در استاندارد MISRA C به همین موضوع میپردازد و استفاده از ویژگیهای "نوظهور" زبان را محدود میکند.
چرا این قانون مهم است؟
استفاده از این ویژگیها میتواند منجر به رفتارهای undefined (تعریفنشده)، unspecified (نامشخص) یا implementation-defined (وابسته به پیادهسازی) شود. این یعنی کد شما ممکن است در کامپایلرها یا سیستمعاملهای مختلف، رفتارهای متفاوتی داشته باشد و این امر میتواند خطرات جدی به همراه داشته باشد. حتی اگر رفتاری کاملاً تعریفشده باشد، ممکن است با انتظارات توسعهدهنده همخوانی نداشته باشد و منجر به باگ شود.
به طور خاص، این قانون استفاده از ویژگیهای Annex K (رابطهای بررسی مرزها) را به جز تعریف __STDC_WANT_LIB_EXT1__ به 0، ممنوع میکند.
راه حل چیست؟
به عبارت دیگر، قبل از استفاده از هر ویژگی جدید، به دقت مستندات آن را بررسی کنید و از پیامدهای احتمالی آن آگاه باشید.
قوانین مرتبط:
○ قانون 1.3
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
🔥1🤩1
#هوش_مصنوعی #یادگیری_ماشین
یادگیری بدون نظارت
مدلهای یادگیری بدون نظارت با دادههایی که حاوی هیچ پاسخ صحیحی نیستند، پیشبینی میکنند. هدف یک مدل یادگیری بدون نظارت، شناسایی الگوهای معنادار در میان داده ها است. به عبارت دیگر، مدل هیچ راهنمایی در مورد نحوه طبقه بندی هر قطعه از داده ها ندارد، اما در عوض باید قوانین خود را استنباط کند.
یک مدل یادگیری بدون نظارت متداول از تکنیکی به نام خوشه بندی استفاده می کند. مدل نقاط داده ای را پیدا می کند که گروه بندی های طبیعی را مشخص می کند (تصویر پیوست).
ادامه در پست بعد...
#برنامه_نویسی #یادگیری_ماشین #هوش_مصنوعی
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
یادگیری بدون نظارت
مدلهای یادگیری بدون نظارت با دادههایی که حاوی هیچ پاسخ صحیحی نیستند، پیشبینی میکنند. هدف یک مدل یادگیری بدون نظارت، شناسایی الگوهای معنادار در میان داده ها است. به عبارت دیگر، مدل هیچ راهنمایی در مورد نحوه طبقه بندی هر قطعه از داده ها ندارد، اما در عوض باید قوانین خود را استنباط کند.
یک مدل یادگیری بدون نظارت متداول از تکنیکی به نام خوشه بندی استفاده می کند. مدل نقاط داده ای را پیدا می کند که گروه بندی های طبیعی را مشخص می کند (تصویر پیوست).
ادامه در پست بعد...
#برنامه_نویسی #یادگیری_ماشین #هوش_مصنوعی
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
👍2
#هوش_مصنوعی #یادگیری_ماشین
ادامه یادگیری بدون نظارت...
خوشه بندی با طبقه بندی متفاوت است زیرا دسته ها توسط شما تعریف نشده اند. به عنوان مثال، یک مدل بدون نظارت ممکن است مجموعه داده های آب و هوا را بر اساس دما دسته بندی کند و بخش بندی هایی را که فصل ها را تعریف می کنند، آشکار کند. در نهایت ممکن است سعی نیاز داشته باشید آن خوشه ها را بر اساس درک خود از مجموعه داده نام گذاری کنید (تصویر پیوست).
#برنامه_نویسی #یادگیری_ماشین #هوش_مصنوعی
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
ادامه یادگیری بدون نظارت...
خوشه بندی با طبقه بندی متفاوت است زیرا دسته ها توسط شما تعریف نشده اند. به عنوان مثال، یک مدل بدون نظارت ممکن است مجموعه داده های آب و هوا را بر اساس دما دسته بندی کند و بخش بندی هایی را که فصل ها را تعریف می کنند، آشکار کند. در نهایت ممکن است سعی نیاز داشته باشید آن خوشه ها را بر اساس درک خود از مجموعه داده نام گذاری کنید (تصویر پیوست).
#برنامه_نویسی #یادگیری_ماشین #هوش_مصنوعی
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
👍1
#قانون 1.5 MISRA C - دوری از ویژگیهای منسوخ شده در کدنویسی C
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #الزامی
○ اعمال برای: C99, C11
تصور کنید در حال نوشتن یک برنامه به زبان C هستید. آیا از تمام ویژگیهای زبان و بهروزرسانیهای استاندارد آن آگاهید؟ استفاده از ویژگیهای منسوخ شده (Obsolescent) میتواند منجر به مشکلات جدی در کد شما شود. به همین دلیل استاندارد MISRA قانونی را تحت عنوان قانون ۱.۵ وضع کرده است.
قانون MISRA 1.5 چیست؟
این قانون به ما میگوید که نباید از ویژگیهای منسوخ شده زبان C استفاده کنیم. این ویژگیها در بخش "جهتگیریهای آینده زبان" و "جهتگیریهای آینده کتابخانه" در استاندارد C (مانند C99 و C11) و همچنین در ضمیمه F آن ذکر شدهاند.
چرا باید از این قانون پیروی کنیم؟
استاندارد C ویژگیها را زمانی منسوخ اعلام میکند که:
○ جایگزینهای ایمنتر یا بهتری برای آنها وجود داشته باشد.
○ رفتار نامطلوبی از خود نشان دهند.
ویژگیهایی که در یک نسخه از استاندارد منسوخ اعلام میشوند، ممکن است در نسخههای بعدی به طور کامل حذف شوند. این موضوع میتواند باعث بروز خطا در کدهایی شود که از این ویژگیها استفاده میکنند.
مزایای رعایت قانون MISRA 1.5:
○ کد پایدارتر و سازگارتر با نسخههای مختلف استاندارد C
○ کاهش احتمال بروز خطا و مشکلات ناشی از ویژگیهای منسوخ شده
○ افزایش خوانایی و نگهداری کد
به طور خلاصه: با پیروی از قانون MISRA 1.5، کد خود را در برابر مشکلات احتمالی ناشی از استفاده از ویژگیهای منسوخ شده ایمن کنید و به نوشتن کد استاندارد و قابل اعتماد پایبند باشید.
قوانین مرتبط:
○ قانون 1.1
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
○ گروه: #محیط_استاندارد_C
○ دستهبندی: #الزامی
○ اعمال برای: C99, C11
تصور کنید در حال نوشتن یک برنامه به زبان C هستید. آیا از تمام ویژگیهای زبان و بهروزرسانیهای استاندارد آن آگاهید؟ استفاده از ویژگیهای منسوخ شده (Obsolescent) میتواند منجر به مشکلات جدی در کد شما شود. به همین دلیل استاندارد MISRA قانونی را تحت عنوان قانون ۱.۵ وضع کرده است.
قانون MISRA 1.5 چیست؟
این قانون به ما میگوید که نباید از ویژگیهای منسوخ شده زبان C استفاده کنیم. این ویژگیها در بخش "جهتگیریهای آینده زبان" و "جهتگیریهای آینده کتابخانه" در استاندارد C (مانند C99 و C11) و همچنین در ضمیمه F آن ذکر شدهاند.
چرا باید از این قانون پیروی کنیم؟
استاندارد C ویژگیها را زمانی منسوخ اعلام میکند که:
○ جایگزینهای ایمنتر یا بهتری برای آنها وجود داشته باشد.
○ رفتار نامطلوبی از خود نشان دهند.
ویژگیهایی که در یک نسخه از استاندارد منسوخ اعلام میشوند، ممکن است در نسخههای بعدی به طور کامل حذف شوند. این موضوع میتواند باعث بروز خطا در کدهایی شود که از این ویژگیها استفاده میکنند.
مزایای رعایت قانون MISRA 1.5:
○ کد پایدارتر و سازگارتر با نسخههای مختلف استاندارد C
○ کاهش احتمال بروز خطا و مشکلات ناشی از ویژگیهای منسوخ شده
○ افزایش خوانایی و نگهداری کد
به طور خلاصه: با پیروی از قانون MISRA 1.5، کد خود را در برابر مشکلات احتمالی ناشی از استفاده از ویژگیهای منسوخ شده ایمن کنید و به نوشتن کد استاندارد و قابل اعتماد پایبند باشید.
قوانین مرتبط:
○ قانون 1.1
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
👍3
#هوش_مصنوعی #یادگیری_ماشین
یادگیری تقویتی
مدل های یادگیری تقویتی با دریافت پاداش یا جریمه بر اساس اقدامات انجام شده در یک محیط، پیش بینی می کنند.
یک سیستم یادگیری تقویتی سیاستی را ایجاد می کند که بهترین استراتژی را برای دریافت بیشترین پاداش تعریف می کند.
یادگیری تقویتی برای آموزش روباتها برای انجام وظایفی مانند راه رفتن در اتاق و برنامههای نرمافزاری مانند AlphaGo برای انجام بازی Go استفاده میشود.
هوش مصنوعی مولد
هوش مصنوعی مولد کلاسی از مدلها است که محتوا را از ورودی کاربر ایجاد میکند. برای مثال، هوش مصنوعی مولد میتواند تصاویر، ترکیبهای موسیقی و جوکهای منحصربهفردی ایجاد کند. می تواند مقالات را خلاصه کند، نحوه انجام یک کار را توضیح دهد، یا یک عکس را ویرایش کند.
هوش مصنوعی مولد میتواند ورودیهای مختلفی را دریافت کند و خروجیهای مختلفی مانند متن، تصویر، صدا و ویدئو ایجاد کند. همچنین می تواند ترکیبی از اینها را بگیرد و ایجاد کند. به عنوان مثال، یک مدل می تواند یک تصویر را به عنوان ورودی بگیرد و یک تصویر و متن را به عنوان خروجی ایجاد کند، یا یک تصویر و متن را به عنوان ورودی بگیرد و یک ویدیو را به عنوان خروجی ایجاد کند.
ما میتوانیم مدلهای مولد را با ورودیها و خروجیهایشان، که معمولاً به صورت «نوع ورودی» تا «نوع خروجی» نوشته میشوند، مورد بحث قرار دهیم. به عنوان مثال، در زیر فهرستی جزئی از برخی ورودی ها و خروجی ها برای مدل های تولیدی آمده است:
○ متن به متن
○ متن به تصویر
○ متن به ویدئو
○ متن به کد
○ تبدیل متن به گفتار
○ تصویر و متن به تصویر
هوش مصنوعی مولد چگونه کار می کند؟
در سطح بالا، مدلهای مولد الگوهایی را در دادهها با هدف تولید دادههای جدید اما مشابه یاد میگیرند. مدل های مولد مانند زیر هستند:
○ کمدین هایی که با مشاهده رفتارها و سبک حرف زدن افراد یاد می گیرند که از دیگران تقلید کنند
○ هنرمندانی که با مطالعه تعداد زیادی نقاشی در آن سبک، نقاشی را در سبک خاصی یاد می گیرند
برای تولید خروجیهای منحصربهفرد و خلاقانه، مدلهای مولد در ابتدا با استفاده از رویکردی بدون نظارت آموزش داده میشوند، جایی که مدل یاد میگیرد دادههایی را که روی آن آموزش داده شده است تقلید کند. این مدل گاهی اوقات با استفاده از یادگیری تحت نظارت یا تقویتی بر روی دادههای خاص مرتبط با وظایفی که ممکن است از مدل خواسته شود، آموزش داده میشود، برای مثال، خلاصه کردن یک مقاله یا ویرایش یک عکس.
#برنامه_نویسی #یادگیری_ماشین #هوش_مصنوعی
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
یادگیری تقویتی
مدل های یادگیری تقویتی با دریافت پاداش یا جریمه بر اساس اقدامات انجام شده در یک محیط، پیش بینی می کنند.
یک سیستم یادگیری تقویتی سیاستی را ایجاد می کند که بهترین استراتژی را برای دریافت بیشترین پاداش تعریف می کند.
یادگیری تقویتی برای آموزش روباتها برای انجام وظایفی مانند راه رفتن در اتاق و برنامههای نرمافزاری مانند AlphaGo برای انجام بازی Go استفاده میشود.
هوش مصنوعی مولد
هوش مصنوعی مولد کلاسی از مدلها است که محتوا را از ورودی کاربر ایجاد میکند. برای مثال، هوش مصنوعی مولد میتواند تصاویر، ترکیبهای موسیقی و جوکهای منحصربهفردی ایجاد کند. می تواند مقالات را خلاصه کند، نحوه انجام یک کار را توضیح دهد، یا یک عکس را ویرایش کند.
هوش مصنوعی مولد میتواند ورودیهای مختلفی را دریافت کند و خروجیهای مختلفی مانند متن، تصویر، صدا و ویدئو ایجاد کند. همچنین می تواند ترکیبی از اینها را بگیرد و ایجاد کند. به عنوان مثال، یک مدل می تواند یک تصویر را به عنوان ورودی بگیرد و یک تصویر و متن را به عنوان خروجی ایجاد کند، یا یک تصویر و متن را به عنوان ورودی بگیرد و یک ویدیو را به عنوان خروجی ایجاد کند.
ما میتوانیم مدلهای مولد را با ورودیها و خروجیهایشان، که معمولاً به صورت «نوع ورودی» تا «نوع خروجی» نوشته میشوند، مورد بحث قرار دهیم. به عنوان مثال، در زیر فهرستی جزئی از برخی ورودی ها و خروجی ها برای مدل های تولیدی آمده است:
○ متن به متن
○ متن به تصویر
○ متن به ویدئو
○ متن به کد
○ تبدیل متن به گفتار
○ تصویر و متن به تصویر
هوش مصنوعی مولد چگونه کار می کند؟
در سطح بالا، مدلهای مولد الگوهایی را در دادهها با هدف تولید دادههای جدید اما مشابه یاد میگیرند. مدل های مولد مانند زیر هستند:
○ کمدین هایی که با مشاهده رفتارها و سبک حرف زدن افراد یاد می گیرند که از دیگران تقلید کنند
○ هنرمندانی که با مطالعه تعداد زیادی نقاشی در آن سبک، نقاشی را در سبک خاصی یاد می گیرند
برای تولید خروجیهای منحصربهفرد و خلاقانه، مدلهای مولد در ابتدا با استفاده از رویکردی بدون نظارت آموزش داده میشوند، جایی که مدل یاد میگیرد دادههایی را که روی آن آموزش داده شده است تقلید کند. این مدل گاهی اوقات با استفاده از یادگیری تحت نظارت یا تقویتی بر روی دادههای خاص مرتبط با وظایفی که ممکن است از مدل خواسته شود، آموزش داده میشود، برای مثال، خلاصه کردن یک مقاله یا ویرایش یک عکس.
#برنامه_نویسی #یادگیری_ماشین #هوش_مصنوعی
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
👍6
#قانون 2.1 MISRA C - عدم وجود کد غیرقابل دسترس
○ گروه: #کدهای_استفاده_نشده
○ دستهبندی: #الزامی
○ اعمال برای: C90, C99, C11
کد غیرقابل دسترس، کدی است که تحت هیچ شرایطی در طول اجرای برنامه اجرا نمیشود. وجود این کد میتواند نشانهای از خطای منطقی در برنامه باشد. اگرچه کامپایلر مجاز به حذف این کد است، اما این کار اجباری نیست. باقی ماندن کد غیرقابل دسترس باعث اتلاف منابع میشود، به عنوان مثال:
○ اشغال فضای حافظه
○ انتخاب دستورات پرش طولانیتر و کندتر توسط کامپایلر
○ جلوگیری از قرارگیری کل حلقه در حافظه کش دستورالعمل
دلایل اهمیت این قانون:
○ بهبود خوانایی و نگهداری کد
○ بهینهسازی عملکرد
○ جلوگیری از خطاهای احتمالی
موارد خاص:
گاهی اوقات برای مدیریت موارد استثنایی، کدی درج میشود که به ظاهر غیرقابل دسترس است. به عنوان مثال، در دستور switch که تمام مقادیر ممکن عبارت کنترلی توسط case ها پوشش داده شدهاند، طبق قانون 16.4 باید یک default وجود داشته باشد. هدف از default، گرفتن مقادیری است که به طور معمول نباید رخ دهند، اما ممکن است در نتیجه موارد زیر ایجاد شده باشند:
○ رفتار تعریف نشده در برنامه
○ خرابی سختافزار پردازنده
اگر کامپایلر بتواند ثابت کند که یک default غیرقابل دسترس است، ممکن است آن را حذف کند. برای جلوگیری از این اتفاق و حفظ عملکرد دفاعی کد، میتوان از دسترسی volatile استفاده کرد. با استفاده از volatile، کامپایلر مجبور میشود فرض کند که عبارت کنترلی میتواند هر مقداری را بگیرد.
مثال:
در مثال بالا، دستور ;res = c بعد از ;return res قرار گرفته و هرگز اجرا نخواهد شد، بنابراین مصداق کد غیرقابل دسترس است و باید حذف شود.
نکته: کدی که توسط دستورات پیشپردازنده به صورت شرطی حذف شده است، مشمول این قانون نمیشود.
قوانین مرتبط:
○ قانون 14.3
○ قانون 16.4
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
○ گروه: #کدهای_استفاده_نشده
○ دستهبندی: #الزامی
○ اعمال برای: C90, C99, C11
کد غیرقابل دسترس، کدی است که تحت هیچ شرایطی در طول اجرای برنامه اجرا نمیشود. وجود این کد میتواند نشانهای از خطای منطقی در برنامه باشد. اگرچه کامپایلر مجاز به حذف این کد است، اما این کار اجباری نیست. باقی ماندن کد غیرقابل دسترس باعث اتلاف منابع میشود، به عنوان مثال:
○ اشغال فضای حافظه
○ انتخاب دستورات پرش طولانیتر و کندتر توسط کامپایلر
○ جلوگیری از قرارگیری کل حلقه در حافظه کش دستورالعمل
دلایل اهمیت این قانون:
○ بهبود خوانایی و نگهداری کد
حذف کد غیرقابل دسترس، کد را تمیزتر و درک آن را آسانتر میکند.
○ بهینهسازی عملکرد
حذف کد غیرضروری باعث کاهش حجم کد و بهبود عملکرد برنامه میشود.
○ جلوگیری از خطاهای احتمالی
وجود کد غیرقابل دسترس میتواند نشانهای از خطاهای منطقی باشد که ممکن است در آینده مشکلساز شوند.
موارد خاص:
گاهی اوقات برای مدیریت موارد استثنایی، کدی درج میشود که به ظاهر غیرقابل دسترس است. به عنوان مثال، در دستور switch که تمام مقادیر ممکن عبارت کنترلی توسط case ها پوشش داده شدهاند، طبق قانون 16.4 باید یک default وجود داشته باشد. هدف از default، گرفتن مقادیری است که به طور معمول نباید رخ دهند، اما ممکن است در نتیجه موارد زیر ایجاد شده باشند:
○ رفتار تعریف نشده در برنامه
○ خرابی سختافزار پردازنده
اگر کامپایلر بتواند ثابت کند که یک default غیرقابل دسترس است، ممکن است آن را حذف کند. برای جلوگیری از این اتفاق و حفظ عملکرد دفاعی کد، میتوان از دسترسی volatile استفاده کرد. با استفاده از volatile، کامپایلر مجبور میشود فرض کند که عبارت کنترلی میتواند هر مقداری را بگیرد.
مثال:
enum light { red, amber, red_amber, green };
enum light next_light ( enum light c )
{
enum light res;
switch ( c )
{
case red:
res = red_amber;
break;
case red_amber:
res = green;
break;
case green:
res = amber;
break;
case amber:
res = red;
break;
default:
{
error_handler ( );
break;
}
}
return res;
res = c; // غیر منطبق - این دستور قطعا غیرقابل دسترس است
}
در مثال بالا، دستور ;res = c بعد از ;return res قرار گرفته و هرگز اجرا نخواهد شد، بنابراین مصداق کد غیرقابل دسترس است و باید حذف شود.
نکته: کدی که توسط دستورات پیشپردازنده به صورت شرطی حذف شده است، مشمول این قانون نمیشود.
قوانین مرتبط:
○ قانون 14.3
○ قانون 16.4
#برنامه_نویسی #استاندارد_MISRA
#Embedded
📍امبدلب به فارسی:
@mBedLabLearning
📍mBedLab in English:
@mBedLabLearningEN
📍mBedLab Türkçe'de
@mBedLabLearningTR
👍1👌1