sheng的学习笔记-神经网络

基础知识

基础知识-什么是分类问题

分类问题是根据已有数据,判断结果是正的还是负的(1或者0),比如:
• 根据肿瘤大小,判断肿瘤是良性的还是恶性的
• 根据客户交易行为,判断是否是恶意用户
• 根据邮件情况,判断是否垃圾邮件
下图:横坐标是肿瘤大小,纵坐标:是肿瘤的可能性,可能性大于 50% ,结果是 1 (恶性),小于 50% 结果是 0 (良性),下图中最右边的那个,体积很大,是恶性的可能性非常大

肿瘤有70%可能性是恶性,30%可能性是良性,两者加和为1

基础知识-逻辑回归算法(logsitic regression)

逻辑回归算法是解决分类问题的一种,下面是逻辑回归模型,x是肿瘤大小(已知数据),theta是需要训练的参数,一个肿瘤根据两个数据可以知道h(是肿瘤的概率),下图z>0认为是恶性肿瘤

线性决策边界:线右边的是恶性,左边是良性

非线性决策边界:圈外面的是恶性,圈里面是良性

基础知识-多分类(multi-class classification)

多分类:上述讲的是二分类,结果只有1和0,以此扩展为多分类,预测结果有很多可能。

比如预测天气可能是:晴天?阴天?雨天?雪天?分别预测每种情况的可能性,比如是晴天的可能性70%,阴天可能性60%。。。找可能性最大的那个,作为本次数据的结果

基础知识-什么是神经网络

神经网络模拟人类大脑,将大量的输入信息,经过多个节点(每个节点处理一部分)处理(输入层),将结果作为输入传给下个节点(隐藏层,每个隐藏层含多个节点,可以有多个隐藏层),隐藏层的输出传给最后一个节点,并得到结果

适用于数据量大,特征个数多,计算复杂的场景,在语音识别,图像识别等场景应用很广

基础知识-神经网络应用:识别手写数字,智能驾驶

识别手写数字:通过图片转化成数字输入,经过神经网络算法,输出结果数字

智能驾驶:通过观察人类的行驶学习转向,根据摄像头采集的画面画质(车上装传感器),转化成数据,预测出接下来应该是向左,向右,直向行驶(采用神经网络算法,多分类问题应用)

下图左上角第一个横线是驾驶员实际操作,第二个横线是系统预测的操作

计算方法

计算方法-总体方法

实现方法:正向传播计算结果,反向传播更新theta(这里的w和b就是theta),直到损失函数最小

1 正向传播

2 计算导数推演

3 逻辑回归计算导数推演

计算实现

计算方法-代价函数( cost function )

肿瘤举例:有了很多肿瘤的数据,训练theta,让预测的结果跟实际结果最相近,当有一个新的肿瘤案例,根据theta就知道新的病例是恶性的可能性有多大,所以我们要做的是找到最佳的theta

过程是:随机初始化参数=>算出预测值=>算出差异(损失函数J)=>更新参数=>算出预测值。。重复第二步,直到损失函数足够小

预测值与实际值的差距(叫做代价函数J)越小,代表预测的越准确

参数每次减去J的导数和学习速率乘积,更新自己

计算方法-导数

导数:变量x偏移一个小的单位,结果y变化的倍数,是斜率

直线的斜率是恒定值,曲线的斜率在不同的点不一样

计算方法-正向传播

计算方法-反向传播

反向传播可以让损失函数朝着最小值前进

计算方法-反向传播-梯度检测(选看)

当反向传播和其他算法(梯度下降等)一起工作时,可能会产生一些BUG,导致看起来都正常(比如代价函数在每次梯度都在减小),但其结果的误差很大,这时候需要用梯度检测,注意:在使用梯度检测验证反向传播是正确之后,应该关闭梯度检测,因为这个检测很耗费时间

计算方法-反向传播-随机初始化(选看)

如果初始化的theta都是0,对于x2产生的a1和a2是一样的,在反向传播会导致theta1和theta2一样,也就是说红色的两个线参数一样,绿色的2个线参数一样(蓝色也一样),虽然它们的值都不是0

参考

吴恩达深度学习和机器学习,关于神经网络部分

相关推荐
大千AI助手1 小时前
SWE-bench:真实世界软件工程任务的“试金石”
人工智能·深度学习·大模型·llm·软件工程·代码生成·swe-bench
重启的码农3 小时前
ggml 介绍 (6) 后端 (ggml_backend)
c++·人工智能·神经网络
重启的码农3 小时前
ggml介绍 (7)后端缓冲区 (ggml_backend_buffer)
c++·人工智能·神经网络
盼小辉丶3 小时前
PyTorch生成式人工智能——使用MusicGen生成音乐
pytorch·python·深度学习·生成模型
Tiger Z5 小时前
《动手学深度学习v2》学习笔记 | 1. 引言
pytorch·深度学习·ai编程
胡耀超19 小时前
DataOceanAI Dolphin(ffmpeg音频转化教程) 多语言(中国方言)语音识别系统部署与应用指南
python·深度学习·ffmpeg·音视频·语音识别·多模态·asr
HUIMU_19 小时前
DAY12&DAY13-新世纪DL(Deeplearning/深度学习)战士:破(改善神经网络)1
人工智能·深度学习
mit6.82420 小时前
[1Prompt1Story] 注意力机制增强 IPCA | 去噪神经网络 UNet | U型架构分步去噪
人工智能·深度学习·神经网络
Coovally AI模型快速验证21 小时前
YOLO、DarkNet和深度学习如何让自动驾驶看得清?
深度学习·算法·yolo·cnn·自动驾驶·transformer·无人机
科大饭桶21 小时前
昇腾AI自学Day2-- 深度学习基础工具与数学
人工智能·pytorch·python·深度学习·numpy