本文简要介绍python语言中 sklearn.discriminant_analysis.LinearDiscriminantAnalysis
的用法。
用法:
class sklearn.discriminant_analysis.LinearDiscriminantAnalysis(solver='svd', shrinkage=None, priors=None, n_components=None, store_covariance=False, tol=0.0001, covariance_estimator=None)
线性判别分析。
具有线性决策边界的分类器,通过将类条件密度拟合到数据并使用贝叶斯规则生成。
假设所有类共享相同的协方差矩阵,该模型将高斯密度拟合到每个类。
拟合模型还可用于通过使用
transform
方法将输入投影到最具辨别力的方向来降低输入的维数。在用户指南中阅读更多信息。
- solver:{‘svd’, ‘lsqr’, ‘eigen’},默认='svd'
- 使用的求解器,可能的值:
- ‘svd’:奇异值分解(默认)。不计算协方差矩阵,因此建议将此求解器用于具有大量特征的数据。
- ‘lsqr’:最小二乘解。可以与收缩或自定义协方差估计器结合使用。
- ‘eigen’:特征值分解。可以与收缩或自定义协方差估计器结合使用。
- shrinkage:‘auto’ 或浮点数,默认=无
- 收缩参数,可能的值:
- 无:无收缩(默认)。
- ‘auto’:使用Ledoit-Wolf 引理自动收缩。
- 在 0 和 1 之间浮点数:固定收缩参数。
如果使用
covariance_estimator
,则应将其保留为 None。请注意,收缩仅适用于 ‘lsqr’ 和 ‘eigen’ 解算器。- priors:形状类似数组 (n_classes,),默认=无
类先验概率。默认情况下,类比例是从训练数据中推断出来的。
- n_components:整数,默认=无
用于降维的组件数 (<= min(n_classes - 1, n_features))。如果没有,将设置为 min(n_classes - 1, n_features)。此参数仅影响
transform
方法。- store_covariance:布尔,默认=假
如果为 True,当求解器为 ‘svd’ 时,显式计算加权 within-class 协方差矩阵。总是为其他求解器计算和存储矩阵。
- tol:浮点数,默认=1.0e-4
X 的奇异值被视为显著的绝对阈值,用于估计 X 的等级。奇异值不显著的维度将被丢弃。仅在求解器为 ‘svd’ 时使用。
- covariance_estimator:协方差估计器,默认=无
如果不是 None,
covariance_estimator
用于估计协方差矩阵,而不是依赖经验协方差估计器(具有潜在的收缩)。该对象应该有一个 fit 方法和一个covariance_
属性,就像sklearn.covariance
中的估计器一样。如果 None 收缩参数驱动估计。如果使用
shrinkage
,则应将其保留为 None。请注意,covariance_estimator
仅适用于 ‘lsqr’ 和 ‘eigen’ 求解器。
- coef_:ndarray 形状 (n_features,) 或 (n_classes, n_features)
权重向量。
- intercept_:ndarray 形状 (n_classes,)
截取项。
- covariance_:形状类似数组 (n_features, n_features)
加权within-class协方差矩阵。它对应于
sum_k prior_k * C_k
其中C_k
是类k
中样本的协方差矩阵。C_k
是使用(可能缩小的)有偏的协方差估计量估计的。如果求解器为‘svd’,则仅在store_covariance
为 True 时存在。- explained_variance_ratio_:ndarray 形状 (n_components,)
每个选定组件解释的方差百分比。如果未设置
n_components
,则存储所有分量,解释方差之和等于 1.0。仅在使用 eigen 或 svd 求解器时可用。- means_:形状类似数组 (n_classes, n_features)
Class-wise 表示。
- priors_:形状类似数组 (n_classes,)
类先验(总和为 1)。
- scalings_:形状类似数组(等级,n_classes - 1)
类质心所跨越的空间中特征的缩放。仅适用于‘svd’ 和‘eigen’ 解算器。
- xbar_:形状类似数组 (n_features,)
总体平均。仅当求解器为 ‘svd’ 时才存在。
- classes_:形状类似数组 (n_classes,)
唯一的类标签。
- n_features_in_:int
拟合期间看到的特征数。
- feature_names_in_:ndarray 形状(
n_features_in_
,) 拟合期间看到的特征名称。仅当
X
具有全为字符串的函数名称时才定义。
参数:
属性:
例子:
>>> import numpy as np >>> from sklearn.discriminant_analysis import LinearDiscriminantAnalysis >>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]]) >>> y = np.array([1, 1, 1, 2, 2, 2]) >>> clf = LinearDiscriminantAnalysis() >>> clf.fit(X, y) LinearDiscriminantAnalysis() >>> print(clf.predict([[-0.8, -1]])) [1]
相关用法
- Python sklearn LinearRegression用法及代码示例
- Python sklearn LinearSVR用法及代码示例
- Python sklearn LinearSVC用法及代码示例
- Python sklearn LarsCV用法及代码示例
- Python sklearn Lars用法及代码示例
- Python sklearn LocalOutlierFactor.kneighbors_graph用法及代码示例
- Python sklearn LeavePOut用法及代码示例
- Python sklearn Lasso用法及代码示例
- Python sklearn LabelPropagation用法及代码示例
- Python sklearn LassoLars用法及代码示例
- Python sklearn LeaveOneOut用法及代码示例
- Python sklearn LogisticRegression用法及代码示例
- Python sklearn LassoLarsIC用法及代码示例
- Python sklearn LocallyLinearEmbedding用法及代码示例
- Python sklearn LedoitWolf用法及代码示例
- Python sklearn LassoCV.path用法及代码示例
- Python sklearn LogisticRegressionCV用法及代码示例
- Python sklearn LassoCV用法及代码示例
- Python sklearn LabelSpreading用法及代码示例
- Python sklearn LabelEncoder用法及代码示例
- Python sklearn LocalOutlierFactor.kneighbors用法及代码示例
- Python sklearn LabelBinarizer用法及代码示例
- Python sklearn LassoLarsCV用法及代码示例
- Python sklearn LatentDirichletAllocation用法及代码示例
- Python sklearn Lasso.path用法及代码示例
注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.discriminant_analysis.LinearDiscriminantAnalysis。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。