Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để Tensorflow được sử dụng để trực quan hóa dữ liệu bằng Python?

Giả sử chúng ta có tập dữ liệu về hoa. Tập dữ liệu về hoa có thể được tải xuống bằng cách sử dụng API của Google, về cơ bản liên kết đến tập dữ liệu về hoa. Phương thức ‘get_file’ có thể được sử dụng để chuyển API dưới dạng tham số. Sau khi hoàn tất, dữ liệu sẽ được tải xuống môi trường.

Nó có thể được hình dung bằng cách sử dụng thư viện ‘matplotlib’. Phương thức ‘imshow’ được sử dụng để hiển thị hình ảnh trên bảng điều khiển.

Đọc thêm: TensorFlow là gì và cách Keras làm việc với TensorFlow để tạo Mạng thần kinh?

Chúng tôi sẽ sử dụng API tuần tự Keras, hữu ích trong việc xây dựng mô hình tuần tự được sử dụng để làm việc với một chồng lớp đơn giản, trong đó mỗi lớp có chính xác một tensor đầu vào và một tensor đầu ra.

Bộ phân loại hình ảnh được tạo bằng mô hình keras.Sequential và dữ liệu được tải bằng preprocessing.image_dataset_from_directory. Dữ liệu được tải ra khỏi đĩa một cách hiệu quả. Việc trang bị quá nhiều được xác định và áp dụng các kỹ thuật để giảm thiểu nó. Những kỹ thuật này bao gồm tăng dữ liệu và bỏ cuộc. Có hình ảnh của 3700 bông hoa. Tập dữ liệu này có 5 thư mục con và có một thư mục con cho mỗi lớp. Đó là:

  • daisy,
  • bồ công anh,
  • hoa hồng,
  • hoa hướng dương và
  • hoa tulip.

Chúng tôi đang sử dụng Google Colaboratory để chạy đoạn mã dưới đây. Google Colab hoặc Colaboratory giúp chạy mã Python qua trình duyệt và không yêu cầu cấu hình cũng như quyền truy cập miễn phí vào GPU (Đơn vị xử lý đồ họa). Colaboratory đã được xây dựng trên Jupyter Notebook.

print("Visualizing the dataset")
import matplotlib.pyplot as plt
plt.figure(figsize=(10, 10))
for images, labels in train_ds.take(1):
   for i in range(6):
      ax = plt.subplot(3, 3, i + 1)
      plt.imshow(images[i].numpy().astype("uint8"))
      plt.title(class_names[labels[i]])
      plt.axis("off")

for image_batch, labels_batch in train_ds:
   print(image_batch.shape)
   print(labels_batch.shape)
   break

Tín dụng mã:https://www.tensorflow.org/tutorials/images/classification

Đầu ra

Visualizing the dataset
(32, 180, 180, 3)
(32,)

Làm cách nào để Tensorflow được sử dụng để trực quan hóa dữ liệu bằng Python?

Giải thích

  • Sau khi dữ liệu được đào tạo bằng cách sử dụng phương pháp phù hợp, tập dữ liệu cũng có thể được lặp lại theo cách thủ công để truy xuất các lô hình ảnh.
  • Dữ liệu này được hiển thị trên bảng điều khiển.
  • Image_batch là một tenxơ của hình dạng (32, 180, 180, 3).
  • Đây là một loạt 32 hình ảnh có hình dạng 180x180x3.
  • label_batch là một tenxơ của hình dạng (32,) và đây là những nhãn tương ứng với 32 hình ảnh.
  • Có thể gọi .numpy () trên image_batch và các tensors label_batch để chuyển đổi chúng thành numpy.ndarray.