Nền tảng AI

Meta-Learning là gì?

mm
Thêm Unite.AI vào các nguồn ưu tiên của bạn trên Google

Meta-Learning là gì?

Một trong những lĩnh vực nghiên cứu phát triển nhanh nhất trong học máy là lĩnh vực meta-learning. Meta-learning, trong ngữ cảnh học máy, là việc sử dụng các thuật toán học máy để hỗ trợ việc đào tạo và tối ưu hóa các mô hình học máy khác. Khi meta-learning trở nên phổ biến hơn và hơn nữa các kỹ thuật meta-learning được phát triển, nó rất có lợi khi có hiểu biết về meta-learning là gì và có cảm nhận về các cách nó có thể được áp dụng. Hãy cùng khám phá các ý tưởng đằng sau meta-learning, các loại meta-learning, cũng như một số cách meta-learning có thể được sử dụng.

Thuật ngữ meta-learning được đặt ra bởi Donald Maudsley để mô tả một quá trình mà người ta bắt đầu định hình những gì họ học, trở thành “ngày càng kiểm soát được thói quen nhận thức, điều tra, học tập và tăng trưởng mà họ đã nội hóa”. Sau đó, các nhà khoa học nhận thức và tâm lý học sẽ mô tả meta-learning là “học cách học”.

Đối với phiên bản học máy của meta-learning, ý tưởng chung của “học cách học” được áp dụng cho các hệ thống AI. Trong ý nghĩa AI, meta-learning là khả năng của một máy thông minh nhân tạo học cách thực hiện các nhiệm vụ phức tạp, lấy các nguyên tắc nó đã sử dụng để học một nhiệm vụ và áp dụng nó cho các nhiệm vụ khác. Các hệ thống AI thường phải được đào tạo để thực hiện một nhiệm vụ thông qua việc掌握 nhiều nhiệm vụ nhỏ. Việc đào tạo này có thể mất nhiều thời gian và các tác nhân AI không dễ dàng chuyển giao kiến thức đã học trong một nhiệm vụ sang một nhiệm vụ khác. Việc tạo ra các mô hình và kỹ thuật meta-learning có thể giúp AI học cách tổng quát hóa các phương pháp học và có được các kỹ năng mới nhanh hơn.

Các loại Meta-Learning

Optimizer Meta-Learning

Meta-learning thường được sử dụng để tối ưu hóa hiệu suất của một mạng nơ-ron hiện có. Các phương pháp meta-learning optimizer thường hoạt động bằng cách điều chỉnh các siêu tham số của một mạng nơ-ron khác để cải thiện hiệu suất của mạng nơ-ron cơ bản. Kết quả là mạng nơ-ron mục tiêu nên trở nên tốt hơn trong việc thực hiện nhiệm vụ nó đang được đào tạo. Một ví dụ về meta-learning optimizer là sử dụng một mạng để cải thiện gradient descent kết quả.

Few-Shots Meta-Learning

Một cách tiếp cận meta-learning vài lần là một trong đó một mạng nơ-ron sâu được thiết kế có khả năng tổng quát hóa từ các tập dữ liệu đào tạo sang các tập dữ liệu chưa thấy. Một ví dụ về phân loại vài lần là tương tự như một nhiệm vụ phân loại bình thường, nhưng thay vào đó, các mẫu dữ liệu là toàn bộ các tập dữ liệu. Mô hình được đào tạo trên nhiều nhiệm vụ học tập / tập dữ liệu khác nhau và sau đó nó được tối ưu hóa cho hiệu suất cao nhất trên nhiều nhiệm vụ đào tạo và dữ liệu chưa thấy. Trong cách tiếp cận này, một mẫu đào tạo đơn được chia thành nhiều lớp. Điều này có nghĩa là mỗi mẫu đào tạo / tập dữ liệu có thể được tạo thành từ hai lớp, tổng cộng là 4 lần. Trong trường hợp này, nhiệm vụ đào tạo tổng thể có thể được mô tả là một nhiệm vụ phân loại 4 lần 2 lớp.

Trong học tập vài lần, ý tưởng là các mẫu đào tạo cá nhân là tối giản và mạng có thể học cách xác định các đối tượng sau khi chỉ thấy một vài bức tranh. Điều này tương tự như cách một đứa trẻ học cách phân biệt các đối tượng sau khi chỉ thấy một vài bức tranh. Cách tiếp cận này đã được sử dụng để tạo ra các kỹ thuật như mô hình sinh một lần và mạng nơ-ron tăng cường bộ nhớ.

Metric Meta-Learning

Metric dựa trên meta-learning là việc sử dụng mạng nơ-ron để xác định xem một metric có đang được sử dụng hiệu quả và nếu mạng hoặc mạng đang đạt được metric mục tiêu. Meta-learning dựa trên metric tương tự như học tập vài lần ở chỗ chỉ một vài ví dụ được sử dụng để đào tạo mạng và giúp mạng học không gian metric. Metric相同 được sử dụng trên các miền khác nhau và nếu mạng diverges từ metric, chúng được coi là thất bại.

Recurrent Model Meta-Learning

Recurrent model meta-learning là việc áp dụng các kỹ thuật meta-learning cho các mạng nơ-ron hồi quy và mạng nơ-ron nhớ ngắn hạn dài. Kỹ thuật này hoạt động bằng cách đào tạo mô hình RNN / LSTM để học tuần tự một tập dữ liệu và sau đó sử dụng mô hình đã đào tạo này làm cơ sở cho một người học khác. Người học meta lấy trên tàu thuật toán tối ưu hóa cụ thể đã được sử dụng để đào tạo mô hình ban đầu. Việc kế thừa tham số của người học meta cho phép nó khởi tạo và hội tụ nhanh, nhưng vẫn có thể cập nhật cho các tình huống mới.

Meta-Learning hoạt động như thế nào?

Cách chính xác mà meta-learning được thực hiện khác nhau tùy thuộc vào mô hình và bản chất của nhiệm vụ. Tuy nhiên, nói chung, một nhiệm vụ meta-learning bao gồm sao chép các tham số của mạng đầu tiên vào các tham số của mạng thứ hai / optimizer.

Có hai quá trình đào tạo trong meta-learning. Mô hình meta-learning thường được đào tạo sau một số bước đào tạo trên mô hình cơ bản. Sau các bước đào tạo tiến, lùi và tối ưu hóa đào tạo mô hình cơ bản, quá trình đào tạo tiến được thực hiện cho mô hình optimizer. Ví dụ, sau ba hoặc bốn bước đào tạo trên mô hình cơ bản, một mất mát meta được tính toán. Sau khi mất mát meta được tính toán, các gradient được tính toán cho mỗi tham số meta. Sau khi điều này xảy ra, các tham số meta trong optimizer được cập nhật.

Một khả năng để tính toán mất mát meta là hoàn thành quá trình đào tạo tiến của mô hình ban đầu và sau đó kết hợp các mất mát đã được tính toán. Optimizer meta thậm chí có thể là một meta-học khác, mặc dù tại một thời điểm nhất định, một optimizer rời rạc như ADAM hoặc SGD phải được sử dụng.

Nhiều mô hình học sâu có thể có hàng trăm nghìn hoặc thậm chí hàng triệu tham số. Việc tạo ra một meta-học có một tập hợp tham số hoàn toàn mới sẽ tốn kém về mặt tính toán, và vì lý do này, một chiến thuật gọi là chia sẻ tọa độ thường được sử dụng. Chia sẻ tọa độ liên quan đến việc thiết kế meta-học / optimizer để nó học một tham số từ mô hình cơ bản và sau đó chỉ sao chép tham số đó thay cho tất cả các tham số khác. Kết quả là các tham số mà optimizer sở hữu không phụ thuộc vào các tham số của mô hình.

Blogger và lập trình viên với chuyên môn về Machine Learning Deep Learning topics. Daniel hy vọng giúp đỡ người khác sử dụng sức mạnh của AI cho lợi ích xã hội.