Chuẩn bị dữ liệu cho NannyML

Giám sát Machine Learning bằng Python

Hakim Elakhrass

Co-founder and CEO of NannyML

Nạp dữ liệu

dataset_name = "green_taxi_dataset.csv"
data = pd.read_csv(dataset_name)
data.head()

Ảnh chụp màn hình 5 hàng đầu của bộ dữ liệu.

Giám sát Machine Learning bằng Python

Xử lý dữ liệu

# Tạo phân vùng dữ liệu
data['partition'] = pd.cut(
    data['lpep_pickup_datetime'],
    bins= [pd.to_datetime('2016-12-01'),
           pd.to_datetime('2016-12-08'),
           pd.to_datetime('2016-12-16'),
           pd.to_datetime('2017-01-01')],
    right=False,
    labels= ['train', 'test', 'prod']
)
Giám sát Machine Learning bằng Python

Chia dữ liệu

# Tên cột đích
target = 'tip_amount'
# Tên cột đặc trưng
features = ["PULocationID", "DOLocationID", "trip_distance", "VendorID", "pickup_time"]
# Tập train
X_train = data.loc[data['partition'] == 'train', features]
y_train = data.loc[data['partition'] == 'train', target]

# Tập test (sau là tập tham chiếu)
X_test = data.loc[data['partition'] == 'test', features]
y_test = data.loc[data['partition'] == 'test', target]

# Tập sản xuất (sau là tập phân tích)
X_prod = data.loc[data['partition'] == 'prod', features]
y_prod = data.loc[data['partition'] == 'prod', target]
Giám sát Machine Learning bằng Python

Xây dựng mô hình

  • Huấn luyện LGBMRegressor bằng thư viện lightgbm
  • Đánh giá mô hình trên tập kiểm tra
  • Triển khai mô hình
# Huấn luyện mô hình
model = LGBMRegressor(random_state=42)
model.fit(X_train, y_train)

# Dự đoán
y_pred_train = model.predict(X_train)
y_pred_test = model.predict(X_test)

# Đánh giá trên train và test
mae_train = MAE(y_train, y_pred_train)
mae_test = MAE(y_test, y_pred_test)

# Triển khai mô hình ra sản xuất
y_pred_prod = model.predict(X_prod)
Giám sát Machine Learning bằng Python

Tạo tập tham chiếu và phân tích

Giai đoạn tham chiếu

  • Dùng tập kiểm tra

  • Cần ground truth

  • Thiết lập hiệu suất chuẩn

Giai đoạn phân tích

  • Dữ liệu sản xuất mới nhất

  • Ground truth là tùy chọn

  • NannyML phân tích data drift và hiệu suất

# Tạo tập tham chiếu
reference = X_test.copy() # Đặc trưng tập kiểm tra
reference['y_pred'] = y_pred_test # Dự đoán
reference['tip_amount'] = y_test # Nhãn
reference = reference.join(
    data['lpep_pickup_datetime']) # Timestamp
# Tạo tập phân tích
analysis = X_prod.copy() # Đặc trưng sản xuất
analysis['y_pred'] = y_pred_prod # Dự đoán
analysis = analysis.join(
    data['lpep_pickup_datetime']) # Timestamp
Giám sát Machine Learning bằng Python

Ví dụ tập tham chiếu

  • Timestamp - thời điểm quan sát (tùy chọn)
  • Đặc trưng - đầu vào cho mô hình
  • Đầu ra mô hình
    • Predictions - điểm dự đoán do mô hình xuất ra
    • Nhãn lớp dự đoán - xác suất đã ngưỡng hóa
  • Target - chứa ground truth

Hình minh họa 5 hàng đầu của tập tham chiếu.

Giám sát Machine Learning bằng Python

Ayo berlatih!

Giám sát Machine Learning bằng Python

Preparing Video For Download...