在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

10種聚類算法和Python代碼1

jf_78858299 ? 來源:海豚科學實驗室 ? 作者:海豚科學實驗室 ? 2023-02-20 13:57 ? 次閱讀

分享一篇關于聚類的文章: 10種聚類算法Python代碼 。文末提供jupyter notebook的完整代碼獲取方式。

聚類或聚類分析是無監督學習問題。它通常被用作數據分析技術,用于發現數據中的有趣模式,例如基于其行為的客戶群。

有許多聚類算法可供選擇,對于所有情況,沒有單一的最佳聚類算法。相反,最好探索一系列聚類算法以及每種算法的不同配置。在本教程中,你將發現如何在 python 中安裝和使用頂級聚類算法。

完成本教程后,你將知道:

  • 聚類是在輸入數據的特征空間中查找自然組的無監督問題。
  • 對于所有數據集,有許多不同的聚類算法和單一的最佳方法。
  • 在 scikit-learn 機器學習庫的 Python 中如何實現、適配和使用頂級聚類算法。

教程概述

本教程分為三部分:

  1. 聚類
  2. 聚類算法
  3. 聚類算法示例
  • 庫安裝
  • 聚類數據集
  • 親和力傳播
  • 聚合聚類
  • BIRCH
  • DBSCAN
  • K-均值
  • Mini-Batch K-均值
  • Mean Shift
  • OPTICS
  • 光譜聚類
  • 高斯混合模型

一、聚類

聚類分析,即聚類,是一項無監督的機器學習任務。它包括自動發現數據中的自然分組。與監督學習(類似預測建模)不同,聚類算法只解釋輸入數據,并在特征空間中找到自然組或群集。

聚類技術適用于沒有要預測的類,而是將實例劃分為自然組的情況。

—源自:《數據挖掘頁:實用機器學習工具和技術》2016年。

群集通常是特征空間中的密度區域,其中來自域的示例(觀測或數據行)比其他群集更接近群集。群集可以具有作為樣本或點特征空間的中心(質心),并且可以具有邊界或范圍。

這些群集可能反映出在從中繪制實例的域中工作的某種機制,這種機制使某些實例彼此具有比它們與其余實例更強的相似性。

—源自:《數據挖掘頁:實用機器學習工具和技術》2016年。

聚類可以作為數據分析活動提供幫助,以便了解更多關于問題域的信息,即所謂的模式發現或知識發現。例如:

  • 該進化樹可以被認為是人工聚類分析的結果;
  • 將正常數據與異常值或異常分開可能會被認為是聚類問題;
  • 根據自然行為將集群分開是一個集群問題,稱為市場細分。

聚類還可用作特征工程的類型,其中現有的和新的示例可被映射并標記為屬于數據中所標識的群集之一。雖然確實存在許多特定于群集的定量措施,但是對所識別的群集的評估是主觀的,并且可能需要領域專家。通常,聚類算法在人工合成數據集上與預先定義的群集進行學術比較,預計算法會發現這些群集。

聚類是一種無監督學習技術,因此很難評估任何給定方法的輸出質量。

—源自:《機器學習頁:概率觀點》2012。

二、聚類算法

有許多類型的聚類算法。許多算法在特征空間中的示例之間使用相似度或距離度量,以發現密集的觀測區域。因此,在使用聚類算法之前,擴展數據通常是良好的實踐。

聚類分析的所有目標的核心是被群集的各個對象之間的相似程度(或不同程度)的概念。聚類方法嘗試根據提供給對象的相似性定義對對象進行分組。

—源自:《統計學習的要素:數據挖掘、推理和預測》,2016年

一些聚類算法要求您指定或猜測數據中要發現的群集的數量,而另一些算法要求指定觀測之間的最小距離,其中示例可以被視為“關閉”或“連接”。因此,聚類分析是一個迭代過程,在該過程中,對所識別的群集的主觀評估被反饋回算法配置的改變中,直到達到期望的或適當的結果。scikit-learn 庫提供了一套不同的聚類算法供選擇。下面列出了10種比較流行的算法:

  1. 親和力傳播
  2. 聚合聚類
  3. BIRCH
  4. DBSCAN
  5. K-均值
  6. Mini-Batch K-均值
  7. Mean Shift
  8. OPTICS
  9. 光譜聚類
  10. 高斯混合

每個算法都提供了一種不同的方法來應對數據中發現自然組的挑戰。沒有最好的聚類算法,也沒有簡單的方法來找到最好的算法為您的數據沒有使用控制實驗。

在本教程中,我們將回顧如何使用來自 scikit-learn 庫的這10個流行的聚類算法中的每一個。這些示例將為您復制粘貼示例并在自己的數據上測試方法提供基礎。我們不會深入研究算法如何工作的理論,也不會直接比較它們。讓我們深入研究一下。

三、聚類算法示例

在本節中,我們將回顧如何在 scikit-learn 中使用10個流行的聚類算法。這包括一個擬合模型的例子和可視化結果的例子。這些示例用于將粘貼復制到您自己的項目中,并將方法應用于您自己的數據。

1、庫安裝

首先,讓我們安裝庫。不要跳過此步驟,因為你需要確保安裝了最新版本。你可以使用 pip Python 安裝程序安裝 scikit-learn 存儲庫,如下所示:

sudo pip install scikit-learn

接下來,讓我們確認已經安裝了庫,并且您正在使用一個現代版本。運行以下腳本以輸出庫版本號。

# 檢查 scikit-learn 版本
import sklearn
print(sklearn.__version__)

運行該示例時,您應該看到以下版本號或更高版本。

0.22.1

2、聚類數據集

我們將使用 make _ classification ()函數創建一個測試二分類數據集。數據集將有1000個示例,每個類有兩個輸入要素和一個群集。這些群集在兩個維度上是可見的,因此我們可以用散點圖繪制數據,并通過指定的群集對圖中的點進行顏色繪制。

這將有助于了解,至少在測試問題上,群集的識別能力如何。該測試問題中的群集基于多變量高斯,并非所有聚類算法都能有效地識別這些類型的群集。因此,本教程中的結果不應用作比較一般方法的基礎。下面列出了創建和匯總合成聚類數據集的示例。

# 綜合分類數據集
from numpy import where
from sklearn.datasets import make_classification
from matplotlib import pyplot
%matplotlib inline

# 定義數據集
X, y = make_classification(n_samples=1000, 
                           n_features=2, 
                           n_informative=2, 
                           n_redundant=0, 
                           n_clusters_per_class=1, 
                           random_state=4)
# 為每個類的樣本創建散點圖
for class_value in range(2):
    # 獲取此類的示例的行索引
    row_ix = where(y == class_value)
    # 創建這些樣本的散布
    pyplot.scatter(X[row_ix, 0], X[row_ix, 1])
    # 繪制散點圖
pyplot.show()

運行該示例將創建合成的聚類數據集,然后創建輸入數據的散點圖,其中點由類標簽(理想化的群集)著色。我們可以清楚地看到兩個不同的數據組在兩個維度,并希望一個自動的聚類算法可以檢測這些分組。

圖片

圖:已知聚類著色點的合成聚類數據集的散點圖

接下來,我們可以開始查看應用于此數據集的聚類算法的示例。我已經做了一些最小的嘗試來調整每個方法到數據集。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4788

    瀏覽量

    68616
  • 數據分析
    +關注

    關注

    2

    文章

    1449

    瀏覽量

    34060
  • python
    +關注

    關注

    56

    文章

    4797

    瀏覽量

    84690
收藏 人收藏

    評論

    相關推薦

    Python如何實現模糊動態

    利用Python實現模糊動態
    發表于 06-02 17:38

    基于和競爭克隆機制的多智能體免疫算法

    包含分布式電源的配電網無功優化matlab源代碼代碼按照高水平文章復現,保證正確,可先發您文章看是否滿足您的要求利用分布式電源的無功補償能力,提出了一基于
    發表于 12-29 06:50

    基于關聯規則與算法的查詢擴展算法

    基于關聯規則與算法的查詢擴展算法:針對信息檢索中查詢關鍵詞與文檔用詞不匹配的問題,提出一基于關聯規則與
    發表于 10-17 23:00 ?12次下載

    算法融合算法研究

    算法融合算法研究首先對
    發表于 08-10 15:08 ?33次下載
    <b class='flag-5'>聚</b><b class='flag-5'>類</b><b class='flag-5'>算法</b>及<b class='flag-5'>聚</b><b class='flag-5'>類</b>融合<b class='flag-5'>算法</b>研究

    新的基于流行距離的譜算法

    本文提出了一新的基于流行距離的譜算法,這是一新型的聚類分析算法。不僅能夠對任意的非規則形
    發表于 12-07 14:53 ?3次下載

    基于密度DBSCAN的算法

    本文開始介紹了算法概念,其次闡述了算法的分類,最后詳細介紹了
    的頭像 發表于 04-26 10:56 ?2.2w次閱讀
    基于密度DBSCAN的<b class='flag-5'>聚</b><b class='flag-5'>類</b><b class='flag-5'>算法</b>

    Python無監督學習的幾種算法包括K-Means,分層等詳細概述

    無監督學習是機器學習技術中的一,用于發現數據中的模式。本文介紹用Python進行無監督學習的幾種算法,包括K-Means
    的頭像 發表于 05-27 09:59 ?3w次閱讀
    <b class='flag-5'>Python</b>無監督學習的幾種<b class='flag-5'>聚</b><b class='flag-5'>類</b><b class='flag-5'>算法</b>包括K-Means<b class='flag-5'>聚</b><b class='flag-5'>類</b>,分層<b class='flag-5'>聚</b><b class='flag-5'>類</b>等詳細概述

    如何在python中安裝和使用頂級算法?

    以及每種算法的不同配置。在本教程中,你將發現如何在 python 中安裝和使用頂級算法。 完成本教程后,你將知道:
    的頭像 發表于 03-12 18:23 ?2233次閱讀

    自適應的關聯融合算法

    為解決傳統算法多數需要預先設定聚參數且無法有效識別異常點和噪聲點的問題,提出一自適應的關聯融合
    發表于 04-01 16:16 ?13次下載
    一<b class='flag-5'>種</b>自適應的關聯融合<b class='flag-5'>聚</b><b class='flag-5'>類</b><b class='flag-5'>算法</b>

    10介紹和Python代碼

    分享一篇關于的文章,10介紹和Python
    的頭像 發表于 07-30 10:25 ?3054次閱讀

    10頂流算法Python實現(附完整代碼

    分享一篇關于的文章:10算法
    的頭像 發表于 01-07 09:33 ?1583次閱讀

    10算法Python代碼2

    分享一篇關于的文章: **10算法
    的頭像 發表于 02-20 13:57 ?1004次閱讀
    <b class='flag-5'>10</b><b class='flag-5'>種</b><b class='flag-5'>聚</b><b class='flag-5'>類</b><b class='flag-5'>算法</b>和<b class='flag-5'>Python</b><b class='flag-5'>代碼</b>2

    10算法Python代碼3

    分享一篇關于的文章: **10算法
    的頭像 發表于 02-20 13:57 ?1142次閱讀
    <b class='flag-5'>10</b><b class='flag-5'>種</b><b class='flag-5'>聚</b><b class='flag-5'>類</b><b class='flag-5'>算法</b>和<b class='flag-5'>Python</b><b class='flag-5'>代碼</b>3

    10算法Python代碼4

    分享一篇關于的文章: **10算法
    的頭像 發表于 02-20 13:57 ?1305次閱讀
    <b class='flag-5'>10</b><b class='flag-5'>種</b><b class='flag-5'>聚</b><b class='flag-5'>類</b><b class='flag-5'>算法</b>和<b class='flag-5'>Python</b><b class='flag-5'>代碼</b>4

    如何在 Python 中安裝和使用頂級算法

    有許多算法可供選擇,對于所有情況,沒有單一的最佳算法。相反,最好探索一系列
    的頭像 發表于 05-22 09:13 ?596次閱讀
    如何在 <b class='flag-5'>Python</b> 中安裝和使用頂級<b class='flag-5'>聚</b><b class='flag-5'>類</b><b class='flag-5'>算法</b>
    主站蜘蛛池模板: www.黄网站| 手机看片日韩在线| 黄色综合| 男人呻吟双腿大开男男h互攻| 天堂网免费| 国产一级特黄a大片免费| 理论片午夜| 国产乱理论片在线观看理论| 天天干小说| 亚洲一区二区三| 三级免费黄色片| 中文在线免费看影视| 欧美ol丝袜高跟秘书在线观看| 亚洲第一毛片| 国产综合色在线视频区色吧图片| 男人的网址| 18美女扒开尿口无遮挡| 久久久国产精品网站| 就去色播| 亚洲天堂网站| 国产精品大尺度尺度视频| 边摸边吃奶边做视频叫床韩剧| 欲色视频| 国产女人18毛片水真多18精品 | 日韩午夜大片| 五月天婷亚洲| 欧美a∨| 久久精品视频国产| 国产chinesehd精品酒店| 五月婷婷丁香综合网| www.色午夜.com| 又粗又大又爽又色又过瘾视频| 女人色视频| 福利视频自拍偷拍| 色天使视频| 天天操天天拍| 亚洲国产精品综合久久久| fc2 ppv sss级素人美女| 亚洲欧洲第一页| 黄色毛片免费网站| 欧美色炮|