自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 使用决策树进行个人信用风险评估代码

使用决策树进行个人信用风险评估第一步,导入csv文件的数据集使用UCI上的德国信用数据集。该数据集包含了1000个贷款信息,每一个贷款有20个自变量和一个类变量记录该笔贷款是否违约。我们将使用该数据集构建模型来预测贷款是否违约。import pandas as pdimport numpy as npimport matplotlib.pyplot as pltcredit = pd.read_csv("data/german_credit.csv")第二步,观察数据集可根据一些函数来

2021-09-19 13:17:15 2333 1

原创 使用sklearn建立决策树模型代码

使用sklearn训练模型并预测结果定义数据def loaddata(): dataSet = [[0, 0,0,0, 'no'], [0, 0,0,1,'no'], [0, 1,0,1, 'yes'], [0, 1,1,0, 'yes'], [0, 0,0,0, 'no'], [1, 0,0,0, 'no'], [1

2021-09-19 10:57:23 1229 1

原创 动手实现ID3决策树代码

ID3决策树本文从计算数据集的信息熵、划分数据集、选择最优特征、递归训练一棵树、预测五个方面介绍怎样构建ID3决策树。先要介绍信息熵和信息增益的这两个公式:Ent⁡(D)=−∑k=1∣Y∣pklog⁡2pk\operatorname{Ent}(D)=-\sum_{k=1}^{|\mathcal{Y}|} p_{k} \log _{2} p_{k}Ent(D)=−k=1∑∣Y∣​pk​log2​pk​Gain⁡(D,a)=Ent⁡(D)−∑v=1V∣Dv∣∣D∣Ent⁡(Dv)\operatornam

2021-09-17 22:36:18 521

原创 决策树公式及知识框架

西瓜书简介思维导图决策树包含一个根结点、若干个内部结点和若干个叶结点;叶结点对应决策结果,根结点包含样本全集。从根结点到叶结点的路径对应了一个判定测试序列。划分选择如何选择最优划分属性→结点的纯度最高信息增益(ID3)信息熵:度量样本集合纯度的一种指标Ent⁡(D)=−∑k=1∣Y∣pklog⁡2pk\operatorname{Ent}(D)=-\sum_{k=1}^{|\mathcal{Y}|} p_{k} \log _{2} p_{k}Ent(D)=−k=1∑∣Y∣​pk​log2

2021-09-17 21:30:52 1000

原创 信息熵的最值问题

证明Ent(D)Ent(D)Ent(D)的最小值为0,最大值为log2∣Y∣log_2|\mathcal{Y}|log2​∣Y∣Ent⁡(D)=−∑k=1∣Y∣pklog⁡2pk\operatorname{Ent}(D)=-\sum_{k=1}^{|\mathcal{Y}|} p_{k} \log _{2} p_{k}Ent(D)=−k=1∑∣Y∣​pk​log2​pk​其中,0≤pk≤10\le p_k\le10≤pk​≤1,−∑k=1∣y∣pk=1-\sum_{k=1}^{|\mathcal{y}

2021-09-17 21:21:56 1611

原创 精力管理的四个方面

怎样成为精力管理的高手作为一名长期伏案工作者,肯定是绕不开健康和精力管理这两个话题的,本文将从精力管理的金字塔模型来介绍如何管理每天旺盛的精力。先附上思维导图:金字塔模型自底向上包括体能、情绪、注意力、意义感。体能先说体能,这点也是最重要的。体能好,尤其是心肺能力强的人,大脑的供血、供氧、供糖都会更好,所以大脑的工作效率也高,长时间工作更不容易疲劳。这句话我深有体会,作为一名长期伏案工作者,以前我总是工作一会儿就头昏脑胀,现在明白或许就是因为大脑缺血缺氧了吧,后来我就坚持运动,坚持锻炼

2021-09-17 17:19:35 1303

原创 蓝桥杯省赛及国赛准备心得和经验

前言第一次参加蓝桥杯(第十一届)已是大三,今后估计也没有什么时间和精力参加这种算法竞赛了,所以我在带大一师弟的时候奉劝他们尽早参加算法竞赛,毕竟这个没什么门槛,一些高中生都能达到很高的水平(我一个上幼儿园的侄女也报了蓝桥杯培训班),只要会用一门编程语言就可以上手。想来自己有一些心得和经验可以拿出来分享。我省赛答对8道题,省一,然后参加国赛,答对5道题,国二,差几名国一,学校给了800奖金和一个U盘,一个获国一的奖了移动硬盘看得我眼馋。时间蓝桥杯从上午九点到下午一点有四个小时,国赛的时候监考老师给了一

2021-02-05 23:57:26 17799 8

原创 tensorflow笔记

tensorflow2.0:建议直接使用2.0版本,与之前1.x版本有着截然不同的风格,安装时推荐anaconda+pycharm,anaconda最大的好处是能分隔不同的虚拟环境,在pycharm中ctrl+shift+s可以调配环境。一个端到端的开源机器学习平台兼顾易用性和执行效率:在程序调试阶段用动态图,快速建立模型、调试程序在部署阶段,采用静态图机制,提高模型的性能和部署能力创建张量:张量由Tensor类实现,为Tensor对象a = tf.constant(value, dtype

2020-08-25 10:12:47 166

原创 装箱问题——搜索法、动态规划法

问题描述:有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入格式  第一行为一个整数,表示箱子容量;  第二行为一个整数,表示有n个物品;  接下来n行,每行一个整数表示这n个物品的各自体积。输出格式一个整数,表示箱子剩余空间。 样例输入2468...

2020-02-29 12:54:09 401

原创 深度优先遍历解决图的路径问题

很久以前,T王国空前繁荣。为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市。为节省经费,T国的大臣们经过思考,制定了一套优秀的修建方案,使得任何一个大城市都能从首都直接或者通过其他大城市间接到达。同时,如果不重复经过大城市,从首都到达每个大城市的方案都是唯一的。J是T国重要大臣,他巡查于各大城市之间,体察民情。所以,从一个城市马不停蹄地到另一个城市成了J最常做的事情。...

2020-02-25 20:21:33 1080

原创 java、API(三行代码解决一道算法题)

前边的废话可以不看,我们要做的是计算2^11213-1的后100位这道题体现了java的优势,拥有丰富的内置函数,对于大数据类型,java含有一个BigInteger库,可以有效地进行大数据之间的计算。BigInteger x=BigInteger.valueOf(2).pow(11213).subtract(BigInteger.ONE);String s=""+x;System.o...

2020-02-24 23:28:06 258

原创 双指针法实现线性排序

一般的排序有许多经典算法,如快速排序、希尔排序等。但实际应用时,经常会或多或少有一些特殊的要求。我们没必要套用那些经典算法,可以根据实际情况建立更好的解法。比如,对一个整型数组中的数字进行分类排序: 使得负数都靠左端,正数都靠右端,0在中部。注意问题的特点是:负数区域和正数区域内并不要求有序。可以利用这个特点通过1次线性扫描就结束战斗!!public static void main(Stri...

2020-02-24 22:15:58 120

原创 算法、博弈

这道题是一道比较绕的题,但只要把其中的逻辑关系搞明白了,问题就能迎刃而解,有两个注意点:调用递归,递归函数的好坏决定着算法成功与否(逻辑复杂)动态规划,空间换时间使得代码性能提升(不用动态规划只能通过数据量较小的30%的数据,也就是只能拿到30%的分数)取球博弈:两个人玩取球的游戏。一共有N个球,每人轮流取球,每次可取集合{n1,n2,n3}中的任何一个数目。如果无法继续取球,则游...

2020-02-23 16:46:10 171

原创 装ubuntu容易踩的坑

最近在电脑上安装了ubuntu,主要有两种方式,一是在windows上现装一个VMware软件,并新建虚拟机。二是直接在物理机上装系统。其中有一些坑和需要注意的细节:根据需求选择安装方式,如上所述,如果对性能要求不是很高,可以用虚拟机,设置配置的时候注意要量力而行,开始时朋友给我的虚拟机内存设置为8G,那是因为它的电脑配置甩我一大截。后来我又删了重装一个,这回性能要好很多,所以要视电脑配置...

2020-02-22 08:53:04 244

原创 算法笔记——dfs,bfs

深度优先和广度优先‘(dfs、bfs)是最常用的两种搜索方法,在各类算法竞赛中也是频频出现,(可参见2017蓝桥杯的前4题均是搜索题),所以掌握两种搜索的适用场合和使用方法是很有必要的。适用场合:bfs:常用在搜索最短路径的情景,一旦搜索到可以结束,因为其深度一定是最短的。dfs也可以但是就必须全部搜索完才能判定最短的路径。dfs:所需要维护的空间少,这个跟其每次只需要维护一个方向的记录有关...

2020-02-22 08:25:07 271

原创 算法笔记——动态规划法

一道关于动态规划法的题。矩阵中最长的连续1线段 :一个矩阵中的元素只由0和1组成,对于给定的矩阵,试求矩阵中最长的连续1线段 ,方向可以是横向的、竖向的、斜向的。public int longestLine(int[][] M) { if(M.length==0)return 0; int[][][] dp=new int[M.length][M[0].length][4]; ...

2020-02-21 09:59:17 156

原创 算法笔记——动态规划法

这是一道比较有趣的动态规划法的题。给定一个字符串s和一个String列表wordDict,判断字符串是否可以由列表中的元素组成。dp[i]的含义即字符串截取(0,j)是否可以由列表中的元素组成,由此迭代至最终的整个字符串。情况一:如果字符串截取(0,j-1)本身是列表的一个元素,则dp[j]=true情况二:如果字符串截取(0,j)由列表中的两个元素组成,假设分别是(0,i-1)和(i,...

2020-02-20 23:03:49 161

原创 算法笔记——双指针法

长度最小的子数组:给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组。如果不存在符合条件的连续子数组,返回 0。示例:输入: s = 7, nums = [2,3,1,2,4,3]输出: 2解释: 子数组 [4,3] 是该条件下的长度最小的连续子数组。与上次的双指针法大同小异,指针j每次都把sum加到符合要求的位置,看这次的j-i...

2020-02-20 22:13:33 164

原创 算法笔记——动态规划法

动态规划法常常适用于有重叠子问题和最优子结构性质的问题,在重复子问题的数目关于输入的规模呈指数增长时特别有用。动态规划法的本质其实就是试图仅仅解决每个子问题一次,具有天然剪枝的功能,从而减少计算量:一旦某个给定子问题的解已经算出,则将其记忆化存储,以便下次需要同一个子问题解之时直接查表。即每个问题只管好他的子问题呈现的结果,而至于它是怎么来的则全然不管。重点是查表,表的设计决定着算法的好坏。最...

2020-02-20 20:41:39 276

原创 算法笔记——双指针法

最近几天想把寒假做的有关算法的笔记整理出来,其中有很多例题都是出自leetcode,还有一些是参考《算法竞赛入门经典》,用得比较多的方法有动态规划法、双指针法、回溯法、二分法、递归法等。今天先双指针法:双指针法的形式有好几种,如同侧出发,两侧逼近(需要先排序,其实遍历两次也可以,但是算法复杂度比较高),两侧远离。形式一:同侧出发乘积小于K的子数组 :给定一个正整数数组 nums。找出该...

2020-02-19 19:42:39 263

空空如也

空空如也

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

TA关注的人

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