大數據專題(四)/從演算法到金融交易,數學在資料科學中無所不在
文/陳妤寧
「所謂的大數據,並沒有一個公認的標準去認定到底多大才是大數據。十年前電信公司和基地台所蒐集的數據其實也不少,而未來的資料量也會更多,到底誰是大是小呢?可以確定的是,資料量小也有資料量小的作法,而當資料越多,則能提供資料科學更細緻分析的材料來源。」
東吳大學數學系助理教授吳牧恩在本次的專訪中,從大數據和演算法的設計開始,說明了資料科學中的數學其實無所不在。
現在電腦運算速度、雲端存儲能力都大幅提升,「60 年前的存儲機器,容量 5M,體積跟桌子差不多大,要價 25 萬美金;而現在手機使用的 Micro SD 卡容量已經高達 128G。」這些硬體條件的升級,讓資料儲存和運算的能力得以大幅提昇。再加上網際網路和社群媒體的興起,所有的網路足跡都能在雲端留下記錄,以金融產業記錄的資料為例,記錄頻率從每分鐘變成每秒鐘記錄一次,整體資料量成長了數十萬倍。
「以美國來說,每天實際成交的單和掛單的比例是 1:99,也就是平均送出 100 個買賣要求只會有 1 筆成交。對於想利用資料預測市場的人來說,那 99 筆其實也充滿資訊,如果能善加利用會是很好的素材。」如何在這些茫茫資料海中找出問題的答案,就是資料科學關心的領域。
演算法是資料運算的靈魂
電腦運算聽起來很神,但電腦到底是怎麼運算的呢?答案是以「演算法」做為計算的憑藉。電腦是一個指令一個動作,吳牧恩以「123 排大小」為例,電腦無法直接判斷出「1<2<3」的結果,因此透過「1<2」、「1<3」、「2<3」兩兩對決的計算方式,加上電腦快速的運算能力,才能導出「1<2<3」的結果。「這個舉例只是其中一種演算法,如果要排的數字更多,數學家就要研究有沒有比兩兩對決更有效率的演算法?」吳牧恩說,研究演算法的本身就是要提升解題效率、降低運算的複雜度、找出比其他解法更有效的演算法。而有些問題不一定有標準解答,演算法就要盡力找出最佳解或近似解,例如獲利策略的最佳化。
再以 Facebook 演算法為例,Facebook 如何判斷哪則動態對使用者較為重要、應該優先呈現?如果是按照貼文者和使用者的「親疏遠近」作為依據,那麼 Facebook 又是如何定義「誰是你最要好的前十名好友?」這些指標必須透過演算法向電腦下指令,例如互動越多的就是越好的朋友?彼此互動的內容是否為正面的內容?種種不同的因子依不同的權重加總起來產生指標,讓 Facebook 進而判斷你想看什麼動態、甚至是想看什麼廣告。
數學為科學之母--股市策略裡的數學分析
數學為科學之母,然而數學的重要性在台灣卻被嚴重低估。吳牧恩以自己的經驗為例,大學唸數學系的他,後來漸往資訊安全和密碼學的領域深入,而現在則以股市金融的獲利模型為研究專業,研究資金運用最佳化和穩定獲利的策略,而這一切的背後都是仰賴數學模型來做分析。
以股市上的統計資料「回測」為例,為了檢驗某種交易方法是否有獲利的可行性,運用過去一段長時間內的股價資料,檢視損益曲線圖是否穩定成長,就是以數學如何驗證交易策略的體現。「若我想分析哪幾支股票容易大漲,我可以從歷史資料中去找出某些規律,做出假設--例如我假設只要前一天外資買超上百億、隔天開市的大漲機率就會很高--接著回測這個假設是否屬實、這兩個現象發生之間的相關性高不高,這就是一種條件機率的分析結果。」吳牧恩說。當歷史資料蒐集的期間越長、蒐集的項目越精細,巨量資料便能讓回測可以有更多資料去驗證假設、或是分析的更為細緻。
從現象找出相關,預測結果也是門機率的科學
一般人的目的可能是為了獲利,因此下注在自己最看好的可能性上;但對莊家來說,這是一個蒐集整合民調的大好機會,甚至可能可以分析出比問卷調查更為精準的結果。
但如何確定兩個高度相關的現象彼此之間互為因果關係呢?用下注的資料來分析,不會有抽樣的問題嗎?吳牧恩說,當分析的目的單純是為了要「預測成功」,例如在股市交易的單一導向為「獲利」,在這種環境下因果關係或抽樣方法反而是其次,只要計算成功機率,數學分析的任務便達成。但若要深入研究「為什麼」,就需要從發現的現象中由小追大,深入追查兩種現象之間是否真的互為因果,或是另有其他隱藏原因同步引起這兩個雙胞現象?
電腦不只能運算資料,也能應用程式自動交易
股市交易也隨著科技進步,除了券商推出各家的下單軟體,也出現「程式交易」,只要把交易策略和數學模型寫進程式,就可電腦自動買賣交易。例如以短暫價差套利的「高頻交易」,因為電腦一秒鐘可自動交易數百次,可以低風險賺取微利,是單憑人力無法達成的交易方式,因此同樣是做高頻交易,純看設備好壞、比電腦速度。
吳牧恩比喻,現在各家券商的下單軟體就如同傳統的雜貨店,如果出現了能夠自己蒐集分析全球交易資料,可以多元報價、可讓使用者便利操作程式交易或高頻交易的金融交易平台,很可能就會像現代的連鎖超商衝擊傳統雜貨店一般地襲捲金融圈。
回到資料本身,在程式應用之前必須要有演算模型,而在推出演算模型時必須要有資料驗證。而資料整理往往是最耗費資料科學家心神的工作,例如日期資訊的欄位要以秒還是毫秒為單位?商品的上下五檔報價?成交情形有無?有沒有人抽單?這些全都是資訊。也必須在重新整理資料時思考究竟哪些資訊對於分析問題有幫助、缺漏的資訊是否需要補充蒐集、統整資料的方式是否需要改變等等。
綜歸來說,數學對於資料科學的任何工作階段或工作角色而言都是重要的基礎能力。吳牧恩表示,數學邏輯好的人要進入子領域研究都能快速上手,也鼓勵學生在大學階段強化基礎能力,在研究所時再擇定應用的專業領域,也更具備跨領域的整合能力。
圖片來源:Peter Rosbjerg @flickr, by CC 2.0
留言討論