TensorFlow và Keras
TensorFlow là framework Deep Learning của Google, và Keras là API high-level tích hợp sẵn, giúp xây dựng mô hình nhanh chóng. TensorFlow được sử dụng tại Google, Airbnb, Intel.
Xây dựng Neural Network đầu tiên
import tensorflow as tf
from tensorflow import keras
# Tạo model Sequential
model = keras.Sequential([
keras.layers.Dense(128, activation='relu', input_shape=(784,)),
keras.layers.Dropout(0.3),
keras.layers.Dense(64, activation='relu'),
keras.layers.Dropout(0.2),
keras.layers.Dense(10, activation='softmax')
])
model.compile(
optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy']
)
model.summary()
Huấn luyện và đánh giá
# Load MNIST dataset
(X_train, y_train), (X_test, y_test) = keras.datasets.mnist.load_data()
X_train = X_train.reshape(-1, 784) / 255.0
X_test = X_test.reshape(-1, 784) / 255.0
# Huấn luyện
history = model.fit(
X_train, y_train,
epochs=10,
batch_size=32,
validation_split=0.2,
callbacks=[keras.callbacks.EarlyStopping(patience=3)]
)
# Đánh giá
test_loss, test_acc = model.evaluate(X_test, y_test)
print(f"Test accuracy: {test_acc:.2%}")
Khi nào dùng Deep Learning?
- Dữ liệu lớn (hàng triệu mẫu)
- Bài toán phức tạp: nhận dạng ảnh, xử lý ngôn ngữ, speech
- Features không rõ ràng, cần model tự học