- 博客(17)
- 收藏
- 关注
转载 CoderForces 518D Ilya and Escalator (期望DP)
CoderForces 518D Ilya and Escalator (期望DP)
2022-07-26 00:01:38
226
1
原创 特征选择总结
特征属性过多,容易造成维度灾难。选取对学习有用的特征会给模型效果带来提升。特征选择需要考虑确保重要特征不丢失。去除无关特征和冗余特征(即特征之间存在强相关)。过滤式选择(Filter)1. 方差选择法计算各个特征的方差,然后根据阈值,选择方差大于阈值的特征。2. 单变量特征选择法 (Univariate feature selection)对于分类问题(y离散),可采用:卡方...
2018-12-05 22:22:26
717
原创 机器学习中的样本不平衡问题
样本不平衡时,如果简单采用准确率来评估模型,比如正负比例为1:99,那么只要简单的把所有样本都判定为负类,准确率都可以达到99%。这显然不合理。有时对少数类错分情况的后果很严重,比如癌症患者被误诊为健康人。所以需要的分类器应该是在不严重损失多数类精度的情况下,在少数类上获得尽可能高的精度。一般对于样本不平衡问题,有两类解决办法。数据层面过采样(over-sampling)直接从少数类样本...
2018-12-05 22:21:58
545
原创 stacking和blending介绍
stacking第一层:n个模型数据量为M,首先把数据分为K份,一般为5,也就是5折;为了方便理解,假设n=3, M=1000。测试集为300对于第一个模型: 在里面进行五折交叉验证,利用其中四折训练,预测另外一折,得到维度为:(200,1) 同时预测测试集,维度(300,1) 五折交叉完后,可以得到维度为:(1000,1)的向量 ...
2018-12-05 19:47:23
212
原创 bagging介绍
之前写过boosting的博客,这篇是关于bagging的。训练bagging采用自助采样(bootstrap sampling)N个样本,有放回随机抽样N次,一次实验大约可以采集到63%样本。如果进行T次实验,得到T笔数据,分别训练一个模型。包外估计(out of bag estimate):对于剩下的37%数据,可以用于validation。预测结果组合采用的策略:分类...
2018-12-05 19:01:09
2955
3
原创 boosting,adaboost,boosting tree,gbdt
boostingboosting是ensemble模型家族的一个大分支,另一个分支是以随机森林为代表的bagging模型。boosting的基模型一般是弱学习器,而bagging的基模型一般为强学习器。boosting是串联形式,bagging是并联形式。boosting降低偏差;bagging降低方差。adaboostadaboost是最基本的boosting算法,它是分类算法。弱分...
2018-12-03 22:44:48
292
原创 机器学习:方差(variance)和偏差(bias)
模型误差来源机器学习模型的泛化误差来自于两方面:error=viriance+bias偏差:通过n次采样,每次采样m个训练样本,训练模型,这样可以得到n个模型,每个模型输出的平均值与真实模型的输出之间的差值。方差:通过n次采样,每次采样m个训练样本,训练模型,这样可以得到n个模型,每个模型输出的方差。那么什么情况下偏差大呢,什么情况方差大?假设在1阶,3阶,5阶模型空间上,我们...
2018-10-27 22:01:07
1140
1
原创 二叉树层次遍历
class TreeNode(object): def __init__(self, x): self.val = x self.left = None self.right = Noneclass Solution(object): # 分层输出 def levelorder_1(self, root): ...
2018-10-23 20:52:19
140
原创 二叉树的各种遍历(非递归实现版本)
先序遍历class TreeNode(object): def __init__(self, x): self.val = x self.left = None self.right = Noneclass Solution(object): # method 1 def preorderTraversal_1(...
2018-10-23 19:34:30
224
原创 二叉树的各种遍历(递归实现版本)
先序,中序,后序遍历先序:先根,后左子树,后右子树中序:先左子树,后根,后右子树后序:先左子树,后右子树,后根递归代码实现:class TreeNode(object): def __init__(self, x): self.val = x self.left = None self.right = None ...
2018-10-21 21:01:20
138
原创 python二分查找实现以及查找次数分析
def binary_search(num_list, x): num_list=sorted(num_list) left, right = 0, len(num_list)-1 while left<=right: mid = (left+right)/2 if num_list[mid]>x: ri...
2018-10-21 17:09:19
4289
原创 时间复杂度介绍
, ,的区别表示时间复杂度的上界,表示时间复杂度的下界,介于两者之间,具体可以由下图所示:参考:https://www2.cs.arizona.edu/classes/cs345/summer14/files/bigO.pdf P, NP, NP-complete, NP-hard的关系P: 能在多项式时间内解决的问题NP: 不能在多项式时间内解决或不确定能不能在多项式时间内解...
2018-10-21 12:29:22
578
原创 递推公式求时间复杂度
例子1: 斐波那契数列的定义如下:F1 = 1, F2 = 1, Fn =Fn–1 + Fn–2 (n ≥ 3)。如果用递归算法计算斐波那契数列的第 n 项,则其时间复杂度为O(Fn)O(Fn)为指数形式。具体可以从Fn的通项公式中看出:递归的代码如下:def fibonacci(n): if n == 1: return 0 if n == 2...
2018-10-21 12:27:45
17575
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人