sklearn算法库的顶层设计
sklearn监督学习的各个模块
- neighbors近邻算法,svm支持向量机,kernal_ridge核岭回归,discriminant_analysis判别分析,linear_model广义线性模型
- ensemble集成方法,tree决策树,native_bayes朴素贝叶斯,cross_decomposition交叉分解,gaussian_process高斯过程
- neural_network多层神经网络,calibration概率校准,isotonk保序回归,feature_selection监督特征选择,multiclass多类多标签算法
sklearn无监督学习模块
- decomposition矩阵因子分解,cluster聚类分析,manifold流形学习,mixture高斯混合模型
- neural_network无监督神经网络,density密度估计,covariance协方差估计
sklearn数据变换模型
- feature_extraction特征抽取,feature_selection 特征选择,preprocessing数据预处理
- random_projection随机投影,kernel_approximation核逼近,pipline管道流
下面是一个sklearn的基本的类的内容,任何一个sklearn中实现的算法都会使用下边的一个或多个类
下面以svm为例,查看这个类中继承的类,可以在sklearn源码中查看,即可以通过查看函数six.with_metaclass()中的参数得到,例如BaseSvm的该函数的参数是ABCMeta,BaseLibSVM,ClassifierMixin,同过这个函数的参数,可以构建下图所示的图:
下图中还列出了聚类算法和特征转化算法的网络继承图