慕课学习笔记——1机器学习(无监督学习)

无监督学习
1. 导学部分
在这里插入图片描述
在这里插入图片描述**tips:**使用聚类要计算距离
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
tips:使用马氏距离,中心到红点的距离大于中心到绿点的距离(这里不太明白)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
**tips:**使用了三种算法:dbscan函数(最快);近邻传播算法(最慢);谱聚类算法

在这里插入图片描述
在这里插入图片描述
常用聚类算法
在这里插入图片描述
降维
用于提高运算性能
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
常用降维算法
在这里插入图片描述
在这里插入图片描述
**思考:**上述问题哪些是聚类,哪些是降维问题?
降维:4
聚类:123

2. 聚类算法
2.1 K-means算法
在这里插入图片描述
在这里插入图片描述
**Tips:**选取距离各点最近的中心点,由此分为两组,反复评估中心距离各点的距离
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
聚成4类时明显可以看到消费层级分得比较好了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
自己练习的代码

#了解1999年各个省份的消费水平在国内的情况
#Kmeans算法-具体可以通过help(Kmeans)手册查询

import numpy as np 
from sklearn.cluster import KMeans

#一个获取数据的函数
def loadData(filePath):
    #r+读写模式
    fr = open(filePath,'r+')   
    #一次读取全文
    lines = fr.readlines()     
    retData = []     
    retCityName = []   
    #for循环内部用于处理单行数据,循环次数lines(31)次
    for line in lines:  
        #删除作为间隔的逗号
        items = line.strip().split(",") 
        #用于储存城市名称,位于第一列        
        retCityName.append(items[0]) 
        #用于储存城市的各项消费信息
        #for循环单行内的每个元素
        #[float(items[i])这是什么意思?        
        retData.append([float(items[i]) for i in range(1,len(items))])     
    return retData,retCityName 
     
if __name__ == '__main__': 
    #载入数据 
    #loadData是上面创建的函数
    #因为是二维列表,所以赋值符前需要有两个变
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值