Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

docker-machine-learning

Build and Run a Docker Container for Machine Learning Model

Principal goal : Build Docker Container (MLops) with a regression ML model (Random Forest) and run it.

Principal Files :

  • Dockerfile
FROM jupyter/scipy-notebook
  • utils.py
def pipelines(data):
    cat_encoder = OneHotEncoder(sparse=False)

    housing_cat = data[['ocean_proximity']]
    housing_cat_1hot = cat_encoder.fit_transform(housing_cat)
    housing_num = data.drop('ocean_proximity', axis=1)
    ordinal_encoder = OrdinalEncoder()
    housing_cat_encoded = ordinal_encoder.fit_transform(housing_cat)

    num_attribs = list(housing_num)
    cat_attribs = ["ocean_proximity"]



    num_pipeline = Pipeline([
            ('imputer', SimpleImputer(strategy="median")),
            ('std_scaler', StandardScaler()),
        ])

    full_pipeline = ColumnTransformer([
            ("num", num_pipeline, num_attribs),
            ("cat", OneHotEncoder(), cat_attribs),
        ])

    housing_prepared = full_pipeline.fit_transform(data)
    
    return housing_prepared 
  • model.py
forest_reg = RandomForestRegressor(random_state=42)

grid_search = GridSearchCV(forest_reg, param_grid, cv=5,
                           scoring='neg_mean_squared_error', return_train_score=True)
grid_search.fit(housing_prepared, housing_labels)

cvres = grid_search.cv_results_
for mean_score, params in zip(cvres["mean_test_score"], cvres["params"]):
    print(np.sqrt(-mean_score), params)


The model.py is a python script that ingest and pre-processing data (in batch)

Biuling image

docker buidl -t docker-model -f Dockerfile .

For running :

docker run docker-model python3 model.py

Output

About

Build and Run a Docker Container for Machine Learning Model

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages