Python3《机器学习实战》学习笔记(九):ANN人工神经网络基础详解

news2024/10/6 18:21:26

文章目录

  • 一、简介
  • 二、ANN算法细节详解
    • 2.1 深度学习要解决的问题
    • 2.2 深度学习应用领域
    • 2.3 计算机视觉任务
    • 2.4 视觉任务中遇到的问题
    • 2.4.1回顾K近邻算法
    • 2.4.2为啥不能用K近邻
    • 2.5得分函数
    • 2.6损失函数
    • 2.7前向传播流程
    • 2.8反向传播计算
    • 2.9神经网络整体架构
    • 2.10神经元个数对结果的影响
    • 2.11正则化和激活函数
    • 2.12过拟合解决

一、简介

人工神经网络(Artificial Neural Network,即ANN ),是20世纪80 年代以来人工智能领域兴起的研究热点。它从信息处理角度对人脑神经元网络进行抽象, 建立某种简单模型,按不同的连接方式组成不同的网络。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。
最近十多年来,人工神经网络的研究工作不断深入,已经取得了很大的进展,其在模式识别、智能机器人、自动控制、预测估计、生物、医学、经济等领域已成功地解决了许多现代计算机难以解决的实际问题,表现出了良好的智能特性。

二、ANN算法细节详解

2.1 深度学习要解决的问题

机器学习流程:

  1. 数据获取
  2. 特征工程
  3. 建立模型
  4. 评估与应用
  5. 特征工程的作用:
    1.数据特征决定了模型的上限
    2.预处理和特征提取是最核心的
    3.算法与参数决定了如何逼近这个上限

2.2 深度学习应用领域

很多

2.3 计算机视觉任务

计算机视觉:
图像分类任务
图像表示:计算机眼中的图像
一张图片被表示成三维数组的形式,每个像素的值从0到255。
像素点比如:8006003

计算机视觉面临的挑战:
1.照射角度
2.形状改变
在这里插入图片描述
计算机视觉面临的挑战:
1.部分遮蔽
2.背景混入
在这里插入图片描述

2.4 视觉任务中遇到的问题

机器学习常规套路

  1. 收集数据并给定标签
  2. 训练一个分类器
  3. 测试,评估

2.4.1回顾K近邻算法

当在K值不同时,界限的范围也不同,范围内每种元素的比例也不同,因此分类预测的结果也不相同,具体K近邻可以回顾以往的文章。

K近邻计算流程:
1.计算已知类别数据集中的点与当前点的距离
2.按照距离依次排序
3.选取与当前点距离最小的K个点
4.确定前k个点所在类别的出现概率
5.返回前K个点出现频率最高的类别作为当前预测分类
K近邻分析:
1.KNN算法本身简单有效,它是一种lazy–learning算法。
2.分类器不需要使用训练集进行训练,训练时间复杂度为0.
3.KNN分类的计算复杂度和训练集中的文档数目成正比,也就是说,如果训练集中文档总数为n,那么KNN的分类时间复杂度为O(n).
4.K值的选择,距离度量和分类决策规则是该算法的三个基本要素。
为什么k近邻不能用来图像分类?
背景主导是一个最大的问题,我们关注的却是主体(主要成分)
如何才能然机器学习到哪些是重要的成分呢?
在这里插入图片描述
在这里插入图片描述

2.4.2为啥不能用K近邻

我们识别图像,主要是根据主题内容,但是图像中的背景往往占据了更大的面积,即更大更多的像素点,使用K近邻会收到严重精确度的影响。
在这里插入图片描述

2.5得分函数

我们要算出一张图针对每一个类别的得分,以本图为例子有3072个像素点。W就是权重参数(每个类别都有一组参数点103072),x就是像素点(30721)。b是相当于对每个类别进行的微调。
在这里插入图片描述
这种图更加形象说明了像素点以及分类特征之间的关系。将这种关系巧妙转化为数学公式关系。
在这里插入图片描述

2.6损失函数

是一种关系计算损失的公式技巧,根据图中公式容易理解。
至于为什么在里边要+1,至少要有相差为1 的效果才能说明损失的程度较小。
损失函数计算数值越大,越不精确,误差更大。

在这里插入图片描述
加入一个正则化惩罚项,防止过度拟合。

在这里插入图片描述
但是一种特殊情况,仅仅依靠损失函数的值判定是不准确的。比如一下情况

在这里插入图片描述
介绍Softmax分类器,这是计算损失值的正确打开方式。

在这里插入图片描述

2.7前向传播流程

正向传播是为了计算损失函数:

在这里插入图片描述
反向传播是为了更新模型、即系数参数:

在这里插入图片描述
正向传播是一层一层加参数矩阵的过程
反向传播是求偏导更新的过程
在这里插入图片描述
在这里插入图片描述

2.8反向传播计算

理解这个例子中反向传播的思想
图中红字已经给出了过程了

在这里插入图片描述
当然也可以一块一块算,一部分当成一块整体进行求偏导,都差不多无所谓的

在这里插入图片描述

2.9神经网络整体架构

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.10神经元个数对结果的影响

可视化展示的神经网络https://cs.stanford.edu/people/karpathy/convnetjs/demo/classify2d.html

2.11正则化和激活函数

在这里插入图片描述
在这里插入图片描述
REUL
在这里插入图片描述
在这里插入图片描述

2.12过拟合解决

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/11664.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】Jetson nano 使用记录,安装torch1.8、yolov5 tensorrt加速、java等

Jetson nano一、u盘系统安装1.1 烧录EMMC引导1.2 烧录U盘系统二、启动、环境配置2.1 设置vnc分辨率2.2. 更新软件三、启动、环境配置3.1 安装conda3.2 安装python3.6版本torch1.83.3 配置yolov5 tensorrt加速3.3.1 转换wts和engine3.3.2使用python脚本运行engine其它记录安装ja…

Postgresql顺滑升级步骤(11升级到14)

首先下载pgsql14的源码包进行安装: yum install postgresql14 –y yum install postgresql14-server -y 附带安装 yum install postgresql14-libs yum install postgresql14-contrib yum install postgresql14-devel 注:如果旧版本装了插件&#…

生态环境影响评价制图流程

生态现状评价内容中基本图件构成包含:项目区域地理位置图、工程平面图、调查样方、样线、点位、断面等布设图、土地利用现状图、地表水系图、植被类型图、植被覆盖度图、归一化植被指数图、生态系统类型图、土壤侵蚀图、物种适宜生境分布图等。 介绍 2.2.遥感常用数…

基于微信小程序的核酸检测系统源码

开发环境及工具: 大等于jdk1.8,大于mysql5.5,idea(eclipse),微信开发者工具 技术说明: springboot mybatis 小程序 代码注释齐全,没有多余代码,适合学习(毕设)&#…

动态自适应可变加权极限学习机ELM预测算法附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

Vue(十)——页面路由(2)

目录 router-link的replace属性 编程式路由导航 缓存路由组件 两个新的生命周期钩子 路由守卫 全局守卫 独享守卫 组件内守卫 路由器的两种工作模式 hash模式 history模式 router-link的replace属性 浏览器历史记录的操作模式:push模式 对历史记录的操作…

视频编解码之理论概述

本文主要讲解实时音视频技术中视频技术的编解码基础理论。 1、视频为何需要压缩? 未经压缩的数字视频的数据量巨大存储困难:一张DVD只能存储几秒钟的未压缩数字视频。传输困难 1兆的带宽传输一秒的数字电视视频需要大约4分钟。2、主要压缩了什么东西&am…

【Pytorch with fastai】第 12 章 :从零开始的语言模型

🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃 🎁欢迎各位→点赞…

[附源码]SSM计算机毕业设计8号体育用品销售及转卖系统JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【机器学习】机器学习知识点全面总结(监督学习+无监督学习)

目录:机器学习知识点全面总结一、监督学习1.1 单模型1.1.1 线性回归1.1.2 逻辑回归1.1.3 Lasso1.1.4 K近邻(KNN)1.1.5 决策树1.1.6 bp神经网络1.1.7 支持向量机(SVM)1.1.8 朴素贝叶斯1.2 集成学习1.2.1 Boosting1.2.1.1 GBDT1.2.1.2 Adaboost1.2.1.3 XGBoost1.2.1.4…

防火墙NAT配置实验

目录 一、NAT的种类 分为基于源IP的转换 基于目的的IP转换 外部用户找内部服务器 二、实验拓扑 登陆防火墙 三、配置NAT 配置接口 实验一 配置no-pat NAT 测试no-pat 实验二 NAPT配置 NAPT测试 实验三 配置Easy ip 实验四 配置NAT sever 测试Nat Sever 一、NAT的种…

C++类构造函数和析构函数

11.3 类构造函数和析构函数 构造函数:是为了在定义对象时自动初始化其成员变量的值。 构造函数没有返回值,也没有被声明为void类型;因此,构造函数没有声明类型。 11.3.1 声明和定义一个构造函数 构造函数原型:在这…

windows安装配置git和ToriseGit

目录1、下载安装git2、下载安装ToriseGit3、配置ToriseGit4、公司钥生成1、下载安装git 下载地址 安装:所有都按照默认,直接next就行 2、下载安装ToriseGit 下载地址 下图中两个都要下载,第二个是语言包 安装: 1、先安装主程…

C++行为型模式-职责链模式

1.1 基本概念 职责链模式(Chain of Responsibility Pattern):避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这类对象链接成一条链,并沿着这条链传递请求,直到有对象处理它为止。 1.2 …

Neural Collaborative Filtering论文笔记

ABSTRACT 深度神经网络在语音识别、计算机视觉和自然语言处理等方面取得了巨大的成果,但是对于推荐系统尚且缺少。虽然即使有用深度学习作为推荐,但是都是对建模起辅助作用。当涉及到用户和项目之间的交互,都会选择流行的矩阵分解&#xff0…

三、react组件的生命周期

目标 灵活掌握react组件的生命周期以及组件的活动过程。 能够灵活使用react的生命周期 知识点 react的类组件的生命周期分为三个阶段 实例期存在期销毁期 实例期在组件第一次被实例化的时候触发一次,在这个过程中会执行的生命周期函数如下: construct…

2、CKA-简单搭建K8s集群

基础环境: 主机IP资源系统主机名192.168.100.1104核8GCentos8K8s-master192.168.100.1204核8GCentos8K8s-node1192.168.100.1304核8GCentos8K8s-node2 推荐一个小网站:https://labs.play-with-k8s.com/ 其他的废话不多说,直接部署起来先~~ 部…

[附源码]Python计算机毕业设计 校园疫情防控系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

校企合作,人才共育|湖南工程学院第二期万应低代码实训营圆满收官

2022年11月11日,湖南工程学院第二期万应低代码实训营圆满收官,来自湖南工程学院计算机与通信学院(人工智能产业学院)的47位同学经过为期9天、共计51课时的培训课程,用出色的交付成果顺利结业。湖南工程学院计算机与通信…

最简单的git图解(最基本命令)

git clone: 这个命令用于将远程代码仓库克隆到本地,这是对任何项目进行开发前的第一步。 比如你本地本来并没有某个项目的代码仓库,此时随便找一个文件目录并进入cmd命令窗口,执行命令git clone [remote address],[remote addres…