- 博客(88)
- 资源 (2)
- 收藏
- 关注
原创 mybatis-plus使用saveOrUpdateBatch函数时数据库中已存在对应id数据,但报错插入时出现重复键
对该段测试代码执行两次,第一次成功在表中插入该数据,
2024-08-22 19:04:56
1532
1
原创 higher-order function in functional programming (JS)
可以利用small function来compose into large function,比如最常见的是filter 这个作用在array上的function,它可以接受其他的function来作为argument,这个filter function返回的函数值是:filtered version of the array。上面的代码完全等价于下面:可以看出,**这使得判断是否为dog的逻辑完全与数据本身进行了解耦,**这个逻辑不再依赖于当前特定的这个animals数据本身了。来自:YT/watch?
2023-09-19 20:35:50
192
原创 goland显示fmt.Sprintf代码格式化结果时的异样
在goland中查看项目源码时,看到这一句,以为fmt.Sprintf除了。这种方式还可以直接用#来显示变量值呢。
2023-08-22 20:15:03
275
原创 time.Duration(ms.Int64()) * time.Millisecond) 和 ms.Int64() * time.Millisecond有什么区别呢?
而time.Millisecond是一个time.Duration类型的常量,表示一毫秒的时间间隔。time.Sleep(time.Duration(ms.Int64()) * time.Millisecond)和time.Sleep(ms.Int64() * time.Millisecond)在功能上是等效的,它们都是用于暂停(休眠)一段时间。在第一种写法中,使用time.Duration(ms.Int64())将ms.Int64()的结果转换为time.Duration类型的值。
2023-08-22 15:46:14
378
原创 王益分布式机器学习讲座~Random Notes (1)
的,其中所提出的优化通信的方法:平衡CPU和GPU、平衡内存和CPU、平衡网卡和磁盘等在实际情况中都是不适用的,这是因为在实际的云计算平台中,通过挖掘长尾数据,企业可以发现新的产品、服务和市场细分,从而提供更有针对性的解决方案。所有的I/O操作、所有的通信操作(与这个进程通信的所有进程都要kill掉,然后重启,由于数据依赖,就会导致所有的进程都要kill再重启)。,这是因为复杂算法要求频繁的数据交换、数据合并、不同性质的计算任务的协调运行,所以对进程通信要求高。,从而提供个性化和定制化的产品和服务。
2023-06-29 22:32:20
523
原创 MIT 6.824: Go并发相关的协程问题
因为mutex作为互斥锁,其能够保证多个goroutine同步访问共享资源的原因是,**多个goroutine使用的是同一份互斥锁的实例,**一个goroutine抢占了这份实例,其他goroutine必须等待这份锁实例被释放。如果使用value receiver的话,这个结构体实例本身会在每个goroutine中都被复制一份,那么实例中的mutex变量也相应地会被复制了,这样每个goroutine对应的是不同的互斥锁实例了,此时就起不到互斥的作用了。可以避免对结构体进行复制,从而提高性能和减少内存占用;
2023-06-28 11:17:05
449
1
原创 Zookeeper启动报错:远程主机强迫关闭了一个现有的连接。
在cmd终止了占用2181端口的所有进程之后,再次运行zkServer.cmd命令,能够正常启动Zookeeper,但是**启动作为服务提供者的使用dubbo配置的springboot项目时,
2023-05-07 14:19:45
3800
1
原创 mybatis常见异常:Invalid bound statement (not found): XML文件搞的鬼!target目录不自动更新搞的鬼!
Invalid bound statement (not found)中XML导致的解决方案!
2023-02-26 08:54:55
748
1
原创 torchvision.transforms.Compose输入类型是?处理过程中的数据类型转化又是什么样的呢?
转化为RGB之后才是通常意义上的PIL. Image图片类型。
2022-08-28 00:19:03
1741
原创 VSCode python extension loading 终极解决方案
vscode python extension loading 怎么更换版本都不行
2022-08-23 14:14:32
9756
1
原创 小白大白读论文-关于EfficientNetV2论文的 疑问 与 总结
假设作用的特征图是 H * W * C,那么一个3 * 3的普通卷积的参数量就是 3 * 3 * C * C = 9C^2,而一个深度可分离卷积对应的参数量就是 3 * 3 * C = 9C,这个非常好理解,普通卷积和深度可分离卷积都需要C个卷积核,但是普通卷积的卷积核是三维的,是同时作用在原始的C个通道的,而深度可分离卷积的卷积核是二维的,是只用单个通道的。卷积上本质也是相加求和等原子操作,但是求和的时候需要找到准确的 3 * 3网格区域,个人怀疑底层的这个定位操作会比较耗时。.............
2022-08-07 16:23:06
847
原创 RuntimeError: Calculated padded input size per channel: (1 x 1). Kernel size: (5 x 5). Kernel size c
torchvision.model.inception_v3报错
2022-06-25 10:07:14
8218
原创 keras老版本切换到新版本的代码问题
只需改成上图即可,特别需要注意data_format这个参数,新版本的keras中是把最后一个维度当做通道数的,比如【5, 256, 256, 32】,如果需要像pytorch一样,则需要改动为“channels_first".参考链接:https://stackoverflow.com/questions/46965047/channels-first-with-keras...
2022-05-22 11:07:04
1758
原创 /spark-submit报错:‘python’: error=13, Permission denied
1. 报错现象明明已经安装了python,也使用了root用户权限,却始终说Permission denied2 解决办法unbuntu在不手动安装python的情况下就有默认的python2.X和python3.X版本,可以通过whereis python命令查看具体已经有了哪些python环境;这里使用的是unbuntu20.04.3的版本,安装有python3.8、python2.7, 当直接在terminal里面输入python时终端会报错说python命令不存在,直接输入python3时终
2022-05-10 17:51:50
1049
原创 PGPCA、PHPCA、PLPCA去噪代码解析
一、整体Pipeline流程解析clear allclose allsigma=10;randn('seed', 2);ima = double(imread('data/barbara.png'));% 添加噪音ima_nse = ima + sigma * randn(size(ima));figure('Position',[100 100 800 800]);plotimage(ima_nse);title(sprintf('Noisy: \n PSNR %.2f', p
2022-05-10 17:36:00
391
原创 东南大学数字图像处理作业-C++原生实现(不调库)对BMP图像旋转和平移
1 代码包含三个文件:把bmp.h、bmp.cpp、main.cpp1.1 bmp.h#pragma once#include <cstdio>#include <cstdlib>using namespace std;typedef unsigned char BYTE;typedef unsigned short WORD;typedef unsigned int DWORD;//位图文件头定义typedef struct tagBITMAPFILEH
2022-05-10 17:15:23
1447
原创 CUDA kernel errors might be asynchronously reported at some other API call
1. 报错程序运行运行着,就报了以下错误:2 原因正在使用的是“cuda:7", 1号机的第7号显卡被拿走了,或者第7号显卡机械位置松动了3 解决方案查看目前pytorch可读的显卡有几块(这时候使用nvidia-smi命令同样报错),假设为n, 然后【0,n-1】这些序号的显卡都可以使用:显卡默认是从0号开始计数的:...
2022-05-06 14:56:10
26361
原创 JAVA Debug:
1.三元运算符中包含与字符相关的条件判断语句时, 容易出错错误写法(这里G[i-1]虽然是一个int数值,但是会自动与s.charAt(i) == 'G’的结果相加, 这里不管G[i-1]的数值是0还是非0,只要s.charAt(i) == 'G’为false,那么整个表达式G[i-1] + s.charAt(i) == 'G’也为false;不管G[i-1]的数值是0还是非0, 只要s.charAt(i)=='G’为true,那么整个表达式G[i-1] + s.charAt(i) == 'G’也为tru
2022-04-28 15:31:10
578
原创 vmware安装fedora以及glusterfs实验bug的一些解决方案
不能进行赋值粘贴:https://docs.vmware.com/en/VMware-Workstation-Pro/16.0/com.vmware.ws.using.doc/GUID-08BB9465-D40A-4E16-9E15-8C016CC8166F.htmlservice命令无法运行:https://serverfault.com/questions/982376/how-do-you-restart-the-network-service-on-fedora-30...
2022-04-24 00:49:20
1359
原创 os.listdir(相对路径)
在命令行和代码文件中都是可以的,不必非要是os.listdir(绝对路径)。但是下面这种情形需要注意最好使用绝对路径:运行C文件的时候如果直接调用funcC, 这时候的相对目录“…/…/B”是相对于C.py文件的位置而不是相对于B.py文件,所以这时候会报错!这种情况下相对目录容易混淆!...
2022-03-13 23:13:02
2952
原创 VScode连接远程服务器的conda环境总是连不上
1 出现的问题我按照一般博客的说明,进行了如下操作:然后填写了ip地址和默认端口号22,结果是没有任何反应了!我并没有看到预期的在服务器端的所有python环境列表!自然也没有办法选择我需要的conda环境!这时候launch.json文件已经生成了,但是当我点击 运行 -》启动调试或者以非调试模式运行,弹出来的调试工具栏马上闪退,没有任何反应!我也尝试修改文件里面pathmapping的远程root为远程项目的实际目录,但是都没有效果!2 解决方法直接通过查看-》命令面板-》选择python解释
2022-03-13 19:41:53
4760
1
原创 torch.Tensor(dim)与torch.Tensor((dim)), torch.Tensor(dim1,dim2)与torch.Tensor((dim1,dim2))的区别
1 torch.Tensor(dim)与torch.Tensor((dim))的区别从三张截图可以看出这两者其实是完全一样的,其中第一处之所以不同是因为torch.Tensor本身就是随机数。2 torch.Tensor(dim1,dim2)与torch.Tensor((dim1,dim2))的区别可以看出这两者是不一样的,写成(X1, X2, X3,X4…)这种形式类似于写成[X1, X2, X3, X4] ,即是将这个list或者tuple给张量化,可以理解传入的参数是data的含义;
2022-03-01 09:49:17
857
原创 python中的continue只能用于for循环中
本来想在调试中用这个语句来充当注释后面一大段代码的作用,但是不行。后来找到了https://blog.youkuaiyun.com/index20001/article/details/74294945。
2022-02-28 14:09:47
853
原创 pyradimics使用source安装报错“Apparently running from root, but unable to load C extensions”
按照https://www.icode9.com/content-4-1061732.html链接进行安装:但报以下错误:直接按照提示运行,导入成功:目前不太理解第三步的作用,因为之前的按照source来安装是只需要两步就可以完成的,等理解透彻了再来补充。...
2022-02-28 10:01:04
1102
原创 conda和pip卸载包的注意事项
安装和import时包的名称不一致时,比如scikit-learn和sklearn, 卸载的时候还是应该用包的全称,也就是与安装时一致用pip安装的就要用pip卸载,而不是conda,反之亦然
2022-02-28 09:27:28
1904
原创 python判断多个字符是否存在于字符串中的坑
if 'B' or 'M' in x_base: pass很容易写成上面的结果,但其实其结果是一个字符串,而不是bool值:所以应该改正为:if 'B'in x_base or'M' in x_base: pass
2022-02-25 10:43:50
1168
原创 Leetcode刷题笔记-1
1 前言只把刷题过程中的重要步骤理解、重要代码理解、代码技巧做总结。毫无疑问,会反复刷多遍同样的题目,所以每次刷都会把增加的理解做更新。总结按照不同的算法专题来展开。2 动态规划https://leetcode.com/problems/regular-expression-matching/solution/递推算法需要注意含有*时代码的运行过程,相对复杂。class Solution(object): def isMatch(self, text, pattern):
2022-02-24 21:45:58
7357
原创 python对字符串取not操作
如果该字符串为空字符串,则 not s为true;如果该字符串不为空字符串,则not s为false。一句话,not操作不管后面的操作数是什么类型,结果一律都是bool值,一般来说空值都是默认为假的。
2022-02-24 15:47:42
914
原创 manacher算法代码的理解
1链接和代码https://cp-algorithms.com/string/manacher.htmlvector<int> manacher_odd(string s) { int n = s.size(); s = "$" + s + "^"; vector<int> p(n + 2); int l = 0, r = -1; for(int i = 1; i <= n; i++) { p[i] = max(0,
2022-02-23 20:03:55
212
原创 linux里python和ipython环境不一致
情况如题所示,在同一个conda环境里面使用这两个命令发现对于的python版本不一样:检查过后发现:在当前的conda环境里面并没有安装ipython环境,但是ipython命令却依然能被正常使用,这说明当前的ipython命令不属于当前环境,而是属于系统默认的python环境。这说明了linux的一些设计哲学?给定一个命令时,会优先匹配最近的环境,如果没有再寻找是否同样具有该命令的环境!所以感觉不同环境的命令名称尽量不要重复比较好吧!...
2022-02-16 17:57:30
1392
原创 matlab rgb2gray() 的坑
ima = double(imread('data/house.png'));ima = double(rgb2gray(uint8(ima)));特别注意在在使用rgb2gray这个函数将3通道转化成单通道的时候,必须先将这个图像转化成uint8类型。如果不进行转化的话,由于此处的ima在读取之后变成了double数据类型,直接使用rgb2gray(ima)得到的矩阵的取值范围是在0-1范围之内的!这与造成imshow显示图像为全白的原因是一样的,imshow函数和rgb2gray函数,都会将dou
2022-01-08 20:30:00
5999
原创 给matlab数组不存在的列赋值
虽然开始时,m定义时是没有列的,但是后续却可以直接给m的第一列赋值。直接给第2列赋值也是可以的,此时第一列默认赋值为0.
2022-01-06 22:10:03
921
原创 flask后端接受图片文件数据
1 代码@app.route('/predict', methods=['POST'])def predict(): # 获取传送过来的完整原始图像 file = request.form.get('file') print('file type', type(file)) data_url = str.split(file, ',')[1] print('data_url type:', type(data_url)) print('data_url:
2021-12-10 14:44:45
5619
2
原创 利用np.sum计算准确度的坑
np.sum(y == y_predict) 其中y和y_predict必须是同一个shape,要么都是(n,) , 要么都是(n, 1),**千万不要是一个是(n,),另外一个是(n,1),不然计算出的结果会非常大,因为这时候会自动广播成两个矩阵相减了!**这里不会报错的哦!...
2021-12-02 14:11:37
1082
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人