逻辑回归分类器#
逻辑回归分类器。
模块内容#
类摘要#
逻辑回归分类器。 |
目录#
- class evalml.pipelines.components.estimators.classifiers.logistic_regression_classifier.LogisticRegressionClassifier(penalty='l2', C=1.0, multi_class='auto', solver='lbfgs', n_jobs=-1, random_seed=0, **kwargs)[source]#
逻辑回归分类器。
- 参数
penalty ({"l1", "l2", "elasticnet", "none"}) – 用于惩罚的范数。默认为“l2”。
C (float) – 正则化强度的倒数。必须是正浮点数。默认为 1.0。
multi_class ({"auto", "ovr", "multinomial"}) – 如果选择“ovr”选项,则为每个标签拟合一个二元问题。对于“multinomial”,最小化的损失是跨整个概率分布拟合的多项式损失,即使数据是二元的。“multinomial”在 solver=”liblinear” 时不可用。“auto”会在数据为二元或 solver=”liblinear” 时选择“ovr”,否则选择“multinomial”。默认为“auto”。
solver ({"newton-cg", "lbfgs", "liblinear", "sag", "saga"}) –
优化问题中使用的算法。对于小型数据集,“liblinear”是一个不错的选择,而“sag”和“saga”对于大型数据集更快。对于多类别问题,只有“newton-cg”、“sag”、“saga”和“lbfgs”处理多项式损失;“liblinear”仅限于一对多方案。
“newton-cg”、“lbfgs”、“sag”和“saga”处理 L2 或无惩罚
“liblinear”和“saga”也处理 L1 惩罚
“saga”也支持“elasticnet”惩罚
“liblinear”不支持设置 penalty=’none’
默认为“lbfgs”。
n_jobs (int) – 用于运行逻辑回归的并行线程数。请注意,创建线程竞争会显著减慢算法速度。默认为 -1。
random_seed (int) – 随机数生成器的种子。默认为 0。
属性
hyperparameter_ranges
{ “penalty”: [“l2”], “C”: Real(0.01, 10),}
model_family
ModelFamily.LINEAR_MODEL
modifies_features
True
modifies_target
False
name
逻辑回归分类器
supported_problem_types
[ ProblemTypes.BINARY, ProblemTypes.MULTICLASS, ProblemTypes.TIME_SERIES_BINARY, ProblemTypes.TIME_SERIES_MULTICLASS,]
training_only
False
方法
构造一个具有相同参数和随机状态的新组件。
返回此组件的默认参数。
描述一个组件及其参数。
拟合的逻辑回归分类器的特征重要性。
将估计器拟合到数据。
使用拟合的回归器查找预测区间。
从文件路径加载组件。
返回布尔值,确定组件在调用 predict、predict_proba、transform 或 feature_importances 之前是否需要拟合。
返回用于初始化组件的参数。
使用选定的特征进行预测。
对标签进行概率估计。
将组件保存到文件路径。
更新组件的参数字典。
- clone(self)#
构造一个具有相同参数和随机状态的新组件。
- 返回
此组件的一个新实例,具有相同的参数和随机状态。
- default_parameters(cls)#
返回此组件的默认参数。
我们的约定是 Component.default_parameters == Component().parameters。
- 返回
此组件的默认参数。
- 返回类型
dict
- describe(self, print_name=False, return_dict=False)#
描述一个组件及其参数。
- 参数
print_name (bool, optional) – 是否打印组件名称
return_dict (bool, optional) – 是否以 {“name”: name, “parameters”: parameters} 的字典格式返回描述
- 返回
如果 return_dict 为 True,则返回字典,否则返回 None。
- 返回类型
None 或 dict
- property feature_importance(self)#
拟合的逻辑回归分类器的特征重要性。
- fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#
将估计器拟合到数据。
- 参数
X (pd.DataFrame) – 输入训练数据,形状为 [n_samples, n_features]。
y (pd.Series, optional) – 目标训练数据,长度为 [n_samples]。
- 返回
self
- get_prediction_intervals(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None, coverage: List[float] =None, predictions: pandas.Series =None) Dict[str, pandas.Series] #
使用拟合的回归器查找预测区间。
此函数使用拟合的估计器的预测值,并使用窗口大小为 5 计算所有预测值的滚动标准差。较低和较高的预测值通过将每个边界处下尾概率的百分点(分位数)函数乘以滚动标准差来确定。
- 参数
X (pd.DataFrame) – 数据,形状为 [n_samples, n_features]。
y (pd.Series) – 目标数据。忽略。
coverage (list[float]) – 一个包含介于 0 和 1 之间的浮点数的列表,用于计算预测区间的上下边界。
predictions (pd.Series) – 可选的预测列表。如果为 None,则使用 X 生成预测。
- 返回
预测区间,键的格式为 {coverage}_lower 或 {coverage}_upper。
- 返回类型
dict
- 抛出
MethodPropertyNotFoundError – 如果估计器不支持时间序列回归作为问题类型。
- static load(file_path)#
从文件路径加载组件。
- 参数
file_path (str) – 加载文件的位置。
- 返回
ComponentBase 对象
- needs_fitting(self)#
返回布尔值,确定组件在调用 predict、predict_proba、transform 或 feature_importances 之前是否需要拟合。
对于不需要拟合或其拟合方法不执行任何操作的组件,可以将其覆盖为 False。
- 返回
True。
- property parameters(self)#
返回用于初始化组件的参数。
- predict(self, X: pandas.DataFrame) pandas.Series #
使用选定的特征进行预测。
- 参数
X (pd.DataFrame) – 数据,形状为 [n_samples, n_features]。
- 返回
预测值。
- 返回类型
pd.Series
- 抛出
MethodPropertyNotFoundError – 如果估计器没有 predict 方法或实现 predict 的 component_obj。
- predict_proba(self, X: pandas.DataFrame) pandas.Series #
对标签进行概率估计。
- 参数
X (pd.DataFrame) – 特征。
- 返回
概率估计。
- 返回类型
pd.Series
- 抛出
MethodPropertyNotFoundError – 如果估计器没有 predict_proba 方法或实现 predict_proba 的 component_obj。
- save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL)#
将组件保存到文件路径。
- 参数
file_path (str) – 保存文件的位置。
pickle_protocol (int) – pickle 数据流格式。
- update_parameters(self, update_dict, reset_fit=True)#
更新组件的参数字典。
- 参数
update_dict (dict) – 要更新的参数字典。
reset_fit (bool, optional) – 如果为 True,将设置 _is_fitted 为 False。