chương I của luận văn này, em sẽ trình bày sơ lược về học máy, học máy bằng mạng ANN, học sâu, cấu trúc mạng CNN, trình bày về bài toán nhận dạng đối tượng. Học máy, học máy bằng mạng ANN 1. Học máy Học máy là một lĩnh vực của khoa học máy tính, theo Arthur Samuel vào năm 1959, "máy tính có khả năng học hỏi mà không cần được lập trình một cách rõ ràng. Phát triển từ nghiên cứu về nhận dạng mẫu và lý thuyết học tính toán trong trí tuệ nhân tạo.
Học máy xây dựng các thuật toán có thể học hỏi và thực hiện các dự đoán về dữ liệu, các thuật toán như vậy vượt qua các hướng dẫn chương trình nghiêm ngặt bằng cách dự đoán dữ liệu hoặc quyết định thông qua xây dựng một mô hình từ mẫu đầu vào. Học máy được sử dụng trong một loạt các tác vụ khi thiết kế và lập trình các thuật toán rõ ràng với hiệu năng tốt là khó hoặc không khả thi; Các ví dụ ứng dụng bao gồm lọc email, phát hiện các kẻ xâm nhập mạng hoặc những người trong nội bộ đang làm việc để phá vỡ dữ liệu, nhận dạng ký tự quang học (OCR), học để xếp hạng và tầm nhìn máy tính. Học máy liên quan chặt chẽ và thường thống kê tính toán, tập trung vào việc dự đoán bằng cách sử dụng máy tính. Nó có quan hệ chặt chẽ với việc tối ưu hóa toán học, cung cấp các phương pháp, lý thuyết và các lĩnh vực ứng dụng cho lĩnh vực này.
Việc học máy đôi khi được kết hợp với việc khai thác dữ liệu, trong đó lĩnh vực nhỏ thứ hai tập trung nhiều hơn vào phân tích dữ liệu thăm dò và được biết đến là học không giám sát. Học máy cũng có thể là giám sát và được sử dụng để tìm hiểu và thiết lập hồ sơ hành vi cơ bản cho các thực thể khác nhau và sau đó được sử dụng để tìm các dị thường có ý nghĩa. 6 Trong lĩnh vực phân tích dữ liệu, học máy là một phương pháp được sử dụng để đưa ra các mô hình phức tạp và các thuật toán cho phép dự đoán; Trong sử dụng thương mại, điều này được gọi là phân tích tiên đoán. Các mô hình phân tích này cho phép các nhà nghiên cứu, các nhà khoa học dữ liệu, các kỹ sư và các nhà phân tích "đưa ra các quyết định, kết quả đáng tin cậy, lặp lại" và khám phá những "cái nhìn sâu sắc ẩn giấu" thông qua việc học hỏi từ các mối quan hệ và xu hướng lịch sử trong dữ liệu.
Các loại học máy Học máy thường được phân thành ba loại, tùy thuộc vào tính chất của "tín hiệu" hoặc "phản hồi" của hệ thống học. Gồm có: - Học có giám sát (Supervied learning): Máy tính được thể hiện với các đầu vào ví dụ và các đầu ra mong muốn của nó, được cho bởi "người dạy" và mục tiêu là tìm hiểu một quy tắc chung cho phép ánh xạ các đầu vào cho đầu ra. - Học không giám sát (Unsupervied learing): Không có nhãn nào được đưa ra cho thuật toán học, mục đích là để nó tự tìm ra cấu trúc trong đầu vào của nó. Học tập không giám sát có thể là một mục tiêu tự nó (khám phá các mẫu ẩn trong dữ liệu).
- Học tăng cường (Reinforcement learning): Một chương trình máy tính tương tác với một môi trường động, trong đó nó phải thực hiện một mục đích nhất định. Chương trình được cung cấp phản hồi về đầu ra khi nó điều hướng các vấn đề của nó. Các thuật toán học máy Có rất nhiều thuật toán học máy được nghiên cứu và ứng dụng, có thể kể đến các thuật toán học máy dưới đây: - Thuật toán cây quyết định (Decision tree learning): là một phương pháp không tham biến (không cần đưa vào dạng hàm phụ thuộc vector tham biến của hàm mục tiêu). Phương pháp này sẽ chia không gian vector đặc 7 trưng thành các miền, rồi xấp xỉ hàm mục tiêu trên mỗi miền bởi một hàm đơn giản nhất, gọi là hàm hằng.
Khi đó, toàn bộ hàm mục tiêu sẽ được xấp xỉ bởi một hàm có thể mô tả dưới dạng cấu trúc cây. - Học theo quy tắc kết hợp (Association rule learning): là một phương pháp học dựa trên quy tắc để học tập các mối quan hệ thú vị giữa các biến trong các cơ sở dữ liệu lớn. Nó nhằm xác định các quy tắc mạnh mẽ được phát hiện trong cơ sở dữ liệu sử dụng một số biện pháp thú vị. - Thuật toán mạng neural nhân tạo (ANN): thường được gọi là "mạng nơ-ron" (NN), là một thuật toán học được lấy cảm hứng từ cấu trúc và các khía cạnh chức năng của mạng nơ-ron sinh học.
Tính toán được cấu trúc theo một nhóm các neuron nhân tạo kết nối, xử lý thông tin bằng cách sử dụng một cách tiếp cận kết nối để tính toán. Mạng nơ-ron hiện đại là các công cụ mô hình hoá dữ liệu không tuyến tính. Chúng thường được sử dụng để mô hình các mối quan hệ phức tạp giữa đầu vào và đầu ra, để tìm các mẫu trong dữ liệu hoặc để nắm bắt cấu trúc thống kê trong phân bố xác suất chung không xác định giữa các biến quan sát được. - Học sâu (Deep learning): bao gồm nhiều lớp ẩn trong một mạng nơ- ron nhân tạo.
Cách tiếp cận này cố gắng mô hình hóa cách não người xử lý hình ảnh và âm thanh bởi thị giác và thính giác. - SVMs là một tập hợp các phương pháp học tập có giám sát liên quan được sử dụng để phân loại và hồi quy. Với một tập hợp các ví dụ huấn luyện, được đánh dấu là thuộc một trong hai loại, thuật toán huấn luyện SVM xây dựng mô hình dự đoán xem một ví dụ mới có thuộc một loại hay không. - Phân cụm (Clustering): Phân cụm là sự phân chia của một tập các quan sát thành các tập con (gọi là các cụm) để các quan sát trong cùng một cụm tương tự theo một số tiêu chí hoặc tiêu chí được chuẩn bị trước, trong khi 8 các quan sát được rút ra từ các cụm khác nhau thì không giống nhau.
Các kỹ thuật phân cụm khác nhau đưa ra các giả định khác nhau về cấu trúc dữ liệu, thường được xác định bởi một số chỉ số tương tự và được đánh giá bởi sự tương tự giữa các thành viên của cùng một cụm và sự tách biệt giữa các cụm khác nhau. Các phương pháp khác dựa trên mật độ và kết nối đồ thị. Phân cụm là một phương pháp học không được giám sát và là một kỹ thuật phổ biến để phân tích dữ liệu thống kê. - Mạng Bayesian là một mô hình đồ thị xác suất (một loại mô hình thống kê) đại diện cho một tập các biến ngẫu nhiên và các phụ thuộc có điều kiện của chúng qua một đồ thị trục không hướng (DAG) - Học máy dựa trên nguyên tắc là một thuật ngữ chung cho bất kỳ phương pháp học máy nào xác định, học hỏi, hoặc phát triển “các quy tắc” để lưu trữ, vận dụng hoặc áp dụng kiến thức.
Đặc điểm xác định của học máy dựa trên quy tắc xác định và sử dụng một tập hợp các quy tắc quan hệ đại diện cho kiến thức thu được bởi hệ thống. Điều này trái ngược với những học máy khác thường xác định một mô hình độc nhất có thể được áp dụng phổ quát cho bất kỳ trường hợp nào để dự đoán. Các phương pháp học tập dựa trên nguyên tắc máy học bao gồm các hệ thống phân loại học tập, học về quy tắc kết hợp và các hệ thống miễn dịch nhân tạo. - Bên cạnh đó còn một số thuật toán học máy khác như: thuật toán di truyền (Genetic algorithm), Học máy dựa trên nguyên tắc (Rule-based machine learning), hệ thống phân loại học (Learning classifier systems).
Học máy bằng mạng ANN 1. Tổng quan về mạng ANN Mạng nơ ron nhân tạo (ANN – Artificial neural network) là một tập hợp các thuật toán phân tích dữ liệu cho phép xác định mối liên hệ toán 9 học phức tạp giữa tập hợp các yếu tố ảnh hưởng (Input) với một biến số hoặc một tập hợp biến số mục tiêu (target). ANN là một ứng dụng trên nền tảng trí tuệ thông minh nhân tạo (Artificial intelligence - AI), cấu trúc của ANN và quá trình học tập, suy luận và tái tạo của nó có khả năng tự thích ứng linh hoạt (autofit) với nhiều loại dữ liệu khác nhau. ANN xử lý thông tin phỏng theo cách thức xử lý thông tin của các hệ nơ ron sinh học trong não người.
Nó được tạo nên từ một số lượng lớn các nơ ron kết nối với nhau thông qua các liên kết có trọng số, tạo thành một thể thống nhất, nhằm xử lý, phân tích một thông tin, một vấn đề. Một mạng nơron nhân tạo được cấu trúc cho một ứng dụng cụ thể (nhận dạng mẫu, phân loại dữ liệu,.) thông qua một quá trình huấn luyệnhọc (training) từ tập các mẫu huấn luyện. Dữ liệu đầu vào (input) sẽ chạy qua toàn bộ mạng nơ ron, sẽ được xử lý, tìm các mối liên hệ và tái tạo lại thành kết quả đầu ra (output). Các output này sẽ được so sánh với với các dữ liệu mục tiêu (target) mà hệ thống đã được học trước đó.
Nếu còn có sự sai lệch đáng kể giữa output và target, thì quá trình huấn luyện – học tập (training) lặp lại, các trọng số liên kết giữa các nơ ron lại được hiệu chỉnh để đưa ra output khác cải thiện hơn. Quá trình này liên tục lặp lại nhiều lần cho đến khi mang lại độ chệch (bias) bé nhất có thể giữa output và target. Như vậy, về bản chất quá trình huấn luyện - học (training) chính là quá trình hiệu chỉnh trọng số liên kết giữa các nơ ron cho đến khi đạt được một kết quả tối ưu, đó là tái tạo ra output tương tự target và có thể sử dụng để dự báo ngoài mẫu cho target. Cấu trúc nơ ron nhân tạo Cấu trúc của một nơ ron nhân tạo tiêu biểu có các thành phần cơ bản như mô tả ở hình dưới.
Cấu trúc của nơ ron nhân tạo Nguồn: Neural Networks in Finance gaining predictive edge in the market của Paul D.Mc Nelis Đầu vào cung cấp các tín hiệu vào (input signals) của nơ ron, các tín hiệu này thường được đưa vào dưới dạng một vector N chiều. Các liên kết: Mỗi liên kết được thể hiện bởi một trọng số (gọi là trọng số liên kết – Synaptic weight). Trọng số liên kết giữa tín hiệu vào thứ j với nơ ron k thường được kí hiệu là wkj.