میانگین خطای مطلق (Mean Absolute Error |MAE )
میانگین خطای مطلق (Mean Absolute Error | MAE) یک معیار مهم برای ارزیابی دقت مدلهای رگرسیونی در یادگیری ماشین است. این معیار بهطور خاص برای سنجش خطای پیشبینیها استفاده میشود و نشان میدهد که مدل تا چه حد قادر به پیشبینی مقادیر دقیق است. در محاسبه MAE، تفاوت بین مقادیر واقعی و پیشبینی شده بهصورت مطلق در نظر گرفته شده و سپس میانگین آنها محاسبه میشود. به عبارت سادهتر، MAE بهطور میانگین میزان خطاها را بر حسب واحد اصلی دادهها اندازهگیری میکند، بدون این که تأثیری از جهت و نوع این خطاها (مثلاً مثبت یا منفی بودن آنها) بگیرد.
نحوه محاسبه MAE
برای محاسبه میانگین خطای مطلق، مراحل زیر را دنبال میکنیم:
- محاسبه خطای پیشبینی: ابتدا برای هر داده، مقدار پیشبینی شده توسط مدل را از مقدار واقعی آن کم میکنیم.
- محاسبه مقدار مطلق خطا: نتیجه بهدست آمده را بهطور مطلق در نظر میگیریم تا از تأثیر علامت منفی جلوگیری شود.
- میانگینگیری: در نهایت، میانگین تمام این مقادیر مطلق خطاها محاسبه میشود که نشاندهنده MAE است.
این معیار بهویژه برای مدلهایی که قصد دارند مقدار پیشبینی دقیقتری از مقادیر واقعی ارائه دهند، مفید است. معمولاً زمانی که بخواهیم تأثیر مقادیر پرت یا “outliers” را در ارزیابی مدل کم کنیم، از MAE بهجای معیارهایی مانند میانگین مربعات خطا (MSE) استفاده میکنیم؛ زیرا MAE نسبت به دادههای پرت حساسیت کمتری دارد.
کاربردهای MAE در یادگیری ماشین
MAE بیشتر در مدلهای رگرسیونی کاربرد دارد که در آنها پیشبینیها باید بهطور مستقیم با مقادیر واقعی مقایسه شوند. بهطور مثال، در مسائل پیشبینی قیمت یا تقاضای محصولات، استفاده از MAE میتواند کمک کند تا کیفیت پیشبینی مدلها را بهخوبی ارزیابی کنیم. همچنین، این معیار برای شبیهسازی مدلهایی که پیشبینیهای دقیقی میخواهند ارائه دهند (مانند پیشبینی قیمت مسکن بر اساس ویژگیهایی مانند مساحت یا موقعیت مکانی) بسیار مناسب است.
اگرچه MAE در مقایسه با سایر معیارها همچون MSE یا RMSE مقاومت بیشتری در برابر نمونههای پرت دارد، اما با این حال ممکن است در برخی موارد خاص، نتایج دقیقتری از سایر معیارها بهدست ندهد. به همین دلیل، برای ارزیابی کاملتر عملکرد مدلهای رگرسیونی، اغلب از ترکیب چند معیار استفاده میشود.
تعریف میانگین خطای مطلق (MAE)
میانگین خطای مطلق یا MAE یکی از معیارهای مهم در ارزیابی مدلهای رگرسیونی در یادگیری ماشین است. این معیار نشاندهنده میانگین اختلافات مطلق بین مقادیر پیشبینی شده و مقادیر واقعی است. بهعبارت دیگر، MAE میزان متوسط خطاهایی که مدل در پیشبینیها مرتکب میشود را بدون توجه به علامت مثبت یا منفی بودن آنها اندازهگیری میکند. این ویژگی باعث میشود که MAE بهعنوان یک ابزار مقاوم در برابر دادههای پرت (outliers) شناخته شود.
فرمول محاسبه MAE
برای محاسبه MAE، باید ابتدا تفاوت بین هر مقدار پیشبینی شده و مقدار واقعی را محاسبه کنیم، سپس مقدار مطلق این تفاوتها را بهدست آورده و میانگین آنها را محاسبه کنیم. فرمول محاسبه MAE بهصورت زیر است:
MAE = \frac{1}{n} \sum_{i=1}^{n} \left| x_i – x \right|
که در آن:
– \(n\) تعداد کل نمونهها است.
– \(x_i\) مقادیر پیشبینی شده است.
– \(x\) مقادیر حقیقی یا واقعی است.
نحوه محاسبه MAE
برای محاسبه MAE، ابتدا باید تفاوت هر مقدار پیشبینی شده (\(x_i\)) را از مقدار واقعی (\(x\)) کم کنیم. در این مرحله، برای جلوگیری از تاثیر منفی و مثبت بودن خطاها بر یکدیگر، از قدر مطلق این تفاوتها استفاده میکنیم. بهعنوان مثال، فرض کنید یک پیشبینی 10 واحد بیشتر و پیشبینی دیگری 10 واحد کمتر از مقدار واقعی باشد. اگر این خطاها بهطور مستقیم محاسبه شوند، اثر یکدیگر را از بین میبرند:
10 – (-10) = 0
اما با استفاده از قدر مطلق، این مشکل حل میشود و نتایج بهصورت زیر خواهد بود:
|10| + |-10| = 20
پس از محاسبه مقدار مطلق خطاها، این مقادیر را با هم جمع کرده و نتیجه را بر تعداد کل نمونهها تقسیم میکنیم تا میانگین خطای مطلق (MAE) بهدست آید.
MAE در رگرسیون خطی و شبکه عصبی
در مسائل رگرسیونی، مثل پیشبینی قیمت خانه یا پیشبینی تقاضای کالا، میانگین خطای مطلق (MAE) یکی از معیارهای کلیدی است که میتواند دقت مدلها را نشان دهد. بهعنوان مثال، در مدلهای رگرسیون خطی، که سادهترین نوع مدلهای رگرسیونی هستند، از این معیار برای ارزیابی دقت پیشبینیها استفاده میشود. در مقابل، مدلهای پیچیدهتر مانند شبکههای عصبی پرسپترون چندلایه (MLP)، که قادر به کشف الگوهای پیچیدهتری در دادهها هستند، نیز میتوانند از MAE برای ارزیابی عملکرد خود استفاده کنند.
پیادهسازی MAE در پایتون
برای پیادهسازی و محاسبه MAE در پایتون، ابزارهای قدرتمندی مانند کتابخانههای Pandas، NumPy و Scikit-learn وجود دارند. این کتابخانهها بهویژه برای کار با دادههای عددی و پیادهسازی مدلهای رگرسیونی، گزینههای بسیار مناسبی هستند. با استفاده از این ابزارها، میتوان بهسادگی مدلهای رگرسیونی مختلف را پیادهسازی کرده و دقت آنها را با استفاده از معیارهایی مانند MAE ارزیابی کرد.
محاسبه میانگین خطای مطلق (MAE) با پایتون
در این بخش به بررسی دو روش محبوب برای محاسبه میانگین خطای مطلق (MAE) در زبان پایتون میپردازیم. این معیار بهطور گسترده در مدلهای یادگیری ماشین استفاده میشود تا دقت پیشبینیها را ارزیابی کند.
روش ۱: استفاده از کتابخانه Scikit-learn
یکی از کتابخانههای محبوب و کاربردی در یادگیری ماشین، **Scikit-learn** است. این کتابخانه دارای توابع آماده برای محاسبه معیارهای مختلف ارزیابی مدلها از جمله MAE میباشد. در اینجا نحوه استفاده از تابع `mean_absolute_error` برای محاسبه MAE آورده شده است. فرض کنید مقادیر حقیقی در متغیر `actual` و مقادیر پیشبینی شده در متغیر `predicted` ذخیره شده باشند:
“`python
from sklearn.metrics import mean_absolute_error
actual = [2, 3, 5, 5, 9]
predicted = [3, 3, 8, 7, 6]
mae = mean_absolute_error(actual, predicted)
print(mae)
“`
خروجی این کد به شکل زیر خواهد بود:
“`
1.8
“`
روش ۲: استفاده از TensorFlow
در زمان کار با مدلهای یادگیری عمیق، معمولا از TensorFlow و کتابخانه سطح بالای آن یعنی Keras استفاده میشود. این کتابخانه نیز تابعی برای محاسبه MAE فراهم کرده است. در اینجا نحوه استفاده از آن برای محاسبه MAE آورده شده است:
“`python
import tensorflow as tf
actual = tf.constant([2, 3, 5, 5, 9], dtype=tf.float32)
predicted = tf.constant([3, 3, 8, 7, 6], dtype=tf.float32)
mae = tf.keras.losses.MeanAbsoluteError()(actual, predicted)
print(mae.numpy())
“`
خروجی مشابه زیر خواهد بود:
“`
1.8
“`
کاربرد میانگین خطای مطلق (MAE)
پس از آشنایی با نحوه محاسبه MAE، نوبت به بررسی کاربرد این معیار میرسد. میانگین خطای مطلق (MAE) یک ابزار مفید برای ارزیابی دقت مدلهای رگرسیونی است. برخلاف معیارهایی مانند خطای میانگین مربعات (MSE)، MAE به دادهها بهطور یکسان وزن میدهد و توجه خاصی به نمونههای پرت نمیکند. این ویژگی باعث میشود که MAE در مواقعی که نیاز به ارزیابی خطا بهصورت عینی و بدون توجه به علامت آنها داریم، بسیار مناسب باشد.
اما در این میان باید در نظر داشته باشیم که MAE تفاوتی میان خطاهای بزرگ و کوچک قائل نمیشود. برای مثال، خطای ۱۰ واحدی و ۱ واحدی در محاسبات MAE بهطور یکسان بهعنوان یک خطا در نظر گرفته میشود.
میانگین درصد خطای مطلق (MAPE)
یکی دیگر از معیارهای مشابه MAE، میانگین درصد خطای مطلق یا MAPE است. در این معیار، میزان خطا بهصورت درصدی از مقدار واقعی محاسبه میشود و در نتیجه یک معیار نسبی برای ارزیابی دقت مدل فراهم میآورد. MAPE و MAE هر دو ابزارهایی برای اندازهگیری خطا هستند، با این تفاوت که MAPE معیار خطی است که به درصد تغییرات توجه دارد، در حالی که MAE معیار عددی و مطلق است.
جمعبندی
در این مطلب، با مفهوم میانگین خطای مطلق (MAE)، روشهای محاسبه آن در زبان پایتون و کاربردهای این معیار در ارزیابی مدلهای یادگیری ماشین آشنا شدیم. همچنین دیدیم که این معیار چگونه میتواند بهعنوان یک ابزار مفید برای سنجش دقت مدلها مورد استفاده قرار گیرد. فهم صحیح معیارهای ارزیابی و کاربرد آنها به شما کمک میکند تا مدلهای بهتری بسازید و نتایج دقیقی از تحلیلهای دادهای خود بهدست آورید.