AI制胜:机器学习极简入门_宋立桓_AZW3_MOBI_EPUB_PDF_电子书(无页码)_宋立桓

内容节选

6.6K-means算法实现客户价值分析 公司的客户只是具有某些特征,没有具体的分类标准,那么可以直接根据特征进行聚类,得出聚类结果后再分析研究这些类别的真实含义,目的是找出最有价值和重要的客户。 假设初始时存在部分客户的数据,如图6-10所示,包含客户年龄、平均每次消费金额、平均消费周期等数据。现需要对上述客户进行聚类,以帮助公司快速区别出普通客户、VIP客户和超级VIP客户。在有其他历史数据的情况下,可以将这些用户的特征和客户类型建立起映射关系,通过机器学习训练便可以得到未知的客户类型。但在没有历史数据的情况下,这就是典型的聚类问题。 图6-10 接下来使用K-Means算法来解决公司客户价值自动划分的问题。在Python中实现K-means算法其实是相对容易的。首先加载客户数据文件company.csv,从中读取客户数据,然后导入K-means模型,这里设置聚类成3类,然后将聚类结果通过图像来分析。但当聚类有多个特征值时,绘图分析会有一定的难度,例如在本例中有3个特征值,在作图时就需要将特征值两两组合,对年龄-消费金额图、消费周期-消费金额图、年龄-消费周期分别进行分析。 范例程序代码如下:import pandas as pdimport numpy as npyimport matplotlib.pylab as pyl# 忽略警告 import warnings warnings.filterwarnings("ignore") dataf = pd.read_csv('company.csv', encoding='utf-8') x = dataf[['平均消费周期(天)', '平均每次消费金额']].values # 导入聚类分析工具KMeans from sklearn.cluster import KMeans # 传入要分类的数目 kms = KMeans(n_clusters=3) y = kms.fit_predict(x) print(y) # 做图:年龄-消费金额图,消费时间-消费金额图,年龄-消费时间图 for i in range(0,len(y)): if(y[i]==0): print(str(i)+"大众客户") pyl.subplot(2,3,1) # 年龄-消费金额图 pyl.xlabel('age') pyl.ylabel('amount') pyl.plot(dataf.iloc[i:i+1,0:1].values,dataf.iloc[i:i+1,1:2].values,"*r") pyl.subplot(2,3,2) # 消费时间-消费金额图 pyl.xlabel('period') pyl.ylabel('amount') pyl.plot(dataf.iloc[i:i+1,2:3].values,dataf.iloc[i:i+1,1:2].values,"*r") pyl.subplot(2,3,3) # 年龄-消费时间图 pyl.xlabel('age') pyl.ylabel('period') pyl.plot(dataf.iloc[i:i+1,0:1].values,dataf.iloc[i:i+1,2:3].values,"*r") elif(y[i]==1): print(str(i)+"超级VIP客户") pyl.subplot(2,3,1) pyl.xlabel('age') pyl.ylabel('amount') # 年龄-消费金额图 pyl.plot(dataf.iloc[i:i+1,0:1].values,dataf.iloc[i:i+1,1:2].values,"sy") pyl.subplot(2,3,2) pyl.xlabel('period') pyl.ylabel('amount') # 消费时间-消费金额图 pyl.plot(dataf.iloc[i:i+1,2:3].values,dataf.iloc[i:i+1,1:2].values,"sy") pyl.subplot(2,3,3) # 年龄-消费时间图 pyl.xlabel('age') pyl.ylabel('period') pyl.plot(dataf.iloc[i:i+1,0:1].values,dataf.iloc[i:i+1,2:3].values,"sy") elif(y[i]==2): print(str(i)+"VIP 客户") pyl.subplot(2,3,1) # 年龄-消费金额图 pyl.xlabel('age') pyl.ylabel('amount') pyl.plot(dataf.iloc[i:i+1,0:1].values,dataf.iloc......

  1. 信息
  2. 内容简介
  3. 推荐序一
  4. 推荐序二
  5. 前言
  6. 第1章 机器学习概述
  7. 1.1 什么是机器学习
  8. 1.2 机器学习的流程
  9. 1.3 机器学习该如何学
  10. 1.4 机器学习分类
  11. 1.5 过拟合和欠拟合
  12. 1.6 衡量机器学习模型的指标
  13. 第2章 机器学习中的数据预处理
  14. 2.1 数据预处理的重要性和原则
  15. 2.2 数据预处理方法介绍
  16. 2.3 数据降维
  17. 第3章 k最近邻算法
  18. 3.1 k最近邻算法的原理
  19. 3.2 k最近邻算法过程详解
  20. 3.3 kNN算法的注意事项
  21. 3.4 k最近邻算法案例分享
  22. 3.5 kNN算法优缺点
  23. 第4章 回归算法
  24. 4.1 线性回归
  25. 4.2 线性回归案例实战
  26. 4.3 逻辑回归
  27. 4.4 回归算法总结和优缺点
  28. 第5章 决策树
  29. 5.1 决策树概念
  30. 5.2 信息熵
  31. 5.3 信息增益与信息增益比
  32. 5.4 基尼系数
  33. 5.5 过拟合与剪枝
  34. 5.6 决策树算法案例实战——预测患者佩戴隐形眼镜类型
  35. 5.7 决策树算法实战案例——电影喜好预测
  36. 5.8 总结
  37. 第6章 K-means聚类算法
  38. 6.1 何为聚类
  39. 6.2 K-means算法思想和原理
  40. 6.3 K-means算法涉及的参数和优缺点
  41. 6.4 K-means应用场景
  42. 6.5 K-means聚类算法实现鸢尾花数据的聚类
  43. 6.6 K-means算法实现客户价值分析
  44. 6.7 K-means算法实现对亚洲足球队做聚类
  45. 第7章 随机森林
  46. 7.1 随机森林概述
  47. 7.2 随机森林实战——红酒数据集案例
  48. 7.3 随机森林算法实战——泰坦尼克号生存预测
  49. 第8章 朴素贝叶斯算法
  50. 8.1 朴素贝叶斯算法概念和原理
  51. 8.2 贝叶斯算法实战案例——曲奇饼
  52. 8.3 贝叶斯算法案例实战——单词拼写纠错
  53. 8.4 贝叶斯算法案例实战——识别中文垃圾邮件
  54. 8.5 贝叶斯算法案例实战——鸢尾花分类预测
  55. 第9章 支持向量机SVM
  56. 9.1 支持向量机概述
  57. 9.2 工作原理
  58. 9.3 SVM的核函数选择和参数的调整
  59. 9.4 SVM算法案例实战——波士顿房价分析
  60. 9.5 SVM算法案例实战——鸢尾花分类
  61. 9.6 SVM算法优缺点
  62. 第10章 神经网络
  63. 10.1 神经网络概念
  64. 10.2 卷积神经网络(CNN)
  65. 10.3 用Python实现自己的神经网络案例
  66. 10.4 多层神经网络基于sklearn的实现案例
  67. 10.5 使用Keras框架实现神经网络案例
  68. 第11章 人脸识别入门实践
  69. 11.1 人脸识别简介
  70. 11.2 人脸检测和关键点定位实战
  71. 11.3 人脸表情分析——情绪识别实战
  72. 11.4 我能认识你——人脸识别实战