那个网站适合学生做兼职,优秀网页界面设计,网站建设目的确定,互联网公司排名全球一、回归分析
1.定义
分析自变量与因变量之间定量的因果关系#xff0c;根据已有的数据拟合出变量之间的关系。
2.回归和分类的区别和联系 3.线性模型 4.非线性模型 5.线性回归※
面对回归问题#xff0c;通常分三步解决
第一步#xff1a;选定使用的model#xff0c;…一、回归分析
1.定义
分析自变量与因变量之间定量的因果关系根据已有的数据拟合出变量之间的关系。
2.回归和分类的区别和联系 3.线性模型 4.非线性模型 5.线性回归※
面对回归问题通常分三步解决
第一步选定使用的model即确定函数模型是一次函数 还是二次函数甚至是更高的三次四次或者五次函数。
第二步确定模型的损失函数loss function。
均方误差损失函数MSE的公式如下 第三步采用梯度下降优化损失函数 (可以使用梯度下降的前提是损失函数可微分)。 二、多元回归与多项式回归
1.Sklearn的一元线性回归
在scikit-learn中所有的估计器都带有fit( )方法和predict( )方法
fit()用来拟合模型predict()利用拟合出来的模型对样本进行预测。
例如
from sklearn.linear_model import LinearRegression# 创建并拟合模型
model LinearRegression()
X [[6], [8], [10], [14], [18]]
y [[7], [9], [13], [17.5], [18]]
model.fit(X, y)# 预测12英寸披萨的价格
predict方法的输入应当是一个2D数组而不是一个单独的整数。
#例如predicted model.predict([[12], [16]])
#predicted_price_12 predicted[0][0] # 15.0
#predicted_price_16 predicted[1][0] # 20.0predicted_price model.predict([[12]])[0][0]
print(预测12英寸披萨价格: $%.2f % predicted_price)
2.多元线性回归
from sklearn.linear_model import LinearRegressionX [[6, 2], [8, 1], [10, 0], [14, 2], [18, 0]]
# 特征数据集包含两个特征披萨尺寸和其他因素例如配料数量
y [[7], [9], [13], [17.5], [18]]
# 目标数据集披萨价格model LinearRegression()
# 创建线性回归模型实例
model.fit(X, y)
# 使用特征数据X和目标数据y训练模型X_test [[8, 2], [9, 0], [11, 2], [16, 2], [12, 0]]
# 测试数据集包含待预测的披萨尺寸和其他因素
y_test [[11], [8.5], [15], [18], [11]]
# 测试目标数据集对应测试数据集的实际披萨价格predictions model.predict(X_test)
# 使用训练好的模型预测测试数据集的披萨价格for i, prediction in enumerate(predictions):# 遍历预测结果print(Predicted: %s, Target: %s % (prediction, y_test[i]))# 输出预测价格和实际目标价格print(R-squared: %.2f % model.score(X_test, y_test))
# 计算并输出模型在测试数据集上的R-squared值表示模型的拟合优度其中model.score(X_test, y_test)是在计算模型在 X_test 数据集上预测的 y_test 值与实际 y_test 值之间的拟合优度即R-squared 值决定系数它表示目标变量的方差有多少可以通过特征变量来解释。 3.多项式回归 三、损失函数的正则化 from sklearn.datasets import load_iris
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import GridSearchCV
from sklearn.metrics import accuracy_score# 加载数据集
data load_iris()
X, y data.data, data.target# 定义模型
model LogisticRegression(max_iter200)# 定义正则化参数的网格
param_grid {C: [0.01, 0.1, 1, 10, 100]
}# 使用 GridSearchCV 进行超参数搜索
grid_search GridSearchCV(model, param_grid, cv5, scoringaccuracy)
grid_search.fit(X, y)# 输出最佳参数和最佳分数
print(Best parameters found: , grid_search.best_params_)
print(Best cross-validation score: , grid_search.best_score_)# 使用最佳参数训练模型
best_model grid_search.best_estimator_
best_model.fit(X, y)# 预测并计算准确率
y_pred best_model.predict(X)
print(Training accuracy: , accuracy_score(y, y_pred))四、逻辑回归
逻辑回归可以被理解为是一个被logistic函数归一化后的线性回归也可以被视为一种广义线性模型。
1.逻辑回归中的损失函数优化方法