自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(182)
  • 资源 (10)
  • 收藏
  • 关注

原创 Sql参数

这意味着当Java对象中的某个属性映射到SQL语句参数时,如果该属性的类型为Integer且其值为null,那么在SQL语句中对应的参数也将是null。因此,在选择Integer还是int作为SQL语句的参数类型时,需要考虑你的业务逻辑是否需要处理null值。否则,如果列不允许null值,或者你不需要在Java代码中表示null值,那么可以使用int。请注意,虽然这里讨论的是Java中的Integer和int,但实际的SQL数据类型(如INT、BIGINT等)将取决于你使用的数据库系统。

2024-03-26 09:30:14 230

原创 @Bean和@Component相似与区别

Component修饰的类是由Spring框架来统一管理和创建的,Spring会自动处理这些类的实例化、依赖注入等。总的来说,@Component和@Bean都是Spring框架中用于管理Bean的重要注解,但它们在用途、使用方式、控制权以及目标范围等方面存在明显的区别。其次,它们的使用方式也有所不同。而@Bean则是方法级别的注解,需要标注在方法上,并且该方法的返回值会被Spring框架管理。在Spring框架中,@Bean和@Component都是重要的注解,但它们之间存在一些明显的区别。

2024-03-25 16:18:16 192

原创 JVM篇详细分析

并不属于虚拟机的内存结构,其属于操作系统的内存,不由JVM进行管理,常见于NIO操作,用于数据缓冲区。线程共享的区域,用来保存对象的实例,数组等。线程私有的,每个线程一份,内部保存字节码的行号,用于记录正在执行字节码指令的地址。每个线程运行时所需要的内存就是虚拟机栈,特性为先进后出,每个栈由多个栈针组成,每个栈针对应其方法调用所需要的内存(参数,返回地址等)。垃圾回收不涉及栈内存,垃圾回收只是堆内存,当栈针弹出后,内存就被自动释放了。可以避免某一个类被重复加载,当父类被加载后无需重复加载,保证了唯一性。

2024-03-25 11:52:59 419

原创 内存泄露?什么是ThreadLocal

ThreadLocal是Java中的一个类,用于实现线程数据隔离。每个线程在访问ThreadLocal变量时,通过其get和set方法,都会获取或创建一个属于该线程的局部变量副本。当线程结束时,这些变量副本会随着线程一起被回收。

2024-03-23 16:01:03 461

原创 ReentrantLock锁

在上面的示例中,methodA 方法首先获取了 ReentrantLock 的锁,然后在 methodA 内部调用了 methodB。由于 methodB 也尝试获取同一个锁,但因为 ReentrantLock 是可重入的,所以同一个线程(这里是 methodA 调用的线程)可以多次获取同一个锁而不会造成死锁。注意,每次获取锁后,都应该在 finally 块中确保释放锁,以防止因异常导致的锁未被正确释放,从而造成死锁。

2024-03-21 10:46:15 260

原创 java锁关键字sychronized

java中sychronized关键字有3种锁类型

2024-03-20 15:30:44 212

原创 Class<T> clazz是什么意思

比如在你提供的 copy 方法中,Class 被用作参数类型,以确保创建的新实例是正确的类型 T,并且可以从源对象复制属性到该类型的实例上。Class 是Java中所有类型元信息的类,包括基本类型、数组、类类型、接口、枚举和注解类型等。总结一下,Class 在Java中是一个泛型类类型,用于表示一个具体的类类型 T 的类对象。Class 中的 T 允许你指定这个 Class 对象所代表的具体的类类型,这样你就可以在代码中更安全地使用它,因为编译器会进行类型检查。

2024-02-19 22:04:13 430

原创 有关stream中map方法的作用概述

这个方法引用是一个函数,它将字符串参数转换为整数。map方法应用这个函数到流中的每个元素,并收集结果到一个新的列表中。在Java的Stream API中,map方法是一个非常常用的中间操作,它用于对流中的每个元素执行一个给定的函数,并将结果映射成一个新的流。map方法不会修改原始流中的元素,而是创建一个新的流,其中包含了原始流中每个元素经过转换后的结果。map方法接受一个函数作为参数,这个函数被应用于流中的每一个元素。Function接口只有一个抽象方法apply,它接受一个参数并返回一个结果。

2024-02-12 23:50:30 290

原创 stream流中distinct方法重写equals相关

该方法的行为依赖于元素的equals()和hashCode()方法。当你使用distinct()方法时,Java会检查流中每个元素的hashCode(),如果hashCode()相同,则进一步使用equals()方法来确定元素是否真的是重复的。因此,如果你想要distinct()方法按照你期望的方式工作,你可能需要重写对象的equals()和hashCode()方法。总之,如果你想要distinct()方法按照你期望的方式工作,你可能需要重写equals()和hashCode()方法。

2024-02-12 18:41:00 299

原创 函数式编程

lambda表达式不关注类型是什么,也不关注方法名是什么名,只关注参数列表和方法体。相当于public void run。

2024-02-04 17:28:40 636

原创 多线程编程之实现Callable接口

【代码】多线程编程之实现Callable接口。

2024-01-17 17:14:43 371

原创 多线程编程之实现Runnable接口

【代码】多线程编程之实现Runnable接口。

2024-01-17 16:34:07 370

原创 多线程编程之继承Thread

【代码】多线程编程之继承Thread。

2024-01-17 15:30:56 330

原创 基于Bean的方法声明交换机队列以绑定

创建交换机以及队列可以手动实现,但在生产环境中不太合适,故用java代码生成更为方便一些。配置完该配置类后启动该项目,登录rabbitmq后便可发现已经生成并绑定。

2023-12-10 12:04:35 202

原创 DataGrip连接虚拟机上Docker部署的Mysql出错解决

如报错如下: Public Key Retrieval is not allowed com.mysql.cj.exceptions.UnableToConnectException: Public Key Retrieval is not allowed。而后可以打开DataGrip连接了,如果连接不上执行如下。把datagrip连接设置高级(Advanced)处找到。首先判断CentOS的防火墙,如果开启就关闭。执行完上述3步骤皆可连接。如还是连接不上并报错和。

2023-12-05 17:17:33 355

原创 多表查询内连接、外连接、子查询、笛卡尔积

其中很大部分数据是冗余的。标量子查询:返回结果单个值。查询语句会显示如下结果(表子查询:返回多行多列。

2023-11-20 17:24:48 114

原创 ChatGPT最强?文心一言与ChatGPT对比

对于同一个问题我们分别对文心一言3.5和ChatGPT3.5输出回答,结果如下图,可以看到文心一言的回答更好,文心一言是由百度开发的人工智能语言模型,它的中文理解能力主要是基于百度强大的搜索引擎和自然语言处理技术。文心一言更加注重中文语言的细节和语境理解,它能够更好地理解中文的语义和语法结构,并能够更准确地生成中文文本。

2023-11-19 21:48:07 1098

原创 SQL单表复杂查询where、group by、order by、limit

SQL查询

2023-11-19 20:57:22 388

原创 01背包问题

还有足够的容量可以装该商品,但装了也不一定达到当前最优价值,所以在装与不装之间选择最优的一个,即V(i,j)=max{V(i-1,j),V(i-1,j-w(i))+v(i)}。V(i,j)=V(i-1,j-w(i))+v(i)时,说明装了第i个商品,该商品是最优解组成的一部分,随后我们得回到装该商品之前,即回到V(i-1,j-w(i));其中V(i-1,j)表示不装,V(i-1,j-w(i))+v(i) 表示装了第i个商品,背包容量减少w(i),但价值增加了v(i);

2023-02-16 12:06:22 485 3

原创 最长公共子序列

2:比较元素,如果相等则左对角线元素加一填入(蓝色箭头),如果不相等则对比右对角线两个元素(黄色箭头),取最大值填入。第一步:说明dp[][]数组的含义,值为两个s1,s2的最长公共子序列长度。如下用递归法,递归法通常步骤就是找到递归关系和递归边界。第四步:总结递推关系,写出递推公式。第五步:根据第四步递推公式填表。第二步:分析相等的第一种情况。第三步:分析不相等的两种情况。

2023-02-15 16:33:09 109

原创 文本翻译nlp(英语到法语)

第五步构建模型评估函数,并进行测试以及Attention效果分析.第二步对持久化文件中数据进行处理,以满足模型训练要求.第三步构建基于GRU的编码器和解码器.第四步构建模型训练函数,并进行训练.第一步导入必备的工具包....

2022-07-26 23:11:23 243

原创 注意力机制

是注意力计算规则能够应用的深度学习网络的载体,同时包括一些必要的全连接层以及相关张量处理,使其与应用网络融为一体.使用自注意力计算规则的注意力机制称为自注意力机制.第二步根据第一步采用的计算方法,如果是拼接方法,则需要将Q与第二步的计算结果再进行拼接,如果是转置点积,一般是自注意力,Q与V相同,则不需要进行与Q的拼接.第三步最后为了使整个attention机制按照指定尺寸输出,使用线性层作用在第二步的结果上做一个线性变换,得到最终对Q的注意力表示....

2022-07-24 23:53:17 490

原创 新闻主题分类任务NLP

以一段新闻报道中的文本描述内容为输入,使用模型帮助我们判断它最有可能属于哪一种类型的新闻,这是典型的文本分类问题,我们这里假定每种类型是互斥的,即文本描述有且只有一种类型.第一步构建带有Embedding层的文本分类模型.第二步对数据进行batch处理.整个案例的实现可分为以下4个步骤。第三步构建训练与验证函数.第四步进行模型训练和验证。...

2022-07-23 23:08:59 370 1

原创 Word embdding 词嵌入

是这两年比较火的多模态transformer结构中的一个知识点,也可用在其他网络结构。故我说一下embdding的思路以及代码实现。

2022-07-19 12:07:39 297

原创 Transformer多模态

其实不是“Transformer适合做多模态任务”,而是Transformer中的Attention适合做多模态任务,准确的说,应该是“Transformer中的Dot-productAttention适合做多模态任务”.多模态任务的核心难点在于不同模态的信息如何融合。而Dot-productAttention就给出了一种简单且有效的融合方案,在Dot-productAttention中,首先计算的每个成分之间的相似度,然后根据后的相似度信息的分数(代表着重要性),来调节模态中的信息。......

2022-07-17 23:54:56 3048

原创 双向RNN

双向RNN

2022-07-16 10:43:42 207

原创 深度RNN

Deep RNN

2022-07-16 09:43:46 214

原创 列表切片知识

切片

2022-07-14 13:55:01 3769

原创 关于深度学习中plot图片不显示问题解答

深度学习

2022-07-14 11:48:39 2870

原创 Selective Search

import skimage.data

2022-07-10 16:58:05 839

原创 ResNet残差网络

Resnet

2022-07-08 09:47:33 129

原创 VGGnet

VGG

2022-07-07 15:24:03 274

原创 深度学习手写简单的lstm

lstm

2022-07-05 21:00:01 786

原创 机器学习中的向量、矩阵相关导数问题

求导

2022-07-03 17:12:15 188

原创 在线标注数据集Make Sense

makesense.ai is a free-to-use online tool for labeling photos. Thanks to the use of a browser it does not require any complicated installation - just visit the website and you are ready to go. It also doesn't matter which operating system you're running on

2022-06-29 23:00:54 1089

原创 pytorch简单网络编写卷积、池化、Sequential等

卷积网络

2022-06-25 12:35:49 129

原创 pytorch池化层ceilmode的作用

ceil—mode

2022-06-24 18:34:20 431

原创 梯度下降法

核心公式:代码实现:import matplotlib.pyplot as pltimport numpy as np# fx的函数值def fx(x): return x**2#定义梯度下降算法def gradient_descent(): times = 10 # 迭代次数 alpha = 0.1 # 学习率 x =10# 设定x的初始值 x_axis = np.linspace(-10, 10) #设定x轴的坐标系 fig = plt.

2022-05-16 00:17:54 72

原创 Numpy相关使用技巧

#安装导入numpy模块 pip -install numpyimport numpy as np# import pandas as pa# import sklearn as sk# import tensorflow as pu# import pytorch as poi# numpy的检测a=np.arange(10)print(type(a))print("numpy nihao ",a)print(np.sqrt(a))# numpy的使用#array数组的生成,py

2022-05-08 22:00:25 360

原创 Python推导式

Python 推导式是一种独特的数据处理方式,可以从一个数据序列构建另一个新的数据序列的结构体。Python 支持各种数据结构的推导式:列表(list)推导式字典(dict)推导式集合(set)推导式元组(tuple)推导式[表达式 for 变量 in 列表] [out_exp_res for out_exp in input_list]或者 [表达式 for 变量 in 列表 if 条件][out_exp_res for out_exp in input_list if con

2022-05-05 20:25:49 819

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除