自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【数据挖掘】GBDT,XGBoost

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。两个模型都是基于Boosting的思想,采用串联的方法来提升预测的精度一、GBDTGBDT采用的弱学习器是CART回归决策树,所以,首先学习一下CART回归决策树的知识假设有 N 个样本,每个样本有 J 个属性1.对每个样本的y值进行从小到大的排序,然后取相邻两个值的均值作为分割点2.计算分割后,左右两个叶子的误差之和:其中c1是左边叶子节点的y的预测值的均值,c2是右边叶子节点的y的预测值的均值,计算出每个划分点的均方误差的值,

2020-10-16 22:51:11 397

原创 【数据挖掘】Bagging,Boosting,AdaBoost

一、BaggingBagging用于将多个基学习器集成一个相对较强的集成学习器。拿决策树当作基学习器来说,一颗树的预测能力有限,常常存在偏差和误差,使得预测不准确。这时候可以选择构造多颗决策树,通过多颗决策树的结果来判断最终的分类结果。在构建决策树的时候,我们要尽可能使得每棵决策树之间的差异较大,如果两棵树是一样的,则没有意义了。Bagging算法在随机森林上采用两种方法来保证树与树之间差异较大:1、采用Boostrap方法来取样本,当给我们的样本的容量是m时候,通过有放回的随机抽样,抽取k组样本,通

2020-10-12 12:01:23 444

原创 【数据挖掘】C3.0、C4.5、CART算法

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。1.引入熵的概念:计算集合中,所有数据的熵D表示整个集合,pk表示第k类分类的数据所占的比例,熵越大,表示集合D越混乱,越小表示集合越纯。一般熵介于0,1之间。2、引入条件熵p(xi)表示属性x,是xi属性的数据所占比列,Entropy(Y|xi)表示在属性是xi的前提下,Y的信息熵3、信息增益信息增益 = 集合D的信息熵 - 属性X下的条件信息熵表示决策树在属性X下的信息熵减少的程度4、C3.0算法选择信息增益最大的属

2020-10-10 23:48:53 701

原创 【统计知识】 2

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、ROC曲线TPR = TP / (TP+FN):召回率(Recall)FPR = FP / (FP+TN)TP / (TP+FN):精确度(Percision)(TP+TN) / (TP+FP+TN+FN):正确率二、等深划分,等宽划分等深划分:保证每个划分区间的长度一样等宽划分:保证每个区间里面的数据数量一样三、数据的属性类型1、标注属性2、二元属性:只有两个状态,0和1,比如性别属性(对称二元属性:属性的两个状态的

2020-10-09 10:32:26 3157 2

原创 【剑指offer】Python题解 4

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、剑指 Offer 38. 字符串的排列class Solution: def permutation(self, s: str) -> List[str]: res = [] def dfs(s,path): if not s:res.append(path) seen = set() for i in range(len(s)): if s[i] in seen:con

2020-10-02 15:23:46 115

原创 【剑指offer】Python题解 3

一、剑指 Offer 14- I. 剪绳子class Solution: def cuttingRope(self, n: int) -> int: dp = [1] * (n-1) for i in range(2,n+1): for j in range(1,(i+1)//2): tmp = max(j,dp[j])*max(i-j,dp[i-j]) dp[i] = max(dp[i],tmp) return dp[

2020-10-01 09:45:27 75

原创 【数据挖掘】KNN K-means

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、KNNKNN(K临近算法),是有监督的分类算法,用于把未知分类的样本点,通过计算附近K个,最近的,已分类的样本点,通过这K个样本点的投票决定,将未知样本点分类到哪一类的样本群中。步骤:1.选择合适的距离(欧氏距离,曼哈顿距离)2.计算未分类样本点到其他已分类样本点的距离(当样本量较小,可以计算出距离,当样本点过大,可以使用K-d树来选择需要计算的样本点)3.针对计算出来的距离,将样本点升序排列4.选择最近的K个点当K过分小时

2020-09-30 14:22:39 245

原创 【剑指offer】Python题解 2

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、剑指 Offer 34. 二叉树中和为某一值的路径第一想法:深度遍历,遍历每一条路径,找到正确答案class Solution: def pathSum(self, root: TreeNode, sum: int) -> List[List[int]]: res, path = [], [] def dfs(root,tar): if not root:retur

2020-09-26 17:16:59 79

原创 【业务相关】4 游戏数据分析

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、若游戏的收入在下降,该怎么分析1、确定边界首先明确,是某一个市场收入下降还是全盘的收入都下降;是某个平台的收入下降还是所有平台都下降;是某个渠道下降还是所有渠道到下降2、明确下降用户类型明确是PC端下降还是手机端下降,还是全部下降。如果是PC端,看是哪些操作系统;如果是手机端,看是IOS还是安卓3、明确最近游戏产品有没有改动明确了以上三个方面,我们针对具体的范围,来从内部和外部来分析4、公司外部其他公司是否有竞品上线,

2020-09-22 22:01:56 426 1

原创 【业务相关】3 游戏数据分析

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、如何判断影响平衡性我们分为MOBA游戏和RPG游戏来讨论1、MOBA游戏最直接的数据:英雄胜率英雄胜率一定程度上反映了英雄强度,胜率越高,强度越高;但不同段位玩家的操作水平不同,所以有可能某些英雄操作难度高,但是上限较高,导致在低段位的胜率低,高段位胜率高,此时可以稍微允许这个英雄的胜率在不同段位的偏差,计算加权胜率来判断。其次数据:英雄登场率,BAN率,击杀数据,连续击杀数据,伤害量等等一般高强度英雄都伴随着较高的BAN率,登

2020-09-22 12:48:11 457

原创 【业务相关】2 游戏相关指标

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。从标准的AARRR模型入手:用户获取—>用户激活—>用户留存—>用户付费一、用户获取,激活用户获取必定伴随着广告,宣传等投放花费CPC(cost per click):每个点击用户的成本,CPC=投放宣传的总成本/带来的点击用户量CPA(cost per action):每个激活用户的成本,CPA=投放宣传的总成本/带来的激活用户量CPR(cost per regester):每个注册用户的成本,CPA=投放宣传的总

2020-09-21 21:03:34 516

原创 【大数据】基础知识 6

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、Spark shuffle于MR shuffle的区别1、内存方面:Spark shuffle是多进程多线程模式,中间的结果不会落地,减少了IO流操作,提高了执行速度;MR shuffle当任务复杂的时候,存在多个MR Job串联的情况,每两个MR job之间都有数据读写到磁盘,这样便存在对磁盘的IO操作,影响性能2、容错方面:Spark shuffle存在RDD(弹性分布式数据集)模式,当数据处理错误,可以通过计算流程实现重建;MR

2020-09-19 12:05:55 63

原创 【大数据】基础知识 5

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、Hive原理Hive是一个部署在Hadoop上的一个数据仓库基础工具,可以将类SQL语言转化成MR任务,并运行。是的大数据的存储,查询更加方便运行步骤:1.解析器:把SQL语法转换成抽象书AST,对AST进行语法分析,查看是是否存在语法错误2.编译器:把AST转换成逻辑执行计划3.优化器:对逻辑执行计划进行优化4.执行器:把逻辑执行计划转换成物理计划,即MR任务二、spark运行流程1、启动Resource manager

2020-09-17 21:55:56 83

原创 【大数据】基础知识 4

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、Hive数据倾斜解决方案数据倾斜原因是有的key对应了太多的数据,这些数据都集中到一个reducer上处理,表现出来是,其他reduce都处理完了,但这个reduce一直没结束任务解决方法:1、设置hive.map.aggr = true:先在map端对数据进行整合,把Key相同的放在一起,减少数据量,这样可以减少进入reduce的数据量,可以一定程度优化数据倾斜的问题。2、设置均衡负载器,hive.groupby.skewinda

2020-09-17 13:24:02 81

原创 【大数据】基础知识 3

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、HIVE中常用的存储格式1.textfile存储格式textfile是按行存储的方式,没有进行压缩,并且上传文件到HDFS是通过put方式2.ORC存储格式ORC是按行和按列结合的存储格式,若有1w条数据,ORC模式先把1w行的表拆分成100行一个的小表,再对每个小表进行按列存储。create table test_orc(id int,name string,price float)row format delim

2020-09-17 09:44:23 143

原创 【剑指offer】Python题解 1

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。剑指 Offer 57 - II. 和为s的连续正数序列想法:滑动窗口,改变窗口的上下限来遍历class Solution: def findContinuousSequence(self, target: int) -> List[List[int]]: i,j,res = 1,2,[] while j <= target//2 + 1: cursum = su

2020-09-15 21:10:21 115

原创 【统计知识】 1

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、PCA在处理大数据时,数据量太多太杂,影响执行效率。这时候使用PCA来选择重要的信息,实现降维,减少数据量。具体步骤1.对特征归一化:对每个特征,求特征的平均值,再用每个特征减去这个平均值。2.求协方差矩阵:A和A的转置相乘,得到协方差矩阵,因为PCA的思想就是使得降维后的数据尽量分开,同样保证不同特征之间的关联性小。这样只要让协方差矩阵的对角元素尽可能大,其他元素为03.对角化:求解协方差阵的特征值和特征向量,让协方差阵对角化

2020-09-15 10:14:08 147

原创 【大数据】基础知识2

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、Linix的常用基础操作命令pwd:查看当前文件的路径du -sh:查看文件大小,例、du -sh /etcservice network restart:重启网络服务ls /:查看根目录下的文件,文件夹信息ls -al:显示隐藏文件,并且以更加详细的形式显示mkdir a:创建a目录mkdir -p a/b/c:循环创建目录rm -rf a:删除a文件夹mv a b:把a文件夹名称修改成becho:创建一个空文件,并写

2020-09-14 10:00:14 50

原创 【数据结构与算法】排序算法(python)2

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、归并排序归并排序是一个先分再合的过程,先将序列通过二分法分成一个个子序列,后面再比较相邻的两个序列,把两个序列合并成一个有序序列,重复这个过程,直到合并完毕def merge_sort(list): n = len(list) if n <= 1:return list mid = n//2 left = merge_sort(list[:mid]) right = merge_sort(list[mid:]) lef

2020-09-11 10:28:34 61

原创 【数据结构与算法】排序算法(python)1

一、冒泡排序通过比较相邻的两个数字,通过交换的方法,使得较大的数字在右边,最终便形成了一个增序的数列。在这里插入代码片

2020-09-09 17:49:29 124

原创 【业务相关】1

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。一、同比和环比同比:今年4月和去年4月相比较环比:今年4月和今年3月相比较同比可以避免季节性带来的影响,用作长期比较;环比用于短期的比较二、辛普森悖论在各分组中占有比率优势的一方,在总体中不一定占有优势例:商学院和法学院的男生录取率都比女生录取率高,但是总体的男生录取率却比女生录取率低。三、幸存者偏差只看到了幸存者提供的信息,却没有看到不幸者提供的数据,使得最后得出的结论有偏差。例:成功者马云和比尔盖茨都有退学经历,如果得出

2020-09-08 16:52:20 146

原创 【数据挖掘】Log

小白学数据,只为记录学习进程,对每个问题有新的理解会及时更正。逻辑回归虽然叫回归,其实是一个0,1分类问题。相比于其他的分类,逻辑回归嵌套了一个sigmod函数,使得分类有了对应的概率。sigmod函数:其中z是线性回归的模型:这样便得到了一个值域是(0,1)的模型。建立这个模型的任务便是训练出线性模型(z)中的各个未知参数sigmasigmasigma。这里使用极大似然函数来作为损失函数(为什么不使用平方损失函数,因为使用平方损失函数得到的目标函数不是凸函数,在后续求解最小值的过程中,得到的结

2020-09-07 17:54:52 317

原创 【大数据】基础知识1

一、Hadoop 1.x 和 Hadoop 2.x的区别:1.x使用 MapReduce进行调度和数据的计算2.x使用 MapReduce进行数据的计算,使用Yarn进行资源的调度二、Hadoop的主要组成:1.Hadoop Common:是Hadoop的底层模块,为Hadoop各子项目提供各种工具,如:配置文件和日志操作等。2.HDFS:主要用于存储数据,里面有NameNode和DataNode,Namenode主要用来存储元数据,相当于数据的目录;DataNode用来存储真正的数据。3.M

2020-09-07 17:07:24 110

空空如也

空空如也

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

TA关注的人

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