สามารถใช้เทนเซอร์โฟลว์และโมเดลที่ได้รับการฝึกอบรมล่วงหน้าเพื่อแสดงภาพข้อมูลโดยใช้ไลบรารี 'matplotlib' วิธีการ 'พล็อต' ใช้เพื่อพล็อตข้อมูลบนคอนโซล
อ่านเพิ่มเติม: TensorFlow คืออะไรและ Keras ทำงานร่วมกับ TensorFlow เพื่อสร้าง Neural Networks อย่างไร
โครงข่ายประสาทเทียมที่มีอย่างน้อยหนึ่งชั้นเรียกว่าชั้น Convolutional เราสามารถใช้ Convolutional Neural Network เพื่อสร้างแบบจำลองการเรียนรู้
เราจะเข้าใจวิธีการจำแนกภาพแมวและสุนัขด้วยความช่วยเหลือในการถ่ายโอนการเรียนรู้จากเครือข่ายที่ผ่านการฝึกอบรมมาแล้ว สัญชาตญาณเบื้องหลังการเรียนรู้การถ่ายโอนสำหรับการจัดประเภทรูปภาพคือ หากแบบจำลองได้รับการฝึกอบรมในชุดข้อมูลขนาดใหญ่และทั่วไป โมเดลนี้จะสามารถใช้เป็นแบบจำลองทั่วไปสำหรับโลกแห่งการมองเห็นได้อย่างมีประสิทธิภาพ มันจะได้เรียนรู้ฟีเจอร์แมป ซึ่งหมายความว่าผู้ใช้จะไม่ต้องเริ่มต้นจากศูนย์ด้วยการฝึกโมเดลขนาดใหญ่ในชุดข้อมูลขนาดใหญ่
อ่านเพิ่มเติม: โมเดลที่ปรับแต่งเองจะได้รับการฝึกอบรมล่วงหน้าได้อย่างไร
เรากำลังใช้ Google Colaboratory เพื่อเรียกใช้โค้ดด้านล่าง Google Colab หรือ Colaboratory ช่วยเรียกใช้โค้ด Python บนเบราว์เซอร์และไม่ต้องมีการกำหนดค่าใดๆ และเข้าถึง GPU ได้ฟรี (หน่วยประมวลผลกราฟิก) Colaboratory ถูกสร้างขึ้นบน Jupyter Notebook
ตัวอย่าง
print("Visualizing the data") plt.figure(figsize=(8, 8)) plt.subplot(2, 1, 1) plt.plot(acc, label='Training Accuracy') plt.plot(val_acc, label='Validation Accuracy') plt.ylim([0.8, 1]) plt.plot([initial_epochs-1,initial_epochs-1], plt.ylim(), label='Start Fine Tuning') plt.legend(loc='lower right') plt.title('Training and Validation Accuracy') plt.subplot(2, 1, 2) plt.plot(loss, label='Training Loss') plt.plot(val_loss, label='Validation Loss') plt.ylim([0, 1.0]) plt.plot([initial_epochs-1,initial_epochs-1], plt.ylim(), label='Start Fine Tuning') plt.legend(loc='upper right') plt.title('Training and Validation Loss') plt.xlabel('epoch') plt.show()
เครดิตโค้ด −https://www.tensorflow.org/tutorials/images/transfer_learning
ผลลัพธ์
คำอธิบาย
-
เส้นโค้งการเรียนรู้ของการฝึกอบรมและความแม่นยำ/การสูญเสียการตรวจสอบจะแสดงเป็นภาพ
-
สิ่งนี้จะเสร็จสิ้นเมื่อทำการจูนแบบละเอียด
-
การสูญเสียการตรวจสอบจะสูงกว่าการสูญเสียการฝึกอบรม ซึ่งหมายความว่าอาจมีการ overfitting บ้าง
-
การใส่มากเกินไปนี้อาจเนื่องมาจากข้อเท็จจริงที่ว่าชุดข้อมูลการฝึกมีขนาดค่อนข้างเล็กและคล้ายกับชุดข้อมูล MobileNet V2 ดั้งเดิม
-
เมื่อปรับแต่งเสร็จแล้ว โมเดลจะมีความแม่นยำถึง 98% ในชุดการตรวจสอบ