機器學習中聚類分析的演算法的確要求要先確定分幾類,也就是簇數,作為一個數據挖掘工作者,也經常會用到聚類分析,那麼該怎樣確定這個數呢?
說一下我做聚類分析確定簇數的方法
做聚類分析首先要知道做的是什麼,也就是我們的分析物件,舉個例子,如果我們要對全國城市來聚類,那可以有四五個簇類,比如一線,二線,三線,四線及以下或者五線等等,具體要確定。
要根據業務需求和場景,也可以和業務人員或者運營人員來商討,畢竟你做的分析是要用到實際業務中,必須要讓他們認可你的分析結果。在商討的過程中重點要討論一下這個分析所對應的業務需求,他們在什麼情況下用到這個分析,分析的目的是為了什麼,想要得到一個什麼樣的結果,這幾點一定要搞清楚
如果說,業務人員也無法給出數目,或者只給出大概的資料範圍怎麼辦?不慌,業務人員肯定無法告訴我們,我們還可以根據拿到的資料來判斷。
業務或運營人員無法給出準確的數目,這個很正常,要是他們都能清楚的知道要分多少類,那還要我們資料探勘人員幹嘛呢。業務人員只能知道大概,而我們要提供精準的分析結果。
根據資料來判斷,最常用到散點圖,根據樣本的分佈情況來判斷簇類數目
資料本身的分佈屬性會給我們一個直觀的判斷。
但是得注意:做散點圖的時候最好對資料做歸一化,因為聚類分析是根據歐氏距離的大小來判斷樣本之間的相似性,如果不做歸一化,可能導致有的特徵資料的方差過大,直接影響聚類結果。
根據散點圖一看,類別很清晰嘛,還猶豫什麼,上手做唄,做出來的結果也很好,直接甩給業務人員,這個時候別急著高興,因為資料有一定的欺騙性,做好初步結果要和業務人員對接,要討論一下這個分類的結果有沒有實際的業務意義,就是能不能在業務上有個很好的解讀。畢竟無法在業務上進行解讀的分析都是毫無意義的!
機器學習中聚類分析的演算法的確要求要先確定分幾類,也就是簇數,作為一個數據挖掘工作者,也經常會用到聚類分析,那麼該怎樣確定這個數呢?
說一下我做聚類分析確定簇數的方法
1,根據業務來定義做聚類分析首先要知道做的是什麼,也就是我們的分析物件,舉個例子,如果我們要對全國城市來聚類,那可以有四五個簇類,比如一線,二線,三線,四線及以下或者五線等等,具體要確定。
要根據業務需求和場景,也可以和業務人員或者運營人員來商討,畢竟你做的分析是要用到實際業務中,必須要讓他們認可你的分析結果。在商討的過程中重點要討論一下這個分析所對應的業務需求,他們在什麼情況下用到這個分析,分析的目的是為了什麼,想要得到一個什麼樣的結果,這幾點一定要搞清楚
如果說,業務人員也無法給出數目,或者只給出大概的資料範圍怎麼辦?不慌,業務人員肯定無法告訴我們,我們還可以根據拿到的資料來判斷。
2,根據資料分佈來判斷業務或運營人員無法給出準確的數目,這個很正常,要是他們都能清楚的知道要分多少類,那還要我們資料探勘人員幹嘛呢。業務人員只能知道大概,而我們要提供精準的分析結果。
根據資料來判斷,最常用到散點圖,根據樣本的分佈情況來判斷簇類數目
資料本身的分佈屬性會給我們一個直觀的判斷。
但是得注意:做散點圖的時候最好對資料做歸一化,因為聚類分析是根據歐氏距離的大小來判斷樣本之間的相似性,如果不做歸一化,可能導致有的特徵資料的方差過大,直接影響聚類結果。
3,資料分佈類別很清晰?也先別高興根據散點圖一看,類別很清晰嘛,還猶豫什麼,上手做唄,做出來的結果也很好,直接甩給業務人員,這個時候別急著高興,因為資料有一定的欺騙性,做好初步結果要和業務人員對接,要討論一下這個分類的結果有沒有實際的業務意義,就是能不能在業務上有個很好的解讀。畢竟無法在業務上進行解讀的分析都是毫無意義的!