iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 2
0
AI & Data

不經醫事,不長醫智系列 第 2

監不監督的學習?!

機器學習的學習方式可以簡單地分為以下兩種:

  1. 監督式學習(Supervised learning)
  2. 非監督式學習(Unsupervised learning)

在我看來,就類似補習班與放牛班的對比關係,
監督式學習就意味設計者必須餵大量有標註(labeling)過的Data,給機器去歸納出這些Input有哪些關聯性。
而非監督式學習則直接餵資料給機器去找尋這些Input的特徵(Feature)有哪些。

監督式無非就需要耗費人力再進行資料的labeling,而非監督式雖然以放任的態度訓練,想當然爾其準確度就會有所侷限。進而就有半監督式學習(Semi-supervised learning)與增強學習(Reinforcement learning)地出現。

半監督式學習就字面上的意思可以推敲出來就是進行少部分的Data labeling,然後就嘗試讓機器去衍伸與推敲。


蔡炎龍老師在課堂上帶到的幾個 Python 數據分析團隊:

  1. Jupyter -> 主流平台
  2. NumPy -> 科學計算
  3. Matplotlib -> 畫圖
  4. Pandas -> 資料清理
  5. SciKit Learn -> 機器學習

現實中的因果關聯,在我們擁有很多資料和紀錄後(大數據),我們希望打造一個「函數學習機」,
可以丟給他一堆資料,期望「函數學習機」可以 Output 越接近真實結果的答案。


最後來看一些 Python 程式碼...

依照 蔡炎龍老師的講義,我們先來定義一個線性函數

f(x)=1.2x+0.8

再加入 noise 項(雜訊)

https://ithelp.ithome.com.tw/upload/images/20190903/20092103Uz0CersDNm.png

用 python 表示:

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 1, 100)
y = 1.2*x + 0.8 + 0.2*np.random.randn(100)

plt.scatter(x,y)

https://ithelp.ithome.com.tw/upload/images/20190903/20092103DGfqDJQr56.png

這邊我在 Colab 上測試,今天就先畫出這段線性函數。


上一篇
人工智慧軍校醫療專班第一期-Day 1
下一篇
線性迴歸
系列文
不經醫事,不長醫智3
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言