TensorFlow中怎么定義模型結(jié)構(gòu)

小億
87
2024-05-10 15:08:01

在TensorFlow中,可以使用tf.keras.Sequential()來(lái)定義模型結(jié)構(gòu)。Sequential()是一個(gè)按照順序構(gòu)建的模型容器,可以通過(guò)添加層來(lái)定義模型的結(jié)構(gòu)。

例如,下面是一個(gè)簡(jiǎn)單的使用Sequential()定義一個(gè)包含兩個(gè)全連接層的神經(jīng)網(wǎng)絡(luò)模型的示例:

import tensorflow as tf

model = tf.keras.Sequential([
    tf.keras.layers.Flatten(input_shape=(28, 28)),  # 將輸入數(shù)據(jù)展平為一維向量
    tf.keras.layers.Dense(128, activation='relu'),  # 添加第一個(gè)全連接層,128個(gè)神經(jīng)元,激活函數(shù)為ReLU
    tf.keras.layers.Dense(10, activation='softmax')  # 添加輸出層,10個(gè)神經(jīng)元,激活函數(shù)為softmax
])

在上面的例子中,我們首先通過(guò)Sequential()創(chuàng)建一個(gè)模型容器,然后添加了一個(gè)Flatten層,將輸入數(shù)據(jù)展平為一維向量,然后添加了一個(gè)包含128個(gè)神經(jīng)元的全連接層,激活函數(shù)為ReLU,最后添加了一個(gè)包含10個(gè)神經(jīng)元的輸出層,激活函數(shù)為softmax。

除了使用Sequential()外,還可以通過(guò)繼承tf.keras.Model類(lèi)來(lái)自定義模型結(jié)構(gòu)。這種方式更加靈活,可以定義更加復(fù)雜的模型結(jié)構(gòu)。

0