tf.hard.Model ()
Nó rất có lợi trong việc liên kết các lớp thành một đối tượng bao gồm các tính năng như đào tạo và suy luận.
Argument
- inputs: Nó có thể được định nghĩa là đầu vào đang được cấp cho mô hình. Nó có thể là một đối tượng của Input hoặc một danh sách các đối tượng, tức là keras.Input.
- outputs: Nó đề cập đến đầu ra của mô hình.
- name: Nó có thể là một chuỗi xác định tên của mô hình.
Các bài viết liên quan:
Sau đây là hai cách mà các mô hình có thể được khởi tạo:
Theo cách đầu tiên, chúng tôi sẽ làm với sự trợ giúp của “API chức năng”. Chúng ta sẽ bắt đầu với Đầu vào , tiếp theo là kết nối các lệnh gọi lớp để chỉ định chuyển tiếp của mô hình và do đó kết thúc bằng cách tạo mô hình bằng cách sử dụng các đầu vào cũng như đầu ra.
import tensorflow as tf inputs = tf.keras.Input(shape=(3,)) x = tf.keras.layers.Dense(4, activation=tf.nn.relu)(inputs) outputs = tf.keras.layers.Dense(5, activation=tf.nn.softmax)(x) model = tf.keras.Model(inputs=inputs, outputs=outputs)
II. Theo cách thứ hai, chúng ta sẽ thực hiện bằng cách phân lớp con của lớp Model . Ở đây, đầu tiên chúng ta sẽ xác định các lớp trong _init_, tiếp theo là thực hiện chuyển tiếp của mô hình trong lệnh gọi .
import tensorflow as tf class MyModel(tf.keras.Model): def __init__(self): super(MyModel, self).__init__() self.dense1 = tf.keras.layers.Dense(4, activation=tf.nn.relu) self.dense2 = tf.keras.layers.Dense(5, activation=tf.nn.softmax) def call(self, inputs): x = self.dense1(inputs) return self.dense2(x) model = MyModel()
Trong khi phân lớp Mô hình , chúng ta cũng có thể có một đối số huấn luyện được gọi là Boolean (là tùy chọn) trong lệnh gọi để chỉ định hành vi riêng biệt trong suy luận cũng như huấn luyện:
import tensorflow as tf class MyModel(tf.keras.Model): def __init__(self): super(MyModel, self).__init__() self.dense1 = tf.keras.layers.Dense(4, activation=tf.nn.relu) self.dense2 = tf.keras.layers.Dense(5, activation=tf.nn.softmax) self.dropout = tf.keras.layers.Dropout(0.5) def call(self, inputs, training=False): x = self.dense1(inputs) if training: x = self.dropout(x, training=training) return self.dense2(x) model = MyModel()
Sau khi tạo mô hình, chúng ta có thể định cấu hình mô hình bằng cách kết hợp các tổn thất và số liệu bằng model.compile () . Mô hình có thể được huấn luyện bằng cách sử dụng model.fit () và với sự trợ giúp của model.posystem () , mô hình có thể đưa ra dự đoán.
Xem thêm:
Model.summary
Model.summary(line_length=None, positions=None, print_f
Nó có thể được sử dụng để in ra bản tóm tắt của mạng dưới dạng một chuỗi.
Tranh luận
- line_length: Nó có thể được định nghĩa là chiều dài tổng hợp của các dòng được in. Ngoài ra, nó có thể được thiết lập để thích ứng với việc hiển thị kích thước cửa sổ của các thiết bị đầu cuối khác nhau.
- positions: Nó đề cập đến vị trí của các phần tử nhật ký trong mỗi và mọi dòng có thể là Tương đối hoặc Tuyệt đối. Trong trường hợp nếu nó không được cung cấp, thì nó có được đặt mặc định thành [.33, .55, .67, 1.] không .
- print_fn: Nó có thể được sử dụng như một hàm in mặc định là in và sẽ được gọi trên mỗi dòng của bản tóm tắt. Để nắm bắt tóm tắt chuỗi, nó có thể được đặt thành chức năng tùy chỉnh.
Raises
- ValueError: Nó có thể tạo ra lỗi giá trị nếu chúng ta gọi tóm tắt () trước khi xây dựng mô hình.
get_layer
Model.get_layer(name=None, index=None)
Nó giúp truy xuất một lớp trên cơ sở tên hoặc chỉ mục duy nhất của nó. Chỉ mục sẽ được ưu tiên trong trường hợp nếu cả tên và chỉ mục đều đã được cung cấp, để các chỉ số dựa trên phương pháp tiếp cận từ dưới lên (đồ thị chuyển ngang).
Argument
- name: Nó có thể được định nghĩa là một chuỗi đại diện cho tên của lớp.
- index: Nó đề cập đến một số nguyên mô tả chỉ số của lớp.
Return
Nó xuất ra một thể hiện của lớp.
Raises
- ValueError: Lỗi giá trị được tạo ra nếu lớp có tên hoặc chỉ mục không hợp lệ.
Xem thêm Class trong Swift