解释 Logistic回归用于寻找最优化算法. 最优化算法可以解决最XX问题,比如如何在最短时间内从A点到达B点?如何投入最少工作量却获得最大的效益?如何设计发动机使得油耗最少而功率最大? 我们可以看到最XX问题,有寻找最小(最短时间)和最大等. 解决最小类问题会使用梯度下降法.可以想象为在一个山坡上寻找最陡的下坡路径. 同理,解决最大类问题会使用梯度上升法.可以想象为在一个山坡上寻找最陡的上坡路径. 寻找最优化算法,可以通过试图找到一个阶跃函数(step function),由于阶跃函数只返回…
Logistic回归的一般过程 1.收集数据:采用任意方法收集 2.准备数据:由于需要进行距离计算,因此要求数据类型为数值型.另外,结构化数据格式则最佳 3.分析数据:采用任意方法对数据进行分析 4.训练算法:大部分时间将用于训练,训练的目的是为了找到最佳的分类回归系数 5.测试算法:一旦训练步骤完成,分类将会很快. 6.使用算法:首 先,我们需要输入一些数据,并将其转换成对应的结构化数值:接着,基于训练好的回归系数就可以对这些数值进行简单回归计算,判定它们属于哪个类别:在这之后,我们就可以在输…
机器学习实战(Machine Learning in Action)学习笔记————05.Logistic回归 关键字:Logistic回归.python.源码解析.测试作者:米仓山下时间:2018-10-26机器学习实战(Machine Learning in Action,@author: Peter Harrington)源码下载地址:https://www.manning.com/books/machine-learning-in-actiongit@github.com:pbharri…
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第13章 - 利用PCA来简化数据. 这里介绍,机器学习中的降维技术,可简化样品数据. 降维技术的用途 使得数据集更易使用: 降低很多算法的计算开销: 去除噪声: 使得结果易懂. 基本概念 降维(dimensionality reduction). 如果样本数据的特征维度很大,会使得难以分析和理解.我们可以通过降维技术减少维度. 降维技术并不是将影响少的特征去掉,而是将样本数据集转换成一个低维度…
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第12章 - 使用FP-growth算法来高效发现频繁项集. 基本概念 FP-growth算法 FP-growth算法的性能很好,只需要扫描两次数据集,就能生成频繁项集.但不能用于发现关联规则. 我想应该可以使用Apriori算法发现关联规则. FP代表频繁模式(Frequent Pattern). 条件模式基(conditional pattern base). 条件模式基是以所查找元素项为结…
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第11章 - 使用Apriori算法进行关联分析. 基本概念 关联分析(association analysis)或者关联规则学习(association rule learning) 这是非监督学习的一个特定的目标:发现数据的关联(association)关系.简单的说,就是那些数据(或者数据特征)会一起出现. 关联分析的目标包括两项:发现频繁项集和发现关联规则.首先需要找到频繁项集,然后才能…
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习笔记,这次是第7章 - 利用AdaBoost元算法提高分类性能. 核心思想 在使用某个特定的算法是,有时会发现生成的算法\(f(x)\)的错误率比较高,只使用这个算法达不到要求. 这时\(f(x)\)就是一个弱算法. 在以前学习算法的过程中,我们认识到算法的参数很重要,所以把公式改写成这样: \[ f(x,arguments) \\ where \\ \qquad x \text{ : calculated…
1. 利用logistic回归进行分类的主要思想是:根据现有数据对分类边界线建立回归公式,以此进行分类. 2.sigmoid函数的分类 Sigmoid函数公式定义 3.梯度上升法    基本思想:要找个某个函数的最大值,最好的方法是沿着该函数的梯度方向探寻. 梯度上升算法用来求函数的最大值,对函数求导来得到 4.梯度下降算法    用来求函数的最小值  …
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习笔记,这次是第6章:SVM 支持向量机. 支持向量机不是很好被理解,主要是因为里面涉及到了许多数学知识,需要慢慢地理解.我也是通过看别人的博客理解SVM的. 推荐大家看看on2way的SVM系列: 解密SVM系列(一):关于拉格朗日乘子法和KKT条件 解密SVM系列(二):SVM的理论基础 解密SVM系列(三):SMO算法原理与实战求解 解密SVM系列(四):SVM非线性分类原理实验 基本概念 SVM -…
原文地址: https://www.cnblogs.com/steven-yang/p/5686473.html ----------------------------------------------------------------------------------------------------------------- 前言 最近在看Peter Harrington写的“机器学习实战”,这是我的学习笔记,这次是第7章 - 利用AdaBoost元算法提高分类性能. 这个思路称之…
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第14章 - 利用SVD简化数据. 这里介绍,机器学习中的降维技术,可简化样品数据. 基本概念 降维(dimensionality reduction). 如果样本数据的特征维度很大,会使得难以分析和理解.我们可以通过降维技术减少维度. 降维技术并不是将影响少的特征去掉,而是将样本数据集转换成一个低维度的数据集. 降维技术的用途 使得数据集更易使用: 降低很多算法的计算开销: 去除噪声: 使得结…
knn算法: 1.优点:精度高.对异常值不敏感.无数据输入假定 2.缺点:计算复杂度高.空间复杂度高. 3.适用数据范围:数值型和标称型. 一般流程: 1.收集数据 2.准备数据 3.分析数据 4.训练算法:不适用 5.测试算法:计算正确率 6.使用算法:需要输入样本和结构化的输出结果,然后运行k-近邻算法判定输入数据分别属于哪个分类,最后应用对计算出的分类执行后续的处理. 2.1.1 导入数据 operator是排序时要用的 from numpy import * import operato…
本文介绍logistic回归,和改进算法随机logistic回归,及一个病马是否可以治愈的案例.例子中涉及了数据清洗工作,缺失值的处理. 一 引言 1 sigmoid函数,这个非线性函数十分重要,f(z) = 1 / (1 + e^(-z) ), 画图如下:…
1.朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法, 最为广泛的两种分类模型是决策树模型(Decision Tree Model)和朴素贝叶斯模型(Naive Bayesian Model,NBM) 2.朴素贝叶斯公式 P(B|A)的意思是在A事件的情况下,发生B事件的概率. 3.朴素贝叶斯模型 a是独立的特征属性集合: 用来计算不同的独立特征的条件概率…
1.决策树的构造 createBranch伪代码: 检测数据集中的每个子项是否属于同一分类: IF SO RETURN 类标签 ELSE 寻找划分数据集的最好特征 划分数据集 创建分支节点 FOR 每个划分的子集 调用函数createBranch并增加返回结果到分支节点中 RETURN 分支节点 划分数据集的大原则:将无序的数据变的更加有序.在划分数据集之前之后信息发生的变化称为信息增益,获得信息增益最高的特征就是最好的选择 熵定义为信息的期望值.熵越大越离散. 计算给定数据集的香农熵 def…
k邻近算法的伪代码: 对未知类别属性的数据集中的每个点一次执行以下操作: (1)计算已知类别数据集中的点与当前点之间的距离: (2)按照距离递增次序排列 (3)选取与当前点距离最小的k个点 (4)确定前k个点所在类别的出现频率 (5)返回前k个点出现频率最好的类别作为当前点的预测分类 python函数实现 ''' Created on Sep 16, 2010 kNN: k Nearest Neighbors Input: inX: vector to compare to existing d…
强化学习读书笔记 - 05 - 蒙特卡洛方法(Monte Carlo Methods) 学习笔记: Reinforcement Learning: An Introduction, Richard S. Sutton and Andrew G. Barto c 2014, 2015, 2016 数学符号看不懂的,先看看这里: 强化学习读书笔记 - 00 - 数学符号说明 蒙特卡洛方法简话 蒙特卡洛是一个赌城的名字.冯·诺依曼给这方法起了这个名字,增加其神秘性. 蒙特卡洛方法是一个计算方法,被广泛…
iPhone开发一些读书笔记 手机应用分类1.教育工具2.生活工具3.社交应用4.定位工具5.游戏6.报纸和杂志的阅读器7.移动办公应用8.财经工具9.手机购物应用10.风景区相关应用11.旅游相关的应用12.导航工具13.企业应用 Delegation模式——delegation(委托)模式就是使用回调机制 NSData.NSMutableData——存放二进制数据的数据类型 对于画图,你首先需要重载drawRect方法.UIKit提供了如下方法:UIRectFill(CGRect rect)…
Spring实战读书笔记 Spring-core Spring之旅 - DI 和 AOP 概念 spring 的Bean容器 spring 的 核心模块 Spring的核心策略 POJO 最小侵入式编程 Spring不会强迫你实现接口或者继承类,通过DI来装配POJO类型. 采用依赖注入和面向接口实现松耦合 依赖反转容器(IOC):将整体设计和局部实现之间的依赖关系反转,比如汽车厂设计汽车:如果先设计轮子,再根据轮子设计底盘,再根据底盘设计汽车,在我们更换轮子的时候就会由于轮子和底盘之间依赖关系…
<<Java RESTful Web Service实战>> 读书笔记 第一章   JAX-RS2.0入门 REST (Representational State ransfer) 表述性状态转移 REST 具有跨平台跨语言的优势 RPC请求都是HTTP协议的POST方法,使用SOAP协议和HTTP协议 RPC 是面向方法的调用 REST 是面向资源状态的 架构风格  RPC.REST.MVC JAX-RS .JAX-WS Jersey 第二章JAX-RS2.0快速实现 J2SE…
1:简单概念描写叙述 如果如今有一些数据点,我们用一条直线对这些点进行拟合(改线称为最佳拟合直线),这个拟合过程就称为回归.训练分类器就是为了寻找最佳拟合參数,使用的是最优化算法. 基于sigmoid函数分类:logistic回归想要的函数可以接受全部的输入然后预測出类别.这个函数就是sigmoid函数,它也像一个阶跃函数.其公式例如以下: 当中: z = w0x0+w1x1+-.+wnxn,w为參数, x为特征 为了实现logistic回归分类器,我们能够在每一个特征上乘以一个回归系数,然后把…
本文来自<机器学习实战>(Peter Harrington)第九章"树回归"部分,代码使用python3.5,并在jupyter notebook环境中测试通过,推荐clone仓库后run cell all就可以了. github地址:https://github.com/gshtime/machinelearning-in-action-python3 转载请标明原文链接 1 原理 CART(Classification and Regression Trees,分类回归…
参数设置 α: 梯度上升算法迭代时候权重更新公式中包含 α :  http://blog.csdn.net/lu597203933/article/details/38468303 为了更好理解 α和最大迭代次数的作用,给出Python版的函数计算过程. # 梯度上升算法-计算回归系数 # 每个回归系数初始化为1 # 重复R次: # 计算整个数据集的梯度 # 使用α*梯度更新回归系数的向量 # 返回回归系数 def gradAscent(dataMatIn, classLabels,alpha=…
# 婚外情数据集 data(Affairs, package = "AER") summary(Affairs) table(Affairs$affairs) # 用二值变量,是或否 Affairs$ynaffair[Affairs$affairs > ] <- Affairs$ynaffair[Affairs$affairs == ] <- Affairs$ynaffair <- factor(Affairs$ynaffair, levels = c(, ),…
笔者本人是个初入机器学习的小白,主要是想把学习过程中的大概知识和自己的一些经验写下来跟大家分享,也可以加强自己的记忆,有不足的地方还望小伙伴们批评指正,点赞评论走起来~ 文章目录 1.k-近邻算法概述 1.1 距离度量 1.2 k值的选择 1.3 分类决策规则 2.k-近邻算法实现 2.1 实现方法 2.2 k-近邻法python3.6实现 2.2.1 k-近邻法实现程序 2.2.2 classify0(inX, dataSet, labels, k)中部分方法注释 2.2.3 如何测试分类器…
第五节 远程SSH连接服务与基本排错 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 远程连接LInux系统管理 1.1 为什么要远程连接Linux系统 在实际的工作场景中,虚拟机界面或物理服务器本地的窗口都是很少能够接触到的,因为服务器装完系统后,都要拉到IDC机房托管,如果是购买了云主机,更碰不到服务器本地显示器了,此时,只能通过远程连接的方式管理Linux系统.因此,在装好linux系统后,学习Linux运维的第一步应该是配置好客户端软件远程(通过ssh软件进行连接)连接Linu…
2.2.2 矩阵 matrix(vector,nrow,ncol,byrow,dimnames,char_vector_rownames,char_vector_colnames) 其中: byrow=TRUE/FALSE,表示按行填充还是按列填充,默认情况下是按列填充 2.2.4 数据框 1.attach,detach()和with() attach():将数据框加入搜索路径 detach():将数据框移除出搜索路径 with():赋值仅在括号内有效,如果想在括号外生效也可以,用<<- 2.…
看完一节<机器学习实战>,算是踏入ML的大门了吧!这里就详细讲一下一个demo:使用kNN算法实现手写字体的简单识别 kNN 先简单介绍一下kNN,就是所谓的K-近邻算法: [作用原理]:存在一个样本数据集合.每个样本数据都存在标签.输入没有标签的新数据后,将新数据的每个特征与样本集数据的对应特征进行比较,然后算法提取样本集中最相似的分类标签.一般说来,我们只选择样本数据集中前k个最相似的数据,最后,选择这k个相似数据中出现次数最多的分类,作为新数据的分类. 通俗的说,举例说明:有一群明确国籍…
变量筛选 当对多个自变量建立logistic回归模型时,并不是每一个自变量对模型都有贡献.通常我们希望所建立的模型将具有统计学意义的自变量都包含在内,而将没有统计学意义的自变量排除在外,即进行变量筛选.与多元线性回归相似,logistic回归的变量筛选方法有向前选择.向后选择和逐步选择三种方法.但其中所用的检验统计量不再是线性回归分析中的F统计量,而是logistic回归参数检验中的似然比统计量.Wald统计量或计分统计量之一.多数统计软件使用的是似然比统计量. 条件logistic回归 条件l…
文章目录 1.ID3及C4.5算法基础 1.1 计算香农熵 1.2 按照给定特征划分数据集 1.3 选择最优特征 1.4 多数表决实现 2.基于ID3.C4.5生成算法创建决策树 3.使用决策树进行分类 4.存储决策树 通过决策树原理及相关概念细节我们知道,决策树的学习算法主要包括3个步骤:特征选择.决策树生成算法.决策树剪枝,我们按照这个思路来一一实现相关功能. 本文的实现目前主要涉及特征选择.ID3及C4.5算法.剪枝及CART算法暂未涉及,后期补上. 1.ID3及C4.5算法基础 前面文章…