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

Khi nào nên sử dụng mô hình tuần tự với Tensorflow trong Python? Cho một ví dụ


Mô hình tuần tự có liên quan khi có một chồng lớp đơn giản. Trong ngăn xếp này, mỗi lớp có đúng một tenxơ đầu vào và một tenxơ đầu ra. Nó không phù hợp khi mô hình có nhiều đầu vào hoặc nhiều đầu ra. Nó không thích hợp khi các lớp cần được chia sẻ. Nó không thích hợp khi lớp có nhiều đầu vào hoặc nhiều đầu ra. Nó không thích hợp khi kiến ​​trúc phi tuyến tính được yêu cầu.

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 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. 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'.

Keras được phát triển như một phần nghiên cứu cho dự án ONEIROS (Hệ điều hành Robot thông minh điện tử Neuro kết thúc mở). Keras là một API học sâu, được viết bằng Python. Đây là một API cấp cao có giao diện hiệu quả giúp giải quyết các vấn đề về học máy. Nó chạy trên khuôn khổ Tensorflow. Nó được xây dựng để giúp thử nghiệm một cách nhanh chóng. Nó có khả năng mở rộng cao và đi kèm với các khả năng đa nền tảng. Điều này có nghĩa là Keras có thể chạy trên TPU hoặc các cụm GPU. Các mô hình Keras cũng có thể được xuất để chạy trong trình duyệt web hoặc điện thoại di động.

Keras đã có trong gói Tensorflow. Nó có thể được truy cập bằng cách sử dụng dòng mã dưới đây.

import tensorflow
from tensorflow import keras

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.

Hãy để chúng tôi xem một ví dụ để xác định một mô hình tuần tự với Tensorflow, bao gồm Keras -

Ví dụ

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
print("A sequential model is being defined, that has three layers")
model = keras.Sequential(
   [
      layers.Dense(2, activation="relu", name="layer_1"),
      layers.Dense(3, activation="relu", name="layer_2"),
      layers.Dense(4, name="layer_3"),
   ]
)
print("The model is being called on test data")
x = tf.ones((2, 2))
y = model(x)

Tín dụng mã - https://www.tensorflow.org/guide/keras/sequential_model

Đầu ra

Khi nào nên sử dụng mô hình tuần tự với Tensorflow trong Python? Cho một ví dụ

A sequenital model is being defined, that has three layers
The model is being called on test data
The layers are
[<tensorflow.python.keras.layers.core.Dense object at 0x7fe921aaf7b8>, <tensorflow.python.keras.layers.core.Dense object at 0x7fe921a6d898>, <tensorflow.python.keras.layers.core.Dense object at 0x7fe921a6dc18>]

Giải thích

  • Các gói bắt buộc được nhập và đặt bí danh.

  • Mô hình tuần tự được tạo bằng phương pháp 'tuần tự' có trong Keras.

  • Mô hình này được gọi trên dữ liệu thử nghiệm.

  • Thông tin chi tiết về các lớp của mô hình được hiển thị trên bảng điều khiển.