###### tags: `商業數據分析筆記` `KNN` `Kmeans` `Hierarchical Clustering` `cluster` `ML` `分群` `監督式學習` `非監督式學習` # 機器學習易混淆名詞/演算法比較 人工智慧(AI)包含機器學習(ML)和深度學習(DL) ![](https://i.imgur.com/R2npfWr.png) ## 機器學習(Machine Learning, ML) + 監督式學習 + 非監督式學習 + 半監督式學習 | | 監督式學習 | 非監督式學習 | 半監督式學習 | |-| -------- | -------- | -------- | |演算法| 迴歸、決策樹、隨機森林<br>XGB、SVM、KNN<br>(分為TR跟TS data,做交叉驗證,預測類別及數量)|集群分析、關聯式分析<br>主成分分析、尺度縮減、異常檢測|監督式學習+非監督式學習| |分類/分群| 分類(二元樹)|分群(距離、相似特徵)|| |資料型態| 結構化資料|結構化資料|| |資料標籤| 有標籤|無標籤|有標籤|| |標準答案| 有正確答案,透過機器學習能分辨及預測|沒有給答案,機器需自行尋找規則與不同之處|給少量的標籤,讓機器自我學習|| |法則| 演繹法|歸納法||| ## 增強式學習: 1. 觀察目前環境的狀態→執行動作(也會影響環境進而達到新狀態)→收到報酬(回饋)→觀察新的狀態,循環多次直到某個終止時間 2. 透過環境給的正/反回饋(training loss)來修正模型 3. 不是一次給予全部資料讓機器分類,而是不斷餵給機器資料,透過經驗讓機器不斷修正 ![](https://i.imgur.com/aKAwmbp.png) ## 分群 vs 分類: 分群:群內差異小,群間差異大 + 找出比較相似的資料聚集在一起,形成集群(Cluster),相似性的依據是採用歐式距離,相對距離愈近、相似程度越高,被歸類至同一群組。 + 演算法:Kmeans, Hierarchical Clustering ### KNN(K-Nearnest-Neighbors) + 尋找所有點中與新增點i距離最近(以i點為圓心)的前K個樣本,該K個樣本大部分屬於何種類別,則i點就屬於該類。 ![](https://i.imgur.com/DQUrSIi.png) ### K-means(K-means Clustering) + 在一個二維的空間投射點,先隨機分群,再慢慢調整達到組內差距小、組間差異大。 ![](https://i.imgur.com/NRb6eNo.jpg) + 計算Compute cluster centroids:![](https://i.imgur.com/rBIOUin.png) + 設定K群,若在中間新增一個點i,其屬於哪一群? + Step2. 找出各組包含i點形成的群中心(centroids)位置 + Step3. 計算i到各組群中心的距離 + Step4. 取最短的,重新指定i點所屬的群集 ### 階層式分群(Hierarchical Clustering) + 兩兩最近的會被合併成一個族群,分到最後會只剩一個群。 + 對Dendrogram畫水平線,找到兩端點之間距離差距最大的,其穿越過多少條直線代表其分幾組。 ![](https://i.imgur.com/qBzfquz.png) ### 三者比較 || KNN | K-means | Hierarchical | |---| -------- | -------- | -------- | |本質| 分類 | 群集(cluster) | 群集(cluster) | |ML種類| 監督式學習 | 非監督式學習 | 非監督式學習 | |設定種子| 不用 | 需要(隨機挑選分群) | 不用 | |如何設定K| 需有Domain知識 | 需有Domain知識 | 分完群才看圖(dendrogram)選擇K | |明顯的前期訓練過程| | 有 | 無 | |時間複雜度| O(D*log(N)), D為維度 | O(n) | O(n^2) | |對巨量資料分群| 可(維度不能過大) | 可 | 無法 |