MỞ ĐẦU FEW – SHOT LEARNING bài báo cáo chi tiết về nội dung lý thuyết của FSL và triển khai vào bài toán nhận dạng chữ viết, các cách phân tích, xử lý cho bài toán. Về phần ứng dụng, để trực quan hóa bài toán nhóm chúng tôi sẽ xây dựng một mô hình đơn giản để trực quan hóa kết quả sau khi phân tích từ tập dữ liệu nhằm có cái nhìn cụ thể hơn cũng như thấy được sự hữu ích khi áp dụng FSL vào thực tế và từ đó đưa một cách kết luận khả quan nhất về thuật toán này. BỐ CỤC CỦA BÀI BÁO CÁO Phần còn lại của báo cáo khóa luận được tổ chức như sau: Chương 2: Nôi dung Trình bày cơ sở lý thuyết của FSL, so sánh FSL với các phương pháp học máy khác và các phương pháp tiếp cận của FSL. Chương 3: Ứng dụng Các lĩnh vực thực tế được áp dụng và tình hình phát triển của FSL.
Chương 4: Triển khai ứng dụng Triển khai ứng dụng nhận dạng ký tự viết tay bằng FSL. Chương 5: Kết luận Kết quả đạt được, hạn chế và hướng phát triển. NỘI DUNG FEW – SHOT LEARNING CHƯƠNG 2: NỘI DUNG 2. TỔNG QUAN VỀ FEW – SHOT LEARNING 2.
Định nghĩa Few – shot learning (FSL – học từ một vài ví dụ) là một phương pháp học máy cho phép mô hình học cách nhận diện và phân loại các đối tượng mới chỉ với một số ít dữ liệu huấn luyện. Điều này khác biệt với học máy truyền thống, nơi cần có một lượng lớn dữ liệu huấn luyện để mô hình có thể đạt được độ chính xác cao. Các phương pháp FSL thường sử dụng các mô hình học sâu, như mạng nơ-ron tích chập (CNN) hoặc các mạng dựa trên kiến trúc transformer (transformer – based networks), để học cách tạo ra các đặc trưng chung từ các bộ dữ liệu huấn luyện khác nhau. Sau đó, các đặc trưng này được sử dụng để huấn luyện mô hình phân loại trên các tác vụ mới, mà mô hình chưa bao giờ được huấn luyện trước đó.
FSL có thể được áp dụng trong nhiều lĩnh vực, chẳng hạn như phân loại ảnh, xử lý ngôn ngữ tự nhiên và robot học. Với sự phát triển của FSL, các ứng dụng như nhận dạng khuôn mặt và nhận diện đồ vật trên các thiết bị nhỏ gọn đã trở nên dễ dàng hơn. Một trong những phương pháp tiếp cận phổ biến nhất của FSL được gọi là meta – learning hoặc learn – to – learn (học cách học). Trong phương pháp này, mô hình được huấn luyện trên một tập các tác vụ FSL, và học cách thích nghi nhanh với các tác vụ mới với một số ít ví dụ bằng cách học một tập các mẫu có thể tổng quát hóa trên các tác vụ khác nhau.
Một phương pháp khác được gọi là học dựa trên độ đo, trong đó mô hình học một độ đo khoảng cách giữa các ví dụ và sử dụng độ đo này để phân loại các ví dụ mới với số lượng ít ví dụ. Tổng quát lại, FSL là một phương pháp hứa hẹn cho phép máy học với ít dữ liệu hơn, và có tiềm năng làm cho học máy trở nên dễ tiếp cận hơn trong các lĩnh vực nơi thu thập lượng lớn dữ liệu huấn luyện là khó khăn và tốn kém. Một ví dụ về FSL, giả sử chúng ta làm việc trong lĩnh vực chăm sóc sức khỏe và gặp khó khăn trong việc phân loại các bệnh về xương thông qua ảnh chụp X – quang. Một số bệnh lý hiếm gặp có thể thiếu hình ảnh để sử dụng trong tập huấn luyện.
Đây là loại vấn đề có thể được giải quyết bằng cách xây dựng bộ phân loại FSL. So sánh FSL với các phương pháp học máy khác Theo truyền thống, việc phát triển các hệ thống máy học liên quan đến việc thu thập một lượng lớn dữ liệu và đào tạo các thuật toán machine learning (ML) trên đó để tạo ra kết quả. Để huấn luyện một mô hình để phân loại các đối tượng, ta cần một lượng lớn dữ liệu huấn luyện. ML sử dụng bộ dữ liệu quy mô lớn làm đầu vào.
Đánh giá của nó về một mẫu mới dựa trên kết quả thống kê được trích xuất bởi dữ liệu lịch sử. Tuy nhiên, việc thu thập, dán nhãn và xác thực dữ liệu lớn rất tốn kém. Có nhiều trường hợp, ta không có quyền truy cập vào bộ dữ liệu lớn và phải dựa vào một vài 4 CHƯƠNG 2. NỘI DUNG FEW – SHOT LEARNING ví dụ để đưa ra kết quả.
Hay sẽ thật khó chịu nếu smartphone cần phải có hàng nghìn bức ảnh của người dùng để nhận diện và mở khóa. Giờ đây, sự bùng nổ của Internet (gần nhất là 5G) cung cấp khả năng kết nối khổng lồ cho hàng triệu thiết bị đầu cuối, cho phép kết nối mọi thứ với nhau. Tổng lượng dữ liệu do các thiết bị đầu cuối tạo ra là rất lớn, nhưng số lượng của một tập dữ liệu đơn lẻ lại cực kỳ nhỏ. Do đó, ML truyền thống, có hiệu suất phụ thuộc nhiều vào tập dữ liệu lớn, không thể hoạt động tốt trong cài đặt này với ít mẫu.
Cuối cùng, FSL xuất hiện và cung cấp một cách đầy hứa hẹn để xử lý tình huống khan hiếm dữ liệu. [3] FSL giải quyết vấn đề này bằng cách sử dụng một số lượng nhỏ các mẫu huấn luyện để xây dựng một mô hình phân loại tốt. Ý tưởng của FSL là learn – to – learn, tức là dùng một mô hình máy học để học cách áp dụng những kiến thức và kinh nghiệm đã học được từ các bài toán tương tự để giải quyết các bài toán mới. Các mô hình FSL thường sử dụng các kỹ thuật học tăng cường (reinforcement learning), học không giám sát (unsupervised learning) hoặc học chuyển tiếp (transfer learning) để giúp mô hình học được các khái niệm và tính chất mới một cách hiệu quả.
Sự khác biệt đáng chú ý nhất giữa FSL và học máy truyền thống là tập hợp các lớp của tập hỗ trợ (support set) và tập truy vấn (query set) không liên kết với nhau. Trong máy học, các lớp của tập kiểm tra được đưa vào đào tạo trước. FSL kết hợp thông tin giám sát hạn chế với kiến thức có sẵn để đào tạo mô hình huấn luyện. Đầu vào của mô hình thường được đưa ra dưới dạng các nhiệm vụ.
Thông qua công việc thu thập liên tục các tác vụ, mô hình có thể nhận ra sự giống nhau và khác nhau giữa dữ liệu cũng như tác vụ. Khi mô hình gặp phải một nhiệm vụ không nhìn thấy được, việc chuyển giao kiến thức có thể được thực hiện nhanh chóng chỉ với một vài bước đào tạo lặp đi lặp lại với các tham số khởi động phù hợp. Ngược lại, học máy truyền thống yêu cầu tối ưu hóa thông số thông qua hàm mất mát được tạo ra bởi một bộ dữ liệu quy định lớn trong mô hình. Tóm lại, FSL chỉ là một nhánh rất non trẻ của học máy, chủ yếu giải quyết vấn đề khó truy cập vào tài liệu chất lượng trong các vấn đề về học máy.
Tầm quan trọng của FSL Năm 1980, Kunihiko Fukushima đã phát triển mạng lưới thần kinh tích chập (CNN) đầu tiên. Kể từ đó, nhờ khả năng tính toán ngày càng tăng và những nỗ lực to lớn từ cộng đồng máy học, các thuật toán học sâu đã không ngừng cải thiện hiệu suất của chúng đối với các nhiệm vụ liên quan đến thị giác máy tính. Vào năm 2015, Kaiming He và nhóm của anh ấy tại Microsoft đã báo cáo rằng mô hình của họ hoạt động tốt hơn con người trong việc phân loại hình ảnh từ ImageNet. Vào thời điểm đó, người ta có thể lập luận rằng máy tính đã trở nên giỏi hơn chúng ta trong việc khai thác hàng tỷ hình ảnh để giải quyết một nhiệm vụ cụ thể.
Tuy nhiên, không phải lúc nào chúng ta cũng có thể xây dựng bộ dữ liệu với nhiều hình ảnh như vậy. Khi làm việc trong lĩnh vực computer vision (thị giác máy tính), đôi khi chúng ta phải phân loại hình ảnh chỉ với một hoặc hai mẫu cho mỗi nhãn. Cho trẻ em 5 CHƯƠNG 2. NỘI DUNG FEW – SHOT LEARNING xem hình ảnh con voi và từ giờ trở đi chúng sẽ không bao giờ quên nhận ra con voi.
Nếu chúng ta làm điều tương tự với resnet – 50, chúng ta có thể thất vọng với kết quả của nó. Vấn đề như thế này, học từ một vài ví dụ được gọi là FSL. Với tầm quan trọng của FSL như vậy, chúng ta có thể thấy được một vài ưu điểm của nó như sau: Cơ sở thử nghiệm để học như con người: Con người có thể nhận ra sự khác biệt giữa các ký tự viết tay sau khi xem một vài ví dụ. Tuy nhiên, máy tính cần một lượng lớn dữ liệu để phân loại những gì chúng “thấy” và phát hiện sự khác biệt giữa các ký tự viết tay.
FSL là một cơ sở thử nghiệm trong đó máy tính được mong đợi sẽ học từ một vài ví dụ như con người. Học cho các trường hợp hiếm gặp: Bằng cách sử dụng phương pháp học ít lần, máy có thể học các trường hợp hiếm gặp. Ví dụ: khi phân loại hình ảnh về động vật, một mô hình máy học được đào tạo bằng kỹ thuật học ít ảnh có thể phân loại chính xác hình ảnh của một loài quý hiếm sau khi tiếp xúc với một lượng nhỏ thông tin trước đó. Giảm nỗ lực thu thập dữ liệu và chi phí tính toán: Vì phương pháp FSL yêu cầu ít dữ liệu hơn để đào tạo một mô hình, chi phí cao liên quan đến việc thu thập và ghi nhãn dữ liệu sẽ bị loại bỏ.
Lượng dữ liệu đào tạo thấp có nghĩa là số chiều thấp trong tập dữ liệu đào tạo, điều này có thể làm giảm đáng kể chi phí tính toán. Trong vài năm nay, vấn đề học vài lần đã thu hút rất nhiều sự chú ý trong cộng đồng nghiên cứu và rất nhiều giải pháp hay đã được phát triển. Các giải pháp phổ biến nhất hiện nay sử dụng phương pháp meta – learning, hay nói một cách ngắn gọn: học cách học (learn to learn). Phân loại FSL Các nhà nghiên cứu đã phân FSL thành các loại: N – shot learning (NSL), One – shot learning (OSL), zero – shot learning (ZSL).
Khi nói về FSL, chúng ta thường nghĩ đến N – way K – shot: N là số class, K là số lượng mẫu từ mỗi class dùng để training. N – shot learning (NSL) được xem như là một khái niệm tổng quát hóa. Few – shot, one – shot, zero – shot learning là các trường hợp đặc biệt của NSL.