
算法实验
算法实验记录
void1024
这个作者很懒,什么都没留下…
展开
-
字符验证码识别(PyTorch)
1 项目介绍使用Python3的captcha库,生成4位数字验证码。 验证码大小为214*214。 使用PyTorch搭建ResNet18,损失函数选择交叉熵,优化算法选择SGD。 其他详细信息见代码。2 项目目录结构3 验证码图像示例4 代码功能解释create_data.py 生成训练和测试验证码config.py 项目配置类datasets.py 定义数据加载类models.py 定义网络模型utils.py 定义函数5 代码co...原创 2020-10-23 21:15:28 · 1205 阅读 · 5 评论 -
CNN识别验证码
1.生成训练数据(1)使用Spring Boot的kaptcha生成训练数据。(见https://blog.youkuaiyun.com/diOSyu/article/details/98758877)验证码生成配置文件<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframewor...原创 2019-08-12 23:24:25 · 444 阅读 · 0 评论 -
利用Python实现k最近邻算法 并识别手写数字(详细注释)
K最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是较为简单的机器学习算法之一。该方法的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。K最近邻算法(k-nearest neighbors)是一种有监督分类的机器学习算法。顾名思义,其算法主体思想就是根据距离相近的邻居类别...原创 2018-05-23 20:32:23 · 3198 阅读 · 0 评论 -
遗传算法求解TSP问题
一、导论演化算法是一类模拟自然界遗传进化规律的仿生学算法,它不是一个具体的算法,而是一个算法簇。遗传算法是演化算法的一个分支,由于遗传算法的整体搜索策略和优化计算是不依赖梯度信息,所以它的应用比较广泛。本次使用遗传算法(用Python编写)来解决TSP问题。二、算法流程(1)首先,对城市进行编号0,1,2,3……30。(2)采用十进制编码:直接用城市的编号进行编码,染色体{...原创 2019-09-23 23:54:41 · 3837 阅读 · 0 评论 -
回溯法求解八皇后问题
回溯法求解八皇后问题 文件名 定位 作用 main.py 主模块 程序入口,利用回溯法求解八皇后问题 draw.py 绘图模块 将8皇后问题结果可视化 main.py:主模块# -*- coding:...原创 2019-09-23 23:48:14 · 342 阅读 · 0 评论 -
回溯法求解0-1背包问题
# -*- coding=utf-8 -*-class BackSack: # 定义背包类 def __init__(self, capacity, weight, value): # 类的初始化 # 背包最大容量 self.capacity = capacity # 质量 self.weight = weight...原创 2019-09-23 23:45:51 · 358 阅读 · 0 评论 -
多机调度问题
# -*- coding: utf-8 -*-def main(): # 时间集合 time_set = [2, 14, 4, 16, 6, 5, 3] # 降序排列 time_set.sort() time_set.reverse() # 机器 total = [0, 0, 0] # 数量 total_num = le...原创 2019-09-23 23:44:13 · 327 阅读 · 0 评论 -
TSP问题最近临点策略
设计思路:文件清单 文件 定位 作用 data.tsp 数据 存储城市信息 main.py 主模块 最近临点策略求解TSP问题 data.tsp:每行代表一个城市信息,第一列为城市标号,第二列为城市...原创 2019-09-23 23:41:53 · 406 阅读 · 0 评论 -
动态规划求解0-1背包问题
# -*- coding:utf-8 -*-import numpy as npdef solve(value_list, weight_list, total_weight, total_length): res_arr = np.zeros((total_length + 1, total_weight + 1), dtype=np.int32) for i in r...原创 2019-09-23 23:39:59 · 168 阅读 · 0 评论 -
动态规划求解TSP问题
设计思路:程序清单: 文件名 定位 作用 cities.json json数据 存储城市坐标信息 tool.py 工具模块 提供读取JSON数据、生成随机点、生成距离矩阵等函数 main.p...原创 2019-09-23 23:38:10 · 1216 阅读 · 0 评论 -
最近点对问题
最近点对问题代码清单如下: 文件名 定位 作用 tool.py 工具模块 提供计算欧式距离、平方欧式距离、生成一定范围随机数等函数 point.py 类模块 提供Point点类和生成随机点的函数 ...原创 2019-09-23 23:34:16 · 347 阅读 · 2 评论 -
循环赛日程安排问题
1.Python语言实现递归和非递归算法,并将日程表存储到Excel中。# -*- coding:utf-8 -*-import pprintimport xlwtimport os# 递归实现def game_table(x): if x == 2: return [[1, 2], [2, 1]] half = x // 2...原创 2019-09-23 23:28:26 · 1339 阅读 · 0 评论 -
基于Tesseract-OCR识别简单验证码
Tesseract-OCR是谷歌的开源OCR库。使用Tesseract-OCR识别验证码的优点如下:1、与调用网络API相比,本地调用速度更快;2、对于识别简单的验证码,Tesseract-OCR显得更加简单高效。缺点也是十分明显的,如下:1、只调用Tesseract-OCR识别效果差,需要使用jTextBoxEditor进行人工手动训练数据,过程十分繁琐;2、对于复杂验证码,...原创 2019-09-23 23:20:53 · 1600 阅读 · 0 评论