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

Làm thế nào để Tensorflow có thể được sử dụng để so sánh mô hình tuyến tính và mô hình Hợp lệ 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.

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'. Tensors không là gì khác ngoài một mảng đa chiều hoặc một danh sách.

Chúng có thể được xác định bằng ba thuộc tính chính -

  • Xếp hạng - Nó cho biết về kích thước của tensor. Nó có thể được hiểu là thứ tự của tensor hoặc số kích thước trong tensor đã được xác định.

  • Loại - Nó cho biết về kiểu dữ liệu được liên kết với các phần tử của Tensor. Nó có thể là tensor một chiều, hai chiều hoặc n chiều.

  • Hình dạng - Là số hàng và số cột cùng nhau.

Keras được phát triển như một phần nghiên cứu của dự án ONEIROS (Hệ điều hành Robot thông minh điện tử thần kinh 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ề máy học. 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ó cung cấp các khối xây dựng và trừu tượng thiết yếu cần thiết trong việc phát triển và đóng gói các giải pháp học máy.

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.

Ví dụ

Following is the code snippet:
print(“The two models are compared")
print("Linear model on binary vectorized data:")
print(binary_model.summary())
print("ConvNet model on int vectorized data:")
print(int_model.summary())

Tín dụng mã - https://www.tensorflow.org/tutorials/load_data/text

Đầu ra

The two models are compared
Linear model on binary vectorized data:
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
dense (Dense) (None, 4) 40004
=================================================================
Total params: 40,004
Trainable params: 40,004
Non-trainable params: 0
_________________________________________________________________
None
ConvNet model on int vectorized data:
Model: "sequential_1"
_________________________________________________________________
Layer (type)             Output Shape          Param #
=================================================================
embedding (Embedding) (None, None, 64)          640064
_________________________________________________________________
conv1d (Conv1D)       (None, None, 64)          20544
_________________________________________________________________
global_max_pooling1d (Global (None, 64)          0
_________________________________________________________________
dense_1 (Dense)       (None, 4)                260
=================================================================
Total params: 660,868
Trainable params: 660,868
Non-trainable params: 0
_________________________________________________________________
None

Giải thích

  • Mô hình ‘nhị phân’ được vector hóa và mô hình ‘int’ được vector hóa được so sánh.

  • So sánh này được hiển thị trên bảng điều khiển bằng phương pháp "tóm tắt".