常用算法原理
分类算法
knn:
原理:当预测一个新的值x的时候,根据它邻近的k个点的类别来判断x属于哪个类别,有监督学习
优点:1)模型训练时间快;2)预测效果好;3)对异常值不敏感;4)适用于多分类问题
缺点:1)对测试样本计算大,占用内存较大,可解释性差,无法给出决策树那样的规则
k-means:
原理:无监督学习,自动将相似的类归到一类(最小的组内距离和最大的组间距离)
优点:1)收敛速度较快,实现容易;2)聚类效果好;3)算法可解释效果强
缺点:1)k值选取不好把握;2)对异常值比较敏感;3)隐藏类数据不均衡或者方差不均会导致聚类效果不佳;4)容易陷入局部最优
logistic(逻辑回归):
原理:主要解决二分类问题,研究某些事件发生的概率
优点:1)速度快适合二分类问题;2)可以直接看到各个特征的权重;3)能更容易更新模型,吸收新的数据
缺点:对数据和适用场景局限性,不如决策树那么灵活
决策树:
原理:决策树是一个树形结构,每个非叶节点表示一个特征属性上的测试,每个分支代表这个特征属性在某个值上的输出,每个叶节点存放一个类别
算法:ID3:特征选择采用信息增益,选取信息增益最大作为最优特征
C4.5 特征选取信息增益,后加剪枝的过程
随机森林:
朴素贝叶斯:
svm(支持向量机):
XGboost:
回归
普通线性回归:
ridge(岭回归):
lasso回归:
特征选择