CHƯƠNG 1: KIẾN THỨC CƠ BẢN VÀ CÁC CÔNG TRÌNH LIÊN QUAN 1. CÁC KHÁI NIỆM CƠ BẢN 1. 1 Sự hình thành và phát triển của Học máy, Học sâu [11] Máy học, hay Machine Learning, là một lĩnh vực của trí tuệ nhân tạo tập trung vào việc phát triển các thuật toán và mô hình máy tính có khả năng tự học và cải thiện theo thời gian thông qua kinh nghiệm, quan sát hoặc dữ liệu quá khứ. Mục tiêu chính của máy học là cho phép hệ thống máy tính hiểu và áp dụng tri thức từ dữ liệu mà không cần phải lập trình cụ thể cho từng nhiệm vụ.
[2] Phân loại học máy: + Học máy có giám sát là một mô hình được huấn luyện dựa trên dữ liệu đã được gán nhãn, nghĩa là dữ liệu đầu vào đã được liên kết với kết quả mong muốn. Nói cách khác, dữ liệu huấn luyện bao gồm các cặp đầu vào và đầu ra mong đợi. Ví dụ: Hình ảnh những chữ số viết tay được chú thích để chỉ ra số tương ứng với hình ảnh đó,. 4 + Học máy không giám sát là một thuật toán mà chúng ta không biết trước đầu ra hoặc nhãn của dữ liệu, chỉ có dữ liệu đầu vào.
Máy học không giám sát sẽ dựa vào cấu trúc của dữ liệu để thực hiện các nhiệm vụ như phân nhóm (Clustering) hoặc giảm số chiều của dữ liệu (Dimension Reduction). + Học máy bán giám sát là các bài toán mà chúng ta có một lượng lớn dữ liệu nhưng chỉ một phần được gán nhãn được gọi là máy học bán giám sát. Những bài toán này nằm ở giữa máy học có giám sát và máy học không có giám sát. [2] + Học máy tăng cường là các bài toán giúp hệ thống tự động xác định hành vi dựa trên môi trường và hoàn cảnh, đồng thời nhận phản hồi dưới dạng phần thưởng và hình phạt.
Thuật toán sẽ cố gắng tối đa hóa phần thưởng nhận được bằng cách điều chỉnh hành vi sao cho phù hợp. Học sâu Học Sâu (Deep Learning) là một nhánh của Học Máy (Machine Learning) tập trung vào việc sử dụng các mạng nơ-ron nhân tạo có cấu trúc sâu và phức tạp để học và biểu diễn dữ liệu. Deep Learning thường được áp dụng cho các tác vụ yêu cầu sự hiểu biết về cấu trúc và đặc trưng phức tạp của dữ liệu, chẳng hạn như nhận dạng hình ảnh, xử lý ngôn ngữ tự nhiên và dự đoán chuỗi thời gian. [4] Một số khái niệm khác: + Overfitting (Quá Khớp): Quá khớp xảy ra khi mô hình học rất tốt trên tập dữ liệu huấn luyện nhưng không thể tổng quát hóa cho dữ liệu mới.
Điều này thường xảy ra khi mô hình quá phức tạp hoặc khi tập dữ liệu huấn luyện quá nhỏ. + Underfitting (Quá Thấp): Quá thấp xảy ra khi mô hình không học đủ tốt trên tập dữ liệu huấn luyện và không thể tổng quát hóa cho dữ liệu mới. Điều này thường xảy ra khi mô hình quá đơn giản hoặc khi tập dữ liệu huấn luyện quá lớn. + Dropout: Là một kỹ thuật chính để ngăn ngừa quá khớp trong mạng nơ-ron.
Nó ngẫu nhiên tắt một số nơ-ron trong quá trình huấn luyện để tạo ra tính đa dạng trong mô hình. [13] 5 + Transfer Learning (Học Chuyển Giao): Là một phương pháp sử dụng mô hình đã được huấn luyện sẵn (pre-trained) cho một nhiệm vụ cụ thể, sau đó điều chỉnh lại mô hình này cho nhiệm vụ mới. Điều này thường giúp tăng tốc quá trình huấn luyện và cải thiện hiệu suất. Dữ liệu chuỗi thời gian Chuỗi thời gian (time series) là một dãy các sự kiện dữ liệu diễn ra liên tục trong một khung thời gian nhất định.
Chuỗi thời gian đo lường sự biến động của các sự kiện dữ liệu đã chọn (chẳng hạn như giá cả thị trường chứng khoán) theo khung thời gian cụ thể. Dữ liệu chuỗi thời gian là kết quả của những phép đo lặp đi lặp lại theo thời gian. Dữ liệu này có mặt ở nhiều lĩnh vực khác nhau, bởi vì thời gian là yếu tố cơ bản của nhiều hiện tượng mà con người có thể nhận biết. Dự báo dữ liệu chuỗi thời gian Dự báo chuỗi thời gian là quá trình phân tích dữ liệu chuỗi thời gian bằng cách sử dụng các số liệu thống kê thu thập được và kết hợp với mô hình hóa dữ liệu để đưa ra dự đoán và đề xuất giải pháp tiếp theo.
Dự báo chuỗi thời gian không phải lúc nào cũng chính xác, và độ chính xác của dự báo có thể thay đổi, đặc biệt khi phải xử lý các biến động bất thường trong chuỗi dữ liệu. [1] Ví dụ: Dự báo thời tiết, dự báo giá cổ phiếu, dự báo giá xăng dầu, vật tư,. ĐỊNH NGHĨA BÀI TOÁN Bài toán lai ghép các mô hình học sâu phục vụ cho dự đoán dữ liệu chuỗi thời gian là việc kết hợp nhiều mô hình học sâu khác nhau nhằm tận dụng ưu điểm của từng mô hình để cải thiện độ chính xác và hiệu quả dự đoán dữ liệu chuỗi thời gian. Quá trình này bao gồm việc thiết kế, huấn luyện và tối ưu hóa các mô hình học sâu, chẳng hạn như mạng nơ-ron hồi quy (RNN), mạng nơ-ron tích chập (CNN), và mạng nơ-ron dài ngắn hạn (LSTM), để dự đoán các giá trị tương lai của chuỗi thời gian.
Bằng cách kết hợp các mô hình, hệ thống có thể xử lý tốt 6 hơn các đặc điểm phức tạp và phi tuyến tính của dữ liệu, cũng như các yếu tố bất thường và biến động mạnh trong chuỗi thời gian. CÁC MÔ HÌNH VÀ ƯU, NHƯỢC ĐIỂM 1. CNN - Convolutional Neural Network 1. Khái niệm Mạng nơ-ron tích chập (Convolutional Neural Network - CNN) là một mô hình học sâu (Deep Learning) phổ biến với kiến trúc được thiết kế đặc biệt để xử lý các loại dữ liệu như hình ảnh và video.
CNN được áp dụng rộng rãi trong các bài toán như nhận dạng hình ảnh, phân loại, phát hiện đối tượng, và nhiều nhiệm vụ khác liên quan đến xử lý hình ảnh. Ngoài ra, CNN cũng được sử dụng để phân tích dữ liệu chuỗi thời gian. Trong CNN dùng để phân tích chuỗi thời gian, dữ liệu đầu vào thường ở dạng chuỗi giá trị một chiều (1D). Các lớp tích chập có thể được sử dụng để xác định các mẫu trong chuỗi, như các xu hướng cục bộ hoặc các mẫu lặp lại.
Kết quả từ các lớp tích chập này sau đó được sử dụng cho các nhiệm vụ như phân loại, hồi quy hoặc các loại phân tích khác. Ưu điểm và nhược điểm Ưu điểm: + Tự động trích xuất đặc trưng: CNN có khả năng tự động học các đặc trưng quan trọng từ dữ liệu đầu vào mà không cần phải thiết kế thủ công. [15] + Khả năng nhận dạng đối tượng mạnh mẽ: CNN hoạt động rất tốt trong các bài toán nhận dạng hình ảnh, nhận dạng đối tượng, và phân loại hình ảnh. Nhược điểm: + Yêu cầu tài nguyên tính toán lớn: Việc huấn luyện các mạng CNN thường đòi hỏi nhiều tài nguyên tính toán, bao gồm cả CPU và GPU mạnh.
[15] + Cần nhiều dữ liệu: Để huấn luyện một mô hình CNN tốt, cần có một lượng lớn dữ liệu huấn luyện để tránh tình trạng quá khớp. LSTM – Long Short Term Memory 1. Khái niệm Mô hình LSTM là một biến thể đặc biệt của mạng nơ-ron hồi quy (RNN). Trong RNN truyền thống, việc dự đoán kết quả đầu ra gặp khó khăn khi thông tin quan trọng nằm xa trong chuỗi dữ liệu, dẫn đến giảm khả năng hiểu và dự đoán các chuỗi dài.
Tuy nhiên, LSTM được thiết kế để khắc phục vấn đề phụ thuộc dài hạn (long- term dependency). Cấu trúc của LSTM cho phép nó duy trì thông tin quan trọng từ các bước thời gian xa hơn, giúp mô hình xử lý và phản hồi hiệu quả hơn đối với các chuỗi dữ liệu dài. Ưu điểm và nhược điểm Ưu điểm: + Giải quyết vấn đề phụ thuộc dài hạn: LSTM có khả năng lưu giữ thông tin trong thời gian dài nhờ cơ chế cửa (gates), giúp nó khắc phục vấn đề phụ thuộc xa mà các RNN thông thường gặp phải. [17] + Ứng dụng rộng rãi: LSTM được sử dụng trong nhiều lĩnh vực như nhận dạng giọng nói, dịch máy, phân tích chuỗi thời gian, phân loại văn bản, và nhiều hơn nữa.
Khả năng xử lý chuỗi dài và phức tạp làm cho LSTM trở nên lý tưởng cho các ứng dụng này. Nhược điểm: + Yêu cầu tài nguyên tính toán cao: Việc đào tạo mô hình LSTM đòi hỏi nhiều thời gian và tài nguyên tính toán, do tính phức tạp và số lượng lớn các tham số cần tối ưu. [17] + Khó khăn trong việc điều chỉnh: LSTM có nhiều tham số và kiến trúc phức tạp, làm cho việc điều chỉnh và tối ưu mô hình trở nên khó khăn hơn so với các mô hình đơn giản hơn. RNN – Recurrent Neural Networks 1.
Khái niệm Mạng nơ-ron hồi quy (Recurrent Neural Network - RNN) là một loại mạng nơ- ron được thiết kế để xử lý dữ liệu tuần tự như chuỗi thời gian hoặc ngôn ngữ tự nhiên. RNN có cấu trúc đặc biệt cho phép nó xử lý các đầu vào theo thứ tự tuần tự và duy trì trạng thái ẩn (hidden state) để lưu trữ thông tin từ các bước trước đó trong chuỗi. Ưu điểm và nhược điểm Ưu điểm: + Xử lý dữ liệu tuần tự: RNN được thiết kế để làm việc với các dữ liệu có tính tuần tự như chuỗi thời gian và ngôn ngữ tự nhiên, giúp nó có khả năng ghi nhớ và sử dụng thông tin từ các bước thời gian trước đó. [18] + Khả năng học các phụ thuộc dài hạn: RNN có khả năng học và nắm bắt các phụ thuộc dài hạn trong dữ liệu, điều này rất hữu ích cho các nhiệm vụ như dịch máy và phân tích cảm xúc.[19] Nhược điểm: + Vấn đề về gradient biến mất: Khi độ dài của chuỗi dữ liệu tăng, các RNN truyền thống gặp khó khăn trong việc duy trì và học các phụ thuộc dài hạn do vấn đề gradient biến mất.
+ Đào tạo khó khăn: Việc huấn luyện RNN phức tạp và tốn nhiều tài nguyên tính toán. Việc tối ưu hóa RNN đòi hỏi nhiều thời gian và công sức để điều chỉnh các siêu tham số và kiến trúc mạng. [18] + Khả năng xử lý chuỗi dài hạn hạn chế: Các RNN truyền thống gặp khó khăn trong việc xử lý các chuỗi rất dài do khả năng nhớ ngắn hạn, điều này dẫn đến mất thông tin quan trọng từ các bước thời gian trước đó. GRU - Gated Recurrent Unit 1.