乾貨分享 | 雲腦科技核心算法工程師詳解時間序列(附PPT)

2020-12-05 量子位

雲腦科技機器學習訓練營以講解時間序列收尾,詳細解說了時間序列的傳統模型、進階模型、神經網絡模型,量子位作為合作媒體為大家帶來本期乾貨整理。

內容簡介

主講人:徐昊( 雲腦科技核心算法工程師 )

雲腦科技核心算法工程師,高性能計算專家。在高性能分布式計算、圖計算、隨機優化領域有著十餘年研發經驗,發表IEEE/ACM頂級論文20餘篇,曾獲第八屆國際低能耗電子器件會議唯一最佳論文獎,曾任ANSYS軟體研發經理、首席工程師。

內容要點:

技術挑戰

基本模型

進階模型

深度神經網絡模型

重點講神經網絡模型(RNN 、LSTM等),傳統模型簡單的提一下。

時間序列的應用

你可以認為世界上發生的每一件事都是一個時間序列的一部分,時間序列的應用可以很廣泛, 目前時間序列有一些應用:股票預測、自然語言處理模型: 因為語言本身就可以看作一個序列,如 can you pleace come here? 說了前四個字,讓你預測最後一個字。 預測視頻: 給你一幀,讓你預測下一個動作。 PPT Slides: 提供前一個Slides,預測下一個Slides講什麼?這個預測比較複雜,存在邏輯上的連貫性。大家可以看出時間序列的預測有各種各樣的形式,有可能是比較困難的。

時間序列預測

時間序列預測需要做些什麼? 主要是在數據中發現時變的規律。左圖有兩個隨機性比較強的時間序列,我們如何從中發現規律,可以使用右邊的圖來演示。第一個是觀測,可以把它演變成趨勢,它還包括周期性的信號,最後還有一些隨機的因素,後面三部分(趨勢、周期、隨機)合起來構成了最上方的信號。

時間序列預測任務是發現數據的時變規律,在不同的抽象層次。如:鐘錶有12-hour cycle,hour cycle,還有minute cycle, 他在不同層次上,由時針、分針、秒針的位置產生的時間序列,我們需要學習三個層次的規律。、

技術挑戰

舉個例子:視頻預測中有兩幀圖,在圖像識別中,假設每一幀裡面有M個像素,圖像識別的任務就是從M的像素中找到規律。如果要預測,從第一幀(M個)到第二幀(M個),學習空間就維度有MM個。如果要更準確一點,用前面N幀來預測下一幀,就有(MN)M 大的空間。如果之前每一幀都有一個輸入X,那麼這個學習空間將十分大(M(N+X)*M)。大家可以看到M個像素的圖像識別任務,放到時間序列中將十分複雜,很難去學。所以 時間序列學習的挑戰 還是比較多的:

非線性

高維度導致十分大

尋找的規律是有層次的

模型分析

傳統模型的一個代表是ARIMA模型,它的用途十分廣泛,尤其是社會現象的應用,如庫存量預測,銷售量預測。 ARIMA分為三個部分:AR:Auto regressive 、MA:Moving Average、 I:Integration filter。

Auto regressive 數學公式中第一項是常量,最後一項是隨機噪聲,中間一項是說當前yt由之前t-1個y乘係數γ所決定的,找到前面i個時間點的值,乘以係數再相加。不同的γ可以產生不同的時間序列。

Moving Average 也是由常量均值、隨機量以及用過去i個點殘差值學一個模型。將這兩部分合起來就得到一個複雜一些的模型,這個複雜的模型就能產生更複雜一點的時間序列,換句話講就可以用這個模型學習一個更複雜的時間序列。

Integration filter 核心是將ARMA模型中的y換成 Δy,也就是difference的項。這個的好處是:一個時間序要學趨勢、學周期再去學隨機量就比較複雜,怎麼簡化這個過程呢?只要做個一階的difference ,去學 Δy , 實際上是去掉了趨勢因素。所以大家可以注意,處理時間序列經常用的方法的是:不去預測y,去預測 Δy。 從術語上說,把序列做了一個stationary。

Hidden Markov Model

在神經網絡之前,語音識別用的都是Hidden Markov Model(HMM)。觀測到X1到Xt,y1到yt是隱藏的內部狀態。模型有兩個假設:第一個假設 Markov property:internal state 只由前一個狀態決定,所以只走一步。

第二個假設是當前的觀測值只由當前的隱藏狀態決定。它其實把時間序列的預測分為很多小部分,也是約束性很強的一個模型。模型雖然很簡單,但是十分有效,因為自然界很多事物都遵循馬爾科夫假設。

stationary是指系統經過一系列的變化又回到了原點。如果有趨勢項,很可能就回不到原點,做了difference 之後就去掉趨勢因素。

Chain Conditional Random Field

CRF的主要改進是,當前的internal state,不僅僅與當前的觀測值有關,也與之前的觀測值有關。 所以這個網絡的假設沒有那麼強。下面三個都是CRF網絡,只是假設強度不一樣。

例如中間的網絡,每個時間點的internal state,與當前,與前一個時間點的觀測值都相關,這個網絡就更複雜了。最下面一種是與所有的觀測量都有關係,假設更弱了,所以它的表達能力是最強的,但是也是很難學的。

CRF模型實際上是約束最少的,有的假設在HM模型中是不成立的就需要用到CRF,而且很多網絡的最後一層是用CRF來做的。

神經網絡

先舉兩個例子,看一下神經網絡做時間序列預測是怎麼搭的。 第一個是一個語言模型,它的核心的神經網絡是LSTM——長短記憶網絡。 如給定一句話:to be or not ,要做的是給你一個詞,預測下一個詞。這個網絡分為三層:Embeding layer 、LSTM Lyaer、Output Layer。

再看一個神經網絡的應用,給你一個視頻,然後產生字幕、或者描述視頻中的人物在做什麼,基本的結構叫做Encoder /Decoder Architec。下圖中左邊是Encoder,Encoder去看你的視頻,用LSTM串起來,流到右邊是 Decoder,Decoder出來的標籤是:A man is talking。

下面看一下神經網絡的結構,最基本的 Recurrent Neural Network 。它分為兩個部分:1. Intertnal State Transition 2.Output Transition Network 。 Intertnal State Transition 假設他有個內部狀態,內部狀態是指它自身有一個狀態變化的規則,內部狀態在某一個狀態的時候會產生一個輸出,這個輸出是由softmax來實現,完全相對於與HMM,HMM是兩個Transition matrix , RNN是兩個神經網絡。

看一下RNN的一個變種——長短記憶網絡(LSTM),它把RNN的每一個cell的結構做的更加複雜。 RNN內部狀態從左邊流到右邊只有一根線,也就是說只有一個\一組狀態會被傳到下一步,LSTM實際上是有兩根線在傳,最上面的一根叫做長期記憶,這條線沒有加很多非線性的東西,之前在神經網絡上學到的東西在這一步很容易被傳到下一步去, 這就是長期記憶的一個概念: 以前學的東西很容易被記住。有了長期記憶之後會做一個Gate,去控制長期記憶的強度。

另一部分,除了控制長期記憶之外,跟短期記憶有個相加的過程,此外對短期記憶有個非線性的變化,然後與長期記憶相加。即一部分是長期記憶,還有一部分是短期記憶,然後將兩部分相結合,結合是根據神經網絡裡的weight去學的。

這樣的結構,給他一個輸入,一旦給定一個標籤,那麼在長期記憶下更重要還是短期記憶更重要,學的過程中會自己去分配。傳下去的記憶等於長期記憶乘以遺忘係數,加上新的記憶乘新的記憶scaling factor。最後會有一些Output layer,它也做了非線性的變化。理論上說他分成了兩部分,長期記憶和短期記憶。神經網絡的實現,就是以上講的具體的一些公式。

下面我們看一下LSTM。

剛才我們看到的是把LSTM 串起來,實際上也可以把它疊加起來。有很多層LSTM,當前層的LSTM 的輸出可以做下一層的輸入,最後可以做成很大的LSTM 的網絡,網絡更大就可以學更deep 的feature。

Gated Convolutional Network (GCN)

接下來提一下現在比較流行的模型:Gated Convolutional Network (GCN),也是用在時間序列的學習上。比如說現在有一段文章,sliding window 是10,把十個單詞拿出來,然後做embedding,將十個單詞的embdding的拼起來,然後在拼起來的sequence上做CNN,圖像做出來之後再去做預測。實際上把序列學習的問題轉化成CNN可以做的問題。

神經網絡模型相對於LSTM還有更多的模型:Gated Recurrent Network,GRN是LSTM 的一個變種。 還有大家可能聽說過的Attention Network, 也是LSTM 的一個變種。 Bidirectional LSTM 也就是說在做LSTM時不僅可以從左往右傳還可以從右往左傳,然後兩邊傳的結果做concate,再來做預測。這樣對某些應用還是比較好的,比如說給你一句話:Stacking LSTM helps to learn deep features,把『helps』去掉讓你去填空,如果單一的從左往右是不夠的,需要結合兩邊的信息,從左往右從右往左傳都有。

剛才我們介紹了傳統模型,進階模型,神經網絡模型。時間序列預測還有很多模型:Support Vector Regression , Gaussian Process ,Tree and Boosting ,Graphical Models。具體用哪一個模型要看具體的應用,要看哪一個模型的假設正好和模型match上。

相關學習資源

相關焦點

  • 行上行下|2020年腦科學技術乾貨合集
    網站系統的入門腦機接口和神經科學1. top14的腦電公司介紹2. 腦電圖(EEG)發展歷史及前景3. 如何提高EEG/MEG研究可重複性4. 電生理源成像:腦動力學的無創窗口5. 認知神經科學 | 腦電信號處理的機器學習6. 全腦神經網絡時間動態:腦電微狀態介紹7.
  • 時間序列預測遇到數據問題?一課掌握SageMaker內置算法DeepAR
    時間序列預測遇到數據問題?第 3 課回顧視頻如下:第四課預告課程主題:使用 DeepAR 進行時間序列預測課程時間:6 月 4 日 20:00課程主講:王元愷,AWS高級解決方案架構師講師簡介:高級解決方案架構師,負責基於AWS的雲計算方案的架構設計,同時致力於
  • 自動化所提出基於腦功能影像時間序列的多尺度卷積循環神經網絡模型
    自動化所提出基於腦功能影像時間序列的多尺度卷積循環神經網絡模型 2019-10-28 自動化研究所 【字體:大 中 小】
  • 新算法助力大規模多序列比對
    新算法助力大規模多序列比對 作者:小柯機器人 發布時間:2019/12/3 12:33:22 近日,西班牙巴塞隆納科學技術學院Cedric Notredame、Evan Floden等研究人員合作開發了可用於大規模多序列比對(
  • 算法工程師路線圖(經驗濃縮,純乾貨!)
    而網際網路公司的算法工程師崗位中這個算法則是機器學習算法,說的通俗點,就是人工智慧領域中的算法,它是關於如何讓機器自動學習和挖掘數據中的規律,並使用算法和模型對未來進行預測。目前來說這也是網際網路行業中最熱門的一個崗位,開出的薪酬也普遍高於開發崗。今天我就來分享下算法工程師的學習路徑,並推薦一些我認為特別有價值的學習資料和學習方法。
  • 機械工程師聯盟(2016年-20201207)
    從拖延症到高效,你只需要掌握這十大技巧孫正義:巨變即將到來,感覺睡覺都是浪費時間(附30張PPT)2018-06-03機械零部件設計的基本要求,這份PPT概括全了核心技術是怎樣煉成的?羅羅公司頂級航空發動機扇葉製造工藝!奇瑞200億把自己賣了,下一個是誰?
  • 乾貨分享 | 時間序列回歸預測模型——ARIMA
    (1)自回歸模型(AR)在時序分析中,描述時間序列{Xt}自身某一時刻和前p個時刻之間相互關係的模型稱自回歸模型,其形式為:Xt = a1Xt-1 + a2Xt-2 + ... + apXt-p + εt其中,aj 為參數,{εt} 為白噪聲,它反映了所有其它隨機因素的幹擾,其中p為模型階次,即Xt由前p個值決定。
  • R語言ARIMA集成模型預測時間序列分析
    p=18493 本文我們使用4個時間序列模型對每周的溫度序列建模。第一個是通過auto.arima獲得的,然後兩個是SARIMA模型,最後一個是Buys-Ballot方法。我們使用以下數據k=620n=nrow(elec)futu=(k+1):ny=electricite$Load[1:k]plot(y,type="l")我們開始對溫度序列進行建模(溫度序列對電力負荷的影響很大)
  • 乾貨| 算法工程師入門第三期——黃李超講物體檢測
    雷鋒網(公眾號:雷鋒網)按:地平線大牛講堂算法工程師入門第三期重磅來襲本期地平線深度學習算法工程師黃李超將為大家帶來物體檢測相關內容的分享,全文約8000字,建議閱讀時間20分鐘,歡迎轉發或收藏。前期傳送門:乾貨 | 算法工程師入門第一期——羅恆講深度學習乾貨 | 算法工程師入門第二期——穆黎森講增強學習(一)乾貨 | 算法工程師入門第二期——穆黎森講增強學習(二)
  • 提分乾貨(附高中生物資料大全)
    基礎知識點和隱藏考點,所以想要學好生物最重要的一點就是背說得輕鬆,可是我們的大腦記憶是有一個缺點的,那就是——艾賓浩斯遺忘曲線所以同學們要想深刻地背熟生物,就必須利用好零碎時間提分乾貨(附高中生物資料大全,電子版,在文末)但是內容太多,學姐不能發出全部文末領取完整高中生物資料電子版學姐在北大等泥萌哦內容太多,學姐不能發出全部
  • 如何使用XGBoost模型進行時間序列預測
    完成本教程後,你將了解:XGBoost是對分類和回歸問題的梯度提升集成算法的實現時間序列數據集可以通過滑窗表示轉換成監督學習。如何使用XGBoost模型對時間序列預測進行擬合,評估以及預測讓我們開始吧教程總覽本教程分為三部分。
  • 【乾貨】Hinton最新 Capsule Networks 視頻教程分享和PPT解讀(附pdf下載)
    我想這可能提醒你,如果你知道k-均值聚類算法的話,就很容易明白這是我們如何找到這個所有向量都任何的聚類的。現在讓我們看看整個算法在細節方面的工作原理。花點時間,你應該可以理解代碼的所有內容。 實施膠囊網絡的主要困難是,它包含了路由協議算法形成的內迴路。在Keras的代碼實現和tensorflow實現可以比PyTorch麻煩一點,不過也是可以做到的。如果你沒有特別的語言偏好,那麼pytorch代碼是最容易理解的。
  • ...腦以及應用趨勢,謝源、陳雲霽、肖京等 12 位專家帶來了專場報告!
    雷鋒網 AI 科技評論按:此前,AI 科技評論已經給大家報導了10 位院士對 AI 的深度把脈,而在「新一代人工智慧院士高峰論壇」上,除了院士們的熱烈討論,還有來自學界、業界的一線研究者的聲音。他們聚焦於不同的研究領域,並一直工作在最前線,從科研和應用的角度來看,他們的分享同樣獨具借鑑意義。
  • 京東高級算法工程師34頁PPT詳解基於分布式向量檢索系統Vearch的大...
    出品 | 智東西公開課講師 | 邸志惠 京東高級算法工程師導讀:6月10日,京東高級算法工程師邸志惠在智東西公開課進行了CV前沿講座第八講的直播講解,主題為《大規模圖像檢索系統的挑戰與實踐》。本文為此次課程主講環節的圖文整理:正文:大家好,我是邸志惠,今天我要分享的主題為《大規模圖像檢索系統的挑戰與實踐》,我們會分為3個部分:1、大規模圖像檢索任務所面臨的挑戰2、Vearch原理解析3、Vearch在深度學習場景中的實踐大規模圖像檢索任務所面臨的挑戰隨著深度學習技術的快速發展,它的相關應用也滲透到了我們生活的方方面面
  • 500位全球算法開發者零獎金參加阿里雲天池大賽 AI預測颱風助力...
    9月26日,在杭州雲棲大會 GEEKLAND 現場,由阿里雲天池大賽主辦的追風少年-颱風圖像時間序列預測Hackathon正式舉行。大賽旨在召集全球算法開發者,聚焦人工智慧與氣象的深度結合,探尋精確預測颱風的算法方案,助力國內自然災害防災減災工作。
  • 如何進行基因組序列比對?
    、詳細信息及下載地址已經知道啦,那麼我們來看看利用什麼軟體或算法來將測序數據比對到31億鹼基序列上呢?>BWA-MEM算法可用於reads長度在70 bp~1 Mb的測序數據;而相對BWA-SW,該算法更快更準確;相對於BWA-ALN算法,在70 bp~100 bp的reads比對中,該算法也有更好的性能。
  • 專欄| NLP概述和文本自動分類算法詳解
    原標題:專欄 | NLP概述和文本自動分類算法詳解 機器之心專欄 作者:達觀數據 本文根據達觀數據聯合創始人張健的直播內容《NLP 概述及文本自動分類算法詳解》整理而成。 一、 NLP 概述 1.
  • 中科院自動化所腦科學領域科技成果轉化研討會在京舉行
    與會代表就「腦網絡組圖譜及其在腦認知與腦疾病中的應用」「腦科學技術成果到臨床醫療器械轉化」「移動CT的研發與臨床應用」「腦氧飽和度和監測:基礎與臨床應用」「無創腦血氧監測及臨床應用」等為主題進行了專業分享。
  • 百度工程師詳解技術選型與模型...
    「百度EasyDL AI開發公開課」中,百度資深研發工程師、文心語義理解平臺技術負責人龍心塵結合世界領先的文心(ERNIE)語義理解技術,通過產業實踐案例,深入解析技術選型和模型調優的方法,分享了工程實踐中的經驗。
  • 降維算法讓腦神經大數據處理變簡單
    據物理學家組織網8月25日(北京時間)報導,美國卡內基·梅隆大學(CMU)和哥倫比亞大學(CU)的兩位科學家在最近一期的《自然—神經科學》雜誌上聯合發表了一篇評論文章,談到為何要研究大量神經元的共同活動,並提出一種名為降維算法的機器學習算法,可以有效處理大量記錄數據,幫助解釋大量神經元的活動。