Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
probml
GitHub Repository: probml/pyprobml
Path: blob/master/notebooks/book1/05/huberLossPlot.ipynb
1192 views
Kernel: Unknown Kernel
import numpy as np import matplotlib.pyplot as plt try: import probml_utils as pml except ModuleNotFoundError: %pip install -qq git+https://github.com/probml/probml-utils.git import probml_utils as pml err = np.linspace(-3.0, 3.0, 60) L1 = abs(err) L2 = err**2 delta = 1.5 ind = abs(err) <= delta huber = np.multiply(0.5 * ind, (err**2)) + np.multiply((1 - ind), (delta * (abs(err) - delta / 2))) vapnik = np.multiply(ind, 0) + np.multiply((1 - ind), (abs(err) - delta)) plt.plot(err, L1, "k-.") plt.plot(err, L2, "r-") plt.plot(err, vapnik, "b:") plt.plot(err, huber, "g-.") plt.legend(["L1", "L2", "$ϵ$-insensitive", "huber"]) plt.ylim((-0.5, 5)) pml.savefig("Huber.pdf") plt.show()