{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 3.1 算法原理\n",
"\n",
"## 3.1.1 点到分类超平面距离\n",
"\n",
"### 3.1.1.1 距离公式\n",
"\n",
"\n",
"### 3.1.1.2 证明过程\n",
"\n",
"\n",
"## 3.1.2 损失函数\n",
"\n",
"\n",
"## 3.1.3 梯度下降\n",
"\n",
"\n",
"### 3.1.3.1 代数描述\n",
"\n",
"\n",
"### 3.1.3.2 问题示例\n",
"\n",
"\n",
"### 3.1.3.3 算法调优\n",
"\n",
"\n",
"## 3.1.4 正则化\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 3.1.5 实验要求\n",
"\n",
"(1)根据不同损失函数的定义绘制训练样本的(归一化)损失值。\n",
"\n",
"(2)根据不同损失函数的定义绘制假设测试样本分别为正类或负类的(归一化)损失值。\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 3.1.6 损失函数\n",
"\n",
" 损失函数与点到分类边界的距离有关:df=clf.decision_function(X)\n",
" hinge :f=np.where(df < 1, 1 - df, 0) \n",
" perceptron:f=-np.minimum(df, 0)
\n",
" log :f=np.log2(1 + np.exp(-df)) \n",
" squared_h :f=np.where(df< 1 ,1-df,0)^2 \n",
" modified_h:f=modified_huber_loss(df, 1) "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 3.1.7 各损失函数的特点\n",
"\n",
" Hinge loss : margin 内有损失 边界的支持向量决定边界\n",
" Perceptron : 分错有损失\n",
" Log loss_ : 整体样本有损失 所有样本共同决定分类边界\n",
" \n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 3.1.8 损失函数的作用\n",
"\n",
"损失函数估量模型的预测值与真实值的不一致程度---预测错误的程度。
\n",
"损失函数越小,模型的鲁棒性就越好。
\n",
"损失函数是经验风险函数的核心,也是结构风险函数重要组成部分,包括了经验风险项和正则项。
\n",
" \n",
"损失函数度量模型一次预测的好坏,风险函数(期望损失)度量平均意义下模型的好坏。
\n",
"参数越多,模型越复杂,而越复杂的模型越容易过拟合。过拟合就是说模型在训练数据上的效果远远好于在测试集上的性能。此时可以考虑正则化,通过设置正则项前面的hyper parameter,来权衡损失函数和正则项,减小参数规模,达到模型简化的目的,从而使模型具有更好的泛化能力。\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"anaconda-cloud": {},
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.4"
},
"toc": {
"colors": {
"hover_highlight": "#DAA520",
"navigate_num": "#000000",
"navigate_text": "#333333",
"running_highlight": "#FF0000",
"selected_highlight": "#FFD700",
"sidebar_border": "#EEEEEE",
"wrapper_background": "#FFFFFF"
},
"moveMenuLeft": true,
"nav_menu": {
"height": "137px",
"width": "252px"
},
"navigate_menu": true,
"number_sections": true,
"sideBar": true,
"threshold": 4,
"toc_cell": false,
"toc_section_display": "block",
"toc_window_display": false,
"widenNotebook": false
}
},
"nbformat": 4,
"nbformat_minor": 2
}