L12|中文 F3 學生的學習紀錄
L12|中文 F3 學生的學習紀錄
角色設定:我是中三學生,只看得懂中文。Python 學過變數、for 迴圈和 list,數學讀到一元二次方程。我靠中文課程筆記、YouTube 自動翻譯字幕和查字典來學。Kaggle 筆記本的操作步驟,是依官方 notebook 流程寫下的練習紀錄。
我讀懂了什麼(用自己的話)
- 分群就是把很像的東西放在同一堆。
- 均值漂移:每個點看看附近的點,往它們的中心走,走幾次就聚成一團。
- 高斯核讓近的點說話比較大聲,遠的點幾乎沒影響。
- einsum 是一種很短的寫法,用字母代表維度。
我卡住的地方,和我怎麼解決
| 卡住的地方 | 我怎麼解決 |
|---|---|
| einsum 的字母規則看不懂 | 只記一個例子:'ik,kj->ij' 就是矩陣乘法,k 是被加總掉的維度。 |
| CUDA kernel 太難 | 先理解成「讓 GPU 上幾千個小工人各算一格」,程式細節跳過。 |
練習作答
Q1. 點 A(0,0) 和點 B(3,4) 的歐氏距離是多少?
用畢氏定理:√(3² + 4²) = √25 = 5。
Q2. 均值漂移中,為什麼要用高斯核當權重,而不是所有點一樣重要?
因為遠的點通常屬於別的群,如果權重一樣,點會被拉到所有點的中心,分不出群。高斯核讓附近的點影響大、遠的點影響小,點才會聚到自己那群的中心。
Q3. 舉一個生活中可以用「分群」解決的問題。
學校飯堂可以把學生的午餐選擇分群,發現有一群人常選素食、一群常選麵食,再決定每天準備多少份。
我的卡片盒筆記
卡片|物以類聚可以寫成一個演算法
均值漂移分群的想法很直覺:每個點都往身邊夥伴的中心靠近,走幾輪之後,相似的點自然聚成一群。重點是越近的夥伴影響越大,這就是高斯核的作用。
這讓我想到開學第一週的班上。大家一開始坐得很散,每天下課都往聊得來的同學那邊靠一點,兩週後就自然分成打球的、畫畫的、打機的幾群,沒有人規定要分幾組。這跟均值漂移不用事先決定群數一模一樣。不過我覺得人的分群會變,演算法的點只會一直往中心走,現實比模型複雜。那時班主任沒有強迫大家分組,只是安排了幾次小組活動,讓大家有機會互相靠近。演算法裡的高斯核,好像就是在決定「誰算是我的鄰居」。
這週我要做的小行動:用紙畫 10 個點,手動做兩輪「移到附近點的平均位置」,看看它們會不會聚成兩群。
🔗 推薦產生關聯的筆記: → 數學類:「畢氏定理是距離計算的基礎」 → 社會觀察類:「群體是一步步靠攏形成的」 → 資料分析類:「不知道要分幾群時,先讓資料自己說話」
回到課程筆記:L12_均值漂移分群_202611041526