Xu Hướng 2/2023 # Cây Quyết Định (Decision Tree) Là Gì? Ví Dụ Về Cây Quyết Định # Top 7 View | Bac.edu.vn

Xu Hướng 2/2023 # Cây Quyết Định (Decision Tree) Là Gì? Ví Dụ Về Cây Quyết Định # Top 7 View

Bạn đang xem bài viết Cây Quyết Định (Decision Tree) Là Gì? Ví Dụ Về Cây Quyết Định được cập nhật mới nhất trên website Bac.edu.vn. Hy vọng những thông tin mà chúng tôi đã chia sẻ là hữu ích với bạn. Nếu nội dung hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất.

Khái niệm

Cây quyết định trong tiếng Anh là Decision tree.

Cây quyết định là một phương tiện hỗ trợ cho việc ra quyết định trong điều kiện bất định. Nó chỉ ra nhiều đường lối hàng động khác nhau và hậu quả kinh tế của mỗi đường lối. Thông thường, mỗi đường lối hành động được gắn với một xác suất chủ quan về khả năng phát sinh các sự kiện trong tương lai.

Ví dụ về cây quyết định

Căn cứ vào Cây quyết định trên, người bán lẻ có hai phương án hành động là mở cửa hàng và không mở cửa hàng. Anh ta phải cân nhắc hai trạng thái tự nhiên, tức hai sự kiện có thể xảy ra: nền kinh tế phát triển mạnh hoặc suy thoái.

Người bán lẻ phải đánh giá khả năng xuất hiện mỗi sự kiện và trong tình huống này, anh ta dựa trên kinh nghiệm và hiểu biết để nhận định rằng khả năng xuất hiện mỗi sự kiện bằng 50%. Cuối cùng, người bán lẻ ước tính hậu quả tài chính là nếu mở cửa hàng sẽ có lãi 40.000 đồng khi kinh tế phát triển mạnh và lỗ 30.000 đồng nếu có suy thoái.

Để ra quyết định, người bán lẻ cần một tiêu chuẩn ra quyết định cho phép anh ta lựa chọn phương án hành động tốt nhất trong các phương án có thể có. Vì sự lựa chọn này gắn với yếu tố rủi ro, nên chúng ta cần biết thái độ của người bán lẻ đối với rủi ro.

Nếu người bán lẻ không chú ý đến rủi ro, chúng ta có thể tính toán tính xác định tương đương với hành vi “mở cửa hàng” bằng cách căn cứ vào hậu quả tài chính của mỗi kết cục và gia quyền nó theo xác suất xuất hiện của nó. Ví dụ:

Kết cục này chắc chắn lớn hơn 0 trong trường hợp không mở cửa hàng và nó biện minh cho việc tiếp tục thực hiện dự án này.

Song nếu người bán lẻ là người ghét rủi ro, tiêu chuẩn giá trị bằng tiền có thể không phải là tiêu chuẩn thích hợp, vì anh ta cần nhận được phần thưởng cho sự rủi ro để chấp nhận hành động. Việc tận dụng tiêu chuẩn cẩn thận hơn tiêu chuẩn tương đương với tính xác định sẽ làm giảm tiêu chuẩn tương đương với tính xác định của nhánh “mở cửa hàng” và điều này cũng dẫn đến quyết định tiếp tục mở cửa hàng.

Machine Learning Decision Tree (Cây Quyết Định)

Cây quyết định (Decision Tree) là một cây phân cấp có cấu trúc được dùng để phân lớp các đối tượng dựa vào dãy các luật (series of rules). Khi cho dữ liệu về các đối tượng gồm các thuộc tính cùng với lớp (classes) của nó, cây quyết định sẽ sinh ra các luật để dự đoán lớp của các đối tượng chưa biết (unseen data).

I. CẤU TRÚC DECISION TREES Decision Trees gồm 3 phần chính: 1 node gốc (root node), những node lá (leaf nodes) và các nhánh của nó (branches). Node gốc là điểm bắt đầu của cây quyết định và cả hai node gốc và node chứa câu hỏi hoặc tiêu chí để được trả lời. Nhánh biểu diễn các kết quả của kiểm tra trên nút. Ví dụ câu hỏi ở node đầu tiên yêu cầu câu trả lời là “yes” hoặc là “no” thì sẽ có 1 node con chịu trách nhiệm cho phản hồi là “yes”, 1 node là “no”.

ID3 (Iterative Dichotomiser 3) Algorithm Thuật toán ID3 có thể được tóm tắt như sau:

Chọn thuộc tính có entropy lớn nhất

Nối node với thuộc tính đó

ID3 (Examples, Target_Attribute, Attributes)

Tạo node gốc

Nếu tất cả các examples (ví dụ) đều nằm cùng một lớp là dương thì return một nút lá được gán nhãn bởi lớp đó (lớp +).

Nếu tất cả các examples (ví dụ) đều nằm cùng một lớp là âm thì return một nút lá được gán nhãn bởi lớp đó (lớp -).

Nếu tập thuộc tính Attributes là rỗng thì return Cây quyết định có nút Root được gắn với nhãn lớp bằng giá trị chung nhất trong tập thuộc tính ở tập ví dụ (Examples).

Chọn thuộc tính A – Thuộc tính trong tập Attributes có khả năng phân loại “tốt nhất” đối với Examples

Thuộc tính kiểm tra cho nút Root ← A và lấy nó làm gốc cho cây hiện tại

Với mỗi giá trị vi của A:

Bổ sung một nhánh cây mới nằm phía dưới node gốc, tương ứng với trường hợp A = vi

Xác định Examples(vi) sao cho tập con của Examples có giá trị vi cho A

Nếu Examples(vi) rỗng

# Tạo một nút lá được gắn nhãn = giá trị đích phổ biến nhất trong Examples. Sau đó gắn nút lá này vào nhánh cây mới vừa tạo.

Ngược lại, gắn vào nhánh cây mới vừa tạo một cây con sinh ra bởi ID3 (Examples(vi), Target_Attribute, Attributes – {A})

C4.5 là thuật toán phân lớp dữ liệu dựa trên cây quyết định hiệu quả và phổ biến trong những ứng dụng khai phá cơ sở dữ liệu có kích thước nhỏ. C4.5 xây dựng cây quyết định từ tập training data tương tự như ID3.

Tập training data S gồm các mẫu đã được phân loại sẵn s1, s2,… Mỗi mẫu si = x1,x2,… với x1, x2 là 1 vector biểu diễn cho thuộc tính hoặc đặc điểm của mẫu. Một tập vector C = c1,c2,… với c1, c2 biểu diễn cho mỗi lớp mà mỗi mẫu thuộc về.

Với mỗi lớp của cây, C4.5 chọn một thuộc tính của dữ liệu mà phân chia tập các mẫu thành nhiều tập con, được nâng cao chất lượng một cách hiệu quả nhất. Tiêu chuẩn của nó là thu được information gain (sự khác biệt về entropy) – kết quả từ việc chọn một thuộc tính cho việc chia tách dữ liệu. Quyết định đưa ra dựa trên tập thuộc tính với information gain được chuẩn hóa cao nhất. Thuật toán C4.5 sau đó sẽ lặp lại với các danh sách con nhỏ hơn.

Một vài trường hợp cơ bản:

– Tất cả các mẫu đều thuộc cùng một lớp. Khi điều này xảy ra, nó chỉ đơn giản tạo ra một nút lá cho cây quyết định và cho biết chọn lớp đó.

– Không có tính năng nào cung cấp bất kỳ information gain. Trong trường hợp này, C4.5 tạo ra một node quyết định (decision node) bằng cách sử dụng giá trị kì vọng của lớp đó.

– Với các trường hợp khác, C4.5 lần nữa tạo ra một node quyết định bằng cách sử dụng giá trị kì vọng của lớp đó.

Thuật toán được giải mã như sau:

ComputerClassFrequency(T);

Kiểm tra các trường hợp cơ bản rồi tạo ra node quyết định

Create a decision node N;

Gán chúng tôi = Thuộc tính với information gain được chuẩn hóa cao nhất

N.test=AttributeWithBestGain;

Thuật toán C4.5 sau đó sẽ lặp lại với các danh sách con nhỏ hơn và gán những node như là các node con

if (N.test is continuous)

ForEach T’ in the splitting of T

Ví dụ mô tả cách tính information gain:

Trong tập dữ liệu trên: S1 là tập những bản ghi có giá trị phân lớp là yes, S2 là tập những bản ghi có giá trị phân lớp là no. Khi đó:

Tính G(S,A) với A lần lượt là từng thuộc tính:

Tính tương tự với các thuộc tính khác ta được: – A = income: Gain (S, income) = 0.029 – A = student: Gain (S, student) = 0.151 – A = credit_rating: Gain ( S, credit_rating) = 0.048 Thuộc tính age là thuộc tính có độ đo Information Gain lớn nhất. Do vậy age được chọn làm thuộc tính phát triển tại node đang xét.

Hiệu của phân lớp của cây quyết định (Series of Rules) phụ thuộc rất lớn vào training data. Chẳng hạn cây quyết định được tạo ra bởi chỉ giới hạn 10 samples training data trong ví dụ trên thì hiệu quả ứng dụng cây quyết định để dự đoán các trường hợp khác là không cao (thường training data phải đủ lớn và tin cậy)Cây quyết định là một phương pháp phân lớp rất hiệu quả và dễ hiểu. Tuy nhiên có một số chú ý khi sử dụng cây quyết định trong xây dựng các mô hình phân lớp như sau:

Có rất nhiều thuật toán phân lớp như ID3, J48, C4.5, CART (Classification and Regression Tree),… Việc chọn thuật toán nào để có hiệu quả phân lớp cao tùy thuộc vào rất nhiều yếu tố, trong đó cấu trúc dữ liệu ảnh hưởng rất lớn đến kết quả của các thuật toán. Chẳng hạn như thuật toán ID3 và CART cho hiệu quả phân lớp rất cao đối với các trường dữ liệu số (quantitative value) trong khi đó các thuật toán như J48, C4.5 có hiệu quả hơn đối với các dữ liệu Qualititive value (ordinal, Binary, nominal).

Machine learning decision tree (cây quyết định)

Quyết Định Xử Phạt Vi Phạm Hành Chính Là Gì? Ví Dụ?

Trong đời sống có nhiều hành vi vi phạm pháp luật nhưng không đến mức phải truy cứu trách nhiệm hình sự. Và để đảm bảo an toàn trật tự xã hội cũng như tính răn đe đối với nhưng hành vi vi phạm đó nhà nước lập ra những chế tài xử lý các hành vi vi phạm hành chính.

Căn cứ để xử phạt hành chính đó là Quyết định xử phạt vi phạm hành chínhQua bài viết này Tổng đài 1900 6557 sẽ cung cấp những thông tin hữu ích đến quý vị

Quyết định xử phạt vi phạm hành chính là gì?

Quyết định xử phạt hành chính là văn bản đưa ra các chế tài xử phạt cho những chủ thể có hành vi vi phạm quy định của pháp luật và ở trong mức độ phạt hành chính đối với những hành vi đó.

Thời hạn ra quyết định xử phạt vi phạm hành chính?

Theo quy định của Luật xử lý vi phạm hành chính thì thời hạn ra quyết định xử phạt hành chính của người có thẩm quyền là không quá 07 ngày kể từ khi lập biên bản ghi nhận hành vi vi phạm hành chính.

Nhưng đối với một số trường hợp có hành vi vi phạm hành chính có tình tiết phức tạp thuộc những trường hợp được quy định tại Luật xử lý vi phạm hành chính thì được gia hạn, nhưng thời gian hạn là không quá 30 ngày kể từ khi lập biên bản.

Mẫu quyết định xử phạt vi phạm hành chính

QUYẾT ĐỊNH Xử phạt vi phạm hành chính trong lĩnh vực giao thông đường bộ, đường sắt

Căn cứ Điều 57, Điều 68 Luật xử lý vi phạm hành chính;

………………………………………………………………………………………….

Căn cứ Biên bản xác minh tình tiết của vụ việc vi phạm, hành chính, số ……../BB-XM lập ngày …../ ……/…….. (nếu có);

Căn cứ Quyết định về việc giao quyền xử phạt vi phạm hành chính số …………/QĐ-GQXP ngày …./…../…… (nếu có),

Tôi: ……………………………………………………………………………………………………………………..

………………………………………………………………………………………………………….

QUYẾT ĐỊNH:

:……………………………………………………………………. Giới tính: ………………

Ngày, tháng, năm sinh: ……./……/…….. Quốc tịch:…………………………………………………..

Nghề nghiệp: ……………………………………………………………………………………………………….

Nơi ở hiện tại: ……………………………………………………………………………………………………..

Số định danh cá nhân/CMND/Hộ chiếu: ………………………….. ngày cấp: ……./ ……/……..

Nơi cấp: ………………………………………………………………………………………………………………

Hạng xe được phép điều khiển ghi trong GPLX (5):…………………………………………………….

Địa chỉ trụ sở chính: ………………………………………………………………………………………………

Mã số doanh nghiệp: …………………………………………………………………………………………….

Số GCN đăng ký đầu tư/doanh nghiệp hoặc GP thành lập/đăng ký hoạt động:…………………..; ngày cấp:…./…./…..; nơi cấp: ……………………………………………………………………………………………………………………….

……………………………………………………………………………………………………..

2. Đã thực hiện hành vi vi phạm hành chính (8): ……………………………………………………….

3. Quy định tại (9): ………………………………………………………………………………………………..

4. Các tình tiết tăng nặng (nếu có): ………………………………………………………………………..

5. Các tình tiết giảm nhẹ (nếu có): …………………………………………………………………………

6. Bị áp dụng hình thức xử phạt, biện pháp khắc phục hậu quả như sau:

a) Hình thức xử phạt chính (10):

…………………………………………………………………………………………………………..

b) Hình thức xử phạt bổ sung (nếu có) (12): ……………………………………………………………..

c) Các biện pháp khắc phục hậu quả (nếu có) (13): …………………………………………………..

Mọi chi phí tổ chức thi hành biện pháp khắc phục hậu quả do cá nhân/tổ chức vi phạm có tên tại Điều này chi trả.

Ông (bà)/Tổ chức có tên tại Điều này phải hoàn trả số kinh phí là: ………………………………

(Bằng chữ: …………………………………………………………………………………………………………………………….là cơ quan đã thực hiện biện pháp khắc phục hậu quả theo quy định tại khoản 5 Điều 85 Luật xử lý vi phạm hành chính.

Ông (bà)/Tổ chức có tên tại Điều 1 phải nghiêm chỉnh chấp hành, quyết định xử phạt này. Nếu quá thời hạn mà ông (bà)/tổ chức ( ……………….không tự nguyện chấp hành thì sẽ bị cưỡng chế thi hành theo quy định của pháp luật

Trường hợp không nộp tiền phạt trực tiếp cho người có thẩm quyền xử phạt vi phạm hành chính theo quy định tại khoản 2 Điều 78 Luật xử lý vi phạm hành chính, ông (bà)/tổ chức hoặc nộp tiền phạt vào tài khoản số (17) …………. phải nộp tiền phạt tại (1…………… 1 ……………….. ………….trong thời hạn …… ngày, kể từ ngày nhận được Quyết định xử phạt. (

Lưu ý rằng đây là mẫu quyết định xử phạt hành chính chung áp dung trong lĩnh vực giao thông đường bộ, đường sắt. Tùy lĩnh vực khác nhau sẽ có quy định về mẫu quyết định khác nhau.

Phần tiếp theo của bài viết Quyết định xử phạt vi phạm hành chính sẽ chuyển sang phần ví dụ cụ thể.

Ví dụ về thẩm quyền ra quyết định xử phạt hành chính của cảnh sát giao thông

Vi dụ về Cảnh sát giao thông có thẩm quyền ra quyết định xử phạt hành chính trong phạm vi thẩm quyền của mình trong những trường hợp sau:

– Đối với xe oto và các loại xe tương tự xe oto có những hành vi như:

Không chấp hành hiệu lệnh, chỉ dẫn của đèn báo, vạch kẻ đường; không chuyển hướng, nhường đường trong một số trường hợp được quy định cụ thể; không chấp hành các quy định về tín hiệu báo cho người điều khiển phương tiện khác biết; vi phạm các quy định về dừng xe, đỗ xe; vi phạm các quy định về biển báo của xe; vi phạm các quy định về còi xe trong khu dân cư và khu đô thị

Vi phạm các quy định về chuyển làn xe hoặc các quy định về tín hiệu xe khi chuyển làn cho các phương tiện đang di chuyển khác biết; các quy định về tốc độ; số lượng người chở quá quy định…

– Thẩm quyền ra quyết định xử phạt đối với người điều khiển xe moto xe gắn máy, xe điện và các loại xe tương tự

Với những hành vi không chấp hành hiệu lệnh, chỉ dẫn của biển báp, vạch kẻ đường, các quy định về giữ khoảng cách; nhường đường; lùi xe; số lượng người được chở trên xe; quy định về điều khiển xe khi tham gia giao thông: tốc độc, dàn hàng, tránh xe không đúng quy định; sử dụng đèn chiếu sáng; bấm còi ; lắp đặt những thiết bị phát hiện tín hiệu ưu tiên không đúng quy định….

Từ những phân tích trên Công ty Luật Hoàng Phi mong rằng Quí vị sẽ có thêm những thông tin cần thiết về Quyết định xử phạt vi phạm hành chính Nếu Quí vị còn thắc mắc hoặc muốn biết thêm thông tin chi tiết vui lòng liên hệ vào số điện thoại 1900 655.

Cây Quyết Định (Cart) Datai@Sg

1. Giới thiệu

Phân loại (classification) là một quá trình gồm hai bước, bước học tập và bước dự đoán, trong học máy. Trong bước học tập, mô hình được xây dựng dựa trên dữ liệu đào tạo (training data). Trong bước dự đoán, mô hình được sử dụng để dự đoán đáp ứng với dữ liệu đã cho. Cây quyết định (decision tree) là một trong những thuật toán phân loại phổ biến, dễ hiểu và dễ giải thích.

1.1 Cây quyết định là gì?

Cây quyết định là một trong những thuật toán học máy phổ biến và mạnh mẽ mà tôi đã học. Đây là một phương pháp học có giám sát, có thể được sử dụng cho cả nhiệm vụ phân loại (classification) và hồi quy (regression).

Mục tiêu là tạo ra một mô hình dự đoán giá trị của biến mục tiêu (target variable) bằng cách học các quy tắc quyết định đơn giản được suy ra từ các đặc trưng dữ liệu (data features).

Không giống như các thuật toán hộp đen (black box) như Mạng thần kinh (Neural Network), Cây quyết định tương đối dễ hiểu hơn vì nó chia sẻ logic ra quyết định một cách rõ ràng.

1.2 Tại sao sử dụng cây quyết định?

Mặc dù thực tế là nhiều nhà khoa học dữ liệu (data scientists) tin rằng đó là một phương pháp cũ và họ có thể nghi ngờ về tính chính xác của nó do vấn đề quá mức (overfitting). Tuy nhiên, các mô hình mạnh mẽ như Random forest (bagging method), gradient boosting (boosting method) và XGBoost (boosting method) đang được sử dụng phổ biến trong tất cả các loại vấn đề khoa học dữ liệu, chúng đều được xây dựng dựa trên thuật toán cây quyết định. Do đó, các khái niệm và thuật toán đằng sau Cây quyết định rất đáng để hiểu!

1.3 Các loại cây quyết định

Cây quyết định biến phân loại (Categorical Variable Decision Tree): Cây quyết định có biến mục tiêu phân loại thì nó được gọi là cây quyết định biến phân loại.

Ví dụ: dữ liệu ở đây của ta có dạng YES/NO

Cây quyết định biến liên tục (Continuous Variable Decision Tree): Cây quyết định có biến mục tiêu liên tục thì nó được gọi là cây quyết định biến liên tục

Ví dụ: dữ liệu ở đây của ta có dạng các giá trị liên tục như giá nhà

1.4 Các thuật toán cây quyết định

Có 4 loại thuật toán cây quyết định phổ biến:

ID3

CART

Chi-Square

Reduction in Variance

⟹Trong bài này, chúng ta sẽ chỉ tập trung vào cây phân loại và các giải thích về CART

2. Thuật toán CART

2.1 CART là gì?

CART hay Classification and regression tree (cây phân loại và hồi quy) là một thuật toán cây quyết định, được giới thiệu bởi Leo Breiman. Nó có thể giải quyết cả hai vấn đề phân loại và hồi quy.

Để trực quan hơn, ở đây ta lấy ví dụ về cây phân loại để dự đoán sô người có thể sống sót sau vụ chìm tàu Titanic

Nhìn một cách đơn giản, nó chính là một tập các IF-ELSE, là kết quả của quá trình đào tạo dữ liệu bằng cây quyết định.

2.2 Cách hoạt động của CART

CART thường sử dụng phương pháp Gini để tạo các điểm phân chia.

Gini impurity

Là phương pháp hướng đến đo lường tần suất một đối tượng dữ liệu ngẫu nhiên trong tập dữ liệu ban đầu được phân loại không chính xác, trên cơ sở đối tượng dữ liệu đã nằm trong một tập con được phân ra từ tập dữ liệu ban đầu, có dán nhãn thể hiện thuộc tính chung bất kỳ của các đối tượng còn lại trong tập con này, giá trị phân loại chính là nhãn của tập con.

Gini impurity chính là chỉ số đo lường mức độ đồng nhất hay nhiễu loạn của thông tin, hay sự khác biệt về các giá trị mà mỗi điểm dữ liệu trong một tập con, hoặc một nhánh của cây quyết định. Công thức Gini có thể dùng cho cả dữ liệu rời rạc và liên tục. Nếu điểm dữ liệu thuộc về một node và có chung thuộc tính bất kỳ thì node này thể hiện sự đồng nhất lúc này gini=0gini=0 và ngược lại gini sẽ lớn.

Công thức tổng quát của Gini:

Công thức trên để tính độ vẩn đục của một node, khi có nhiều cách phân nhánh mỗi cách có thể phân ra một số node nhất định. Cho nên, lúc này có thêm công thức thứ 2 để tìm ra các phân chia tối ưu nhất:

Trong đó:

 là số điểm dữ liệu có trong node của nhánh được phân

 là số điểm dữ liệu có trong node được dùng để phân nhánh

Hệ số 

 càng nhỏ thì cách phân nhánh đó càng tối ưu.

càng nhỏ thì cách phân nhánh đó càng tối ưu.

Bài toán

Dựa vào bộ dữ liệu trên, ta sẽ sử dụng Gini để xây dựng cây quyết định.

Gini của thuộc tính outlook = sunny:

Từ đó có được 

của thuộc tính outlook sẽ bằng:

của thuộc tính outlook sẽ bằng:

Lần lượt, sẽ được giá trị GiniGini của các thuộc tính còn lại:

Như vậy, thấy rằng thuộc tính outlook sẽ có giá trị 

 nhỏ nhất cho nên chọn làm root node. Sau khi chọn được root node, dữ liệu sẽ được rút gọn lại như sau:

nhỏ nhất cho nên chọn làm root node. Sau khi chọn được root node, dữ liệu sẽ được rút gọn lại như sau:

Tiếp tục phân chia theo các thuộc tính còn lại:

Như vậy thuộc tính tiếp theo được chọn là child node là humidity, tương tự các bước sau vẫn được làm như vậy.

Kết quả của 

 cho ví dụ trên sẽ cho ra một cây như sau:

2.3 Overfitting và Underfitting trong CART

Nhắc lại một chút, overfitting có nghĩa là chúng ta cố gắn fit các dữ liệu một cách cực kì chính xác trong tập train, tuy nhiên nó sẽ dự đoán sai khi đưa dữ liệu vào test. Underfitting thì ngược lại, ta train một đường phân loại khá đơn giản, nó sẽ không chính xác trong cả tập train và tập test.

Overfitting xảy ra khi độ sâu của cây là quá lớn

Underfitting xảy ra khi cây khá ngắn

cho ví dụ trên sẽ cho ra một cây như sau:

⟹Để hạn chế vấn đề underfitting và overfitting, ta có một kỹ thuật gọi là Tiêu chuẩn dừng (Stop criterion)

2.4 Tiêu chuẩn dừng

Nếu chúng ta tiếp tục phát triển cây cho đến khi mỗi nút lá tương ứng với tạp chất thấp nhất, thì dữ liệu thường được cung cấp quá mức (overfitting).

Nếu việc chia tách bị dừng quá sớm, lỗi về dữ liệu huấn luyện không đủ cao và hiệu suất sẽ bị ảnh hưởng do bias (underfitting).

Do đó, việc ngăn chặn overfitting và underfitting là mấu chốt trong khi mô hình hóa Cây quyết định và nó có thể được thực hiện theo 2 cách:

Đặt các ràng buộc về kích thước cây:

Cung cấp số lượng mẫu tối thiểu để phân chia nút.

Triển khai số lượng mẫu tối thiểu cho một nút lá (leaf node).

Cho phép độ sâu tối đa của cây (độ sâu dọc).

Số lượng terminal node tối đa.

Các tính năng tối đa để xem xét cho sự phân chia.

Tỉa cây (Tree pruning):

Tỉa cây là một kỹ thuật trong học máy giúp giảm kích thước của Cây quyết định bằng cách loại bỏ các phần của cây. Nó cũng làm giảm độ phức tạp của phân loại cuối cùng và do đó cải thiện độ chính xác dự đoán bằng cách giảm overfitting.

Tỉa cây có thể được thực hiện theo hai cách:

Pre-prunning:

Dừng phân tách nút hiện tại nếu nó không cải thiện entropy bằng ít nhất một số giá trị (ngưỡng) được đặt trước.

Dừng phân vùng nếu số lượng điểm dữ liệu ít hơn một số giá trị đặt trước (ngưỡng).

Giới hạn độ sâu của cây đối với một số giá trị được đặt trước (ngưỡng).

Post-prunning:

Điều này có thể được thực hiện bằng cách trước tiên cho phép cây phát triển hết tiềm năng và sau đó tỉa cây ở mỗi cấp sau khi tính toán độ chính xác chéo ở mỗi cấp.

3. Demo đơn giản

Tiếp theo, ta sữ dụng thư viện sklearn để dào tạo mô hình cây quyết định dựa trên dữ liệu hoa Iris.

from sklearn.tree import DecisionTreeClassifier from sklearn import datasets import numpy as np from sklearn.model_selection import train_test_split from sklearn.preprocessing import StandardScaler iris = datasets.load_iris() #2: petal length #3: petal width X = iris.data[:, [2, 3]] y = iris.target

X_train, X_test, y_train, y_test = train_test_split( X, y, test_size=0.3, random_state=1, stratify=y)

Như đã đề cập, CART cũng có thể xử lý vấn đề hồi quy bằng cách sử dụng một tiêu chí phân tách khác: Lỗi bình phương trung bình (MSE) để xác định các điểm phân tách. Biến đầu ra của Cây hồi quy là số và các biến đầu vào cho phép kết hợp các biến liên tục và biến phân loại.

4. Kết luận

4.1 Ưu điểm của CART

Cây quyết định có thể thực hiện phân loại đa lớp.

Cung cấp hầu hết khả năng diễn giải mô hình bởi vì chúng đơn giản như là một loạt các điều kiện if-else.

Có thể xử lý cả dữ liệu số và dữ liệu phân loại.

Mối quan hệ phi tuyến (Nonlinear relationships) giữa các tính năng không ảnh hưởng đến hiệu suất của Cây quyết định.

4.2 Nhược điểm của CART

Nhược điểm lớn nhất của Cây quyết định là vấn đề Overfitting.

Một thay đổi nhỏ trong bộ dữ liệu có thể làm cho cấu trúc cây không ổn định có thể gây ra phương sai.

Cây quyết định có thể bị underfit nếu dữ liệu mất cân bằng. Do đó, nên cân bằng tập dữ liệu trước khi phù hợp với Cây quyết định.

4.3 Chuẩn bị dữ liệu cho CART

Việc phân chia các đặc trưng dạng số (splitting of numerical features) có thể được thực hiện bằng cách sắp xếp các đặc trưng theo thứ tự tăng dần và thử từng giá trị làm điểm ngưỡng, sau đó tính toán mức tăng thông tin cho từng giá trị làm ngưỡng. Cuối cùng, nếu giá trị đó thu được bằng với ngưỡng mang lại giá trị Gini Impurity tối thiểu thì hoan hô!!

Đặc trưng chia tỷ lệ (Feature scaling) (tiêu chuẩn hóa cột) không cần thiết để thực hiện trong các cây quyết định. Tuy nhiên, nó giúp với việc hiển thị / thao tác dữ liệu và có thể hữu ích nếu bạn có ý định so sánh hiệu suất với dữ liệu khác hoặc các phương pháp khác như SVM.

Để xử lý các đặc trưng dạng phân loại (categorical features) trong Cây quyết định, chúng ta không bao giờ phải thực hiện one hot encoding trên một biến phân loại vì hầu hết các thư viện có thể tự động xử lý các biến phân loại. Chúng ta vẫn có thể gán một số cho mỗi biến nếu muốn.

Lớp không cân bằng (Imbalanced class) có tác động bất lợi đến cấu trúc cây, do đó có thể tránh được bằng cách sử dụng upsampling hoặc bằng cách sử dụng downsampling tùy thuộc vào tập dữ liệu.

Hạn chế việc có quá nhiều đặc trưng (high dimensionality) vì nó có thể có tác động xấu đến cấu trúc của cây.

Các ngoại lệ (Outliers) cũng tác động đến cấu trúc của cây vì độ sâu của cây có thể làm tăng các ngoại lệ.

5. Tài liệu tham khảo

https://towardsdatascience.com/decision-trees-d07e0f420175

https://towardsdatascience.com/decision-tree…

https://www.vebuso.com/2020/01/decision-tree…

https://www.digitalvidya.com/blog/classification…

https://www.youtube.com/watch?v…

Cập nhật thông tin chi tiết về Cây Quyết Định (Decision Tree) Là Gì? Ví Dụ Về Cây Quyết Định trên website Bac.edu.vn. Hy vọng nội dung bài viết sẽ đáp ứng được nhu cầu của bạn, chúng tôi sẽ thường xuyên cập nhật mới nội dung để bạn nhận được thông tin nhanh chóng và chính xác nhất. Chúc bạn một ngày tốt lành!