regression

再谈Lasso回归 | elastic net | Ridge Regression

孤人 提交于 2020-04-29 13:25:11
前文: Lasso linear model实例 | Proliferation index | 评估单细胞的增殖指数 参考:LASSO回歸在生物醫學資料中的簡單實例 - 生信技能树 Linear least squares, Lasso,ridge regression有何本质区别? 你应该掌握的七种回归技术 (好文,解释了各个回归的特点,以及分别应用在什么场合) 热门数据挖掘模型应用入门(一): LASSO 回归 - 侯澄钧 Feature Selection using LASSO - 原文论文 (英文的讲解更全面,更好理解,强烈推荐阅读) 这幅图解释了为什么LASSO会让大部分的β j (λ) = 0 假设一个二维模型对应的系数是 β1 和 β2,然后 β 是最小化误差平方和的点, 即用传统线性回归得到的自变量系数。 但我们想让这个系数点必须落在蓝色的正方形内,所以就有了一系列围绕 β 的同心椭圆, 其中最先与蓝色正方形接触的点,就是符合约束同时最小化误差平方和的点。 两篇经典文章: Prediction of clinical outcome in glioblastoma using a biologically relevant nine-microRNA signature Reconstruction of enhancer–target networks in

Python 线性回归(Linear Regression)

纵饮孤独 提交于 2020-04-29 13:23:33
背景 学习 Linear Regression in Python – Real Python ,对 regression 一词比较疑惑. 这个 linear Regression 中的 Regression 是什么意思,字面上 Regression 是衰退的意思,线性衰退?相信理解了这个词,对线性回归可能印象深刻些。 Regression 到底是什么意思 搜了一番,原来是为了纪念生物统计学家高尔顿的发现,他是达尔文的表兄,一直想从进化论来研究为何人各有不同。 他的一个重大发现是,父母的身高与子女的身高之间有某种关系。 平时生活中我们也经常纳闷,为啥有的父母个子都很高,子女却比较矮,相反,有的父母都很矮,孩子却很高。高尔顿的解释是,子代的平均身高向中心回归了。正是这种子代身高向同龄人平均身高回归的趋势,使得人类身高没有两极分化。 所以他用“回归”这个词来描述父辈身高 y 和子代身高 x 之间的关系。 还有一个有趣的解释,是从词源来解,regression 中: "re" :向后,往回,相反,相对 gress = walk, 走 ion :表名词:行动,状态等 回归分析中的“回归”是什么意思? - 我是观察员的回答 - 知乎 这个答案用炒菜来比喻,很有意思: 炒菜的体验。假设你炒西红柿鸡蛋,要放盐等调料才觉得好吃,你放了一小撮,不够,再加点,结果多了;那就加点水,味道淡了

Python

你说的曾经没有我的故事 提交于 2020-04-29 13:21:58
背景 学习 Linear Regression in Python – Real Python ,前面几篇文章分别讲了“regression怎么理解“,”线性回归怎么理解“,现在该是实现的时候了。 线性回归的 Python 实现:基本思路 导入 Python 包: 有哪些包推荐呢? Numpy :数据源 scikit-learn :ML statsmodels : 比 scikit-learn 功能更强大 准备数据 建模拟合 验证模型的拟合度 预测:用模型来预测新的数据 实现细节 以最简单的线性回归为例,代码参考的是原文。 重点是掌握基本思路,以及关键的几个函数。影响拟合度的因素很多,数据源首当其冲,模型的选择也是关键,这些在实际应用中具体讨论,这里就简单的对应前面的基本思路将 sample 代码及运行结果贴一下,稍加解释。 安装并导入包 根据自己的需要导入 pip install scikit-learn pip install numpy pip install statsmodels from sklearn.preprocessing import PolynomialFeatures import numpy as np from sklearn.linear_model import LinearRegression import statsmodels.api as

Python 线性回归(Linear Regression) 基本理解

牧云@^-^@ 提交于 2020-04-29 11:07:58
背景 学习 Linear Regression in Python – Real Python ,对线性回归理论上的理解做个回顾,文章是前天读完,今天凭着记忆和理解写一遍,再回温更正。 线性回归(Linear Regression) 刚好今天听大妈讲机器学习,各种复杂高大上的算法,其背后都是在求”拟合“。 线性回归估计是最简单的拟合了。也是基础中的基础。 依然是从字面上先来试着拆解和组合: 首先, Regression 回归,指的是研究变量之间的关系,这个由来在 Python 线性回归(Linear Regression) - 到底什么是 regression? 一文中讲多了,这里不多重复。 然后, linear 线性,很直观:直线。 二者连在一起,便是:变量之间呈直线关系。 那具体是哪些变量之间? 因变量 y 和 自变量 (x1...xr) 之间。 𝑦 = 𝛽₀ + 𝛽₁𝑥₁ + ⋯ + 𝛽ᵣ𝑥ᵣ + 𝜀 当只有一个 x1 的时候,就是最简单的线性回归 𝑦 = 𝛽₀ + 𝛽₁𝑥₁ 。 具体怎么理解这个公式呢? 举个简化的例子:员工的工资 y 与 学历 x 的关系。 假设学历越高,工资也越高,二者是某种程度上的线性关系, 那在 理论上 会存在这么一个公式 y = 𝛽₀ + 𝛽₁𝑥 ,其中,x1...xn, y1...yn: x 和 y 的数据很容易拿到(当然合法渠道了,假设你是

机器学习算法 --- Pruning (decision trees) & Random Forest Algorithm

限于喜欢 提交于 2020-04-28 09:08:05
一、Table for Content   在之前的文章中我们介绍了Decision Trees Agorithms,然而这个学习算法有一个很大的弊端,就是很容易出现 Overfitting ,为了解决此问题人们找到了一种方法,就是对Decision Trees 进行 Pruning(剪枝)操作。   为了提高Decision Tree Agorithm的正确率和避免overfitting,人们又尝试了对它进行集成,即使用多棵树决策,然后对于分类问题投票得出最终结果,而对于回归问题则计算平均结果。下面是几条是本篇要讲的主要内容。 Pruning (decision trees) What is Random forest algorithm? Why Random Forest algorithm? How Random Forest algorithm works? Advantages of Random Forest algorithm. Random Forest algorithm real life example.  本文主要参考一下几篇文章,有能力的读者可自行前往阅读原文:   1. Wikipedia上的 Pruning (decision trees) 和 Random Froest algorithm 。   2. Dataaspirant上的《 HOW

Model-Agnostic Meta-Learning (MAML)模型介绍及算法详解(转载)

﹥>﹥吖頭↗ 提交于 2020-04-27 14:10:48
转载于: Model-Agnostic Meta-Learning (MAML)模型介绍及算法详解 MAML在学术界已经是非常重要的模型了,论文Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks自2017年发表至今已经收获了400+的引用。由于当前网上关于MAML的中文介绍少之又少,可能很多小伙伴对其还不是特别理解。所以今天我整理了这段时间来的学习心得,与大家分享自己对MAML的认识与理解。MAML可以用于Supervised Regression and Classification以及Reinforcement Learning。由于我对强化学习不是特别了解,因此这篇文章,均是基于MAML在Supervised Regression and Classification中的运用。 一、一些相关概念的介绍 在原论文中,作者直接引用了许多元学习相关的概念,例如 meta-learning, model-agnostic, N-way K-shot, tasks等等,其中有些概念在MAML中还有特殊的含义。在此,我尽量用通俗易懂的方式对这些概念为大家做一个介绍。 (1) meta-learning meta-learning即元学习,也可以称为“learning to learn”。常见的深度学习模型

重磅更新!YoloV4最新论文!解读yolov4框架

谁说胖子不能爱 提交于 2020-04-26 16:06:30
论文地址和代码 https://arxiv.org/abs/2004.10934v1 代码: https://github.com/AlexeyAB/darknet 摘要: 据说有许多功能可以提高卷积神经网络(CNN)的准确性。 需要在大型数据集上对这些特征的组合进行实际测试,并对结果进行理论证明。 某些功能仅在某些模型上运行,并且仅在某些问题上运行,或者仅在小型数据集上运行; 而某些功能(例如批归一化和残差连接)适用于大多数模型,任务和数据集。 我们假设此类通用功能包括加权残差连接(WRC),跨阶段部分连接(CSP),跨小批量标准化(CmBN),自对抗训练(SAT)和Mish激活。 我们使用以下新功能:WRC,CSP,CmBN,SAT,Mish激活,马赛克数据增强,CmBN,DropBlock正则化和CIoU丢失,并结合其中的一些功能来实现最新的结果:43.5%的AP(65.7 在Tesla V100上,MS COCO数据集的实时速度约为65 FPS。 核心中的核心:作者将Weighted-Residual-Connections(WRC), Cross-Stage-Partial-connections(CSP), Cross mini-Batch Normalization(CmBN), Self-adversarial-training(SAT),Mish

GBDT+LR算法解析及Python实现

孤街醉人 提交于 2020-04-24 23:07:05
1. GBDT + LR 是什么 本质上GBDT+LR是一种具有stacking思想的二分类器模型,所以可以用来解决二分类问题。这个方法出自于Facebook 2014年的论文 Practical Lessons from Predicting Clicks on Ads at Facebook 。 2. GBDT + LR 用在哪 GBDT+LR 使用最广泛的场景是CTR点击率预估,即预测当给用户推送的广告会不会被用户点击。 点击率预估模型涉及的训练样本一般是上亿级别,样本量大,模型常采用速度较快的LR。但LR是线性模型,学习能力有限,此时特征工程尤其重要。现有的特征工程实验,主要集中在寻找到有区分度的特征、特征组合,折腾一圈未必会带来效果提升。GBDT算法的特点正好可以用来发掘有区分度的特征、特征组合,减少特征工程中人力成本。 从知乎 https://zhuanlan.zhihu.com/p/29053940 上看到了一个关于CTR的流程,如下图所示: 如上图,主要包括两大部分:离线部分、在线部分,其中离线部分目标主要是训练出可用模型,而在线部分则考虑模型上线后,性能可能随时间而出现下降,弱出现这种情况,可选择使用Online-Learning来在线更新模型: 2.1 离线部分 数据收集:主要收集和业务相关的数据,通常会有专门的同事在app位置进行埋点,拿到业务数据 预处理

Spark排序算法系列之(MLLib、ML)LR使用方式介绍

為{幸葍}努か 提交于 2020-04-24 23:05:21
转载: http://thinkgamer.cn/2019/05/07/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/Spark%E6%8E%92%E5%BA%8F%E7%AE%97%E6%B3%95%E7%B3%BB%E5%88%97%E4%B9%8B%EF%BC%88MLLib%E3%80%81ML%EF%BC%89LR%E4%BD%BF%E7%94%A8%E6%96%B9%E5%BC%8F%E4%BB%8B%E7%BB%8D/ 【Spark排序算法系列】主要介绍的是目前推荐系统或者广告点击方面用的比较广的几种算法,和他们在Spark中的应用实现,本篇文章主要介绍LR算法。 本系列还包括(持续更新): Spark排序算法系列之GBDT(梯度提升决策树) Spark排序算法系列之模型融合(GBDT+LR) Spark排序算法系列之XGBoost Spark排序算法系列之FTRL(Follow-the-regularized-Leader) Spark排序算法系列之FM与FFM 背景 逻辑回归(Logistic Regression,LR)是较早应用在推荐排序上的,其属于线性模型,模型简单,可以引入海量离散特征,这样的好处就是模型可以考虑更加细节或者说针对具体个体的因素。如果想要引入非线性因素需要做特征交叉,这样很容易产生百亿特征

通俗地说逻辑回归【Logistic regression】算法(一) 逻辑回归模型原理介绍

假装没事ソ 提交于 2020-04-24 07:00:28
在说逻辑回归前,还是得提一提他的兄弟,线性回归。在某些地方,逻辑回归算法和线性回归算法是类似的。但它和线性回归最大的不同在于,逻辑回归是作用是分类的。 还记得之前说的吗,线性回归其实就是求出一条拟合空间中所有点的线。逻辑回归的本质其实也和线性回归一样,但它加了一个步骤,逻辑回归使用sigmoid函数转换线性回归的输出以返回概率值,然后可以将概率值映射到两个或更多个离散类。 如果给出学生的成绩,比较线性回归和逻辑回归的不同如下: 线性回归可以帮助我们以0-100的等级预测学生的测试分数。线性回归预测是连续的(某个范围内的数字)。 Logistic回归可以帮助预测学生是否通过。逻辑回归预测是离散的(仅允许特定值或类别)。我们还可以查看模型分类背后的概率值。 一.从回归到分类的核心 --Sigmoid Function 之前介绍线性回归的时候,它的函数是这样样子的: h(x)=θ0 + θ1 * x1 + θ2 * x2 + θ3 * x3 ... 但这样的函数是没办法进行分类的工作的,所以我们要借助一下其他函数,那就是Sigmoid Function。 我们先来看看这个Sigmoid Function长什么样,Sigmoid Function的数学公式是这样子的: 如果表示在平面坐标轴上呢,那它长这个样子。 这个Sigmoid Function可以将线性的值,映射到[0-1]这个范围中