自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

周先森爱吃素的博客

个人博客网站https://zhouchen1998.cn,欢迎查看感兴趣的文章。

  • 博客(29)
  • 资源 (14)
  • 收藏
  • 关注

原创 Keras-简介

Keras深度学习框架简介。

2019-04-29 15:18:01 974

原创 XgBoost使用及调参教程

Kaggle比赛利器XGBboost教程。

2019-04-28 21:04:27 4070

原创 分治算法-03多项式乘法问题

多项式乘法简介多项式的运算表示是一个很常见的算法问题。问题描述给予两个多项式A(x)与B(x),得出C(x)=A(x)B(x)。例如,A(x)=3+2x+3x2+4x3,B(x)=2+x2,C(x)=6+4x+9x2+10x3+3x4+4x^5。问题分析一般情况下,使用系数表示多项式,不存在的项系数为0。但是,除了系数表示外,多项式还有一种表示叫做点值表示。若多项式...

2019-04-18 15:13:14 3148

原创 分治算法-02凸包问题

几何问题之凸包简介简单地说,凸包是正好包含所有点的凸多边形,可以将它想象为一个包围点几何的橡皮筋。之所以叫凸包是因为这个凸多边形包围所有点。本案例主要讲解分治法解决凸包问题,常见的还有Graham扫描法、Jarvis步进法、快包法等。问题描述给定点集合,输出凸包的顶点集合。问题分析分治法讲究分而治之,核心思想很容易理解,难的是想出实施的具体步骤。怎么把大问题拆分成小问题...

2019-04-18 13:48:05 2114

原创 分治算法-01连续子序列的最大和问题

连续子序列的最大和前言分治算法的核心思想是将一个规模很大的问题化简为n个规模较小的问题,这些子问题虽然独立而不同,但是问题的本质是一致的,从而达到分而治之的目的。首先通过“分”将问题分解为n个子问题,再将子问题一步步分解,知道达到最小的子问题。这时,“治”子问题再利用子问题的解推导总问题的解。子问题应与原问题拥有同样的结构,或者拥有同样的形式。只有这样,才能利用递归解决子问题。问...

2019-04-18 12:56:21 1453

原创 贪心算法-03哈夫曼编码问题

哈夫曼编码简介哈夫曼编码是一种字符编码方式,可以对指定的字符集进行数据压缩,压缩率在20%到90%。问题描述现在有一个包含5个字符{A,B,C,D,E},各个字符的出现频率依次为{0.35, 0.1, 0.2, 0.2, 0.15}。需要构造一种有效的编码类型,使用该编码表达以上字符表时可以产生平均长度最短的位串。问题分析n个字符组成的文本编码时有两种方式,定长编码(为...

2019-04-16 21:35:11 2297

原创 贪心算法-02活动安排问题

活动安排问题简介活动安排问题是需要共享公共资源的一系列活动的高效安排问题,以在限定的资源前提下尽可能多地安排活动。一般,算法题中给出开始结束时间的活动序列都可以使用这种贪心思路。问题描述有若干个活动,第i个活动的开始时间和结束时间是[Si,fi),只有一间教室,活动之间不能交叉,即一个活动结束后另一个才能开始,求解最多能安排多少个活动?问题分析目的是提高教室的利用率,尽...

2019-04-16 20:45:03 951

原创 贪心算法-01硬币找零问题

硬币找零问题前言所谓贪心算法,就是遵循某种既定原则,不断选取当前条件下最优的选择来构造每一个子步骤的解决方案,直到获得问题最终的求解。即在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,所做的仅是在某种意义上的局部最优解。利用贪心算法,需要解决两个问题。一是问题是否适合使用贪心算法求解,即所求解问题是否具有贪心选择性质。所谓贪心选择性质,是指应用同一规...

2019-04-15 15:36:41 4179

原创 回溯算法-03八皇后问题

八皇后问题简介回溯法的经典问题。问题描述有8*8=64个格子,每个格子里面可以放一个棋子,现在要求任意两个棋子不在一条横向、纵向或者斜向的直线上。问题分析显然,每一行、每一列都只有一个棋子才有可能满足答案要求。现在,对于这个矩阵,按照行去摆放棋子,第一行只能有一个,假设其在(0,0)的位置,但是现在无法判断棋子在这个位置是否合适,因为后面的棋子都没有确定。所以只能继续...

2019-04-13 14:57:17 356

原创 数据挖掘竞赛-北京PM2.5浓度回归分析训练赛

北京PM2.5浓度回归分析训练赛简介DC上的一个回归题,比较简单。时间原因没有细看,提交到70多名就结束了。使用stacking方法结合多个回归模型。过程数据获取官方给定。数据探索训练集有35746条记录,13个字段,有表头,其中pm2.5为目标。叙述数据预处理主要对date属性进行预处理,因为其字符串属性无法参与建模。利用time模块解...

2019-04-12 21:08:42 5570 10

原创 机器学习-Stacking方法的原理及实现

本文主要介绍了Stacking集成模型方法以及使用框架Mlxtend实现Stacking模型。

2019-04-12 19:30:36 12655

原创 回溯算法-02遍历所有组合方式问题

遍历所有的组合方式简介经典的数学组合问题,对应之前的排列问题。问题描述现在有四本书为A,B,C,D,要求选出两本,输出所有的选择情况。问题分析和之前一样,如果试求组合数目,那么DP将会是一个不错的选择,但是DP不是很擅长这种序列输出的题。其实,这还是个回溯题,因为每一步的问题都是一样的只不过参数不一样罢了。每一步都是在剩余书籍中挑出一本。与之前的排列问题不同之处...

2019-04-12 14:39:15 756

原创 回溯算法-01遍历所有排列方式问题

遍历所有排列方式前言回溯采用试错的方法解决问题,一旦发现当前步骤失败,回溯算法就返回上一个步骤,继续另一种方案继续试错。回溯算法的优点是速度快,没有尝试所有路径就可能找到答案。当然,如果运气不好,回溯算法就是一个暴力遍历(当答案就是最后一条搜索路径)。回溯算法又称为试探法,它的主要思想如上。回溯算法针对大多数问题有如下特点:问题的答案有多个元素、答案需要满足一些约束(如数独)、寻找答案...

2019-04-11 19:48:01 693

原创 广度优先遍历算法-03树的右侧问题

树的右侧简介一个有点变形的二叉树的层序遍历。问题描述现在有一个果树,该树果子节点符合二叉树的分布,小王按照规定只能摘到从树的右侧看过去看到的第一个节点,求出节点序列。问题分析举例如下假定树形如上,小王得到的结果为1,3,5,7。其实,这不过是一个层序遍历,求出每一层最后的那个结果而已。算法流程初始化队列,将根节点入队,当前第一层。遍历队列的每个节点,...

2019-04-10 17:09:26 293

原创 广度优先遍历算法-02合法的括号问题

合法的括号简介比较基础的BFS题目。注意,由于要对不合法的字符串最小步数删减为合法的字符串,所以BFS合适。之所以选择BFS,是因为要返回的结果为删减最小数目的括号后使字符串合法,“就近搜索显然合适”。问题描述给定一个字符串,字符串会出现字母和"(“以及”)",认为左右括号匹配完全的字符串是合法的,不完全的通过删除若干个括号得到合法字符串,现在要求移除最少数目的括号,使得其合...

2019-04-10 16:14:14 414

原创 数据挖掘竞赛-美国King County房价预测训练赛

美国King County房价预测训练赛简介DC上的一个回归题(正经的回归题)。比较简单。时间原因(暂时没什么时间看国内旧赛),看了一下网上的解答,改善了一下神经网络就提交了。过程数据获取报名成功后到官网提供的入口下载,或者我的Github也上传了。数据探索简单了解数据格式。训练集有10000条记录,14个特征,描述如下。(注意,官方数据集没有表头)其...

2019-04-09 21:40:26 4920 9

原创 广度优先遍历算法-01寻找制高点问题

寻找制高点简介比较基础的BFS问题,但是是很多算法题的模板。问题描述现在,有一个矩阵,矩阵的每个值代表山的高度(均大于1),现在要求找到这个山的所有制高点。制高点指的是通过这个点可以从上下左右四个边界走出去这个矩阵平面,注意,是四个边界都能走出去。在整个平面的移动规则是从一个点只可以向上下左右四个方向走,并且只能走到不大于自己的值的位置上去。问题分析这是一个典型的搜...

2019-04-09 18:24:43 1384

原创 深度优先遍历算法-03二叉树路径遍历问题

二叉树路径遍历简述比较基础的一个DFS的题目,但是确实很多难题的模板。LeetCode很多二叉树的题本质上就是这个路径遍历。本题为了输出路径,使用DFS的经典结构栈完成。问题描述给定一个二叉树结构(通过类定义节点及父子关系),输出所有到达叶子节点的路径。(二叉树只是标准二叉树)问题分析明显的遍历题,那么是何种遍历呢?显然,优先的是到达叶子节点而不是辐射更大的范围,这是...

2019-04-08 14:56:54 1034

原创 深度优先遍历算法-02最大岛屿问题

最大的岛屿简介比较常见的棋盘类型的DFS问题。问题描述给定一个二维矩阵,其中0代表海洋,1代表陆地(相邻的1连接形成岛屿),现在要求找到最大岛屿面积。是不是有一种LeetCode的既视感。问题分析简单暴力的核心思路就是计算每个岛屿的面积,找到最大的即可。使用从左到右,从上到下的思路遍历矩阵,找到1就说明发现了岛屿,就以岛屿为出发点开始计算面积(根据这个面积决定是否更...

2019-04-07 18:41:58 1827 2

原创 深度优先遍历算法-01小偷偷东西问题

小偷偷东西问题前言深度优先遍历是经典的图论算法,深度优先遍历算法的搜索逻辑和它的名字一样,只要有可能,就尽量深入搜索,直到找到答案,或者尝试了所有可能后确定没有解。简单来说,深度优先遍历就是按照某规则(如检索当前节点的第一个子节点)检索某个节点,直到检索完毕再去检索其他节点。搜索问题的本质就是试探问题的所有可能选择,按照特定的规律和顺序,不断去搜索答案,直到找到问题的解。如果把所有可能...

2019-04-06 16:09:08 2622

原创 Markdown-基础语法

简单介绍比较基础的Markdown语法。

2019-04-06 14:01:15 441

原创 数据挖掘竞赛-员工离职预测训练赛

员工离职预测赛。

2019-04-06 13:00:07 2316 5

原创 Markdown-数学公式语法

简单介绍在Markdown中如何书写数学公式。

2019-04-05 20:39:03 1686

原创 机器学习-回归之逻辑回归算法原理及实战

逻辑回归简介在一元回归和多元回归模型中,处理的因变量都是数值型区间变量,建立的模型描述的是因变量的期望与自变量之间的线性关系。然而,在实际的问题分析时,所研究的变量往往不全是区间变量而是顺序变量或者属性变量,如二项分布的问题。例如,在医疗诊断中,可以通过分析病人的年龄、性别、体质指数、平均血压、疾病指数等指标,判断这个人是否有糖尿病,假设y=0表示未患病,y=1表示患病,这里的因变量就是...

2019-04-05 19:21:09 562

原创 机器学习-回归之一元回归与多元回归算法原理及实战

一元回归分析和多元线性回归前言在统计学中,回归分析(Regression Analysis)指的是确定两种或两种以上变量间的相互依赖的定量关系的一种分析方法。该方法常使用数据统计的基本原理,对大量统计数据进行数学处理,并确定因变量与某些自变量的相关关系,建立一个相关性较好的回归方程(函数表达式),并加以外推,用于预测以后的因变量的变化的分析方法。回归分析是一种预测性的建模技术,它研究的是...

2019-04-05 14:48:51 5712

原创 机器学习-聚类之K均值(K-means)算法原理及实战

K-means算法前言机器学习方法主要分为监督学习和非监督学习两种。监督学习方法是在样本标签类别已知的情况下进行的,可以统计出各类样本的概率分布、特征空间分布区域等描述量,然后利用这些参数进行分类器设计。在实际应用中,很多情况是无法预先知道样本标签的,因而只能利用非监督机器学习方法进行分析。聚类分析就是典型的非监督学习方法,它在没有给定划分类别的情况下,根据数据自身的距离或者相似度进行样本...

2019-04-04 21:03:10 1214

原创 机器学习-降维之奇异值分解SVD算法原理及实战

奇异值分解简介PCA是通过特征值分解来进行特征提取的,但它要求矩阵必须是方阵,但在实际应用场景中,经常遇到的矩阵都不是方阵,如N个学生,每个学生有M门课程,其中N!=M, 这就组成了一个M*N的非方阵矩阵,这种情况下无法使用主成分分析,也限制了特征值分解方法的使用。而奇异值分解(SVD),是线性代数中重要的一种矩阵分解,该方法对矩阵的形状没有要求。原理在很多情况下,数据的一小段携...

2019-04-03 13:53:46 1106

原创 机器学习-降维之主成分分析PCA算法原理及实战

主成分分析前言近年来,随着互联网和信息行业的发展,数据已经渗透到各行各业,成为重要的生产因素如数据记录和属性规模的急剧增长。社会已经进入大数据时代,数据越多越好似乎已经成为公理。然而,数据量并不是越大越好,有时过犹不及,在数据分析应用中大量的数据反而会产生更坏的性能。这些海量数据可能含有噪声或冗余信息,当数据集包含过多的数据噪声时,会导致算法的性能达不到预期的效果。移除信息量较少甚至无效信...

2019-04-02 21:21:17 1347

原创 机器学习-集成之AdaBoost算法原理及实战

Boosting和AdaBoost简介Bagging采用的是一种多个分类器简单评分的方式。而Boosting是和Bagging对应的一种将弱分类器组合成为强分类器的算法框架,它根据分类器学习误差率来更新训练样本的权重。AdaBoost算法就是Boosting算法的一种。它建立在多个若分类器的基础上,为分类器进行权重赋值,性能好的分类器能获得更多权重,从而使评分效果更理想。原理Ad...

2019-04-01 19:33:53 1275

OpenCV安装过程缺失文件

安装OpenCV和OpenCV Contrib的过程中会因为网络的问题导致一些文件难以下载,这里将这些文件打包好供直接下载。兼容OpenCV 3.x和4.x。

2022-03-11

TCP长连接与短连接示意图

TCP长连接与短连接示意图

2022-01-23

mathpix安装包(201910月更新)

在 Linux、macOS、Windows 系统下使用 Mathpix 可以截取到复杂数学方程式的截图,并可以转换成 LaTeX 可编辑文本,在写学术及科学文献时经常会用到。编写 LaTeX 文档最麻烦的部分是那些复杂的方程式,使用 Mathpix 就可以搞行了,同时使用 Mathpix 可以截取数学方程式的截图,它会立即为你提供 LaTeX 代码。然后,你可以在你最喜欢的 LaTeX 编辑器中使用此代码。

2019-09-27

系统规划与管理师历年真题.rar

包含两年的系统规划与管理师的真题,包括答案。参与高级软考可以参考的资料。

2019-06-12

大数据工程师必备技能

作为大数据工程师,必须掌握的技能,主要包括Hadoop体系,SPSS体系等。

2019-05-19

基础学习路线.mmap

本思维导图大致描述了如今Python这门语言最终找到的自己的方向,主要是AI、WEB、DA领域,使用MindManager绘制,愿意下载,熟悉思维导图的可以看看。

2019-05-19

Mathpix软件安装包

在 Linux、macOS、Windows 系统下使用 Mathpix 可以截取到复杂数学方程式的截图,并可以转换成 LaTeX 可编辑文本,在写学术及科学文献时经常会用到。编写 LaTeX 文档最麻烦的部分是那些复杂的方程式,使用 Mathpix 就可以搞行了,同时使用 Mathpix 可以截取数学方程式的截图,它会立即为你提供 LaTeX 代码。然后,你可以在你最喜欢的 LaTeX 编辑器中使用此代码。Mathpix 是一个免费使用的工具,但它不是开源软件。这里提供其在Windows下的安装包。

2019-04-17

ScreenToGif

很实用的一款Gif录屏工具,由于国内不能访问官网,所以将安装包放在这里。(很轻量的软件,如果你对Gif录屏没有明确的目标,这款绝对适合你。)

2019-04-16

Python简明教程

一本Python的基础简明教程,既可以作为新手的入门书,也可以作为一本语法参考书。(CookBook)

2019-03-31

2004-2018软件设计师历年上下午真题及答案解析

包含2004-2018年所有软件设计师考试真题及答案解析,包括2018下半年的真题及答案解析。

2018-12-14

windows右击在此处打开命令行脚本

简单的注册表脚本,双击运行之后再注册表添加内容,使得在任意位置右击会出现“在此处打开命令行窗口”的选项,点击后在该目录下打开命令行窗口。

2018-11-24

windows右击新建.md文件的注册表脚本

简单的注册表脚本,双击运行直接导入注册表,添加.md文件的右击新建功能,目前只测试win10,理论上下面的windows版本也可以(默认使用markdownpad2)

2018-11-13

2004-2018软件设计师历年上下午真题及答案

含有2004到2018年共15年的软件设计师的真题和答案(大部分含有解析),一部分来源于官网,一部分来源于个人发布。

2018-10-30

python常用的库大全

详细列举了python常见的官方库和第三方库的简介和使用,包括所有的库和框架。

2018-09-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除