Dùng one-hot encoding để biểu diễn ảnh
Neural network kỳ vọng nhãn lớp trong một tập dữ liệu được tổ chức theo kiểu one-hot encoding: mỗi hàng trong mảng chứa số 0 ở tất cả các cột, trừ cột tương ứng với nhãn duy nhất được đặt thành 1.
Bộ dữ liệu thời trang có ba hạng mục:
- Áo sơ mi
- Váy
- Giày
Trong bài tập này, bạn sẽ tạo one-hot encoding cho một mẫu nhỏ các nhãn này.
Bài tập này là một phần của khóa học
Mô hình hóa ảnh với Keras
Hướng dẫn bài tập
- Khởi tạo biến
ohe_labelsđể chứa mảng one-hot encoded. - Dùng
np.where()để tìm vị trí của hạng mục của từng mục trong mỗi vòng lặp trongcategories. - Gán giá trị
1vào đúng kết hợp hàng/cột ở mỗi vòng lặp.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# The number of image categories
n_categories = 3
# The unique values of categories in the data
categories = np.array(["shirt", "dress", "shoe"])
# Initialize ohe_labels as all zeros
ohe_labels = ____((len(labels), n_categories))
# Loop over the labels
for ii in range(len(labels)):
# Find the location of this label in the categories variable
jj = np.where(___)
# Set the corresponding zero to one
ohe_labels[____] = ____