当前位置: 首页 > news >正文

深度学习快速入门--7天做项目

深度学习快速入门--7天做项目

  • 0. 引言
  • 1. 本文内容
  • 2. 深度学习是什么
  • 3. 项目是一个很好的切入点
  • 4. 7天做项目
    • 4.1 第一天:数据整理
    • 4.2 第二天:数据处理
    • 4.3 第三天:简单神经网络设计
    • 4.4 第四天:分析效果与原因
    • 4.5 第五天:整理代码
    • 4.6 第六天:理解代码
    • 4.7 第七天:升级代码
  • 5. 总结
  • 欢迎来稿

0. 引言

近段时间,之前的老板让我带下小师弟。然后按照给照小师弟的项目指导,正好出这篇文章来帮助那些想要深度学习入门或者刚接触深度学习的人。纯属拙见,仁者见仁智者见智,请勿言辞激烈讨论,感谢。。。

1. 本文内容

  • 深度学习是什么
  • 项目是一个很好的切入点
  • 7天做项目
  • 谢谢大家看完

2. 深度学习是什么

贴一些概念,大家了解即可。。。简单来说就是通过寻找数据之间的关系来进行某种决策
深度学习(Deep Learning)是机器学习的一个分支,其目标是通过模拟人脑神经网络的结构和功能,让计算机具有学习执行特定任务的能力。深度学习的核心概念是神经网络,特别是深层神经网络,这些网络由多个层次(深度)的神经元组成。

主要的深度学习模型是人工神经网络(Artificial Neural Networks,简称ANNs),其中深层神经网络是一种特殊类型的神经网络,具有多个隐藏层。这些网络通过学习从输入数据中提取特征,逐渐建立起对任务的复杂抽象和表示。神经网络的图像如下所示:
在这里插入图片描述

3. 项目是一个很好的切入点

为什么说项目是一个很好的切入点呢? 因为天天看视频,看书,对于现在很多适应快节奏的人都不是很合适,更何况老板那边也在催你赶快出成果看完了一遍又一遍还是不太会用呀!!或者说本来就没要求那么多、那么精通,我只是要求会用,为啥要为难自己呢?

这个时候,就要考虑从项目出发,然后以一个7天的计划来要求自己按照下面的内容来做!! 做完之后你肯定就对其有一个很好的了解了,当然了不管用也不要来找我,我也没收钱啊。。。。

4. 7天做项目

前面的准备时间就不再算了啊,项目分成简单回归项目简单分类项目,这个自己要分辨清楚。然后的话是使用的是基本的神经网络结构(当然有人要吐槽了,这都是多少年前的结构了怎么还用这个。 饭要一口一口吃,所有事情都是从简单做起,先搭建一个简单框架,然后慢慢在上面修正,你也就慢慢在进步了)。

4.1 第一天:数据整理

数据往往是深度学习领域的必杀技,为了得到一个好的结果,一定要有一个不错的数据。因此,我们首先需要对数据进行整理。打开数据文件后,我们需要对数据进行简单观察,查看下数据的各个结构。
在这里插入图片描述
例如上面这个数据,存在一个选项是stock,这就说明可能存在多个stock。我们在做的时候是否需要将每个类别区分出来也是我们需要考虑的事情。另外,假如说数据中存在异常值(前面的时候异常值不考虑)或者空值(读取的时候会反应为NAN),这个我们后续都要对其进行处理的。
注意:必要的时候需要对数据绘制图像来观察数据。。。

4.2 第二天:数据处理

在对数据进行整理后,拿到了自己跑模型的那一批数据,也就意味着我们需要对数据进行处理(数据清洗)了。
对数据进行清洗通常包含以下内容:

  1. 缺失值处理:检测并处理数据中的缺失值。这可能包括删除缺失值、使用插值方法填充缺失值(pandas库有自带的方法),或者通过其他手段进行处理。
  2. 数据类型转换: 确保数据的类型正确,例如将字符串转换为数字、日期格式的处理等。对于神经网络模型而言,能理解的只有数值型数据,因此可能需要进行onehot embedding或者label embedding
  3. 标准化和归一化: 对数据进行标准化或归一化,确保不同特征之间的尺度一致,有助于提高模型的稳定性和性能。

当然,数据处理还有很多操作,这里只介绍基本操作!!!!

4.3 第三天:简单神经网络设计

首先需要安装对应的软件,安装Pytorch(科研推荐),有想用Tensorflow的也支持!!
然后,设计一个简单的神经网络,下面贴上简单神经网络的代码:

import torch
import torch.nn as nnclass BPNN(nn.Module):def __init__(self):super(BPNN, self).__init__()self.hidden_layer = nn.Sequential(nn.Linear(13, 15),nn.Sigmoid())self.out_layer = nn.Sequential(nn.Linear(15, 1),nn.Sigmoid())def forward(self, x):out = self.hidden_layer(x)out = self.out_layer(out)return out

网络设计或者结构可以从网上找到,大家多搜索一下就能找到清晰地了,这里就不献丑了!!!

4.4 第四天:分析效果与原因

将跑出来的预测结果与真实值进行比较,在跑的时候不要害怕跑的次数太多(之前的师弟跑了50次就停了,结果模型就是一个类似于半圆,你让他收敛一会儿啊。。。。)。另外,对于比较的结果记得用反归一化的结果,不要用还是之前归一化后的结果,这样的话容易看不出来真实比较的情况!!!
对于各种各样跑出来的情况,记得在网上找相关内容来查阅,这样会让你更深刻地理解代码!!! 不要害怕出错

4.5 第五天:整理代码

将你的代码整理成一个完整的项目,不要给出多余的内容!!!(此时的代码才是一个完整的Project!! 恭喜!!!

4.6 第六天:理解代码

将你的代码再理解一遍吧,该打上的注释都要打上,每一行代码都要理解其功能哦!!!(这个时候就要发挥这是什么的多问精神,不停问自己这是什么。。。

4.7 第七天:升级代码

代码这么简单,不给代码升级一下? 不换一下网络结构? 不搞一些牛的东西进去吗?! (加油吧!!小伙子,你已经出师了!!!

5. 总结

到此,使用 深度学习快速入门–7天做项目 已经介绍完毕了!!! 如果有什么疑问欢迎在评论区提出,对于共性问题可能会后续添加到文章介绍中。

如果觉得这篇文章对你有用,记得点赞、收藏并分享给你的小伙伴们哦😄。

欢迎来稿

欢迎投稿合作,投稿请遵循科学严谨、内容清晰明了的原则!!!! 有意者可以后台私信!!

相关文章:

深度学习快速入门--7天做项目

深度学习快速入门--7天做项目 0. 引言1. 本文内容2. 深度学习是什么3. 项目是一个很好的切入点4. 7天做项目4.1 第一天:数据整理4.2 第二天:数据处理4.3 第三天:简单神经网络设计4.4 第四天:分析效果与原因4.5 第五天:…...

Request Response 基础篇

Request & Response 在之前的博客中,初最初见到Request和Response对象,是在Servlet的Service方法的参数中,之前隐性地介绍过Request的作用是获取请求数据。通过获取的数据来进行进一步的逻辑处理,然后通过对Response来进行数…...

数据爬虫是什么

数据爬虫是一种自动化程序,用于从互联网上收集数据。它通过模拟人类浏览器的行为,访问网页并提取所需的数据。数据爬虫通常使用网络爬虫框架或库来实现。 数据爬虫的工作流程通常包括以下几个步骤: 发起请求:爬虫发送HTTP请求到…...

Java注解与策略模式的奇妙结合:Autowired探秘

大家好,欢迎收听今天的播客节目!我是你们的主持人,也是一位对软件开发充满热情的开发者。在今天的节目中,我们将探讨如何巧妙地结合注解与策略模式,创建一个灵活而强大的策略规则工厂。让我们带着好奇的心情一同深入研…...

Datax3.0+DataX-Web部署分布式可视化ETL系统

一、DataX 简介 DataX 是阿里云 DataWorks 数据集成的开源版本,主要就是用于实现数据间的离线同步。DataX 致力于实现包括关系型数据库(MySQL、Oracle 等)、HDFS、Hive、ODPS、HBase、FTP 等各种异构数据源(即不同的数据库&#x…...

【Java 数据结构】排序

排序算法 1. 排序的概念及引用1.1 排序的概念1.2 常见的排序算法 2. 常见排序算法的实现2.1 插入排序2.1.1 直接插入排序2.1.2 希尔排序( 缩小增量排序 ) 2.2 选择排序2.2.1 直接选择排序2.2.2 堆排序 2.3 交换排序2.3.1冒泡排序2.3.2 快速排序2.3.3 快速排序非递归 2.4 归并排…...

Deepin如何开启与配置SSH实现无公网ip远程连接

文章目录 前言1. 开启SSH服务2. Deppin安装Cpolar3. 配置ssh公网地址4. 公网远程SSH连接5. 固定连接SSH公网地址6. SSH固定地址连接测试 前言 Deepin操作系统是一个基于Debian的Linux操作系统,专注于使用者对日常办公、学习、生活和娱乐的操作体验的极致&#xff0…...

【Springcloud篇】学习笔记十(十七章):Sentinel实现熔断与限流——Hystrix升级

第十七章_Sentinel实现熔断与限流 1.Sentinel介绍 1.1是什么 随着微服务的流行,服务和服务之间的稳定性变得越来越重要。 Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。 用来代替Hystrix Sentinel 具有…...

【算法与数据结构】718、1143、LeetCode最长重复子数组 最长公共子序列

文章目录 一、718、最长重复子数组二、1143、最长公共子序列三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、718、最长重复子数组 思路分析: 第一步,动态数组的含义。 d p [ i ] [ j ] dp[i]…...

C# SSH.NET 长命令及时返回

在SSH中执行长时间的命令,SSH.NET及时在文本框中返回连续显示结果。 c# - Execute long time command in SSH.NET and display the results continuously in TextBox - Stack Overflow 博主管理了一个服务器集群,准备上自动巡检工具,测试在…...

Rust学习之Features

Rust学习之Features 一 什么是 Features二 默认 feature三 简单的features应用示例四 可选(optional)的依赖五 依赖的特性5.1 在依赖表中指定5.2 在features表中指定 六 命令行中特性控制七 特性统一路径八 其它8.1 相互排斥特性8.2 观察启用特性8.3 Feature resolver version …...

云计算基础(云计算概述)

目录 一、云计算概述 1.1 云计算的概念 1.1.1 云计算解决的问题 1.1.2 云计算的概念 1.1.3 云计算的组成 1.2 云计算主要特征 1.2.1 按需自助服务 1.2.2 泛在接入 1.2.3 资源池化 1.2.4 快速伸缩性 1.2.5 服务可度量 1.3 云计算服务模式 1.3.1 软件即服务(Softwar…...

【机器学习】科学库使用手册第2篇:机器学习任务和工作流程(已分享,附代码)

本系列文章md笔记(已分享)主要讨论人工智能相关知识。主要内容包括,了解机器学习定义以及应用场景,掌握机器学习基础环境的安装和使用,掌握利用常用的科学计算库对数据进行展示、分析,学会使用jupyter note…...

【React】前端项目引入阿里图标

【React】前端项目引入阿里图标 方式11、登录自己的iconfont-阿里巴巴矢量图标库,把需要的图标加入到自己的项目中去;2、加入并进入到项目中去选择Font class 并下载到本地3、得到的文件夹如下4. 把红框中的部分粘贴到自己的项目中(public 文…...

Javascript入门:第三个知识点:javascript里的数据类型、运算符

数字类型 123 //整数 123.1 //浮点数 1.123e3 //科学计数法 -10 //负数 NaN //not a number Infinity //无限大 以上的类型在javascript里都是数字类型 字符串类型 在开始之前,我需要先说明白两个知识点: console.log()是啥? let 与 v…...

最新版国产会声会影2024新功能爆料

会声会影2024是一个视频编辑软件,具备以下功能: 会声会影2024安装包下载如下: https://wm.makeding.com/iclk/?zoneid55677 1. 视频剪辑:可以对视频进行剪辑、裁剪、拼接和分割操作,实现对视频片段的精确控制。 2. 音频编辑&…...

Pandas处理Excel文件的实用指南 - Python开发技巧XI

处理Excel文件是数据分析师日常工作中的常见任务之一。 幸运的是,Python的Pandas库提供了一套强大的工具,使得读取、处理和写入Excel文件变得既清晰又快捷。 在本篇博客中,我们将探讨如何使用Pandas的 read_excel 方法来读取Excel文件&#x…...

泰克示波器(TBS2000系列)触发功能使用讲解——边沿触发

# Trigger区域 触发区域用于对触发功能进行配置。示波器的触发功能用于采集(Acquire)那些在瞬间出现的信号,便于我们分析观察,此时可以当做逻辑分析仪使用。触发区域按钮包括:menu、Level\Force Trig三个。 目录 1.1 …...

C++学习Day01之C++对C语言增强和扩展

目录 一、程序及输出1.1 全局变量检测增强1.2 函数检测增强1.3 类型转换检测增强1.4 struct增强1.5 bool类型扩展1.6 三目运算符增强1.7 const增强1.7.1 全局Const对比1.7.2 局部Const对比1.7.3 Const变量初始化数组1.7.3 Const修饰变量的链接性 二、分析总结 一、程序及输出 …...

【文件上传WAF绕过】<?绕过、.htaccess木马、.php绕过

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【python】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收藏…...

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明:假设每台服务器已…...

React Native在HarmonyOS 5.0阅读类应用开发中的实践

一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

C# 类和继承(抽象类)

抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...

关于 WASM:1. WASM 基础原理

一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

管理学院权限管理系统开发总结

文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...