监督学习

监督学习算法1: K-近邻(KNN)

自古美人都是妖i 提交于 2020-01-18 05:28:58
先解释几个概念 机器学习主要分为:监督学习和无监督学习。 · 监督学习: 从已知类别的数据集中学习出一个函数,这个函数可以对新的数据集进行预测或分类,数据集包括特征值和目标值,即有标准答案;常见算法类型可以分为:分类和回归。 分类问题常见算法:K-近邻(KNN)、朴素贝叶斯、决策树、随机森林、逻辑回归、神经网络 回归常用于预测,比如房价,常见算法:线性回归、岭回归 · 无监督学习: 与监督学习的主要区别是,数据集中没有人为标注的目标值,即没有标准答案;常见算法有:聚类,生成对抗网络。 K-近邻算法 这是机器学习中最简单的一个算法,先看定义 定义:如果一个样本与特征空间中的K个样本 距离 最近,这K个样本中的大多数属于A类别,那么该样本也属于A类别。 通俗说就是通过你最近的K个邻居来求出你的类别; 比如现在要求你所在的区域,A在朝阳区,B在海淀区,C在海淀区,D在房山区,你与ABC的距离分别是:20,28,23,35;K值取3,那么这三个离你最近的邻居是A、B、C,这三个中有两个属于海淀区,按照K-近邻算法,你所在的区域就是海淀区;如果K取1,就是朝阳区; 由此也说明了K近邻算法的结果很大程度上受K取值的影响,通常K值取不大于20的整数。 K-近邻中的距离如何计算? 这里的距离一般使用欧式距离,公式如下: 比如有两个样本:A (a1,a2,a3) ,B (b1,b2,b3)

task1-机器学习概述

别等时光非礼了梦想. 提交于 2020-01-18 02:16:32
机器学习综述 机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径. A computer program is said to learn from experience E with respect to some task T and performance measure P, if its performance on T, as measured by P, improves with experience E. 一个程序被认为能够从经验E中学习,解决任务T,达到性能度量值P,当且仅当,有了P的评判后,程序在处理T时的性能有所提升。下棋游戏中,经验e就是程序上万次的自我练习的经验而任务t就是下棋。性能度量值p就是与新的对手比赛时赢的比赛的概率。 一、机器学习分类 监督学习 supervised learning(每个样本都有对应的正确答案,如回归问题) 监督学习是指利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。在监督学习的过程中会提供对错指示,通过不断地重复训练,使其找到给定的训练数据集中的某种模式或规律,当新的数据到来时

机器学习-最小二乘法

女生的网名这么多〃 提交于 2020-01-16 01:51:46
最小二乘法是机器学习中的基础知识点,一致对最小二乘法的理解不够深入,今天就花点时间来深入理解和探讨一下最小二乘法 最小二乘法,又称最小平方法,基本公式通俗来讲,二者先取个差值,在来个平方,最后搞一个和号上去,这就是最小二乘问题的思想,下面介绍下 最小二乘法 我们以最简单的一元线性模型来解释最小二乘法。什么是一元线性模型呢? 监督学习中,如果预测的变量是离散的,我们称其为分类(如决策树,支持向量机等),如果预测的变量是连续的,我们称其为回归。回归分析中,如果只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。对于二维空间线性是一条直线;对于三维空间线性是一个平面,对于多维空间线性是一个超平面... 对于一元线性回归模型, 假设从总体中获取了n组观察值(X1,Y1),(X2,Y2), …,(Xn,Yn)。对于平面中的这n个点,可以使用无数条曲线来拟合。要求样本回归函数尽可能好地拟合这组值。综合起来看,这条直线处于样本数据的中心位置最合理。 选择最佳拟合曲线的标准可以确定为:使总的拟合误差(即总残差)达到最小。有以下三个标准可以选择: (1)用“残差和最小”确定直线位置是一个途径。但很快发现计算“残差和”存在相互抵消的问题。 (2)用

Softmax回归

醉酒当歌 提交于 2020-01-14 04:56:31
简介 在本节中,我们介绍Softmax回归模型,该模型是logistic回归模型在多分类问题上的推广,在多分类问题中,类标签 可以取两个以上的值。 Softmax回归模型对于诸如MNIST手写数字分类等问题是很有用的,该问题的目的是辨识10个不同的单个数字。Softmax回归是有监督的,不过 后面也会介绍它与深度学习/无监督学习方法的结合。(译者注: MNIST 是一个手写数字识别库,由NYU 的Yann LeCun 等人维护。 http://yann.lecun.com/exdb/mnist/ ) 回想一下在 logistic 回归中,我们的训练集由 个已标记的样本构成: ,其中输入特征 。(我们对符号的约定如下:特征向量 的维度为 ,其中 对应截距项 。) 由于 logistic 回归是针对二分类问题的,因此类标记 。假设函数(hypothesis function) 如下: 我们将训练模型参数 ,使其能够最小化代价函数 : 在 softmax回归中,我们解决的是多分类问题(相对于 logistic 回归解决的二分类问题),类标 可以取 个不同的值(而不是 2 个)。因此,对于训练集 ,我们有 。(注意此处的类别下标从 1 开始,而不是 0)。例如,在 MNIST 数字识别任务中,我们有 个不同的类别。 对于给定的测试输入 ,我们想用假设函数针对每一个类别j估算出概率值

《转》Logistic回归 多分类问题的推广算法--Softmax回归

*爱你&永不变心* 提交于 2020-01-12 18:50:00
转自 http://ufldl.stanford.edu/wiki/index.php/Softmax%E5%9B%9E%E5%BD%92 简介 在本节中,我们介绍Softmax回归模型,该模型是logistic回归模型在多分类问题上的推广,在多分类问题中,类标签 可以取两个以上的值。 Softmax回归模型对于诸如MNIST手写数字分类等问题是很有用的,该问题的目的是辨识10个不同的单个数字。Softmax回归是有监督的,不过后面也会介绍它与深度学习/无监督学习方法的结合。(译者注: MNIST 是一个手写数字识别库,由NYU 的Yann LeCun 等人维护。 http://yann.lecun.com/exdb/mnist/ ) 回想一下在 logistic 回归中,我们的训练集由 个已标记的样本构成: ,其中输入特征 。(我们对符号的约定如下:特征向量 的维度为 ,其中 对应截距项 。) 由于 logistic 回归是针对二分类问题的,因此类标记 。假设函数(hypothesis function) 如下: 我们将训练模型参数 ,使其能够最小化代价函数 : 在 softmax回归中,我们解决的是多分类问题(相对于 logistic 回归解决的二分类问题),类标 可以取 个不同的值(而不是 2 个)。因此,对于训练集 ,我们有 。(注意此处的类别下标从 1 开始,而不是 0)

07逻辑回归、非监督学习

混江龙づ霸主 提交于 2020-01-11 16:30:54
一.逻辑回归 解决二分类问题的利器,算法自动分为0和1,比如设广告被点击为1,不被点击为0。 sigmoid函数: 1.公式 输出:[0,1]区间的概率值,默认0.5作为阀值 注:g(z)为sigmoid函数 2. 对数似然损失函数 1) cost损失的值越小,那么预测的类别准确度更高 2) 出现的问题:多个局部最⼩小值,目前解决不了 l 梯度下降求解 1) 多次随机初始化,多次⽐比较最⼩小值结果 2) 求解过程当中,调整学习率 尽量量改善。尽管没有全局最低点,但是效果都是不不错的 3.API sklearn.linear_model.LogisticRegression sklearn.linear_model.LogisticRegression( penalty=‘l2’, C = 1.0 ) Logistic回归分类器 coef_:回归系数 在实际使用时,对于目标值来说,哪⼀一个类别少,判定概率值是指的这个类别,即1为属于目标值所属类别较少的类别。 4.优缺点 1) 应用:广告点击率预测、电商购物搭配推荐 2) 优点:适合需要得到一个分类概率的场景 3) 缺点:当特征空间很大时,逻辑回归的性能不是很好(看硬件能力) 5.实例代码 def logistic(): """ 逻辑回归做二分类进行癌症预测(根据细胞的属性特征) :return: NOne """ # 构造列标签名字

Python KNN算法

僤鯓⒐⒋嵵緔 提交于 2020-01-09 05:00:11
  机器学习新手,接触的是《机器学习实战》这本书,感觉书中描述简单易懂,但对于python语言不熟悉的我,也有很大的空间。今天学习的是k-近邻算法。    1. 简述机器学习   在日常生活中,人们很难直接从原始数据本身获得所需信息。 而机器学习就是把生活中无序的数据转换成有用的信息。 例如,对于垃圾邮件的检测,侦测一个单词是否存在并没有多大的作用,然而当某几个特定单词同时出现时,再辅以考虑邮件的长度及其他因素,人们就可以更准确地判定该邮件是否为垃圾邮件。   机器学习分为 监督学习 和 无监督学习 ,其中:   (1) 监督学习: 包含分类和回归。分类,是将实例数据划分到合适的分类中。回归,主要用于预测数值形数据。因为这类算法必须知道预测什么,即目标变量的分类信息,所以称为监督学习。   (2) 无监督学习 :此时数据没有类别信息,不能给定目标值。在无监督学习中,将数据集合分成由类似的对象组成的多个类的过程称为 聚类 ,将寻找描述数据统计值的过程称为 密度估计 ,此外,无监督学习还可以减少数据特征的维度,以便我们可以使用二维或三维图形更加直观地展示数据信息。   以下是机器学习的主要算法:   监督学习: k-近邻算法(KNN) ,朴素贝叶斯算法,支持向量机(SVM),决策树        线性回归,局部加权线性回归,Ridge回归,Lasso最小回归系数估计   无监督学习:K

第一章:机器学习基础

∥☆過路亽.° 提交于 2020-01-08 04:23:38
第一部分:分类 本书前两部分主要探讨监督学习(supervisedieaming)。在监督学习的过程中,我们只需要给定 输入样本集 ,机器就可以从中推演出指定 目标变量 的可能结果。监督学习相对比较简单,机器只需从输入数据中 预测合适的模型 ,并从中 计算出目标变量的结果 。 监督学习一般使用两种类型的目标变量:标称型和数值型。标称型目标变量的结果只在有限目标集中取值,如真与假、动物分类集合{爬行类、鱼类、哺乳类、两栖类、植物、真菌};数值型目标变量则可以从无限的数值集合中取值,如0.100、42.001、000.743等。 数值型目标变量主要用于回归分析 ,将在本书的第二部分研究, 第一部分主要介绍分类 。 本书的前七章主要研究分类算法,第2 章讲述最简单的分类算法:k-近邻算法,它使用距离矩阵进行分类;第3 章引入了决策树,它比较直观,容易理解,但是相对难于实现;第4 章将讨论如何使用概率论建立分类器;第5 章将讨论Logistic 回归,如何使用最优参数正确地分类原始数据,在搜索最优参数的过程中,将使用几个经常用到的优化算法;第6 章介绍了非常流行的支持向量机;第一部分最后的第7 章将介绍元算法— AdaBoost, 它由若干个分类器构成,此外还总结了第一部分探讨的分类算法在实际使用中可能面对的非均衡分类问题,一旦训练样本某个分类的数据多于其他分类的数据

2016-Structural Deep Network Embedding

那年仲夏 提交于 2020-01-07 14:39:24
文章目录 ABSTRACT 1. INTRODUCTION 2. RELATED WORK 2.1 Deep Neural Network 2.2 Network Embedding 3. STRUCTURAL DEEP NETWORK EMBEDDING 3.1 Problem Definition 3.2 The Model 3.2.1 Framework 3.2.2 Loss Functions 3.2.3 Optimization 3.3 Analysis and Discussions 4. EXPERIMENTS 4.1 Datasets 4.2 Baseline Algorithms 4.3 Evaluation Metrics 4.4 Parameter Settings 4.5 Experiment Results 4.5.1 Network Reconstruction 4.5.2 Multi-label Classification 4.5.3 Link Prediction 4.5.4 Visualization 4.6 Parameter Sensitivity 5. CONCLUSIONS ABSTRACT    网络嵌入是学习网络中顶点的低维表示的一种重要方法,旨在捕获和保留网络结构。几乎所有现有的网络嵌入方法都采用浅层模型。但是

机器学习算法—KNN算法原理

人走茶凉 提交于 2020-01-07 02:49:50
机器学习算法—KNN算法原理 概述: KNN算法一般也会经常被称为K邻近算法,其核心思想是根据训练集中的样本分类计算测试集中样本与训练集中所有样本的距离,根据所设定的K值选取前K个测试样本与训练样本最近的结果,结果中大多数训练样本所处在的类别即是本测试样本的类别。因训练样本的分类结果为已知因此KNN算法属于有监督学习算法。 算法原理: 1、以下图样本散点图展示训练集的整体分布情况 从散点图中可以发现训练集的数据分类数量为3个类别,分别为蓝色类别、红色类别和黄色类别,训练样本总数为15个。 2、导入第一个测试样本 3、需要根据已知的训练样本分类结果判断测试样本的类别,因此计算测试样本与所有训练样本的距离 因训练样本数量为15,所以计算完成的距离参数为15个。 4、K值是KNN算法中唯一需要设定的参数,假定K值为3则在15个距离参数中选择最近的3个 统计3个距离中大部分训练样本所处的分类即为本测试样本的分类,本次分类中距离最近的3个训练样本有2个属于红色类别,因此本测试样本被分类为红色 5、对下一个测试样本以相同方式进行距离计算和分类 注意事项: 1、K的取值尽量为奇数以确保距离计算结果必定会有一个K个距离中包括较多的类别,比如例子中取3,则3个中有2个训练样本为红色类别以此判断测试样本属于红色类别。如K取4产生下图中的情况 4个距离参数中,2个训练样本为红色类别