机器学习——算法基础(逻辑回归分析,K-means)
分类算法-逻辑回归
什么是逻辑回归
逻辑回归:线性回归的式子作为输入 ,解决二分类问题。
输入:ℎ(𝑤)= 𝑤_0+〖𝑤_1 𝑥〗_1+𝑤_2 𝑥_2+…
= 𝑤^𝑇 𝑥
(单个样本)
逻辑回归的损失函数、优化
与线性回归原理相同,但由于是分类问题,
损失函数不一样,只能通过梯度下降求解
梯度下降求解:
- 多次随机初始化,多次比较最小值结果
- 求解过程中,调整学习率
尽管没有全局最低点,但是效果还是不错的
sklearn逻辑回归API
sklearn.linear_model.LogisticRegression
LogisticRegression总结
应用:广告点击率预测、电商购物搭配推荐
优点:适合需要得到一个分类概率的场景
缺点:当特征空间很大时,逻辑回归的性能不是很好(看硬件能力)
K-means
k-means步骤
1、随机设置K个特征空间内的点作为初始的聚类中心
2、对于其他每个点计算到K个中心的距离,未知的点选择最近的一个聚类
中心点作为标记类别
3、接着对着标记的聚类中心之后,重新计算出每个聚类的新中心点(平
均值)
4、如果计算得出的新中心点与原中心点一样,那么结束,否则重新进行
第二步过程
k-means API
sklearn.cluster.KMeans
k-means 性能评估
轮廓系数:对于每一个样本
- 计算蓝1到自身类别的点距离的平均值a_i
- 计算蓝1分别到粉色,绿色类别所有的点的距离,求出平均值b1,b2,取其中最小的值当做b_i
根据公式可以计算出蓝1的轮廓系数
如果〖𝑠𝑐〗_𝑖 小于0,说明𝑎_𝑖 的平均距离大于最近的其他簇。聚类效果不好
如果〖𝑠𝑐〗_𝑖 越大,说明𝑎_𝑖 的平均距离小于最近的其他簇。聚类效果好
轮廓系数的值是介于 [-1,1] ,越趋近于1代表内聚度和分离度都相对较优
Kmeans性能评估指标API
sklearn.metrics.silhouette_score
Kmeans总结
特点分析:
采用迭代式算法,直观易懂并且非常实用
缺点:容易收敛到局部最优解(多次聚类)
需要预先设定簇的数量(k-means++解决)