深度神經網絡——什么是 K 均值聚類?

K 均值聚類

K 均值聚類是 無監督學習在所有無監督學習算法中,K 均值聚類可能是使用最廣泛的,這要歸功于它的強大功能和簡單性。 K-means 聚類到底是如何工作的?

簡而言之,K 均值聚類的工作原理是 創建參考點(質心) 對于所需的班級數量,然后 將數據點分配給類簇 基于最接近的參考點。 雖然這是 K 均值聚類的快速定義,但讓我們花一些時間更深入地研究 K 均值聚類,并對其運行方式有一個更好的直觀了解。

定義聚類

在研究用于執行 K 均值聚類的確切算法之前,先來看看什么定義聚類:

集群只是項目組,而集群只是將項目放入這些組中。 從數據科學的意義上來說, 聚類算法 目標是做兩件事:

  • 確保集群中的所有數據點盡可能彼此相似。
  • 確保不同集群中的所有數據點盡可能彼此不同。

聚類算法根據某種相似性度量將項目分組在一起。 這通常是通過查找數據集中不同可能組的“質心”來完成的,盡管不完全如此。 有多種不同的聚類算法,但所有聚類算法的目標都是相同的,即確定數據集固有的組。

K均值聚類

K-Means 聚類是最古老和最常用的聚類算法之一,它的運行基于 向量量化。 選取空間中的一個點作為原點,然后從原點繪制到數據集中所有數據點的向量。

一般來說,K-means 聚類可以分為五個不同的步驟:

  • 將所有實例放入子集中,子集的數量等于 K。
  • 找到新創建的簇分區的平均點/質心。
  • 根據這些質心,將每個點分配給特定的簇。
  • 計算每個點到質心的距離,并將點分配給距質心距離最小的簇。
  • 將點分配給簇后,找到簇的新質心。

重復上述步驟直至訓練過程完成。

在初始階段,質心放置在數據點之間的某個位置。

或者,在放置質心之后,我們可以將 K 均值聚類視為在兩個不同階段之間來回交換:標記數據點和更新質心。

在第二步中,使用歐幾里德距離等距離度量來計算給定點最接近哪個質心,然后將這些點分配給該質心的類。
在數據點標記階段,每個數據點都被分配一個標簽,將其放置在屬于最近質心的簇中。 最近的質心通常使用平方歐幾里得距離來確定,盡管可以根據輸入聚類算法的數據類型使用其他距離度量,例如曼哈頓距離、余弦和杰卡德距離。

第三步,將質心移動到所有數據點的平均值。 然后重新分配班級。

在質心更新步驟中,通過查找當前包含在簇內的所有數據點之間的平均距離來計算質心。

如何選擇正確的“K”值

考慮到 K 均值聚類是一種無監督算法,并且事先不知道類的數量,那么如何確定適當的類數/正確的 K 值?

一種選擇正確 K 值的技術稱為“肘部技術”。 肘部技術包括對一系列不同的 K 值運行 K 均值聚類算法,并使用準確度度量(通常是誤差平方和)來確定哪些 K 值可提供最佳結果。 誤差平方和是通過計算簇的質心與該簇中的數據點之間的平均距離來確定的。

術語“肘形技術”來自這樣一個事實:當您針對不同的 K 值繪制 SSE 時,所得線圖通常會具有“肘形”形狀,其中 SSE 對于 K 的前幾個值快速下降,但隨后趨于平穩。 在這種情況下,位于彎頭處的 K 值是 K 的最佳值,因為在該值之后收益會迅速遞減。

小批量 K 均值聚類

隨著數據集變大,計算時間也會增加。 在大規模數據集上運行時,基本 K 均值聚類可能需要很長時間才能完成,因此,對 K 均值聚類進行了調整,以降低算法的空間和時間成本。

小批量 K 均值聚類 是 K 均值聚類的變體 其中所考慮的數據集的大小是有上限的。 普通 K 均值聚類同時對整個數據集/批次進行操作,而小批量 K 均值聚類 將數據集分解為子集。 小批量是從整個數據集中隨機采樣的,對于每次新的迭代,都會選擇一個新的隨機樣本并用于更新質心的位置。

在小批量 K 均值聚類中,聚類是通過小批量值和學習率的組合來更新的。 學習率隨著迭代而降低,它是放置在特定簇中的數據點數量的倒數。 降低學習率的效果是,在經過多次迭代后,簇沒有變化時,新數據的影響減少,達到收斂。

關于小批量 K 均值聚類有效性的研究結果表明,它可以成功地減少計算時間,同時稍微權衡聚類質量。

K-Means 聚類的應用

K 均值聚類可以安全地用于數據點可以分為不同組/類的任何情況。 以下是 K 均值聚類的一些常見用例示例。

K-means 聚類可應用于文檔分類,根據主題、標簽、單詞用法、元數據和其他文檔特征等特征對文檔進行分組。 它還可用于根據帖子和評論等活動模式將用戶分類為機器人或非機器人。 K 均值聚類還可用于根據監測健康狀況時的關注程度、合并癥、年齡、患者病史等特征將人們分組。

K 均值聚類還可以用于更多開放式任務,例如創建推薦系統。 Netflix 等系統的用戶可以根據觀看模式進行分組,并推薦相似的內容。 K 均值聚類可用于異常檢測任務,突出顯示潛在的欺詐或缺陷商品實例。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/15020.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/15020.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/15020.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Halcon 極坐標轉換圖像

一、概述 先看效果 將圓形的用極坐標轉換成矩性然后再進行識別或者其他缺陷檢測,最后在還圓到原圖中 二、原理: halcon 圓環類缺陷檢測的一種方法(極坐標變換法)_halcon缺口檢測-CSDN博客 圖像極坐標變換與反變換(…

吳恩達深度學習筆記:超 參 數 調 試 、 Batch 正 則 化 和 程 序 框 架(Hyperparameter tuning)3.4-3.5

目錄 第二門課: 改善深層神經網絡:超參數調試、正 則 化 以 及 優 化 (Improving Deep Neural Networks:Hyperparameter tuning, Regularization and Optimization)第三周: 超 參 數 調 試 、 Batch 正 則 化 和 程 序 框 架(Hyperparameter …

Spark SQL【Java API】

前言 之前對 Spark SQL 的影響一直停留在 DSL 語法上面,感覺可以用 SQL 表達的,沒有必要用 Java/Scala 去寫,但是面試一段時間后,發現不少公司還是在用 SparkSQL 的,京東也在使用 Spark On Hive 而不是我以為的 Hive O…

ubuntu20.04 開機自動掛載外加硬盤

文章目錄 一、問題描述二、操作1. 查找新添盤符2. 格式化硬盤文件系統3. 掛載硬盤4. 開機自動掛載5. 取消掛載6. 查看掛載的硬盤信息 一、問題描述 因電腦使用一段時間后自身硬盤不足,需外加硬盤使得電腦自動識別加載。 二、操作 1. 查找新添盤符 sudo blkid自己…

Linux基礎命令詳解

Linux基礎命令詳解 1. ls 解釋:列出目錄內容用法:ls [選項] [文件名]示例:ls -l(以長格式顯示文件信息) 2. cd 解釋:更改目錄用法:cd [目錄名]示例:cd /home(切換到/…

# 全面解剖 消息中間件 RocketMQ-(3)

全面解剖 消息中間件 RocketMQ-(3) 一、RocketMQ – mqadmin 命令介紹 1、mqadmin 管理工具 使用方式 進入 RocketMQ 安裝位置,在 bin 目錄下執行 ./mqadmin {command} {args} # 進入 RocketMQ 安裝目錄的 bin 目錄下: cd /usr…

免費、開源、好用的 SQL 客戶端合集

免費、開源、好用的 SQL 客戶端合集 分類 編程技術 0、SQL Chat SQL Chat 是 2023 年 3 月推出的新型 SQL 客戶端,它將數據庫管理帶入了基于聊天的新時代。 SQL Chat 由 ChatGPT 驅動,能夠幫你編寫和潤色 SQL 語句,讓數據庫操作變得更加智…

微信小程序開發環境的搭建

一、注冊微信小程序賬號 二、安裝微信開發者工具 1.下載微信開發者工具。 官網下載地址:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/downloads.html 2、選擇穩定版Window64下載安裝 3、下載完畢后,點擊下一步安裝 三、使用微信開發者工具…

SQLite查詢優化

文章目錄 1. 引言2. WHERE子句分析2.1. 索引項使用示例 3. BETWEEN優化4. OR優化4.1. 將OR連接的約束轉換為IN運算符4.2. 分別評估OR約束并取結果的并集 5. LIKE優化6. 跳躍掃描優化7. 連接7.1. 手動控制連接順序7.1.1. 使用 SQLITE_STAT 表手動控制查詢計劃 1. 引言 給定一個…

C# 特性(Attribute)超詳細教程

文章目錄 0.前篇1.特性概念2.特性的聲明和使用2.1 特性定義語法2.2 特性目標 3.預定義特性3.1 AttributeUsage3.2 Conditional3.3 其它預定義特性 4.MyAttributeHelper(特性使用幫助類)5.特性應用5.1 添加說明信息并獲取5.2 數據驗證 0.前篇 學習本文前…

聊聊Python中的文件讀寫操作

Python 中的文件讀寫操作是數據處理和存儲的基本操作之一。下面,我將詳細解釋如何在 Python 中進行文件的讀寫操作。 1. 打開文件 在 Python 中,使用 open() 函數來打開文件。這個函數需要至少一個參數,即文件名,并且返回一個文件…

數據結構和組成

數據結構組成 數據項:一個數據元素可以由若干數據項組成。 數據對象:有相同性質的數據元素的集合,是數據的子集。 數據結構:是相互之間存在一種或多種特定關系的數據元素的集合。 邏輯結構 數據對象中數據元素之間的相互關系 eg: …

深入理解python列表遍歷:兩種方法詳解與實例

新書上架~👇全國包郵奧~ python實用小工具開發教程http://pythontoolsteach.com/3 歡迎關注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目錄 一、引言 二、使用索引遍歷列表 三、直接使用元素遍歷列表 四、總結 一、引言 在編程過程…

創建python字典的兩種方法:直觀與函數式

新書上架~👇全國包郵奧~ python實用小工具開發教程http://pythontoolsteach.com/3 歡迎關注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目錄 一、直觀創建法:直接定義鍵值對 二、函數式創建法:使用內置函數dict…

CSRF 攻擊

概述 CSRF(Cross-site request forgery,跨站請求偽造)。 它是指攻擊者利用了用戶的身份信息,執行了用戶非本意的操作。 它首先引導用戶訪問一個危險網站,當用戶訪問網站后,網站會發送請求到被攻擊的站點,這次請求會攜帶用戶的c…

拼多多攜手中國農業大學,投建陜西佛坪山茱萸科技小院

5月16日下午,中國農業大學陜西佛坪山茱萸科技小院在佛坪縣銀廠溝村揭牌。佛坪縣素有“中國山茱萸之鄉”的美譽,是全國山茱萸三大基地之一,當地山茱萸是國家地理標志產品,山茱萸肉產量位居全國第二。 為充分發揮佛坪縣得天獨厚的山…

vscode快捷鍵mac快捷鍵

vscode快捷鍵 在 Visual Studio Code 中,可以使用「Ctrl D」快捷鍵來選中相同內容。還可以使用以下快捷鍵來操作: 向上/下選擇相同內容 Alt ↑/↓ 選擇所有相同內容 Ctrl Shift L mac中則是commandshiftL VSCode刪除整行快捷鍵 CtrlShiftK mac中則…

局部放電試驗變頻電源

局部放電試驗中的變頻電源設備 局部放電試驗變頻電源是一種專為電力設備的局部放電檢測設計的高性能電源系統。在電力設備的運行和維護過程中,局部放電測試用于探測潛在的絕緣缺陷,防止它們進一步惡化導致設備損壞。傳統的局部放電試驗通常使用交流電源&…

with關鍵字

在 Python 中,with 是一個關鍵字,用于引入一個上下文管理器(context manager)。上下文管理器是一種特殊的對象,它允許你以一種干凈、結構化的方式執行一組特定的操作,通常包括設置和清理資源。 with 語句通…

jmeter之測試計劃

一、測試計劃作用 測試計劃是jmeter的默認控件所有線程組都是測試計劃的下級控件測試計劃可以配置用戶自定義的變量測試計劃可以配置線程組的串行或并行 二、查看界面 名稱:可以修改自定義的名稱注釋:解釋測試計劃是用來做什么的用戶自定義的變量&…