在Keras中進行序列標注任務可以使用循環神經網絡(RNN)或者長短期記憶網絡(LSTM)。以下是一個簡單的示例代碼:
from keras.models import Sequential
from keras.layers import Embedding, LSTM, Dense
# 定義模型
model = Sequential()
model.add(Embedding(input_dim=num_words, output_dim=embed_size, input_length=max_len))
model.add(LSTM(units=100, return_sequences=True))
model.add(Dense(num_classes, activation='softmax'))
# 編譯模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
# 訓練模型
model.fit(X_train, y_train, batch_size=32, epochs=10, validation_data=(X_val, y_val))
在這個示例中,我們使用Embedding層將輸入序列編碼成詞嵌入向量,然后通過LSTM層對序列進行處理,最后通過全連接層輸出預測結果。在編譯模型時,我們使用adam優化器和交叉熵損失函數。在訓練模型時,我們傳入訓練數據X_train和y_train,并指定batch_size、epochs以及驗證集數據。