[ad_1]
Giới thiệu
Bài viết tìm hiểu zero-shot studying, một kỹ thuật machine studying giúp phân loại các ví dụ chưa nhìn thấy, tập trung vào zero-shot phân loại hình ảnh. Bài viết thảo luận về cơ chế phân loại ảnh không cần chụp, phương pháp triển khai, lợi ích và thách thức, ứng dụng thực tế và định hướng tương lai.
Tổng quan
- Hiểu được tầm quan trọng của phương pháp học không cần thực hiện trong học máy.
- Kiểm tra việc phân loại zero-shot và cách sử dụng nó trong nhiều lĩnh vực.
- Nghiên cứu chi tiết cách phân loại hình ảnh không chụp, bao gồm cả hoạt động và ứng dụng của nó.
- Xem xét những lợi ích và khó khăn liên quan đến phân loại ảnh không cần chụp.
- Phân tích các ứng dụng thực tế và hướng đi tiềm năng trong tương lai của công nghệ này.
Zero-Shot Studying là gì?
Một kỹ thuật học máy được gọi là “zero-shot studying” (ZSL) cho phép mô hình xác định hoặc phân loại các ví dụ về một lớp không có trong quá trình đào tạo. Mục tiêu của phương pháp này là thu hẹp khoảng cách giữa số lượng lớn các lớp có trong thế giới thực và số lượng nhỏ các lớp có thể được sử dụng để đào tạo một mô hình.
Các khía cạnh chính của việc học không cần bắn
- Tận dụng kiến thức ngữ nghĩa về các lớp.
- sử dụng siêu dữ liệu hoặc thông tin bổ sung.
- Cho phép khái quát hóa cho các lớp chưa biết.
Phân loại Zero Shot
Một ứng dụng cụ thể của phương pháp zero-shot studying là phân loại zero-shot, tập trung vào việc phân loại các trường hợp—bao gồm cả những trường hợp không có trong tập huấn luyện—vào các lớp.
Nó hoạt động như thế nào?
- Mô hình học cách ánh xạ các tính năng đầu vào vào không gian ngữ nghĩa trong quá trình đào tạo.
- Không gian ngữ nghĩa này cũng được ánh xạ tới các mô tả hoặc thuộc tính lớp.
- Mô hình đưa ra dự đoán trong quá trình suy luận bằng cách so sánh cách biểu diễn đầu vào với các mô tả lớp.
Các ví dụ phân loại .Zero-shot bao gồm:
- Phân loại văn bản: Phân loại tài liệu thành các chủ đề mới.
- Phân loại âm thanh: Nhận biết âm thanh hoặc thể loại nhạc lạ.
- Việc xác định các loại đối tượng mới trong ảnh hoặc video được gọi là nhận dạng đối tượng.
Phân loại hình ảnh Zero-Shot
Phân loại này là một loại phân loại zero-shot cụ thể được áp dụng cho dữ liệu trực quan. Nó cho phép các mô hình phân loại hình ảnh thành các danh mục mà chúng chưa từng thấy rõ trong quá trình đào tạo.
Sự khác biệt chính so với phân loại hình ảnh truyền thống:
- Truyền thống: Yêu cầu có ví dụ có nhãn cho mỗi lớp.
- Bắn không: Có thể phân loại thành các lớp mới mà không cần mẫu huấn luyện cụ thể.
Phân loại hình ảnh Zero-Shot hoạt động như thế nào?
- Học tập đa phương thức: Các tập dữ liệu lớn có cả mô tả văn bản và hình ảnh thường được sử dụng để đào tạo các mô hình phân loại zero-shot. Điều này cho phép mô hình hiểu được cách các đặc điểm trực quan và ý tưởng ngôn ngữ liên quan đến nhau.
- Biểu diễn căn chỉnh: Sử dụng không gian nhúng chung, mô hình tạo ra các biểu diễn được căn chỉnh của dữ liệu văn bản và hình ảnh. Sự căn chỉnh này cho phép mô hình hiểu được sự tương ứng giữa nội dung hình ảnh và mô tả văn bản.
- Quá trình suy luận: Mô hình so sánh phần nhúng của nhãn văn bản ứng cử viên với phần nhúng của hình ảnh đầu vào trong quá trình phân loại. Kết quả phân loại được xác định bằng cách chọn nhãn có điểm tương đồng cao nhất.
Thực hiện phân loại hình ảnh Zero-Shot
Đầu tiên chúng ta cần cài đặt các phụ thuộc:
!pip set up -q "transformers(torch)" pillow
Có hai cách tiếp cận chính để thực hiện phân loại hình ảnh không chụp:
Sử dụng đường ống được xây dựng sẵn
from transformers import pipeline
from PIL import Picture
import requests
# Arrange the pipeline
checkpoint = "openai/clipvitlargepatch14"
detector = pipeline(mannequin=checkpoint, activity="zeroshotimageclassification")
url = "https://encrypted-tbn0.gstatic.com/pictures?q=tbn:ANd9GcTuC7EJxlBGYl8-wwrJbUTHricImikrH2ylFQ&s"
picture = Picture.open(requests.get(url, stream=True).uncooked)
picture
# Carry out classification
predictions = detector(picture, candidate_labels=("fox", "bear", "seagull", "owl"))
predictions
# Discover the dictionary with the very best rating
best_result = max(predictions, key=lambda x: x('rating'))
# Print the label and rating of the most effective consequence
print(f"Label with the most effective rating: {best_result('label')}, Rating: {best_result('rating')}")
Đầu ra:
Thực hiện thủ công
from transformers import AutoProcessor, AutoModelForZeroShotImageClassification
import torch
from PIL import Picture
import requests
# Load mannequin and processor
checkpoint = "openai/clipvitlargepatch14"
mannequin = AutoModelForZeroShotImageClassification.from_pretrained(checkpoint)
processor = AutoProcessor.from_pretrained(checkpoint)
# Load a picture
url = "https://unsplash.com/pictures/xBRQfR2bqNI/obtain?ixid=MnwxMjA3fDB8MXxhbGx8fHx8fHx8fHwxNjc4Mzg4ODEx&drive=true&w=640"
picture = Picture.open(requests.get(url, stream=True).uncooked)
Picture
# Put together inputs
candidate_labels = ("tree", "automotive", "bike", "cat")
inputs = processor(pictures=picture, textual content=candidate_labels, return_tensors="pt", padding=True)
# Carry out inference
with torch.no_grad():
outputs = mannequin(**inputs)
logits = outputs.logits_per_image(0)
probs = logits.softmax(dim=1).numpy()
# Course of outcomes
consequence = (
{"rating": float(rating), "label": label}
for rating, label in sorted(zip(probs, candidate_labels), key=lambda x: x(0))
)
print(consequence)
# Discover the dictionary with the very best rating
best_result = max(consequence, key=lambda x: x('rating'))
# Print the label and rating of the most effective consequence
print(f"Label with the most effective rating: {best_result('label')}, Rating: {best_result('rating')}")
Lợi ích của phân loại hình ảnh Zero-Shot
- Uyển chuyển: Có thể phân loại ảnh thành các nhóm mới mà không cần đào tạo lại.
- Khả năng mở rộng: Khả năng điều chỉnh nhanh chóng theo các trường hợp sử dụng và phạm vi mới.
- Giảm sự phụ thuộc vào dữ liệu: Không cần bộ dữ liệu có nhãn lớn cho từng danh mục mới.
- Giao diện ngôn ngữ tự nhiên: Cho phép người dùng sử dụng văn bản dạng tự do để xác định danh mục6.
Những thách thức và hạn chế
- Độ chính xác: Có thể không phải lúc nào cũng tương ứng với hiệu suất của các mẫu máy chuyên dụng.
- Sự mơ hồ: Có thể gặp khó khăn khi phân biệt những khác biệt nhỏ giữa các nhóm có liên quan.
- Độ lệch: Có thể kế thừa các độ lệch có trong dữ liệu huấn luyện hoặc mô hình ngôn ngữ.
- Tài nguyên tính toán: Vì các mô hình phức tạp nên chúng thường cần công nghệ mạnh hơn.
Các ứng dụng
- Kiểm duyệt nội dung: Điều chỉnh theo các hình thức mới của nội dung phản cảm
- Thương mại điện tử: Tìm kiếm và phân loại sản phẩm thích ứng
- Hình ảnh y tế: Nhận biết các bệnh không phổ biến hoặc điều chỉnh theo tiêu chuẩn chẩn đoán mới
Định hướng tương lai
- Cấu trúc mô hình được cải tiến
- Hợp nhất đa phương thức
- Tích hợp học tập ít
- AI có thể giải thích cho các mô hình không bắn
- Khả năng thích ứng miền được nâng cao
Cũng đọc: Xây dựng mô hình phân loại hình ảnh đầu tiên của bạn chỉ trong 10 phút!
Phần kết luận
Một bước phát triển quan trọng trong lĩnh vực thị giác máy tính và học máy là phân loại hình ảnh zero-shot, dựa trên ý tưởng tổng quát hơn về zero-shot studying. Bằng cách cho phép các mô hình phân loại hình ảnh thành các danh mục chưa từng thấy trước đây, công nghệ này mang đến sự linh hoạt và khả năng thích ứng chưa từng có. Nghiên cứu trong tương lai sẽ mang lại những hệ thống mạnh mẽ và linh hoạt hơn nữa, có thể dễ dàng điều chỉnh theo các khái niệm trực quan mới, có thể nâng cấp nhiều lĩnh vực và ứng dụng.
Các câu hỏi thường gặp
A. Phân loại hình ảnh truyền thống yêu cầu các ví dụ có nhãn cho mỗi lớp mà nó có thể nhận dạng, trong khi phương pháp này có thể phân loại hình ảnh thành các lớp mà nó chưa từng thấy rõ trong quá trình đào tạo.
A. Nó sử dụng các mô hình đa phương thức được đào tạo trên các tập dữ liệu lớn về hình ảnh và mô tả văn bản. Các mô hình này học cách tạo ra các biểu diễn được căn chỉnh của thông tin trực quan và văn bản, cho phép chúng khớp các hình ảnh mới với các mô tả văn bản của các danh mục.
A. Những lợi thế chính bao gồm tính linh hoạt để phân loại thành các danh mục mới mà không cần đào tạo lại, khả năng mở rộng sang các miền mới, giảm sự phụ thuộc vào dữ liệu được gắn nhãn và khả năng sử dụng ngôn ngữ tự nhiên để chỉ định các danh mục.
Đáp. Có, một số hạn chế bao gồm khả năng có độ chính xác thấp hơn so với các mô hình chuyên dụng, khó khăn trong việc phân biệt tinh tế giữa các danh mục tương tự, các sai lệch có khả năng kế thừa và yêu cầu tính toán cao hơn.
A. Các ứng dụng bao gồm kiểm duyệt nội dung, phân loại sản phẩm thương mại điện tử, chụp ảnh y tế cho các tình trạng hiếm gặp, theo dõi động vật hoang dã và nhận dạng đối tượng trong robotic.
[ad_2]
Source link