metadata
			tags:
  - tabular-classification
  - sklearn
datasets:
  - wine-quality
  - lvwerra/red-wine
widget:
  - structuredData:
      fixed_acidity:
        - 7.4
        - 7.8
        - 10.3
      volatile_acidity:
        - 0.7
        - 0.88
        - 0.32
      citric_acid:
        - 0
        - 0
        - 0.45
      residual_sugar:
        - 1.9
        - 2.6
        - 6.4
      chlorides:
        - 0.076
        - 0.098
        - 0.073
      free_sulfur_dioxide:
        - 11
        - 25
        - 5
      total_sulfur_dioxide:
        - 34
        - 67
        - 13
      density:
        - 0.9978
        - 0.9968
        - 0.9976
      pH:
        - 3.51
        - 3.2
        - 3.23
      sulphates:
        - 0.56
        - 0.68
        - 0.82
      alcohol:
        - 9.4
        - 9.8
        - 12.6
Wine Quality classification
A Simple Example of Scikit-learn Pipeline
Inspired by https://towardsdatascience.com/a-simple-example-of-pipeline-in-machine-learning-with-scikit-learn-e726ffbb6976 by Saptashwa Bhattacharyya
How to use
from huggingface_hub import hf_hub_url, cached_download
import joblib
import pandas as pd
REPO_ID = "julien-c/wine-quality"
FILENAME = "sklearn_model.joblib"
model = joblib.load(cached_download(
    hf_hub_url(REPO_ID, FILENAME)
))
# model is a `sklearn.pipeline.Pipeline`
Get sample data from this repo
data_file = cached_download(
    hf_hub_url(REPO_ID, "winequality-red.csv")
)
winedf = pd.read_csv(data_file, sep=";")
X = winedf.drop(["quality"], axis=1)
Y = winedf["quality"]
print(X[:3])
| fixed acidity | volatile acidity | citric acid | residual sugar | chlorides | free sulfur dioxide | total sulfur dioxide | density | pH | sulphates | alcohol | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 7.4 | 0.7 | 0 | 1.9 | 0.076 | 11 | 34 | 0.9978 | 3.51 | 0.56 | 9.4 | 
| 1 | 7.8 | 0.88 | 0 | 2.6 | 0.098 | 25 | 67 | 0.9968 | 3.2 | 0.68 | 9.8 | 
| 2 | 7.8 | 0.76 | 0.04 | 2.3 | 0.092 | 15 | 54 | 0.997 | 3.26 | 0.65 | 9.8 | 
Get your prediction
labels = model.predict(X[:3])
# [5, 5, 5]
Eval
model.score(X, Y)
# 0.6616635397123202
🍷 Disclaimer
No red wine was drunk (unfortunately) while training this model 🍷