sklearn之神经网络学习算法

news2024/12/26 11:07:15

文章目录

    • 什么是神经网络
    • 人工神经网络的结构
      • 输入层
      • 输出层
      • 隐含层
      • 神经元的链接

近几年深度学习还是比较火的,尤其是在大语言模型之后,在本质上深度学习网络就是层数比较多的神经网络。sklearn并不支持深度学习,但是支持多层感知机(浅层神经网络)

首先我们需要了解一下神经网络的相关概念,再学习如何使用sklearn构造简单的神经网络算法

什么是神经网络

学术上来讲:人工神经网络是一种由具有自适应的简单单元构成的并行互联的网络,它的组织结构能够模拟生物神经系统对真实世界所做出的交互反应

我们知道,大脑通过突触传递信息来增强或者弱化反应,以达到学习的目的,当这样的链接足够多时,就会形成一个复杂的网络,用计算机的术语也称之为分布式特征网络(没有核心处理机制的网络)

人工神经网络的强大之处在于他的学习能力非常强,在得到训练集之后,他能通过学习提取所观察事物的各个特征,将特征之间使用不同的网络节点(突触)链接,通过训练链接的网络权重(突触的强与弱),直到顶层输出得到正确的答案

这里我们不再赘述生物神经之间传递信息的方式,根据赫布假说,在我们学习的前后,只是突触的强度发生了变化,这也是神将网络学习的生物学基础,才有了人工神经网络

我们知道,人工神经网络性能的好坏,高度依赖于神经系统的复杂程度,通过调整链接的权重,达到处理信息的目的,从而“涌现”出处理信息的能力,自学习和自适应能力,即便到了现在的深度学习网络,其本质仍然与之前相同,都是调整权重

人工神经网络的结构

844237-20170330191256586-824423636.png

这里有一个卷积神经网络的架构,先不必慌张,我们只关注输入的部分

输入层

这里的输入层是一张照片,计算机能够读取到照片的内容本质上也只是一堆数据,色彩可以用RGB等数值来表示,然后再压缩成灰度,照片的每一个像素就可以存一个灰度,这样一张照片就可以变成一个对应像素点的矩阵(向量)

假设图片的大小是16*16像素,那么输入层的神经元就是256,换句话说,输入层就是一个包括256个灰度值的向量,一个神经元接收一个归一化的灰度值,我们可以使用0和1来表示纯白和纯黑,而灰度值则介于0和1之间

输出层

对于输出层而言,神经元的个数和输入神经元个数并没有对应关系,而是和最终的事物分类有关,而最终的结果,也只是最终事物的概率,当其中某一项的概率远远高于其他时,神经网络就会判定

隐含层

除了输入层和输出层,隐含层的设计是一门艺术,也是一门体力活,需要不断的试错

我们可以暂时把隐含层定位一个黑箱,他主要负责输入与输出之间的非线性映射变化,他具体的原理,就跟“涌现”现象一样,很难解释清楚,我们能做的就是不断调试隐含层的层数、每层的神经元个数

神经元的链接

我们把神经元之间的影响程度称之为权重,权重的大小表示链接的强弱,他就相当于这一层神经元告诉下一层神经元应该更加关注哪些部分

神经元内还有一个施加于自身的特殊权值,称之为偏置(bias),简单说就是表示了神经元是否更容易被激活,说人话就是表示这个神经元对特定数据的敏感度

设计整个人工神经网络的结构的目的就是为了让神经网络的性能达到最佳,找到合适的权值,让损失函数最小

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

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

相关文章

安全测试理论

安全测试理论 什么是安全测试? 安全测试:发现系统安全隐患的过程安全测试与传统测试区别 传统测试:发现bug为目的 安全测试:发现系统安全隐患什么是渗透测试 渗透测试:已成功入侵系统为目标的的攻击过程渗透测试与安全…

自动驾驶事故频发,安全痛点在哪里?

大数据产业创新服务媒体 ——聚焦数据 改变商业 近日,武汉城市留言板上出现了多条关于萝卜快跑的投诉,多名市民反映萝卜快跑出现无故停在马路中间、高架上占最左道低速行驶、转弯卡着不动等情况,导致早晚高峰时段出现拥堵。萝卜快跑是百度 A…

配置与管理Samba服务器(详细教程)

目录 一、基础理论 二、samba工作流程 三、项目实训 3.1目的 3.2准备工作 3.2.1服务器安装samba服务软件包 3.2.2客户端安装软件包 3.3配置Samba服务 3.3.1开启Samba服务,并设置开启自启动 3.3.2创建共享文件夹 3.3.3创建群组 3.3.4修改文件用户权限 3.3.5修改…

LabVIEW人工模拟肺控制系统开发

开发了一种创新的主被动一体式人工模拟肺模型,通过LabVIEW开发的上位机软件,实现了步进电机驱动系统的精确控制和多种呼吸模式的模拟。该系统不仅能够在主动呼吸模式下精确模拟快速呼吸、平静呼吸和深度呼吸,还能在被动模式下通过PID控制实现…

训练CDN基础代码

文章目录 时间整体流程训练细节小结 时间 从开始在平台上搭建到现在可以在平台上训练已经4天了 有GPU平台一般是autoDL平台,白嫖200元平台是:https://cloud.lanyun.net/ 整体流程 1.注册平台,以蓝耘为例子 卡从好变坏依次是:…

C语言:指针详解(5)

目录 一、sizeof()函数和strlen()函数的对比 1.sizeof()函数 2.strlen()函数 3.sizeof()函数和strlen()函数的对比 二、数组和指针笔试试题解析 1.一维数组 2.字符数组 (1)代码1 (2)代码2 (3)代码…

【数组、特殊矩阵的压缩存储】

目录 一、数组1.1、一维数组1.1.1 、一维数组的定义方式1.1.2、一维数组的数组名 1.2、二维数组1.2.1、二维数组的定义方式1.2.2、二维数组的数组名 二、对称矩阵的压缩存储三、三角矩阵的压缩存储四、三对角矩阵的压缩存储五、稀疏矩阵的压缩存储 一、数组 概述:数…

香橙派AIpro:体验强劲算力,运行ROS系统

文章目录 前言一、香橙派AIpro开箱及功能介绍1.1香橙派AIpro开箱1.2香橙派AIpro功能介绍 二、香橙派AIpro资料下载及环境搭建2.1资料下载2.2环境搭建2.3使用串口启动进入开发板2.4使用HDMI线接入屏幕启动 三、部署ROS系统四、香橙派AIpro的使用和体验感受 前言 本篇文章将带体…

sip协议栈简介

SIP协议栈简介 SIP协议栈流程 数据链路层:当SIP消息从网络中传输到达TCP/IP协议栈时,首先被接收到的是数据链路层的数据帧。数据链路层会对数据帧进行解封装,得到网络层的IP数据报。 网络层:网络层会对IP数据报进行解析&#xf…

js实现 JSON数据格式化的两种方法

本次方法不使用JS库直接采用原生JS 完整HTML代码如下&#xff0c;您可以复制代码然后&#xff0c;新建一个.html的网页进行保存即可体验 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title></head><b…

Xcode 16 beta3 真机调试找不到 Apple Watch 的尝试解决

很多小伙伴们想用 Xcode 在 Apple Watch 真机上调试运行 App 时却发现&#xff1a;在 Xcode 设备管理器中压根找不到对应的 Apple Watch 设备。 大家是否已将 Apple Watch 和 Mac 都重启一万多遍了&#xff0c;还是束手无策。 Apple Watch not showing in XCodeApple Watch wo…

android13 文件管理器无法安装apk 奔溃问题

总纲 android13 rom 开发总纲说明 目录 1.前言 2.我们简单写个apk测试下 3.排查客户apk 4.frameworks源码排查 5.编译验证 6.彩蛋 1.前言 客户提供的文件管理apk不能安装apk文件,一点击就奔溃。 2.我们简单写个apk测试下 private void installApk(File apkFile) {i…

从0开始学习informer

目录 informer特点informer原理attention计算KL散度 backbone网络部分encoder输入输出部分embadding这里就不讲了 和transfomer一样EncoderStack decoder部分接下来就是最关键的结构 关于如何将输入经过注意力得到结果 结束&#xff0c;代码会放到下一篇讲 这里是原理 informer…

[Vulnhub] Sedna BuilderEngine-CMS+Kernel权限提升

信息收集 IP AddressOpening Ports192.168.8.104TCP:22, 53, 80, 110, 111, 139, 143, 445, 993, 995, 8080, 55679 $ nmap -p- 192.168.8.104 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 6.6.1p1 Ubuntu 2ubuntu2 …

PTX入门教程与实战

PTX入门教程 官方文档的目录结构 1 PTX指令 官方文档链接 1.1 指令形式 指令的操作数个数从0-4不等&#xff0c;其中d代表的是目的操作数&#xff0c;a,b,c是源操作数 p opcode;p opcode a;p opcode d, a;p opcode d, a, b;p opcode d, a, b, c;2 编程模型 2.…

人工智能算法工程师(中级)课程9-PyTorch神经网络之全连接神经网络实战与代码详解

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能算法工程师(中级)课程9-PyTorch神经网络之全连接神经网络实战与代码详解。本文将给大家展示全连接神经网络与代码详解&#xff0c;包括全连接模型的设计、数学原理介绍&#xff0c;并从手写数字识别到猫狗识…

JVM监控及诊断工具-命令行篇-jstat命令介绍

JVM监控及诊断工具-命令行篇01-jstat&#xff1a;查看JVM统计信息 一 基本情况二 基本语法2.1 option参数1. 类装载相关的&#xff1a;2. 垃圾回收相关的-gc&#xff1a;显示与GC相关的堆信息。包括Eden区、两个Survivor区、老年代、永久代等的容量、已用空间、GC时间合计等信息…

基于51单片机的多路报警器Protues仿真设计

一、设计背景 随着社会的发展和技术的进步&#xff0c;安全问题越来越受到重视。各种工业设施、家庭、商业场所以及公共场所的安全保障成为了重点。报警器作为安全防护系统的重要组成部分&#xff0c;在预防和及时应对各种突发事件中发挥着至关重要的作用。传统的报警器通常在功…

【C++】哈希(散列)表

目录 一、哈希表的基本概念1.哈希的概念2.哈希冲突2.1 哈希函数2.2 哈希冲突的解决办法2.2.1 闭散列2.2.2 开散列 二、哈希表的实现1.闭散列的实现1.1 闭散列的结构1.2 闭散列的插入1.3 闭散列的删除1.4 闭散列的查找 2.开散列的实现2.1 key值不能取模的情况2.2 开散列的结构2.…

Redis的安装配置及IDEA中使用

目录 一、安装redis&#xff0c;配置redis.conf 1.安装gcc 2.将redis的压缩包放到指定位置解压 [如下面放在 /opt 目录下] 3.编译安装 4.配置redis.conf文件 5.开机自启 二、解决虚拟机本地可以连接redis但是主机不能连接redis 1.虚拟机网络适配器网络连接设置为桥接模式…