close

學習機器學習已經有很長一段時間了,整個學習過程不算太平順,甚至可以說有點顛頗,學習過程中經常遇到許多不懂的地方,需要因此停下來去查找資料,甚至要花很長一段時間去學習另一門知識。就算如此,還是覺得自己的整個知識體系並不算太完整,因此決定開始寫一些相關的知識文章,一方面是想給對這方面有興趣的人參閱,一方面是在整理自己的知識體系,並補上漏洞,故歡迎大家對此提出問題與批評。

 

這篇文章要來介紹機器學習是什麼

首先要先定義機器學習是什麼?

使用過去資料,讓電腦能夠從過去經驗學習,並改善效能

簡單的來說就是利用過去的資料,訓練演算法,然後希望這個演算法能夠在未知的資料上能有好的表現。

資料-演算法-輸出

目前機器學習主要分為四類:

1.監督式學習

分類

回歸

2.非監督式學習

聚類

3.半監督式學習

4.強化學習

 

但目前主要發展都集中在監督式學習這一塊。

 

監督式學習,也是數據驅動的學習方式,譬如說我們要教機器如何辨別一隻狗,我們不會告訴他,狗滿足哪些條件哪些特徵,像是狗的身體長度大於多少,或是狗的尾巴長於多少。而是給機器一大堆狗的特徵,身體長度、身體寬度、尾巴長度...之類的特徵,然後告訴他哪一組數據是狗,那一組數據不是狗,讓機器自己去學習如何辨別,很重要的一點是數據越多越好,這也是為什麼我們一直說大數據,大數據會幫助機器表現得更好。

基本符號:

1. 輸入x∈X

2. 輸出y∈Y

3. 函數 f : X → Y

4. 數據 D : {(X1, Y1), (X2, Y2), ... , (Xn, Yn)}

大概的流程是這樣,我們有一組像這樣的數據 (Xn, Yn),把它餵給電腦,夠過一個演算法,我們要學習函數 f ,期望在未來新的數據X進來的時候,可以使用已經學好的函數 f 去輸出Y。

arrow
arrow

    Leo 發表在 痞客邦 留言(0) 人氣()