如何画出几种常见二分类损失函数(附代码)
生活随笔
收集整理的這篇文章主要介紹了
如何画出几种常见二分类损失函数(附代码)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在二分類的監督學習中,支持向量機、邏輯斯諦回歸與最大熵模型、提升方法各自使用合頁損失函數、邏輯斯諦損失函數、指數損失函數,分別寫為:
這 3 種損失函數都是 0-1 損失函數的上界,具有相似的形狀。(見下圖,由代碼生成)
import numpy as np import math import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False plt.figure(figsize=(10,8)) x = np.linspace(start=-1, stop=2, num=1001, dtype=np.float) logi = np.log(1 + np.exp(-x)) / math.log(2) boost = np.exp(-x) y_01 = x < 0 y_hinge = 1.0 - x y_hinge[y_hinge < 0] = 0plt.plot(x, y_01, 'g-', mec='k', label='(0/1損失)0/1 Loss', lw=2) plt.plot(x, y_hinge, 'b-', mec='k', label='(合頁損失)Hinge Loss', lw=2) plt.plot(x, boost, 'm--', mec='k', label='(指數損失)Adaboost Loss', lw=2) plt.plot(x, logi, 'r-', mec='k', label='(邏輯斯諦損失)Logistic Loss', lw=2) plt.grid(True, ls='--') plt.legend(loc='upper right',fontsize=15) plt.xlabel('函數間隔:$yf(x)$',fontsize=20) plt.title('損失函數',fontsize=20) plt.show()往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習在線手冊深度學習在線手冊AI基礎下載(pdf更新到25集)本站qq群1003271085,加入微信群請回復“加群”獲取一折本站知識星球優惠券,復制鏈接直接打開:https://t.zsxq.com/yFQV7am喜歡文章,點個在看
總結
以上是生活随笔為你收集整理的如何画出几种常见二分类损失函数(附代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【可视化】seaborn常用的10种数据
- 下一篇: 【实战】用机器学习来提升你的用户增长