- 基于PyTorch和ResNet18的花卉识别实战(附完整代码)
意.远
pytorch人工智能python深度学习
一、项目背景与效果花卉分类是计算机视觉的经典任务。本文使用PyTorch框架,基于ResNet18模型实现了102种花卉的分类任务。完整代码可直接复制运行,最终验证集准确率达8.2%,文中同步分析性能瓶颈与优化方案。二、环境配置与数据准备1.环境要求#主要依赖库importtorchfromtorchimportnn,optimfromtorchvisionimporttransforms,dat
- PyTorch 深度学习博客
Zoro|
PyTorchDeepLearning人工智能
PyTorch深度学习博客欢迎来到我的PyTorch深度学习博客!在这里,我将分享使用PyTorch学习和实践深度学习项目的点滴经验。本博客适用于初学者和有一定基础的开发者,旨在帮助大家快速搭建环境、掌握核心概念,并通过实例了解实际应用。环境配置为了确保项目的稳定性和兼容性,我选择了Python3.9环境,并在conda创建的虚拟环境中运行最新且稳定的PyTorch版本2.6.0。1.创建Pyth
- 深入探索 PyTorch 在语音识别中的应用
Zoro|
PyTorchDeepLearning机器学习pytorch语音识别人工智能
深入探索PyTorch在语音识别中的应用在本篇博客中,我将分享如何使用PyTorch进行语音识别任务,重点围绕环境配置、数据预处理、特征提取、模型设计以及模型比较展开。本文基于最近一次机器学习作业(HW2)的任务内容,任务目标是对语音信号进行逐帧音素预测,从而完成多类别分类任务。一、介绍任务背景任务目标:利用深度神经网络对语音信号进行逐帧音素预测。音素定义:音素是语音中能够区分单词的最小语音单位。
- AI模型技术前沿与跨场景应用实践
智能计算研究中心
其他
内容概要当前AI模型技术正呈现多维度突破与跨领域融合的特征。从技术演进角度看,可解释性模型与量子计算框架的协同发展正在突破传统黑箱限制,而联邦学习、自适应优化等技术则为复杂场景建模提供了新的方法论支撑。应用层面,TensorFlow与PyTorch框架在医疗影像诊断、金融时序预测等领域的实战案例,验证了深度学习模型在垂直行业的泛化能力。值得关注的是,工具链整合已成为技术落地的关键环节,MXNet与
- 融合AMD与NVIDIA GPU集群的MLOps:异构计算环境中的分布式训练架构实践
在深度学习的背景下,NVIDIA的CUDA与AMD的ROCm框架缺乏有效的互操作性,导致基础设施资源利用率显著降低。随着模型规模不断扩大而预算约束日益严格,2-3年更换一次GPU的传统方式已不具可持续性。但是Pytorch的最近几次的更新可以有效利用异构计算集群,实现对所有可用GPU资源的充分调度,不受制于供应商限制。本文将深入探讨如何混合AMD/NVIDIAGPU集群以支持PyTorch分布式训
- 深度学习框架PyTorch——从入门到精通(4)数据转换
Fansv587
Torch框架学习深度学习pytorch人工智能python经验分享
转换(Transforms)很多时候,数据并不总是以训练机器学习算法所需的最终处理形式出现。所以我们需要使用变换对数据进行一些处理,使其适合训练。所有TorchVision数据集都有两个参数——transform来修改特征,target_transform来修改标签——接受包含转换逻辑的可调用项。torchvision.transform模块提供了几个开箱即用的转换。FashionMNIST数据集
- 深度学习框架PyTorch——从入门到精通(5)构建神经网络
Fansv587
Torch框架学习深度学习pytorch神经网络经验分享
构建神经网络获取训练设备定义类模型层nn.Flattennn.Linearnn.ReLUnn.Sequentialnn.Softmax模型参数补充说明argmax神经网络是由一些层或者模块组成的,这些层和模块会对数据进行各种操作。在PyTorch里,torch.nn这个命名空间提供了你搭建自己神经网络所需要的所有基础组件。PyTorch里的每一个模块都是nn.Module类的子类。一个神经网络本身
- pytorch小记(十二):pytorch中 masked_fill_() vs. masked_fill() 详解
墨绿色的摆渡人
pythonpytorch小记pytorch人工智能python
pytorch小记(十二):pytorch中masked_fill_()vs.masked_fill()详解PyTorch`masked_fill_()`vs.`masked_fill()`详解1️⃣`masked_fill()`和`masked_fill_()`的作用2️⃣`masked_fill()`vs.`masked_fill_()`示例3️⃣输出结果4️⃣`masked_fill()`v
- pytorch小记(十):pytorch中torch.tril 和 torch.triu 详解
墨绿色的摆渡人
pythonpytorch小记pytorch人工智能python
pytorch小记(十):pytorch中torch.tril和torch.triu详解PyTorch`torch.tril`和`torch.triu`详解1.`torch.tril`(计算下三角矩阵)作用语法参数示例`diagonal`参数`torch.tril`的应用2.`torch.triu`(计算上三角矩阵)作用语法参数示例`diagonal`参数3.`torch.tril`vs`torc
- Pytorch torch.prod函数介绍
qq_27390023
pytorch人工智能python
torch.prod是PyTorch库中的一个函数,用于计算输入张量中所有元素或者指定维度上元素的乘积。下面将从函数的基本语法、参数、返回值、使用示例几个方面进行详细介绍。基本语法torch.prod(input,dim=None,keepdim=False,dtype=None)参数input:必需参数,是一个输入的PyTorch张量,函数将对这个张量的元素进行乘积计算。dim:可选参数,指定要
- 深度学习框架PyTorch——从入门到精通(5)自动微分
Fansv587
深度学习pytorch人工智能
使用torch.autograd自动微分张量、函数和计算图计算梯度禁用梯度追踪关于计算图的更多信息张量梯度和雅可比乘积在训练神经网络时,最常用的算法是反向传播。在该算法中,参数(模型权重)根据损失函数的梯度相对于给定参数进行调整。为了计算这些梯度,PyTorch有一个内置的微分引擎,名为torch.autograd。它支持为任何计算图自动计算梯度。考虑最简单的一层神经网络,具有输入x、参数w和b以
- 深度学习中的Channel,通道数是什么?
%KT%
深度学习深度学习人工智能
参考文章:直观理解深度学习的卷积操作,超赞!-CSDN博客如何理解卷积神经网络中的通道(channel)_神经网络通道数-CSDN博客深度学习-卷积神经网络—卷积操作详细介绍_深度卷积的作用-CSDN博客正文:在跑深度学习代码的过程中,经常遇到的一个报错是:模型尺寸不匹配的问题。一般pytorch中尺寸/张量的表现方式是:torch.size([16,3,24,24])。这四个参数的含义如下:16
- python,squeeze的详细解释,代码并进行解释
资源存储库
笔记算法python开发语言
目录python,squeeze的详细解释,代码并进行解释Python中的squeeze操作主要作用:PyTorch中的squeeze示例1:去除所有单维度示例2:指定去除维度NumPy中的squeeze示例1:去除所有单维度示例2:指定去除维度何时使用squeeze?总结python,squeeze的详细解释,代码并进行解释Python中的squeeze操作Squeeze是一个用于去除张量或数组
- PyTorch 深度学习实战(12):Actor-Critic 算法与策略优化
进取星辰
PyTorch深度学习实战深度学习pytorch算法
在上一篇文章中,我们介绍了强化学习的基本概念,并使用深度Q网络(DQN)解决了CartPole问题。本文将深入探讨Actor-Critic算法,这是一种结合了策略梯度(PolicyGradient)和值函数(ValueFunction)的强化学习方法。我们将使用PyTorch实现Actor-Critic算法,并应用于经典的CartPole问题。一、Actor-Critic算法基础Actor-Cri
- PyTorch 深度学习实战(17):Asynchronous Advantage Actor-Critic (A3C) 算法与并行训练
进取星辰
PyTorch深度学习实战深度学习pytorch算法
在上一篇文章中,我们深入探讨了SoftActor-Critic(SAC)算法及其在平衡探索与利用方面的优势。本文将介绍强化学习领域的重要里程碑——AsynchronousAdvantageActor-Critic(A3C)算法,并展示如何利用PyTorch实现并行化训练来加速学习过程。一、A3C算法原理A3C算法由DeepMind于2016年提出,通过异步并行的多个智能体(Worker)与环境交互
- 【pytorch(cuda)】基于DQN算法的无人机三维城市空间航线规划(Python代码实现)
wlz249
pythonpytorch算法
欢迎来到本博客❤️❤️博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。⛳️座右铭:行百里者,半于九十。本文目录如下:目录⛳️赠与读者1概述一、研究背景与意义二、DQN算法概述三、基于DQN的无人机三维航线规划方法1.环境建模2.状态与动作定义3.奖励函数设计4.深度神经网络训练5.航线规划四、研究挑战与展望2运行结果3参考文献4Python代码实现⛳️赠与读者做科研,涉及到一个深在的
- llama-factory微调
AI Echoes
深度学习人工智能机器学习deepseek
大模型微调实操--llama-factoryllama-factory环境安装前置准备英伟达显卡驱动更新地址下载NVIDIA官方驱动|NVIDIAcuda下载安装地址CUDAToolkit12.2Downloads|NVIDIADeveloperpytorch下载安装地址PreviousPyTorchVersions|PyTorchllama-factory项目和文档地址https://githu
- TorchServe详解和应用
易之阴阳
机器学习人工智能深度学习pythonTorchserver
TorchServer是PyTorch的一个组件,它是一个轻量级的服务框架,用于部署和管理PyTorch模型,以便在生产环境中提供高效、可扩展的推理服务。TorchServer提供了RESTfulAPI,可以方便地与其他系统集成,支持模型热加载和热更新,确保模型的快速部署和更新。以下是TorchServer的一些关键特性:模型注册和管理:用户可以通过API注册模型,指定模型的路径、输入输出规范和所
- PyTorch 生态概览:为什么选择动态计算图框架?
小诸葛IT课堂
pytorch人工智能python
一、PyTorch的核心价值PyTorch作为深度学习框架的后起之秀,通过动态计算图技术革新了传统的静态图模式。其核心优势体现在:动态灵活性:代码即模型,支持即时调试Python原生支持:无缝衔接Python生态高效的GPU加速:通过CUDA实现透明的硬件加速活跃的社区生态:GitHub贡献者超1.8万人,日均更新100+次二、动态计算图VS静态计算图对比#动态计算图示例(PyTorch)impo
- 学习pytorch
阿什么名字不会重复呢
学习pytorch人工智能
学习PyTorch是一个很好的选择,尤其是如果你对深度学习和机器学习感兴趣。以下是一个详细的学习计划,可以帮助你系统地掌握PyTorch的基本概念和应用。学习计划概览学习周期:8周(每周约4-5小时)目标:掌握PyTorch基础,能够实现简单的深度学习模型。第1周:基础知识目标:了解深度学习的基础知识,掌握Python和NumPy基础。任务:学习Python基础(数据类型、控制流、函数、类)。资源
- Pytorch 小记 第八回:GoogleNet卷积神经网络模型代码
Start_Present
pytorchcnn神经网络分类python深度学习
本次小记,提供了一份基于pytorch的GoogleNet卷积神经网络模型的代码。除此之外,对代码中不容易理解的部分进行了讲解。本代码的平台是PyCharm2024.1.3,python版本3.11numpy版本是1.26.4,pytorch版本2.0.0+cu118,d2l的版本是1.0.3importnumpyasnpimporttorchfromtorchimportnnfromtorchv
- pytorch的使用:卷积神经网络模块
樱花的浪漫
pytorchcnnpytorch深度学习计算机视觉
1.读取数据分别构建训练集和测试集(验证集)DataLoader来迭代取数据使用transforms将数据转换为tensor格式#定义超参数input_size=28#图像的总尺寸28*28num_classes=10#标签的种类数num_epochs=3#训练的总循环周期batch_size=64#一个撮(批次)的大小,64张图片#训练集train_dataset=datasets.MNIST(
- PyTorch 模型剪枝实例教程一、非结构化剪枝
小风_
模型压缩与加速pytorchpytorch深度学习人工智能
目录1.导包&定义一个简单的网络2.获取网络需要剪枝的模块3.模块剪枝(核心)4.总结目前大部分最先进的(SOTA)深度学习技术虽然效果好,但由于其模型参数量和计算量过高,难以用于实际部署。而众所周知,生物神经网络使用高效的稀疏连接(生物大脑神经网络balabala啥的都是稀疏连接的),考虑到这一点,为了减少内存、容量和硬件消耗,同时又不牺牲模型预测的精度,在设备上部署轻量级模型,并通过私有的设备
- YOLOv8n-seg.pt的使用(实例分割,训练自己制作的数据集)
再坚持一下!!!
YOLO
Ubuntu+python3一、YOLOV8源码下载参考:GitHub-ultralytics/ultralytics:NEW-YOLOv8inPyTorch>ONNX>OpenVINO>CoreML>TFLite二、数据集制作1.labelme下载:pip3installlabelme2.终端输入labelme,打开labelme。界面“打开目录”,打开图片目录images,进行多边形标注(右键
- 优化深度学习模型:PyTorch中的模型剪枝技术详解
代码之光_1980
深度学习pytorch剪枝
标题:优化深度学习模型:PyTorch中的模型剪枝技术详解在深度学习领域,模型剪枝是一种提高模型效率和性能的技术。通过剪枝,我们可以去除模型中的冗余权重,从而减少模型的复杂度和提高运算速度,同时保持或甚至提升模型的准确率。本文将详细介绍如何在PyTorch框架中实现模型剪枝,并提供相应的代码示例。1.模型剪枝的基本概念模型剪枝主要分为两种类型:结构化剪枝和非结构化剪枝。结构化剪枝通常指的是剪除整个
- 模型保存与加载:PyTorch中的实践指南
冰蓝蓝
自然语言处理pytorch人工智能python
在深度学习项目中,模型的保存和加载是一个至关重要的步骤。它不仅有助于在训练过程中保存进度,还可以在训练完成后部署模型。PyTorch提供了灵活的方式来保存和加载模型,本文将详细介绍这些方法。模型保存在PyTorch中,有两种主要的模型保存方法:保存整个模型和仅保存模型参数。保存整个模型保存整个模型意味着保存模型的结构和参数。这种方法简单直接,但文件体积较大,且依赖于模型的具体实现。importto
- torch.unsqueeze:灵活调整张量维度的利器
冰蓝蓝
transformertransformer深度学习
在深度学习框架PyTorch中,张量(Tensor)是最基本的数据结构,它类似于NumPy中的数组,但可以在GPU上运行。在日常的深度学习编程中,我们经常需要调整张量的维度以适应不同的操作和层。torch.unsqueeze函数就是PyTorch提供的一个非常有用的工具,用于在指定位置增加张量的维度。本文将详细介绍torch.unsqueeze的用法和一些实际应用场景。什么是torch.unsqu
- pytorch中的DataLoader
朋也透william
pytorch人工智能python
在PyTorch中,DataLoader是一个工具类,用于高效地加载数据并准备数据输入到模型中。它支持数据的批量加载、随机打乱、并行加载和迭代操作,是训练深度学习模型的关键组件之一。1.基本功能DataLoader的主要职责是从数据集中提取样本,并根据设置返回一个批次的数据。它与Dataset类结合使用:Dataset:定义数据集的来源、结构以及如何获取单个数据样本。DataLoader:负责从D
- pytorch 天花板级别的知识点 你可以不会用 但是不能不知道
小赖同学啊
人工智能pytorch人工智能python
PyTorch的高级知识涵盖了从模型优化到分布式训练的广泛内容,适合已经掌握基础知识的开发者进一步提升技能。以下是PyTorch的高级知识点,详细且全面:1.模型优化与加速1.1混合精度训练定义:使用半精度(FP16)和单精度(FP32)混合训练,减少内存占用并加速计算。实现:使用torch.cuda.amp模块。示例:fromtorch.cuda.ampimportautocast,GradSc
- Pytorch Dataloader入门
gy-7
pytorch深度学习机器学习
PytorchDataloadercode:torch/utils/data/dataloader.py#L71PytorchDatasettutorial:tutorials/beginner/basics/data_tutorial.html理论:在训练模型时,我们通常希望:以“mini-batch”方式传递样本,能够加速训练。每个epoch都shuffle数据,能够减少模型过拟合。使用Pyt
- JAVA基础
灵静志远
位运算加载Date字符串池覆盖
一、类的初始化顺序
1 (静态变量,静态代码块)-->(变量,初始化块)--> 构造器
同一括号里的,根据它们在程序中的顺序来决定。上面所述是同一类中。如果是继承的情况,那就在父类到子类交替初始化。
二、String
1 String a = "abc";
JAVA虚拟机首先在字符串池中查找是否已经存在了值为"abc"的对象,根
- keepalived实现redis主从高可用
bylijinnan
redis
方案说明
两台机器(称为A和B),以统一的VIP对外提供服务
1.正常情况下,A和B都启动,B会把A的数据同步过来(B is slave of A)
2.当A挂了后,VIP漂移到B;B的keepalived 通知redis 执行:slaveof no one,由B提供服务
3.当A起来后,VIP不切换,仍在B上面;而A的keepalived 通知redis 执行slaveof B,开始
- java文件操作大全
0624chenhong
java
最近在博客园看到一篇比较全面的文件操作文章,转过来留着。
http://www.cnblogs.com/zhuocheng/archive/2011/12/12/2285290.html
转自http://blog.sina.com.cn/s/blog_4a9f789a0100ik3p.html
一.获得控制台用户输入的信息
&nbs
- android学习任务
不懂事的小屁孩
工作
任务
完成情况 搞清楚带箭头的pupupwindows和不带的使用 已完成 熟练使用pupupwindows和alertdialog,并搞清楚两者的区别 已完成 熟练使用android的线程handler,并敲示例代码 进行中 了解游戏2048的流程,并完成其代码工作 进行中-差几个actionbar 研究一下android的动画效果,写一个实例 已完成 复习fragem
- zoom.js
换个号韩国红果果
oom
它的基于bootstrap 的
https://raw.github.com/twbs/bootstrap/master/js/transition.js transition.js模块引用顺序
<link rel="stylesheet" href="style/zoom.css">
<script src=&q
- 详解Oracle云操作系统Solaris 11.2
蓝儿唯美
Solaris
当Oracle发布Solaris 11时,它将自己的操作系统称为第一个面向云的操作系统。Oracle在发布Solaris 11.2时继续它以云为中心的基调。但是,这些说法没有告诉我们为什么Solaris是配得上云的。幸好,我们不需要等太久。Solaris11.2有4个重要的技术可以在一个有效的云实现中发挥重要作用:OpenStack、内核域、统一存档(UA)和弹性虚拟交换(EVS)。
- spring学习——springmvc(一)
a-john
springMVC
Spring MVC基于模型-视图-控制器(Model-View-Controller,MVC)实现,能够帮助我们构建像Spring框架那样灵活和松耦合的Web应用程序。
1,跟踪Spring MVC的请求
请求的第一站是Spring的DispatcherServlet。与大多数基于Java的Web框架一样,Spring MVC所有的请求都会通过一个前端控制器Servlet。前
- hdu4342 History repeat itself-------多校联合五
aijuans
数论
水题就不多说什么了。
#include<iostream>#include<cstdlib>#include<stdio.h>#define ll __int64using namespace std;int main(){ int t; ll n; scanf("%d",&t); while(t--)
- EJB和javabean的区别
asia007
beanejb
EJB不是一般的JavaBean,EJB是企业级JavaBean,EJB一共分为3种,实体Bean,消息Bean,会话Bean,书写EJB是需要遵循一定的规范的,具体规范你可以参考相关的资料.另外,要运行EJB,你需要相应的EJB容器,比如Weblogic,Jboss等,而JavaBean不需要,只需要安装Tomcat就可以了
1.EJB用于服务端应用开发, 而JavaBeans
- Struts的action和Result总结
百合不是茶
strutsAction配置Result配置
一:Action的配置详解:
下面是一个Struts中一个空的Struts.xml的配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
&quo
- 如何带好自已的团队
bijian1013
项目管理团队管理团队
在网上看到博客"
怎么才能让团队成员好好干活"的评论,觉得写的比较好。 原文如下: 我做团队管理有几年了吧,我和你分享一下我认为带好团队的几点:
1.诚信
对团队内成员,无论是技术研究、交流、问题探讨,要尽可能的保持一种诚信的态度,用心去做好,你的团队会感觉得到。 2.努力提
- Java代码混淆工具
sunjing
ProGuard
Open Source Obfuscators
ProGuard
http://java-source.net/open-source/obfuscators/proguardProGuard is a free Java class file shrinker and obfuscator. It can detect and remove unused classes, fields, m
- 【Redis三】基于Redis sentinel的自动failover主从复制
bit1129
redis
在第二篇中使用2.8.17搭建了主从复制,但是它存在Master单点问题,为了解决这个问题,Redis从2.6开始引入sentinel,用于监控和管理Redis的主从复制环境,进行自动failover,即Master挂了后,sentinel自动从从服务器选出一个Master使主从复制集群仍然可以工作,如果Master醒来再次加入集群,只能以从服务器的形式工作。
什么是Sentine
- 使用代理实现Hibernate Dao层自动事务
白糖_
DAOspringAOP框架Hibernate
都说spring利用AOP实现自动事务处理机制非常好,但在只有hibernate这个框架情况下,我们开启session、管理事务就往往很麻烦。
public void save(Object obj){
Session session = this.getSession();
Transaction tran = session.beginTransaction();
try
- maven3实战读书笔记
braveCS
maven3
Maven简介
是什么?
Is a software project management and comprehension tool.项目管理工具
是基于POM概念(工程对象模型)
[设计重复、编码重复、文档重复、构建重复,maven最大化消除了构建的重复]
[与XP:简单、交流与反馈;测试驱动开发、十分钟构建、持续集成、富有信息的工作区]
功能:
- 编程之美-子数组的最大乘积
bylijinnan
编程之美
public class MaxProduct {
/**
* 编程之美 子数组的最大乘积
* 题目: 给定一个长度为N的整数数组,只允许使用乘法,不能用除法,计算任意N-1个数的组合中乘积中最大的一组,并写出算法的时间复杂度。
* 以下程序对应书上两种方法,求得“乘积中最大的一组”的乘积——都是有溢出的可能的。
* 但按题目的意思,是要求得这个子数组,而不
- 读书笔记-2
chengxuyuancsdn
读书笔记
1、反射
2、oracle年-月-日 时-分-秒
3、oracle创建有参、无参函数
4、oracle行转列
5、Struts2拦截器
6、Filter过滤器(web.xml)
1、反射
(1)检查类的结构
在java.lang.reflect包里有3个类Field,Method,Constructor分别用于描述类的域、方法和构造器。
2、oracle年月日时分秒
s
- [求学与房地产]慎重选择IT培训学校
comsci
it
关于培训学校的教学和教师的问题,我们就不讨论了,我主要关心的是这个问题
培训学校的教学楼和宿舍的环境和稳定性问题
我们大家都知道,房子是一个比较昂贵的东西,特别是那种能够当教室的房子...
&nb
- RMAN配置中通道(CHANNEL)相关参数 PARALLELISM 、FILESPERSET的关系
daizj
oraclermanfilespersetPARALLELISM
RMAN配置中通道(CHANNEL)相关参数 PARALLELISM 、FILESPERSET的关系 转
PARALLELISM ---
我们还可以通过parallelism参数来指定同时"自动"创建多少个通道:
RMAN > configure device type disk parallelism 3 ;
表示启动三个通道,可以加快备份恢复的速度。
- 简单排序:冒泡排序
dieslrae
冒泡排序
public void bubbleSort(int[] array){
for(int i=1;i<array.length;i++){
for(int k=0;k<array.length-i;k++){
if(array[k] > array[k+1]){
- 初二上学期难记单词三
dcj3sjt126com
sciet
concert 音乐会
tonight 今晚
famous 有名的;著名的
song 歌曲
thousand 千
accident 事故;灾难
careless 粗心的,大意的
break 折断;断裂;破碎
heart 心(脏)
happen 偶尔发生,碰巧
tourist 旅游者;观光者
science (自然)科学
marry 结婚
subject 题目;
- I.安装Memcahce 1. 安装依赖包libevent Memcache需要安装libevent,所以安装前可能需要执行 Shell代码 收藏代码
dcj3sjt126com
redis
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make
前面3步应该没有问题,主要的问题是执行make的时候,出现了异常。
异常一:
make[2]: cc: Command not found
异常原因:没有安装g
- 并发容器
shuizhaosi888
并发容器
通过并发容器来改善同步容器的性能,同步容器将所有对容器状态的访问都串行化,来实现线程安全,这种方式严重降低并发性,当多个线程访问时,吞吐量严重降低。
并发容器ConcurrentHashMap
替代同步基于散列的Map,通过Lock控制。
&nb
- Spring Security(12)——Remember-Me功能
234390216
Spring SecurityRemember Me记住我
Remember-Me功能
目录
1.1 概述
1.2 基于简单加密token的方法
1.3 基于持久化token的方法
1.4 Remember-Me相关接口和实现
- 位运算
焦志广
位运算
一、位运算符C语言提供了六种位运算符:
& 按位与
| 按位或
^ 按位异或
~ 取反
<< 左移
>> 右移
1. 按位与运算 按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。
例如:9&am
- nodejs 数据库连接 mongodb mysql
liguangsong
mongodbmysqlnode数据库连接
1.mysql 连接
package.json中dependencies加入
"mysql":"~2.7.0"
执行 npm install
在config 下创建文件 database.js
- java动态编译
olive6615
javaHotSpotjvm动态编译
在HotSpot虚拟机中,有两个技术是至关重要的,即动态编译(Dynamic compilation)和Profiling。
HotSpot是如何动态编译Javad的bytecode呢?Java bytecode是以解释方式被load到虚拟机的。HotSpot里有一个运行监视器,即Profile Monitor,专门监视
- Storm0.9.5的集群部署配置优化
roadrunners
优化storm.yaml
nimbus结点配置(storm.yaml)信息:
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional inf
- 101个MySQL 的调节和优化的提示
tomcat_oracle
mysql
1. 拥有足够的物理内存来把整个InnoDB文件加载到内存中——在内存中访问文件时的速度要比在硬盘中访问时快的多。 2. 不惜一切代价避免使用Swap交换分区 – 交换时是从硬盘读取的,它的速度很慢。 3. 使用电池供电的RAM(注:RAM即随机存储器)。 4. 使用高级的RAID(注:Redundant Arrays of Inexpensive Disks,即磁盘阵列
- zoj 3829 Known Notation(贪心)
阿尔萨斯
ZOJ
题目链接:zoj 3829 Known Notation
题目大意:给定一个不完整的后缀表达式,要求有2种不同操作,用尽量少的操作使得表达式完整。
解题思路:贪心,数字的个数要要保证比∗的个数多1,不够的话优先补在开头是最优的。然后遍历一遍字符串,碰到数字+1,碰到∗-1,保证数字的个数大于等1,如果不够减的话,可以和最后面的一个数字交换位置(用栈维护十分方便),因为添加和交换代价都是1