Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào cây quyết định có thể được sử dụng để triển khai một bộ hồi quy trong Python?

Cây quyết định là khối xây dựng cơ bản của thuật toán rừng ngẫu nhiên. Nó được coi là một trong những thuật toán phổ biến nhất trong học máy và được sử dụng cho mục đích phân loại. Quyết định được đưa ra bởi cây quyết định có thể được sử dụng để giải thích tại sao một dự đoán nhất định được đưa ra. Điều này có nghĩa là quá trình vào và ra sẽ rõ ràng cho người dùng. Chúng còn được gọi là CART, tức là Cây phân loại và cây hồi quy. Nó có thể được hình dung như một cây nhị phân (cây được nghiên cứu trong cấu trúc dữ liệu và thuật toán).

Mỗi nút trong cây đại diện cho một biến đầu vào duy nhất và các nút lá (còn được gọi là nút đầu cuối) chứa biến đầu ra. Các nút lá này được sử dụng để thực hiện dự đoán trên nút. Khi một cây quyết định đang được tạo, ý tưởng cơ bản là không gian đã cho đang được chia thành nhiều phần. Tất cả các giá trị được đưa ra và các cách phân chia khác nhau được thử để đạt được ít chi phí hơn và giá trị dự đoán tốt nhất. Những giá trị này được chọn một cách tham lam.

Việc tách các nút này tiếp tục diễn ra cho đến khi đạt đến độ sâu tối đa của cây. Ý tưởng đằng sau việc sử dụng cây quyết định là chia tập dữ liệu đầu vào thành tập dữ liệu nhỏ hơn dựa trên giá trị tính năng cụ thể cho đến khi mọi biến mục tiêu thuộc một danh mục duy nhất. Sự phân chia này được thực hiện để thu được thông tin tối đa cho mỗi bước.

Mọi cây quyết định đều bắt đầu bằng một gốc, và đây là nơi thực hiện lần phân tách đầu tiên. Nên nghĩ ra một cách hiệu quả để đảm bảo rằng các nút được xác định.

Đây là lúc giá trị Gini đi vào hình ảnh. Gini được coi là một trong những phép đo phổ biến nhất được sử dụng để đo lường sự bất bình đẳng. Bất đẳng thức đề cập đến lớp đích (đầu ra) mà mọi tập con trong một nút đều có thể thuộc về.

Cú pháp dưới đây được sử dụng trong khi sử dụng quyết định -

class sklearn.tree.DecisionTreeRegressor (*, criterion=’mse’,…

Hãy cho chúng tôi hiểu cách dùng DecisionTreeRegressor -

Ví dụ

from sklearn import tree
my_data = [[1, 1], [5, 5], [2,3], [7,11]]
target_vals = [0.1, 1.5, 0.75, 1.73]
clf = tree.DecisionTreeRegressor()
print("The decision tree regressor has been called")
DTreg = clf.fit(my_data, target_vals)
print("Data has been fit")
pred_val = DTreg.predict([[4, 7]])
print("The predicted data is ")
print(pred_val)

Đầu ra

The decision tree regressor has been called
Data has been fit
The predicted data is
[1.5]

Giải thích

  • Các gói bắt buộc được nhập vào môi trường.
  • Các giá trị mục tiêu và vectơ đặc trưng đã được xác định.
  • Công cụ quyết định được gọi và dữ liệu phù hợp với mô hình.
  • Hàm "dự đoán" được sử dụng để dự đoán giá trị cho các giá trị của đối tượng địa lý.
  • Đầu ra được hiển thị trên bảng điều khiển.