- 博客(64)
- 收藏
- 关注
原创 语义分割实现地表建筑物识别6 模型集成
语义分割实现地表建筑物识别6 模型集成学习目标学习集成学习方法使用交叉验证训练模型,得到多个模型权重学习Snapshot和TTA的具体用法数据集划分和集成学习方法深度学习中如果设备允许可以采用交叉验证的方法,否则采用留出法。以10折交叉验证为例,训练10个语义分割模型,然后可以通过对预测结果的概率值进行平均,解码为具体字符;也可以对预测的字符进行投票,得到最终字符。机器学习中常用的集成学习方法包括 Stacking、Bagging和 Boosting。决策树(二)——集成模型Boos
2021-03-07 16:16:08
685
1
原创 语义分割实现地表建筑物识别5 模型训练与验证
#mermaid-svg-AonIt33Bm0pgxX22 .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-AonIt33Bm0pgxX22 .label text{fill:#333}#mermaid-svg-AonIt33Bm0pgxX22 .node rect,#mermaid-svg-AonIt33Bm0
2021-03-04 13:04:59
635
原创 语义分割实现地表建筑物识别4 评价函数与损失函数
语义分割实现地表建筑物识别4 评价函数与损失函数一、学习目标掌握常见的评价函数和损失函数Dice、IoU、BCE、FocalLoss、Lovász-Softmax;二 评价函数与损失函数小结语义分割问题可以看作对每一个图像像素的的分类问题。而对于分类问题,我们的损失函数可以从常规的混淆矩阵、Logistics回归中学习到的交叉熵损失函数、目标检测模型常见的交并比IoU和FocalLoss以及这次新接触到的Lovász-Softmax。内容部分1. 文字介绍Dice LossIoU
2021-03-01 20:30:41
636
原创 语义分割实现地表建筑物识别3 语义分割模型发展
语义分割实现地表建筑物识别3 语义分割模型发展理解语义分割模型构造过程,特别是最终概率值的输出理解FCN的网络模型结构和训练过程FCN原理原理是图像经过卷积神经网络得到特征图,再对特征图经过反卷积层进行上采样,保留原图像的空间位置信息,最后对上采样特征图进行逐像素分类。网络结构输入:任意尺寸彩色图像输出:与输入同尺寸,21类(20类目标+背景)卷积运算的参数是在训练FCN模型的过程中通过BP算法学习得到的。普通的池化会缩小图片尺寸,如VGG16经过5次池化后图片被缩小了32倍。为
2021-02-26 18:09:03
947
原创 语义分割实现地表建筑物识别2 数据扩增部分
语义分割实现地表建筑物识别2 数据扩增部分主要内容学习常用数据扩增方法,并用opencv和albumentations库完成具体操作学习pytorch读取图像数据扩增的意义:增加训练样本量,也可以有效增加样本的语义空间。是一种有效的正则化方法,可以防止模型过拟合。数据扩增方法分类:标签不变的数据扩增方法:数据变换后图像类别不变标签变化的数据扩增方法:数据变换后图像类别变化。对于语义分割,常规的数据扩增方法都是标签变化的扩增方法。这次学习的数据扩增方法主要是垂直/水平翻转、裁剪、旋转等
2021-02-23 18:21:34
580
1
原创 语义分割实现地表建筑物识别1
通过对遥感技术获取的航拍图进行计算机视觉识别可以获取植被面积、建筑物检测等地表覆盖信息,是一项高效且意义重大的任务。本次任务是根据航拍图识别图片中的地表建筑具体像素位置。知识准备——简述语义分割与其他视觉任务的区别目前,我了解到的计算机视觉的任务包括图像分类(分辨猫狗)、目标检测(定位)、语义分割(地表建筑物识别)。他们之间的关系可以在第12章视觉和语音找到解释,简而言之就是:图像分类是训练集包含K个类别的N个训练样本,学习各类特征获得一个分类器,最后用于预测新图像的类标签。重点是一个图对应一个标
2021-02-20 13:19:25
3540
3
原创 Task01c:随机抽样与卡方检验的SQL实现
Task01c:随机抽样与卡方检验的SQL实现需要的工具及基础学习内容- 工具: MySQL【先过一遍书,代码准确性具体还得二期编辑,希望用MySQL】书籍:《数据分析技术 使用SQL和EXCEL工具 第二版》数据集: 数据配套资源Task01a:复习SQL的基本知识Task01b:统计的基本概念及SQL实现主要内容抽样假设检验基于均值的比较Z分数:测量样本值到期望值之间的距离,以标准差的数量测量。随机抽样及分层抽样随机样本是随机的,因此,该样本的统计是分布于平均值周围的。
2020-12-28 18:49:26
580
原创 Task01b:统计的基本概念及SQL实现
统计学的核心概念及SQL实现需要的工具及基础学习内容- 工具: MySQL【先过一遍书,代码准确性具体还得二期编辑,希望用MySQL】书籍:《数据分析技术 使用SQL和EXCEL工具 第二版》数据集: 数据配套资源Task01a:复习SQL的基本知识主要内容直方图的计算数据描述:极值、均值、频次、众数分组条件聚合-- 不同支付类型的订单数量、订单价格分布及整体税收SELECT PaymentType, SUM(CASE WHEN 0<=TotalPrice AND
2020-12-26 20:16:04
240
原创 Task01a:复习SQL的基本知识
需要的工具及基础学习内容工具: MySQL数据集: 数据配套资源基础学习内容:DataWhale SQL学习目标掌握统计学的核心概念及SQL实现具体内容包括:计数、分组求和、描述SQL的基本知识查询数据。我们考虑的是从数据库中获取信息以解决业务问题,而不是将数据写入数据库。SQL语言中用于分析的部分是SELECT语句,描述了做什么来得到结果集。数据结构。关系型数据库储存结构化的数据——定义好行和列的表使用数据流处理数据。数据转换的图示方法。SQL自身的语法。1. 计数与分组计
2020-12-24 18:46:11
225
1
原创 SQL数据分析练习0 立个旗帜
近期加入学习小组的行情异常火爆,没有抢到想学的计算机视觉,报上了go,学着觉得C语言底子太薄,学得很凌乱不知所云,再加上不了解它对我的益处,与其再浪费时间去钻研语言,不如多加练习sql进行数据分析,使得熟练吧。参考书目《数据分析技术 使用SQL和EXCEL工具 第二版》预期收获数据挖掘的一些思路与方法:生存分析、相似模型、线性回归模型、朴素贝叶斯模型和关联规则SQL技术:数据流程图计划SQL思路、统计学及数据挖掘模型的SQL实现、SQL性能优化最终目标是实现有条理地用SQL做数据分析和数据挖掘
2020-12-23 18:27:35
134
原创 组队学习sql之综合练习3
基础及前5题的综合练习见:组队学习sql之基础+综合练习16~8题见:组队学习sql之综合练习2MySQL Leetcode练习Task06综合练习一共11题,本篇实现9~11。将项目7中的employee表清空,重新插入以下数据(其实是多插入5,6两行):185. 部门工资前三高的所有员工 题目+----+-------+--------+--------------+| Id | Name | Salary | DepartmentId |+----+-------+--------
2020-12-21 16:36:54
139
原创 组队学习sql之综合练习2
基础及前5题的综合练习见:组队学习sql之基础+综合练习1MySQL Leetcode练习Task06综合练习一共11题,都是leetcode上中等等级的练习题,需要多加练习呀。本篇实现6~8题。570 至少有五名直接下属的经理题目Employee表包含所有员工及其上级的信息。每位员工都有一个Id,并且还有一个对应主管的Id(ManagerId)。+------+----------+-----------+----------+|Id |Name |Department |Man
2020-12-18 14:16:38
152
原创 组队学习sql之基础+综合练习
SQL基础学习Task00~Task05都是基础理论,内容思维导图如下MySQL Leetcode练习Task06综合练习都是leetcode上中等等级的练习题,需要多加练习呀。练习一: 184部门工资最高的员工题目创建Employee 表,包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id。+----+-------+--------+--------------+| Id | Name | Salary | DepartmentId |+--
2020-12-18 08:41:21
201
原创 解决mkl FATAL ERROR : Cannot load libmkl_avx2.so or libmkl_def.so
问题描述使用faiss库是deepnote下按照conda mkl→conda faiss-cpu -c pytorch步骤完成安装的。结果运行过程突然报错Intel MKL FATAL ERROR: Cannot load libmkl_avx2.so or libmkl_def.so.问题解决方案export LD_PRELOAD=/home/jovyan/miniconda3/lib/libmkl_rt.so问题原因:库存在,但mkl与其他库之间的依赖关系出现混乱。一种方法是用nomkl替
2020-12-11 18:22:01
1306
原创 tensorflow2.3.1报错:Inputs to eager excution function cannot be keras symbolic tensors
结论法一:新建python3.6环境,安装tensorlfow2.0.0-alpha0→py文件 禁用eager excution function【tensorflow.compat.v1.disable_v2_behavior()】法二:tensorflow2.3.1不变,py文件 禁用eager excution function【tensorflow.compat.v1.disable_v2_behavior()】两种方法完美解决问题,推荐法2省力省心,原理不懂。用到的linux上安装c
2020-12-01 18:50:32
577
原创 推荐系统实践(新闻推荐)2:数据分析
思维导图图片链接:金山文档——推荐系统实践-数据分析.pof具体代码参见DeepnotePS: Deepnote是notebook样式,习惯jupyter的童鞋可以很顺手地用起来。另外可线上运行,无需占用电脑资源,可以连接github资源,非常方便,强烈推荐。参考:DataWhale github之推荐系统实践(新闻推荐)...
2020-11-27 16:09:57
305
原创 推荐系统实践(新闻推荐)1:赛题理解
Deepnote推荐系统入门赛题简介what?根据海量用户的新闻历史点击日志、新闻文章信息、新闻文章embedding向量表示信息等,预测用户最后点击文章的编号【top5】。其中:数据部分:用户新闻点击日志包括用户ID、点击时间和新闻ID。比赛将以20万用户的点击日志数据作为训练集,5万用户的点击日志数据作为测试集A,5万用户的点击日志作为测试集B.新闻文章信息共包含36万篇新闻。提交结果部分:包含用户ID、预测用户点击新闻文章Top5的article_id【概率由高到低排序】how
2020-11-25 13:37:18
790
原创 Leetcode编程训练4 查找2
目标这次的作业主要是完成多个数据的查找(nSum):排序和对撞指针多个点共线、距离相等:查表滑动数组多个数据的查找问题是在给定数组nums内找出和为target的n个数组合(n=2,3,4…),甚至有结果最接近target的n个数组合。思路1是2Sum中的查找表法:遍历数组过程中,当遍历到元素v时,可以只看v前面的元素时候含有target-v的元素存在,如果没有就将v放入查找表中,继续查找下一个解,否则查找成功返回解。思路2是将数组排序后,采用两指针对撞的方法找到l和r使得nums[l
2020-08-28 23:20:09
282
原创 Leetcode编程训练3 查找1
小结这次共有10道题,主要是学习map、set和dict等数据结构,以及二分查找。查找的问题的关键是找对数据结构、准确的二分查找套路条件还有诸如持续输出个位数的小技巧。学习目的完成查找相关经典题:35. 搜索插入位置202. 快乐数205. 同构字符串242. 有效的字母异位词290. 单词规律349. 两个数组的交集350. 两个数组的交集 II 410. 分割数组的最大值451. 根据字符出现频率排序540. 有序数组中的单一元素;学习灵活应用map、set和dict数据结构。活用二分法的
2020-08-26 00:16:45
195
原创 Leetcode编程训练2 动态规划
无关紧要从这次接触的题目角度看,动态规划是在递归的基础上进行运算效率的优化,也就是通过存储中间计算结果减少重复计算。递归的问题的关键是找到可以不停迭代的结果相关变量【状态】、迭代过程之间的关系【状态转移方程】。求解过程就是先解决边界位置的小问题,然后不断递推解决上层问题。虽然预留的时间够长,但我每天2道题的计划下还是因为拖拉呀、理解慢呀、代码出错呀,浪费时间而没有收获,不如以大神写的算法介绍帖为主,学习精神和模式,学会怎么用吧学习目的完成动态规划相关经典题:5最长回文子串 72编辑距离 198打
2020-08-23 00:23:12
263
原创 Leetcode编程训练1 分治方法
python调包很方便,数据结构学着总是半途而废,所以一直没有学完。DataWhale的Leetcode练习,对我来说很难,每个题我基本上只会常用库API函数实现,但想着有伴可以一起做这件事,有专业的引导,有拼比,有相互扶持,好像艰难的事情变得不那么难了。【话说的太早,笑到最后才是成功,加油!】50 Pow(x, n)边界情况:n = 0→任何值x的0次幂结果为1n < 0→转换成1/x的-n次幂的问题三个思路,思路1:xn=x∗x∗x∗...∗xx^n = x*x*x*...*xx
2020-08-18 22:19:01
218
原创 matplotlib与tkinter的一些总结
Python绘图】matplotlib:先搞明白plt. /ax./ fig再画tkinter做界面时,plt画图不关闭界面直接退出mainGUI时会发生报错,解决方案之一是plt.close(),另一个就是避免采用plt,选择ax画图。ax与plt的作用和根本区别ax细调坐标轴Axes.tick_params(axis=‘both’, **kwargs)参数:axis : {‘x’, ‘y’, ‘both’} Axis on which to operate; default is ‘bo
2020-07-16 18:11:32
4208
原创 tkinter2 -after和thread实现TK窗体的条件更新
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2020-06-16 21:42:40
3112
原创 tkinter1 - 主界面批量添加菜单栏
初衷最近在用python tkinter做GUI界面项目。项目分多个模块,多人配合,最后整合到主界面上。为了避免大篇幅修改主界面,采用批量加菜单栏的方式设定主界面,只要配置GUIdict就能完成主界面与模块界面的关联,十分方便。思路首先分析主界面菜单栏生成的模式,最简单的方法是:menubar = tk.Menu(root)menubar.add_command(command='按钮对应的控制函数', label='按钮的显示名称',{'其他参数诸如颜色字体等':
2020-06-13 08:47:22
718
原创 街景字符识别5-提高模型精度
前面做了模型训练与验证,我们会发现,模型在训练集、测试集的准确性并不一致,主要是因为存在泛化误差。在机器学习中通常采用k折交叉验证来选择降低泛化误差性能最优模型,但由于训练数据量大,深度学习模型一般需要较长的训练周期。如果硬件设备性能较差不现实,可采用留出法验证模型性能,直至留出的验证集上损失不再变化即停止训练。深度学习中常用于应对过拟合问题的方法:权重衰减和丢弃法(dropout)1 权重衰减1.1 基本内容权重衰减即L2范数正则化,是在损失函数基础上加入权重参数平方和,以惩罚绝对值较大的权重参
2020-06-02 14:14:45
490
原创 街景字符识别4-模型训练与验证
模型训练Training the model is an iterative process of finding the “best” parameters to minimize the error损失函数优化算法使用优化算法试图使损失函数最小化。优化算法的目标函数是一个基于训练数据集的损失函数,优化目标在于降低训练误差。梯度下降和随机梯度下降、 小批量随机梯度下降。Gradient Descent is one of the most common algorithms to find th
2020-05-30 17:17:20
562
原创 街景字符识别3-字符模型识别
在前面的章节里,我们将街景字符识别问题定位成定长字符多分类问题,即针对各个字符训练分类器,进而进行字符串的识别。1 学习目标学习CNN基础和原理了解迁移学习之微调(Fine Tuning)使用Pytorch框架构建CNN模型,并完成训练2 卷积神经网络(CNN)入门资料推荐:卷积神经网络入门见《机器学习_ 学习笔记 (all in one)_V0.96.pdf》。如果文字还是觉得抽象,那这个资源可视化形式解释卷积神经网络的每一个流程CNN Explainer:比如1个卷积核怎么讲RGB
2020-05-26 19:09:42
1052
原创 街景字符识别2-图像读取及图像增广
1 目的PIL读取数据PIL+Torch生成小批量图像数据样本理解Baseline中torchvision.transforms进行图像增广的基本使用方法。2 图像读取Python中完成数据读取操作,比较常用的是Pillow和OpenCV、。注意:Image.open()读取的通道顺序是RGB,cv2.imread()读取的通道顺序为BGR。单一图像读取:2.1 PillowPillow的官方文档读取及图像增强操作示例图像格式转换.注:模式“RGB”转换为模式“L”以后,像素值为
2020-05-23 21:20:00
874
1
原创 街景字符识别1-街景字符编码SVHN
The Street View House Numbers (SVHN) Dataset是街景字符的数据集。街景字符转录是字符序列识别问题。针对图片序列识别问题传统思路是定位、分割、识别,而Google2014年的论文《Multi-digit Number Recognition from Street View Imagery using Deep Convolutional Neural Networks》提出了基于深度卷积神经网络的方法。问题描述:图片中的字符串序列长度不定但不超过5个字符,可以将
2020-05-18 15:34:20
2384
原创 python的参数链表和关键字参数字典 **args **kwargs
python **args **kwargspython函数里参数包括未命名参数和命名参数。如果觉得参数太多,不能一一列举,就会需要用到参数链表*args和关键字参数字典**kwargs,然后我们的函数就可以接受任意数量的未命名和命名参数了。def generic(*args,**kwargs): print(args) print(kwargs)运行结果:参考《PYTHON自然...
2019-09-29 15:11:35
282
原创 文本挖掘
自然语言处理是计算机对语言信息进行处理的方法和技术。应用范围包括文本分类、情感分析(如政府舆情分析)、自动摘要等。中文文本挖掘流程预处理部分中文英文是否处理编码问题document.decode(‘GBK’)不需要待处理非文本内容1.中英文标点 2.HTML标签1.标点 2.大小写 3.拼写错误分词:基于语料库的统计概率,最大化联合分布概率所对应的分...
2019-09-12 16:54:44
715
原创 模型调参与性能优化
模型选择与调参给定学习任务,有包含m个样例的数据集D=(x1,y1),(x2,y2),...,(xm,ym)D={(x_1,y_1),(x_2,y_2),...,(x_m,y_m)}D=(x1,y1),(x2,y2),...,(xm,ym),我们可以选择不同的算法,而同一算法也可以配置不同的参数,从而得到不同的模型。选取模型的问题等价于寻找泛化误差最小的模型。我们将数据集划分为2个部...
2019-09-05 08:54:04
1064
原创 分类器性能指标:混淆矩阵、ROC曲线和AUC
ROC曲线和AUC混淆矩阵真正例率TPR=TP/(TP+FN)假正例率FPR=FP/(TN+FP)ROC和AUC根据学习器的预测结果对样例进行排序,按此顺序逐个把样本作为正例进行预测,每次计算出FPR和TPR,分别作为横纵坐标,得到ROC曲线。进行学习器性能比较时,比较ROC曲线下的面积即AUC。...
2019-08-30 12:56:46
785
原创 神经网络学习
神经网络学习深度学习→一类通过多层非线性变换对高复杂性数据建模算法的合集。一 基于TensorFlow搭建神经网络3个步骤定义神经网络的结构和前向传播的输出结果,比如输入x、输入层/输出层权重系数w1/w2,前向传播的输出y=(xw1)w2y=(xw_1)w_2y=(xw1)w2定义损失函数以及选择反向传播优化的算法,以交叉熵为损失函数,反向传播更新输入层/输出层系数生成会话并在...
2019-08-29 18:10:27
224
原创 Logistic Regression
Logistic Regression干什么用解决二分类问题。优点是对数据不进行分布假设,模型简单。思路原理是线性回归模型的预测值zzz经过单调可微的Logistic函数(sigmoid函数)映射到y^\hat{y}y^,进而根据阈值可以判断分类标记y。其中Logistic函数(sigmoid函数)y^=1/(1+exp−z)\hat{y}=1/(1+\exp^{-z})y^=1/...
2019-08-27 18:54:54
169
原创 概率分布
为了更方便地计算概率分布,有些特殊的概率分布。离散分布:几何分布、二项分布及泊松分布连续分布:正态分布抽样分布:卡方分布、t分布离散分布几何分布应用条件:进行一系列独立试验,每次试验或成功或失败,每次试验成功概率相同,而我们关注的是为了成功一次,需要进行多少次试验。X表示为了取得第一次成功需要实验的次数,p代表单次试验的成功概率,则X~Geo§P(X=r)=pqr−1P(X=r...
2019-08-23 11:15:53
351
原创 t检验及python代码实现
t分布当总体符合正态分布,σ2σ^2σ2未知,且可供支配的样本很小(n≤30)时,样本符合t分布。【因为仅从样本无法精确反映总体方差的真实值】t分布形状取决于样本大小,当样本很大时,t分布外形接近正态分布,当样本很小时,曲线较为扁平。t分布只有一个参数→自由度v=n-1.标准分T=(x−μ)/(s/sqrt(n))T=(x-μ)/(s/sqrt(n))T=(x−μ)/(s/sqrt(n))...
2019-08-22 11:02:30
16718
原创 卡方检验及python代码实现
是什么?有什么用?怎么做?是什么?卡方分布:n个独立同分布(标准正态分布N(0,1))变量的平方和服从自由度为n的卡方分布。不同自由度的卡方分布的概率密度函数图示python代码import numpy as npimport seaborn as snsimport matplotlib.pyplot as pltx1 = np.random.normal(0,1,10000...
2019-08-21 18:27:41
14780
2
原创 Kaggle手机验证manually verified
下载某些比赛数据或者参加比赛需要进行Phone Verification。多次尝试无法收短信,发邮件给kaggle support,人工认证了。分享一下:)两次邮件1、使用"+08618788888888"格式认证报错,给kaggle Support发邮件,工作人员回复是不要添加"+086"或"0086",正确格式是"8618788888888"2、采用正确格式进行认证后也报错【You di...
2019-08-06 09:41:25
1448
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人