1.30、基于卷积神经网络的手写数字旋转角度预测(matlab)
1、卷积神经网络的手写数字旋转角度预测原理及流程
基于卷积神经网络的手写数字旋转角度预测是一个常见的计算机视觉问题。在这种情况下,我们可以通过构建一个卷积神经网络(Convolutional Neural Network,CNN)来实现该任务。以下是基于MATLAB的手写数字旋转角度预测的原理和流程:
原理:
-
数据准备:首先,准备一个包含手写数字图像和其对应标签(即旋转角度)的数据集。这些图像可以是MNIST数据集的手写数字。
-
模型建立:构建一个CNN模型,包括卷积层、池化层、全连接层等,来学习手写数字图像的特征并预测它们的旋转角度。
-
训练模型:利用准备好的训练数据集对CNN模型进行训练,通过反向传播算法来调整模型参数以最小化预测与真实标签之间的误差。
-
模型评估:使用测试数据集对训练好的模型进行评估,计算模型的准确率或其他性能指标,以评估其在预测手写数字旋转角度方面的性能。
流程:
-
加载数据集:在MATLAB中加载手写数字图像数据集,并对图像进行预处理和标签处理,以便输入到CNN模型中。
-
构建CNN模型:使用MATLAB深度学习工具箱中的函数(如
convolution2dLayer
、maxPooling2dLayer
、fullyConnectedLayer
、classificationLayer
)构建一个适合手写数字旋转角度预测的CNN模型。 -
定义训练选项:设置训练选项,包括优化器类型、学习率、最大训练轮数等。
-
训练模型:使用训练数据集对CNN模型进行训练,通过调用
trainNetwork
函数并传入训练数据和训练选项来完成训练过程。 -
评估模型:使用测试数据集对训练好的模型进行评估,计算准确率等性能指标。
-
预测手写数字的旋转角度:最后,使用训练好的模型对新的手写数字图像进行预测,得到其旋转角度的预测结果。
这是基于卷积神经网络的手写数字旋转角度预测的基本原理和流程。
2、卷积神经网络的手写数字旋转角度预测案例说明
1)解决问题
卷积神经网络来预测手写数字的旋转角度
2)技术方案
回归任务涉及预测连续数值而不是离散类标签,回归构造卷积神经网络架构,训练网络,并使用经过训练的网络来预测旋转手写数字的角度。
3、加载数据
1)数据说明
数据集包含手写数字的合成图像以及每个图像的旋转角度(以度为单位)。
2)加载数据代码
说明:变量 anglesTrain 和 anglesTest 是以度为单位的旋转角度。训练数据集和测试数据集各包含 5000 个图像。
load DigitsDataTrain
load DigitsDataTest
3)显示训练集代码
numObservations = size(XTrain,4);
idx = randperm(numObservations,49);
I = imtile(XTrain(:,:,:,idx));
figure
imshow(I);
视图效果
4)数据集划分代码
说明:使用 trainingPartitions 函数将 XTrain 和 anglesTrain 分区为训练分区和验证分区,留出 15% 的训练数据用于验证。
[idxTrain,idxValidation] = trainingPartitions(numObservations,[0.85 0.15]);XValidation = XTrain(:,:,:,idxValidation);
anglesValidaiton = anglesTrain(idxValidation);XTrain = XTrain(:,:,:,idxTrain);
anglesTrain = anglesTrain(idxTrain);
4、检查数据归一化
1)归一化说明
训练神经网络时,确保数据在网络的所有阶段均归一化。
对于使用梯度下降的网络训练,归一化有助于训练的稳定和加速.
数据比例不佳,则损失可能会变为 NaN,并且网络参数在训练过程中可能发生偏离
归一化数据的常用方法包括重新缩放数据,使其范围变为 [0,1],或使其均值为 0 且标准差为 1
2)绘制响应的分布代码
说明:响应(以度为单位的旋转角度)大致均匀地分布在 -45 和 45 之间,效果很好,无需归一化。
figure
histogram(anglesTrain)
axis tight
ylabel("Counts")
xlabel("Rotation Angle")
视图效果
5、定义神经网络架构
1)神经网络架构说明
对于图像输入,指定一个图像输入层。
指定四个 convolution-batchnorm-ReLU 模块,并增加滤波器数量。
在每个模块之间指定一个具有池化区域的平均池化层,步幅大小为 2。
在网络末尾,包含一个全连接层,其输出大小与响应数量匹配。
2)神经网络架构代码
numResponses = 1;layers = [imageInputLayer([28 28 1])convolution2dLayer(3,8,Padding="same")batchNormalizationLayerreluLayeraveragePooling2dLayer(2,Stride=2)convolution2dLayer(3,16,Padding="same")batchNormalizationLayerreluLayeraveragePooling2dLayer(2,Stride=2)convolution2dLayer(3,32,Padding="same")batchNormalizationLayerreluLayerconvolution2dLayer(3,32,Padding="same")batchNormalizationLayerreluLayerfullyConnectedLayer(numResponses)];
6、指定训练选项
1)指定训练选项说明
使用Experiment Manager。
将初始学习率设置为 0.001,并在 20 轮训练后降低学习率。
通过指定验证数据和验证频率,监控训练过程中的网络准确度。软件基于训练数据训练网络,并在训练过程中按固定时间间隔计算基于验证数据的准确度。验证数据不用于更新网络权重。
在图中显示训练进度并监控均方根误差。
2)指定训练选项代码
miniBatchSize = 128;
validationFrequency = floor(numel(anglesTrain)/miniBatchSize);options = trainingOptions("sgdm", ...MiniBatchSize=miniBatchSize, ...InitialLearnRate=1e-3, ...LearnRateSchedule="piecewise", ...LearnRateDropFactor=0.1, ...LearnRateDropPeriod=20, ...Shuffle="every-epoch", ...ValidationData={XTest,anglesTest}, ...ValidationFrequency=validationFrequency, ...Plots="training-progress", ...Metrics="rmse", ...Verbose=false);
7、训练神经网络
1)训练神经网络说明
使用 trainnet 函数训练神经网络。
对于回归,请使用均方误差损失。默认情况下,trainnet 函数使用 GPU(如果有)。使用 GPU 需要 Parallel Computing Toolbox™ 许可证和受支持的 GPU 设备。要指定执行环境,请使用 ExecutionEnvironment 训练选项。
2)训练神经网络代码
net = trainnet(XTrain,anglesTrain,layers,"mse",options);
视图效果
8、测试网络
1)测试网络说明
基于测试数据评估准确度来测试网络性能。
使用 minibatchpredict 函数进行预测。默认情况下,minibatchpredict 函数使用 GPU(如果有)。
2)测试网络代码
YTest = minibatchpredict(net,XTest);
3)计算均方根误差 (RMSE) 以衡量预测旋转角度和实际旋转角度之间的差异
predictionError = anglesTest - YTest;
squares = predictionError.^2;
rmse = sqrt(mean(squares))
4)散点图中可视化预测。绘制预测值对真实值的图。
figure
scatter(YTest,anglesTest,"+")
xlabel("Predicted Value")
ylabel("True Value")hold on
plot([-60 60], [-60 60],"y--")
视图效果
9、使用新数据进行预测
1)测试说明
使用 predict 函数并使用神经网络对第一个测试图像进行预测
2)测试代码
X = XTest(:,:,:,1);
if canUseGPUX = gpuArray(X);
end
Y = predict(net,X)
10、总结
基于卷积神经网络的手写数字旋转角度预测是一个常见的计算机视觉问题,通过使用MATLAB深度学习工具箱可以比较方便地实现。下面是对这一任务的总结:
总结要点:
-
数据准备:准备包含手写数字图像和对应旋转角度标签的数据集,如MNIST数据集。
-
模型建立:构建卷积神经网络(CNN)模型,通过卷积层、池化层、全连接层等结构来学习手写数字图像的特征和预测旋转角度。
-
训练模型:使用训练数据集对CNN模型进行训练,通过反向传播算法来调整模型参数,最小化预测与真实标签的误差。
-
模型评估:使用测试数据集对训练好的模型进行评估,计算准确率或其他性能指标,评定模型在预测旋转角度上的性能。
实现流程:
-
数据加载和预处理:加载手写数字图像数据集,对图像进行预处理(如缩放、归一化)并提取对应的旋转角度标签。
-
CNN模型构建:使用MATLAB深度学习工具箱中的函数构建CNN模型,包括卷积层、池化层、全连接层,并适当选择激活函数。
-
训练模型:定义训练选项,选择优化器和学习率等参数,使用训练数据集对CNN模型进行训练。
-
模型评估:使用测试数据集对训练好的模型进行评估,检验其在预测手写数字旋转角度的准确性。
-
预测和应用:最后,使用训练好的模型对新的手写数字图像进行预测,实现手写数字旋转角度的自动识别和预测。
通过以上流程和总结,您可以利用MATLAB深度学习工具箱来实现基于卷积神经网络的手写数字旋转角度预测任务。
11、源代码
代码
%% 基于卷积神经网络的手写数字旋转角度预测
%卷积神经网络来预测手写数字的旋转角度
%回归任务涉及预测连续数值而不是离散类标签
%回归构造卷积神经网络架构,训练网络,并使用经过训练的网络来预测旋转手写数字的角度。%% 加载数据
%数据集包含手写数字的合成图像以及每个图像的旋转角度(以度为单位)。
%变量 anglesTrain 和 anglesTest 是以度为单位的旋转角度。训练数据集和测试数据集各包含 5000 个图像。load DigitsDataTrain
load DigitsDataTest%显示训练集
numObservations = size(XTrain,4);
idx = randperm(numObservations,49);
I = imtile(XTrain(:,:,:,idx));
figure
imshow(I);%数据集划分
%使用 trainingPartitions 函数将 XTrain 和 anglesTrain 分区为训练分区和验证分区,留出 15% 的训练数据用于验证。
[idxTrain,idxValidation] = trainingPartitions(numObservations,[0.85 0.15]);XValidation = XTrain(:,:,:,idxValidation);
anglesValidaiton = anglesTrain(idxValidation);XTrain = XTrain(:,:,:,idxTrain);
anglesTrain = anglesTrain(idxTrain);%% 检查数据归一化
%训练神经网络时,确保数据在网络的所有阶段均归一化。
%对于使用梯度下降的网络训练,归一化有助于训练的稳定和加速.
%数据比例不佳,则损失可能会变为 NaN,并且网络参数在训练过程中可能发生偏离
%归一化数据的常用方法包括重新缩放数据,使其范围变为 [0,1],或使其均值为 0 且标准差为 1%绘制响应的分布。
% 响应(以度为单位的旋转角度)大致均匀地分布在 -45 和 45 之间,效果很好,无需归一化。
figure
histogram(anglesTrain)
axis tight
ylabel("Counts")
xlabel("Rotation Angle")%% 定义神经网络架构
%对于图像输入,指定一个图像输入层。
%指定四个 convolution-batchnorm-ReLU 模块,并增加滤波器数量。
%在每个模块之间指定一个具有池化区域的平均池化层,步幅大小为 2。
%在网络末尾,包含一个全连接层,其输出大小与响应数量匹配。
numResponses = 1;layers = [imageInputLayer([28 28 1])convolution2dLayer(3,8,Padding="same")batchNormalizationLayerreluLayeraveragePooling2dLayer(2,Stride=2)convolution2dLayer(3,16,Padding="same")batchNormalizationLayerreluLayeraveragePooling2dLayer(2,Stride=2)convolution2dLayer(3,32,Padding="same")batchNormalizationLayerreluLayerconvolution2dLayer(3,32,Padding="same")batchNormalizationLayerreluLayerfullyConnectedLayer(numResponses)];
%% 指定训练选项
%使用Experiment Manager。
%将初始学习率设置为 0.001,并在 20 轮训练后降低学习率。
%通过指定验证数据和验证频率,监控训练过程中的网络准确度。软件基于训练数据训练网络,并在训练过程中按固定时间间隔计算基于验证数据的准确度。验证数据不用于更新网络权重。
%在图中显示训练进度并监控均方根误差。miniBatchSize = 128;
validationFrequency = floor(numel(anglesTrain)/miniBatchSize);options = trainingOptions("sgdm", ...MiniBatchSize=miniBatchSize, ...InitialLearnRate=1e-3, ...LearnRateSchedule="piecewise", ...LearnRateDropFactor=0.1, ...LearnRateDropPeriod=20, ...Shuffle="every-epoch", ...ValidationData={XTest,anglesTest}, ...ValidationFrequency=validationFrequency, ...Plots="training-progress", ...Metrics="rmse", ...Verbose=false);
%% 训练神经网络
%使用 trainnet 函数训练神经网络。
%对于回归,请使用均方误差损失。默认情况下,trainnet 函数使用 GPU(如果有)。使用 GPU 需要 Parallel Computing Toolbox™ 许可证和受支持的 GPU 设备。要指定执行环境,请使用 ExecutionEnvironment 训练选项。
net = trainnet(XTrain,anglesTrain,layers,"mse",options);
%% 测试网络
%基于测试数据评估准确度来测试网络性能。
%使用 minibatchpredict 函数进行预测。默认情况下,minibatchpredict 函数使用 GPU(如果有)。
YTest = minibatchpredict(net,XTest);
%计算均方根误差 (RMSE) 以衡量预测旋转角度和实际旋转角度之间的差异。
predictionError = anglesTest - YTest;
squares = predictionError.^2;
rmse = sqrt(mean(squares))
%散点图中可视化预测。绘制预测值对真实值的图。
figure
scatter(YTest,anglesTest,"+")
xlabel("Predicted Value")
ylabel("True Value")hold on
plot([-60 60], [-60 60],"y--")%% 使用新数据进行预测
%使用 predict 函数并使用神经网络对第一个测试图像进行预测
X = XTest(:,:,:,1);
if canUseGPUX = gpuArray(X);
end
Y = predict(net,X)
工程文件
https://download.csdn.net/download/XU157303764/89494539
相关文章:
![](https://img-blog.csdnimg.cn/direct/a35e3dd73632423a92451bfbd0ae7b66.png)
1.30、基于卷积神经网络的手写数字旋转角度预测(matlab)
1、卷积神经网络的手写数字旋转角度预测原理及流程 基于卷积神经网络的手写数字旋转角度预测是一个常见的计算机视觉问题。在这种情况下,我们可以通过构建一个卷积神经网络(Convolutional Neural Network,CNN)来实现该任务。以下…...
![](https://www.ngui.cc/images/no-images.jpg)
Windows如何使用Python的sphinx
在Windows上使用Python的Sphinx进行文档渲染和呈现,可以遵循以下步骤进行操作: 安装Python:首先,确保你的Windows系统上已经安装了Python。你可以从Python的官方网站下载并安装适合你系统(32位或64位&…...
![](https://www.ngui.cc/images/no-images.jpg)
C++ STL nth_element 用法
一:功能 将一个序列分为两组,前一组元素都小于*nth,后一组元素都大于*nth, 并且确保第 nth 个位置就是排序之后所处的位置。即该位置的元素是该序列中第nth小的数。 二:用法 #include <vector> #include <a…...
![](https://i-blog.csdnimg.cn/direct/75ba1faa3a7d4e5aa1efb017111bd5f4.png#pic_center)
【PostgreSQL教程】PostgreSQL 选择数据库
博主介绍:✌全网粉丝20W+,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物联网、机器学习等设计与开发。 感兴趣的可…...
![](https://www.ngui.cc/images/no-images.jpg)
C# —— HashTable
集合collections命名空间,专门进行一系列的数据存储和检索的类,主要包含了:堆栈、和队列、list、ArrayList、数组 HashTable 字典 storeList 排序列表等类 Array 数组 长度固定, 类型固定 通过索引值来进行访问 ArrayList动态数组,…...
![](https://www.ngui.cc/images/no-images.jpg)
LeetCode 第407场周赛个人题解
目录 100372. 使两个整数相等的位更改次数 原题链接 思路分析 AC代码 100335. 字符串元音游戏 原题链接 思路分析 AC代码 100360. 将 1 移动到末尾的最大操作次数 原题链接 思路分析 AC代码 100329. 使数组等于目标数组所需的最少操作次数 原题链接 思路分析 A…...
![](https://i-blog.csdnimg.cn/direct/a3dd7d29833741e98abf1fc832ce42cb.png)
使用Django框架实现音频上传功能
数据库设计(models.py) class Music(models.Model):""" 音乐 """name models.CharField(verbose_name"音乐名字", max_length32)singer models.CharField(verbose_name"歌手", max_length32)# 本质…...
![](https://i-blog.csdnimg.cn/direct/9eb65e9be88b45fc9f65cffba1a716fa.png)
[路由器]IP-MAC的绑定与取消
背景:当公司的网络不想与外部人员进行共享,可以在路由器页面配置IP-MAC的绑定,让公司内部人员的手机和电脑的mac,才能接入到公司。第一步:在ARP防护中,启动IP-MAC绑定选项,必须启动仅允许IP-MAC…...
![](https://img-blog.csdnimg.cn/img_convert/97bad67349a49cbe20b9a71b624f940d.png)
Idea配置远程开发
Idea配置远程开发 本篇博客介绍使用idea通过ssh连接ubuntu服务器进行开发 目录 Idea配置远程开发1.idae上点击file->Remote Development2.点击New Connection3.填写相关信息4.输入密码5.选择IDE版本和项目路径5.1 点击open an SSH terminal打开控制台5.2 依次执行命令 6.成…...
![](https://www.ngui.cc/images/no-images.jpg)
lua 实现 函数 判断两个时间戳是否在同一天
函数用于判断两个时间戳是否在同一天。下面是对代码的详细解释: ### 函数参数 - stampA 和 stampB:两个时间戳,用于比较。- resetInfo:一个可选参数,包含小时、分钟和秒数,用于调整时间戳。 ### 函数实现…...
![](https://www.ngui.cc/images/no-images.jpg)
工作纪实53-log4j日志打印文件隔离
在项目中,我有一堆业务日志需要打印,另一部分的日志,是没有格式的,需要被云平台离线解析并收集到kafka或者hdfs、hive等,需要将日志隔离打印到不同的文件 正常的log4j配置是下面这样的,配合Sl4j直接使用默认…...
![](https://i-blog.csdnimg.cn/direct/890cb9cddda943e3996d924e5368b6d0.png)
7月21日,贪心练习
大家好呀,今天带来一些贪心算法的应用解题、 一,柠檬水找零 . - 力扣(LeetCode) 解析: 本题的贪心体现在对于20美元的处理上,我们总是优先把功能较少的10元作为找零,这样可以让5元用处更大 …...
![](https://img-blog.csdnimg.cn/img_convert/4ff71a71c5a98f28d4262e63a189404c.png)
FPGA DNA 获取 DNA_PORT
FPGA DNA DNA 是 FPGA 芯片的唯一标识, FPGA 都有一个独特的 ID ,也就是 Device DNA ,这个 ID 相当于我们的身份证,在 FPGA 芯片生产的时候就已经固定在芯片的 eFuse 寄存器中,具有不可修改的属性。在 xilinx 7series…...
![](https://www.ngui.cc/images/no-images.jpg)
使用 hutool工具实现导入导出功能。
hutool工具网址 Hutool参考文档 pom依赖 <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.7.20</version></dependency><dependency><groupId>org.apache.poi</gro…...
![](https://i-blog.csdnimg.cn/direct/3e82a6da551c437aae279edf8273e507.png)
大语言模型-Transformer-Attention Is All You Need
一、背景信息: Transformer是一种由谷歌在2017年提出的深度学习模型。 主要用于自然语言处理(NLP)任务,特别是序列到序列(Sequence-to-Sequence)的学习问题,如机器翻译、文本生成等。Transfor…...
![](https://www.ngui.cc/images/no-images.jpg)
spring(二)
一、为对象类型属性赋值 方式一:(引用外部bean) 1.创建班级类Clazz package com.spring.beanpublic class Clazz {private Integer clazzId;private String clazzName;public Integer getClazzId() {return clazzId;}public void setClazzId(Integer clazzId) {th…...
![](https://www.ngui.cc/images/no-images.jpg)
MAC 数据恢复软件: STELLAR Data Recovery For MAC V. 12.1 更多增强功能
天津鸿萌科贸发展有限公司是 Stellar 系列软件的授权代理商。 STELLAR Data Recovery For MAC 该数据恢复软件可从任何存储驱动器、清空的回收站以及崩溃或无法启动的 Mac 设备中恢复丢失或删除的文件。 轻松恢复已删除的文档、照片、音频文件和视频。自定义扫描以帮助恢复特…...
![](https://i-blog.csdnimg.cn/direct/bcf102e99c4242139e23a64c7ee9245d.png)
初识godot游戏引擎并安装
简介 Godot是一款自由开源、由社区驱动的2D和3D游戏引擎。游戏开发虽复杂,却蕴含一定的通用规律,正是为了简化这些通用化的工作,游戏引擎应运而生。Godot引擎作为一款功能丰富的跨平台游戏引擎,通过统一的界面支持创建2D和3D游戏。…...
![](https://i-blog.csdnimg.cn/direct/966e5259afe74e928a5a3f34177b1b58.png)
Windows配置Qt+VLC
文章目录 前言下载库文件提取文件编写qmakeqtvlc测试代码 总结 前言 在Windows平台上配置Qt和VLC是开发多媒体应用程序的一个重要步骤。Qt作为一个强大的跨平台应用开发框架,为开发人员提供了丰富的GUI工具和库,而VLC则是一个开源的多媒体播放器&#x…...
![](https://i-blog.csdnimg.cn/direct/303d1fa1543d4490aba1b95334a43c7b.png)
本地部署 mistralai/Mistral-Nemo-Instruct-2407
本地部署 mistralai/Mistral-Nemo-Instruct-2407 1. 创建虚拟环境2. 安装 fschat3. 安装 transformers4. 安装 flash-attn5. 安装 pytorch6. 启动 controller7. 启动 mistralai/Mistral-Nemo-Instruct-24078. 启动 api9. 访问 mistralai/Mistral-Nemo-Instruct-2407 1. 创建虚拟…...
![](https://img-blog.csdnimg.cn/direct/be3d97db637e4108b11c4fd86db6809a.png)
2月科研——arcgis计算植被差异
ArcGIS中,设置高于或低于某个值的像元为 -9999,然后将这些地方设为空——目的:去除异常值和黑色背景值 Con(("T_std ano7.tif" > 2) | ("T_std ano7.tif" < - 2), - 9999,"T_std ano7.tif") SetNull(&…...
![](https://i-blog.csdnimg.cn/direct/7e3ee395b12f44dbb43b512d01d7bc65.png)
深入理解Android中的缓存与文件存储目录
🌟 引言 在Android应用开发中,合理管理应用的数据存储至关重要。应用可能需要保存各种类型的数据,从简单的配置信息到多媒体文件,甚至是缓存数据以提高性能和用户体验。Android提供了多个内置目录来满足这些需求,但它…...
![](https://i-blog.csdnimg.cn/direct/87556c5cfeaa479daf046543301ddd51.png)
Linux_生产消费者模型
目录 1、生产消费者模型示意图 2、生产者消费者之间的关系 3、定义交易场所 4、实现生产消费者模型 5、伪唤醒 6、多生产多消费者的实际运用 7、POSIX信号量 7.1 初始化信号量 7.2 销毁信号量 7.3 等待信号量 7.4 发布信号量 8、生产消费的环形队列模型 8.1…...
![](https://img-blog.csdnimg.cn/direct/ee9077c56a1c476d803af8a178e0eb98.gif#pic_center)
【Vue】`v-if` 指令详解:条件渲染的高效实现
文章目录 一、v-if 指令概述二、v-if 的基本用法1. 基本用法2. 使用 v-else3. 使用 v-else-if 三、v-if 指令的高级用法1. 与 v-for 一起使用2. v-if 的性能优化 四、v-if 的常见应用场景1. 表单验证2. 弹窗控制 五、v-if 指令的注意事项 Vue.js 是一个用于构建用户界面的渐进式…...
![](https://www.ngui.cc/images/no-images.jpg)
junit mockito Base基类
编写单元测试时我们都习惯性减少重复代码 以下基于spring mvc框架,需要手动pom导包 BaseTest类用于启动上下文进行debug调试 MockBaseTset类用于不启动上下文进行打桩mock pom.xml <dependency><groupId>org.mockito</groupId><artifactId…...
![](https://img-blog.csdnimg.cn/img_convert/dc98a9cb859684f2e912d8631ed5d3ed.png)
朋友圈运营分享干货2
朋友圈发什么内容? 1、产品相关 产品服务:产品的内容要有“用户视角”从用户的使用痛点入手,写到用户心坎里,才能引发购买 买家秀:买家秀是很好的朋友圈索材,可以让用户有一个正面感知清楚了解工品的情况…...
![](https://www.ngui.cc/images/no-images.jpg)
linux中创建一个名为“thread1“,堆栈大小为1024,优先级为2的线程
在Linux中,直接创建一个具有特定堆栈大小和优先级的线程通常不是通过标准的POSIX线程(pthread)库直接支持的。POSIX线程库(pthread)提供了创建和管理线程的基本机制,但不直接支持设置线程的堆栈大小或优先级…...
![](https://www.ngui.cc/images/no-images.jpg)
架构以及架构中的组件
架构以及架构中的组件 Transform Transform 以下的代码包含: 标准化的示例残差化的示例 # huggingface # transformers# https://www.bilibili.com/video/BV1At4y1W75x?spm_id_from333.999.0.0import copy import math from collections import namedtupleimport …...
![](https://i-blog.csdnimg.cn/direct/83c6d82fd1164484b4d3754975a2a0ea.png)
Docker启动PostgreSql并设置时间与主机同步
在 Docker 中启动 PostgreSql 时,需要配置容器的时间与主机同步。可以通过在 Dockerfile 或者 Docker Compose 文件中设置容器的时区,或者使用宿主机的时间来同步容器的时间。这样可以确保容器中的 PostgreSql 与主机的时间保持一致,避免在使…...
![](https://i-blog.csdnimg.cn/direct/957a1200aa39427b8208b7c8bd4b9c98.jpeg#pic_center)
提升无线网络安全:用Python脚本发现并修复WiFi安全问题
文章目录 概要环境准备技术细节3.1 实现原理3.2 创建python文件3.3 插入内容3.4 运行python脚本 加固建议4.1 选择强密码4.2 定期更换密码4.3 启用网络加密4.4 关闭WPS4.5 隐藏SSID4.6 限制连接设备 小结 概要 在本文中,我们将介绍并展示如何使用Python脚本来测试本…...
![](http://common.cnblogs.com/images/copycode.gif)
做食物网站应该考虑些什么意思/好推建站
在JSP页面中输出JSON格式数据 JSON-taglib是一套使在JSP页面中输出JSON格式数据的标签库。 JSON-taglib主页: http://json-taglib.sourceforge.net/index.html JAR包下载地址: http://sourceforge.net/projects/json-taglib/files/latest/download 使用…...
![](/images/no-images.jpg)
网站logo显示/青岛谷歌优化
本文从各种角度对几个常用的 JavaScript 表格库进行比较,一目了然。 Feature DataTables JqGrid Slickgrid dhtmlxGrid Flexigrid ExtJs LicenseGPL v2 license or a BSD (3-point) licenseLGPLMITGrid License $449MITLicense from $600Show/Hide c…...
网站的ftp地址是什么/搜索引擎优化seo应用
HydroCMS定位于您的私人专属资料管理系统。 下一个功能将是:目录的访问权限设置。目前是根据文件的类型进行权限设计的,比如jpg格式的允许4级权限访问,dwg只能是3级才能访问……。这样不够好,应该按照文件夹进行权限设置ÿ…...
![](https://img-blog.csdnimg.cn/img_convert/a49ed05ee05e6b1a811c622e7f3842de.png)
移动互联网技术和智能设备终端的普及/南京seo排名
▌本文来源:中国电子报(已授权) ★ 导读 ★ ★ 2020年10月27日,AMD与Xilinx(赛灵思)宣布达成最终协议,AMD以全股票交易的方式收购赛灵思,交易金额为350亿美元。 业界似乎没有不变的誓言,在英特…...
![](/images/no-images.jpg)
网站建设公司简介范文/好口碑关键词优化地址
lvs fullnat开源出来有一阵子了,刚开源时研究过一阵子,现在重新捡起来发现它的优势不是一星半点的,闲下来总结了一下。 1、syn_proxy----------用于防御synflood攻击 可以在keepalived配置文件中针对每一个服务分别设置打开或关闭。 2、conne…...
![](https://img-blog.csdnimg.cn/img_convert/d9724345c46bfa0e329b18f2cd63e8fb.png)
websocket wordpress/网络推广优化平台
前言 在大型系统中,为了减少数据库压力通常会引入缓存机制,一旦引入缓存又很容易造成缓存和数据库数据不一致,导致用户看到的是旧数据。 为了减少数据不一致的情况,更新缓存和数据库的机制显得尤为重要,接下来带领大…...