Rekurencyjne sieci neuronowe (RNN) do modelowania języka w Keras
David Cecchini
Data Scientist
API wysokiego poziomu
Działa na bazie TensorFlow 2
Łatwa instalacja i użycie
$pip install tensorflow
Szybkie eksperymentowanie:
from tensorflow import keras
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import LSTM, Dense
keras.models.Sequential

keras.models.Model

LSTMGRUDenseDropoutEmbeddingBidirectionalkeras.preprocessing.sequence.pad_sequences(texts, maxlen=3)

Wiele przydatnych zbiorów danych
I wiele więcej!
Pełna lista i przykłady użycia: dokumentacja keras
# Import required modules
from tensorflow import keras
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
# Instantiate the model class
model = Sequential()
# Add the layers
model.add(Dense(64, activation='relu', input_dim=100))
model.add(Dense(1, activation='sigmoid'))
# Compile the model
model.compile(optimizer='adam', loss='mean_squared_error', metrics=['accuracy'])
Metoda .fit() trenuje model na zbiorze treningowym
model.fit(X_train, y_train, epochs=10, batch_size=32)
epochs określa liczbę aktualizacji wag modelubatch_size rozmiar danych na każdym krokuEwaluacja modelu:
model.evaluate(X_test, y_test)
[0.3916562925338745, 0.89324]
Predykcja na nowych danych:
model.predict(new_data)
array([[0.91483957],[0.47130653]], dtype=float32)
# Build and compile the model model = Sequential()model.add(Embedding(10000, 128)) model.add(LSTM(128, dropout=0.2)) model.add(Dense(1, activation='sigmoid'))model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# Training
model.fit(x_train, y_train, epochs=5)
# Evaluation
score, acc = model.evaluate(x_test, y_test)
Rekurencyjne sieci neuronowe (RNN) do modelowania języka w Keras