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

TensorFlow có thể được sử dụng như thế nào để đưa ra dự đoán cho tập dữ liệu Fashion MNIST bằng Python?

Tensorflow là một khuôn khổ học máy được cung cấp bởi Google. Nó là một khung công tác mã nguồn mở được sử dụng kết hợp 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. Nó có các kỹ thuật tối ưu hóa giúp thực hiện các phép toán phức tạp một cách nhanh chóng. Điều này là do nó sử dụng NumPy và mảng đa chiều. Các mảng đa chiều này còn được gọi là 'tensors'.

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à đoạn mã để đưa ra dự đoán -

Ví dụ

 precision_model =tf.keras.Sequential ([model, tf.keras.layers.Softmax ()]) dự đoán =verify_model.posystem (test_images) print ("Dự đoán đang được thực hiện") print (dự đoán [0]) np. plt.grid (Sai) plt.xticks ([]) plt.yticks ([]) plt.imshow (img, cmap =plt.cm.binary) dự đoán_label =np.argmax (dự đoán_array) nếu dự đoán_label ==true_label:color ='blue' else:color ='red' plt.xlabel ("{} {:2.0f}% ({})". format (class_names [Pred_label], 100 * np.max (Pred_array), class_names [true_label]) , color =color) def plot_value_array (i, suggest_array, true_label):true_label =true_label [i] plt.grid (False) plt.xticks (range (10)) plt.yticks ([]) thisplot =plt.bar (range (10), dự đoán_array, color ="# 777777") plt.ylim ([0, 1]) dự đoán_label =np. 

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

Đầu ra

 Các dự đoán đang được thực hiện [1.3008227e − 07 9.4930819e − 10 2.0181861e − 09 5.4944155e − 10 3.8257373e − 111.3896286e − 04 1.4776078e − 08 3.1724274e − 03 9.4210514e − 11 9.9668854e − 01] The nhãn kiểm tra là9 

Giải thích

  • Một khi mô hình đã được đào tạo, nó cần được kiểm tra.

  • Điều này có thể được thực hiện bằng cách sử dụng mô hình đã xây dựng để đưa ra dự đoán về hình ảnh.

  • Đầu ra tuyến tính, logits và lớp softmax được gắn vào nó.

  • Lớp softmax giúp chuyển đổi nhật ký thành xác suất.

  • Điều này được thực hiện để việc diễn giải các dự đoán được đưa ra dễ dàng hơn.

  • Phương thức ‘plot_value_array’ được xác định để hiển thị các giá trị thực và giá trị dự đoán.