一、MAE是什麼?
MAE是回歸分析中衡量模型預測誤差的一種指標。它表示實際值與預測值之間差的絕對值的平均值。通常越小越好,值越小代表模型預測誤差越小。MAE經常被用於評估連續型變量的預測模型,例如房價預測、銷售量預測等。
二、如何計算MAE?
我們以房價預測為例,假設有n個樣本,它們的實際價格分別為y1, y2, …, yn,而模型預測出來的價格分別為ŷ1, ŷ2, …, ŷn。那麼可以使用下面的公式計算MAE:
MAE = 1/n * ∑i=1n |yi - ŷi|
其中∑i=1n |yi – ŷi| 表示預測值與實際值的差的絕對值之和,1/n是為了將總和轉化為平均值。
三、MAE的優缺點?
MAE的優點是容易計算和理解,而且對異常值的影響比較小,因為它只考慮了預測誤差絕對值的平均值。因此,當數據集中存在比較多的異常值或噪聲時,MAE比MSE更加魯棒。
缺點是它只反映了模型預測誤差的平均大小,而沒有考慮誤差的分布情況和預測值與真實值之間的偏差方向。例如,若存在正和負的相對誤差時,它們會相互抵消,使得MAE的值相對偏小,但模型預測誤差存在。
四、MAE的應用場景
由於MAE能夠反映出預測的平均誤差,因此它被廣泛應用於房價預測、電力需求預測、股票價格預測等領域。MAE也可以結合隨機遊走、指數平滑等方法進行時間序列預測。
五、示例代碼
import numpy as np
def mean_absolute_error(y_true, y_pred):
    """
    計算MAE
    :param y_true: 實際值數組
    :param y_pred: 預測值數組
    :return: MAE值
    """
    return np.mean(np.abs(y_true - y_pred))
# 計算MAE
y_true = np.array([1, 2, 3, 4, 5])
y_pred = np.array([2, 3, 4, 5, 6])
mae = mean_absolute_error(y_true, y_pred)
print("MAE:", mae)
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/247925.html
微信掃一掃 
支付寶掃一掃