Transfer Learning là gì?

Transfer Learning là gì?

Rate this post

Trong blog này, chúng ta sẽ nghiên cứu Transfer Learning. Vì khái niệm Transfer Learning này liên quan đến Deep Learning và CNN. Chúng tôi sẽ cố gắng nói 1 cách ngắn gọn nhất về loại learning này.

Các bài viết liên quan:

Giới thiệu về Transfer Learning

Có thể nói transfer Learning là một phương pháp Machine learning. Trong đó, một mô hình được phát triển cho một nhiệm vụ được sử dụng lại làm điểm bắt đầu cho một mô hình cho nhiệm vụ thứ hai.

Transfer Learning là cách tiếp cận phổ biến nhất trong Deep Learning. Trong điều này, chúng ta sử dụng các Pre-Trained Model làm điểm khởi đầu về thị giác máy tính. Ngoài ra, các tác vụ xử lý ngôn ngữ tự nhiên với nguồn thời gian và máy tính khổng lồ. Mặc dù vậy, chúng ta cần phát triển các mô hình mạng nơ-ron.

Vì việc Transfer Learning liên quan đến nhiều vấn đề. Chẳng hạn như học tập đa nhiệm vụ và trôi dạt khái niệm. Mặc dù nó không chỉ là một lĩnh vực nghiên cứu dành riêng cho Deep Learning.

Transfer Learning là gì?

Pre-Trained Model là gì?

Để giải quyết một vấn đề, chúng ta cần có một Pre-Trained Model về vấn đề tương tự. Thay vì xây dựng một mô hình từ đầu để giải quyết một vấn đề tương tự, chúng ta sử dụng mô hình được đào tạo về vấn đề khác làm điểm khởi đầu.

Làm thế nào tôi có thể sử dụng Pre-Trained Model?

Vì có một mục tiêu được xác định trước để sử dụng một Pre-Trained Model. Ngoài ra, khái niệm learning transfer đóng một vai trò quan trọng trong một Pre-Trained Model.

Trong khi chọn một Pre-Trained Model, người ta nên cẩn thận trong trường hợp của họ. Nếu câu lệnh mà chúng ta có trong tay rất khác với câu mà Pre-Trained Model đã được đào tạo – thì dự đoán mà chúng ta nhận được sẽ rất không chính xác.

Vì đã có nhiều kiến ​​trúc được đào tạo trước có sẵn trực tiếp để sử dụng trong thư viện Keras. Tập dữ liệu Imagenet đã được sử dụng rộng rãi để xây dựng các kiến ​​trúc khác nhau vì nó đủ lớn (1,2 triệu hình ảnh) để tạo ra một mô hình tổng quát. Mặc dù, vấn đề được đưa ra trong việc đào tạo một mô hình.

Điều đó có thể phân loại chính xác các hình ảnh thành 1.000 loại đối tượng riêng biệt. Hơn nữa, 1.000 danh mục hình ảnh này đại diện cho các lớp đối tượng mà chúng ta bắt gặp trong cuộc sống hàng ngày. Chẳng hạn như các loài chó, mèo, các đồ vật khác nhau trong nhà, các loại phương tiện, v.v.

chúng ta sử dụng transfer Learning để tổng quát hóa thành các hình ảnh bên ngoài tập dữ liệu ImageNet. Điều này chỉ xảy ra trong trường hợp Pre-Trained Model. Ngoài ra, chúng ta sử dụng mô hình tinh chỉnh cho các sửa đổi trong một Pre-Trained Model. Vì chúng ta giả định rằng mạng được đào tạo trước đã được đào tạo khá tốt.

Do đó, chúng ta không muốn sửa đổi trọng lượng quá sớm và quá nhiều. Trong khi sửa đổi, chúng ta thường sử dụng tỷ lệ học tập nhỏ hơn tỷ lệ được sử dụng để đào tạo ban đầu cho mô hình.

Các cách để tinh chỉnh mô hình

  1. Trích xuất đối tượng – Đối với cơ chế trích xuất đối tượng, chúng ta sử dụng Pre-Trained Model vì trong đó chúng ta có thể loại bỏ lớp đầu ra. Hơn nữa, chúng ta phải sử dụng toàn bộ mạng như một bộ trích xuất tính năng cố định cho tập dữ liệu mới.
Transfer Learning là gì?
  1. Sử dụng Kiến trúc của Pre-Trained Model – Theo tập dữ liệu, tại thời điểm khởi tạo và đào tạo mô hình, chúng ta sử dụng kiến ​​trúc của nó.
  1. Huấn luyện một số lớp trong khi đóng băng những lớp khác – Có một cách nữa để sử dụng mô hình đã được huấn luyện trước, tức là huấn luyện một phần mô hình. Hơn nữa, chúng ta phải giữ cho trọng lượng của các lớp ban đầu của mô hình được đóng băng. Trong khi chỉ phải đào tạo lại các lớp cao hơn. Chúng ta có thể thử và kiểm tra xem có bao nhiêu lớp được đóng băng và bao nhiêu lớp được đào tạo.

Sơ đồ dưới đây sẽ giúp bạn quyết định cách tiếp tục sử dụng Pre-Trained Model trong trường hợp của bạn

Tình huống 1 – Kích thước của Tập dữ liệu nhỏ trong khi độ tương đồng về Dữ liệu là rất cao – Trong trường hợp cụ thể này, chúng ta không yêu cầu giữ lại mô hình, vì độ tương đồng về dữ liệu là rất cao.

Mặc dù, theo tuyên bố vấn đề của chúng ta, chúng ta cần tùy chỉnh và sửa đổi các lớp đầu ra. Như chúng ta đã sử dụng Pre-Trained Model ở đây như một trình trích xuất tính năng.

Hơn nữa, để xác định tập hợp hình ảnh mới có mèo hay chó, chúng ta sử dụng các mô hình được đào tạo trên Imagenet. Ở đây chúng ta yêu cầu các hình ảnh tương tự như Imagenet để phân loại hai đầu ra – mèo hoặc chó.

Cuối cùng, cuối cùng trong trường hợp này, chúng ta phải sửa đổi các lớp dày đặc. Ngoài ra, phải đặt các lớp softmax cuối cùng để xuất ra 2 danh mục thay vì 1000.

Tình huống 2 – Kích thước của dữ liệu nhỏ cũng như độ tương đồng của dữ liệu là rất thấp – Trong trường hợp này, chúng ta phải đóng băng các lớp ban đầu (giả sử là k) của Pre-Trained Model. Ngoài ra, khi quá trình đóng băng hoàn tất, hãy đào tạo lại (n-k) lớp còn lại.

Mặc dù vậy, hãy nhớ rằng các lớp trên cùng sẽ được tùy chỉnh thành tập dữ liệu mới. Ngoài ra, các lớp ban đầu được giữ trước bởi kích thước nhỏ hơn của chúng. Tuy nhiên, hãy giữ trọng lượng đông lạnh của các lớp đó.

Tình huống 3 – Kích thước của tập dữ liệu lớn tuy nhiên mức độ tương đồng của Dữ liệu là rất thấp – Đặc biệt, trong trường hợp này trường hợp, đào tạo mạng nơ-ron sẽ hiệu quả hơn. Vì nó có một tập dữ liệu lớn. Ngoài ra, điều chính là dữ liệu chúng ta sử dụng là khác nhau.

Khi chúng ta sử dụng dữ liệu khác với dữ liệu chúng ta sử dụng trong đào tạo. Do đó, tốt nhất là đào tạo mạng nơ-ron từ đầu theo dữ liệu của bạn.

Tình huống 4 – Kích thước dữ liệu lớn cũng như có độ tương đồng dữ liệu cao – Có thể nói đây là tình huống cuối cùng và lý tưởng. Như các Pre-Trained Model sẽ hiệu quả hơn trong trường hợp này. Ngoài ra, chúng ta có thể sử dụng mô hình này theo cách rất tốt.

Chúng ta chỉ cần sử dụng mô hình là giữ lại kiến ​​trúc của mô hình và các trọng số ban đầu của mô hình. Hơn nữa, chúng ta có thể đào tạo lại mô hình này bằng cách sử dụng các trọng số như được khởi tạo trong Pre-Trained Model.

Learning quy nạp và chuyển giao quy nạp

chúng ta sử dụng hình thức Transfer Learning này trong Deep learning, được gọi là chuyển giao quy nạp. Do đó, đó là một lĩnh vực mà phạm vi của các mô hình có thể được thu hẹp theo cách có lợi. Mặc dù, mô hình này phù hợp với một nhiệm vụ khác nhưng có liên quan.

Làm thế nào để sử dụng transfer Learning?

Hai cách tiếp cận phổ biến để Transfer Learning như sau:

  • Phát triển phương pháp tiếp cận mô hình
  • Phương pháp tiếp cận Pre-Trained Model
  1. Phát triển phương pháp tiếp cận mô hình
  • Chọn Tác vụ Nguồn:

Trong khi chọn một nhiệm vụ, chúng ta phải chọn vấn đề mô hình dự đoán. Vấn đề với lượng dữ liệu dồi dào.

  • Phát triển mô hình nguồn:

Tiếp theo, chúng ta phải phát triển một mô hình khéo léo cho nhiệm vụ đầu tiên này. Mặc dù, một mô hình phải tốt hơn một mô hình ngây thơ. Đó là để đảm bảo một số mô hình phải tốt hơn một mô hình ngây thơ.

  • Tái sử dụng mô hình:

Mô hình phải phù hợp với nhiệm vụ nguồn. Hơn nữa, chúng ta sử dụng nó làm điểm khởi đầu cho một mô hình về nhiệm vụ thứ hai mà chúng ta quan tâm. Hơn nữa, điều này liên quan đến các phần của mô hình, tùy thuộc vào kỹ thuật mô hình hóa được sử dụng.

  • Điều chỉnh mô hình:

Chúng ta cần áp dụng mô hình dựa trên dữ liệu cặp đầu vào-đầu ra có sẵn cho nhiệm vụ quan tâm.

  1. Phương pháp tiếp cận Pre-Trained Model
  • Chọn Mô hình Nguồn:

chúng ta phải chọn một mô hình nguồn được đào tạo trước từ các mô hình có sẵn. Các mô hình được phát hành trên các bộ dữ liệu lớn và đầy thách thức bởi nhiều tổ chức nghiên cứu.

  • Tái sử dụng mô hình:

Như ở điểm bắt đầu, chúng ta có thể sử dụng Pre-Trained Model. Đó là nhiệm vụ thứ hai cần quan tâm. Tùy thuộc vào mô hình được sử dụng, nó liên quan đến tất cả các phần của mô hình.

  • Chế độ điều chỉnh:

Chúng ta cần áp dụng mô hình dựa trên dữ liệu cặp đầu vào-đầu ra có sẵn cho nhiệm vụ quan tâm.

Khi nào thì sử dụng phương pháp transfer Learning?

chúng ta sử dụng phương pháp transfer learning để tiết kiệm thời gian hoặc để đạt được hiệu suất tốt hơn vì đây là một phương pháp tối ưu hóa.

Có ba lợi ích có thể có khi sử dụng phương pháp Transfer Learning:

  • Khởi đầu cao hơn:Kỹ năng ban đầu trên mô hình nguồn cao hơn so với kỹ năng khác.
  • Độ dốc cao hơn: Tỷ lệ cải thiện kỹ năng trong quá trình đào tạo mô hình nguồn. Đó là dốc hơn so với nếu không.
  • Đường tiệm cận cao hơn:Kỹ năng hội tụ của mô hình được đào tạo tốt hơn so với những kỹ năng khác.

Leave a Reply