import pandas
import pandas as pd
test = pd.read_excel('预测数据.xlsx')
train=pd.read_excel('模型数据.xlsx')
# 2.划分特征变量与目标变量
X = train.drop(columns='是否稳定')
y = train['是否稳定']
# 3.划分数据集与测试集
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, train_size=0.3)
# 4.模型搭建
from sklearn.linear_model import LogisticRegression, LogisticRegressionCV
model = LogisticRegressionCV(multi_class='multinomial',max_iter=3000).fit(X_train, y_train)
model.fit(X_train, y_train)
# 5.预测分类结果
y_pred = model.predict(X_test)
y_pred_proba = model.predict_proba(X_test)
# 7.模型准确率
from sklearn.metrics import accuracy_score
accuracy = accuracy_score(y_pred, y_test)
print(accuracy)
print(y_pred)
train、test全部做训练集data训练出模型?那没有test怎么训练出模型?每次data前向传播到输出层,那没有测试集怎么计算loss与cost,然后怎么反向传播去梯度下降调整网络参数?既然网络参数都无法调整了怎么出来最后的模型?不理解。
该回答引用ChatGPT
在python中实现预测
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error
# 读取数据
df = pd.read_csv("data.csv")
# 划分数据为训练集和预测集
train_df, predict_df = train_test_split(df, test_size=0.2, random_state=0)
# 分离训练集的特征和标签
train_x = train_df.drop("target", axis=1)
train_y = train_df["target"]
# 训练模型
model = RandomForestRegressor(n_estimators=100, random_state=0)
model.fit(train_x, train_y)
# 利用训练好的模型预测
predict_x = predict_df.drop("target", axis=1)
predict_y = predict_df["target"]
predictions = model.predict(predict_x)
# 计算预测误差
mse = mean_squared_error(predict_y, predictions)
print("预测误差:", mse)
如果您想使用模型预测预测数据,可以在上面的代码中添加以下代码:
# 读取预测数据
pred_data = pd.read_csv("pred_data.csv")
# 预测
predictions = model.predict(pred_data)
问题 是什么?
你把内容和报错发给我看一下