
نرمافزارهای سنتی در برابر سیستمهای هوش مصنوعی: تفاوت در چیست؟
منتشرشده توسط نهاد آموزشی افغان گیکس
درک تفاوت میان نرمافزارهای سنتی و سیستمهای هوش مصنوعی یکی از مهمترین گامها برای فهم فناوریهای مدرن است. بسیاری از ابزارهایی که امروزه از آنها استفاده میکنیم—از موتورهای جستجو گرفته تا دستیارهای هوشمند و چتباتها—در ظاهر شبیه نرمافزارهای معمولی به نظر میرسند، اما در پشت صحنه بر اساس اصول کاملاً متفاوتی عمل میکنند.
برای دههها، نرمافزارها بر پایهٔ مجموعهای از قوانین ثابت و از پیش تعیینشده ساخته میشدند. اما ظهور هوش مصنوعی رویکرد جدیدی را معرفی کرد؛ رویکردی که در آن سیستم به جای پیروی صرف از قوانین نوشتهشده توسط انسان، میتواند از دادهها یاد بگیرد و الگوها را کشف کند.
این تفاوت بنیادین، دلیل اصلی تحولاتی است که امروزه در صنعت فناوری مشاهده میکنیم.
نرمافزار سنتی چگونه کار میکند؟
در یک نرمافزار سنتی، تمام منطق سیستم توسط برنامهنویس تعریف میشود. برنامهنویس مجموعهای از قوانین، شرایط و دستورالعملها را مینویسد و کامپیوتر دقیقاً همان قوانین را اجرا میکند.
به بیان ساده:

برای مثال، فرض کنید میخواهیم برنامهای بسازیم که مشخص کند آیا یک فرد واجد شرایط دریافت گواهینامه رانندگی است یا خیر.
برنامهنویس ممکن است چنین قوانینی تعریف کند:
اگر سن کمتر از ۱۸ سال باشد → رد شود.
اگر سن ۱۸ سال یا بیشتر باشد → پذیرفته شود.
در این حالت، نرمافزار هیچ درکی از مفهوم سن، رانندگی یا شرایط اجتماعی ندارد. تنها کاری که انجام میدهد اجرای قوانینی است که قبلاً برای آن نوشته شدهاند.
این روش در بسیاری از کاربردها بسیار مؤثر است، اما زمانی با مشکل مواجه میشود که مسئله پیچیده، مبهم یا متغیر باشد.
محدودیت نرمافزارهای سنتی
بسیاری از مسائل دنیای واقعی را نمیتوان با چند قانون ساده توصیف کرد.
برای مثال:
چگونه میتوان هزاران قانون مختلف برای تشخیص چهره نوشت؟
چگونه میتوان تمام حالتهای ممکن یک مکالمه انسانی را پیشبینی کرد؟
چگونه میتوان برای تشخیص هرزنامه (Spam) میلیونها الگوی مختلف تعریف نمود؟
در چنین شرایطی نوشتن قوانین برای تمام سناریوهای ممکن تقریباً غیرممکن میشود.
به همین دلیل دانشمندان به دنبال روشی بودند که به جای تعریف همهٔ قوانین توسط انسان، سیستم بتواند این الگوها را خودش از دادهها یاد بگیرد.
این ایده به یکی از پایههای اصلی هوش مصنوعی و یادگیری ماشین تبدیل شد.
سیستمهای هوش مصنوعی چگونه متفاوت هستند؟
برخلاف نرمافزارهای سنتی، بسیاری از سیستمهای هوش مصنوعی بر پایهٔ یادگیری از دادهها عمل میکنند.
در این رویکرد، به جای اینکه تمام قوانین مستقیماً نوشته شوند، مدل با مشاهدهٔ حجم زیادی از دادهها الگوهای موجود را کشف میکند.
فرمول سادهٔ این رویکرد را میتوان چنین بیان کرد:

پس از آموزش، مدل میتواند برای دادههای جدید تصمیمگیری یا پیشبینی انجام دهد.
برای مثال، اگر بخواهیم سیستمی برای تشخیص تصاویر گربه بسازیم، لازم نیست هزاران قانون دربارهٔ شکل گوش، چشم یا دم گربه بنویسیم.
در عوض میتوان میلیونها تصویر گربه و غیرگربه را به مدل نشان داد تا خودش الگوهای مشترک را یاد بگیرد.
مثال: تفاوت در تشخیص ایمیلهای اسپم
یکی از بهترین مثالها برای مقایسهٔ این دو رویکرد، سیستمهای تشخیص هرزنامه است.
روش سنتی
در گذشته، برنامهنویسان قوانینی مانند موارد زیر تعریف میکردند:
اگر عنوان ایمیل شامل عبارت "برنده شدید" باشد → اسپم
اگر تعداد زیادی علامت تعجب وجود داشته باشد → اسپم
اگر فرستنده ناشناس باشد → اسپم
این روش تا زمانی که الگوها تغییر نمیکردند کارآمد بود.
اما به محض اینکه ارسالکنندگان اسپم روش خود را تغییر میدادند، قوانین نیز باید بهروزرسانی میشدند.
روش مبتنی بر هوش مصنوعی
در سیستمهای مدرن، میلیونها ایمیل برچسبگذاریشده به مدل داده میشود.
مدل به مرور یاد میگیرد چه ویژگیهایی معمولاً در پیامهای اسپم وجود دارد و سپس میتواند ایمیلهای جدید را نیز طبقهبندی کند.
مزیت این رویکرد آن است که سیستم میتواند با الگوهای جدید سازگار شود؛ حتی اگر قبلاً دقیقاً همان نمونه را ندیده باشد.
از سیری قدیمی تا دستیارهای هوشمند جدید
یکی از مثالهایی که در جلسهٔ دوم برنامهٔ انجنیری هوش مصنوعی بررسی کردیم، تحول دستیارهای صوتی است.
نسخههای اولیهٔ Siri و بسیاری از دستیارهای صوتی قدیمی عمدتاً بر پایهٔ مجموعهای از دستورات از پیش تعریفشده عمل میکردند.

برای مثال:
"تماس با احمد"
"هوا چگونه است؟"
"ساعت چند است؟"
اگر کاربر از عبارتی متفاوت استفاده میکرد، سیستم اغلب قادر به درک درخواست نبود.
اما نسل جدید دستیارهای هوشمند بر پایهٔ مدلهای زبانی بزرگ (LLMs) ساخته شدهاند.
این سیستمها میتوانند:

این تحول نشان میدهد که صنعت نرمافزار به تدریج از سیستمهای مبتنی بر قوانین ثابت به سمت سیستمهای مبتنی بر یادگیری حرکت کرده است.
آیا هوش مصنوعی جایگزین نرمافزارهای سنتی خواهد شد؟
پاسخ کوتاه: خیر.
در واقع بیشتر محصولات مدرن ترکیبی از هر دو رویکرد هستند.
برای مثال، یک اپلیکیشن بانکی ممکن است:
برای مدیریت حسابها و تراکنشها از نرمافزارهای سنتی استفاده کند.
برای تشخیص تقلب از مدلهای هوش مصنوعی بهره ببرد.
یا یک فروشگاه آنلاین ممکن است:
فرآیند پرداخت را با قوانین سنتی مدیریت کند.
پیشنهاد محصولات را با کمک هوش مصنوعی ارائه دهد.
بنابراین در بسیاری از موارد، هوش مصنوعی جایگزین نرمافزارهای سنتی نمیشود؛ بلکه به عنوان یک قابلیت جدید به آنها افزوده میشود.
چرا این تفاوت برای یک انجینر هوش مصنوعی مهم است؟
یکی از مهمترین وظایف یک انجینر هوش مصنوعی، تشخیص این موضوع است که چه زمانی باید از قوانین سنتی استفاده کرد و چه زمانی باید از مدلهای یادگیری ماشین بهره گرفت.
همهٔ مسائل به هوش مصنوعی نیاز ندارند.
گاهی یک الگوریتم ساده و شفاف بهترین راهحل است.
اما زمانی که مسئله شامل الگوهای پیچیده، حجم عظیم داده یا تصمیمگیریهای دشوار باشد، سیستمهای هوش مصنوعی میتوانند عملکرد بسیار بهتری ارائه دهند.
درک این تفاوت یکی از مهارتهای بنیادی هر فردی است که میخواهد در حوزهٔ AI Engineering فعالیت کند.
جمعبندی
نرمافزارهای سنتی و سیستمهای هوش مصنوعی هر دو برای حل مسائل طراحی شدهاند، اما روش آنها متفاوت است.
نرمافزارهای سنتی بر پایهٔ قوانین صریحی عمل میکنند که توسط انسان نوشته شدهاند، در حالی که سیستمهای هوش مصنوعی بخش قابل توجهی از رفتار خود را از طریق یادگیری از دادهها به دست میآورند.
همین توانایی یادگیری از دادهها باعث شده است که هوش مصنوعی بتواند در حوزههایی مانند پردازش زبان، تشخیص تصویر، تحلیل داده و تولید محتوا به موفقیتهای چشمگیری دست یابد.
برای هر کسی که قصد ورود به دنیای هوش مصنوعی را دارد، درک این تفاوت نهتنها مفید، بلکه ضروری است.
نهاد آموزشی افغان گیکس با هدف فراهم سازی آموزش رایگان فناوری، برنامه نویسی و هوش مصنوعی برای زنان افغان، مهاجران و جوامع آسیب پذیر فعالیت میکند.
