股市的 t-SNE 地圖
當個別樣本可以加上標籤時,t-SNE 能帶來很好的視覺化效果。在這個練習中,你會把 t-SNE 應用到公司股價資料。將產生的 t-SNE 特徵以散佈圖呈現,並用公司名稱標註每個點,就能得到一張股市地圖!每家公司的股價變動已整理在陣列 normalized_movements 中(已替你標準化)。清單 companies 則提供各家公司的名稱。PyPlot(plt)已經替你匯入。
本練習屬於課程
Unsupervised Learning in Python
練習說明
- 從
sklearn.manifold匯入TSNE。 - 建立一個名為
model的 TSNE 實例,並設定learning_rate=50。 - 對
model套用.fit_transform()方法至normalized_movements。將結果指定給tsne_features。 - 選取
tsne_features的第 0 欄與第 1 欄。 - 以 t-SNE 特徵
xs和ys繪製散佈圖,並設定額外的關鍵字引數alpha=0.5。 - 使用
plt.annotate()為每個點加上公司名稱的標籤的程式碼已為你寫好,按下送出即可看到視覺化結果!
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Import TSNE
____
# Create a TSNE instance: model
model = ____
# Apply fit_transform to normalized_movements: tsne_features
tsne_features = ____
# Select the 0th feature: xs
xs = ____
# Select the 1th feature: ys
ys = tsne_features[:,1]
# Scatter plot
____
# Annotate the points
for x, y, company in zip(xs, ys, companies):
plt.annotate(company, (x, y), fontsize=5, alpha=0.75)
plt.show()