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

Keras สามารถใช้กับโมเดลที่ผ่านการฝึกอบรมล่วงหน้าโดยใช้ Python ได้อย่างไร


Tensorflow คือเฟรมเวิร์กแมชชีนเลิร์นนิงที่ให้บริการโดย Google เป็นเฟรมเวิร์กโอเพนซอร์สที่ใช้ร่วมกับ Python เพื่อใช้อัลกอริทึม แอปพลิเคชันการเรียนรู้เชิงลึก และอื่นๆ อีกมากมาย ใช้ในการวิจัยและเพื่อการผลิต

Keras หมายถึง 'เขา' ในภาษากรีก Keras ได้รับการพัฒนาโดยเป็นส่วนหนึ่งของการวิจัยสำหรับโครงการ ONEIROS (ระบบปฏิบัติการหุ่นยนต์อัจฉริยะ Neuro-Electronic ปลายเปิด) Keras เป็น API การเรียนรู้เชิงลึกซึ่งเขียนด้วยภาษา Python เป็น API ระดับสูงที่มีอินเทอร์เฟซการทำงานที่ช่วยแก้ปัญหาแมชชีนเลิร์นนิง

มันทำงานบนเฟรมเวิร์ก Tensorflow มันถูกสร้างขึ้นเพื่อช่วยทดลองในลักษณะที่รวดเร็ว โดยนำเสนอสิ่งที่เป็นนามธรรมและการสร้างบล็อคที่จำเป็นต่อการพัฒนาและการห่อหุ้มโซลูชันแมชชีนเลิร์นนิง

สามารถปรับขนาดได้สูงและมาพร้อมกับความสามารถข้ามแพลตฟอร์ม ซึ่งหมายความว่า Keras จะทำงานบน TPU หรือคลัสเตอร์ของ GPU ได้ นอกจากนี้ โมเดล Keras ยังสามารถส่งออกไปยังเว็บเบราว์เซอร์หรือโทรศัพท์มือถือได้อีกด้วย

Keras มีอยู่แล้วในแพ็คเกจ Tensorflow สามารถเข้าถึงได้โดยใช้รหัสบรรทัดด้านล่าง

นำเข้า tensorflow จาก tensorflow นำเข้า keras

เรากำลังใช้ Google Colaboratory เพื่อเรียกใช้โค้ดด้านล่าง Google Colab หรือ Colaboratory ช่วยเรียกใช้โค้ด Python บนเบราว์เซอร์และไม่ต้องมีการกำหนดค่าใดๆ และเข้าถึง GPU ได้ฟรี (หน่วยประมวลผลกราฟิก) Colaboratory ถูกสร้างขึ้นบน Jupyter Notebook ต่อไปนี้เป็นข้อมูลโค้ด -

ตัวอย่าง

print("โหลดโมเดล convolutional ที่โหลดน้ำหนักล่วงหน้า")base_model =keras.applications.Xception( weights='imagenet', include_top=False, pooling='avg')print("โมเดลนี้หยุดทำงาน" )base_model.trainable =Falseprint("โมเดลตามลำดับถูกใช้เพื่อเพิ่มตัวแยกประเภทที่ฝึกได้ที่ด้านบนของฐาน") model =keras.Sequential([ base_model,layer.Dense(1000),])print("Compile the model" )print("Fit the model to the test data")model.compile(...)model.fit(...)

เครดิตโค้ด – https://www.tensorflow.org/guide/keras/sequential_model

ผลลัพธ์

โหลดโมเดลแบบบิดเบี้ยวพร้อมตุ้มน้ำหนักที่ผ่านการฝึกไว้ล่วงหน้าแล้วการดาวน์โหลดข้อมูลจาก https://storage.googleapis.com/tensorflow/kerasapplications/xception/xception_weights_tf_dim_ordering_tf_kernels_notop.h583689472/83683744 [===============================] - 1s 0us/step โมเดลนี้ถูกตรึงไว้ โมเดลแบบต่อเนื่องถูกใช้เพื่อเพิ่มตัวแยกประเภทที่ฝึกได้บนฐาน รวบรวมโมเดล ประกอบโมเดลเข้ากับข้อมูลการทดสอบ 

คำอธิบาย

  • สามารถใช้สแต็กโมเดลตามลำดับร่วมกับความช่วยเหลือของโมเดลที่ได้รับการฝึกอบรมล่วงหน้าเพื่อเริ่มต้นเลเยอร์การจัดหมวดหมู่

  • เมื่อสร้างโมเดลนี้แล้วก็จะคอมไพล์

  • เมื่อการคอมไพล์เสร็จสมบูรณ์ โมเดลนี้จะพอดีกับข้อมูลการฝึก