1. Trang chủ
  2. » Luận Văn - Báo Cáo

Một số thuật toán trong phương pháp dự đoán các bài toán phân loại và ứng dụng thực tế

72 150 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 72
Dung lượng 2,61 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Sựkhác biệt chính giữa các DTIAs gồm một vài khía cạnh:  Cách lựa chọn các thuộc tính dự đoán cho mỗi node cây hiện tại  Với mỗi thuộc tính được chọn, làm thế nào để phân chia các đối

Trang 1

ĐẠI HỌC CÔNG NGHỆ KHOA CÔNG NGHỆ THÔNG TIN

Đề tài: Một số thuật toán trong phương pháp dự đoán

Các bài toán phân loại và ứng dụng thực tế

Giảng viên: PGS.TS Hà Quang Thụy

Trang 2

Danh mục bảng biểu

Bảng 10 1 VD đơn giản về tập dữ liệu mạng xã hội được gán nhãn 5

Bảng 10 2 Ưu điểm và nhược điểm của cây quyết định 13

Bảng 10 3 Ưu điểm và nhược điểm của MARS 17

Bảng 10 4 Những ưu điểm và nhược điểm của ANN 27

Bảng 10 5 Ưu điểm và nhược điểm của DL 31

Bảng 10 6 Ưu điểm và nhược điểm của SVM 36

Danh mục hình ảnh Hình 10 1 Ví dụ về một cây quyết định 7

Hình 10 2 Phân vùng không gian đầu vào bởi một cây quyết định 10

Hình 10 3 Biểu diễn tập dữ liệu trong bảng 8.5 dưới dạng đồ thị của cây phân loại CART 11

Hình 10 4 Biểu diễn quy tắc của cây phân loại CART cho tập dữ liệu bảng 8.5 11

Hình 10 5 VD: y = x, với p là giá trị dự đoán (theo y) tạo bởi CART 14

Hình 10 6 Giải quyết bằng một tập dữ liệu với (a) MLR, (b) CART, (c) model trees và (d) MARS 16

Hình 10 7 Chi tiết của một mô hình cây (model tree) và MARS sử dụng tập dữ liệu nhân tạo 17

Hình 10 8 Mạng nơ-ron MLP với hai lớp ẩn (two hidden layers) 20

Hình 10 9 Cách MLP training hướng và vị trí của các siêu phẳng tách cùng hướng và vị trí của các vùng tách lồi và không lồi 24

Hình 10 10 Hướng và vị trí của siêu phẳng tách, hướng và vị trí của các khu vực cần phải phân loại lồi và không lồi của một mạng MLP đã được training 24

Hình 10 11 Các vùng tách được tạo bởi (bên trái) một mạng MLP được huấn luyện với truyền ngược và (phải) một thuật toán cảm ứng cây quyết định cho cùng một tập dữ liệu 24

Hình 10 12 Biên độ lớn được xác định bởi các vectơ hỗ trợ SVM 32

Hình 10 13 Biên giới quyết định được tìm thấy bởi (bên trái) perceptron và (phải) thuật toán học tập SVM 32

Hình 10 14 Tăng lề tách bằng cách cho phép một số đối tượng được đặt bên trong lề tách 33

Hình 10 15 Ví dụ về việc sử dụng hàm kernel để chuyển đổi một nhiệm vụ phân loại phi tuyến tính trong một không gian hai chiều thành một nhiệm vụ phân loại tuyến tính trong một không gian ba chiều 34

Hình 10 16 Biên độ mềm trong bài toán hồi quy và cách tính 𝜁 34

Trang 3

Mục lục

Chương 10: Phương pháp dự đoán bổ sung 4

10.1 Thuật toán dựa trên tìm kiếm (Search-based algorithms) 4

10.1.1 Thuật toán Cây Quyết định Suy diễn (Decision Tree Induction Algorithms) 4

10.1.2 Cây quyết định hồi quy 12

10.1.2.1 Mô hình cây – Model trees 13

10.1.2.2 Các biển thể hồi quy thích ứng đa biến (Multivariable Adaptive Regression Splines - MARS) 14

10.2 Các thuật toán dựa trên tối ưu hóa (Opitimiztion-based Algorithms) 17

10.2.1 Mạng nơ-ron nhân tạo 17

10.2.1.1 Lan truyền ngược (Backpropagation) 19

10.2.1.2 Mạng sâu và thuật toán học sâu 26

10.2.2 Hỗ trợ máy Vector 30

10.2.2.1 SVM cho hồi quy 33

10.3 Đánh giá lần cuối 35

Chương 11: Chủ đề tiên đoán tiên tiến 37

11.1 Kết hợp học thuật 37

11.1.1 Đóng gói 39

11.1.2 Cây ngẫu nhiên 40

11.1.3 AdaBoost 41

11.2 Sai lệch thuật toán 42

11.3 Nhiệm vụ phân loại “không” nhị phân 43

11.3.1 Phân loại một lớp 44

11.3.2 Phân loại nhiều lớp 45

11.3.3 Phân loại xếp hạng 46

11.3.4 Phân loại nhiều nhãn 46

11.3.5 Phân loại phân cấp 48

11.4 Kỹ thuật chuẩn bị dữ liệu nâng cao để dự đoán 49

11.4.1 Phân loại dữ liệu không cân bằng 50

11.4.2 Đối với nhãn mục tiêu không đầy đủ 50

11.4.2.1 Học tập bán giám sát 51

11.4.2.2 Học tập tích cực (Active learning) 52

11.5 Mô tả và dự đoán với các kỹ thuật giám sát có thể diễn giải 52

Trang 4

Bài tập: Mô hình hóa Nguyên lý chuồng chim bồ câu trong Logic mệnh đề 54

Logic bậc nhất 58

Dành cho C # 62

Vấn đề thực tế: Cleaning Robot 64

Tóm lược 71

Phụ lục 72

Tài liệu tham khảo 72

Trang 5

Chương 10: Phương pháp dự đoán bổ sung

Những tác vụ dự đoán có thể phức tạp hơn những gì được trình bày trong chương

8 và 9 Do đó, chúng ta cần nhiều các thuật toán “học” phức tạp hơn Chương này sẽ trìnhbày một nhóm mới về các học thuật dự đoán – thuật toán dựa trên tìm kiếm và tối ưu hóa,chúng sẽ giúp chúng ta giải quyết hiệu quả hơn với những tác vụ phân loại phức tạp

10.1 Thuật toán dựa trên tìm kiếm (Search-based algorithms)

Thông thường, các thuật toán học máy sử dụng các thuật toán: Chúng thực hiệnlặp lại việc tìm kiếm cục bộ nhằm tạo ra mô hình dự báo tốt nhất Đây chính là một

trường hợp của Thuật toán Cây Quyết định Suy diễn (Decision Tree Induction Algorithms – DTIAs), phương pháp thường được sử dụng để thiết kế các thuật toán dựa trên tìm

kiếm DTIAs tạo ra các mô hình với một cấu trúc cây quyết định, trong đó mỗi node đượcliên kết với một hoặc nhiều các thuộc tính dự đoán và mỗi node lá được nối với một giá

trị đích Các DTIAs dành cho tác vụ phân loại gọi là Cây phân loại (Classification trees), cho các tác vụ hồi quy gọi là cây hồi quy (Regression trees) Để phân loại chúng, DTIAs còn được gọi là Thuật toán Cây Đặc trưng Suy diễn (Characteristic Tree Induction Algorithms - CTIAs), sử dụng tên “cây quyết định” (decision tree) cho các tác vụ phân loại và tên “cây hồi quy” (regression tree) cho các tác vụ hồi quy Trong cuốn sách này, xem Phân loại và Hồi quy là các kiểu của quyết định và do đó áp dụng thuật ngữ “cây quyết định” làm thuật ngữ chung và sử dụng từng thuật ngữ riêng Cây Phân loại và Hồi quy cho từng tác vụ đặc biệt.

Một thuật toán khác là Thuật toán Quy tắc Thiết lập Suy diễn (Rule Set Induction Algorithms – RSIAs), nó sẽ tìm kiếm các mô hình được biểu diễn bằng một bộ quy luật

với khả năng tìm kiếm hiệu quả nhất Mỗi quy luật sẽ có định dạng “IF-THEN”: (IF)NẾU một đối tượng tuân theo một tập hợp có điều kiện nào đó, (THEN) THÌ nó sẽ thuộc

về một lớp nhất định Tất cả các cách tiếp cận trên đều tạo ra những mô hình dự đoán sửdụng logic (concepts from logic – khái niệm từ logic) RSIAs có thể coi như là mộttrường hợp đặc biệt của các quy tắc kết hợp (association rules) được trình bày trongchương 6

10.1.1 Thuật toán Cây Quyết định Suy diễn (Decision Tree Induction Algorithms)

Một số ứng dụng phân tích dữ liệu yêu cầu những mô hình dự đoán dễ hiểu, có thểdiễn giải được Những người giỏi phân tích sơ đồ, với những dữ liệu phân theo mộtnhánh với giá trị cụ thể của nó Một vài sơ đồ có thể dễ hiểu hơn nếu nó giả định mộtđịnh dạng của cây, giống như một cây quyết định Cây quyết định thường được sử dụng

Trang 6

trong các hệ thống hỗ trợ quyết định Chúng cho thấy những quyết định có thể có và cáckết quả của mỗi quyết định đó.

Bảng 10 1 VD đơn giản về tập dữ liệu mạng xã hội được gán nhãn.

Một vài điều tương tự có thể thấy trong các thuật toán học máy tạo ra cây quyếtđịnh DTIAs tạo ra một cấu trúc cây phân cấp tương tự, trong đó mỗi node thường liên

kết với các thuộc tính dự đoán Xem xét bộ dữ liệu trong bảng 10.1 Bộ dữ liệu trên có 3

thuộc tính dự đoán gồm một thuộc tính đích và các thuộc tính còn lại với hai lớp liênquan đến chuẩn đoán về y tế là:

 Bệnh nhân có bị “đau” hay “không”

 Nhiệt độ bệnh nhân “cao” hay “thấp”

Hai lớp (outcome) gồm bệnh nhân đi viện hoặc về nhà Hình 10.1 biểu diễn mộtcấu trúc cây quyết định có thể được tạo bởi một DTIA cho bộ dữ liệu này Và những ý

Trang 7

nghĩa được miêu tả bởi cây quyết định này rất dễ hiểu Mỗi đường từ node gốc đến node

lá có thể xem là một quy tắc (điều này cũng cho thấy việc chuyển từ cây quyết định sangmột tập các quy tắc cũng là dễ dàng) Và từ đó, có thể thấy 3 quy tắc gồm:

 Nếu bệnh nhân bị “đau” và sốt “cao” thì nên đến viện

 Nếu bệnh nhân bị “đau” và sốt “yếu” thì nên ở nhà

 Nếu bệnh nhân không bị bệnh thì nên ở nhà (không cần quan tâm tới nhiệt độ)

Mỗi mô hình đơn giản dễ hiểu là một đặc điểm quan trọng của các cây quyết định

Có nhiều những thuật toán học máy khác nhau cho mỗi cây quyết định suy diễn Mộttrong những cái đầu tiên được đề xuất là thuật toán Hunt đã có ảnh hưởng tới các DTIAskhác, bao gồm:

 Cây phân loại và hồi quy (The Classification and regression tree – CART)

 Phép biến đổi lặp đi lặp lại (The iterative dichotomiser 3 – ID3)

 C4.5 là phần mở rộng của ID3

 Cây quyết định “nhanh” (very fast decision trees – VFDT), phổ biến với các tập

dữ liệu có tính gia tăng giống như các luồng dữ liệu

Trang 8

Thuật toán: Hunt – DTIA

1 INPUT Dtrain current node training set (tập node training hiện tại)

2 INPUT p the impurity measure (đơn vị không rõ ràng/nhiễu)

3 INPUT n the number of objects in the training set (số lượng của các đối tượng

trong tập training)

4 If tất cả các tập dữ liệu trong Dtrain cùng thuộc một lớp y then

5 Những node hiện tại sẽ là một node lá được gán nhãn với lớp y

6 Else

7 Lựa chọn một thuộc tính dự đoán để tách Dtrain sử dụng đơn vị p

8 Tách Dtrain thành các tập con theo giá trị hiện tại của nó

9 Áp dụng thuật toán Hunt cho mỗi tập con

Thuật toán Hunt rất đơn giản, như được hiển thị bằng mã giả của nó Thuật toánnày tự gọi chính nó và được gọi là đệ quy Mỗi lần gọi sẽ tăng kích thước của cây

Đệ quy giải quyết các vấn để sử dụng thuật toán “tham lam Greedy”, còn được gọi

là phân chia-và-giải quyết (divide-and-conquer) Một vấn đề sẽ được giải quyết bằngcách chia nó thành các vấn đề nhỏ và đơn giản hơn, sau nó áp dụng cách làm tương tựtrước cho chúng Việc phân chia này sẽ tiếp tục cho đến khi các vấn đề đơn giản đủ đểgiải quyết mà không cần phải chia ra nữa DTIAs thường tuân theo việc phân chia-và-giảiquyết này

Bắt đầu từ node gốc, đầu tiên thuật toán Hunt sẽ kiểm tra xem tất cả các đối tượngtrong cùng node có cùng lớp hay không (giá trị nhiễu thấp nhất, theo đơn vị đo giá trịnhiễu đã được dùng) Nếu cùng, thì node đó sẽ là lá, và dừng thuật toán Ngược lại, thuậttoán sẽ tiếp tục chia đôi các đối tượng hiện tại trong node bằng cách sử dụng một thuộctính dự đoán thử nghiệm (test predictive attribute – TPA) TPA là một thuộc tính dự đoánđược lựa chọn từ tập dữ liệu training theo một tiêu chuẩn cho trước Một tiêu chuẩn cóthể là một thuộc tính dự đoán phân chia các đối tượng hiện tại thành các nhóm có tínhchất giống nhau nhất (khi các đối tượng trong một nhóm thuộc cùng một lớp), mỗi kếtquả thử nghiệm sẽ được nối với một nhánh từ node hiện tại tới một trong những nhómtrước (gọi là các node con) Do đó, lựa chọn một TPA cho node, với mỗi đối tượng hiệntại thông qua việc so sánh TPA với thuộc tính dự đoán tương ứng của node theo mộttrong các nhánh Tiếp theo, thuật toán sẽ được áp dụng cho mỗi node con

Thuật toán Hunt sẽ chia dần dần các đối tượng vào những nhóm ít bị nhiễu hơn.Đơn giản nhất là khi tất cả các đối tượng trong một node cùng thuộc một lớp Khi đó, tất

Trang 9

cả các đối tượng trong node đó sẽ không cần phải chia ra nữa và node đó sẽ được gánnhãn với lớp của các đối tượng đó.

Có một vài DTIAs dựa trên thuật toán Hunt và một vài cách tiếp cận khác Sựkhác biệt chính giữa các DTIAs gồm một vài khía cạnh:

 Cách lựa chọn các thuộc tính dự đoán cho mỗi node cây hiện tại

 Với mỗi thuộc tính được chọn, làm thế nào để phân chia các đối tượng trong cácnhánh node

 Lúc nào thì dừng áp dụng thuật toán cho một node

TPA được chọn là một thuộc tính nằm trong tập dữ liệu phân chia các đối tượngmột cách tốt nhất trong node hiện tại Việc phân chia lý tưởng sẽ là bộ phận để tất cả cácnode con với các đối tượng trong cùng một lớp Sử dụng các đơn vị nhiễu để xác định cácthuộc tính dự đoán cho việc phân chia tốt nhất Càng nhiều sự đồng nhất các lớp trongmột node thì càng ít giá trị nhiễu Do đó, thuộc tính với giá trị nhiễu thấp nhất (nhiều đốitượng có cùng nhãn lớp nhất) sẽ được chọn Các đơn vị nhiễu thường được sử dụng trongcác cây phân chia (Classifications Trees) được gọi là chỉ số Gini (Gini Index), được sửdụng trong thuật toán CART và thu thập thông tin, và cũng được dùng trong thuật toánID3 và C4.5

Việc phân chia các đối tượng phụ thuộc vào số lượng giá trị và tỉ lệ thuộc tính dựđoán của các giá trị Phân chia đơn giản nhất khi thuộc tính có hai giá trị, hai nhánh đượcxác định và mỗi giá trị liên kết với một nhánh Đối với các thuộc tính dự đoán có nhiềuhơn hai giá trị, tỉ lệ và các khía cạnh tập dữ liệu miền được xem xét Một số DTIAs nhưCART chỉ sử dụng hai nhánh trên một node Do đó chúng chỉ tạo ra cây quyết định nhịphân

Một số tiêu chí khi dừng phân chia các node:

 Các đối tượng của node hiện tại thuộc cùng một lớp

 Các đối tượng thuộc node hiện tại có các thuộc tính đầu vào với giá trị bằng nhaunhưng khác nhãn lớp

 Số lượng đối tượng trong một node ít hơn giá trị đã cho

 Tất cả các thuộc tính dự đoán được bao gồm trong đường đi từ node gốc đến nodeđó

Từng node lá của một cây có một nhãn được đặt theo số “vote” (phiếu bầu), cónghĩa là lấy theo phần lớp nhãn lớp của các đối tượng trong node lá đó Dự đoán chonhững đối tượng chưa gán nhãn được bắt đầu từ gốc, và thực hiện theo các quy tắc phân

Trang 10

chia dựa theo các giá trị của thuộc tính dự đoán Giá trị dự đoán là nhãn của node lá đượcxác định bởi các đối tượng.

Hình 10 2 Phân vùng không gian đầu vào bởi một cây quyết định.

Một khía cạnh quan trọng khác của DTIAs là phân vùng của các không gian đầuvào (input space) bởi các siêu mặt phẳng song song với mỗi trục được liên kết một thuộctính dự đoán Với mỗi tập dữ liệu có hai thuộc tính dự đoán, cây quyết định chia khônggian đầu vào với các trục tung (vertical – dọc) và trục hoành (horizontal - ngang) Hình10.2 cho thấy cấu trúc một cây quyết định được tạo bởi DTIA cho một tập dữ liệu

Nếu cây quyết định được tạo bởi một thuật toán là sâu (“deep”), thì đo số lượngcác node từ node gốc đến node lá xa nhất, cây có thể “overfitting”, chú ý quá nhiều đếnchi tiết trong tập dữ liệu thay vì các đối tượng chính Vấn đề này có thể hạn chế bằng việc

“cắt tỉa” cây, giống như “cắt tỉa” cây trong vườn Cắt những nhánh không có quá nhiềuảnh hưởng tới việc dự đoán của cây quyết định Việc “cắt tỉa” có thể xảy ra:

 Xuyên suốt cây dự đoán: pre-pruning

 Sau khi cây dự đoán: post-pruning

Đánh giá và phỏng đoán kết quả: Khả năng dự đoán của mô hình DTIAs có thể

được đánh giá bằng việc sử dụng các đơn vị dự đoán hiệu suất (được dùng cho các tác vụhồi quy và phân chia)

Mô hình cây quyết định có thể diễn giải được Chúng có thể được trình bày dướidạng biểu đồ như trong hình 10.3, hoặc có thể là một tập các quy tắc như trong hình 10.4

Trang 11

Hình 10 3 Biểu diễn tập dữ liệu trong bảng 8.5 dưới dạng đồ thị của cây phân loại

CART.

Hình 10 4 Biểu diễn quy tắc của cây phân loại CART cho tập dữ liệu bảng 8.5

Trang 12

Bảng 8.5 Dữ liệu mạng xã hội.

Cả hai đều cho thấy những thuộc tính dự đoán được lựa chọn, mỗi thuộc tính cócác điều kiện được sử dụng để phân chia các đối tượng vào hai nhóm Hình 10.3 cho thấygiá trị nguyên bản (purity value) và phần trăm của tổng dữ liệu của các đối tượng trongmỗi nhóm Hình 10.4 cho thấy số lượng các đối tượng trong mỗi lớp và giá trị nguyênbản của mỗi nhóm

Thiết lập các siêu-tham số (hyper-parameters): Mỗi DTIA có những siêu-tham số

khác nhau, giá trị cần thiết sẽ được thiết lập Một vài siêu-tham số có thể thấy trong việcthực hiện DTIAs được sử dụng để kiểm soát việc “cắt tỉa” cây (cả pre- và post-pruning).Siêu-tham số phổ biến nhất là số lượng tối thiểu của các đối tượng mà mỗi node lá cần

có Nếu giá trị của chúng quá thấp, nó có thể dẫn đến overfitting

Trang 13

Bảng 10 2Ưu điểm và nhược điểm của cây quyết định.

Ưu điểm:

 Có thể giải thích được bằng cả

biểu đồ và các tập quy tắc

 Không cần chuẩn bị dữ liệu cho

một cây quyết định, các kỹ thuật

khác thường đòi hỏi chuẩn hóa dữ

liệu , cần tạo các biến phụ và loại

bỏ các giá trị rỗng

Nhược điểm:

 Việc xác định một quy tắc đểphân chia một nốt phải được đánhgiá cục bộ mà không có đủ thôngtin để biết liệu quy tắc đó có đượctối ưu hay không

 Với các quy tắc dạng x < a với x

là một thuộc tính dự đoán và a làmột giá trị, một cây quyết địnhchia tách thành không gian haichiều như trong hình 10.2 sẽ gặpmột vài vấn đề khó khăn

10.1.2 Cây quyết định hồi quy

Có hai sự khác biệt chính giữa thuật toán cây suy diễn hồi quy và cây suy diễnphân loại:

 Các đơn vị nhiễu là khác nhau giữa hồi quy và phân loại Với hồi quy(regression), các đơn vị nhiễu thường là giảm phương sai Đơn vị này sẽ đo sựkhác biệt giữa phương sai trên một node và tổng các phương sai trong các nodecon của nó Việc chia tách được xác định bởi độ lớn lớn nhất của sự khác biệtnày

 Sự khác biệt thứ hai là gán nhãn cho các node lá Với phân loại (classification)thì là theo đa số phiếu (“voting”), còn hồi quy (regression) là theo mức trungbình Tuy nhiên những lựa chọn này có một giới hạn quan trọng là việc dựđoán cùng một giá trị cho lượng lớn không gian đầu vào Hay nói cách khác,tất cả đối tượng chưa được gán nhãn mà rơi vào cùng một node lá đã cho sẽ cócùng dự đoán, như trong hình 10.5

Trang 14

Hình 10 5 VD: y = x, với p là giá trị dự đoán (theo y) tạo bởi CART.

Các phương pháp được mô tả trong hai phần tiếp theo (mô hình cây và MARS)được phát triển đặc biệt cho hồi quy (regression), mặc dù một số phương pháp tiếp cận sửdụng mô hình cây cho phân loại (classification) Mô hình cây và MARS có thể vượt quagiới hạn của việc sử dụng trung bình trong các nút lá của cây quyết định

10.1.2.1 Mô hình cây – Model trees

Như trong hình 10.5, cây hồi quy dự đoán giá trị trung bình của các giá trị đíchcủa các đối tượng trong node lá đạt được từ một trường hợp kiểm thử Cây mô hình hồiquy (còn gọi là mô hình cây – model trees) sử dụng hồi quy tuyến tính đa biến(Multivariate linear regression – MLR) thay vì giá trị trung bình (average) Cùng một dữliệu được sử dụng để tính toán giá trị trung bình trong node lá của cây hồi quy cũng đượcdùng cho MLR trong một mô hình cây (model tree)

Trang 15

Mô hình cây có một bước post-pruning xác định mỗi node không lá (non-leafnode) cho dù độ chính xác MLR của nó là cao hơn độ chính xác ở cây con (subtree) Nếuvậy, cây con sẽ được “cắt tỉa” (pruned) Trong hình 10.5, mô hình tuyến tính ŷ = x được

sử dụng ở node gốc Kết quả nó là một cây không có nhánh

10.1.2.2 Các biển thể hồi quy thích ứng đa biến (Multivariable Adaptive Regression Splines - MARS)

MARS là một kĩ thuật nằm giữa hồi quy tuyến tính đa biến (MLR) và DTIAs.MLR giả sử một mối quan hệ tuyến tính giữa x và y trong khi CART giả định một hằnggiá trị ở mỗi node lá MARS và mô hình cây (model trees) với MLR trong các node lá tốthơn trong việc điều chỉnh cây cho các đối tượng Hình 10.6 cho thấy cây hồi quy suy diễnđược tạo bởi MLR, CART, mô hình cây mới MLR trong các lá, mà MARS cho cùng tập

dữ liệu

Mô hình cây (model trees) điều chỉnh MLR sử dụng các cá thể trong cùng mộtnode lá Và có thể có sự gián đoạn ở MLRs của hai node lá lân cận Luôn luôn có điểmchung trong hai “đoạn trải dài” lân cận của mô hình MARS Có thể thấy trong hình 10.6.Trong hình 10.7, sự khác biệt được thấy rõ ràng hơn

MARS có thể tạo mô hình tương tác giữa các thuộc tính dự đoán Biểu hiện củatương tác giữa hai thuộc tính dự đoán cho thấy sự ảnh hưởng của một thuộc tính dự đoántới giá trị đích là khác nhau với những giá trị khác nhau của từng thuộc tính dự đoán Vềmặt toán học, điều này có thể được biểu diễn bằng việc nhân hai thuộc tính dự đoán nàylại với nhau Khả năng thể hiện trong mô hình tồn tại các tương tác giữa các thuộc tính dựđoán làm tăng khả năng điều chỉnh dữ liệu của mô hình đó Tuy nhiên nó cũng làm tăng

độ phức tạp của mô hình và khả năng dẫn tới overfitting Mức độ tương tác xác định sốlượng của các thuộc tính đã nhân Có một siêu tham số xác định được mức độ tương táctối đa Giá trị của nó càng lớn thì mô hình càng linh hoạt và phức tạp hơn

Một mô hình được tạo bởi MARS có dạng:

(10.1)

Với Bi là hàm bản lề (hinge) hoặc là một kết quả của hàm bản lề khi có tương tác

giữa các thuộc tính dự đoán Một hàm bản lề có thể có hai dạng:

 max{0;x – c}

 max{0;c – x}

Trang 16

Hình 10 6 Giải quyết bằng một tập dữ liệu với (a) MLR, (b) CART, (c) model trees và

(d) MARS.

Trong các phương pháp này, x là một thuộc tính của các vector thuộc tính dự đoán

X, và c là một hằng số

Trang 17

Thuật toán MARS có hai bước: một bước trước (forward) trong đó tại mỗi lần lặplại thì một giới hạn (term) được thêm vào mô hình; và một bước sau (backward) trong đó

mô hình được rút gọn bằng cách loại bỏ một số giới hạn (term)

Hình 10 7 Chi tiết của một mô hình cây (model tree) và MARS sử dụng tập dữ liệu nhân

 Không cần tiêu chuẩn hóa

 Ít bị ảnh hưởng với những ngoại

lệ có thể có so với MLR

Nhược điểm:

 Những thuộc tính liên quan tớinhau có thể có vài ảnh hưởng đến

mô hình thu được

 Các ngoại lệ được quản lí dễ dànghơn nhưng vẫn có thể ảnh hưởngtới mô hình

Đánh giá và ước lượng kết quả (Acessing and Evaluating results): Giống MLR, mô

hình MARS có thể giải thích được, nhưng thường sẽ phức tạp hơn Hình 10.6 là một VD

về cách hoạt động của mô hình MARS

Trang 18

Thiết lập siêu-tham số (Setting the hyper-parameters): Siêu tham số chính của

MARS là mức độ xác định số lượng tối đa sự tương tác của các hàm bản lề (hingifunctions) Giá trị này thường có giá trị mặc định là 1 Giá trị nguyên (Interger Values)lớn hơn 1 có thể được thử bằng cách tăng thứ tự

Ưu điểm và nhược điểm của MARS: Bảng 10.3

10.2 Các thuật toán dựa trên tối ưu hóa (Opitimiztion-based Algorithms)

Phần này sẽ giới thiệu những khía cạnh chính của hai kĩ thuật “học” (learningtechniques) chính dựa trên một phương thức được tối ưu hóa nhất định: mạng nơ-ronnhân tạo (aritificial neural networks) và máy hỗ trợ vector (support vector machines)

10.2.1 Mạng nơ-ron nhân tạo

Mạng nơ-ron nhân tạo ( Artificial neural networks – ANNs) được phân phối trêncác hệ thống máy tính dựa trên hệ thống thần kinh (nervous system) Hệ thống thần kinhhọc theo những kinh nghiệm từ các lỗi mà chúng ta mắc phải VD: Nếu chúng ta đặt vàomột vật gì đó nóng, hệ thần kinh của chúng ta sẽ phát hiện và chúng ta sẽ bị đau Và sau

đó chúng ta sẽ thận trọng hơn khi đặt vào một vật gì đó nóng Một ANN sẽ thử cố mô tả

ý tưởng logic bằng cách sử dụng một kiến trúc mạng được cấu tạo từ các nơ-ron nhân tạo(còn gọi là các đơn vị xử lý)

Mỗi nơ-ron nhân tạo có một tập các kết nối đầu vào để nhận các giá trị đầu vào từcác vecto thuộc tính đầu vào hoặc nhận từ những nơ-ron khác Một giá trị trọng số(weight) gán với mỗi kết nối đầu vào sẽ mô phỏng các khớp thần kinh (synapses) trong

hệ thần kinh Một nơ-ron xác định các giá trị đầu ra của chúng bằng việc sử dụng mộthàm kích hoạt (activation function) cho tổng trọng số của đầu vào (weighted sum of itsinputs) Các hàm kích hoạt khác nhau đều được sử dụng trong hệ thống mạng nơ-ron(neural network community), từ các hàm tuyến tính cơ bản đến phức tạp Giá trị đầu ra cóthể là đầu ra của một ANN (ANN output) hoặc có thể được gửi tới các nơ-ron khác khimạng lưới có nhiều hơn một lớp nơ-ron

Giá trị trọng số mạng (network weight values) được xác định bằng một thuật toánhọc (leaning algorithm), nó cập nhật các giá trị trọng số dựa theo một hàm mục tiêu(objective function) Tập (học) tối ưu hóa (training optimizes) cho mỗi nơ-ron, các tham

số hàm mục tiêu (các trọng số nơ-ron – neural weights) để giảm thiểu lỗi dự đoán, sự sailệch giữa giá trị đầu ra của nơ-ron được tạo bởi hàm kích hoạt (activation function) và giátrị đầu ra kì vọng Đây là lý do tại sao thuật toán học ANN là dựa trên tối ưu hóa

ANN cũ nhất vẫn là sử dụng mạng lưới perceptron (Frank Rosenblatt) Perceptron

có một nơ-ron đơn và có thể học các tác vụ phân loại nhị phân Hàm kích hoạt (activation

Trang 19

function) được mạng perceptron sử dụng như một hàm bước lưỡng cực (hai cực), nó cóthể có hai giá trị đầu ra : +1 khi tổng trọng số của các giá trị đầu vào cao hơn giá trịngưỡng ban đầu; -1 cho các giá trị còn lại Vì vậy hàm bước còn gọi là hàm ngưỡng hoặchàm tín hiệu (signed function) Nếu giá trị thấp nhất là 0 thay vì -1, hàm sẽ trở thành mộtbước nhị phân (binary step).

Trọng số của một mạng lưới perceptron được cập nhật bởi thuật toán họcperceptron (perceptron learning algorithm) Thuật toán này sửa đổi các trọng số để giảmlỗi dự đoán của mạng perceptron, hay còn là một mô hình học mẫu gọi là học chỉnh sửa –lỗi (error-correcting learning) Một lỗi xảy ra khi đầu vào từ hàm kích hoạt perceptron đốivới mỗi vector thuộc tính đầu vào là khác nhau (giá trị đầu ra, giá trị mong đợi)

Thuật toán được sử dụng để huấn luyện một mạng perceptron được cho ở dưới.Trong thuật toán huấn luyện này, các đối tượng huấn luyện được biểu diễn lần lượt từngcái cho mạng perceptron, với x là vector thuộc tính dự đoán và y là đầu ra chính xác chovector đó trong D Mỗi biểu diễn của tất cả các ví dụ huấn luyện gọi là chu trình huấnluyện

Sau huấn luyện, giá trị trọng số mạng lưới có thể được sử dụng như một mô hìnhphân chia để dự đoán các lớp của một đối tượng mới trong một tập thử (test set) Nó đượcgọi là giai đoạn thử (test phase) Để dự đoán lớp của thuộc tính mới trong tập test, sửdụng mô hình dự đoán được tạo bởi thuật toán (một thuật toán đơn giản hơn tương tự cóthể được sử dụng) Điều này được trình bày ở thuật toán bên dưới

Năm 1962, Albert Novikoff đã chứng minh định lý hội tụ perceptron, nếu mộtmạng perceptron có thể học một tác vụ phân chia, thuật toán học của nó sẽ tìm đượctrọng số chính xác cho tác vụ đó Lưu ý rằng giá trị đầu ra dự đoán và gán nhãn cần phải

là một định lượng, vì vậy các giá trị định tính trong thuộc tính dự đoán của một tập dữliệu phải được chuyển về các giá trị định lượng

Thuật toán Perceptron Training

1 Đầu vào Dtrain tập training (training set)

2 Đầu vào xi các đối tượng trong tập training

3 Đầu vào yi nơ-ron dự đoán giá trị đầu ra cho xi (neuron predicted output value)

4 Đầu vào di nơ-ron ước lượng giá trị đầu ra cho xi (neuron desired output value)

5 Đầu vào n số lượng đối tượng trong tập training

6 Đầu vào m số lượng thuộc tính dự đoán cho các đối tượng

7 Xác định trong số ban đầu với giá trị bằng 0

8 Vòng lặp

9 Khởi tạo Errors với giá trị 0

Trang 20

10 Với tất cả các đối tượng xi trong Dtrain thực hiện

11 Tính nơ-ron đầu ra yi khi nhận đầu vào xi

12 Nếu yi ≠ di thì

13 Cập nhật trọng số m của xi

14 Dừng vòng lặp khi không có sự khác biệt nào (các lỗi dự đoán)

Thuật toán Perceptron test

1 Đầu vào Dtest tập test (test set)

2 Đầu vào xi đối tượng của tập set

3 Đầu vào yi nơ-ron dự đoán giá trị đầu ra cho xi

4 Đầu vào n số lượng đối tượng trong tập set

5 Đầu vào m số lượng thuộc tính dự đoán

6 Sử dụng mạng cảm ứng perceptron với trọng số đã được xác định trong giai đoạnhuấn uyện

7 Với tất cả đối tượng xi trong tập Dtest thực hiện

8 Tính toán nơ-ron đầu ra yi khi nhận đầu vào xi

9 Gán nhãn xi với lớp liên kết với giá trị yi

Hình 10 8 Mạng nơ-ron MLP với hai lớp ẩn (two hidden layers)

Trang 21

10.2.1.1 Lan truyền ngược (Backpropagation)

Lan truyền ngược sử dụng Gradient Descent để cập nhật trọng số mạng MLP.Gradient Descent xác định hướng cập nhật trọng số dẫn đến sự giảm thiểu tối đa các lỗi

do mạng MLP tạo ra Một ví dụ tương tự thường được sử dụng là: giả sử bạn đang đứng

ở một vị trí cụ thể trong một vùng đất gồ ghề, xung quanh có thung lũng và những ngọnđồi, và bạn muốn di chuyển đến vị trí thấp nhất của vùng đất đó Giả sử thêm rằng bạn bịbịt mắt Làm thế nào bạn có thể di chuyển đến điểm thấp nhất? Một phương pháp đơngiản và trực quan là sẽ cố gắng thử nhiều hướng khác nhau có thể với một bàn chân củabạn và di chuyển theo hướng mà làm cho bạn đi đến vị trí thấp nhất gần đó

Nó phải được chỉ ra rằng nếu một mạng MLP sử dụng một chức năng kích hoạttuyến tính trong neuron của lớp ẩn, nó có thể được hiển thị bằng cách thao tác ma trận màmạng này sẽ tương đương với một số mạng đơn lớp Perceptron Do đó, các mạng MLPphải sử dụng các hàm kích hoạt phi tuyến tính trong các lớp ẩn của chúng Bằng cách sửdụng các hàm kích hoạt phi tuyến tính, các mạng MLP được huấn luyện bởi thuật toántruyền ngược có thể giải quyết các vấn đề tách rời phi tuyến tính Chúng sử dụngGradient Descent của các hàm kích hoạt, do đó cần phải liên tục được xác định Việc sửdụng Gradient Descent làm cho việc học nhanh và hiệu quả hơn Thuật toán, như hìnhdưới đây, có mã giả của thuật toán truyền ngược, trong đó X là vector thuộc tính dự báo,

T là một vector với đầu ra thực của mỗi neuron đầu ra cho vector X từ D, và Y là vectorcủa y giá trị được tạo ra bởi mỗi neuron đầu ra cho X

Thuật toán lan truyền ngược, được hiển thị bên dưới, hoạt động như sau Khi mộtvector thuộc tính được trình bày cho một mạng MLP, mỗi neuron trong lớp ẩn thứ nhất

áp dụng một hàm kích hoạt cho các giá trị đầu vào có trọng số của nó Giá trị của hàmnày được sử dụng làm đầu vào bởi các neuron trong lớp kế tiếp Quá trình tương tự vẫntiếp tục, từng lớp một, cho đến khi đạt được lớp đầu ra Các giá trị hàm kích hoạt từ cácneuron trong lớp đầu ra là các giá trị thuộc tính nhãn mạng Các giá trị này được so sánhvới các giá trị thực và nếu chúng rất khác nhau, trọng số của mạng được cập nhật

Việc cập nhật bắt đầu trong các neuron đầu ra, nơi giá trị được dự đoán khác vớigiá trị thực Trọng số cập nhật đi từ lớp cuối cùng đến lớp ẩn thứ nhất, theo hướng ngượclại Sai số cho mỗi neuron trong mỗi lớp ẩn được ước tính bằng cách sử dụng các sai sốtrong các neuron của lớp kế tiếp được cân bằng bởi các giá trị trọng số của neuron lớphiện tại và các neuron trong lớp tiếp theo Lượng giá trị cập nhật phụ thuộc vào một siêutham số được gọi là tỷ lệ học Nó phải lớn hơn 0 Nó càng lớn thì quy trình học nhanhhơn, nhưng nguy cơ nhận được tối ưu địa phương/cục bộ cao hơn thay vì tối ưu toàncầu/toàn bộ mong muốn

Mô hình phân loại được học phụ thuộc vào số lớp và số lượng nút trên mỗi lớp.Các con số càng lớn, các mô hình phức tạp hơn có thể được tạo ra Khi một mạng MLPđược đào tạo bằng cách truyền ngược, một hoặc hai lớp ẩn được sử dụng Mỗi neuron

Trang 22

trong lớp đầu tiên của mạng MLP tìm hiểu vị trí và hướng của một siêu phẳng, chiakhông gian đầu vào Trong lớp ẩn thứ hai, mỗi neuron kết hợp một tập con của các siêuphẳng tìm thấy trong lớp trước, tạo ra một vùng lồi trong không gian đầu vào, bao gồmmột số đối tượng đào tạo Các nút trong lớp tiếp theo, thường là một lớp đầu ra, kết hợpcác vùng lồi này, tạo ra các vùng có hình dạng tùy ý.

Trong quá trình đào tạo MLP, vị trí và định hướng của các siêu phẳng, vị trí vàhình dạng của các khu vực lồi và không lồi tiếp tục thay đổi, như được minh họa, cho haithuộc tính tiên đoán và hai lớp, theo Hình 10.9 Hình 10.10 cho thấy cách các lớp và cácnút của mạng MLP phân chia không gian đầu vào cho hai thuộc tính dự báo, cho cùngmột tập dữ liệu như trước

Việc đào tạo cho các mạng MLP là tìm kiếm mô hình gần đúng nhất với mô hìnhđúng, chưa biết, đã tạo ra tập dữ liệu huấn luyện Tìm kiếm này được hướng dẫn bởi hiệusuất dự báo mạng Khi làm như vậy, việc đào tạo có thể tạo ra một mô hình overfitted, đó

là một mô hình chú ý quá nhiều đến chi tiết, thay vì các mẫu cơ bản trong dữ liệu huấnluyện Điều này dẫn đến các mô hình phức tạp và overfitted Khi xảy ra overfitted, thay vìhọc từ dữ liệu, mô hình ghi nhớ dữ liệu Kết quả là, nó có khả năng khái quát thấp Một

mô hình tổng quát tốt khi nó phân loại chính xác dữ liệu không có trong tập huấn luyện

Thuật toán Backpropagation training cho mạng MLP.

1: INPUT Dtrain – tập training (traning set)

2: INPUT Ytrue - vector đầu ra đúng

3: INPUT Ypred - vector đầu ra dự đoán

4: INPUT xi - đối tượng trong tập huấn luyện

5: INPUT yi - neuron dự đoán giá trị đầu ra cho đối tượng xi

6: INPUT di - neuron giá trị đầu ra mong muốn cho đối tượng xi

7: INPUT n - số lượng đối tượng trong tập huấn luyện

8: Khởi tạo error với các giá trị ngẫu nhiên trong phạm vi [−0.5, +0.5]

9: Vòng lặp

10: Khởi tạo ErrorTotal = 0

(forward do)

Trang 23

14: Tính toán đầu ra neuron yi khi nơron nhận được đầu vào xi hoặc đầu ra từ các neuron trong lớp trước

15: ErrorPartial = Ytrue - Ypred

16: ErrorTotal = ErrorTotal + ErrorPartial

21: Cho đến khi hiệu suất dự đoán được chấp nhận

Có một số lựa chọn thay thế sẽ làm giảm sự xuất hiện của overfitting Một trong số

đó, được gọi là "điểm dừng sớm", tách một phần của tập dữ liệu training để xác thực hiệusuất dự đoán tại một số mốc thời gian Tập dữ liệu này, được gọi là bộ xác nhận hợp lệ,không được sử dụng bởi thuật toán truyền ngược trực tiếp trong training mạng MLP, màthay vào đó được sử dụng để đánh giá hiệu suất dự đoán mạng theo thời gian Đầu tiên,hiệu suất dự đoán mạng cho dữ liệu training và dữ liệu xác thực tiếp tục được cải thiện.Khi hiệu suất dự đoán cho dữ liệu xác thực bắt đầu giảm, overfitting sẽ bắt đầu và quátrình training bị dừng lại

Có một số thuật toán đào tạo cho mạng MLP, cho phép người dùng lựa chọn phùhợp nhất cho một tác vụ dự đoán đã cho Bởi vì chúng rất rõ ràng trong việc phân chiakhông gian đầu vào, các mạng MLP đã thể hiện hiệu suất dự đoán cao trong các nhiệm vụphân loại khác nhau Không giống như các thuật toán cảm ứng cây quyết định, chỉ có thể

sử dụng các siêu phẳng song song với các trục đại diện cho các thuộc tính tiên đoán, cácmạng MLP có thể tạo ra các siêu phân tách với bất kỳ định hướng nào

Class A Class B

Trang 24

04 05

Hình 10 9 Cách MLP training hướng và vị trí của các siêu phẳng tách cùng hướng và vị

trí của các vùng tách lồi và không lồi.

Hình 10 10 Hướng và vị trí của siêu phẳng tách, hướng và vị trí của các khu vực cần

phải phân loại lồi và không lồi của một mạng MLP đã được training.

Hình 10.11 minh họa việc tách các vùng có thể được tạo ra bởi một mạng MLP đượchuấn luyện với truyền ngược và một thuật toán cảm ứng cây quyết định cho một tập dữliệu với hai thuộc tính tiên đoán và ba lớp

Trang 25

Thuật toán Phân loại các đối tượng mới sử dụng mạng neuron MLP.

1: INPUT Dtest - Bộ thử nghiệm (test set)

2: INPUT xi đối tượng trong tập kiểm tra

3: INPUT yi neuron dự đoán giá trị đầu ra cho đối tượng xi

4: INPUT n số đối tượng trong tập kiểm tra

5: INPUT m số thuộc tính dự đoán của các đối tượng

6: Sử dụng mạng MLP với trọng số được xác định trong giai đoạn training

7: Với tất cả các đối tượng xi trong Dtest, thực hiện

(forward do)

10: Tính toán đầu ra neuron yi khi neuron nhận được đầu vào xi hoặc đầu ra từ các neurontrong lớp trước

11: Gắn nhãn xi với lớp liên kết với các giá trị yi được dự đoán bởi các neuron trong lớp đầu ra

Trang 26

Một số ANN khác đã được đề xuất, chủ yếu cho các nhiệm vụ phân loại Nhưngcũng có các kỹ thuật ANN để phân cụm, hồi quy và theo dõi chuỗi thời gian Ngoài racòn có sự quan tâm lớn trong "học sâu", một tập hợp các kỹ thuật học tập cho các mạngthần kinh của một số lớp.

Đánh giá kết quả kiến thức thu được bởi một mạng thần kinh sau khi training của

nó được thể hiện bằng các giá trị trọng số liên kết với các kết nối mạng Một khái niệm đãhọc có thể được biểu diễn bằng một vài giá trị trọng số và một giá trị trọng số có thể đạidiện cho một phần của một số khái niệm đã học Sự biểu diễn tri thức được phân bố nàylàm cho việc diễn giải mô hình rất dễ dàng Hiệu suất dự đoán của mô hình gây ra có thểđược ước tính bằng cách sử dụng một biện pháp hiệu suất dự đoán phù hợp

Thiết lập siêu tham số Các sêu tham số chính của ANN và một thuật toán

training như truyền ngược với momentum là:

• Số lượng lớp: số lớp càng lớn thì các đối tượng được ANN trích xuất càng lớn;

• Số lượng các nút: số lượng nút càng lớn, khả năng xảy ra quá cao

• Tốc độ học: điều này cho thấy mức độ cập nhật trọng số là bao nhiêu; giá trị phảilớn hơn 0 và lớn hơn nó là quy trình học nhanh hơn nhưng cũng có nguy cơ dừng

ở mức tối ưu cục bộ càng lớn;

• Thuật ngữ momentum: điều này sử dụng các bản cập nhật trọng số trước đó đểcải thiện tìm kiếm;

• Số lượng kỷ nguyên: số lần tập huấn sẽ được trình bày;

• Chức năng kích hoạt: điều này xác định đầu ra từ mỗi neuron trong ANN chođầu vào nhận được và trọng số neuron, và cũng xác định được cảnh quan của giảipháp; các hàm kích hoạt khác nhau có thể được sử dụng cho các nhiệm vụ phânlớp và hồi quy, bao gồm:

- Hàm tuyến tính

- Hàm bước

- Hàm sigmoid

- Hàm sigmoid hoặc logistic

- Hàm tiếp tuyến hyperbol

- Hàm tuyến tính trực tiếp

Trang 27

Những ưu điểm và nhược điểm của ANN Những ưu điểm và nhược điểm của

ANN được nêu trong Bảng 10.4

Hầu hết các nhiệm vụ phân loại được giải quyết bởi các mạng MLP thường có 1hoặc 2 lớp ẩn Một lớp đơn có đủ số lượng neuron có thể, với độ chính xác tùy ý, gầnđúng bất kỳ hàm liên tục đa biến nào [38] Có thể dễ dàng chỉ ra rằng, với hai lớp ẩn,được cung cấp một tập dữ liệu đào tạo đại diện, một số lượng lớn nơron và chức năngkích hoạt thích hợp trong mỗi lớp, bất kỳ chức năng phân loại nào cũng có thể học được.Tuy nhiên, trái ngược với thuật toán đào tạo của từng người, nếu một hàm có thể họcđược, nó sẽ được học, không có sự đảm bảo với backpropagation rằng một hàm có thểhọc được bằng một mạng MLP hai lớp ẩn sẽ được học

Bảng 10 4 Những ưu điểm và nhược điểm của ANN.

• Mô hình di chuyển để diễn giải

• Các thuật toán đào tạo là ngẫu nhiên: các mô hình khác thường thu được trong các thuật toán khác nhau của thuật toán

• Đào tạo thường có chi phí tính toán cao

• Thiếu nền tảng toán học vững mạn

10.2.1.2 Mạng sâu và thuật toán học sâu

Với các tài nguyên tính toán hiện tại, như giới thiệu các đơn vị sản xuất đồ họa(GPU) và truy cập vào các bộ huấn luyện rất lớn, vấn đề suy giảm này đã trở nên ítnghiêm trọng hơn Các thuật toán học tập sâu (DL), là các thuật toán học tập có thể đàotạo các mạng MLP với ít nhất hai lớp ẩn [39], được gọi là các mạng sâu, đã trở nên phổbiến Các mạng MLP với một số lượng nhỏ các lớp ẩn, thường chỉ là một lớp, được gọi làcác mạng MLP nông Trong phần tiếp theo, một số kiến trúc mạng MLP chính sâu vàthuật toán DL sẽ được mô tả

Trang 28

Trong những năm gần đây, thu được kết quả rất tốt khi sử dụng các mạng sâutrong một số ứng dụng đã thu hút sự quan tâm mạnh mẽ của cả các tổ chức nghiên cứu vàcông ty Theo kết quả thử nghiệm được báo cáo trong tài liệu phân tích dữ liệu, các mạngsâu được đào tạo bởi thuật toán DL đã thể hiện hiệu suất dự đoán vượt trội so với cácthuật toán ML khác trong một số lĩnh vực ứng dụng, bao gồm:

Trong nhiều tác vụ dự đoán, các tính năng cần được trích xuất từ dữ liệu thô trướckhi sử dụng thuật toán học Các tính năng này, được sử dụng làm thuộc tính dự báo, sẽthể hiện các khía cạnh của dữ liệu có liên quan đến các nhiệm vụ dự đoán và đồng thời,

bỏ qua các khía cạnh không liên quan Các chuyên gia về con người khai thác các tínhnăng này thường đòi hỏi kiến thức về miền và kỹ năng tham gia và kết quả là chi phí cao

Một trong những lý do chính cho sự thành công của DL là việc phân chia côngviệc mạng thành hai giai đoạn Giai đoạn đầu tiên bao gồm các lớp đầu tiên và thườngđược đào tạo trước, thường là với cách tiếp cận không giám sát Việc đào tạo tiếp theocủa các lớp trong giai đoạn thứ hai thường được giám sát

Các lớp trong giai đoạn đầu tiên được đào tạo để trích xuất các tính năng có liênquan từ một bộ dữ liệu thô Một trong những đóng góp chính của DL với đào tạo trước làviệc trích xuất tự động các tính năng có liên quan bằng các thuật toán học tập có mụcđích chung [41] Do đó, đào tạo trước thường được sử dụng để trích xuất các tính năngcho các tác vụ phân loại, trong đó việc trích xuất các tính năng của một chuyên gia miền

sẽ không nhất thiết dẫn đến các tính năng hỗ trợ cho việc tạo ra các mô hình phân loạihiệu quả

Lớp mạng đầu tiên trích xuất các tính năng đơn giản từ dữ liệu thô Các lớp thànhcông sử dụng các tính năng được trích xuất từ lớp trước để trích xuất các tính năng phức

Trang 29

tạp hơn, phức tạp hơn Do đó, quá trình đào tạo tạo ra, từ lớp đầu tiên đến lớp cuối cùng,mức độ biểu diễn dữ liệu ngày càng phức tạp Mỗi mức độ phẫn nộ có thể được xem nhưmột mô-đun hoặc lớp thực hiện xử lý đơn giản và phi tuyến tính Mỗi mô-đun biến đổiđại diện được trích xuất bởi mô-đun trước đó.

Sự phổ biến hiện nay của các kỹ thuật DL đã dẫn đến việc đề xuất các kiến trúc vàthuật toán học tập thứ bảy Một cách tiếp cận đơn giản cho DL là đào tạo mạng MLP củamột số lớp bằng cách sử dụng backpropagation Cho đến gần đây, trong quá trình đào tạocác thí nghiệm MLP với các thuật toán backpropagation, các hàm kích hoạt được sử dụngthường xuyên nhất là tiếp tuyến sigmoid hoặc hyperbolic

Để cải thiện hiệu suất học tập khi một số lớp được sử dụng, chức năng kích hoạtmới, chức năng kích hoạt đơn vị tuyến tính (ReLU) đã được sử dụng Khi hàm ReLUđược áp dụng cho một giá trị, nó trả về 0 nếu giá trị âm và chính giá trị đó

Việc sử dụng chức năng ReLU giúp cho việc cập nhật trọng số mạng nhanh hơn:phép tính của độ dốc giảm dần, được sử dụng để cập nhật trọng số cho chức năng ReLU,nhanh hơn so với các chức năng kích hoạt phi tuyến tính phổ biến khác Do đó, ReLUtăng tốc học tập, điều đặc biệt đáng hoan nghênh cho các mạng MLP có nhiều lớp ReLU

có một động lực sinh học mạnh mẽ và đơn giản hơn về mặt toán học

Một trong những kỹ thuật DL được đào tạo trước phổ biến nhất là sử dụng mạngthần kinh liên hợp (CNNs), còn được gọi là ConvNets Các CNN sử dụng phương pháphọc tập chưa được kiểm tra để trích xuất các tính năng - thuộc tính dự đoán - từ dữ liệuthô Lớp mạng đầu tiên trích xuất các tính năng đơn giản từ dữ liệu thô Các lớp kế tiếp

sử dụng các tính năng được trích xuất từ lớp trước để trích xuất các tính năng phức tạp,phức tạp hơn Vì vậy, việc đào tạo trước tạo ra các mức độ đại diện ngày càng phức tạp.Mỗi mức đại diện có thể được xem như mô-đun hoặc lớp thực hiện xử lý đơn giản và phituyến tính Mỗi mô-đun biến đổi đại diện được trích xuất bởi module trước

Phần lớn sự nổi tiếng được tạo ra bởi các thuật toán DL trong những năm gần đây

là do hiệu suất ấn tượng của CNN khi áp dụng cho nhận dạng hình ảnh Các CNN bắtchước cách một hình ảnh được xử lý trong não, bắt đầu bằng việc trích xuất các tính năngrất đơn giản, như đường và đường cong và trích xuất dần các tính năng tăng độ phức tạp.Một CNN bao gồm các loại lớp khác nhau được tổ chức thành hai giai đoạn xử lý Giaiđoạn đầu tiên có một cặp lớp: một lớp chập, trích xuất các bản đồ đặc trưng từ đầu vàobằng cách sử dụng các lớp, sau đó là một lớp gộp, chỉ giữ các thông tin phù hợp nhất từ các bản đồ đặc trưng Kết quả là, biểu diễn dữ liệu đầu vào trở nên trừu tượng hơn Khinhiều mô-đun được sử dụng, các biểu diễn phức tạp hơn được tìm thấy Giai đoạn thứ haithường là mạng MLP thông thường, với các lớp kích hoạt Các tính năng được trích xuất

Trang 30

bởi các lớp giai đoạn đầu tiên có thể được sử dụng làm thuộc tính dự đoán bằng các kỹthuật học tập có giám sát.

Một số kỹ thuật DL khác có thể được tìm thấy trong tài liệu, bao gồm:

Đánh giá kết quả Thông tin được cung cấp bởi các mô hình mà ANN đã học là cácgiá trị trọng lượng đã học, như trong Hình 10.8, giống như trường hợp của các kiến trúcđược sử dụng cho DL Thông tin này là khó để giải thích Các giá trị dự đoán có thể đượcđánh giá và đánh giá bằng cách sử dụng thước đo hiệu suất phù hợp

Thiết lập siêu tham số Siêu tham số cho mạng sâu và thuật toán DL rất giống vớitham số được sử dụng để định nghĩa kiến trúc mạng MLP và cách thuật toán học nhưbackpropagation sẽ hoạt động Có các siêu tham số khác để chọn, tùy thuộc vào mạng sâuđược sử dụng Đối với mạng CNN, các tham số siêu sau có thể được điều chỉnh:

• Số lớp CNN (tích chập và gộp);

• Số lượng các lớp được kết nối đầy đủ;

• Số lượng tế bào thần kinh trong các lớp được kết nối đầy đủ;

• Kích thước fillter trong các lớp chập;

• Kích thước nhóm tối đa trong các lớp gộp;

• Thuật toán training;

• Tốc độ học: điều này cho thấy mức độ cập nhật trọng lượng lớn như thế nào; giátrị phải lớn hơn 0 và càng lớn thì quá trình học càng nhanh, nhưng nguy cơ dừnglại ở mức tối ưu cục bộ càng cao;

• Thuật ngữ momentum: sử dụng các cập nhật trọng số trước đó để cải thiện tìmkiếm;

• Số lượng kỷ nguyên: số lần training sẽ được thực hiện;

• Chức năng kích hoạt, định nghĩa đầu ra từ mỗi nơ ron trong ANN và, đối với lớpđầu ra, đầu ra ANN Nó cũng định nghĩa cảnh quan giải pháp Các hàm kích hoạt

Trang 31

khác nhau có thể được sử dụng cho các tác vụ hồi quy và hồi quy phân loại, baogồm:

- Hhàm tuyến tính

- Hàm năng bước

- Hàm sigmoid

- Hàm sigmoid hoặc logistic

- Hàm tiếp tuyến hyperbol

- Hàm tuyến tính trực tràng

Ưu điểm và nhược điểm của Deep Learning Các ưu điểm và nhược điểm của

DL được nêu trong Bảng 10.5

Bảng 10 5 Ưu điểm và nhược điểm của DL.

Ưu điểm

• Thể hiện hầu hết các khía cạnh tích cực

của ANNs

• các mô hình mạng lưới sâu đã thể hiện

hiệu suất rất tốt trong nhiều vấn đề thực

tế, vượt trội so với một số các thuật toán

ML tiên tiến nhất

• Rất mạnh mẽ khi có tiếng ồn

• Có thể trích xuất các tính năng có liên

quan từ dữ liệu thô

• Tương tự như một số tính năng được tìm thấy trong hệ thống thần kinh

Nhược điểm

• Trưng bày hầu hết các trường hợp của ANN

• DL cần một số lượng lớn các ví dụ đào tạo

• Thiếu nền tảng toán học mạnh mẽ

Trang 32

Mạng MLP, dù nông hay sâu, đều có hai nhược điểm Đầu tiên là sự lựa chọn củacác giá trị siêu tham số tốt Thông thường, việc lựa chọn các giá trị này được thực hiệnbằng thử nghiệm và lỗi hoặc sử dụng siêu dữ liệu tối ưu hóa, cả hai đều tốn thời gian.Khía cạnh tiêu cực thứ hai là khả năng tương tác kém của các mô hình cảm ứng.

10.2.2 Hỗ trợ máy Vector

Hai trong số các thuật toán học ANN - tạo ra các mô hình di động cho các hoạtđộng khác nhau và thiếu nền tảng toán học - được khắc phục bằng các máy vectơ hỗ trợ(SVM), còn được gọi là các mạng hỗ trợ [42, 43] Dựa trên lý thuyết học thống kê, cácSVM có một nền tảng toán học mạnh mẽ

Các SVM ban đầu được thiết kế cho các nhiệm vụ hồi quy và phân loại nhị phân.Khi được áp dụng cho các nhiệm vụ phân loại nhị phân, thuật toán học SVM tìm kiếmcác mô hình phân loại kết hợp độ chính xác dự đoán cao và độ phức tạp mô hình thấp Đểkết thúc này, các đối tượng đào tạo từ các lớp khác nhau được chọn là các vectơ hỗ trợ.Các vectơ này là một đường viền quyết định có thể tối đa hóa biên phân tách giữa đườngviền và các đối tượng của hai lớp Vì lý do này, họ còn được gọi là những người có tỷsuất lợi nhuận lớn Tối đa hóa lề làm giảm số lượng các mô hình có thể và tăng khả năngkhái quát hóa mô hình, và do đó xảy ra tình trạng quá tải Hình 10.12 minh họa các lềphân tách được định nghĩa bởi các vectơ hỗ trợ, như được chọn bởi một SVM Phân loạinhị phân nổi tiếng khác, perceptron ANN, không liên quan đến vị trí và hướng của đườngviền quyết định, với điều kiện là đường viền ngăn cách các đối tượng của hai lớp

Hình 10 12 Biên độ lớn được xác định bởi các vectơ hỗ trợ SVM.

Trang 33

Hình 10.13 minh họa các đường viền quyết định được tìm thấy, cho cùng một tập

dữ liệu huấn luyện, bằng các thuật toán học tập perceptron và SVM

Hình 10 13 Biên giới quyết định được tìm thấy bởi (bên trái) perceptron và (phải) thuật

toán học tập SVM.

Để tăng kích thước của lề tách, một số đối tượng có thể được cho phép bên trong

lề tách Hình 10.14 cho thấy cách tăng biên SVM bằng cách cho phép một số đối tượngbên trong nó Những đối tượng này được gọi là biến slack của người Viking

Hình 10 14 Tăng lề tách bằng cách cho phép một số đối tượng được đặt bên trong lề

tách.

Giống như các mạng perceptron, các SVM, trong thiết kế ban đầu của chúng, chỉ

có thể xử lý các tác vụ phân tách tuyến tính Tuy nhiên, SVM có thể sử dụng các hàmnhân để chuyển đổi dữ liệu có thể phân tách phi tuyến tính, từ không gian ban đầu của nó,

Trang 34

sang một không gian có chiều cao hơn, nơi nó trở nên phân tách tuyến tính Hình 10.15minh họa cách chuyển đổi này có thể xảy ra.

Hình 10 15 Ví dụ về việc sử dụng hàm kernel để chuyển đổi một nhiệm vụ phân loại phi tuyến tính trong một không gian hai chiều thành một nhiệm vụ phân loại tuyến tính trong

một không gian ba chiều.

Hình 10 16 Biên

độ mềm trong bài toán hồi quy và cách tính 𝜁.

Như đã đềcập trước đó, cácSVM cũng bị giớihạn trong các tác vụphân loại nhị phân.Tuy nhiên, như sẽthấy trong Chương 11, một số chiến lược đã được đề xuất để cho phép áp dụng các SVMcho các nhiệm vụ phân loại nhiều lớp

Trang 35

10.2.2.1 SVM cho hồi quy

Sự khác biệt chính giữa phân loại SVM và hồi quy SVM là dựa trên định nghĩacủa hàm lỗi và do đó, vấn đề tối ưu hóa được hình thành như một vấn đề lập trình tuyếntính Trong cả hai bài toán phân loại và hồi quy, một hàm sai số biên độ mềm được sửdụng Tuy nhiên, các hàm này có các định nghĩa trong công thức hồi quy và phân loại

Trong cả hai vấn đề, 𝜁 là khoảng cách của một thể hiện chùng đến lề mềm Trongphân loại, vấn đề tối ưu hóa là tối đa hóa lề phân tách, như trong hình 10.14 Tuy nhiên,trong hồi quy, vấn đề tối ưu hóa là tối thiểu hóa lề, như trong hình 10.16

Đánh giá và đánh giá kết quả Thông tin về mô hình đã học bao gồm các vectơ hỗtrợ: các đối tượng xác định lề mềm Thông tin như vậy là khó để giải thích Các giá trị dựđoán có thể được đánh giá và đánh giá như bình thường với thước đo hiệu suất dự đoánphù hợp

Thiết lập siêu tham số

Các siêu tham số chính của SVM là:

• C: chi phí vi phạm ràng buộc cho cài đặt phân loại; giá trị của nó càng lớn, biên

độ sẽ càng phức tạp, thường có nhiều vectơ hỗ trợ hơn Giá trị của C quá lớn cóthể thúc đẩy quá mức

• 𝜈: tương tự như siêu tham số C nhưng nằm trong khoảng từ 0 đến 1 Vì lý donày, việc đặt giá trị dễ dàng hơn so với giá trị của C Một số triển khai của SVM

sử dụng tham số siêu hyper thay vì C

• 𝜖: kiểm soát độ rộng của vùng không nhạy for cho cài đặt hồi quy, như trongHình 10.16 Giá trị của nó có thể thay đổi số lượng vectơ hỗ trợ Thông thường,các giá trị bigger lớn hơn tạo ra các mô hình có ít vectơ hỗ trợ hơn, dẫn đến ướctính thay đổi

• Kernel: kernel nên được chọn cùng với các tham số siêu riêng của chúng Một sốhạt nhân được sử dụng phổ biến nhất và các tham số siêu tương ứng của chúng là:

- Tuyến tính: định nghĩa một lề tuyến tính và không có siêu tham số cụ thể;

- Hàm cơ sở xuyên tâm: còn được gọi là hạt nhân Gaussian: hàm phân phốikhả năng của phân phối Gaussian (bình thường) (Mục 2.2.4) Nó có 𝛾 làsiêu tham số của nó

Ưu điểm và nhược điểm của SVM Ưu điểm và nhược điểm của SVM được nêu

trong Bảng 10.6

Trang 36

Bảng 10 6 Ưu điểm và nhược điểm của SVM.

Ưu điểm

• Mô hình SVM có nền tảng lý thuyết

vững chắc

• Các mô hình SVM đã thể hiện hiệu suất

dự đoán tốt trong nhiều vấn đề

• Tương tự như một số tính năng được

tìm thấy trong hệ thống thần kinh

• Kỹ thuật ban đầu chỉ có thể xử lý cáctác vụ phân loại nhị phân

10.3 Đánh giá lần cuối

Mặc dù thành công ngày càng tăng của DTIA (decision tree induction algorithms thuật toán cảm ứng cây quyết định), ANN (Artificial neural networks - mạng nơron nhântạo) và SVM (support vector machines - máy hỗ trợ vector) và sự quan tâm ngày càngtăng trong DL (Deep learning - học sâu), một vài mặt của các phương pháp này cần đượcgiải quyết

-Hầu hết các ứng dụng hiện tại giả định rằng tất cả các dữ liệu liên quan đều có sẵn,thường không đúng, vì trong hầu hết các ứng dụng, dữ liệu mới được tạo liên tục trongluồng dữ liệu Khai thác luồng dữ liệu đặt ra một số thách thức đối với các kỹ thuật hiệntại Các thuật toán để khai thác luồng dữ liệu cần phải có khả năng học nhanh, học saukhi xem từng ví dụ một lần và tự động điều chỉnh mô hình để thay đổi xuất hiện trongcấu hình lớp (phát hiện thay đổi khái niệm) và sự xuất hiện của các lớp mới (phát hiệnmới lạ) Kết quả là, các mô hình dự báo cũng phải có khả năng bỏ đi kiến thức đã lỗi thời

Ngày đăng: 04/08/2020, 00:28

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w