ฉันใช้เครื่องมือ libsvm ( http://www.csie.ntu.edu.tw/~cjlin/libsvm/ ) เพื่อรองรับการจำแนกเวกเตอร์ อย่างไรก็ตามฉันสับสนเกี่ยวกับรูปแบบของข้อมูลอินพุต
จาก README:
รูปแบบของไฟล์ข้อมูลการฝึกอบรมและการทดสอบคือ:
<label> <index1>:<value1> <index2>:<value2> ... . . .
แต่ละบรรทัดมีอินสแตนซ์และสิ้นสุดด้วยอักขระ '\ n' สำหรับการจัดหมวดหมู่
<label>
เป็นจำนวนเต็มที่ระบุคลาสป้ายกำกับ (รองรับหลายคลาส) สำหรับการถดถอย<label>
คือค่าเป้าหมายซึ่งอาจเป็นจำนวนจริงใด ๆ สำหรับ SVM แบบชั้นเดียวไม่ได้ใช้เพื่อให้เป็นหมายเลขใดก็ได้ ทั้งคู่<index>:<value>
ให้ค่าคุณลักษณะ (คุณลักษณะ):<index>
เป็นจำนวนเต็มเริ่มต้นจาก 1 และ<value>
เป็นจำนวนจริง ข้อยกเว้นเพียงอย่างเดียวคือเคอร์เนลที่คำนวณล่วงหน้าซึ่ง<index>
เริ่มต้นจาก 0; ดูส่วนของเมล็ดที่คำนวณล่วงหน้าได้ ดัชนีจะต้องอยู่ในลำดับ ASCENDING ฉลากในไฟล์ทดสอบใช้เพื่อคำนวณความแม่นยำหรือข้อผิดพลาดเท่านั้น หากไม่ทราบให้กรอกตัวเลขใด ๆ ในคอลัมน์แรก
ฉันมีคำถามต่อไปนี้:
- การใช้งาน
<index>
คืออะไร? มันมีจุดประสงค์อะไร - มีความสอดคล้องกันระหว่างค่าดัชนีเดียวกันของอินสแตนซ์ข้อมูลที่ต่างกันหรือไม่?
- ถ้าฉันพลาด / ข้ามดัชนีระหว่างนั้นล่ะ
ฉันถามเพราะ datafile * heart_scale * ซึ่งรวมอยู่ในแพคเกจสำหรับ libsvm ที่บรรทัดที่ 12 ดัชนีเริ่มต้นจาก 2 <value>
ดัชนีสำหรับ 1 ถ่ายไม่รู้จัก / หายไปหรือไม่? หมายเหตุ: เครื่องมือ / checkdata.py เครื่องมือที่ให้มาพร้อมกับแพ็คเกจระบุว่าไฟล์ * heart_scale * ถูกต้อง