机器学习
文章平均质量分 82
得克特
深度学习 python
展开
-
多元逻辑回归(Multinomial Logistic Regression)
二分类逻辑回归我们定义ppp为类别为1(二分类0,1)的概率,lnp1−p\ln\frac{p}{1-p}ln1−pp表示类别为1的概率与类别为0的概率比。lnp1−p=w0+∑iwixip1−p=expw0+∑iwixip=expw0+∑iwixi1+expw0+∑iwixi=11+exp−(w0+∑iwixi)\ln\frac{p}{1-p}=w_0+\sum_iw_ix_i\\\frac{p}{1-p}=\exp^{w_0+\sum_iw_ix_i}\\p=\frac{\exp^原创 2021-08-22 22:45:47 · 9686 阅读 · 0 评论 -
特征工程
文章目录1.特征编码2.统计特征连续特征类别特征1.特征编码label_encoder编码:将特征值对应到0~最大特征数-1one_hot编码:将特征值转为one_hot编码常用的xgboost需要使用one_hot编码输入,lightgbm支持直接输入label_encoder编码import pandas as pdfrom scipy import sparsefrom sklearn.preprocessing import OneHotEncoder,LabelEncoder# f原创 2020-10-21 20:02:49 · 151 阅读 · 0 评论 -
XGBoost、LightGBM 问题集锦
lightgbm和xgboost对于我都是比较陌生的,不求一次全搞明白,每天补充一些新知识吧~LightGBM 英文文档LightGBM 中文文档lightgbm特征是否需要转为onehot?LightGBM 可以直接使用 categorical features(分类特征)作为 input(输入). 它不需要被转换成 one-hot coding(独热编码), 并且它比 one-hot coding(独热编码)更快(约快上 8 倍)LightGBM Python包的相关介绍在one-hot处理原创 2020-10-20 19:36:58 · 400 阅读 · 0 评论 -
GBDT + LR 推荐算法实践
理论包含CART、GBDT、LR,我得抽时间好好写一下。代码调用lightgbm代码有两种方式,这里选择一种安装lightgbm安装lightgbm的依赖brew install libomp,不安装会报错brew install libompimport lightgbm as lgbimport pandas as pdimport numpy as npfrom skl...原创 2019-09-23 17:43:58 · 772 阅读 · 0 评论 -
数学、机器学习、深度学习目录
文章目录机器学习深度学习深度学习练习题机器学习1.机器学习实战(1) k-近邻算法(kNN)和决策树2.机器学习实战(2) 基于概率论的分类方法:朴素贝叶斯 python33.机器学习实战(3) Logistic回归 逻辑回归 基于python34.待更新5.机器学习实战(5) AdaBoost元算法 基于python36.机器学习实战(6) 预测数值型数据:回归7.机器学习实战(...原创 2019-02-10 00:10:29 · 934 阅读 · 0 评论 -
机器学习实战(11) 利用PCA来简化数据 基于python3
PCA理论PCA(主成分分析)是一种降维技术,其他两种降维技术是因子分析和独立成分分析。loaddata函数导入数据;pca函数首先去平均值,然后获取去均值后的协方差矩阵,计算协方差矩阵的特征值和特征向量,然后将数据转换到新空间。def loaddata(filename,delim='\t'): with open(filename) as fr: arr = [l...原创 2019-02-09 23:34:03 · 357 阅读 · 0 评论 -
机器学习实战(12) 利用SVD简化数据 基于python3
文章目录SVD初探基于协同过滤的推荐引擎基于物品相似度的推荐引擎利用SVD提高推荐的效果基于SVD的图像压缩SVD初探SVD是一种最常见的矩阵分解技术,SVD将原始的数据Data分解为U Sigma和VTV^TVT,U为m行m列,Sigma为m行n列,VTV^TVT为n行n列。Sigma矩阵只有对角元素,其他元素均为0,Sigma的对角元素是从大到小排列的,这些对角元素称为奇异值。这里的奇异值...原创 2019-02-09 17:53:19 · 349 阅读 · 0 评论 -
机器学习实战(6) 预测数值型数据:回归
文章目录线性回归找到最佳拟合直线局部加权线性回归函数线性回归找到最佳拟合直线loaddata导入数据,返回数据和结果值。regress公式带入即可,这里记得要做个判断来确定np.dot(data.T,data)是否为0,如果行列式为0,计算逆矩阵的时候将会出错。def loaddata(filename): data = [] label = [] with ope...原创 2019-02-09 23:47:40 · 167 阅读 · 0 评论 -
机器学习实战(7) 树回归
CART算法之前树构建的算法是ID3,每次选取最佳特征来分割数据,并按该特征的所有可能取值来划分,这种分割方法过于武断,并且不能直接处理连续型特征。CART算法采用二元切分,如果大于给定值就走左子树,否则走右子树。如下代码,loaddata函数导入数据,生成数组。binsplit函数根据特征和特征值将数据划分为两个子树createtree函数创建树,通过bestsplit函数获取切分的最佳...原创 2019-02-06 23:03:45 · 277 阅读 · 0 评论 -
机器学习实战(8) 利用K-means聚类算法对未标注数据分组
文章目录K-均值聚类算法二分K-均值算法对地理坐标进行聚类K-均值聚类算法随机选择k个点为质心,依据于距离函数划分类,更新质心,划分类,直到所有样本类别不再改变。首先构建距离计算函数和随机选取质心的函数,关于距离计算函数可以采用其他方式。def dist(veca,vecb): return np.sqrt(np.sum(np.square(veca-vecb)))def ran...原创 2019-02-06 21:50:57 · 758 阅读 · 0 评论 -
机器学习实战(9) 使用Apriori算法进行关联分析
文章目录使用Apriori算法来发现频繁集关联规则生成使用Apriori算法来发现频繁集支持度:某一项集的记录在数据集所占的比例可信度:某一项集包含的细分项集的比例如何找到支持度大于0.8的所有项集?首先自建一个简单的数据集,构建两个辅助函数,createc1函数用来构建不变集合,scand函数扫描数据集,计算出现频数和支持度。def loaddata(): return [[...原创 2019-02-06 21:26:33 · 470 阅读 · 0 评论 -
机器学习实战(10) FP-growth 基于python3
文章目录fp-growth理论fp-growth code记录下FP-growth,由于赶着把正本机器学习看完,所以好多没来得及写笔记,这里先把今天看的FP-growth补上。fp-growth理论FP树描述1.FP树中,一个元素可以出现多次,FP会存储项集的出现频率2.存在相同元素的集合会共享树的一部分3.当集合完全不同时,树才会分叉FP构建1.首先构建FP树,对所有元素项出现次...原创 2019-02-05 22:00:53 · 800 阅读 · 0 评论 -
机器学习实战(1) k-近邻算法(kNN)和决策树
把吴恩达的深度学习课程以及tensorflow等过了一遍,开始过一下机器学习的几个核心算法。k-近邻算法kNN算法不难,这里附上伪代码和手写数字的例子。伪代码计算已知类别数据集中的点与当前点之间的距离(记得数据归一化)。按照距离递增次序排序。选取与当前点距离最小的k个点。确定前k个点所在类别的出现概率。返回前k个点出现频率最高的类别作为当前点的预测分类。代码实例分类函数:...原创 2019-01-23 00:04:32 · 1502 阅读 · 0 评论 -
机器学习实战(5) AdaBoost元算法 基于python3
AdaBoost 元算法我们可以将前面介绍的不同的分类器组合起来,这种组合结果被称为集成方法或者元方法。bagging:基于数据随机重抽样的分类器构建方法通过对一个数据集多次抽样数据集个数的样本,可能会出现一个样本多次抽到,获得S个数据集,将某个算法分别作用于每个数据集就得到了S个分类器,然后对多个分类器的结果采用多数投票原则。boostingboosting是通过集中关注被已有分类器错...原创 2019-01-28 14:50:14 · 278 阅读 · 0 评论 -
机器学习实战(3) Logistic回归 逻辑回归 基于python3
逻辑回归理论逻辑回归区别于线性模型在于激活函数,这里代码用的sigmoid激活函数,适合二分类,而神经网络学习难点都在于反向传播,也就是计算梯度的过程。这里不赘述,关于逻辑回归的梯度推导看下logistic算法解析,其实会发现逻辑回归和线性回归的梯度形式是一样的(内容区别在于预测函数),这是由于逻辑回归和线性回归的代价函数是不同的。不得不吐槽一下机器学习实战这本书,哎…代码实践loadd...原创 2019-01-25 01:12:20 · 729 阅读 · 0 评论 -
机器学习实战(2) 基于概率论的分类方法:朴素贝叶斯 python3
文章目录贝叶斯理论利用贝叶斯理论做文本分类准备数据垃圾邮件检测使用贝叶斯分类器获取词倾向贝叶斯理论假如某一句子4个单词构成,有两个类别我们记类别c为0和1,两个句子中发生的概率w=(w1,w2,w3,w4)w=(w_1,w_2,w_3,w_4)w=(w1,w2,w3,w4),那么当句子为w时,c类别为0和1的概率?p(c0∣w)=p(w∣c0)p(c0)p(w)p(c_0|w)=\f...原创 2019-01-24 00:28:49 · 240 阅读 · 0 评论