Chương 1 trình bày những kiến thức về học máy. Phân loại các thuật toán về học máy dựa vào cách thức học và dựa vào chức năng, các bước để xây dựng một mô hình bằng phương pháp học máy. Cách đánh giá mô hình học máy bằng các phương pháp thông dụng hiện nay cũng được trình bày.1 Tổng quan về học máy Trong khoa học máy tính, để giải quyết một bài toán ta cần một thuật toán. Thuật toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự nhất định để biến dữ liệu đầu vào thành dữ liệu đầu ra.
Ví dụ thuật toán sắp xếp một dãy số ta cần dữ liệu đầu vào là một tập hợp các số và dữ liệu đầu ra là một dãy số được sắp xếp theo thứ tự tăng dần hoặc giảm dần. Đối với một bài toán có nhiều thuật toán khác nhau để giải, chúng ta thường quan tâm đến việc tìm ra thuật toán hiệu quả nhất theo tiêu chí độ phức tạp của thuật toán, số lượng bộ nhớ cần cho thuật toán hoặc cả hai tiêu chí trên. Tuy nhiên, có một số bài toán không có thuật toán để giải. Ví dụ, bài toán phát hiện thư rác từ những thư chính thống.
Đầu vào của bài toán là một thư, đầu ra của bài toán là thư đó có phải là thư rác hay không. Nhưng chúng ta không biết làm thế nào để trả lời câu hỏi này. Hay nói cách khác, chúng ta không có thuật toán để biến đổi từ đầu vào thành đầu ra. Chúng ta không biết được những thư nào được xem là thư rác bằng một thuật toán.
Những gì chúng ta thiếu kiến thức, chúng ta sẽ bù vào bằng dữ liệu. Máy tính có thể thông qua hàng nghìn bức thư trong đó có thư rác, để học hỏi về những gì liên quan đến thư rác trong đó. Nói cách khác, chúng ta muốn máy tính tự động trích xuất thuật toán cho các bài toán này. Có rất nhiều ứng e 8 dụng mà chúng ta không có thuật toán nhưng có nhiều dữ liệu rất lớn.Với những tiến bộ trong kỹ thuật máy tính, ngày nay chúng ta có thể lưu trữ và xử lý một lượng dữ liệu lớn, cũng như truy cập nó từ xa qua mạng máy tính.
Hầu hết các thiết bị thu thập dữ liệu là kỹ thuật số hiện nay lưu trữ dữ liệu đáng tin cậy. Ví dụ, chúng ta quan tâm đến một chuỗi siêu thị có hàng trăm cửa hàng trên khắp một quốc gia, bán hàng ngàn loại hàng hóa cho hàng triệu khách hàng mỗi ngày. Thiết bị đầu cuối tại các điểm bán hàng ghi lại chi tiết của từng giao dịch: ngày, mã nhận dạng khách hàng, hàng hóa đã mua và số tiền của họ, tổng số tiền chi tiêu, v. Và hàng gigabyte dữ liệu mỗi ngày được sinh ra.
Từ dữ liệu này, họ có thể dự đoán ai là khách hàng tiềm năng cho một vài sản phẩm. Một lần nữa, thuật toán cho bài toán này là không rõ ràng; nó thay đổi theo thời gian, theo vị trí địa lý và nhiều yếu tố khác. Dữ liệu được lưu trữ chỉ trở nên hữu ích khi được phân tích và biến thành thông tin mà chúng ta có thể sử dụngđể đưa ra dự đoán. Chúng ta có thể không xác định được hoàn toàn quy tắc xử lí nhưng chúng ta có thể xây dựng một xấp xỉ tốt và hữu ích, mà dựa vào đó có thể không giải thích được chi tiết nhưng vẫn có thể giải quyết được bài toán.
Nói cách khác, mặc dù có thể không thực hiện được chính xác quy trình hoàn chỉnh nhưng chúng ta vẫn có thể phát hiện các mẫu hoặc quy tắc nhất định. Việc này rất thích hợp cho học máy. Các mẫu như vậy giúp chúng ta hiểu quy trình thực hiện hoặc sử dụng các mẫu đó để đưa ra dự đoán. Giả sử rằng tương lai, ít nhất là trong tương lai gần, sẽ không khác nhiều so với quá khứ của dữ liệu mẫu được thu thập, khi đó dự đoán trong tương lai cũng có thể được mong đợi là chấp nhận được.
Áp dụng phương pháp học máy vào cơ sở dữ liệu lớn được gọi là khai thác dữ liệu. Tương tự như một khối lượng lớn đất và nguyên liệu thô được e 9 khai thác từ mỏ cho vào xử lí để được một lượng nhỏ nguyên liệu rất quý. Trong khai thác dữ liệu cũng vậy, một lượng lớn dữ liệu được đưa vào xử lí để xây dựng một mô hình đơn giản với việc sử dụng có giá trị, ví dụ như có độ dự đoán chính xác cao. Các lĩnh vực áp dụng của học máy rất phong phú.Trong lĩnh vực tài chính ngân hàng, phân tích dữ liệu trong quá khứ để xây dựng mô hình, ứng dụng trong tín dụng, phát hiện gian lận, dự báo thị trường chứng khoán.
Trong sản xuất, các mô hình học máy được sử dụng để tối ưu hóa, kiểm soát và xử lý sự cố. Trong y học, các chương trình học tập được sử dụng để chẩn đoán y tế. Trong viễn thông, các mẫu cuộc gọi được phân tích để tối ưu hóa mạng và tối đa hóa chất lượng dịch vụ. Trong khoa học, một lượng lớn dữ liệu trong vật lý, thiên văn học và sinh học có thể được phân tích để tìm ra những quy luật, quy tắc có giá trị.
Học máy là một lĩnh vực của trí tuệ nhân tạo. Để một hệ thống thông minh trong môi trường thay đổi chúng cần có khả năng học hỏi. Nếu hệ thống có thể học và thích nghi với những thay đổi đó, người thiết kế hệ thống không cần phải thấy trước và cung cấp giải pháp cho tất cả các tình huống có thể. Học máy cũng giúp chúng ta tìm ra giải pháp cho nhiều vấn đề về tầm nhìn, nhận dạng giọng nói và robot.
Chúng ta hãy lấy ví dụ về nhận diện khuôn mặt: Đây là việc mà con người thực hiện hàng ngày một cách dễ dàng, chúng ta nhận ra các thành viên của gia đình, bạn bè, học sinh bằng cách nhìn vào khuôn mặt hoặc từ các bức ảnh của họ, mặc dù chúng có thể khác nhau về tư thế, ánh sáng, kiểu tóc, v. Chúng ta làm điều đó một cách vô thức và dễ dàng đến nỗi không cần phải giải thích vì sao chúng ta có thể nhận diện được. Vì vậy, chúng ta không thể giải thích được cách nhận diện và do đóchúng ta không thể viết chương trình máy tính theo cách mà chúng ta đã nhận diện trong thực tế. Gần gũi với cách tiếp cận của máy tính hơn, chúng ta biết rằng hình ảnh khuôn mặt không chỉ là một bộ sưu tập pixel ngẫu nhiên, mỗi khuôn e 10 mặt có cấu trúc, thường là đối xứng nhưmắt, mũi, miệng và thường có những vị trí nhất định trên khuôn mặt.
Mỗi người khuôn mặt là một mô hình bao gồm một sự kết hợp đặc biệt của những điều này. Bằng cách phân tích hình ảnh khuôn mặt mẫu của một người, một chương trình học sẽ nắm bắt được mẫu cụ thể cho người đó và sau đó nhận ra bằng cách kiểm tra mẫu này trong một hình ảnh nhất định. Đây là một ví dụ về nhận dạng mẫu. Học máy là ngành học cung cấp cho máy tính khả năng học hỏi mà không cần được lập trình một cách rõ ràng (theo tác giả Samuel - 1959).
Học máylà một chương trình máy tính được nói là học hỏi từ kinh nghiệm E từ các tác vụ T và với độ đo hiệu suất P. Nếu hiệu suất của nó áp dụng trên tác vụ T và được đo lường bởi độ đo P tăng từ kinh nghiệm E (theo Giáo sư Tom Mitchell – Đại học Carnegie Mellon). Ví dụ: Giả sử như bạn muốn máy tính xác định một tin nhắn có phải là SPAM hay không? Trong đó: + Tác vụ T: Xác định 1 tin nhắn có phải SPAM hay không? + Kinh nghiệm E: Xem lại những tin nhắn đánh dấu là SPAM xem có những đặc tính gì để có thể xác định nó là SPAM. + Độ đo P: Là phần trăm số tin nhắn SPAM được phân loại đúng.
Chúng ta có một mô hình được xác định theo một số tham số và việc thực hiện chương trình máy tính để tối ưu hóa các tham số của mô hình bằng cách sử dụng dữ liệu huấn luyện hoặc kinh nghiệm trong quá khứ. Mô hình có thể được dự đoán để đưa ra dự đoán trong tương lai hoặc mô tả để thu thập e 11 kiến thức từ dữ liệu hoặc cả học máy sử dụng lý thuyết thống kê trong việc xây dựng các mô hình toán học, vì nhiệm vụ cốt lõi là suy luận từ một mẫu. Vai trò của khoa học máy tính có hai mặt: Đầu tiên, trong huấn luyện, chúng ta cần các thuật toán hiệu quả để giải quyết vấn đề tối ưu hóa, cũng như lưu trữ và xử lý lượng dữ liệu khổng lồ mà chúng ta thường có. Thứ hai, một khi một mô hình được học, giải pháp tối ưu và thuật toán cho suy luận cũng cần phải hiệu quả.
Trong một số ứng dụng nhất định, hiệu quả của thuật toán học hoặc suy luận, cụ thể là độ phức tạp không gian và thời gian của nó, có thể quan trọng như độ chính xác dự đoán của nó. Học máy tập trung vào việc phát triển các phần mềm, chương trình máy tính có thể truy cập vào dữ liệu và tận dụng nguồn dữ liệu đó để tự học. Có hai loại phương pháp học máy chính: Phương pháp quy nạp: Máy học/phân biệt các khái niệm dựa trên dữ liệu đã thu thập được trước đó. Phương pháp này cho phép tận dụng được nguồn dữ liệu rất nhiều và sẵn có.
Phương pháp suy diễn: Máy học/phân biệt các khái niệm dựa vào các luật. Phương pháp này cho phép tận dụng được các kiến thức chuyên ngành để hỗ trợ máy tính. Công nghệ nhận dạng khuôn mặt cho phép các nền tảng truyền thông xã hội giúp người dùng gắn thẻ và chia sẻ ảnh của bạn bè. Công nghệ nhận dạng ký tự quang học (Optical character recognition - OCR) chuyển đổi hình ảnh của văn bản thành file word.
Các công cụ đề xuất, được hỗ trợ bởi học máycó thể đề xuất những bộ phim, video tiếp theo cho người xem dựa trên sở thích của họ. Facebook sử dụng học máy để khai thác dữ liệu phản hồi của người dùng để cá nhân hóa nguồn cung cấp dữ liệu cho người dùng. Nếu e 12 chúng ta thích một nội dung nào đó, thuật toán sẽ học được điều này và cung cấp cho chúng ta những nội dung tương tự. Xe tự lái dựa vào học máy để tự vận hành cũng là một ví dụ.2 Phân nhóm các thuật toán học máy 1.1 Phân loại dựa trên phương thức học 1.