python机器学习

吴恩达机器学习-逻辑回归

牧云@^-^@ 提交于 2019-11-30 22:52:25
1. 确定模型函数 首先明确逻辑回归的问题归属,逻辑回归属于分类问题,逻辑回归的分布属于多项式分布(包括二项分布,也叫伯努利分布)。这个笔记我们讨论二项分布的分类问题,通俗地讲二项分布是指我们要研究的问题只有两个结果,通常这两个结果为:是和否。我们一般喜欢用0和1分别代表否和是,那么什么样的函数能描述这样一种模型呢?这种函数模型叫sigmoid函数。 函数如下图所示: 函数的公式为 2. 确定代价函数 首先,我们假设分类结果为1的概率为 那么结果为0的概率为 将上述两个概率写为一个公式 假设输入特征值是独立随机分布的,那么我们可以通过计算极大似然值来确定当输入取x时,y的最可能取值 为了简化计算我们同时对两个式子取对数 以上是我们推导出代价函数的过程 3. 确定优化算法 我们在第二步计算出了代价函数,我们希望代价函数越大越好,借鉴梯度下降算法,我们可以给出参数的就计算公式: 下面给出代价函数的偏导数的证明过程 将偏导数带入到第一个公式,得出我们的梯度上升公式 在这里提出一个小问题,线性回归使用的梯度下降算法跟逻辑回归使用的梯度上升算法是同一个吗? 除了使用梯度上升算法来求解参数外,我们还可以适用牛顿算法来求解参数,牛顿法的核心是要求出一个Heassian矩阵,矩阵中每个元素的值为 可以从上面公式得出Heassian矩阵为代价函数矩阵的二阶导数 4. python代码实现

机器学习(一)——机器学习基础

你。 提交于 2019-11-30 17:14:48
机器学习实战(Peter Haarrington) 读书笔记 最近我脑海里总有一个声音,就是,去探索新的领域。在某方面的学习认知加深,会加大自己在知识领域的盲区,迫于工作压力,脑海总会对你说,你应该学习工作所需要的知识。但现实并无法界定什么知识是你工作真正需要的。类似在黑暗中去寻找一把钥匙,人的知识领域想要去寻找未知领域的钥匙,你将必定摸着黑去探索。 ————2019.9.29 一、机器学习基础 1.什么是机器学习? 机器学习简单来说是机器可以习得人的行为。 2.机器学习的关键术语? 鉴别鸟类,我们需要一些属性,如体重,翼展等。 那么,体重,翼展类别则是特征,鸟的种类则是目标变量 3.机器学习的主要任务? 使用多种算法来进行解决同一个事物。 类似: 1.监督学习 k-近邻算法 线性回归 朴素贝叶斯算法 局部加权线性回归 支持向量机 决策树 Ridge回归 Lasso最小回归系数统计 2.无监督学习 K-均值 最大期望算法 DBSCAN Parzen窗设计 类似,如果目标变量是离散型,则选择分类器算法。如果目标变量为连续型,则选择回归算法。 4.开发机器学习应用程序的步骤? 1.收集数据 2.准备输入数据 3.分析输入数据 4.训练算法 5.测试算法 6.使用算法 5.Python语言的优势? 1.语法清晰 2.容易操作文本文件 3.使用广泛,存在大量的开发文档 6

deep_learning_MNIST数据集

ぐ巨炮叔叔 提交于 2019-11-30 16:02:59
Code_link: https://pan.baidu.com/s/1dshQt57196fhh67F8nqWow 本文是为既没有机器学习基础也没了解过TensorFlow的码农、序媛们准备的。如果已经了解什么是MNIST和softmax回归本文也可以再次帮助你提升理解。在阅读之前,请先确保在合适的环境中安装了TensorFlow( windows安装请点这里 ,其他版本请官网找),适当编写文章中提到的例子能提升理解。 首先我们需要了解什么是“ MNIST ”? 每当我们学习一门新的语言时,所有的入门教程官方都会提供一个典型的例子——“Hello World”。而在机器学习中,入门的例子称之为MNIST。 MNIST是一个简单的视觉计算数据集,它是像下面这样手写的数字图片: 每张图片还额外有一个标签记录了图片上数字是几,例如上面几张图的标签就是:5、0、4、1。 本文将会展现如何训练一个模型来识别这些图片,最终实现模型对图片上的数字进行预测。 首先要明确,我们的目标并不是要训练一个能在实际应用中使用的模型,而是通过这个过程了解如何使用TensorFlow完成整个机器学习的过程。我们会从一个非常简单的模型开始——Softmax回归。 然后要明白,例子对应的源代码非常简单,所有值得关注的信息仅仅在三行代码中。然而,这对于理解TensorFlow如何工作以及机器学习的核心概念非常重要

【机器学习】PCA

半腔热情 提交于 2019-11-30 13:35:14
目录 PCA 1. PCA最大可分性的思想 2. 基变换(线性变换) 3. 方差 4. 协方差 5. 协方差矩阵 6. 协方差矩阵对角化 7. PCA算法流程 8. PCA算法总结 PCA PCA 就是找出数据最主要的方面,用数据里最主要的方面来代替原始数据。 PCA 是最重要的降维方法之一,在数据压缩、消除冗余和数据噪音消除等领域都有广泛的应用。 1. PCA最大可分性的思想 ​ 最大可分性: 样本点在超平面上的投影尽可能的分开 2. 基变换(线性变换) ​ 欲获得原始数据新的表示空间,最简单方法是对原始数据进行基变换(线性变换)。 3. 方差 ​ 如何选择一个方向或者基才是最优的?基于PCA最大可分思想,我们要找的方向是 降维后损失最小 ,可以理解为 投影后的数据尽可能分得开 ,而分散程度可以用数学上的方差来表示,因为 方差越大数据也就越分散 。 4. 协方差 ​ 在高维变换中,我们希望基变换后选择的各个方向(或者基)是不相关的,这样才能表示更多的信息。数学上使用协方差表示相关性: \[ Cov(a,b) = \frac{1}{m} \sum_{i=1}^{m}a_ib_i \] 如果 \(Cov(a,b)=0\) ,则表示两个字段完全独立,这也是我们的 优化目标 。 5. 协方差矩阵 ​ 我们想达到的 目标( \(Cov(a,b)=0\) ) 与 字段内方差 及 字段间协方差

Python 数据分析学习路线

六眼飞鱼酱① 提交于 2019-11-30 06:23:59
Python 数据分析学习路线 相关资料 概述 数据分析: 数据分析是指用适当利用统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。 分析数据,得到结果 学习路线 基础部分: 数学知识 Python基础知识 Python数据分析包使用 进阶部分: 网页爬虫 机器学习和深度学习 大数据 基础部分 数学 需要的知识主要为 《概率论与数理统计》 Python基础知识 由于只需要掌握计算部分的知识,Python 的基础知识需要了解以下内容: 基本语法 数据类型和变量 条件语句和循环语句 函数和模块的概念 Python数据分析包 主要掌握 Python 相关数据分析包的使用,三剑客: numpy pandas matplotlib 参考的书为《利用 Python 进行数据分析》 进阶部分 网页爬虫 《Python3网络爬虫开发实战》崔庆才 机器学习和深度学习 学习SQL,这是数据分析最基础的能力 大体上掌握各类算法原理以及如何利用机器学习包 理论书籍: 《机器学习》, 周志华 《统计学习方法》, 李航 机器学习包: scikit-learn 是一个机器学习库,可以对数据进行分类,回归,无监督,数据降维,数据预处理等等,包含了常见的大部分机器学习方法。 深度学习就是各种神经网络如何解算的问题。 大数据 Hadoop 权威指南 来源: https

干货大锦集(Python、AI、Java、大数据、区块链)

别等时光非礼了梦想. 提交于 2019-11-30 04:51:50
Python Python3入门经典100例 https://blog.csdn.net/weixin_41084236/article/details/81564963 搭建 LEGO EV3 的 PyCharm Python 开发环境 https://blog.csdn.net/tq08g2z/article/details/83659827 Python函数参数定义 https://blog.csdn.net/u010852680/article/details/77848570 用Python给女友 准备个绝对甜蜜的七夕礼物 https://blog.csdn.net/cainiao_python/article/details/98697669 5天破10亿的哪吒,为啥这么火,Python来分析 https://blog.csdn.net/cainiao_python/article/details/98139777 用Python来预测双色球 https://blog.csdn.net/cainiao_python/article/details/97723335 Inception_V3原理及实现 https://blog.csdn.net/m0_37917271/article/details/82344711 用Python控制LEGO Wedo 2.0的电机

Python3入门机器学习 经典算法与应用(网盘免费分享)

瘦欲@ 提交于 2019-11-30 03:37:42
Python3入门机器学习 经典算法与应用(网盘免费分享) 部分课程学习资料截图: 免费课程资料领取目录: Python Flask构建微信小程序订餐系统 (网盘免费分享) Python分布式爬虫必学框架Scrapy打造搜索引擎(网盘免费分享) Python3实战Spark大数据分析及调度 (网盘免费分享) Python Flask高级编程之RESTFul API前后端分离精讲 (网盘免费分享) 链接:https://pan.baidu.com/s/1rB7h53iNOweyqWTZXQv4cg 提取码:o9el ps:免费分享,如若链接失效请加群( 注意是免费免费免费分享 ) 私聊管理员即可免费领取;群——517432778,点击加群,或扫描二维码 第1章 欢迎来到 Python3 玩转机器学习 欢迎大家来到《Python3玩转机器学习》的课堂。在这个课程中,我们将从0开始,一点一点进入机器学习的世界。本门课程对机器学习领域的学习,绝不不仅仅只是对算法的学习,还包括诸如算法的评价,方法的选择,模型的优化,参数的调整,数据的整理,等等一系列工作。准备好了吗?现在开始我们的机器学习之旅!... 1-1 什么是机器学习 试看 1-2 课程涵盖的内容和理念 试看 1-3 课程所使用的主要技术栈 试看 第2章 机器学习基础 机器学习到底是什么鬼?这一章将带领大家深入理解机器学习的世界

很不错的python 机器学习资源

混江龙づ霸主 提交于 2019-11-30 00:31:35
Python基础: 网络教程推荐: 系统学习python3可以看 廖雪峰老师的教程 : 教程地址: 点击查看 2. 系统学完也不一定记得很清楚,这时我们需要一个快速的查询手册, 菜鸟教程 是一个不错的选择: 教程地址: 点击查看 3. 快速掌握知识的一个方法就是多加练习,对于初学者一味的做练习题显得过于枯燥, 实验楼 可以帮助你,找到你感兴趣的小实验: 学习地址: 点击查看 SQL基础 可能有的朋友会问,我学网路爬虫,学机器学习,跟SQL有关系吗?答案是有的,对于网络爬虫而言,一个数据持久化的好方法就是将爬取到的数据入库,方便后续分析处理。而对于机器学习而言,SQL更是必须掌握的技能,我们都知道,机器学习算法工程师的很大一部分工作就是做数据清洗和特征工程等数据预处理的工作,数据预处理的的好坏直接影响模型的最终精度。因此,作为数据预处理的得力助手SQL语言,我们必须好好掌握。 网络教程推荐: 我还是感觉, 菜鸟教程 是一个不错的选择,指令查询起来很方便,推荐给大家。 教程地址: 点击查看 书籍资源推荐: 1.想要系统学习SQL的,可以看下《 SQL必知必会 》,这本书还是蛮有名的(密码: hpfe): 点击下载 算法入门 书籍资源推荐: 1. 对于非科班出身的人来说,补充下算法基础还是很有必要的,不过枯燥的算法可能打消很多人的积极性,《 算法图解 》(python)图文并茂,通俗易懂

利用已有的大数据技术,如何构建机器学习平台

冷暖自知 提交于 2019-11-30 00:20:16
作者 | 冯煜策 编辑| Vincent AI前线出品| ID:ai-front 编者按:随着AI技术进一步发展,它将与越来越多的传统行业结合。作为新兴技术,AI的人才市场开始出现供不应求,新技术总有一定的壁垒,需要自我学习和用项目实践来掌握。技术的更替常常猝不及防,例如现在的TensorFlow和前两年Spark,刚掌握好能熟练运用Spark了,主流又开始跟进TensorFlow了。技术人需要学习成本,企业项目开发也要考虑新技术采纳时间。有什么办法能在企业已有的大数据平台经验基础上进行AI开发?同程利用Spark对机器学习平台的思考和实现过程值得借鉴。 机器如何学习? 人脑具备不断积累经验的能力,依赖经验我们便具备了分析处理的能力,比如我们要去菜场挑一个西瓜,别人或者自己的经验告诉我们色泽青绿、根蒂蜷缩、纹路清晰、敲声浑响的西瓜比较好吃。 我们具备这样的能力,那么机器呢?机器不是只接收指令,处理指令吗?和人脑类似,可以喂给机器历史数据,机器依赖建模算法生成模型,根据模型便可以处新的数据得到未知属性。以下便是机器学习与人脑归纳经验的类别图: 平台设想 在同程内部,我们对应用机器学习的一些团队做了了解,发现他们普遍的处理步骤如下: 这个过程中存在一些痛点: 线上数据到线下搬运耗时 训练数据量难均衡,如果训练数据量较大,用 R 或者 Python 做单机训练将会非常耗时

Java第三方工具库/包汇总

一个人想着一个人 提交于 2019-11-29 21:33:54
一、科学计算或矩阵运算库 科学计算包: JMathLib 是一个用于计算复杂数学表达式并能够图形化显示计算结果的Java开源类库。它是Matlab、Octave、FreeMat、Scilab的一个克隆,但完全采用纯Java实现。 JSci :Java 科学对象(JSci)开放源代码项目是 Durham(英国 Durham)大学粒子理论中心的三年级研究生 Mark Hale 创立的。JSci 是一个包集合,包含数学和科学类。 使用 JSci,您既可以在 AWT 中也可以在 Swing 中创建简单的条形图、折线图和饼形图。 JSci.swing.JBarGraph 、 JSci.swing.JPieChart 和 JSci.swing.JLineGraph API 组件设计得也很好,这些组件和 AWT 绘图类都遵守 MVC 体系结构。 JScience : http://jscience.org/ JScience 是一个Java的科学计算包 jLab :jLab是数值计算的Java执行环境。该jLab环境的目的是提供一个基于Matlab / Scilab喜欢的科学计算平台所支持的脚本引擎执行的Java语言。 The current jLab ND4J :在JVM上实现快速的科学计算;ND4J是一个开源的数值计算扩展 ,它将 Python中著名的 numpy