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

Tensorflow สามารถใช้เปรียบเทียบโมเดลเชิงเส้นและโมเดล Convolutional โดยใช้ Python ได้อย่างไร


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

แพ็คเกจ 'tensorflow' สามารถติดตั้งบน Windows ได้โดยใช้บรรทัดโค้ดด้านล่าง -

pip ติดตั้งเทนเซอร์โฟลว์

Tensor เป็นโครงสร้างข้อมูลที่ใช้ใน TensorFlow ช่วยเชื่อมต่อขอบในแผนภาพการไหล แผนภาพการไหลนี้เรียกว่า 'กราฟการไหลของข้อมูล' เทนเซอร์เป็นเพียงอาร์เรย์หลายมิติหรือรายการ

พวกเขาสามารถระบุได้โดยใช้สามคุณลักษณะหลัก -

  • อันดับ − มันบอกเกี่ยวกับมิติของเทนเซอร์ สามารถเข้าใจได้ว่าเป็นลำดับของเทนเซอร์หรือจำนวนมิติในเทนเซอร์ที่กำหนดไว้

  • ประเภท − มันบอกเกี่ยวกับประเภทข้อมูลที่เกี่ยวข้องกับองค์ประกอบของเทนเซอร์ อาจเป็นเทนเซอร์แบบหนึ่งมิติ สองมิติ หรือ n มิติก็ได้

  • รูปร่าง − เป็นจำนวนแถวและคอลัมน์รวมกัน

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

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

ตัวอย่าง

ต่อไปนี้คือข้อมูลโค้ด:print(“เปรียบเทียบทั้งสองโมเดล")print("โมเดลเชิงเส้นบนข้อมูลเวกเตอร์ไบนารี:")print(binary_model.summary())print("โมเดล ConvNet บนข้อมูลเวกเตอร์แบบ int:" )print(int_model.summary())

เครดิตโค้ด – https://www.tensorflow.org/tutorials/load_data/text

ผลลัพธ์

เปรียบเทียบทั้งสองโมเดลโมเดลเชิงเส้นบนข้อมูลเวกเตอร์ไบนารี:โมเดล:"ลำดับ"_________________________________________________________________ เลเยอร์ (ประเภท) พารามิเตอร์รูปร่างเอาต์พุต #==================================================================หนาแน่น (หนาแน่น) (ไม่มี, 4 ) 40004================================================================พารามิเตอร์ทั้งหมด:40,004 พารามิเตอร์:40,004non พารา:0_____________________________________________________________________________________________________________________________________________________noneconvnet รุ่นบนข้อมูลแบบเวกเตอร์:"Sequential_1" _____________________________________________________________________________________________ เลเยอร์ (ประเภท) ================================================================embedding (ฝัง) (ไม่มี, ไม่มี, 64) 640064_________________________________________________________________conv1d (Conv1D) (ไม่มี, ไม่มี, 64) 20544_________________________________________________________________global_max_pooling1d (Global (ไม่มี, 64) ) 0_________________________________________________________________dense_1 (หนาแน่น) (ไม่มี 4) 260=============================================================================================================================================================================================================================================================================================================================================ไม่มี 

คำอธิบาย

  • เปรียบเทียบโมเดล "ไบนารี" แบบเวกเตอร์และโมเดล "int" แบบเวกเตอร์

  • การเปรียบเทียบนี้จะแสดงบนคอนโซลโดยใช้วิธี "สรุป"