sklearn 安装_初识sklearn

c79c0d667c76cf7a92420ef50a5b03a1.png

我的主业是互联网运营,业余的python爱好者,学习python已经快两年,主攻网络爬虫与数据分析,爬虫能使用代理ip、打码平台、OCR识别、基本的js逆向处理反爬;数据分析主要使用pandas与pyecharts进行可视化,我的部分案例:

8807c7250643ba8526dc7cd9e2a14e87.png

但数据存在的终极意义也许并非在最后的可视化,而在于利用大数据进行预测,为运营决策提供帮助,因此萌生学习机器学习的念头,我会在此记录我学习sklearn的整个过程,用自己的理解与思路进行记录,希望能帮到和我一样的小白,也给自己做个备忘录。我会在公众号:新青年TALKS,同步更新。

机器学习简介[1]

机器学习是人工智能的一个分支。人工智能的研究历史有着一条从以“推理”为重点,到以“知识”为重点,再到以“学习”为重点的自然、清晰的脉络。显然,机器学习是实现人工智能的一个途径,即以机器学习为手段解决人工智能中的问题。机器学习在近30多年已发展为一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。很多推论问题属于无程序可循难度,所以部分的机器学习研究是开发容易处理的近似算法。

sklearn简介

scikit-learn 是基于 Python 语言的机器学习工具[2]

  • 简单高效的数据挖掘和数据分析工具
  • 可供大家在各种环境中重复使用
  • 建立在 NumPy ,SciPy 和 matplotlib 上
  • 开源,可商业使用 - BSD许可证

学习理论

  • 监督学习
    • 就是给机器一堆数据,并告诉它这堆数据对应的准确结果,让它学会自己分辨。
      • 比如:一堆猫和狗的照片给机器,告诉它哪些是猫,哪些是狗,下次有新的图片时就能自己分辨出来。
  • 非监督学习
    • 只给数据,不给结果
      • 比如:一堆猫和狗的照片给机器,不告诉他哪些是猫,哪些是狗,但它自己会分为A类和B类,下次有新照片会自动分类。

安装sklearn

pip install -U scikit-learn

sklearn官方案例(鸢尾花)

官方提供了初学者使用的鸢尾花数据,先看数据长什么样

from sklearn import datasets # 引入数据print(datasets.load_iris())# 查看数据集

5087ed072f74a309fe121b4c19e663bf.png

78f67bdda72bcbbed9589e44601204af.png

主要分为两个部分,data和target,都是ndarray类型,data是特征变量,target是目标值。简单来说,data是不同鸢尾花类型的特征(花瓣长度宽度啥的),target是类型的分类,0是一类,1是一类,2是一类。所以这个案例是给机器一堆特征值,告诉它对应的目标值,然后测试学习结果。这是一种监督学习。

下面需要在整个数据集里分出训练集和测试集,sklearn有自己的方法(下面默认已经执行上面的步骤)

from sklearn.model_selection import train_test_split #将数据分为测试集和训练集
iris = datasets.load_iris() #引入iris鸢尾花数据
iris_x = iris.data #特征变量
iris_y = iris.target #目标值
x_train,x_test,y_train,y_test=train_test_split(iris_x,iris_y,test_size=0.3) #利用train_test_split进行将训练集和测试集进行分开,test_size占30%

随后建议你自己分别打印x_train(特征变量训练数据),x_test(特征变量测试数据),y_train(目标值训练数据),y_test(目标值测试数据)看下结果。

下面将训练集数据交给机器

from sklearn.neighbors import KNeighborsClassifier
knn = KNeighborsClassifier() #引入训练方法,这是种分类学习方法,称为k近邻分类
knn.fit(x_train,y_train) #进行填充测试数据进行训练

因为是个入门案例,我只需要知道KNeighborsClassifier这个东西是一种训练模型,能进行分类训练,fit方法是将特征值和其对于的目标值放一起训练。其他模型或原理也许后面会学到。

经过以上步骤机器已经学会分类,下面进行测试

print(knn.predict(x_test))

查看真实目标值

print(y_test)

会发现只有一处不同。

据说弄懂这个案例就是机器学习入门了,说实话,我觉得我行了。

我已经开始学习特征工程(就是将能够影响结果的因素进行特征化,因为机器只认识数字不认识文字),特征工程是影响机器学习最终预测结果的重要因素,根据费曼学习法,我会在自认为学的差不多时再更新,找到自己的不足。

参考

  1. ^https://zh.wikipedia.org/wiki/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0
  2. ^http://scikitlearn.com.cn/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/266413.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2018.08.02 hdu1558 Segment set(并查集+计算几何)

传送门 这个直接用并查集维护。 每加入一条线段就将它与其他能相交的集合合并&#xff0c;维护一个sizesize域表示每个集合的大小。 代码&#xff1a; #include<bits/stdc.h> #define eps 1e-15 using namespace std; int t,fa[1005],n,siz[1005],cnt; struct pot{dou…

全国计算机等级考试题库二级C操作题100套(第45套)

第45套&#xff1a; 函数fun的功能是&#xff1a;把形参a所指数组中的偶数按原顺序依次存放到a[0]、 a[1]、a[2]、……中&#xff0c;把奇数从数组中删除&#xff0c;偶数个数通过函数值返回。例如&#xff1a; 若a所指数组中的数据最初排列为&#xff1a;9、1、4、2、3、6、5…

java singleton inner class_关于java:Singleton设计模式实现

我看到了不同种类的singleton类实现。然而&#xff0c;这个特定的实现&#xff1a;https://sourcemaking.com/design_patterns/singleton/java/1不在私有构造函数中创建对象。有人能解释一下&#xff0c;这两种实现之间的优缺点是什么吗&#xff1f;给出的描述是最小的&#xf…

python中import os_python import osgeo.gdal出错

用anaconda安装的python和各种包&#xff0c;linux和windows下都有&#xff0c;其中前者是2.7版本&#xff0c;而后者是3.x&#xff0c;用conda install gdal安装gdal包之后&#xff0c;当运行from osgeo import gdal​时出现了各种问题。 windows下的问题​ ​ImportError Tra…

全国计算机等级考试题库二级C操作题100套(第46套)

第46套&#xff1a; 给定程序中&#xff0c;函数fun的功能是&#xff1a;利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序&#xff0c;并输出排序结果。ss所指字符串数组中共有N个字符串&#xff0c;且串长小于M。 请在程序的下划线处填入正确的内容并把下…

java删除一级域名下cookie_java操作cookie示例(删除cookie)

1.设置Cookie代码如下:Cookie cookie new Cookie("key", "value");cookie.setMaxAge(60);设置60秒生存期&#xff0c;如果设置为负值的话&#xff0c;则为浏览器进程Cookie(内存中保存)&#xff0c;关闭浏览器就失效。代码如下:cookie.setPath("/tes…

[工具库]JOJSONBuilder工具类——一键把多个bean对象数据转换为JSON格式数据

本人大四即将毕业的准程序员&#xff08;JavaSE、JavaEE、android等&#xff09;一枚&#xff0c;小项目也做过一点&#xff0c;于是乎一时兴起就写了一些工具。 我会在本博客中陆续发布一些平时可能会用到的工具。 代码质量可能不是很好&#xff0c;大家多担待&#xff01; 代…

mysql long类型_怒肝两个月MySQL源码,我总结出这篇2W字的MySQL协议详解(超硬核干货)!!...

点击上方蓝色“冰河技术”&#xff0c;关注并选择“设为星标”持之以恒&#xff0c;贵在坚持&#xff0c;每天进步一点点&#xff01;作者个人研发的在高并发场景下&#xff0c;提供的简单、稳定、可扩展的延迟消息队列框架&#xff0c;具有精准的定时任务和延迟队列处理功能。…

状压dp之二之三 炮兵阵地/玉米田 By cellur925

一、简单的状压dp 玉米田 题目描述 Farmer John has purchased a lush new rectangular pasture composed of M by N (1 ≤ M ≤ 12; 1 ≤ N ≤ 12) square parcels. He wants to grow some yummy corn for the cows on a number of squares. Regrettably, some of the squares…

服务器php 启动命令_服务端的cli方式运行

既然是结合tp5&#xff0c;咱当然要借鉴tp5的优势# tp5自定义命令行这个需要自己看tp5的官方文档&#xff0c;直接搜索就能找到&#xff0c;自己添加command.php文件&#xff0c;我的如下~~~/*** Time: 13:55*/return [iss\crontab\command\IssServer,iss\crontab\command\IssC…

全国计算机等级考试题库二级C操作题100套(第47套)

第47套&#xff1a; 给定程序中&#xff0c;函数fun的功能是&#xff1a;找出形参s所指字符串中出现频率最高的字母&#xff08;不区分大小写&#xff09;&#xff0c;并统计出其出现的次数。 例如&#xff0c;形参s所指的字符串为&#xff1a;abcAbsmaxless&#xff0c;程序执…

android调用照相机拍照获取照片并做简单剪裁

1.调用系统的照相机程序 Intent intent new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, TAKE_PHOTO_WITH_DATA); 2.在onActivityResult中处理返回的data final Bitmap photo data.getParcelableExtra("data"); 如果不需要做剪切处…

用户id可以出现在url中吗_下载Google Drive中的文件

通过Python下载Google Drive中的文件的代码如下&#xff1a;download_googledrive.pyimport

LockSupport的源码实现原理以及应用

一、为什么使用LockSupport类 如果只是LockSupport在使用起来比Object的wait/notify简单&#xff0c; 那还真没必要专门讲解下LockSupport。最主要的是灵活性。 上边的例子代码中&#xff0c;主线程调用了Thread.sleep(1000)方法来等待线程A计算完成进入wait状态。如果去掉Thr…

php网址变量怎么输出,【PHP网站】如何使用dedecms v5.7前台模版里输出变量

dedecmsv5.7是PHP网站内容管理系统&#xff0c;本篇文章将介绍如何使用dedecmsv5.7 前台模版来输出变量&#xff0c;具有一定参考意义&#xff0c;感兴趣的朋友了解一下吧。如何在PHP文件查询出来的数据赋值给前端页面展示出来&#xff1f;例如&#xff1a;PHP文件&#xff1a;…

全国计算机等级考试题库二级C操作题100套(第48套)

第48套&#xff1a; 给定程序中&#xff0c;函数fun的功能是&#xff1a;将形参s所指字符串中的数字字符转换成对 应的数值&#xff0c;计算出这些数值的累加和作为函数值返回。 例如&#xff0c;形参s所指的字符串为&#xff1a;abs5def126jkm8&#xff0c;程序执行后的输出结…

Nginx内核参数相关的优化设定

Nginx内核参数在使用的时候有不少问题需要我们解决&#xff0c;其中在优化方面就需要我们格外的注意。在下面就是对Nginx内核参数优化的详细介绍&#xff0c;希望大家有所收获。 关于Nginx内核参数的优化&#xff1a; net.ipv4.tcp_max_tw_buckets 6000 timewait的数量&#x…

python3 爬虫 requests安装_BOSS直聘招聘信息获取之爬虫工具分析

点击蓝色“不太灵光的程序员”关注我哟加个“星标”&#xff0c;每天上午 09:30&#xff0c;干货推送&#xff01;文中使用的组件库仅限于Python语言&#xff0c;由于最近收到一些同学的留言说&#xff0c;按照网上的教程一步一步的学习&#xff0c;却频繁的出现报错&#xff0…

假期周进度总计(四)

本周学习利用OEM工具创建删除表以及对表内数据进行增删改查的操作 一切均通过此工具进行&#xff0c;然后还学到了用SQL *Plus进行相应操作 本周每天4.5个小时&#xff0c;出现的错误就是点击的误操作&#xff0c;可以改正&#xff0c;下周进一步学习Oracle基本操作转载于:http…

Java集合框架(3)

Map(和Collection<E>一样都是集合框架的顶层接口) |--Hashtable:底层是哈希表数据结构&#xff0c;不可以用null对象作为键或值。它是线程同步的。 |--HashMap&#xff1a;底层是哈希表。允许使用null键null值&#xff0c;该集合是不同步的&#xff0c;效率高&#xff0c…