Gibt es eine library-Funktion für Root-mean-square-error (RMSE) in python?

Ich weiß, ich könnte implementieren, die einen root-mean-squared-error-Funktion wie diese:

def rmse(predictions, targets):
    return np.sqrt(((predictions - targets) ** 2).mean())

Was ich Suche, wenn dies rmse-Funktion ist implementiert in eine Bibliothek irgendwo, vielleicht in scipy oder scikit-learn?

  • Sie schrieb die Funktion rechts gibt. Die meisten wahrscheinlich, wenn die Funktion ist, dass einfach zu schreiben, es ist nicht in einer Bibliothek. du bist besser dran, die Schaffung eines Direktors genannten Module und bringen nützliche Funktionen in es und Sie es zu Ihrem Weg
  • Ich bin nicht einverstanden. Ich fände es viel beruhigender zu nennen, eine library-Funktion als zu implementieren, es selbst. Zum Beispiel schrieb ich .sum() statt .mean() versehentlich. Darüber hinaus nehme ich an dieser Funktion so sehr, dass ich sehe keinen Grund, warum es sollte nicht als library-Funktion.
  • Ich verstehe, dass 100%, ich war nur Spekulation, in der Grund, warum diese Art von Funktion ist möglicherweise nicht in scipy. Wenn es ist, ich kann nicht scheinen, um es zu finden
  • Menschen, die das versucht und es hat nicht funktioniert: wenn predictions und targets sind zum Beispiel der Typ int16 dem Platz könnten überlauf (ohne negative zahlen). So müssen Sie möglicherweise eine .astype('int') oder .astype('double') vor der Verwendung der square, wie np.sqrt(((predictions - targets).astype('double') ** 2).mean()).
  • Ein weiterer Vorteil dieser in sklearn ist die sklearn Implementierungen haben eine Menge von zusätzlichen boiler-plate-code, um sicherzustellen, die arrays sind von der gleichen Form, und enthält die GEWICHTE Parameter und verarbeitet auch multi-dimensionale arrays und verschiedene 'array gerne'. Dieser wandelt diese in ein sehr viel komplexeres problem
InformationsquelleAutor siamii | 2013-06-19
Schreibe einen Kommentar