NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则

一定要记得summary 和review

现实生活中的问题 》》》 数学优化问题 》》》通过合适的工具解决


算法复杂度

目录

算法复杂度  

逻辑回归

正则问题

如何寻找一个很好的超参数?

  

//衡量算法的优劣

类型一:迭代算法的复杂度  

for i :1 to length of A 

        if A[i] is equal to x

                return True 

return False

也取决于硬件问题 时间复杂度为O[n]

 NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第1张图片

 用O表示复杂度 //增长趋势的上界

类型2:递归类算法复杂度 //可以自己调用自己

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第2张图片

 如何计算这个时间复杂度? 拆成两个子问题再合并

先二分 2T(n) 再排序 O(n)//至少需要n次比较才能排序

Master Theorem

case1 主要比较logb^a 和 c 看取舍前半部分还是后半部分

重要的是f(n)= SITA(n^c)

T(N)= SITA(n^logb^a) 比较这两项 高阶吸收低阶

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第3张图片

case2 同上 比较后做取舍 但这里的T(n)不同f(n)也不同NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第4张图片

 case3

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第5张图片


斐波那契数列 时间复杂度 2^n


类型3:机器学习优化算法的复杂度

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第6张图片

需要迭代多少步收敛



逻辑回归

实际上解决分类问题

学习输入到输出的映射

从线性回归 到sigmoid函数 输出新条件概率 (0,1)

回归问题 预测一个连续的变量

逻辑回归问题 虽然有regression 但是实际解决分类问题 把条件概率的值进行了不同的解释 

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第7张图片

  



NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第8张图片

1. 凸函数:在函数的定义域里 凸函数的最优化问题已经被解决

 2.最优化算法: 使用什么样的算法求最优值


梯度下降实例

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第9张图片

 最后收敛于wt 最接近于最低值 其中η为学习率lr

当n很大时 每次采样一批数据/minibatch 计算出梯度估计值 也叫sgd//随机梯度下降



正则问题

 实际应用中 定义一个机器学习算法优化目标时 会额外添加一个正则项 衡量模型复杂程度

模型越复杂 这一项就越大 我们添加这一项的目的 尽量惩罚这一模型 使他的规模不会太大

在数值分析领域 存在融合现象 用多项数函数拟合一部分观测数据 假设观测数据来自红色的线

如果多项数的阶数比较小的时候 大概率拟合的不太好 随着阶数增长 对于观察测数据的拟合程度越来越好 但是 会有代价 会在某些阶段为了拟合一个很好的结果会出现一个震荡现象 

若非必要 勿增实体

加入正则项对w,b的更新毫无影响  

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第10张图片

 L0范数解释:可以得到一个更稀疏的模型 尽量让模型中的参数接近于0但算起来很麻烦

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第11张图片

L1范数:xi绝对值的和 使用L1范数之后的后果 会使模型参数变稀疏

L2范数:平方和再开根号 但L2范数不会稀疏

解释图如下:如果只考虑二维的情况 画出目标函数等值线 图中彩色线

把L1范数等值线画出来是一个方框的形式 不断往外阔 L2为一个圆

L1会落在坐标轴上 w1会等于0 但L2不会落在坐标轴上 w12都不等于0

只要不是圆 交点大概率会落在坐标轴上 可以实现稀疏

dropout就相当于添加了一个L1正则项

在优化的时候 正则项前面的λ//平衡系数 λ越大 正则项起的作用越大

λ为一个超参数 所谓超参数 是指在优化之前就要确定的参数 wb为模型参数

如模型层数 学习率等等 超参数取值直接决定优化模型行为 模型性能 所以就需要不断调参

两个等值线的交点意味着什么??

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第12张图片

 更详细的解释为

机器学习中的范数规则化之(一)L0、L1与L2范数

[email protected]

zouxy09的专栏_zouxy09_CSDN博客NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第13张图片



如何寻找一个很好的超参数?

CRoss validation 交叉验证

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第14张图片

如何很好利用训练数据? k-fold cross validation

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第15张图片

 绝对不能用测试数据集来引导模型的训练!!!

但在实际工程中 都存在很严重的过拟合情况 一旦试图过拟合所有情况 就不存在过拟合现象了



调参的方法论 grid search

NLP学习笔记1--Lecture/算法复杂度,逻辑回归,正则_第16张图片

你可能感兴趣的:(NLP学习笔记,自然语言处理,人工智能,nlp)