Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

TensorFlow có thể được sử dụng với boosted trees trong Python như thế nào?


TensorFlow có thể được sử dụng với boosted trees (cây tăng cường) để cải thiện hiệu suất dự đoán của tập dữ liệu. Dữ liệu được tải và tiền xử lý theo cách thông thường, nhưng khi thực hiện dự đoán, nhiều mô hình được sử dụng cho dự đoán, và đầu ra của tất cả các mô hình này được kết hợp để cho kết quả cuối cùng.

Đọc thêm: TensorFlow là gì và Keras hoạt động như thế nào với TensorFlow để tạo mạng nơ-ron?

Chúng ta sẽ sử dụng Keras Sequential API, giúp xây dựng mô hình tuần tự dùng cho stack các layer đơn giản, nơi mỗi layer có chính xác một input tensor và một output tensor.

Một mạng nơ-ron chứa ít nhất một layer được gọi là layer tích chập. Chúng ta có thể sử dụng Mạng nơ-ron tích chập (CNN) để xây dựng mô hình học.

Chúng ta đang sử dụng Google Colaboratory để chạy mã dưới đây. Google Colab giúp chạy mã Python trên trình duyệt và yêu cầu cấu hình zero và truy cập miễn phí GPU. Colaboratory được xây dựng dựa trên Jupyter Notebook.

Chúng ta sẽ xem cách một mô hình gradient boosting có thể được huấn luyện bằng cây quyết định và tf.estimator API. Mô hình Boosted Trees được coi là phương pháp học máy phổ biến và hiệu quả nhất cho cả hồi quy và phân loại. Đây là kỹ thuật ensemble (tập hợp) kết hợp dự đoán từ nhiều mô hình cây (10s hoặc 100s hoặc 1000s). Chúng giúp đạt hiệu suất ấn tượng cùng với việc tinh chỉnh hyperparameter tối thiểu.

Ví dụ

import numpy as np
import pandas as pd
from IPython.display import clear_output
from matplotlib import pyplot as plt
print("Tải tập dữ liệu")
dftrain = pd.read_csv('https://storage.googleapis.com/tf-datasets/titanic/train.csv')
dfeval = pd.read_csv('https://storage.googleapis.com/tf-datasets/titanic/eval.csv')
print("Xóa cột 'survived'")
y_train = dftrain.pop('survived')
y_eval = dfeval.pop('survived')
import tensorflow as tf
tf.random.set_seed(123)

Nguồn mã: https://www.tensorflow.org/tutorials/estimator/boosted_trees

Đầu ra

Tải tập dữ liệu
Xóa cột 'survived'

Giải thích

  • Các gói cần thiết được nhập.
  • Tập dữ liệu được tải.
  • Được đọc dưới dạng file CSV.
  • Cột 'survived' bị xóa.