สามารถใช้ TensorFlow เพื่อแนบหัวการจำแนกประเภทโดยใช้โมเดลตามลำดับที่มีเลเยอร์หนาแน่น โดยใช้โมเดลตัวแยกคุณลักษณะซึ่งกำหนดไว้ก่อนหน้านี้
อ่านเพิ่มเติม: TensorFlow คืออะไรและ Keras ทำงานร่วมกับ TensorFlow เพื่อสร้าง Neural Networks อย่างไร
โครงข่ายประสาทเทียมที่มีอย่างน้อยหนึ่งชั้นเรียกว่าชั้น Convolutional เราสามารถใช้ Convolutional Neural Network เพื่อสร้างแบบจำลองการเรียนรู้
สัญชาตญาณเบื้องหลังการเรียนรู้การถ่ายโอนสำหรับการจัดประเภทรูปภาพคือ หากแบบจำลองได้รับการฝึกอบรมในชุดข้อมูลขนาดใหญ่และทั่วไป โมเดลนี้จะสามารถใช้เป็นแบบจำลองทั่วไปสำหรับโลกแห่งการมองเห็นได้อย่างมีประสิทธิภาพ มันจะได้เรียนรู้ฟีเจอร์แมป ซึ่งหมายความว่าผู้ใช้จะไม่ต้องเริ่มต้นจากศูนย์ด้วยการฝึกโมเดลขนาดใหญ่ในชุดข้อมูลขนาดใหญ่
TensorFlow Hub เป็นพื้นที่เก็บข้อมูลที่มีโมเดล TensorFlow ที่ผ่านการฝึกอบรมล่วงหน้า สามารถใช้ TensorFlow เพื่อปรับแต่งโมเดลการเรียนรู้ได้
เราจะเข้าใจวิธีใช้โมเดลจาก TensorFlow Hub กับ tf.keras ใช้โมเดลการจำแนกรูปภาพจาก TensorFlow Hub เมื่อเสร็จแล้ว การเรียนรู้การถ่ายโอนสามารถทำได้เพื่อปรับแต่งโมเดลสำหรับคลาสรูปภาพที่กำหนดเอง ซึ่งทำได้โดยใช้แบบจำลองลักษณนามที่ฝึกไว้ล่วงหน้าเพื่อถ่ายภาพและคาดการณ์ว่ามันคืออะไร สามารถทำได้โดยไม่ต้องมีการฝึกอบรมใดๆ
เรากำลังใช้ Google Colaboratory เพื่อเรียกใช้โค้ดด้านล่าง Google Colab หรือ Colaboratory ช่วยเรียกใช้โค้ด Python บนเบราว์เซอร์และไม่ต้องมีการกำหนดค่าใดๆ และเข้าถึง GPU ได้ฟรี (หน่วยประมวลผลกราฟิก) Colaboratory ถูกสร้างขึ้นบน Jupyter Notebook
ตัวอย่าง
print("Attaching a classification head") num_classes = len(class_names) model = tf.keras.Sequential([ feature_extractor_layer, tf.keras.layers.Dense(num_classes) ]) print("The base architecture of the model") model.summary() print("The predictions are made") predictions = model(image_batch) print("The dimensions of the predictions") predictions.shape
เครดิตโค้ด −https://www.tensorflow.org/tutorials/images/transfer_learning_with_hub
ผลลัพธ์
Attaching a classification head The base architecture of the model Model: "sequential_3" _________________________________________________________________ Layer (type) Output Shape Param # ================================================================= keras_layer_1 (KerasLayer) (None, 1280) 2257984 _________________________________________________________________ dense_3 (Dense) (None, 5) 6405 ================================================================= Total params: 2,264,389 Trainable params: 6,405 Non-trainable params: 2,257,984 _________________________________________________________________ The predictions are made The dimensions of the predictions TensorShape([32, 5])
คำอธิบาย
- หัวการจำแนกประเภทติดอยู่กับโมเดล
- เมื่อเสร็จแล้ว จะกำหนดสถาปัตยกรรมพื้นฐานของโมเดล
- ทำได้โดยใช้วิธี "สรุป"
- มิติข้อมูลถูกกำหนดไว้แล้ว
- ข้อมูลนี้จะแสดงบนคอนโซล