02 Deep learning algorithm

Neural Networks target:

  • inference(prediction)
  • training my own model
  • practical advice for building machine learning system
  • decision Tress

application: speech(语音识别) ----> images(计算机视觉)—> text(NLP)

一、Neural Networks

1.神经元和大脑

1) Demand Prediction(需求预测)

a) some notion
  • neuron(神经元):可以将一个简单的模型例如logistic regression 看作一个简单的neuron

  • layer(层) : some neuron or single,输入equal or similar feature and out put some data together

  • activation(激活) :将 input of neuron called activation

  • activation function:激活函数是代表能够输出激活值的函数

  • hidden layer: 知道输入和输出,中间的处理neuron叫做hidden layer

2) 神经网络的网络层

a) definition

​ 输入一组数字向量,经过一系列层的处理,输出另一组数字向量

b) notion:

image-20221222175521416 对于不同的层,w参数的角标也可以标识 通过上标标识

c) complex 神经网络

在这里插入图片描述

《四层的神经网络》

input等于0层,123隐藏层,4 4为输出层

计算时候从左向右的方向进行计算

d ) Tensorflow的数据表现形式

​ 因为tensorflow基本处理很大的数据集,都用矩阵表示来让计算更加高效

  • numpy表示数组方式
    • x = np.array( [ [ ] , [ ] ] ) ()内仅有一个【】代表一维数组,[ [ ] ] 代表二维数组
  • tensor数组表示方式:
    • tensor([ [ ] , [ ] ] , shape( , ) , dtype = )

使用: 一般自己加载和操作数据的时候使用numpy,将数据转入tensorflow 时候会转化为tensor来方便计算和处理

3) build neural network

a ) build in tensorflow
  • 过程:创建dense 隐藏层,将隐藏层顺序连接,编译,输入x和y,训练模型,模型拟合
image-20221223111947263
b ) dense and forward prop in numpy (传播向量化)
image-20221223121639538

4 ) A G I (artificial g eneral intelligence)

	definition: AI 可以做人类所做的一切事情

5 ) Martrix multiplication in numpy

definition

​ numpy库中中的用于两个矩阵之间的乘法,也可以等价于 AT @ W

optimization forward prop(优化传播向量)
image-20221223161523850

2. use tensorflow build neuron

步骤: 1.指定模型(设置dense层) 2.compile编译模型 3.epoch 训练模型

i .模型训练细节

1)create the model

​ model= sequential( [ Dense() Dense() ] )

2)loss and cost function

​ 对于分类问题使用 model.compile(loss = BinaryCrossentropy()) 二元交叉熵损失函数

​ 对于线性回归:model.compile(loss = MeanSquareError ()) 均方差

3)gradient descent

​ 使用反向传播 model.fit( X , y , epochs = 100 )

i i . sigmoid 替代函数

​ 作用:有时不仅是0-1的概率,有不同的条件需要找不同的函数

1) reLU function

​ g(z) = max(0,z)

2)linear activation function

​ g(z) = z = wx + b

3 ) how to select activation function
  • ​ 可以在不同的神经元中选择不同的激活函数,根据需求选择
    • output layer:如果分类 0,1 最好选择sigmoid函数,有正负linear function 合适
    • hidden layer: 主流的 relu function ,运算速度更加快,只有x负半轴平缓,梯度下降时更快

二 、multiclass classification problem

1 . Softmax

i . softmax regression (N possible outputs)

image-20221228090448364

i i. cost function

​ 如果计算y = 某个值的cost function 则只需要带入对应的成本函数

在这里插入图片描述

i i i . implement in tensorflow

  • 只需将最后一层换为 softmax
  • 将 损失函数换为:SparseCategoricalCrossentropy(密集分类交叉熵损失函数)

v i . improve softmax

​ 当计算时,有时候式子之间有计算误差,所以在误差函数后加(from_logits = true)

2 . improve α algorithm

i . Adam algorithm

作用:如果梯度是一直稳定下降的时候就会适当的增大 α,当来一个值两边震荡时,会减小α

	**使用:**

image-20221228112053021

3 . Convolutional layer (卷积层)

作用: 对于前一层的feature并不是全部选取,而是选取了一部分

三、Evaluate the performance of algorithm

1 . Evaluate the model

i . use test set

​ 取出 70% 用来作training set,其余的30%用来作 test set评估model的泛化能力

但是只是用测试集来评估几次多项式也是不准确的

i i . Training / cross validation(交叉样本) / test set

​ 60% training set 20% cross validation 20% test set

​ 先用training set 和 cross validation 来选择最佳的模型,然后确定好了最佳模型以后我们将在最后的 test set模型测试最终的准确度

i i i . Bias / Variance (偏差和方差)

d 代表了多项式的次数

在这里插入图片描述

​ d越大,J-train越来越小,J-cv越来越大

high-bias(欠拟合) :在training set表现不好

high-variance(过拟合):在 验证集表现 相比training set 差得多,增加training可以改善

vi . Regulartion (正则化)

image-20221230094701010

当 **入** 越大最后拟合的曲线接近一条 y = b 的直线,y越小也会出现 overfit

​ 可以使用交叉验证来选择合适的

v i i . how to add regularization

image-20221230103012362

2 . Iterative loop of ML development

i . add data

​ **data augmentation **:的一个技巧:对数据所作的改变或者扭曲,例如给语音 加上噪音,给图片扭曲,但是最后得到的数据仍和测试集中得到的很相似。

i i. transfer learning(迁移学习)

作用:使用来自不同任务的数据来解决当前的任务,可以通过学习识别猫,狗,牛,人等,为前几个层学习了一些合理的参数,然后将参数transfer到新的神经网络中去

Why? 为什么通过识别其他的东西能够帮助识别类似手写数字一样的东西呢?

​ 因为头几层的网络都在识别图像的基本特征,找到边角,曲线,基本形状等相似的特征,所以对于不同类型的图片效果都是一样的

四、倾斜数据集的误差指标

​ why:因为例如罕见病中,数据集很多都是不患病的,所以需要衡量一个算法好坏

1 . precision / recall(准确度和召回)

i . definition

image-20221231100453281

i i . 权衡精确度和召回

​ 设置一个高的阈值,会使精确度提高,但是召回下降,相反的话召回提高,但是精确度下降

i i i .F 1 Score ( f 1 指标 )

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构-测试4

一、判断题 1.队列结构的顺序存储会产生假溢出现象。 (T) 2.度为二的树就是二叉树。(F) 二叉树的度可以小于等于2 3. 栈是插入和删除只能在一端进行的线性表;队列是插入在一端进行,删除在另一端进行的线性表。(T&…

【CMake】1. VSCode 开发环境安装与运行

CMake 示例工程代码 https://github.com/LABELNET/cmake-simple 插件 使用 VSCode 开发C项目,安装 CMake 插件 CMakeCMake ToolsCMake Language Support (建议,语法提示) 1. 配置 CMake Language Support , Windows 配置 donet 环境 这…

异地环控设备如何远程维护?贝锐蒲公英解决远程互联难题

青岛某企业致力于孵化设备、养禽设备和养猪设备的研发、生产和服务,历经三十多年发展,目前已成长为行业主要的养殖装备及工程服务提供商,产品覆盖养殖产业链中绝大多数环节,涉及自动化设备、环控设备、整体解决方案等。 在实际应用…

Python3从零基础到入门(1)

目录 一、环境搭建 1.检测Python环境 2.下载安装Python环境 3.VSCode中配置Python环境 二、第一个程序 1.编码 2.输出 3.标识符 4.import 5.保留字 6.注释 7.缩进 三、变量和赋值 1.Python 中的变量 2.变量的赋值 3.多个变量赋值 四、基础数据类型 1.类型查看…

以unity技术开发视角对android权限的讲解

目录 前言 Android权限分类 普通权限 普通权限定义 普通权限有哪些 危险权限 危险权限的定义 危险权限有哪些 动态申请权限实例 申请单个权限实例 第一步:在清单文件中声明权限 第二步:在代码中进行动态申请权限 申请多个权限实例 第一步&am…

以对象为中心的视频编辑;SDXL高质量缩小版;Transformer在FPGA上实现12.8倍速度提升;深入研究ViT固有问题

本文首发于公众号:机器感知 以对象为中心的视频编辑;SDXL高质量缩小版;Transformer在FPGA上实现12.8倍速度提升;深入研究ViT固有问题 VASE: Object-Centric Appearance and Shape Manipulation of Real Videos 现有方法通过文生…

前端学习笔记 3:Vue 工程

前端学习笔记 3:Vue 工程 上一篇文章介绍了如何在单一 Html 页面中使用 Vue,本文介绍如何从头开始用 Vue 构建一个前端工程项目。 1.环境准备 Vue 框架代码的创建依赖于 Node.js,因此需要先安装 Node.js。 2.创建和启动 2.1.创建 通过以…

MongoDB高级集群架构设计

两地三中心集群架构设计 容灾级别 RPO & RTO RPO(Recovery Point Objective):即数据恢复点目标,主要指的是业务系统所能容忍的数据丢失量。RTO(Recovery Time Objective):即恢复时间目标&…

OpenHarmony内存泄漏指南 - 解决问题(综合)

本系列文章旨在提供定位与解决OpenHarmony应用与子系统内存泄露的常见手段与思路,将会分成几个部分来讲解。首先我们需要掌握发现内存泄漏问题的工具与方法,以及判断是否可能存在泄漏。接着需要掌握定位泄漏问题的工具,以及抓取trace、分析tr…

智能计价器Scratch-第14届蓝桥杯Scratch省赛真题第5题

5. 智能计价器(80分) 背景信息:A城市的出租车计价:3公里以内13元,基本单价每公里2.3元(超过3公里的部分,不满1公里按照1公里收费),燃油附加费每运次1元。例如:3.2公里的…

自动化测试报告生成(Allure)

之前尝试使用过testNG自带的测试报告、优化过reportNG的测试报告,对这两个报告都不能满意。后经查找资料,发现有个神器: Allure(已经有allure2了,笔者使用的就是allure2),生成的测试报告与上述…

【回溯算法】n-皇后

导航 题目来源题目描述示例思路完整代码 题目来源 n-皇后 题目描述 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一…

【Linux Shell】9. 流程控制

文章目录 【 1. if else 判断 】1.1 if1.2 if else1.3 if elif else1.4 实例 【 2. case 匹配 】【 3. 循环 】3.1 for 循环3.2 while 循环3.3 until 循环3.4 无限循环3.5 跳出循环3.5.1 break 跳出所有循环3.5.2 continue 仅跳出当前循环 【 1. if else 判断 】 1.1 if fi 是…

【算法】递归算法理解(持续更新)

这里写目录标题 一、递归算法1、什么情况下可以使用递归?2、递归算法组成部分3、案例:求n的阶乘4、编写一个递归函数来计算列表包含的元素数。5、通过递归找到列表中最大的数字。6、通过递归的方式实现二分查找算法。 一、递归算法 递归(Rec…

“单项突出”的赢双科技IPO加速,比亚迪是最强助力?

近日,新能源汽车核心部件供应商赢双科技首次递表科创板,其凭借旋转变压器产品就坐稳了新能源车企主要供应商的地位,从核心业务及业绩情况来看,赢双科技不愧为“单项冠军”。 据悉,赢双科技本次IPO拟募资8.47亿元&…

3.9 EXERCISES

矩阵加法需要两个输入矩阵A和B,并产生一个输出矩阵C。输出矩阵C的每个元素都是输入矩阵A和B的相应元素的总和,即C[i][j] A[i][j] B[i][j]。为了简单起见,我们将只处理元素为单精度浮点数的平方矩阵。编写一个矩阵加法内核和主机stub函数&am…

P9 视频码率及其码率控制方式

前言 从本章开始我们将要学习嵌入式音视频的学习了 ,使用的瑞芯微的开发板 🎬 个人主页:ChenPi 🐻推荐专栏1: 《C_ChenPi的博客-CSDN博客》✨✨✨ 🔥 推荐专栏2: 《Linux C应用编程(概念类)_C…

一款开源的MES系统

随着工业4.0的快速发展,制造执行系统(MES)成为了智能制造的核心。今天,将为大家推荐一款开源的MES系统——iMES工厂管家。 什么是iMES工厂管家 iMES工厂管家是一款专为中小型制造企业打造的开源MES系统。它具备高度的可定制性和灵…

Jenkins集成部署java项目

文章目录 Jenkins简介安装 Jenkins简介 Jenkins能实时监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象的展示项目构建的趋势和稳定性。 官网 安装 在官网下载windows版本的Jenkins 但是我点击这里浏览器没有反应&#xff0…

关于自增和自减的一些细节问题

目录 基本概念 1.运算 2.输出 基本概念 在这里简单回顾一下自增和自减:顾名思义,自就是同一变量的值发生变化,自增就是该变量值加1,自减就是该变量值减1。 自增和自减又可以根据运算符的位置不同分为前缀式和后缀式。前缀就是…