แก้ไข: CPU ของคุณรองรับคำแนะนำที่ TensorFlow Binary นี้ไม่ได้รวบรวมเพื่อใช้ AVX2

Advanced Vector Extensions ( AVX หรือที่รู้จักกันในชื่อ Sandy Bridge New Extensions ) เป็นส่วนขยายของสถาปัตยกรรมชุดคำสั่ง x86 สำหรับไมโครโปรเซสเซอร์จาก Intel และ AMD ที่เสนอโดย Intel ในเดือนมีนาคม 2008 และได้รับการสนับสนุนครั้งแรกจาก Intel ด้วยโปรเซสเซอร์ Sandy Bridge ที่จัดส่งในไตรมาสที่ 1 ปี 2011 เปิดตัวโดย AMD พร้อมตัวประมวลผล Bulldozer ที่จัดส่งในไตรมาสที่ 3 ปี 2011 AVX นำเสนอคุณสมบัติใหม่คำสั่งใหม่และรูปแบบการเข้ารหัสใหม่

คำเตือนจะปรากฏใน cmd

ข้อความเตือนนี้พิมพ์โดยไลบรารีที่แบ่งใช้ของ TensorFlow ตามที่ระบุในข้อความไลบรารีที่แบ่งใช้จะไม่มีคำแนะนำที่ CPU ของคุณสามารถใช้ได้

คำเตือนนี้ทำให้เกิดอะไร

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

AVX ทำอะไรได้บ้าง

โดยเฉพาะอย่างยิ่ง AVX แนะนำ FMA (Fused ทวีคูณเพิ่ม); ซึ่งเป็นการดำเนินการเพิ่มจำนวนจุดลอยตัวและการดำเนินการทั้งหมดนี้ทำได้ในขั้นตอนเดียว สิ่งนี้จะช่วยเร่งการดำเนินงานจำนวนมากโดยไม่มีปัญหาใด ๆ มันทำให้การคำนวณพีชคณิตเร็วขึ้นและใช้งานง่ายยิ่งขึ้นเช่น dot-product, เมทริกซ์ทวีคูณ, convolution, ฯลฯ และนี่คือการดำเนินการพื้นฐานที่ใช้มากที่สุดและพื้นฐานสำหรับการฝึกอบรมการเรียนรู้ด้วยเครื่อง ซีพียูที่รองรับ AVX และ FMA นั้นจะเร็วกว่าซีพียูรุ่นเก่า แต่คำเตือนระบุว่า CPU ของคุณรองรับ AVX ดังนั้นจึงเป็นจุดที่ดี

เทคโนโลยี Intel AVX

ทำไมค่าเริ่มต้นไม่ได้ถูกใช้?

นั่นเป็นเพราะการแจกจ่ายเริ่มต้นของ TensorFlow ถูกสร้างโดยไม่มีส่วนขยายของ CPU โดยส่วนขยายของ CPU มันระบุ AVX, AVX2, FMA ฯลฯ คำแนะนำที่ก่อให้เกิดปัญหานี้ไม่ได้เปิดใช้งานโดยค่าเริ่มต้นในการสร้างเริ่มต้นที่มีอยู่ เหตุผลที่พวกเขาไม่ได้เปิดใช้งานเพื่อให้เข้ากันได้กับ CPU มากที่สุด นอกจากนี้เพื่อเปรียบเทียบส่วนขยายเหล่านี้พวกเขาทำงานช้ากว่าใน CPU มากกว่า GPU CPU ถูกใช้ในการเรียนรู้ของเครื่องขนาดเล็กในขณะที่คาดว่าจะใช้ GPU เมื่อมันถูกใช้สำหรับการฝึกอบรมการเรียนรู้ด้วยเครื่องจักรขนาดกลางหรือขนาดใหญ่

แก้ไขคำเตือน!

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

หากคุณมี GPU ในเครื่องของคุณคุณสามารถเพิกเฉยต่อคำเตือนเหล่านี้ได้จากฝ่ายสนับสนุน AVX เพราะอันที่แพงที่สุดจะถูกจัดส่งบนอุปกรณ์ GPU และหากคุณไม่ต้องการเห็นข้อผิดพลาดอีกต่อไปคุณสามารถเพิกเฉยได้โดยเพิ่มสิ่งนี้:

นำเข้า โมดูลระบบปฏิบัติการ ในรหัสโปรแกรมหลักของคุณและตั้งวัตถุการทำแผนที่สำหรับมัน

 # สำหรับปิดใช้งานคำเตือนระบบ การนำเข้า os.environ ['TF_CPP_MIN_LOG_LEVEL'] = '2' 

แต่ถ้าคุณอยู่บน Unix ให้ใช้คำสั่ง export ใน bash shell

 ส่งออก TF_CPP_MIN_LOG_LEVEL = 2 

แต่ถ้าไม่มี GPU และคุณต้องการใช้ CPU ของคุณให้มากที่สุดคุณควรสร้าง TensorFlow จากแหล่งที่ปรับให้เหมาะกับ CPU ของคุณด้วยการเปิดใช้งาน AVX, AVX2 และ FMA ที่นี่

บทความที่น่าสนใจ