2012-03-16 15 views
5

के साथ scikits भ्रम मैट्रिक्स मैं scikits इंटरफेस का उपयोग कर पार सत्यापन (stratifiedKfold) के साथ एक एसवीएम वर्गीकरण प्रशिक्षण कर रहा हूँ। प्रत्येक परीक्षण सेट (के) के लिए, मुझे वर्गीकरण परिणाम मिलता है। मैं सभी परिणामों के साथ एक भ्रम मैट्रिक्स चाहते हैं। साइकिट्स में एक भ्रम मैट्रिक्स इंटरफ़ेस है: sklearn.metrics.confusion_matrix (y_true, y_pred) मेरा प्रश्न यह है कि मैं y_true और y_pred मानों को कैसे जमा करूं। वे सरणी (numpy) हैं। क्या मुझे अपने के-फ़ोल्ड पैरामीटर के आधार पर सरणी के आकार को परिभाषित करना चाहिए? और प्रत्येक परिणाम के लिए मुझे सरणी में y_true और y-pred जोड़ना चाहिए ????क्रॉस सत्यापन

+2

मुझे इस समस्या का समाधान मिला। प्रत्येक पुनरावृत्ति के लिए (मेरे के-फोल्ड के माध्यम से) मैं एक "भ्रम मैट्रिक्स" बनाता हूं जिसे मैं पिछले में जोड़ता हूं। इस तरह से मुझे एक सीएन मिलता है जिसमें सभी मान होते हैं। Numpy के साथ इस संचयी मैट्रिक्स (सेमी + = सेमी) – user963386

+0

बनाने के लिए आसान है, लेकिन अगर मैं परिशुद्धता/याद (वर्गीकरण_रपोर्ट) के बारे में एक संचित रिपोर्ट प्राप्त करना चाहता हूं तो मुझे अभी भी समस्या है। प्रत्येक पुनरावृत्ति में "y_true" होगा, y_pred "। मुझे अंतिम रिपोर्ट कैसे प्राप्त हो सकती है? – user963386

+0

क्रॉस-सत्यापन के दौरान, y_true स्थिर रहेगा। Y_pred के लिए, आप भ्रम मैट्रिक्स जैसी ही प्रक्रिया का पालन कर सकते हैं। समेकित/कुल भविष्यवाणियां लें। –

उत्तर

2

आप या तो एक समग्र भ्रम मैट्रिक्स का उपयोग कर सकते हैं या प्रत्येक सीवी विभाजन के लिए गणना कर सकते हैं और भिन्नता के माप के रूप में मैट्रिक्स में प्रत्येक घटक के लिए माध्य और मानक विचलन (या मानक त्रुटि) की गणना कर सकते हैं।

वर्गीकरण रिपोर्ट के लिए, कोड को प्रत्येक आयावी इनपुट के लिए भविष्यवाणियों को पारित करने के लिए 2 आयामी इनपुट स्वीकार करने के लिए संशोधित करने की आवश्यकता होगी और फिर प्रत्येक वर्ग के लिए औसत स्कोर और std विचलन की गणना करें।

+1

आप कुल भ्रम मैट्रिक्स कैसे बना सकते हैं? – Merlin

+0

कोड सहायक होगा ... – Merlin

संबंधित मुद्दे