อัปเดต: พฤษภาคม 2021
ข้อมูลต่อไปนี้แสดงถึงภาพรวมระดับสูงของแผนงานของเรา คุณควรทราบว่าแผนงานนี้อาจเปลี่ยนแปลงได้ตลอดเวลา และลำดับด้านล่างไม่ได้แสดงถึงลำดับความสำคัญใดๆ
เราแบ่งแผนงานออกเป็นสี่ส่วนหลัก: การใช้งาน ประสิทธิภาพ การเพิ่มประสิทธิภาพ และความสามารถในการพกพา เราขอแนะนำให้คุณแสดงความคิดเห็นในแผนงานของเราและให้ข้อเสนอแนะใน การอภิปรายกลุ่ม TensorFlow Lite
การใช้งาน
- ขยายขอบเขตปฏิบัติการ
- เพิ่ม ops เป้าหมายตามความคิดเห็นของผู้ใช้
- เพิ่มชุดปฏิบัติการที่กำหนดเป้าหมายสำหรับโดเมนและพื้นที่เฉพาะ เช่น ปฏิบัติการสุ่ม, ปฏิบัติการเลเยอร์ Keras พื้นฐาน, ตารางแฮช, เลือกปฏิบัติการฝึกหัด
- เครื่องมืออำนวยความสะดวกเพิ่มเติม
- จัดเตรียมคำอธิบายประกอบกราฟ TensorFlow และเครื่องมือความเข้ากันได้เพื่อตรวจสอบความเข้ากันได้ของ TFLite และตัวเร่งฮาร์ดแวร์ระหว่างการฝึกอบรมและหลังการแปลง
- อนุญาตการกำหนดเป้าหมายและการเพิ่มประสิทธิภาพสำหรับตัวเร่งความเร็วเฉพาะระหว่างการแปลง
- การฝึกอบรมบนอุปกรณ์
- สนับสนุนการฝึกอบรมในอุปกรณ์สำหรับการปรับเปลี่ยนในแบบของคุณและการถ่ายทอดการเรียนรู้ รวมถึง Colab ที่สาธิตการใช้งานแบบครบวงจร
- รองรับประเภทตัวแปร/ทรัพยากร (ทั้งสำหรับการอนุมานและการฝึกอบรม)
- รองรับการแปลงและดำเนินการกราฟด้วยจุดเข้าใช้งานหลายฟังก์ชัน (หรือลายเซ็น)
- การผสานรวม Android Studio ที่ปรับปรุงแล้ว
- ลากและวางโมเดล TFLite ลงใน Android Studio เพื่อสร้างอินเทอร์เฟซของโมเดล
- ปรับปรุงการรองรับการทำโปรไฟล์ของ Android Studio รวมถึงการทำโปรไฟล์หน่วยความจำ
- ช่างทำโมเดล
- รองรับงานใหม่ๆ รวมถึงการตรวจหาวัตถุ คำแนะนำ และการจัดประเภทเสียง ครอบคลุมการใช้งานทั่วไปที่หลากหลาย
- รองรับชุดข้อมูลมากขึ้นเพื่อให้การโอนย้ายการเรียนรู้ง่ายขึ้น
- ไลบรารีงาน
- รองรับประเภทโมเดลเพิ่มเติม (เช่น เสียง, NLP) พร้อมความสามารถในการประมวลผลก่อนและหลังที่เกี่ยวข้อง
- อัปเดตตัวอย่างอ้างอิงเพิ่มเติมด้วย API ของงาน
- รองรับการเร่งความเร็วแบบสำเร็จรูปสำหรับทุกงาน
- รุ่นและตัวอย่าง SOTA เพิ่มเติม
- เพิ่มตัวอย่างเพิ่มเติม (เช่น เสียง, NLP, ข้อมูลโครงสร้างที่เกี่ยวข้อง) เพื่อสาธิตการใช้งานโมเดล ตลอดจนคุณลักษณะใหม่และ API ที่ครอบคลุมแพลตฟอร์มต่างๆ
- สร้างโมเดลแกนหลักที่แชร์ได้สำหรับอุปกรณ์เพื่อลดต้นทุนการฝึกอบรมและการใช้งาน
- การปรับใช้ที่ราบรื่นในหลายแพลตฟอร์ม
- เรียกใช้รุ่น TensorFlow Lite บนเว็บ
- ปรับปรุงการรองรับข้ามแพลตฟอร์ม
- ขยายและปรับปรุง API สำหรับ Java บน Android, Swift บน iOS, Python บน RPi
- ปรับปรุงการสนับสนุน CMake (เช่น การสนับสนุนตัวเร่งในวงกว้าง)
- การสนับสนุนส่วนหน้าที่ดีขึ้น
- ปรับปรุงความเข้ากันได้กับส่วนหน้าการเขียนต่างๆ รวมถึง Keras, tf.numpy
ประสิทธิภาพ
- เครื่องมือที่ดีกว่า
- แดชบอร์ดสาธารณะสำหรับการติดตามประสิทธิภาพที่เพิ่มขึ้นในแต่ละรุ่น
- เครื่องมือเพื่อความเข้าใจที่ดีขึ้นของกราฟความเข้ากันได้กับตัวเร่งเป้าหมาย
- ปรับปรุงประสิทธิภาพของ CPU
- XNNPack เปิดใช้งานโดยค่าเริ่มต้นเพื่อการอนุมานจุดทศนิยมที่เร็วขึ้น
- รองรับความแม่นยำครึ่งหนึ่งจากต้นทางถึงปลายทาง (float16) พร้อมเมล็ดที่ปรับให้เหมาะสม
- อัปเดต NN API รองรับ
- การสนับสนุนอย่างเต็มที่สำหรับคุณลักษณะ NN API เวอร์ชัน Android ที่ใหม่กว่า ops และประเภท
- การเพิ่มประสิทธิภาพ GPU
- ปรับปรุงเวลาเริ่มต้นด้วยการสนับสนุนการทำให้เป็นอนุกรมของผู้รับมอบสิทธิ์
- ฮาร์ดแวร์บัฟเฟอร์ interop สำหรับการอนุมานศูนย์สำเนา
- ความพร้อมใช้งานที่กว้างขึ้นของการเร่งความเร็วอุปกรณ์
- ความคุ้มครองที่ดีขึ้น
การเพิ่มประสิทธิภาพ
การหาปริมาณ
- การหาปริมาณหลังการฝึกที่เลือกเพื่อแยกชั้นบางชั้นออกจากการหาปริมาณ
- ดีบักเกอร์ Quantization เพื่อตรวจสอบการสูญเสียข้อผิดพลาดของ quantization ต่อแต่ละเลเยอร์
- การใช้การฝึกอบรมเชิงปริมาณโดยคำนึงถึงความครอบคลุมของแบบจำลองมากขึ้น เช่น TensorFlow Model Garden
- การปรับปรุงคุณภาพและประสิทธิภาพสำหรับการควอนไทซ์ช่วงไดนามิกหลังการฝึก
- Tensor Compression API เพื่ออนุญาตให้ใช้อัลกอริธึมการบีบอัด เช่น SVD
การตัดแต่งกิ่ง / กระปรี้กระเปร่า
- รวม APIs เวลาฝึกอบรมที่กำหนดค่าได้ (การตัดแต่งกิ่ง + การฝึกอบรมที่คำนึงถึงปริมาณ)
- เพิ่มความกระปรี้กระเปร่าในโมเดล TF Model Garden
- รองรับการดำเนินการโมเดลแบบกระจายใน TensorFlow Lite
การพกพา
- รองรับไมโครคอนโทรลเลอร์
- เพิ่มการรองรับกรณีการใช้งานสถาปัตยกรรม MCU แบบ 32 บิตสำหรับการจัดประเภทคำพูดและรูปภาพ
- ส่วนหน้าของเสียง: รองรับการประมวลผลล่วงหน้าและการเร่งความเร็วเสียงในกราฟ
- โค้ดตัวอย่างและแบบจำลองสำหรับข้อมูลภาพและเสียง