簡單易懂的 Big Data

隨著科技發展演進,漸漸的資料愈來愈多,每個人使用的手機每天就產生了無數比的資料,又或著是蒐集自然界的資料像是溫度之類的也產生了很大量的資料,監視器把畫面儲存起來也會產生大量的資料,生活周遭充斥著滿滿的資料來源,而透過這些資料我們能作些什麼?

那就是學習!

人類從嘗試中經驗中學會走路、學會說話、繪畫、甚至創作,當電腦也能和人類一樣經由很多很大量長久累積下來的資料也就是經驗來學習,就能夠像人類一樣獲得解決某一方面問題的能力,但是電腦不像人腦一樣強大,只能夠學得某一方面的技能而已。

還記得多年前人們使用Machine Learning開始利用電腦學習,利用資料來訓練電腦,使得電腦能夠做出判斷,但是這樣的結果往往都是靠著天外飛來一筆的神奇演算法和神妙的經驗調整參數所達到的結果,近幾年人們已經發現當資料量大到某一程度不論複雜還是簡單的演算法最後的正確率都會呈現差不多的速率成長,並且正確率都差不多,也就是說不論是用很複雜的程式還是簡單的程式在資料量大的情況下都可以達到相似的結果,都可已有差不多的正確率,而且正確率都很高。

詳細可以看這篇文章,他們做了很有趣的實驗得到了這樣的結果

其實這並不是什麼很讓人訝異的成果,不過這卻是很正要的驗證,其實原因很簡單,所謂的Machine Learning就是在一個空間中找出適當的切割點分開出不同的資料,例如下圖,我們必須自己決定空白的地方該怎麼區隔,往往這是Machine Learning最大的挑戰和猜測,“不知道”就是造成正確率不夠高的原因,例如我們如下圖黃線的方式分開兩種顏色的資料,線段左邊為黑色,線段右邊為藍色。

ml1

而當我們資料量大到一定程度的時候,空間中的點密佈整個空間,這種情況下就不需要有精妙的演算法或著參數,只需要依樣畫葫蘆找到每組資料的範圍畫起來就是最佳的答案了,如下圖紅線我們只需要沿著資料所劃分出來的區域區隔兩種顏色,而且也可以發現上圖中黃色線段的分隔方式在下圖會造成很大的錯誤,只要資料量夠多,不管什麼演算法都會得到下圖的紅色線段的結果,因為這就是資料告訴你的答案。

ml2

在Big Data的時代和以前不一樣的就是,以前是演算法的年代,必須由天才們想出來的神妙的方法才能得到好的結果,現在則是靠海量的資料堆砌出結果

換個說法說就是Big Data會使得傳統必須使用統計和機率推算出來的可能結果變成只需要從資料裡面找到規則就可以看到結果,從以前由於資料量不夠多只能取樣抽查變成只需要從大量的取樣結果中找到規律,因此科學方法從傳統三種方式:理論、實驗、模擬,增加了第四種就是Big Data,可以看這篇。透過海量的資料可以找出規律,就像如果你能記得世界上所有人下過的棋譜以及步驟,又能夠很快的找到相對應現在棋局的棋譜,你就能夠一定會勝利,因為下棋也不外乎就是重複上演著類似的棋局,就連棋王也是有固定的下法,不過就算電腦能做到這樣人類也不會因此永遠輸給電腦,因為人類擁有著能找到過往千百年沒下過的新棋局的可能性,這就是人類的創造力!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s