【Transformer-GRU回归预测】Transformer-GRU多变量回归预测

导入所需库

from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import AdaBoostClassifier
from sklearn.metrics import accuracy_score
from sklearn.pipeline import make_pipeline
from sklearn.compose import ColumnTransformer
from sklearn.preprocessing import OneHotEncoder
from sklearn.compose import make_column_transformer
from sklearn.pipeline import make_pipeline
from sklearn.base import TransformerMixin
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.metrics import f1_score
from sklearn.model_selection import GridSearchCV
from sklearn.ensemble import AdaBoostClassifier
from sklearn.decomposition import PCA
import pandas as pd

读取数据集

data = pd.read_csv(‘your_dataset.csv’) # 替换为实际的数据集文件路径

提取特征和目标变量

X = data.drop(‘target_variable’, axis=1) # 替换为目标变量列名
y = data[‘target_variable’]

划分训练集和测试集

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

定义Transformer模型

class TransformerModel(TransformerMixin):
def fit(self, X, y=None):
return self

def transform(self, X):
    # 在此处定义你的特征转换方法
    transformed_X = X # 示例中假设不做特征转换,直接返回原始特征
    return transformed_X

定义ColumnTransformer

preprocessor = make_column_transformer(
(TransformerModel(), X.columns),
(OneHotEncoder(), [‘categorical_feature_1’, ‘categorical_feature_2’])
)

定义Transformer-Adaboost模型

model = make_pipeline(preprocessor, AdaBoostClassifier())

训练模型

model.fit(X_train, y_train)

在测试集上进行预测

y_pred = model.predict(X_test)

计算准确率和F1分数

accuracy = accuracy_score(y_test, y_pred)
f1 = f1_score(y_test, y_pred)

打印结果

print(“Accuracy:”, accuracy)
print(“F1 Score:”, f1)

你可能感兴趣的:(回归预测,transformer,gru,回归)