Nu wreekt de weggezakte statistiek kennis zich even. Een meetwaarde is natuurlijk meer afwijkend bij een kleine variatie in de waarden dan bij een grote variatie. Kortom ik moet met de standaard deviatie rekening gaan houden. Gelukkig is Numpy daar ook goed in. Ik deel de absolute afwijking van het gemiddelde door de standaard deviatie. Daarmee zou ik dichter bij een verklaring voor de anomalien moeten komen. Ik hoop dat ik dat goed heb bedacht. :-)
Bij het uitvoeren van het programma krijg ik rare 'warnings':
DeprecationWarning: Passing 1d arrays as data is deprecated in 0.17 and willraise ValueError in 0.19. Reshape your data either using X.reshape(-1, 1) if your data has a single feature or X.reshape(1, -1) if it contains a single sample.
Tevens hebben mijn meetwaarden allen een gewicht 'nan':
Grootste bijdrage (%):
MR Vmax nan
MV E/Eprime Ratio/Calc nan
PRend Vmax nan
2D/EDV(Teich) nan
2D/%FS nan
2D/EF(Teich) nan
2D/ESV(Teich) nan
2D/SV(Teich) nan
MV Eprime Velocity nan
LALs(A4C) nan
Hmmm. Toch maar eens de voorgestelde reshape(1,-1) erbij uitvoeren. Ik krijg in ieder geval de waarschuwing niet meer. Maar hij doet er nu wel heel lang over. Uiteindelijk komt hij toch terug met de waarschuwingen. Ik zie nu dat het waarschijnlijk aan de 'predict-functie' van sklearn ligt. De moet, net als in andere NN's nu een array als input krijgen in versie 0.19. Ik pas het aan:
if clf.predict(X[i:i+1])[0] == -1:
Helaas, nog steeds nan waarden. Zal dus toch in de toegevoegde standaard deviatie code zitten. Morgen maar eens verder zoeken.
Geen opmerkingen:
Een reactie posten