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

TensorFlow có thể được sử dụng như thế nào để xây dựng 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 install 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'. Hàng căng 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ã để xây dựng mô hình cho tập dữ liệu Fashion MNIST bằng Python -

Ví dụ

model = tf.keras.Sequential([
    tf.keras.layers.Flatten(input_shape=(28, 28)),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dense(10)
])
print("Sequential model is being built")
model.compile(optimizer='adam',  loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),  metrics=['accuracy'])
print("Sequential model is being compiled")

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

Đầu ra

Sequential model is being built
Sequential model is being compiled

Giải thích

  • Các lớp trong mô hình đã được định cấu hình.

  • Lớp, là khối cơ bản của mạng nơ-ron trích xuất các biểu diễn từ dữ liệu được cấp cho lớp dưới dạng dữ liệu đầu vào.

  • Nhiều lớp đơn giản được nhóm lại với nhau.

  • Một số lớp cũng có các tham số được điều chỉnh để đạt được giá trị tối ưu trong giai đoạn đào tạo.

  • Lớp đầu tiên ‘Làm phẳng’ chuyển đổi hình ảnh từ mảng 2D sang mảng 1D.

  • Lớp này không có bất kỳ thông số nào cần phải học.

  • Sau khi các pixel được làm phẳng, hai lớp 'Dense' được tạo ra, trong đó mỗi lớp dày đặc có 128 tế bào thần kinh. Lớp cuối cùng lặp lại một mảng logits có độ dài 10.

  • Mỗi nơ-ron / nút chứa một giá trị là điểm số cho biết hình ảnh thuộc về lớp nào.

  • Sau đó, mô hình được biên dịch.