- 博客(128)
- 资源 (3)
- 收藏
- 关注
原创 Epoch 和 Batch Size的设计 + 模型的早停策略(基于上篇)
epoch和batch size是训练神经网络时的两个关键超参数,它们的设计会直接影响模型的训练速度、收敛性和最终性能。
2025-03-11 15:42:28
819
原创 一个基于LSTM的字符级文本生成模型的训练+使用(pytorch)
保存超参数用于隐藏状态初始化"""初始化隐藏状态"""文本数据预处理功能:从文本文件中加载数据,并将其转换为模型可处理的格式。具体实现加载文本文件。构建字符到索引的映射()和索引到字符的映射(将文本转换为索引序列。将数据分割为输入序列和目标序列,并创建PyTorch的DataLoader以便批量加载数据。
2025-03-11 15:03:56
1096
原创 使用Argostranslate模型进行翻译(python)
"password_too_short": "密码长度至少为8个字符。"invalid_email": "电子邮件地址无效。"step3": "更新您的偏好设置并保存更改。"step1": "请登录您的账户。"step2": "导航到设置页面。开始加载模型:2025-03-05 11:37:32。模型加载完成:2025-03-05 11:37:32。"submit": "提交","cancel": "取消","next": "下一步","back": "返回"
2025-03-05 11:39:41
477
原创 Selenium+开发者工具DevTools监控和拦截网络请求
Selenium模拟浏览器操作的过程中,通过点击按钮、提交表单等操作会调用一系列后端服务接口,在自动化测试的过程中,我们通常需要验证按钮对应的接口是否正确,以及接口的调用结果等。这个过程可使用开发者工具DevTools来监控和拦截网络请求,获取操作对应的接口。blinker 1.4 (blinker版本过高会报错)示例:修改上一篇文章的代码,实现点击登录时,获取登录按钮触发的请求。
2024-12-03 16:14:38
182
原创 Selenium 在自动化测试中的应用
Selenium是一个支持多种浏览器的Web自动化测试工具,它提供了与浏览器交互的API,使得开发者可以模拟浏览器中的一系列用户行为,从而实现自动化测试。Selenium支持的浏览器包括Chrome、Firefox、Edge、Safari等,此外,它还支持多种编程语言,如Python、Java、C#、Ruby、JavaScript等。Selenium WebDriver:用于控制浏览器,执行自动化测试脚本。Selenium Grid:允许在多台机器上并行执行测试。
2024-11-20 21:19:43
1139
3
原创 缓存池和数据库连接池的使用(Java)
Data@Mapper@DS("anita") //指定数据源根据dbName查询数据库连接信息@Service@Autowired//根据数据源名称查询数据库信息。
2024-09-29 23:17:16
654
原创 StackTrace在.Net中获取当前线程的堆栈跟踪信息
1. 捕获调用堆栈信息:可以获取堆栈中的各个方法调用的详细信息。2. 访问堆栈帧:可以获取每个堆栈帧中的方法、文件名和行号等信。
2024-09-11 23:23:07
690
原创 Python爬虫(Scrapy、Selenium、BeautifulSoup、Jupyter的使用)
一个简单的例子:爬取自己的csdn博客,统计每篇博客的访问量,制作一个柱状图,以访问量从大到小的方式显示。
2024-08-20 23:06:08
1938
2
原创 Spring Boot:动态管理Oracle数据库,Mybatis实现对数据的基本操作。
使用到的技术:1. Spring Boot:用于简化Spring应用的开发。2. Dynamic DataSource:实现动态多数据源的访问和切换3. Oracle JDBC Driver:与Oracle数据库进行连接和交互。4. Mybatis-Plus:简化SQL映射和数据库访问。其中BaseMapper接口提供了对数据表进行基本操作的功能。5. Lombok:用于简化Java类的开发,自动生成常用的代码,比如getter、setter、构造函数等。
2024-08-18 22:05:18
1233
原创 AOP面向切面编程和log4j的使用(Java版)
在传统的面向对象编程中,程序的功能被模块化成各个类和方法,这些类和方法分别处理特定的功能。然而,有些功能可能涉及到多个类、多个方法,例如日志记录、事务管理、性能监控等,这些功能可能在不同的地方重复出现,导致代码的重复性和复杂性增加。AOP 解决了这个问题,它允许你在程序的运行时,将这些横切逻辑(cross-cutting concerns)从它们所影响的对象中分离出来,然后以一种更模块化的方式进行管理。
2024-07-28 22:05:48
309
原创 oracle 子查询、Group by和窗口函数
描述:给定一张学生学科成绩表base_student_grade,字段id表示学生学号,name为姓名,subject表示学科,grade为某学科成绩。使用窗口函数查询每个学生成绩最高的学科和分数。2. partition by:将数据按照id,name进行分区,即将具有相同id,name的行分为同一个分区。1. row_number() :窗口函数。为结果集中的每一行生成一个唯一的行号。3. order by grade desc:每个分区按照grade降序排列。4. rn=1:选取每个分区内的第一行。
2024-01-03 14:48:13
751
原创 C#通过请求url调用接口返回数据
url请求参数:searchDate(当前请求的年月:2023-7),需进行url编码。方法描述:通过请求url,调用对方系统的接口,拿到数据并返回;方法参数:访问系统的url地址。
2023-07-27 16:57:57
1557
原创 动态规划例题汇总
动态规划=分治递归+记忆存储(避免子问题的重复计算)1. 斐波那契数列牛客网NC65:class Solution: def Fibonacci(self , n: int) -> int: # write code here alist=[0,1,1] if n<=2: return alist[n] for i in range(3,n+1): alist.app
2022-03-28 16:43:13
826
原创 递归;动态规划(最长公共子序列)
啥是动态规划?(递推) 例如:斐波那契序列的非递归法def fib(n): if n==1 or n==2: return 1 alist=[0,1,1] for i in range(3,n+1): alist.append(alist[i-1]+alist[i-2]) return alist[-1]动态规划有啥好处? 递归执行效率低:子问题的重复计算(斐波那契额递归比非递归慢)# fib(1)=1 , fib(..
2021-11-14 22:12:54
623
原创 二叉搜索树(展平、插入、查找、删除)
删除:1. 删除的节点为叶子节点:直接删除2. 删除的节点只有左子树或只有右子树:将其子树的根节点替换此节点3. 删除的节点既有左子树又有右子树:用其右子树的最小节点代替,然后将代替的节点删除(这个代替的节点分为其为叶子节点和只有右子树两种情况)# 节点的定义class BiTreeNode: def __init__(self,data): self.data=data self.lchild=None self.rchild=N
2021-11-05 21:57:19
253
原创 二叉树的前、中、后序遍历,层次遍历,二叉树的深度
1. 前序遍历(根、左、右)def pre_order(root): if root: print(root.data) pre_order(root.lchild) pre_order(root.rchild)2.中序遍历(左、根、右)def in_order(root): if root: in_order(root.lchild) print(root.data) in_or
2021-11-05 20:23:15
200
原创 堆排序(O(n*logn))及python中堆排序的内置函数
1. 内置函数实现堆排序'''python内置模块:heapq常用函数:heapify(x)heappush(heap,item) 加元素heappop(heap)'''import heapqimport randomalist=list(range(15))random.shuffle(alist)heapq.heapify(alist) # 建堆(小根堆)new=[]for i in range(15): new.append(heapq.heappop(a.
2021-11-03 17:38:40
402
原创 排序(冒泡、选择、插入、希尔、归并、快排、计数)
1. 快速排序def QuickSort(alist,start,end): if start>=end: return i=start j=end pivot=alist[start] # 基准值 while i<j: if i<j and alist[j]>=pivot: # 比它小的值放在左边 j-=1 alist[i]=alist[j] ..
2021-10-19 19:43:49
691
2
原创 二分查找法
1. 二分查找(时间复杂度O(log n))class Solution(object): def search(self, nums, target): low=0 high=len(nums)-1 while(low<=high): mid=(low+high)//2 if nums[mid]==target: return mid
2021-10-13 21:58:39
175
原创 运行.sh文件报错-bash: ./download_weights.sh: Permission denied
运行.sh文件:./download_weights.sh命令运行报错:-bash: ./download_weights.sh: Permission denied,此时这个文件是不可执行的,用‘ll’命令查看文件的访问权限:-rw-r--r-- 1 G19940018 users 144 Nov 7 2019 download_weights.sh此时文件是可读的,但是不可执行,输入命令,变为可执行: chmod u+x download_weights.sh再次.
2020-10-17 16:46:51
2578
原创 github不能显示图片的问题
打开 C:\Windows\System32\drivers\etc\hosts 文件,以记事本或vs及其他工具打开均可。在文件的最后添加一下信息即可:# GitHub Start 192.30.253.112 github.com 192.30.253.119 gist.github.com151.101.184.133 assets-cdn.github.com151.101.184.133 raw.githubusercontent.com15.
2020-09-24 15:09:56
143
原创 RNN,Seq2Seq, Attention,LSTM
参考:1.完全解析RNN,Seq2Seq,Attention注意力机制2.Understanding LSTM Networks
2020-07-15 14:56:33
268
原创 ResNet模型代码整理
1. ResNet模型2. 左图为18层,34层模型的一个残差块,右图为50层,101层,152层的残差块3. 18层,34层的残差块(虚线部分表示输入要进行一次下采样操作)4. 50,101,152层的残差块5. 34层的模型结构图:...
2020-07-05 21:42:57
3723
原创 VGG模型代码整理
1. VGG模型2. 用2次3*3卷积代替5*5卷积,3次3*3卷积代替7*7卷积。(1)卷积结果对应原图的感受野计算: (F(i)表示第i层的感受野,如果是最上层的就是1,如果多次卷积就多次迭代计算。) 例如:三次3*3卷积代替7*7卷积 F=1, F3=(1-1)*1+3=3, F2=(3-1)*1+3=5, F1=(5-1)*1+3=7(2) 参数量对比 ① 7*7: 7*7*channels*channels=49...
2020-07-05 20:54:33
2864
1
原创 AlexNet模型代码整理
1. 网络模型(论文是用两块gpu并行训练的,所以图中的模型是上下两部分的,第一层卷积核的个数是48+48=96)2. 模型参数3. 模型代码import torch.nn as nnimport torchclass AlexNet(nn.Module): def __init__(self, num_classes=1000, init_weights=False): super(AlexNet, self).__init__() .
2020-07-05 20:28:32
1194
原创 pytorch笔记13--过拟合&dropout
导致过拟合的原因:训练网络的数据量太少;网络神经元太多;解决过拟合:增加训练时的数据量;正规化;dropout(每次随机丢弃一定数量的neuron,防止对神经元的过分依赖)1. 训练过程用两个不同的网络测试,动图如下:(自己截动图很麻烦,所以从网上拿来的)2. 自己运行的结果图如下:可以看到没加dropout的网络几乎照顾到了每一个训练数据(过拟合),但是对测试数据来说效果就很差...
2020-04-02 21:44:47
478
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人