2015-06-09 5 views
38

यह काफी निराशाजनक प्रश्न बन गया है, लेकिन मैंने Coursera चर्चाओं में पूछा है और वे मदद नहीं करेंगे।इस तालिका में एक विशेषता को सामान्य करें

enter image description here

मैं अब यह गलत 6 बार मिल गया है: नीचे प्रश्न है। मैं सुविधा को सामान्य कैसे कर सकता हूं? संकेत मैं सभी के लिए पूछ रहा हूँ।

मुझे लगता है कि x_2^(2) मान 5184 है, जब तक कि मैं 1 का x_0 कॉलम जोड़ नहीं रहा हूं, जिसका उल्लेख नहीं है लेकिन डिज़ाइन मैट्रिक्स एक्स बनाने के बारे में बात करते समय वह निश्चित रूप से व्याख्यान में उल्लेख करता है। किस मामले में x_2^(2) मान 72 होगा। मान लीजिए कि एक या दूसरा सही है (मैं अनुमान लगाने वाला गेम खेल रहा हूं), मुझे इसे सामान्य करने के लिए क्या उपयोग करना चाहिए? वह व्याख्यान में सामान्यीकृत करने के लगभग 3 अलग-अलग तरीकों की बात करते हैं: अधिकतम मूल्य का उपयोग करते हुए, दूसरा अधिकतम और मिनट के बीच सीमा/अंतर के साथ, और दूसरा मानक विचलन - वे सौवां पर सही उत्तर चाहते हैं। मैं किस का उपयोग कर रहा हूँ? यह बहुत भ्रमित है।

+1

मैं एक ही सवाल पर अटक कर रहा हूँ: अब, सामान्यीकृत रूप

x = (x - mean(x's))/range(x) 

मान रहे हैं। क्या आपके उत्तर में से कोई जवाब आपके लिए काम करता है? –

+1

मेरे जैसे किसी को भी जो संख्याओं को सही मानता है लेकिन अभी भी इस सवाल में असफल रहा: मेरे मामले में, मैं पूछने के लिए गोल करना भूल गया। मेरा प्रश्न चौथी फीचर के लिए यादृच्छिक है, मेरी गणना मुझे मिली -0.469 जो कि -0.47 तक गोल होनी चाहिए और मैंने -0.46 पोस्ट किया था। रवींद्र! – ido

उत्तर

32

... का उपयोग दोनों सुविधा स्केलिंग (एक विशेषता की, "अधिकतम मिनट", या सीमा से विभाजित) और सामान्य मतलब है।

किसी भी व्यक्ति सुविधा च के लिए

तो:

f_norm = (f - f_mean)/(f_max - f_min) 

उदा x2 के लिए, (मध्यावधि परीक्षा)^2 = {7921, 5184, 8836, 4761}

> x2 <- c(7921, 5184, 8836, 4761) 
> mean(x2) 
6676 
> max(x2) - min(x2) 
4075 
> (x2 - mean(x2))/(max(x2) - min(x2)) 
0.306 -0.366 0.530 -0.470 

इसलिए आदर्श (5184) = 0।366

मैं मानता हूँ यह भ्रामक है वे अंकन x2 इस्तेमाल किया (आर भाषा है, जो इस तरह vectorizing भाव में बहुत अच्छा है का उपयोग करते हुए) (2) मतलब x2 (आदर्श) या x2 '


संपादित करें : अभ्यास में हर कोई बिल्टिन scale(...) फ़ंक्शन को कॉल करता है, जो वही काम करता है।

+0

उत्तर के लिए धन्यवाद। लेकिन मैंने देखा कि कोड की अंतिम पंक्ति होना चाहिए (x2-mean (x2))/(अधिकतम (x2) - न्यूनतम (x2)) –

+0

@ फ़ैंगकाओ: दोह! पृथ्वी पर कैसे मैंने इसे उलट दिया !? – smci

+10

यह '-.366' नहीं होना चाहिए? –

0

आम तौर पर हम सभी को शून्य मतलब होने और [-1, 1] के बीच जाने के लिए सामान्यीकृत करते हैं।

आप अधिकतम पूर्ण मूल्य से विभाजित करके आसानी से ऐसा कर सकते हैं और फिर नमूने के माध्य को हटा सकते हैं।

0

"मुझे लगता है कि x_2^(2) मान 5184 है" यह इसलिए है क्योंकि यह सूची में दूसरा आइटम है और सबस्क्रिप्ट _2 का उपयोग कर रहा है? x_2 गणित में सिर्फ एक परिवर्तनीय पहचान है, यह सूची में सभी पंक्तियों पर लागू होता है। ध्यान दें कि उच्चतम कच्चे मध्य-अवधि परीक्षा परिणाम (यानी जो वर्ग नहीं है) अंतिम परीक्षण पर नीचे चला जाता है और अंतिम परीक्षा परिणाम के लिए सबसे कम कच्चे मध्य-अवधि के परिणाम में सबसे अधिक वृद्धि होती है। थेटा एक निश्चित मूल्य है, एक गुणांक, इसलिए कहीं भी आपका व्यवहार x_1 और x_2 मानों का सामान्यीकरण होना चाहिए (संपादित करें: ऋणात्मक नहीं, 1 से कम) इस व्यवहार की अनुमति देने के लिए। यह उम्मीद करनी चाहिए कि पिवट बिंदु कहां है, इसकी पहचान करके आपको प्रारंभिक आधार देना चाहिए।

4

यह फीचर स्केलिंग और सामान्य सामान्यीकरण दोनों का उपयोग करके दूसरे कॉलम के तहत दूसरी सुविधा को सामान्य करने के लिए कह रहा है। इसलिए,

(5184 - 6675.5)/4075 = -0.366

+1

'(5184 - 6675.5)/4075 = -0.366' –

0

मैं एक ही समस्या थी, मेरे मामले में बात की गई थी कि मैं अधिकतम x2 मूल्य (8836) शून्य से कम से कम x2 मूल्य (4761) दो से विभाजित के रूप में औसत उपयोग कर रहा था, के बजाय उदाहरणों की संख्या से विभाजित प्रत्येक x2 मान का योग।

-1

उसी प्रशिक्षण सेट के लिए, मुझे प्रश्न के रूप में प्रश्न मिला। सामान्यीकृत विशेषता x^(3) _1 क्या है?

इस प्रकार, उपरोक्त तालिका में तीसरा प्रशिक्षण पूर्व और पहली सुविधा 94 तक पहुंच जाती है।

x = 94 
mean(89+72+94+69)/4 = 81 
range = 94 - 69 = 25 

Normalized x = (94 - 81)/25 = 0.52 
संबंधित मुद्दे