- 博客(86)
- 收藏
- 关注
原创 并发控制&幂等性
总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它解锁。:顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机制。for update ,大家会发现会对数据库中的表或某些行数据进行锁表,在mysql中,如果查询条件带有主键,会锁行数据,如果没有,会锁表。所以,如果使用的是mysql数据库,存储引擎必须用innodb,因为它才支持事务。
2024-08-27 19:07:46 305
原创 Web测试必备技能——F12定位bug属于前端还是后端
(2)响应中有数据,但是前端显示错误了,可以根据字段值判断是否前端显示中取错了字段显示,可以判断是前端问题。例如:前端显示内容错误了,把登录用户名显示了登录帐号,则可以在响应中看数据是否返回正确,返回正确而显示错误,则有可能是前端绑定字段错误。(3)响应中有数据,但是跟自己操作的结果不一致,可以根据数据库查询,如果数据库中也没有记录,可能是代码有问题,没有记录你的操作。(1)响应中没有数据,则是后端数据没有返回,前端展示为空,则为后端问题。【Response】前端需要的参数(后端给前端传的参数)
2024-08-23 17:08:31 761
原创 用户管理功能——前端开发:在父页面嵌套子页面
里面又包含了子页面,所以我们现在看到页面(图二)它是一层套一层,最外层是。’的时候(图一),会在前台展示组件或者页面的信息,但是在页面。(图四),我们这里写了props,然后从props里面取出来。这种情况下,我们是需要在外层的component,也就是。在路由里面定义component的时候。这样就把子页面嵌套在父页面中的任何位置。部分实际显示的是子页面。或者说你直接从中直接取。的组件定义函数中写上。
2024-05-16 15:08:23 279
原创 用户管理中心——登录功能
Restcontroller 适用于编写 restful 风格的 api,返回值默认为 json 类型。【算法思想:先把逻辑写出来,根据逻辑翻译(用计算机语言翻译)】最后在Controller需要脱敏的地方掉用一下。可以包装成方法,把方法自动pull到接口里。然后在controller请求参数处引用。封装一个对象,用来记录所有的请求参数。实现注册接口,还需要写一个登录接口。Alt+Enter自动填充参数。或者直接点击这里,自己创建。中的方法代码封装成一个。
2024-05-11 14:43:01 441
原创 用户管理中心——数据库设计&用户注册逻辑设计
【操作user表中的数据,从中查询数据,(在model中)先创建一个user对象,和数据库字段关联】在创建的对象上按Alt + Enter,可以生成调用这个对象所有的set方法。:查找mybatis-plus官网配置文件,发现自动将下划线映射为驼峰。ctrl+P :可以查看这个方法要用哪些参数。utils–存放工具类,比如加密转换等。代码迁移,创建测试类。
2024-05-07 21:24:08 1254 1
原创 java开发之路——用户管理中心_简单初始化
=============================================分割线 ==================================================【原因】 官方的脚手架不提供umi3的版本,而umi4不支持umi ui图标,此时需要使用老版本的ant design pro脚手架。启动项目后,发现没有显示umi ui的图标,但是启动项目后,发现没有显示umi ui的图标。【可能是因为之前删的时候,有些东西没删干净,啊啊啊啊学完找到实习就考虑转行!
2024-04-24 20:56:51 866 1
原创 java开发之路——node.js安装
cnpm是中国版的npm,通常因网络等各类因素无法使用npm时,cnpm就派上用场了,但cnpm一般只用于安装时候,所以在项目创建、卸载等操作时我们还是使用npm,因而cnpm不能用来卸载包。上面我们使用npm包管理工具,我们也可以使用其他包管理工具,比如:cnpm、yarn等。yarn是由Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具,是为了弥补 npm 的一些缺陷而出现。对应的npm版本为v10.5.0。npm是node官方的包管理器。
2024-04-22 21:10:00 1195
原创 anaconda安装路径默认在D盘,但安装环境的envs路径跑到C盘,修改为D盘
anaconda环境,路径是在anaconda安装目录下的envs中(D:\APPFile\Anaconda3\envs),然而,这次创建的却是在 C:\Users\xxx.conda\envs\ 中。的权限:选中Anaconda3文件夹,然后右击选则属性,找到安全,Users权限全部允许。文件的权限,但没用,不过可以先尝试一下修改envs文件的权限,不行的话可以改为修改anaconda文件的权限,有点慢且麻烦】这时新创建一个虚拟环境验证时,发现在D:\APPFile\Anaconda\envs下。
2024-02-17 20:39:24 2821 1
原创 在windows上安装好anaconda后,输入conda命令出现 OSError: [WinError 123] 文件名、目录名或卷标语法不正确。
下载anaconda后使用conda命令就会报错,重装几次后无效。
2024-02-17 16:50:06 1343 3
原创 SSH秘钥登录服务器
OpenSSH 提供了一个称为 ssh-copy-id 的工具,用于将 ssh 公钥复制到远程系统,它还可以创建所需的目录和文件。这里,假设你能够使用 ssh 登录到远程服务器 user_name@ip_of_server,它会询问你的帐户密码,然后您进入服务器。上述命令中有个路径:~/.ssh/id_rsa.pu,这是 ssh 公钥的默认位置,大家需要根据自己实际情况修改这个路径。:假设你是系统管理员,你的服务器不允许通过密码进行 ssh 登录,那么访问服务器的唯一方法是使用 ssh 公钥身份验证。
2023-12-24 19:37:28 1599
原创 chmod修改文件权限
w(写入):对文件而言,该用户具有新增、修改文件内容的权限;对目录来说,该用户具有删除、移动目录内文件的权限。r(读取):对文件而言,该用户具有读取文件内容的权限;对目录来说,该用户具有浏览目录的权限。x(执行):对文件而言,该用户具有执行文件的权限;对目录来说,该用户具有进入目录的权限。5: 4+0+1 r-x 同组用户具有读取、执行权限但没有写入权限;5: 4+0+1 r-x 其他用户具有读取、执行权限但没有写入权限;7: 4+2+1 rwx 所有者具有读取、写入、执行权限;程序用户(1~499)
2023-12-24 19:07:19 1031
原创 服务器环境copy时,报错:bash ./miniconda3/envs/nn/bin/pip:./miniconda3/envs/nn/bin/python 3.7:解释器错误: 没有那个文件或目录
直接copy 208服务器 下的环境到 110服务器上。
2023-12-13 21:29:32 643
原创 离线安装Linux包的方法
sklearn库安装方法(有详细步骤流程)离线安装Linux包的方法——以sklearn为例https://pypi.org/project/scikit-learn
2023-11-20 19:20:10 229
原创 缺陷预测(一)——论文复现(pipeline)
里,所以按照要求创建目录,并把生成的embeddings放进去即可。出现新问题:2023年11月14日22:12:22。生成的CGCN embeddings在。
2023-11-16 16:47:33 143
原创 用SegNext训练dms数据集(一)
dms数据集分类问题 【dms数据集有52个类别,但是在6个类别上表现不佳,所以选择了46种材料标签作为基准。先解决数据集问题、再用segnext模型训练【最新的模型?, 也就是多少类别+背景。结果预料之中的不好。
2023-10-10 16:26:46 294
原创 ml-dms-dataset实验
https://github.com/apple/ml-dms-dataset数据集的两个问题:evaluation运行结果论文中的结果:inference结果:
2023-10-08 21:34:28 122
原创 Transformer(一)—— Attention & Batch Normalization
在MASK矩阵标1的地方,也就是需要遮蔽的地方,我们把原来的值替换为一个很小的值(比如-1e09),而在MASK矩阵标0的地方,我们保留原始的值。因为在生成目标句子的单词时,不论生成哪个单词,它们使用的输入句子的语义编码C都是一样的,没有任何区别。RNN的每一个时序是一个前馈神经网络,但是为了在每一个时刻都包含前边时序的信息,所以RNN的每个时序共享了隐藏层,即当前时刻的输入不仅包含了当前时刻的词,还包含了前一时刻的隐藏层的输出。举例来说明MASK矩阵的含义,每一行表示对应位置的token。
2023-09-08 11:02:49 461
原创 SegNeXt学习记录(一):配置环境 & 测试代码
在SegNeXt/mmseg/models/segmentors/base.py里的show_result函数里加了。用相同的方法进行训练 看看ade数据效果如何。后面下载了ade数据集,刚开始运行。还能跑起来,但是不知道为什么就报错。怎么把图片保存出来?
2023-09-04 15:23:09 1410 2
原创 PermissionError: ADE20KDataset: [Errno 13] Permission denied: ‘/root/ADEChallengeData2016/images/tra
给了数据集位置root地址:data_root = ‘/root/ADEChallengeData2016’,但是在服务器下的。:给了data_root绝对路径。,以至于不能找到文件夹。
2023-09-01 18:04:43 148
原创 AttributeError: ‘ConfigDict‘ object has no attribute ‘log_level‘
因为log_level属性包含在default_runtime.py里面。
2023-08-31 20:11:55 886
原创 模型的保存加载、模型微调、GPU使用及Pytorch常见报错
断点续训练技术就是当我们的模型训练的时间非常长,而训练到了中途出现了一些意外情况,比如断电了,当再次来电的时候,我们肯定是希望模型在中途的那个地方继续往下训练,这就需要我们在模型的训练过程中保存一些断点,这样发生意外之后,我们的模型可以从断点处继续训练而不是从头开始。而反序列化,就是将硬盘中存储的二进制的数,反序列化到内存当中,得到一个相应的对象,这样就可以再次使用这个模型了。所以在模型的训练过程当中, 以一定的间隔去保存我们的模型,保存断点,在断点里面不仅要保存模型的参数,还要保存优化器的参数。
2023-08-29 15:08:46 877
原创 学习率调整策略
下面就看看这个Scheduler是如何使用的, 当然是调用step()方法更新学习率了, 那么这个step()方法是怎么工作的呢?我们在训练模型的时候,一般开始的时候学习率会比较大,这样可以以一个比较快的速度到达最优点的附近,然后再把学习率降下来, 缓慢的去收敛到最优值。方法, 而这个方法需要我们写Scheduler的时候自己覆盖,告诉程序按照什么样的方式去更新学习率,这样程序根据方式去计算出下一个epoch的学习率,然后直接更新进优化器的。: 关联的优化器, 得需要先关联一个优化器,然后再去改动学习率。
2023-08-27 16:17:27 233
原创 优化器调整策略
损失函数的作用是衡量模型输出与真实标签的差异。当我们有了这个loss之后,我们就可以通过反向传播机制得到参数的梯度,那么我们如何呢?
2023-08-26 14:34:23 240
原创 权重初始化
方差要维持在一定范围之内,不然可能出现梯度爆炸或者消失的情况。由于加上激活函数后,所以要选择适合该激活函数的权重初始化方法系统学习Pytorch笔记六:模型的权值初始化与损失函数介绍权重初始化。
2023-08-24 16:49:10 317
原创 RuntimeError: DataLoader worker (pid 2105929) is killed by signal: Killed.
DataLoader
2023-07-23 16:49:44 310
原创 pytorch中损失函数nn.CrossEntropyLoss与激活函数softmax的关系
softmax + log + NLLLoss = CrossEntropyLoss
2023-07-18 21:11:02 1194
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人