🔟 進階應用與專案示範
🎯 Keras 的進階應用
現在我們已經學會了 Keras 的基礎與核心概念,接下來,我們將探索 Keras 在實際專案中的應用。
✅ 進階應用領域:
- 影像分類(Image Classification)
- 物件偵測(Object Detection)
- 自然語言處理(NLP)
- 時間序列預測(Time Series Forecasting)
- 生成對抗網路(GANs)
✅ 影像分類專案示範(Image Classification)
我們可以使用 Keras 來建立一個影像分類模型,例如 CIFAR-10 數據集。
from tensorflow import keras
from tensorflow.keras import layers
from tensorflow.keras.datasets import cifar10
# 載入 CIFAR-10 數據集
(x_train, y_train), (x_test, y_test) = cifar10.load_data()
# 正規化數據
x_train, x_test = x_train / 255.0, x_test / 255.0
# 建立 CNN 模型
model = keras.Sequential([
layers.Conv2D(32, (3,3), activation='relu', input_shape=(32,32,3)),
layers.MaxPooling2D((2,2)),
layers.Conv2D(64, (3,3), activation='relu'),
layers.MaxPooling2D((2,2)),
layers.Flatten(),
layers.Dense(64, activation='relu'),
layers.Dense(10, activation='softmax')
])
# 編譯模型
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
# 訓練模型
model.fit(x_train, y_train, epochs=10, batch_size=32, validation_data=(x_test, y_test))
✅ 這是一個適用於影像分類的 CNN 模型,適合應用於物件辨識等任務。
✅ NLP 應用(情感分析)
Keras 也可以用於 自然語言處理(NLP),例如情感分析。
from tensorflow.keras.preprocessing.text import Tokenizer
from tensorflow.keras.preprocessing.sequence import pad_sequences
# 建立訓練數據
documents = ["I love this movie!", "This film is terrible.", "Amazing story and characters."]
labels = [1, 0, 1] # 1: 正面情緒, 0: 負面情緒
# Tokenization
tokenizer = Tokenizer(num_words=1000)
tokenizer.fit_on_texts(documents)
sequences = tokenizer.texts_to_sequences(documents)
# 填充序列
padded_sequences = pad_sequences(sequences, maxlen=10)
✅ 這樣可以將文字轉換為數值表示,以便輸入到 NLP 模型中進行訓練。
📝 總結
應用領域 | 範例 |
---|---|
影像分類 | CNN 處理 CIFAR-10 數據集 |
自然語言處理(NLP) | 文字 Tokenization 與情感分析 |
時間序列預測 | LSTM 處理金融數據預測 |
物件偵測 | YOLO 進行即時影像分析 |
生成對抗網路(GANs) | 影像生成與風格轉換 |
🚀 恭喜你!你已經完成了 Keras 教學課程!現在你可以使用 Keras 構建自己的深度學習專案了!🎉 😊