金融机器学习方法:K-均值算法

目录

1.算法介绍

2.算法原理

3.python实现示例


1.算法介绍

K均值聚类算法是机器学习和数据分析中常用的无监督学习方法之一,主要用于数据的分类。它的目标是将数据划分为几个独特的、互不重叠的子集或"集群",以使得同一集群内的数据点彼此相似,而不同集群的数据点则尽可能不同。

2.算法原理

  1. 选择K个初始质心,这些质心可以是随机选取的数据点或其他方法得到的。
  2. 根据每个数据点到质心的距离,将其分配给最近的质心,形成K个集群。
  3. 重新计算每个集群的质心。
  4. 重复上述步骤,直到质心不再发生变化或达到一定的迭代次数

3.python实现示例

python 复制代码
import numpy as np
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt

# 随机生成数据
np.random.seed(0)
points = np.vstack([
    np.random.normal(0, 0.5, size=(100, 2)),
    np.random.normal(1, 0.25, size=(100, 2)),
    np.random.normal(2, 0.6, size=(100, 2))
])

# 使用KMeans进行聚类
kmeans = KMeans(n_clusters=3)
kmeans.fit(points)
labels = kmeans.predict(points)
centroids = kmeans.cluster_centers_

# 可视化结果
plt.scatter(points[:, 0], points[:, 1], c=labels)
plt.scatter(centroids[:, 0], centroids[:, 1], color='red', marker='X')
plt.show()

结果图:


相关推荐
秋难降13 分钟前
Python 知识点详解(三)
python·编程语言
chao_7891 小时前
二分查找篇——寻找旋转排序数组中的最小值【LeetCode】
python·线性代数·算法·leetcode·矩阵
金玉满堂@bj1 小时前
PyCharm 中 Python 解释器的添加选项及作用
ide·python·pycharm
程序员三藏1 小时前
如何使用Pytest进行测试?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·pytest
随心点儿2 小时前
使用python 将多个docx文件合并为一个word
开发语言·python·多个word合并为一个
不学无术の码农2 小时前
《Effective Python》第十三章 测试与调试——使用 Mock 测试具有复杂依赖的代码
开发语言·python
sleepybear11132 小时前
在Ubuntu上从零开始编译并运行Home Assistant源码并集成HACS与小米开源的Ha Xiaomi Home
python·智能家居·小米·home assistant·米家·ha xiaomi home
纪伊路上盛名在2 小时前
(鱼书)深度学习入门1:python入门
人工智能·python·深度学习
夏末蝉未鸣012 小时前
python transformers笔记(TrainingArguments类)
python·自然语言处理·transformer
德育处主任Pro2 小时前
「py数据分析」04如何将 Python 爬取的数据保存为 CSV 文件
数据库·python·数据分析