Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Tensorflow และโมเดลที่ผ่านการฝึกอบรมล่วงหน้าสามารถใช้เพื่อแสดงภาพข้อมูลโดยใช้ Python ได้อย่างไร


สามารถใช้เทนเซอร์โฟลว์และโมเดลที่ได้รับการฝึกอบรมล่วงหน้าเพื่อแสดงภาพข้อมูลโดยใช้ไลบรารี '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

ผลลัพธ์

Tensorflow และโมเดลที่ผ่านการฝึกอบรมล่วงหน้าสามารถใช้เพื่อแสดงภาพข้อมูลโดยใช้ Python ได้อย่างไร

คำอธิบาย

  • เส้นโค้งการเรียนรู้ของการฝึกอบรมและความแม่นยำ/การสูญเสียการตรวจสอบจะแสดงเป็นภาพ

  • สิ่งนี้จะเสร็จสิ้นเมื่อทำการจูนแบบละเอียด

  • การสูญเสียการตรวจสอบจะสูงกว่าการสูญเสียการฝึกอบรม ซึ่งหมายความว่าอาจมีการ overfitting บ้าง

  • การใส่มากเกินไปนี้อาจเนื่องมาจากข้อเท็จจริงที่ว่าชุดข้อมูลการฝึกมีขนาดค่อนข้างเล็กและคล้ายกับชุดข้อมูล MobileNet V2 ดั้งเดิม

  • เมื่อปรับแต่งเสร็จแล้ว โมเดลจะมีความแม่นยำถึง 98% ในชุดการตรวจสอบ