บทนำเกี่ยวกับ TensorFlow
TensorFlow เป็นเฟรมเวิร์กการเรียนรู้ของเครื่องที่พัฒนาโดย Google เป็นโค้ดเปิด (open-source) ใช้ร่วมกับ Python เพื่อนำอัลกอริทึม การเรียนรู้เชิงลึก (deep learning) และอื่นๆ มาใช้งาน ได้รับการเพิ่มประสิทธิภาพเพื่อคำนวณทางคณิตศาสตร์ที่ซับซ้อนได้อย่างรวดเร็ว เนื่องจากใช้ NumPy และอาร์เรย์หลายมิติ (multi-dimensional arrays) ซึ่งเรียกอีกอย่างว่า "เทนเซอร์" (tensors) เฟรมเวิร์กนี้รองรับการทำงานกับโครงข่ายประสาทเทียมเชิงลึก (deep neural networks)
การติดตั้ง TensorFlow
สามารถติดตั้งแพ็กเกจ tensorflow บน Windows ได้ด้วยคำสั่ง:
pip install tensorflow
ความเข้าใจเกี่ยวกับ Tensor และ Keras
Tensor เป็นโครงสร้างข้อมูลใน TensorFlow ใช้เชื่อมต่อขอบในแผนภาพกระแสข้อมูล (Data flow graph) เทนเซอร์ก็คืออาร์เรย์หลายมิติหรือรายการ (list)
Keras เป็น API การเรียนรู้เชิงลึกระดับสูง เขียนด้วย Python มีอินเตอร์เฟซที่ใช้งานง่าย ช่วยแก้ปัญหาการเรียนรู้ของเครื่องได้อย่างรวดเร็ว ทำงานบน TensorFlow และอยู่ภายในแพ็กเกจ TensorFlow แล้ว สามารถนำเข้าได้ด้วย:
import tensorflow as tf from tensorflow import keras
ตัวอย่าง: การสร้างโมเดล Sequential สำหรับ MNIST
ใช้ Google Colaboratory (Colab) รันโค้ด Python บนเบราว์เซอร์ ฟรี ไม่ต้องตั้งค่า เข้าถึง GPU ได้ ฟรี สร้างบน Jupyter Notebook
print("กำลังกำหนดโมเดล Sequential")
def create_model():
model = tf.keras.models.Sequential([
keras.layers.Dense(512, activation='relu', input_shape=(784,)),
keras.layers.Dropout(0.2),
keras.layers.Dense(10)
])
model.compile(optimizer='adam',
loss=tf.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=[tf.metrics.SparseCategoricalAccuracy()])
return model
print("กำลังสร้างอินสแตนซ์ของโมเดล")
model = create_model()
print("แสดงสถาปัตยกรรมของโมเดล Sequential")
model.summary()
ที่มาโค้ด: TensorFlow Tutorials
ผลลัพธ์

คำอธิบาย
- สร้างโมเดล Sequential ด้วย Keras
- เพิ่มเลเยอร์ Dense (เลเยอร์เชื่อมต่อเต็มรูปแบบ)
- คอมไพล์โมเดลด้วย optimizer, loss function และ metrics
- สร้างอินสแตนซ์ของโมเดล
- แสดงรายละเอียดโมเดลด้วยเมธอด
summary()