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

TensorFlow có thể được sử dụng như thế nào để đào tạo mô hình cho tập dữ liệu Fashion MNIST bằng Python?


Tensorflow là một khuôn khổ học máy do Google cung cấp. Nó là một khung công tác mã nguồn mở được sử dụng cùng với Python để triển khai các thuật toán, ứng dụng học sâu và hơn thế nữa. Nó được sử dụng trong nghiên cứu và cho mục đích sản xuất.

Gói 'tensorflow' có thể được cài đặt trên Windows bằng dòng mã bên dưới

 pip cài đặt tensorflow 

Tensor là một cấu trúc dữ liệu được sử dụng trong TensorFlow. Nó giúp kết nối các cạnh trong một sơ đồ luồng. Sơ đồ luồng này được gọi là 'Biểu đồ luồng dữ liệu'. Tensors không là gì ngoài mảng nhiều chiều hoặc một danh sách.

Tập dữ liệu ‘Fashion MNIST’ chứa hình ảnh về các loại quần áo khác nhau. Nó chứa hình ảnh thang độ xám của hơn 70 nghìn bộ quần áo thuộc 10 danh mục khác nhau. Những hình ảnh này có độ phân giải thấp (28 x 28 pixel).

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. Sau đây là mã -

Ví dụ

 print ("Mô hình phù hợp với dữ liệu") model.fit (train_images, train_labels, epochs =15) print ("Độ chính xác đang được tính toán") test_loss, test_acc =model.evaluate (test_images, test_labels, verbose =2) print ('\ nĐộ chính xác của bài kiểm tra là:', test_acc) 

Mã tín dụng - https://www.tensorflow.org/tutorials/keras/classification

Đầu ra

 Mô hình phù hợp với dữ liệuEpoch 1/151875/1875 [=================================] - 4 giây 2ms / step - loss:0,6337 - chính xác:0,7799Epoch 2/151875/1875 [=================================] - 3 giây 2ms / bước - suy hao:0,3806 - độ chính xác:0,8622Epoch 3/151875/1875 [=================================] - 3 giây 2ms / bước - mất:0,3469 - độ chính xác:0,8738Epoch 4/151875/1875 [=================================] - 3s 2ms / bước - mất:0,3131 - độ chính xác:0,8853Epoch 5/151875/1875 [==================================] - 3 giây 2ms / bước - mất:0,2962 - độ chính xác:0,8918Epoch 6/151875/1875 [==============================] - 3s 2ms / bước - mất:0,2875 - độ chính xác:0,8935Epoch 7/151875/1875 [====================================] - 3s 2ms / bước - mất:0,2705 - độ chính xác:0,8998Epoch 8/151875/1875 [==============================] - 3s 2ms / bước - mất:0,2569 - độ chính xác:0,9023Epoch 9/151875/1875 [==============================] - 3s 2ms / bước - mất:0,2465 - độ chính xác:0,9060Epoch 10/151875/1875 [==============================] - 3 giây 2ms / bước - mất mát:0,2440 - độ chính xác:0,9088Epoch 15/111875/1875 [=================================] - 3 giây 2ms / bước - mất:0,2300 - độ chính xác:0,9143Epoch 12/151875/1875 [=================================] - 3 giây 2ms / step - loss:0,2255 - chính xác:0,9152Epoch 13/151875/1875 [=================================] - 3 giây 2ms / bước - mất:0,2114 - độ chính xác:0,9203Chuyên đề 14/151875/1875 [=================================] - 3 giây 2ms / bước - mất:0,2101 - độ chính xác:0,9211Chữ 15/151875/1875 [=================================] - 3 giây 2ms / bước - mất:0,2057 - độ chính xác:0,9224 

Giải thích

  • Mô hình được đào tạo bằng cách cung cấp dữ liệu đào tạo đầu tiên và xây dựng mô hình. ‘Train_images’ và ‘train_labels’ là các mảng dữ liệu đầu vào.

  • Mô hình nghiêng để ánh xạ hình ảnh với các nhãn tương ứng.

  • ‘Test_images’ lưu trữ dữ liệu thử nghiệm.

  • Khi tập dữ liệu thử nghiệm được sử dụng, các dự đoán được đưa ra sẽ khớp với nhãn thực của dữ liệu trong tập dữ liệu thử nghiệm.

  • Phương thức ‘model.fit’ được gọi để nó có thể điều chỉnh moel với tập dữ liệu đào tạo.

  • Hàm 'model.evaluate' cung cấp độ chính xác và mất mát liên quan đến việc đào tạo.