10-SVM

1 - Optimization Objective 优化目标

1.1 从logistic regression来看

首先来看Logistic regression的hypothesis函数: hθ(x)=11+eθTx ,可以知道:

  • 当y=1时,我们希望 hθ(x)1 ,那么此时必须有: θTx0
  • 当y=0时,我们希望 hθ(x)0 ,那么此时必须有: θTx0
  • 误差公式:
    =yloghθ(x)(1y)log(1hθ(x))ylog11+eθTx(1y)log(111+eθTx)
  • 用图来表示 log11+ez log(111+ez)
    cost fun
  • 令图中品红色的曲线分别为 Cost1(z) Cost0(z) ,我们将在SVM中使用这两个函数衡量误差。
1.2 优化目标
  • Logistc regression:

    minθ1m[i=1my(i)(loghθ(x(i)))+(1y(i))((log(1hθ(x(i)))))]+λ2mj=1nθ2j

  • SVM:

    minθCi=1m[y(i)cost1(θTx(i))+(1y(i))cost0(θTx(i))]+12j=1nθ2j

  • SVM hypothesis:

    hθ(x)={1ifθTx00otherwise

2 - Large Margin Intuition

首先来看我们之前定义的优化目标:
cost fun
可以看到,我们的cost function与logistic regression相比已经发生了明显的改变:

  • 要预测 y=1,我们要求 θTx1 ,而不再是 θTx0
  • 要预测 y=0,我们要求 θTx1 ,而不再是 θTx<0

那么 SVM 的 Decision Boundary 必然与 logistic regression 不同。SVM的 Decision Boundary 主要特点是 Large Margin,这也是 SVM 被称为 Large margin classifier 的原因。用图来表述:
margin
C
特殊的cost function 让 SVM 会选择一个 margin 最大的 Decision Boundary 。

3 - Kernels 核函数

3.1 what is Kernels

我们来看如下的分类问题:
classification

在选择features的时候,我们在logistic regression时选取的是 x1,x2,x1x2,x21,x22 ,并用 θTx 作为 hθ 的判断条件。

在 SVM 中,我们采取了另外的选择 feature 的方法,称为核函数。

Kernels and Similarity
kernel

  • 我们选取n个点,作为 landmarks(地标),用 similarity(x,l(i)) 表示样本 x 与 l(i) 的相似程度,将它作为一个 feature ,用 fi 来表示,这就是核函数。
    fi=similarity(x,l(i))=exp(xl(i)22σ2)(GuassianKernel)
  • Hypothesis:
    • Predict “1” when θ0+θ1f1+θ2f2+θ3f30
  • 关于 Guassian Kernel:
    • xl(i) , 那么 fi=exp(022σ2)1
    • 若 x 与 l(i) 相差很大,那么 fi=exp((largenumber)22σ2)0
    • 关于 σ2 的取值问题:
      sigma
3.2 Kernel的应用

Given(x(1),y(1)),(x(2),y(2)),,(x(m),y(m)),

  • Choosel(1)=x(1),l(2)=x(2),,l(m)=x(m).
  • Giventrainingexample(x(i),y(i)):
    f(i)1=similarity(x(i),l(1))f(i)2=similarity(x(i),l(2))f(i)m=similarity(x(i),l(m))

    值得注意的是,其中 f(i)i=similarity((x(i),l(i))=1
  • Hypothesis
    Predicty=1ifθTf0 ,其中 fRm+1,f=f0f1fm
  • Optimization Objective

    minθCi=1m[y(i)cost1(θTf(i))+(1y(i))cost0(θTf(i))]+12j=1mθ2j

  • 关于 SVM 参数的选择

    • C的选择

      • Large C:Lower bias,high variance.
      • Small C:Higher bias,low variance.
    • σ2 的选择

    • Large σ2 :属性 fi 的曲线比较平缓,Higher bias,low variance.
      large sigma
    • Small σ2 :属性 fi 的曲线比较陡峭,Lower bias,high variance.
      small sigma

4 - Using An SVM

4.1 基本用法

使用软件包(如liblinear,libsvm,…)来求解参数 θ 。
需要指定的参数:

  • 参数 C 的选择
  • Kernel的选择
    • No kernel(“linear kernel”):Predict “y=1” if θTx0 ,选择条件:n 很大,m较小
    • Guassian Kernel:需要选择 σ2 ,选择条件:n较小,m很大
    • 其他:polynomial kernel,String kernel,chi-square kernel,histogram intersection kernel

特别提醒: 在处理数据时不要忘了 feature scaling

4.2 Multi-class classification:

multi-class

4.3 Logistic regression 与 SVM 相对比
  • 如果 n 很大,m 较小
    用 logistic regression 或者 SVM without kernel(“linear kernel”)
  • 如果 n 较小,m中等大小
    用 SVM with Guassian kernel
  • 如果 n 较小,m 很大
    先添加一些features,再使用logistic regression 或者 SVM without kernel
  • Neural network 在以上情况下都可以用,但是可能训练起来比较慢
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. ARIMA 2. SARIMA 3. VAR 4. Auto-ARIMA 5. Auto-SARIMA 6. LSTM 7. GRU 8. RNN 9. CNN 10. MLP 11. DNN 12. MLP-LSTM 13. MLP-GRU 14. MLP-RNN 15. MLP-CNN 16. LSTM-ARIMA 17. LSTM-MLP 18. LSTM-CNN 19. GRU-ARIMA 20. GRU-MLP 21. GRU-CNN 22. RNN-ARIMA 23. RNN-MLP 24. RNN-CNN 25. CNN-ARIMA 26. CNN-MLP 27. CNN-LSTM 28. CNN-GRU 29. ARIMA-SVM 30. SARIMA-SVM 31. VAR-SVM 32. Auto-ARIMA-SVM 33. Auto-SARIMA-SVM 34. LSTM-SVM 35. GRU-SVM 36. RNN-SVM 37. CNN-SVM 38. MLP-SVM 39. LSTM-ARIMA-SVM 40. LSTM-MLP-SVM 41. LSTM-CNN-SVM 42. GRU-ARIMA-SVM 43. GRU-MLP-SVM 44. GRU-CNN-SVM 45. RNN-ARIMA-SVM 46. RNN-MLP-SVM 47. RNN-CNN-SVM 48. CNN-ARIMA-SVM 49. CNN-MLP-SVM 50. CNN-LSTM-SVM 51. CNN-GRU-SVM 52. ARIMA-RF 53. SARIMA-RF 54. VAR-RF 55. Auto-ARIMA-RF 56. Auto-SARIMA-RF 57. LSTM-RF 58. GRU-RF 59. RNN-RF 60. CNN-RF 61. MLP-RF 62. LSTM-ARIMA-RF 63. LSTM-MLP-RF 64. LSTM-CNN-RF 65. GRU-ARIMA-RF 66. GRU-MLP-RF 67. GRU-CNN-RF 68. RNN-ARIMA-RF 69. RNN-MLP-RF 70. RNN-CNN-RF 71. CNN-ARIMA-RF 72. CNN-MLP-RF 73. CNN-LSTM-RF 74. CNN-GRU-RF 75. ARIMA-XGBoost 76. SARIMA-XGBoost 77. VAR-XGBoost 78. Auto-ARIMA-XGBoost 79. Auto-SARIMA-XGBoost 80. LSTM-XGBoost 81. GRU-XGBoost 82. RNN-XGBoost 83. CNN-XGBoost 84. MLP-XGBoost 85. LSTM-ARIMA-XGBoost 86. LSTM-MLP-XGBoost 87. LSTM-CNN-XGBoost 88. GRU-ARIMA-XGBoost 89. GRU-MLP-XGBoost 90. GRU-CNN-XGBoost 91. RNN-ARIMA-XGBoost 92. RNN-MLP-XGBoost 93. RNN-CNN-XGBoost 94. CNN-ARIMA-XGBoost 95. CNN-MLP-XGBoost 96. CNN-LSTM-XGBoost 97. CNN-GRU-XGBoost 98. ARIMA-ANN 99. SARIMA-ANN 100. VAR-ANN 上面这些缩写模型的全称及相关用途功能详细解释
07-15
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值