की तुलना में थोड़ा अलग परिणाम उत्पन्न करता है मैंने न्यूमपी का उपयोग करके "मैनुअल" दृष्टिकोण के साथ preprocessing
मॉड्यूल से विज्ञान-सीखने वाले मिनी-मैक्स स्केलर की तुलना की। हालांकि, मैंने देखा कि परिणाम थोड़ा अलग है। क्या किसी के पास इसके लिए स्पष्टीकरण है?scikit-learn MinMaxScaler NumPy Implemantation
मिन-मैक्स स्केलिंग के लिए निम्न समीकरण का उपयोग करना:
जो के रूप में एक scikit सीखने एक ही होना चाहिए: (X - X.min(axis=0))/(X.max(axis=0) - X.min(axis=0))
मैं उपयोग कर रहा हूँ दोनों दृष्टिकोण इस प्रकार है:
def numpy_minmax(X):
xmin = X.min()
return (X - xmin)/(X.max() - xmin)
def sci_minmax(X):
minmax_scale = preprocessing.MinMaxScaler(feature_range=(0, 1), copy=True)
return minmax_scale.fit_transform(X)
यादृच्छिक नमूना पर:
import numpy as np
np.random.seed(123)
# A random 2D-array ranging from 0-100
X = np.random.rand(100,2)
X.dtype = np.float64
X *= 100
परिणाम थोड़े अलग हैं:
from matplotlib import pyplot as plt
sci_mm = sci_minmax(X)
numpy_mm = numpy_minmax(X)
plt.scatter(numpy_mm[:,0], numpy_mm[:,1],
color='g',
label='NumPy bottom-up',
alpha=0.5,
marker='o'
)
plt.scatter(sci_mm[:,0], sci_mm[:,1],
color='b',
label='scikit-learn',
alpha=0.5,
marker='x'
)
plt.legend()
plt.grid()
plt.show()
बहुत बढ़िया है, धन्यवाद:
ऐसा करने से आपको कोई सटीक मिलान प्राप्त होगा! – Sebastian