机器学习
机器学习系列文章
奶糖猫Esong
这个作者很懒,什么都没留下…
展开
-
总结 | DataFrame、Series、array、tensor的创建及相互转化
最近在入门图像识别,自然也会用到深度学习框架,也接触到了一个新的数据结构——tensor(张量)。除此之外,也有一些很常用的数据结构,比如DataFrame、Series、array等,这篇文章主要对这几种数据结构的创建及相互转换做一个小总结。创建方法DataFrame这里就不在单独贴出每种数据结构的示例图,只是简单描述一下各个数据结构的特点。DataFrame类似于一个二维矩阵,但它的行列都有对应的索引。DataFrame创建方法很多,这里给出比较常用的三种方法:1、通过字典创建2、通过元组原创 2020-08-25 16:01:17 · 4693 阅读 · 0 评论 -
Tips | 如何用二元分类器解决一个多分类任务?
二元分问题会是我们生活中比较常见的一类问题,比如邮件可以分为垃圾邮件和非垃圾邮件、一个人患病或者不患病,但除此之外也会遇到一些多元分类问题,比如天气可以分为晴、阴、雨、雪等等。我们通过算法构建的分类器就以分为二元分类器和多元分类器,前者可以区分两个类别标签,后者则可以区分两个以上的类别标签。对于算法而言,像SVM、逻辑回归等是严格的二元分类算法,而像朴素贝叶斯、随机森林这类算法则可以直接处理多元分类问题。但利用二元分类器处理多分类问题是可行的,下面将以逻辑回归结合鸢尾花数据集为例介绍。OvA、OvO策略原创 2020-07-24 10:07:52 · 2188 阅读 · 0 评论 -
实战 |利用机器学习实现一个多分类任务
对于机器学习而言,如果你已经大致了解了相关算法的原理、理论推导,你也不是大家口中刚入门的小白了。接下来你需要将自己所学的知识利用起来,最好的方式应该就是独立完成几个项目实战,项目难度入门级即可,因为重点是帮助你了解一个项目的流程,比如缺失值和异常值的处理、特征降维、变量转换等等。Kaggle毋庸置疑是一个很好的平台,里面的泰坦尼克号、房屋价格预测、手写数字都是非常非常经典的入门实战项目,如果你独立完成这三个项目后感觉可以提升一下难度,就可以继续在Playground中寻找适合自己的项目。但如果你感觉还需要原创 2020-07-17 10:09:09 · 2637 阅读 · 0 评论 -
一文凑齐四种变量转换方法!
在一份数据集中通常会遇见两类数据——数值型与类别型,数值型变量通常就是int、float类型,类别型变量就是object类型,也就是我们总说的字符型变量。如果更官方地讲,数值型变量被称作定量变量、类别型变量被称作定性变量。数值型变量主要体现在连续值和离散值:连续值:体温、房屋面积等离散值:人数、个数等我们都知道在大多数机器学习算法中都要与"距离"多多少少都会有些关系,所以只允许传入数值型变量,在不需要做其它处理的前提下,原始数据集中的数值型变量都是可以直接使用的,典型的算法代表有支持向量机、逻辑原创 2020-06-26 09:45:11 · 3709 阅读 · 0 评论 -
Kaggle竞赛入门实战——机器学习预测房屋价格
这篇文章是介绍一个完整的机器学习小项目——预测房屋价格,它是Kaggle竞赛中入门级的题目,和我们比较熟悉的泰坦尼克号生存预测处于同一等级。在之前介绍KNN算法时,曾用过这个数据集,但只是通过简单的建模帮助理解KNN的思想,本文会更加全面地介绍完成一个小项目的流程,如何在科学分析的辅助下预测出我们需要的目标值。在分析之前我们应该提前明确我们的目的,中途可能需要处理的问题,可以归纳成以下几点:了解标签变量:可以通过目标变量大致分析出解决问题是需要分类算法还是回归算法。粗略了解特征:因为特征标签都为英文原创 2020-06-22 09:49:06 · 1185 阅读 · 0 评论 -
不能不用也不可乱用的标准化和归一化处理
今天这篇还是讲特征工程那一堆事,准确点说是数据预处理范畴内的,在做PCA降维时,我发现利用方差过滤出的主成分和利用PCA降维得到的主成分对应位置的方差有些不同:VarianceThreshold:[90370.21684180899, 55277.04960170764, 51395.858083599174]PCA:[176251.93379431,74196.48270488,55716.27982124]之前说过PCA降维可以将原来高维的数据投影到某个低维的空间上并使得其方差尽量大。如果数据其原创 2020-06-15 11:19:07 · 3985 阅读 · 0 评论 -
想机器学习实战却不会特征降维?这可不行
最近期末需要交的论文有些多,所以更新进度有些慢,为了弥补空白期,以后也会给大家转载一些好文,感谢各位哥哥姐姐一直以来的支持。如果只对降维的代码部分感兴趣可以直接划至文末一直都在研究关于机器学习相关算法的理论,最近准备打算在Kaggle参加些竞赛,但只会一些理论知识是不足以针对给定的数据建立一个比较不错的模型,这其中还包括很多必要的操作,比如缺失值处理、特征工程等等。今天来说一下特征降维,我们在练习时通常会用sklearn自带的数据集,比如鸢尾花数据集,通常这类数据集是经过处理的,特点就是规模小.原创 2020-06-01 11:11:57 · 566 阅读 · 0 评论 -
机器学习笔记(十四)——线性回归及其两种常用的优化方法
何为回归回归的目的是预测数值型的目标值,最直接的办法是依据输入写出一个目标值的计算公式,比如要计算一个男生可以找到女朋友的概率:P=0.4∗财产+0.3∗长相+0.3∗身高P = 0.4\ast财产+0.3\ast长相+0.3\ast身高P=0.4∗财产+0.3∗长相+0.3∗身高这意味着要综合财产、长相、身高三个因素来判断概率,其中财产也是最重要的因素。这个式子就可以被称作回归方程,其中...原创 2020-05-01 11:19:11 · 3316 阅读 · 0 评论 -
机器学习笔记(十三)——重中之重的性能度量方式你要懂
性能度量本文参考《机器学习》和《机器学习实战》在之前讲述的所有分类介绍中,我们都是假设所有类别的分类代价是一样的,由于主要探讨的是二分类问题,所以可看作1和0的分类代价相同。而对于分类代价相同的问题,我们通常利用正确率或错误率来评价所构建分类器性能的好坏。比如手写数字识别系统,对于测试数据集,它的准确率可以达到98%,就可以说这个模型比较不错。但是我们现在考虑癌症检测问题,我们也通过某...原创 2020-04-27 09:56:10 · 623 阅读 · 0 评论 -
机器学习笔记(十二)——集成学习方法之AdaBoost
集成学习方法本文参考于《机器学习实战》和《机器学习》在此之前一共介绍了五种分类算法,分别为KNN、决策树、朴素贝叶斯、逻辑回归、支持向量机,可以看到每一种算法都有各自的优缺点,以及适合的数据集。集成学习方法可以将不同分类算法构建的分类器组合在一起,更加高效准确的分类。使用集成学习方法时可以有多种形式:可以是不同算法的集成,也可以是同一算法在不同设置下的集成,还可以是数据集不同部分分配给不...原创 2020-04-22 10:23:07 · 1440 阅读 · 3 评论 -
机器学习笔记(十一)——学支持向量机怎能不懂“核“
非线性支持向量机对于线性分类问题,线性分类支持向量机是一种非常有效的方法。但是有的分类问题是非线性的,这时就可以使用非线性支持向量机对分类问题求解,其主要的特点是利用核技巧(kernel trick),下面通过一个通俗的小栗子介绍核技巧。核方法与核技巧假设有一个二维平面上有4个点,两个红色点、两个绿色点,这4个点位于一条直线上,如下:对于这个问题,我们是无法利用一条直线准确将红色点和绿色...原创 2020-04-19 09:19:33 · 1071 阅读 · 0 评论 -
机器学习笔记(十)——这样推导SMO算法才易理解
线性支持向量机上一篇文章对支持向量机的间隔、对偶和KKT条件做了详细推导,但前文的基础是原始问题为线性可分问题,所以对线性不可分训练数据是不适用的,这时需要引入一个新定义:软间隔。假如训练数据中有一些特异点,也就是分类会出错的样本点,将这些特异点除去后,剩下的大部分样本点组成的集合是线性可分的,训练数据线性可分时所对应的间隔也被称为硬间隔。线性不可分也就意味着某些样本点不能满足函数间隔大于等...原创 2020-04-15 09:08:23 · 2071 阅读 · 0 评论 -
机器学习笔记(九)——手撕支持向量机SVM之间隔、对偶、KKT条件详细推导
SVM概述支持向量机(SVM)是一种有监督的分类算法,并且它绝大部分处理的也是二分类问题,先通过一系列图片了解几个关于SVM的概念。上图中有橙色点和蓝色点分别代表两类标签,如果想要将其分类,需要怎么做呢?可能有的伙伴会想到上一篇文章讲到的逻辑回归拟合决策边界,这肯定是一种不错的方法,本文所讲的SVM也是可以解决这种分类问题的;既然都是分类算法,所以通过一个例子可以比对出二者的相同点和不同点。...原创 2020-04-11 11:22:19 · 2293 阅读 · 1 评论 -
机器学习笔记(八)——随机梯度上升(下降)算法调优
前言概述上一篇文章对逻辑回归的原理和基本思想做了一些简要介绍,并通过引入Sigmoid函数和梯度公式成功推导出了梯度上升和梯度下降公式,上文分类实例是依据全批量提升上升法,而本文会介绍全批量梯度上升的一种优化算法——随机梯度上升,如果还未懂得逻辑回归思想和推理公式的原理,还请观看上一篇文章:机器学习笔记(七)——初识逻辑回归、不同方法推导梯度公式。随机梯度上升区别对比在讲解全批量梯度上升和...原创 2020-04-06 09:01:55 · 3449 阅读 · 1 评论 -
机器学习笔记(七)——初识逻辑回归、不同方法推导梯度公式
算法概述逻辑回归(Logistic)虽带有回归二字,但它却是一个经典的二分类算法,它适合处理一些二分类任务,例如疾病检测、垃圾邮件检测、用户点击率以及上文所涉及的正负情感分析等等;首先了解一下何为回归?假设现在有一些数据点,我们利用一条直线对这些点进行拟合(该线称为最佳拟合直线),这个拟合的过程就称作回归。利用逻辑回归进行分类的主要思想是:根据现有数据对分类边界线建立回归公式,以此进行分类。线...原创 2020-04-03 08:32:27 · 3046 阅读 · 0 评论 -
机器学习笔记(六)——朴素贝叶斯构建“饥饿站台”豆瓣短评情感分类器
前文回顾上一篇文章介绍了朴素贝叶斯算法的相关知识,包括以下几方面:朴素贝叶斯算法的基本原理公式推导贝叶斯准则(条件概率公式)构建训练、测试简易文本分类算法拉普拉斯平滑修正其中公式推导这一部分较为重要,利用条件概率解决问题也是朴素贝叶斯的基本思想,所以理解贝叶斯准则如何得到,以及如何应用十分重要,也是后期构建算法的基础。现实生活中朴素贝叶斯算法应用广泛,如文本分类,垃圾邮件的分类,...原创 2020-03-30 18:52:49 · 904 阅读 · 0 评论 -
机器学习笔记(五)——轻松看透朴素贝叶斯
一、算法概述贝叶斯算法是基于统计学的一种概率分类方法,而朴素贝叶斯是其中最简单的一种;朴素贝叶斯属于监督学习的算法之一,一般用来解决分类问题,我们之所以称之为"朴素",是因为整个形势化过程只做最原始、最简单的假设,即假设数据集所有的样本之间都是独立存在,互不影响的。用一个条件概率公式更好的理解这个假设条件,假设一个样本中有(a1、a2、a3、… an)共n个样本,若有P(a1,a2,a3,…,...原创 2020-03-25 16:13:21 · 740 阅读 · 2 评论 -
机器学习笔记(四)——决策树的构建及可视化
前文简介上一篇文章中主要介绍了以下几方面:决策树的简介决策树的流程熵的定义及如何计算熵信息增益的定义及如何计算信息增益依据信息增益划分数据集本文以一个新的数据集(隐形眼镜数据集)为基础实现构建决策树、决策树的保存与加载、利用决策树分类、决策树的可视化,前文的知识不在过多概述,着重介绍这四个方面。先大致了解一下数据集:这份数据源至UCI数据库,其共有4个特征分别为age(年龄...原创 2020-03-19 19:12:53 · 1839 阅读 · 0 评论 -
机器学习笔记(三)——搞懂决策树必备的信息增益
一、何为决策树决策树是监督学习算法之一,并且是一种基本的分类与回归方法;决策树也分为回归树和分类树,本文讨论的是分类树。如果了解或者学过数据结构,肯定对"树"这个概念是不陌生的,在此基础上学习掌握决策树也会更加容易,下面通过一个小例子帮助理解何为决策树。下图所示流程图即为一个决策树,矩形代表判断模块、椭圆形则代表终止模块,表示已经得出结论可以终止程序的运行;左右箭头表示分支,可以通过它到达另一...原创 2020-03-15 17:01:21 · 961 阅读 · 0 评论 -
机器学习笔记(二)——KNN算法之手写数字识别
简介手写数字识别是KNN算法一个特别经典的实例,其数据源获取方式有两种,一种是来自MNIST数据集,另一种是从UCI欧文大学机器学习存储库中下载,本文基于后者讲解该例。基本思想就是利用KNN算法计算出如下图一个32x32的二进制矩阵代表的数字是出于0-9之间哪一个数字。这份数据集呢...原创 2020-03-10 18:12:07 · 2993 阅读 · 4 评论 -
机器学习笔记(一)——KNN针对泰坦尼克号生存记录建模的两种方法
KNN算法原理本篇博客基于《机器学习实战》实现算法原理简要概括,重在代码实现k-近邻算法(kNN)的工作原理是:存在一个样本数据集合,称训练样本集,并且样本集中每个数据都存在标签,即样本集中每一数据与所属分类的对应关系。输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本集中特征最相似的数据(距离最近)的分类标签。如图,图中绿点的标签是未知的,但...原创 2020-03-06 18:08:50 · 1727 阅读 · 0 评论 -
《少年的你》短评情感分析——机器学习之逻辑回归
背景最近上映了一部国产青春剧——《少年的你》,票房已经破了14亿,从票房上看,这部电影在大陆制作的青春剧中比较成功,演员:易烊千玺+周冬雨,当然会引起一些流量效应,但是许多演员对这部电影的剧情、演员的演技评价颇好,包括自己的姐姐也非常喜欢;同时它也陷入了抄袭东野圭吾的《白夜行》和《嫌疑人X的献身》的热议,引起许多原著粉丝的不满。下面就利用逻辑回归(LogisticRegression)对《少年的...原创 2019-11-12 22:33:16 · 1460 阅读 · 0 评论 -
机器学习入门级实例——针对葡萄酒质量进行建模
数据背景本文数据取至于UCI——欧文大学机器学习数据库,是一个免费且十分好用的数据库,在学习机器学习时会接触一个基础的数据集——鸢尾花,就是欧文大学提供的,本文就是在一个名叫葡萄酒品质的数据集的基础上进行建模附上数据链接:数据集该数据集一个优点就是可以适用于分类和回归两种算法进行不同的建模,但是目的都为了预测葡萄酒的品质本文利用KNN、决策树、随机森林对数据进行建模数据处理库与工具i...原创 2019-11-06 09:18:47 · 13209 阅读 · 6 评论