จำนวนภาพต่อชั้นเรียนเพียงพอสำหรับการฝึกอบรม CNN


12

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


กำหนด "สมเหตุสมผล" หรือไม่ เป้าหมายของคุณคือความแม่นยำที่สามารถใช้ในระบบการผลิตหรือไม่? เป้าหมายของคุณเป็นอย่างอื่นบ้างไหม? มีกี่คลาส? มีรูปแบบต่าง ๆ ในการฝึกอบรมก่อนและกึ่งฝึกอบรมที่ช่วยให้คุณประหยัดความพยายามดังนั้นคุณสามารถอธิบายได้ว่าข้อกังวลของคุณอยู่ในความพยายามติดฉลากภาพหรือเพียงแค่จัดหาภาพใด ๆ ในที่สุดภาพเป้าหมายของคุณสะอาดและเรียบง่ายแค่ไหน? ภาพที่มีแสงและท่าทางคงที่จะง่ายกว่าในการฝึกอบรมมากกว่าภาพถ่าย "โลกแห่งความจริง" ที่สวมรองเท้าผ้าใบ
Neil Slater

ใช่สิ่งนี้จะถูกใช้ในการผลิต ปัจจุบันฉันไม่รู้ว่าจะมีกี่คลาสเพราะฉันไม่ทราบว่ามีรองเท้าสนีกเกอร์หลากหลายประเภทในไลบรารีรูปภาพ การเดาที่ดีที่สุดของฉันจะอยู่ที่ 50-100 แต่คำอธิบายของรองเท้าก็ยิ่งน้อยชั้นเรียน (เช่น air-jordan vs. air-jordan-ultrafit) น่าเสียดายที่คลังภาพคือการผสมผสานของรองเท้าผ้าใบที่สวมใส่และรองเท้าผ้าใบถูกวางเป็นรายการคงที่ที่มีฉากหลังสีขาว
Feynman27

คำตอบ:


2

จาก ตัวอย่างการฝึกอบรมมีน้อยเกินไปเมื่อฝึกอบรมโครงข่ายประสาทเทียม บน CV:

มันขึ้นอยู่กับชุดข้อมูลของคุณและสถาปัตยกรรมเครือข่าย หนึ่งกฎง่ายๆที่ฉันได้อ่าน (2) คือตัวอย่างสองสามพันตัวอย่างต่อคลาสเพื่อให้เครือข่ายประสาทเทียมเริ่มทำงานได้ดีมาก ในทางปฏิบัติผู้คนลองและดู


วิธีที่ดีในการประเมินคร่าวๆว่ามันจะเป็นประโยชน์ต่อการมีตัวอย่างการฝึกอบรมมากขึ้นคือการวางแผนการทำงานของโครงข่ายประสาทเทียมตามขนาดของชุดฝึกอบรมเช่นจาก (1):

ป้อนคำอธิบายรูปภาพที่นี่



0

วิธีที่ดีที่สุดคือการรวบรวมข้อมูลให้ได้มากที่สุด จากนั้นเริ่มต้นกับโครงการและสร้างแบบจำลองข้อมูล

ตอนนี้คุณสามารถประเมินโมเดลของคุณเพื่อดูว่ามันมีอคติสูงหรือความแปรปรวนสูง

ความแปรปรวนสูง : ในสถานการณ์นี้คุณจะเห็นว่าข้อผิดพลาดการตรวจสอบความถูกต้องสูงกว่าข้อผิดพลาดการฝึกอบรมหลังจากการบรรจบกันมีช่องว่างที่สำคัญถ้าคุณพล็อตแบบเดียวกันกับขนาดข้อมูลการฝึกอบรม

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

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

นอกจากนี้ในแต่ละชั้นเรียนคุณต้องพยายามทำให้ได้จำนวนภาพเท่ากันไม่เช่นนั้นชุดข้อมูลอาจเบ้ (มากกว่าหนึ่งประเภท)

นอกจากนี้ฉันขอแนะนำให้คุณใช้TensorFlowหรือไม่อ่านเพิ่มเติมเกี่ยวกับINCEPTION Image Classifier ของ GOOGLE มันได้รับการฝึกฝนแล้วลักษณนามบนฐานข้อมูลภาพของ google และคุณสามารถใช้มันสำหรับภาพของคุณด้วยวิธีการที่ต้องการสำหรับจำนวนภาพที่ลดลงอย่างมาก


ฉันทำการทดสอบอย่างรวดเร็วโดยใช้ Inception-v3 ของ TensorFlow สิ่งที่ดีที่สุดที่จะทำได้คือให้ฉันจัดหลักสูตรอย่างมากเช่น "รองเท้าวิ่ง" แต่ฉันต้องการสิ่งที่ละเอียดกว่านี้เล็กน้อยเช่น "air-jordan-ultrafit" นี่คือเหตุผลที่ฉันสร้างชุดฝึกอบรมใหม่เพื่อใช้กับ Inception
Feynman27

นั่นเป็นคำนิยามที่แปลก ๆ ของ“ เม็ดเล็ก ๆ น้อย ๆ ”
Jivan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.