指数平滑法 – zlyblog

普通常用到的指数平滑法为一次指数平滑、二次指数平滑与三指数平滑,普通来说,高阶指数平滑法更难懂得。,到这程度,本文引见了、与指数两和三平滑的特点特色。

指数平滑法在一次的信息的广泛的敷用,单指数平滑法的滞后,当时很明显、季节性。

双指数平滑法普通采取的是直线型,但其引起要比单指数平滑引起好得多。,它相当于一增强版的指数平滑。

三指数平滑法可以敷用到抛物型信息,由于信息是在滑溜的倾斜上两倍,你可以持续应用十分指数平滑。

基础资料:不论何种做什么城市有一初步的指数平滑,即使信息大于20,到这程度,原值可以被决定为居于首位地信息,或应用下列的配方计算线;即使信息决不20,原值:

 

决不20 3,超越20的就行。

决定指数平滑系数

(1)阅历

1、当时间序列开价了一较不变的程度癖好,选择较小的α,普通在广大地域内

2、当时间序列动摇,但长距离的癖好是小,可选较大值,通常在;

3、当时间序列动摇,差距悬殊的长距离的癖好,显然,短时间做成的休会或辞谢的癖好,应选择较大值,作为值私下。为了成立高感光性的预测模式,可以对信息停止短时间做成的找头的踏上。

4、时间序列信息的发展癖好是休会(或辞谢),α应取较大的值,在私下。

一次指数平滑:

需求一指数平滑相位滞后,基于平滑系数,因此一平滑指数的计算配方:

 

这一时间的数值预测是一段时间的实践值和预测,预测方程:

 

二次指数平滑:

基于平滑系数,因此对两指数平滑法的计算配方:

 

预测间的紧接在后的值得的配方:

 

在内部地:

十分指数平滑:

 基于平滑系数,因此十分指数平滑配方:

 

预测间的紧接在后的值得的配方:

 

在内部地:

以下是示例,信息细说如下:

253993

275396.2

315229.5

356949.6

400158.2

442431.7

495102.9

570164.8

640993.1

704250.4

767455.4

781807.8

776332.3

794161.7

834177.7

931651.5

1028390

1114914

133

88

150

123

404

107

674

403

243

257

900

1043

1156

895

1200

1038

1024

1283

的均方过失的胚胎来决定平滑的引见:

 

缩减排队效能,咱们可以来最优平滑系数,在这边可以引见一次的规划的思惟为了增加姣姣者的receive 接收

指数平滑码:

        S1_1 = []
        for m in 广大地域(0, len(info_data_id)):
            S1_1_empty = []
            x = 0
            for n in 广大地域(0, 3):
                x = x + int(info_data_sales [ M ]的[ ]
            x = x / 3
            S1_1_empty.append(x)
            (S1_1_empty)
        # print(S1_1)
        a = []  #这是一用来蓄电Alfa数组
        info_MSE = []  #求姣姣者α(α)的均方过失计算for i in 广大地域(0, len(info_data_sales)):
            v = input(''请输出'' + STR(我 + 1) + ''一组信息:'')
            (v)

        for i in 广大地域(0, len(info_data_sales)):
            MSE = 0
            for j in 广大地域(0, Len(info_data_sales [我]
                s1_1 [我]。傅
                    浮(一[我] * int(info_data_sales [我] [ J ] + (1 - 浮(一[我]) * int(s1_1 [我] [ J ]  #预测价值的计算
                MSE = (int(s1_1 [我] [ J ] - int(info_data_sales [我] [ J ]) ** 2 + MSE
                # 标志(info_data_sales [我] [ J ], S1_1[i][j])
            MSE = (MSE ** (1 / 2)) / int(Len(info_data_sales [我]  #是均方过失            (MSE)
        # print(info_MSE)# print(S1_1)for i in 广大地域(0, len(S1_1)):
            print('''' + STR(我 + 1) + ''一平滑组预测价值'' + STR(s1_1 [我] [ len(s1_1 [我] - 1]) + '';均方过失为:'' + STR(我nfo_MSE[i]))

双指数平滑码:

        S2_1 = []
        S2_2 = []
        for m in 广大地域(0, len(info_data_id)):
            S2_1_empty = []
            x = 0
            for n in 广大地域(0, 3):
                x = x + 浮(info_data_sales [ M ]的[ ]
            x = x / 3
            S2_1_empty.append(x)
            (S2_1_empty)
            (S2_1_empty)
        # print(S2_2)
        a = []  #这是一用来蓄电Alfa数组
        info_MSE = []  #求姣姣者α(α)的均方过失计算for i in 广大地域(0, len(info_data_sales)):
            v = 浮(输出''请输出'' + STR(我 + 1) + ''一组信息:''))
            (v)

        #以下是指数平滑值的计算
        S2_1_new1 = []
        for i in 广大地域(0, len(info_data_sales)):
            S2_1_new = [[]] * len(info_data_id)
            for j in 广大地域(0, Len(info_data_sales [我]
                if j == 0:
                    s2_1_new [我]。傅
                        浮(一[我] * 浮(info_data_sales [我] [ J ] + (1 - 浮(一[我]) * 浮(s2_1 [我] [ J ]
                else:
                    s2_1_new [我]。傅浮(一[我] * 浮(info_data_sales [我] [ J ] + (1 - 浮(一[我]) * float(
                        S2_1_new[i][j - 1]))  #计算指数的值            (S2_1_new[i])
        # print(S2_1_new1)# 标志(Len(s2_1_new1 [我]#以下是两指数平滑值的计算
        S2_2_new1 = []
        info_MSE = []  #求姣姣者α(α)的均方过失计算for i in 广大地域(0, len(info_data_sales)):
            S2_2_new = [[]] * len(info_data_id)
            MSE = 0
            for j in 广大地域(0, Len(info_data_sales [我]
                if j == 0:
                    S2_2_new[i].append(浮(一[我] * 浮(s2_1_new1 [我] [ J ] + (1 - 浮(一[我]) * 浮(s2_2 [我] [ J ]
                else:
                    S2_2_new[i].append(浮(一[我] * 浮(s2_1_new1 [我] [ J ] + (1 - 浮(一[我]) * float(
                        S2_2_new[i][j - 1]))  #指数计算值的两倍
                MSE = (int(s2_2_new [我] [ J ] - int(info_data_sales [我] [ J ]) ** 2 + MSE
            MSE = (MSE ** (1 / 2)) / int(Len(info_data_sales [我]
            (MSE)
            (S2_2_new[i])
        # print(S2_2_new1)# 标志(Len(s2_2_new1 [我]#以下是计算在、预测价值得的各BT和XT的值得的,的预测价值直截了当地计算,不要细说XT的值得的
        u = input(''有有点时间你去预测?'')
        Xt = []
        for i in 广大地域(0, len(info_data_sales)):
            At = (float(S2_1_new1[i][len(S2_1_new1[i]) - 1]) * 2 - float(S2_2_new1[i][len(S2_2_new1[i]) - 1]))
            Bt = (浮(一[我] / (1 - 浮(一[我]) * (
            float(S2_1_new1[i][len(S2_1_new1[i]) - 1]) - float(S2_2_new1[i][len(S2_2_new1[i]) - 1])))
            (在 + Bt * int(U)
            print('''' + STR(我 + 1) + ''组的二次平滑预估值为'' + STR(XT [我] + '';均方过失为:'' + STR(我nfo_MSE[i]))

十分指数平滑的加密

       S3_1 = []
        S3_2 = []
        S3_3 = []
        for m in 广大地域(0, len(info_data_id)):
            S3_1_empty = []
            x = 0
            for n in 广大地域(0, 3):
                x = x + 浮(info_data_sales [ M ]的[ ]
            x = x / 3
            S3_1_empty.append(x)
            (S3_1_empty)
            (S3_1_empty)
            (S3_1_empty)
        # print(S3_1)
        a = []  #这是一用来蓄电Alfa数组
        info_MSE = []  #求姣姣者α(α)的均方过失计算for i in 广大地域(0, len(info_data_sales)):
            v = 浮(输出''请输出'' + STR(我 + 1) + ''一组信息:''))
            (v)

        #以下是指数平滑值的计算
        S3_1_new1 = []
        for i in 广大地域(0, len(info_data_sales)):
            S3_1_new = [[]] * len(info_data_id)
            for j in 广大地域(0, Len(info_data_sales [我]
                if j == 0:
                    s3_1_new [我]。傅
                        浮(一[我] * 浮(info_data_sales [我] [ J ] + (1 - 浮(一[我]) * 浮(s3_1 [我] [ J ]
                else:
                    s3_1_new [我]。傅浮(一[我] * 浮(info_data_sales [我] [ J ] + (1 - 浮(一[我]) * float(
                        S3_1_new[i][j - 1]))  #计算指数的值            (S3_1_new[i])

        #以下是两指数平滑值的计算
        S3_2_new1 = []
        info_MSE = []  #求姣姣者α(α)的均方过失计算for i in 广大地域(0, len(info_data_sales)):
            S3_2_new = [[]] * len(info_data_id)
            for j in 广大地域(0, Len(info_data_sales [我]
                if j == 0:
                    S3_2_new[i].append(浮(一[我] * 浮(s3_1_new1 [我] [ J ] + (1 - 浮(一[我]) * 浮(s3_2 [我] [ J ]
                else:
                    S3_2_new[i].append(浮(一[我] * 浮(s3_1_new1 [我] [ J ] + (1 - 浮(一[我]) * float(
                        S3_2_new[i][j - 1]))  #指数计算值的两倍            (S3_2_new[i])

        #以下是两指数平滑值的计算
        S3_3_new1 = []
        info_MSE = []  #求姣姣者α(α)的均方过失计算for i in 广大地域(0, len(info_data_sales)):
            S3_3_new = [[]] * len(info_data_id)
            MSE = 0
            for j in 广大地域(0, Len(info_data_sales [我]
                if j == 0:
                    S3_3_new[i].append(浮(一[我] * 浮(s3_2_new1 [我] [ J ] + (1 - 浮(一[我]) * 浮(s3_3 [我] [ J ]
                else:
                    S3_3_new[i].append(浮(一[我] * 浮(s3_2_new1 [我] [ J ] + (1 - 浮(一[我]) * float(
                        S3_3_new[i][j - 1]))  #计算三个指数的值得的
                MSE = (int(s3_3_new [我] [ J ] - int(info_data_sales [我] [ J ]) ** 2 + MSE
            MSE = (MSE ** (1 / 2)) / int(Len(info_data_sales [我]
            (MSE)
            (S3_3_new[i])
            # print(S3_3_new1)#以下是计算在、Bt、预测价值和每个Ct XT的值得的,的预测价值直截了当地计算,不要细说XT的值得的
        u = input(''有有点时间你去预测?'')
        Xt = []
        for i in 广大地域(0, len(info_data_sales)):
            At = (
            float(S3_1_new1[i][len(S3_1_new1[i]) - 1]) * 3 - float(s3_2_new1 [我] [ len(s3_2_new1 [我] - 1]) * 3 + float(
                s3_3_new1 [我] [ len(s3_3_new1 [我] - 1]))
            Bt = ((浮(一[我] / (2 * ((1 - 浮(一[我]) ** 2))) * ((6 - 5 * 浮(一[我]) * (
            float(S3_1_new1[i][len(S3_1_new1[i]) - 1]) - 2 * (5 - 4 * 浮(一[我]) * float(
                s3_2_new1 [我] [ len(s3_2_new1 [我] - 1]) + (4 - 3 * 浮(一[我]) * float(
                s3_3_new1 [我] [ len(s3_3_new1 [我] - 1]))))
            Ct = (((浮(一[我]) ** 2) / (2 * ((1 - 浮(一[我]) ** 2))) * (
            float(S3_1_new1[i][len(S3_1_new1[i]) - 1]) - float(s3_2_new1 [我] [ len(s3_2_new1 [我] - 1])*2 + float(
                s3_3_new1 [我] [ len(s3_3_new1 [我] - 1]))
            (在 + Bt * int(U) + Ct * (int(U) ** 2))
            print('''' + STR(我 + 1) + ''三平滑预测的组'' + STR(XT [我] + '';均方过失为:'' + STR(我nfo_MSE[i]))

发表评论

电子邮件地址不会被公开。 必填项已用*标注