假設我有給定的資料框
feature_1 feature_2 feature_3 feature_4 feature_5 feature_6 feature_7 feature_8
0 0.862874 0.392938 0.669744 0.939903 0.382574 0.780595 0.049201 0.627703
1 0.942322 0.676181 0.223476 0.102698 0.620883 0.834038 0.966355 0.554645
2 0.940375 0.310532 0.975096 0.600778 0.893220 0.282508 0.837575 0.112575
3 0.868902 0.818175 0.102860 0.936395 0.406088 0.619990 0.913905 0.597607
4 0.143344 0.207751 0.835707 0.414900 0.360534 0.525631 0.228751 0.294437
5 0.339856 0.501197 0.671033 0.302202 0.406512 0.997044 0.080621 0.068071
6 0.521056 0.343654 0.812553 0.393159 0.217987 0.247602 0.671783 0.254299
7 0.594744 0.180041 0.884603 0.578050 0.441461 0.176732 0.569595 0.391923
8 0.402864 0.062175 0.565858 0.349415 0.106725 0.323310 0.153594 0.277930
9 0.480539 0.540283 0.248376 0.252237 0.229181 0.092273 0.546501 0.201396
我想在這些行中找到集群。為此,我想使用 Kmeans。但是,我想通過更重視 [ feature_1 , feature_2 ] 而不是資料框中的其他功能來找到集群。假設[ feature_1 , feature_2 ]的重要性系數為0.5,其余特征的重要性系數為0.5 。
我考慮過使用 PCA 將 [ feature_3 , ..., feature_8 ] 轉換為單列。通過這樣做,我認為 Kmeans 對單個特征的重要性不如對 6 個分離特征的重要性。
這是個好主意嗎 ?您是否看到將這些資訊提供給演算法的更好方法?
uj5u.com熱心網友回復:
Kmeans 所做的是嘗試找到質心并將點分配給與質心具有最小歐幾里德距離的質心。當最小化歐幾里得距離或將它們用作機器學習中的損失函式時,通常應該確保不同的特征具有相同的尺度。否則,較大的特征將在尋找最近點方面占主導地位。這就是為什么我們通常在訓練模型之前進行一些縮放。
但是,在您的情況下,您可以通過首先使用一些 minmax 或 standardscaler 將所有功能置于相同的比例,然后將前 2 個功能按比例放大 > 1 或將其余 6 個功能按比例縮小因子 < 1。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/433633.html
標籤:Python 机器学习 scikit-学习 k-均值 主成分分析
