PyTorch Hook คืออะไร สอน PyTorch Hook เจาะลึก Activation Map, Gradient ภายใน Deep Convolutional Neural Network – ConvNet ep.2

จากใน ep ก่อน ๆ ที่เราได้นำ Callback มาประยุกต์ใช้ใน Training Loop เพื่อช่วยให้การเทรนมีความยืดหยุ่น แต่ติดข้อจำกัดว่าเราไม่สามารถเข้าถึงข้อมูลภายในโมเดล Deep Neural Network ในแต่ละ Layer ได้ เนื่องจากการสร้างโมเดลของเราเป็นการเรียกใช้ API ภาษา Python ของ PyTorch แล้วเราจะแก้ปัญหานี้อย่างไรดี

PyTorch 1.3 ออกแล้ว

PyTorch เป็น Machine Learning Library ที่ได้รับความนิยมอย่างต่อเนื่องในหมู่นักวิจัย ตอนนี้ได้ออกเวอร์ชัน 1.3 แล้ว มีฟีเจอร์ใหม่ ๆ เช่น 8-bit Integer Eager Mode Quantization, สนับสนุนอุปกรณ์ Mobile iOS และ Android, สนับสนุน TPU และ Cloud, อนุญาตให้ตั้งชื่อ Tensor, Detectron2, การเข้ารหัส Tensor เพื่อความปลอดภัย สำหรับข้อมูลส่วนตัว, etc.

TensorFlow 2.0.0 ออกแล้ว

หลังจากที่ Google ปล่อย TensorFlow Release 2.0.0-rc2 มาเมื่อสัปดาห์ก่อน วันนี้ก็ได้ฤกษ์ปล่อยตัวจริง ก่อนงาน TensorFlow World ที่จะจัดขึ้นปลายเดือนตุลานี้ TensorFlow 2.0.0 Release ออกแล้ว TF2.0 ออกแบบโดยลดความซับซ้อนลง เน้นให้ใช้งานง่าย และ Integrate กับ Keras อย่างแนบแน่น TF2.0 มีฟีเจอร์ใหม่ ๆ อย่างเช่น

สอน PyTorch reshape, squeeze, unsqueeze, flatten จัดการ Shape ของ Tensor หลายมิติ – Tensor ep.2

ใน ep ที่แล้วเราได้เรียนรู้คุณสมบัติพิเศษของ Tensor ที่มีประโยชน์ในการทำ Operation คณิตศาสตร์ ซึ่งเป็นการกระทำกับข้อมูลใน Tensor แต่ใน ep นี้เราจะมาเจาะลึกลงไปถึงเรื่องการจัดการ รูปร่าง (Shape) หรือ มิติ (Dimension) ของ Tensor โดยที่ข้อมูลภายใน Tensor ทั้งหมดยังเหมือนเดิม จำนวน Element ใน Tensor ยังเท่าเดิม ไม่มีการแก้ไขข้อมูลใด ๆ

ทำไมต้อง Vectorization เปรียบเทียบความเร็ว คูณเมตริกซ์ Matrix Multiplication (Dot Product) ด้วยอัลกอริทึม Vectorization และวน Loop – Tensor ep.3

จาก ep ที่แล้ว ที่เราเรียนรู้ถึงคุณสมบัติพิเศษ ของ Tensor ที่จะมาช่วยในการคำนวนต่าง ๆ เมื่อเรามองเจาะลึกเข้าไปภายในของ Deep Neural Network เราจะพบว่าในขณะที่เราเทรน หรือขณะใช้งานโมเดลก็ตาม Mathematical Operations การดำเนินการทางคณิตศาสตร์ส่วนใหญ่ที่เกิดขึ้นก็คือ การคูณเมตริกซ์ โดยเฉพาะการคูณเมตริกซ์ (Matrix Multiplication) แบบ Dot Product การคูณเมตริกซ์ที่รวดเร็วแม่นยำ มีผลต่อการทำงานของ Neural Network เป็นอย่างมาก

เทนเซอร์ Tensor คืออะไร NumPy Array, Matrix, Vector คืออะไร เรียนรู้วิธีใช้งาน Element-wise, Broadcasting – Tensor ep.1

ในการเรียนรู้ Neural Network เราจะพบเจอโค้ดที่ใช้ List, Vector, NumPy Array ไปจนถึง High-Order Tensor หมายถึง Array ที่มีมากกว่า 2 มิติขึ้นไป เช่น 3 มิติ 4 มิติ หรือ 5 มิติ จนเป็นเรื่องธรรมดา ใน ep นี้เราจะมาเรียนรู้การใช้งาน Tensor ทำความเข้าใจ element-wise, broadcasting operations

ทำไม GPU ถึงจำเป็นต่อ Deep Learning เปรียบเทียบ CPU vs GPU เทรน Deep Neural Network – Hardware ep.2

เราคงเคยได้ยินว่า จำเป็นต้องใช้ GPU ในการเทรน Deep Learning ที่ Deep Learning ทำงานได้ดีในยุคปัจจุบัน ก็เพราะมี Data มหาศาลจากอินเตอร์เน็ต และ มี Hardware คือ GPU ทำให้การวิจัยอัลกอริทึมใหม่ ๆ สร้างโมเดล Deep Neural Network แบบใหม่ ๆ เทคโนโลยีพัฒนาได้อย่างรวดเร็ว แต่มันเป็นเรื่องจริงหรือไม่ GPU มีผลแค่ไหน เทียบกับเราใช้ CPU ธรรมดา เราจะมาทดสอบกัน