一个案例熟悉使用pytorch
1. 完整模型的训练套路 任务:给图片做分类,飞机、鸟、狗、猫。。等共十种标签
ps:针对不同任务,只是在数据处理和模型搭建上有所不同而已,模型的训练流程套路都是一样的。
1.2 导入必要的包123import torchvisionfrom torch import nnimport torch
1.3 准备数据集1.3.1 使用公开数据集:123# 准备数据集train_data = torchvision.datasets.CIFAR10(root="../data",train=True,transform=torchvision.transforms.ToTensor(),download=True)test_data = torchvision.datasets.CIFAR10(root="../data",train=False,transform=torchvision.transforms.ToTensor(),download=True)
1.3.2 获取训练集、测试集长度:123456# length长度train_d ...
常用破解软件
常用破解软件1. 破解jetbrains激活码
16G5NXCPJZB-eyJsaWNlbnNlSWQiOiI2RzVOWENQSlpCIiwibGljZW5zZWVOYW1lIjoic2lnbnVwIHNjb290ZXIiLCJhc3NpZ25lZU5hbWUiOiIiLCJhc3NpZ25lZUVtYWlsIjoiIiwibGljZW5zZVJlc3RyaWN0aW9uIjoiIiwiY2hlY2tDb25jdXJyZW50VXNlIjpmYWxzZSwicHJvZHVjdHMiOlt7ImNvZGUiOiJQU0kiLCJmYWxsYmFja0RhdGUiOiIyMDI1LTA4LTAxIiwicGFpZFVwVG8iOiIyMDI1LTA4LTAxIiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBEQiIsImZhbGxiYWNrRGF0ZSI6IjIwMjUtMDgtMDEiLCJwYWlkVXBUbyI6IjIwMjUtMDgtMDEiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiSUkiLCJmYWxsYmFja0 ...
Pyspark-SparkSQL
3.PySpark-SparkSQL
在Spark上运用SQL处理结构化数据
3.1 SparkSQL快速入门3.1.1 什么是SparkSQL
SparkSQL是Spark的一个模块,用于处理海量结构化数据
限定:结构化数据处理
3.1.2 为什么要学习SparkSQL
SparkSQL是非常成熟的 海量结构化数据处理框架。
学习SparkSQL主要在2个点:
SparkSQL本身十分优秀, 支持SQL语言、性能强、可以自动优化、API简单、兼容HIVE等等
企业大面积在使用SparkSQL处理业务数据
离线开发
数仓搭建
科学计算
数据分析
3.1.3 SparkSQL特点
3.1.4 SparkSQL发展史
在许多年前(2012\2013左右)Hive逐步火热起来, 大片抢占分布式SQL计算市场
Spark作为通用计算框架, 也不可能放弃这一细分领域.
于是, Spark官方模仿Hive推出了Shark框架(Spark 0.9版本)
Shark框架是几乎100%模仿Hive, 内部的配置项\优化项等都是直接模仿而来.
不同点在于将执行引 ...
PySpark-核心编程
2. PySpark——RDD编程入门[TOC]
2.1 程序执行入口SparkContext对象Spark RDD 编程的程序入口对象是SparkContext对象(不论何种编程语言)
只有构建出SparkContext, 基于它才能执行后续的API调用和计算
本质上, SparkContext对编程来说, 主要功能就是创建第一个RDD出来
代码演示:
123456789# coding:utf8# 导入Spark相关包from pyspark import SparkConf, SparkContextif __name__ == '__main__': # 构建SparkConf对象 conf = SparkConf().setAppName ("helloSpark").setMaster("local[*]") # 构建SparkContext执行环境入口对象 sc = SparkContext(conf=conf)
master的种类:
local:local[N]:表示以N核CPU执 ...
黑马虚拟机环境搭建
黑马虚拟机环境搭建1.网络设置参考博客:
桥接模式设置参考博客
1.1 选择桥接模式
编辑Vmvare虚拟网络
1.2 修改虚拟机ip在根目录输入此命令:
12vim /etc/sysconfig/network-scripts/ifcfg-ens33# 进入如下界面进行ip修改
先在windows系统的cmd窗口输入 ipcong -all,得到
然后将虚拟机的文件修改为:
关闭防火墙:
1234# 关闭防火墙systemctl stop firewalld# 关闭防火墙开机自启systemctl disable firewalld.service
重启网络服务:
1systemctl restart network.service
能ping通就OK 了:
2. 修改主机名和映射地址2.1 修改主机名在根目录输入:
1vim /etc/hostname
修改为:
Tnode1
2.2 修改ip映射地址在根目录输入:
1vim /etc/hosts
修改为:
最后输入一下reboot重启一下就行了
3. 编写分发脚本
插入:
123456789101112131 ...
Informer介绍
Informer介绍1. Transformer存在的问题Informer实质是在Transformer的基础上进行改进,通过修改transformer的结构,提高transformer的速度。那么Transformer有什么样的缺点:
(1)self-attention的平方复杂度。self-attention的时间和空间复杂度是O(L^2),L为序列长度。
(2)对长输入进行堆叠(stack)时的内存瓶颈。多个encoder-decoder堆叠起来就会形成复杂的空间复杂度,这会限制模型接受较长的序列输入。
(3)预测长输出时速度骤降。对于Tansformer的输出,使用的是step-by-step推理得像RNN模型一样慢,并且动态解码还存在错误传递的问题。
2. Informer研究背景论文的研究背景为:长序列预测问题。这些问题会出现在哪些地方呢:
● 股票预测(数据、规则都在变,模型都是无法预测的)
● 机器人动作的预测
● 人体行为识别(视频前后帧的关系)
...
5-锁
5. 锁5.1 概述锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。
MySQL中的锁,按照锁的粒度分,分为以下三类:
全局锁:锁定数据库中的所有表。
表级锁:每次操作锁住整张表。
行级锁:每次操作锁住对应的行数据。
5.2 全局锁5.2.1 介绍全局锁就是对整个数据库实例加锁,加锁后整个实例就处于只读状态,后续的DML的写语句,DDL语句,已经更新操作的事务提交语句都将被阻塞。
其典型的使用场景是做全库的逻辑备份,对所有的表进行锁定,从而获取一致性视图,保证数据的完整性。
为什么全库逻辑备份,就需要加全局锁呢?
A. 我们一起先来分析一下不加全局锁,可能存在的问题。假设在数据库中存在这样三张表: tb_stock 库存表,tb_order 订单表,tb_orderlog 订单日志表。
在进行数据 ...
4.4-触发器
4.4 触发器4.4.1 介绍触发器是与表有关的数据库对象,指在insert/update/delete之前(BEFORE)或之后(AFTER),触发并执行触发器中定义的==SQL语句集合==。触发器的这种特性可以协助应用在数据库端确保数据的完整性, 日志记录 , 数据校验等操作 。
使用别名OLD和NEW来引用触发器中发生变化的记录内容,这与其他的数据库是相似的。现在触发器还只支持行级触发,不支持语句级触发。
触发器类型
New 和 OLD
INSERT 型触发器
NEW 表示将要或者已经新增的数据
UPDATE 型触发器
OLD 表示修改之前的数据,NEW 表示将要或已经修改后的数据
DELETE 型触发器
OLD 表示将要或者已经删除的数据
4.4.2 语法1). 创建123456CREATE TRIGGER trigger_nameBEFORE/AFTER INSERT/UPDATE/DELETEON tbl_name FOR EACH ROW -- 行级触发器BEGIN trigger_stmt ;END;
...
Informer代码解析
Informer代码解析1. 参数设定模块(main_informer)值得注意的是'--model'、'--data'参数需要去掉required参数,否则运行代码可能会报'--model'、'--data'错误
修改完参数后运行该模块,保证代码运行不报错的情况下进行debug
1.1 参数含义下面是各参数含义(注释)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899# 选择模型(去掉required参数,选择informer模型)parser.add_argument('--model', type=str, default='informer',help ...
第18章_JDK8-17新特性(下)
第18章_JDK8-17新特性(下)
6. 新语法结构新的语法结构,为我们勾勒出了 Java 语法进化的一个趋势,将开发者从复杂、繁琐的低层次抽象中逐渐解放出来,以更高层次、更优雅的抽象,既降低代码量,又避免意外编程错误的出现,进而提高代码质量和开发效率。
6.1 Java的REPL工具: jShell命令JDK9的新特性
Java 终于拥有了像Python 和 Scala 之类语言的REPL工具(交互式编程环境,read - evaluate - print - loop):jShell。以交互式的方式对语句和表达式进行求值。即写即得、快速运行。
利用jShell在没有创建类的情况下,在命令行里直接声明变量,计算表达式,执行语句。无需跟人解释”public static void main(String[] args)”这句”废话”。
使用举例
调出jShell
获取帮助
基本使用
导入指定的包
默认已经导入如下的所有包:(包含java.lang包)
只需按下 Tab 键,就能自动补全代码
列出当前 session 里所有有效的代码片 ...