【机器学习工具库-一-传统机器学习sklearn库】

news/2024/9/18 14:54:44/ 标签: 机器学习, sklearn, 人工智能

sklearn

  • 安装
    • 安装顺序
  • sklearn库的六大功能
  • sklearn中的核心调用流程

sklearn库是用于机器学习一个工具包,有了它,可以帮我们用简单的函数实现传统机器学习中的分类、聚类等任务。

安装

sklearn的官网 http://scikit-learn.org/stable/
sklearn库基于Numpy、Scipy、matplotlib开发,因此需要先安装这些依赖。

安装顺序

Numpy是一个开源的python科学计算库,scipy是基于numpy集成的各种函数库,matplotlib是一个绘图工具,可以按照Numpy Scipy库 matplotlib、sklearn库的顺序安装。
注意sklearn的安装是 pip install scikit-learn

sklearn_11">sklearn库的六大功能

正如sklearn自己官网中写的,它的六大功能是:分类、回归、聚类、降维、模型选择、预处理
在这里插入图片描述

列举了几种sklearn中的数据集(这个是较早版本的,仅举例示意),分别可以用于上述几个功能。

序号数据集适用算法加载方法
1波斯顿房价回归laod_boston
2鸢尾花分类load_iris()
3糖尿病回归laod_diabetes()
4手写数字分类load_digits()
5olivetti脸部数据降维fetch_olivertti_faces
6新闻分类分类fetch_20newsgroup
7带标签的人脸数据分类、降维fetch_tfw_people()
8路透社新闻分类fetch_rev1()

这些数据集不需要记住,从网站user Guid找到dataset,就可以找到全部的了,且这块随着版本的提升,也一直在做迭代更新:
在这里插入图片描述

当然这六大功能实际上内容是互相交叉的,比如很多模型既能做回归又能做分类,所以模型的选择也决定了它能作什么样子的功能。

sklearn_31">sklearn中的核心调用流程

sklearn中的核心调用流程一般是:从数据集获取数据-》切分数据集(为了训练和测试分开用)-》模型选择和训练-》预测-》计算损失-》可视化,下面是一个简单的例子,后续会详细讲解。下面的例子没有获取和切分数据集,后续也会介绍这部分,这地方仅随机构造一个数据集,测试下核心功能

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_errornp.random.seed(20)def arraygenreg():x = np.linspace(-10, 10, 100)y = 2*x + np.random.normal(0, 0.1, 100)return x, yfeatures, labels = arraygenreg()
features = features.reshape(-1, 1)
print(labels.shape)
#训练模型
model = LinearRegression()
model.fit(features, labels)
#自变量
print(model.coef_)
#截距
print(model.intercept_)#预测
x = np.array([20, 30, 40]).reshape(-1, 1)
y = model.predict(x)
print('labels:{}, target:{}, loss:{}', x, y, mean_squared_error(x, y))#可视化
plt.scatter(features, labels)
plt.scatter(x, y)
plt.show()

http://www.ppmy.cn/news/1516505.html

相关文章

【C++ 面试 - 内存管理】每日 3 题(二)

✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/fYaBd 📚专栏简介:在这个专栏中,我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏&…

Django后端架构开发:Nginx服务优化实践

Django后端架构开发:Nginx服务优化实践 目录 🌟 Nginx核心概念🔍 Nginx服务原理🔄 Nginx负载均衡🔗 Nginx反向代理⚙️ Nginx动静分离 🌟 Nginx核心概念 Nginx作为一款轻量级且功能强大的HTTP服务器&…

分布式性能测试-通篇讲解 Locust 性能测试

分布式性能测试-小试牛刀 Locust 分布式负载生成概述 Locust 支持分布式负载生成,以模拟更高的并发负载。你可以通过以下方式来配置和使用分布式模式: 1. 基本概念 Master 实例:管理整个负载测试,运行 Locust 的 Web 界面,并协调各个 Worker 的任务。Worker 实例:实际…

思特威-秋招正式批-笔试

1.在全局数据区中分配空间的变量类型有哪些 2.new和malloc的区别 3. class CData{unsigned short m_uilndex, m_uilndexFlag 9; int m_iData[10]; int m_iType;int iGetDataType() {return m_iType;} public: CData(); }CData::CData(), m_iType(5) {string strTxt "…

【算法模板】基础:区间合并

区间合并是一种常见的算法问题,通常在处理范围覆盖、时间调度、区间覆盖等问题时会用到。区间合并的目的是将一些有重叠或相邻的区间合并成一个更大的区间,从而简化问题的复杂性。 算法思想 给定一组区间,可能存在部分区间之间有重叠或相邻关…

你是如何克服编程学习中的挫折感的?——从Bug中找到成长的契机

你是如何克服编程学习中的挫折感的? 从Bug中找到成长的契机 在编程的世界里,Bug 是不可避免的。无论是初学者还是经验丰富的开发者,都不可能完全避免 Bug 的出现。与其视 Bug 为敌人,不如将其看作成长的契机。每一个 Bug 的出现&…

虚幻5|简单的设置角色受到伤害,远程攻击机关设置,制作UI,低血量UI

虚幻5|制作玩家血量,体力(还未编辑,只用于引用)-CSDN博客 需完成制作玩家血量及体力部分 一.给角色添加死亡动画 1.为了保证角色在播放死亡蒙太奇的时候,不会重新播放,而是保持原来倒地的姿势&#xff0…

《黑神话·悟空》是用什么编程语言开发的?

最近火爆全球的国产 3A 大作《黑神话悟空》,你玩了吗?没玩没关系,有人就是对游戏不感冒,我找了个宣发片,一起感受下3A大作的视觉冲击,而且还是我们从小听到大,那猴子🐒的故事。 ‌‌…

Scrum 敏捷模型、软件测试

三个角色和五大重要会议 三个角色:产品经理、项目经理、研发团队 五个重要会议:需求发布会议、计划发布会议、每日会议、演示会议 每日会议:昨天做了什么( 进度)、今天做了什么(有目标)、遇到…

Objective-C中的MVC架构:构建清晰、可维护的iOS应用

标题:Objective-C中的MVC架构:构建清晰、可维护的iOS应用 在iOS开发中,MVC(Model-View-Controller)架构模式是一种经典的设计模式,用于分离应用的业务逻辑、用户界面和控制逻辑,以提高代码的可…

Flutter-自适用高度PageView

需求 在 Flutter 中,PageView 是一个非常常用的组件,能够实现多个页面的滑动切换。然而,默认的 PageView 高度是固定的,这在展示不同高度的页面时,可能会导致不必要的空白或内容裁剪问题。为了使 PageView 能够根据每…

云计算环境下的等保测评要点分析

在云计算环境下进行等保测评时,需要关注以下几个关键点: 安全责任共担模型:明确云服务提供商(CSP)与云服务用户(CSU)之间的安全责任划分,确保双方在安全防护上的协同作用。 安全控制…

【笛卡尔积】深入理解笛卡尔积及其在SQL中的应用

文章目录 引言笛卡尔积的定义数学背景SQL 中的笛卡尔积 SQL 示例基础示例复杂示例使用 WHERE子句限制结果集 笛卡尔积的实际应用笛卡尔积的性能考虑性能影响 更多相关内容可查看 在一个阳光明媚的周一清晨,听到这个词汇突然觉得有点陌生才有了此文的诞生 引言 在数…

33. 二叉搜索树的后序遍历序列【难】

comments: true difficulty: 中等 edit_url: https://github.com/doocs/leetcode/edit/main/lcof/%E9%9D%A2%E8%AF%95%E9%A2%9833.%20%E4%BA%8C%E5%8F%89%E6%90%9C%E7%B4%A2%E6%A0%91%E7%9A%84%E5%90%8E%E5%BA%8F%E9%81%8D%E5%8E%86%E5%BA%8F%E5%88%97/README.md 面试题 33. 二…

破晓科技与神话:三防平板与《黑神话:悟空》的创新交响

当全球游戏圈因《黑神话:悟空》的震撼预告而沸腾,一款代表中国游戏顶尖制作水平的作品,正以它独特的文化魅力与技术创新,向世界宣告着中国游戏产业的崛起。 点击添加图片描述(最多60个字)编辑 震撼视觉体验…

nginx正向代理与反向代理功能

Nginx是一款高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP代理服务器。它的正向代理和反向代理功能在实际工作中有广泛的应用。 正向代理 功能 正向代理是位于客户端和原始服务器之间的代理服务器。客户端(例如浏览器)向代理服…

记录一个iOS工程添加文件的问题

遇到一个紧急问题,将工程copy了一份,然后需要将copy工程的一个文件夹 拖到现有的工程里面,由于事情紧急,就直接从工程目录中拖拽文件夹, 如下图 拖过之后,本地项目能跑了,但是远端自动化构建是…

排序算法之选择排序详细解读(附带Java代码解读)

选择排序(Selection Sort)是一种简单且直观的排序算法。它的基本思想是:每一轮从未排序的部分中选出最小(或最大)的元素,放到已排序部分的末尾。通过不断地选择最小(或最大)元素&…

MybatisPlus:实现分页效果并解决错误:cant found IPage for args

我们在做开发使用mybatisplus 做分页查询的时候遇到了个问题: 继承 IPage拦截没有作用会默认分页,这个时候报了cant found IPage for args 错误~~~ 我们分析了下,其实这个问题很简单,是因为没有给默认值赋值,因为查询…

申报合肥市各区县高新技术企业认定奖励补助政策

(一)合肥市 对首次认定为国家高新技术企业给予10万元奖励,并落实国家各项税收优惠支持政策。对符合条件的入库国家科技型中小企业,按符合加计扣除条件的研发费用10%,给予10万元—50万元补贴。 (政策来源&…