Chương 5: Phương pháp học máy đề xuất
5.1. Một số kỹ thuật sử dụng trong phương pháp đề xuất
Những kinh nghiệm có được từ đánh giá hiệu quả thông qua thực nghiệm có thể cũng được sử dụng trong việc xác định các tham số của mô hình [9]. Tuy nhiên, cách này chỉ thực hiện được trong một số trường hợp dữ liệu và mô hình giản đơn, ví dụ việc xác định tham số K trong K hàng xóm gần nhất, còn đối với các trường hợp khác là rất khó xác định các tham số của mô hình. Dưới đây, chúng ta xem xét phương pháp kiểm chứng chéo, đây là một trong những phương pháp được sử dụng tương đối phổ biến trong việc xác định các tham số mô hình.
Hold-out Validation: Đây là phương pháp đơn giản nhất, đầu tiên chúng ta chia ngẫu nhiên tập dữ liệu ra thành hai tập dữ liệu con tập tập huấn và tập kiểm tra. Giả sử K là một tham số của mô hình mà chúng ta chưa biết. Chúng ta chọn một tập hợp các giá trị có thể của K, ví dụ K=1,…,5. Đối với mỗi giá trị có thể của K, chúng ta học một mô hình trên tập huấn luyện, và tính toán lỗi của mô hình trên tập kiểm tra, ví dụ là bình phương lỗi . Sau đó, ta sẽ chọn giá trị K là giá trị sao cho lỗi của mô hình trên tập kiểm tra là bé nhất. Nếu mô hình có nhiều tham số thì việc áp dụng với các tham số khác cũng tương tự. Tuy nhiên, chúng ta phải thử nhiều các khả năng có thể của K để tìm ra giá trị nào của K là tốt nhất. Có một vấn đề đối với phương pháp này đó là: chúng ta chỉ sử dụng một số lượng ít dữ liệu cho tập tập huấn khi cố định các tham số mô hình khác, do đó chúng ta sẽ chỉ có một kết quả tốt nếu tập tập huấn ban đầu của chúng ta thực sự lớn. Trong trường hợp dữ liệu là “đắt” hoặc không thể thu thập được, thì vấn đề trên quả là một vấn đề hết sức nghiêm trọng.
N-Fold Cross Validation: Chúng ta có thể sử dụng dữ liệu một cách hiệu quả hơn bằng việc sử dụng N-fold cross validation. Trong phương pháp này, chúng ta chia một cách ngẫu nhiên tập dữ liệu thành N tập con với kích cỡ bằng nhau và chạy giải thuật học N lần. Trong mỗi lần chạy, một tập con trong số N tập được chọn là tập kiểm tra và mô hình được tập huấn trên N-1 tập còn lại. Giá trị của K được tính bằng việc trung bình các lỗi trong mỗi lần kiểm tra. Chúng ta có thể chọn giá trị của K có giá trị lỗi nhỏ nhất, sau đó tính toán các tham số mô hình khác dựa theo mô hình có K nhỏ nhất này. Theo kinh nghiệm, cách chọn lựa N tốt nhất là chọn N=M-1 trong đó M là số lượng điểm dữ liệu. Cách chọn lựa này được gọi là leave-one-out cross-validation.
Phương pháp N-fold cross validation là một trong những phương pháp được đánh giá tốt trong việc xử lý vấn đề over-fitting khi xây dựng mô hình [10-11], tuy nhiên phương pháp này có nhược điểm là tiêu tốn rất nhiều thời gian do việc phải thực hiện nhiều lần giải thuật học.
5.1.2. Lý thuyết Bayes
Lý thuyết Bayes được đặt theo tên nhà khoa học người Anh Thomas Bayes ở thế kỷ 18, ông là một trong những nhà khoa học tiên phong đặt nền móng cho lý thuyết xác suất và lý thuyết quyết định.
Giả sử X là một tập dữ liệu, theo Bayes, X được xem là bằng chứng và X được mô tả bằng việc đo lường được thực hiện trên một tập n các thuộc tính. Giả sử H là một giả thiết cho rằng tập dữ liệu X thuộc về một lớp C nào đó. Đối với các vấn đề liên quan đến việc phân lớp chúng ta muốn xác định P(H|X), là xác suất mà giả thiết H có được từ những dữ liệu X. Nói một cách khác chúng ta đang tìm kiếm xác suất mà dữ liệu X thuộc về lớp C, khi chúng ta biết các thuộc tính mô tả của dữ liệu X.
P(H|X) được gọi là hậu xác suất (posterior probability) của H trên bộ dữ liệu X. Ví dụ, chúng ta có bộ dữ liệu về các khách hàng được mô tả bởi hai thuộc tính là tuổi và thu nhập, trong đó X là dữ liệu về khách hàng có tuổi từ 35 trở lên và có thu nhập 40000 đô la. Giả sử H là giả thiết rằng khách hàng của chúng ta sẽ mua máy tính, thì P(H|X) thể hiện xác suất khách hàng sẽ mua máy tính và chúng ta đã biết trước được độ tuổi và thu nhập của khách hàng.
Ngược lại P(H) được gọi là tiền xác suất (prior probability) của H. Trong ví dụ của chúng ta, đây là xác suất mà bất cứ khách hàng nào mua máy tính bỏ qua các yếu tố về độ tuổi, thu nhập hay bất kỳ thông tin nào khác. Như đã tìm hiểu ở trên, hậu xác suất P(H|X), được tính toán dựa vào nhiều thông tin hơn (ví dụ như thông tin khách hàng) hơn tiền xác suất P(H).
Tương tự P(X|H) là hậu xác suất của X thỏa mãn điều kiện H. Đó là xác suất một khách hàng, X, có độ tuổi lớn hơn 35, có thu nhập 40000 đô la sẽ mua máy tính. P(X) là tiền xác suất của X, trong ví dụ của chúng ta đó là xác xuất một người có độ tuổi lớn hơn 35 và thu nhập 40000 đô la trong tập các khách hàng của chúng ta.
Câu hỏi đặt ra là các xác xuất trên được ước tính như thế nào? P(H), P(X|H) và P(X) có thể được ước tính từ tập dữ liệu. Lý thuyết Bayes đưa ra một cách tính hậu xác suất P(H|X) từ P(H), P(X|H) và P(X). Theo Bayes P(H|X) được tính như sau:
5.1.3. Phân lớp Native Bayes
Bộ phân lớp Native Bayes làm việc như sau:
1. Gọi D là tập huấn luyện của một tập dữ liệu. Bộ dữ liệu được biểu diễn bởi các véc tơ thuộc tính n chiều X=(x1, x2,…,xn), n đo lường được thực hiện trên bộ dữ liệu từ n thuộc tính lần lượt là A1, A2,…,An.
2. Giả sử rằng có m lớp, C1, C2,…,Cm. Giả sử có véc tơ X=(x1, x2,…,xn), bộ phân lớp sẽ dự báo rằng X thuộc về lớp mà có giá trị của hậu xác suất là lớn nhất theo các điều kiện dữ liệu trên X. Do đó, bộ phân lớp Bayes sẽ dự đoán véc tơ X thuộc về lớp Ci nếu và chỉ nếu:
P(Ci|X) > P(Cj|X) 1≤ j≤m, j≠i
Do đó, chúng ta cực đại hóa P(Ci|X). Lớp Ci trong đó P(Ci|X) là cực đại được gọi là hậu giả thuyết lớn nhất (maximum posterior hypothesis). Theo lý thuyết Bayes:
3. Nếu P(X) là như nhau đối với tất cả các lớp thì chỉ có cần cực đại. Nếu tiền xác suất của các lớp là không xác định được thì chúng ta có thể giả thiết là xác suất của các lớp là như nhau P(C1) = P(C2)=…=P(Cm), và do đó chúng ta chỉ cần cực đại hóa .
4. Với một tập dữ liệu có nhiều thuộc tính thì rất có thể chi phí cho việc tính toán là rất lớn. Nhằm giảm chi phí tính toán trong việc đánh giá , một giả thuyết về điều kiện độc lập lớp được đưa ra. Giả thuyết
này dựa trên giả định là các thuộc tính là độc lập với nhau hay nói một cách khác không có mối quan hệ phụ thuộc giữa các thuộc tính. Vì vậy
= x x … x
5. Để dự đoán lớp mà X có thể thuộc vào được đánh giá đối với mỗi lớp Ci. Bộ phân lớp sẽ dự đoán lớp mà X thuộc vào là Ci nếu và chỉ nếu:
1≤ j≤m, j≠i
Một vài nghiên cứu trước đây [12] đã chỉ ra rằng bộ phân lớp Native Bayes tỏ ra mạnh hơn bộ phân lớp của cây quyết định và mạng neural trong một vài lĩnh vực.
Theo lý thuyết, bộ phân lớp Bayes có tỷ lệ lỗi nhỏ nhất so với các bộ phân lớp khác.
Tuy nhiên, trên thực tế điều này không phải luôn đúng trong mọi trường hợp do việc xác định đúng các giả thuyết để sử dụng trong Bayes là một điều không dễ dàng cũng như những khó khăn trong việc tính toán xác suất của dữ liệu hiện có.