一種數據預測方法和裝置的制造方法
【技術領域】
[0001]本發明涉及計算機技術領域,尤其涉及一種數據預測方法和裝置。
【背景技術】
[0002]隨著計算機技術的發展和普及,通過歷史數據來預測這種數據未來的發展趨勢的需求也日益增加。例如,隨著人們生活水平的提高和旅游業的飛速發展,各景區的游客數量大幅增加,尤其在法定節假日,各景區的游客數量激增,景區現有的衣食住行難以滿足過多的游客數量,導致不良影響甚至暴力事件。而如何有效地分析各個景區的歷史旅游數據,例如,景區天氣參數、游客人數、旅游日期等,并基于這些歷史數據進行發展趨勢預測,對于游客合理安排出行、緩解交通壓力、有效分散游客數量、使景區能夠預先儲備足夠的食物、提高服務效率等,是非常重要的。
[0003]目前,一些模型被建立來預測這種大批量的數據的發展趨勢,然而這些模型的計算需要較長的時間、且準確率低。
【發明內容】
[0004]鑒于上述問題,提出了本發明,以便提供一種克服上述問題或者至少部分地解決上述問題的應用的特征參數的估算方法和裝置。
[0005]依據本發明的第一方面,提供了一種數據預測方法,包括:從服務器獲取時間序列數據,所述時間序列數據包括已發生的N個時間點的數據;分析所述時間序列數據的平穩性,以獲得平穩性分析結果;根據所述平穩性分析結果,選擇第一預測模型;以及根據所選擇的第一預測模型,預測未來K個時間點的數據。
[0006]可選地,其中分析所述時間序列數據的平穩性包括:利用單位根檢驗分析時間序列數據的平穩性。
[0007]可選地,其中根據所述平穩性分析結果,選擇第一預測模型包括:當所述平穩性分析結果為所述時間序列數據是平穩的,選擇ARIMA模型作為第一預測模型。
[0008]可選地,其中根據所述平穩性分析結果,選擇第一預測模型包括:當所述平穩性分析結果為所述時間序列數據是不平穩的,對所述時間序列數據進行逐級差分;分析差分后的時間序列數據的平穩性;以及當所述差分后的時間序列數據是平穩的,選擇ARIMA模型作為第一預測模型。
[0009]可選地,其中根據所述平穩性分析結果,選擇第一預測模型包括:當所述平穩性分析結果為所述時間序列數據是不平穩的,對所述時間序列數據進行逐級差分;以及當所述差分后的時間序列數據的方差大于差分前的所述時間序列數據,選擇Lasso算法建立所述第一預測模型。
[0010]可選地,其中根據所述平穩性分析結果,選擇第一預測模型包括:根據所述平穩性分析結果,確定所述ARIMA模型的第一參數,所述第一參數是當差分后的時間序列數據是平穩時,所述時間序列數據被差分的次數;計算所述差分后的時間序列數據的自相關函數和偏自相關函數;根據所述第一參數、所述自相關函數和所述偏自相關函數,訓練所述ARIMA模型,并選擇最優的ARIMA模型作為所述第一預測模型。
[0011 ] 可選地,其中選擇最優的ARIMA模型作為所述第一預測模型包括:當所述自相關函數和所述偏自相關函數為拖尾時,根據所述ARIMA模型的評價指標參數和ARIMA模型的測試集上的性能參數,選擇最優的ARIMA模型作為所述第一預測模型。
[0012]可選地,其中根據所選擇的第一預測模型,預測未來K個時間點的數據包括:根據所選擇的第一預測模型,直接預測未來K個時間點的數據。
[0013]可選地,其中根據所述平穩性分析結果,選擇第一預測模型還包括:判斷所選擇的第一預測模型的殘差是否具有異方差性,當所選擇的第一預測模型的殘差具有異方差性,對所述時間序列數據進行變換處理;分析變換處理后的時間序列數據的平穩性;根據變換處理后的時間序列數據的平穩性,選擇第二預測模型;判斷所選擇的第二預測模型的殘差是否具有異方差性,當所選擇的第二預測模型的殘差具有異方差性,選擇Lasso算法建立所述第一預測模型。
[0014]可選地,其中判斷所選擇的預測模型的殘差是否具有異方差性包括:基于ARCH檢驗、White檢驗或Goldfed-Quanadt檢驗,判斷所選擇的預測模型的殘差是否具有異方差性。
[0015]可選地,其中根據所選擇的第一預測模型,預測未來K個時間點的數據包括:針對所述K個時間點中的每一個時間點,根據所述時間序列數據的自回歸參數和預先設定的特征參數,分別預測每一個時間點的數據。
[0016]根據本發明的第二方面,提供了一種數據預測裝置,包括:數據獲取模塊,適于從服務器獲取時間序列數據,所述時間序列數據包括已發生的N個時間點的數據;平穩性分析模塊,適于分析所述時間序列數據的平穩性,以獲得平穩性分析結果;模型選擇模塊,適于根據所述平穩性分析結果,選擇第一預測模型;以及數據預測模塊,適于根據所選擇的第一預測模型,預測未來K個時間點的數據。
[0017]可選地,其中所述平穩性分析模塊適于:利用單位根檢驗分析時間序列數據的平穩性。
[0018]可選地,其中所述模型選擇模塊適于:當所述平穩性分析結果為所述時間序列數據是平穩的,選擇ARIMA模型作為第一預測模型。
[0019]可選地,其中所述模型選擇模塊適于:當所述平穩性分析結果為所述時間序列數據是不平穩的,對所述時間序列數據進行逐級差分;分析差分后的時間序列數據的平穩性;以及當所述差分后的時間序列數據是平穩的,選擇ARIMA模型作為第一預測模型。
[0020]可選地,其中所述模型選擇模塊適于:當所述平穩性分析結果為所述時間序列數據是不平穩的,對所述時間序列數據進行逐級差分;以及當所述差分后的時間序列數據的方差大于差分前的所述時間序列數據,選擇Lasso算法建立所述第一預測模型。
[0021]可選地,其中所述模型選擇模塊適于:根據所述平穩性分析結果,確定所述ARIMA模型的第一參數,所述第一參數是當差分后的時間序列數據是平穩時,所述時間序列數據被差分的次數;計算所述差分后的時間序列數據的自相關函數和偏自相關函數;根據所述第一參數、所述自相關函數和所述偏自相關函數,訓練所述ARIMA模型,并選擇最優的ARIMA模型作為所述第一預測模型。
[0022]可選地,其中所述模型選擇模塊還適于:當所述自相關函數和所述偏自相關函數為拖尾時,根據所述ARIMA模型的評價指標參數和ARIMA模型的測試集上的性能參數,選擇最優的ARIMA模型作為所述第一預測模型。
[0023]可選地,其中所述數據預測模塊適于:根據所選擇的第一預測模型,直接預測未來K個時間點的數據。
[0024]可選地,其中所述模型選擇模塊還適于:判斷所選擇的第一預測模型的殘差是否具有異方差性,當所選擇的第一預測模型的殘差具有異方差性,對所述時間序列數據進行變換處理;分析變換處理后的時間序列數據的平穩性;根據變換處理后的時間序列數據的平穩性,選擇第二預測模型;判斷所選擇的第二預測模型的殘差是否具有異方差性,當所選擇的第二預測模型的殘差具有異方差性,選擇Lasso算法建立所述第一預測模型。
[0025]可選地,其中所述模型選擇模塊還適于:基于ARCH檢驗、White檢驗或Goldfed-Quanadt檢驗,判斷所選擇的預測模型的殘差是否具有異方差性。
[0026]可選地,其中所述數據預測模塊適于:針對所述K個時間點中的每一個時間點,根據所述時間序列數據的自回歸參數和預先設定的特征參數,分別預測每一個時間點的數據。
[0027]本發明提供了上述根據本發明的實施例的數據預測方法和裝置,通過分析所述時間序列數據的平穩性選擇預測模型,并根據預測模型來預測未來時間點的數據,構建了改進的數據預測體系,能夠自適應地判斷該用何種模型建模,具有顯著提高的靈活性,兼顧了預測效果和時間成本;同時還能自動進行參數選擇和模型訓練,提高了數據預測的準確性和效率,對于處理大批量的時間序列數據的趨勢預測任務尤其有優勢。
[0028]上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本發明的【具體實施方式】。
【附圖說明】
[0029]通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0030]圖1是根據本發明的實施例的數據預測方法的流程圖;以及
[0031]圖2是根據本發明的實施例的數據預測裝置的結構示意圖。
【具體實施方式】
[0032]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。
[0033]根據本發明的第一方面,提供了一種根據本發明的實施例的數據預測方法100。
[0034]圖1示出了根據本發明的實施例的數據預測方法100的流程圖。
[0035]如圖1所示,數據預測方法100始于步驟SlOl:從服務器獲取時間序列數據,所述時間序列數據包括已發生的N個時間點的數據。
[0036]在本發明的實施例中,服務器可以是一個或多個服務器計算機,可設置為提供某種服務器功能,例如數據庫管理和搜索引擎。服務器可以包括至少一個處理器,其與存儲器以及多個其它模塊協同操作。所述處理器可以包括多個核心,以用于多線程或并行處理。所述存儲器可以包括一個或多個存儲設備,存儲器或者其中的存儲設備包括非易失性計算機可讀記錄/存儲介質。
[0037]在本發明的實施例中,時間序列數據可以是與時間的變化相關的數據,所述時間序列數據包括已發生的N個時間點的數據,如Ix1, X2, X3,.., xN}。例如,以旅游為例,時間序列數據可以是某城市在一段時間內每天的旅游數據,例如,北京過去7天之內每天的到達航班、火車的數量或乘客數量,各景點接待的游客數量,各景點附件餐館、旅店接待的游客數量,各景點溫度等數據。
[0038]需說明,以旅游為例說明本發明,其僅僅是示例性的,本發明并不僅限于此,還包括其他方面的應用,例如,對就業、入學等其他大批量時間序列數據的分析和發展趨勢預測。
[0039]如圖1所示,方法100還包括步驟S103:分析所述時間序列數據的平穩性,以獲得平穩性分析結果。
[0040]根據本發明的示例性實施例,分析所述時間序列數據的平穩性包括:利用單位根檢驗分析時間序列數據的平穩性。例如,對