(2018第一篇随笔)
承接上个博客,这次来读sklearn的python代码说明以及源码
/*******************************************************代码说明*************************************************************/
class sklearn.discriminant_analysis.LinearDiscriminantAnalysis(solver='svd', shrinkage=None, priors=None, n_components=None, store_covariance=False, tol=0.0001)
-
类的参数
Solver:string,可选
有三种参数值:
'svd':奇异值分解(默认设置)。不计算协方差矩阵,推荐在数据维数较大时使用
'lsqr':最小平方解,可以进行shrinkage
'eigen':特征值分解,可以进行shrinkage
Shrinkage:string/float,可选
收缩参数,有三种可能:
None:不进行收缩(默认设置)
'auto':根据Ledoit-Wolf lemma自动选择收缩
0-1之间的浮点数:固定的收缩参数
(注意收缩只在'lsqr'和'eigen'时才有效)
Priors:array数组(大小为类别数),可选。类先验概率
n_components:整形,可选
维数约减的维数(<类别数-1)
Store_covariance:bool,可选
计算类协方差矩阵(默认为false),只用于'svd'的情况
Tol:浮点数,可选(默认1.0e-4)
秩估计的阈值在'svd'中
-
类的属性
Coef_:array数组,大小为(#features)或(#classes,#features)
(多个)权值向量
Intercept:array数组,大小(#features)
截距
Covariance_:array-like? 大小(#features*#features)
所有类的协方差矩阵
Explained_variance_ratio_:array数组,大小(n_components,)
每个选定components解释的方差比。若n_components未设定,那么所有的components组件被存储而且被解释的方差之和为1。只在'svd'or'eigen'时可用
Means_:arrray-like,大小(#类别,#特征)
类均值
Priors_:array-like,大小(#类别)
类的先验,和为1
Scalings_:array-like,大小(rank秩,类别数-1)
由类质心张成空间中特征的规模scaling?
(Scaling of the features in the space spanned by the class centroids.)
Xbar_:array-like,大小(#features)
所有样本的均值
Classes_:array-like,大小(#cl