机器学习算法之二:5分钟上手K-Means

1.案例:承袭KNN,这个数据依旧是用打斗次数和接吻次数来界定电影类型,接吻多的是Romance类型的,而打斗多的是动作电影。

2.问题:现在有一部名字未知的电影,打斗次数为18次,接吻次数为90次的电影,它到底属于哪种类型的电影呢?

3.Sampe code:

# -*- coding: utf-8 -*-
import numpy as np
from sklearn.cluster import KMeans
from sklearn.externals import joblib

#data对应着打斗次数和接吻次数
data = np.array([[3,104],[2,100],[1,81],[101,10],[99,5],[98,2]])

#参数说明:n_clusters代表想分几群,n_init代表设置选择质心种子次数,默认为10次,返回质心最好的一次结果。
#补充说明:因使用随机的初始值,因此每次执行的分群代表号会不一样。
clf = KMeans(n_clusters=2, n_init=10)
clf.fit(data)
print clf.labels_

#进行预测测试
test_data=np.array([[3,103], [102,5]])
print clf.fit_predict(test_data)

#储存模型
joblib.dump(clf, "2.kmeans_model.m")

#导入已储存的模型进行预测
clf1 = joblib.load("2.kmeans_model.m")
print clf1.fit_predict(test_data)


4.结果:

[0 0 0 1 1 1]
[0 1]
[1 0]
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值