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

ควรใช้โมเดลตามลำดับกับ Tensorflow ใน Python เมื่อใด ยกตัวอย่าง


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

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

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

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

import tensorflow
from tensorflow import keras

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

ให้เรามาดูตัวอย่างเพื่อกำหนดโมเดลตามลำดับด้วย Tensorflow รวมถึง Keras −

ตัวอย่าง

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
print("A sequential model is being defined, that has three layers")
model = keras.Sequential(
   [
      layers.Dense(2, activation="relu", name="layer_1"),
      layers.Dense(3, activation="relu", name="layer_2"),
      layers.Dense(4, name="layer_3"),
   ]
)
print("The model is being called on test data")
x = tf.ones((2, 2))
y = model(x)

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

ผลลัพธ์

ควรใช้โมเดลตามลำดับกับ Tensorflow ใน Python เมื่อใด ยกตัวอย่าง

A sequenital model is being defined, that has three layers
The model is being called on test data
The layers are
[<tensorflow.python.keras.layers.core.Dense object at 0x7fe921aaf7b8>, <tensorflow.python.keras.layers.core.Dense object at 0x7fe921a6d898>, <tensorflow.python.keras.layers.core.Dense object at 0x7fe921a6dc18>]

คำอธิบาย

  • แพ็คเกจที่จำเป็นจะถูกนำเข้าและนามแฝง

  • โมเดลตามลำดับถูกสร้างขึ้นโดยใช้วิธี 'sequential' ที่มีอยู่ใน Keras

  • โมเดลนี้ใช้ข้อมูลการทดสอบ

  • รายละเอียดเกี่ยวกับเลเยอร์ของโมเดลจะแสดงบนคอนโซล