RasoulSahibzadah's picture
Upload 88 files
2907194 verified
Raw
History Blame Contribute Delete
936 Bytes
import pandas as pd
import os
from mlProject import logger
from sklearn.linear_model import ElasticNet
import joblib
from mlProject.entity.config_entity import ModelTrainerConfig
class ModelTrainer:
def __init__(self, config: ModelTrainerConfig):
self.config = config
def train(self):
train_data = pd.read_csv(self.config.train_data_path)
test_data = pd.read_csv(self.config.test_data_path)
train_x = train_data.drop([self.config.target_column], axis=1)
test_x = test_data.drop([self.config.target_column], axis=1)
train_y = train_data[[self.config.target_column]]
test_y = test_data[[self.config.target_column]]
lr = ElasticNet(alpha=self.config.alpha, l1_ratio=self.config.l1_ratio, random_state=42)
lr.fit(train_x, train_y)
joblib.dump(lr, os.path.join(self.config.root_dir, self.config.model_name))