目录
1、logistic regression / sigmoid函数
6 分类问题(classification)
classification:y = 0 or y = 1
hθ(x) can be > 1 or < 0 (线性回归不太合适)
1、logistic regression / sigmoid函数
logistic regression :0 <= hθ(x) <= 1 (考虑逻辑回归---一种分类算法,用在标签y离散的情况下)
也称为sigmoid函数
θTx >= 0,g(θTx) >= 0.5,则 y = 1
否则,y = 0
2、决策界限
可以是线性,也可以是非线性
线性
非线性
3、代价函数
想要找到一个代价函数,其图像为凸函数,而不是非凸函数
logistic regression的代价函数
y = 1时,代价函数为 -log(hθ(x))
y = 0时,代价函数为-log(1-hθ(x))
4、简化代价函数
使得代价函数更紧凑,而不是用分段函数表示
5、简化梯度下降
发现logistic regression和linear regression对θ求偏导的表达式一样,但假设不一样
6、高级优化
优化算法
exitFlag = 1表示以收
在线性回归和logistic regression中选择合适的算法
7、多元分类
可以化为二分类,设置多个逻辑回归分类器
单独拎出一个类(作为正类别),其他所有类别看做一个类(作为负类别)
有n个不同的类,则需设置n个分类器
7 过度拟合问题及正则化
1、什么是过拟合
过拟合(overfitting)、高方差(high variance)
变量太多,得到的假设函数能很好的匹配训练集,但对新样本来说,泛化能力不好。
2、处理过拟合问题的方法
(1)减少变量(特征)
①手动选择保留哪些变量
②模型选择算法
(2)正则化(regularization)
保留所有的特征变量,但是减少量级 (变量较多,且对预测y都或多或少起作用)
3、代价函数
正则化后的代价函数:
在原基础上,保证参数|θ|尽可能小,所以确定的代价函数 J(θ) 为:
4、λ的选择
λ是正则化参数;
要使得J(θ)尽可能小,两项都得小;
后一项为惩罚项,一般来说从θ1开始,不包括θ0;
得到的曲线会更平滑(紫红色),避免过拟合(蓝色线条);
λ太大 ---> 欠拟合
对参数的惩罚力度太大,最后所有的参数都会接近于0,只剩下θ0,相当于用一条直线去拟合(欠拟合,不可行,×)
5、线性回归的正则化
拟合线性回归模型的两种算法:梯度下降 和 正规方程
①梯度下降
在使用梯度下降确定参数时,θj的更新有一些变化(除了θ0)
②正规方程
在原正规方程的基础上要添加一项
补充:(XTX)不可逆的情况
原因:可能是因为样本比特征少,造成(XTX)不可逆
在Octave中使用pinv()函数--->伪逆矩阵
Don't worry!!!
因为加上了λ*矩阵(看图),得到的这个矩阵一定可逆!不会出现不可逆的情况!
6、逻辑回归的正则化
代价函数
(加入正则化参数):
梯度下降
梯度下降法,更新θ
和线性回归梯度下降公式一样,但是注意!!!hθ(x)不一样
高级优化
fminunc(@costFunction , initialTheta , options)
道阻且长,继续加油!