sklearn学习笔记之线性回归

AI时代扑面而来,在大众面对ChatGPT和Sora发出无数惊叹号的时候,我决定不再只当一个AI时代的API调用者,而是去学习机器学习技术本身。

刚好公司也要往人工智能方向发展的计划,于是我开始从基础学习,发现了一个宝藏开源机器学习库:scikit-learn。

scikit-learn文档健全,社区生态非常完善,这也是我选择它进行学习的原因之一。它不仅提供了大量机器学习的算法实现和强大模型,还为开发者提供了数据生成和处理的函数,方便针对中小型数据(千万级以下数据)进行预测和分析。

机器学习根据数据的类型和学习任务不同大体分为监督学习、非监督学习、半监督学习、强化学习。

监督学习:

在监督学习中,算法接收到带有标签(或者目标)的训练数据,它的任务是学习一个从输入到输出的映射关系,以便对未标记的数据进行预测或分类。因此,监督学习的关键特征是训练数据集包含输入和对应的期望输出。这种期望输出可以是类别标签(分类任务)或连续值(回归任务)。

非监督学习:

在非监督学习中,算法接收到的训练数据没有任何标签信息,它的任务是从数据中发现隐藏的结构或模式。非监督学习的目标通常包括聚类(将数据划分为不同的组别)、降维(减少数据的维度以便更好地可视化或压缩数据)、关联规则挖掘等。

半监督学习:

半监督学习结合了监督学习和非监督学习的元素。在这种情况下,数据集中只有一小部分数据带有标签,而大多数数据是未标记的。半监督学习的目标是利用标记数据和未标记数据来提高模型的性能。

强化学习:

强化学习与监督学习和非监督学习有所不同,它涉及到代理与环境的交互,并根据执行的动作而获得的奖励或惩罚来学习最优策略。强化学习的目标是使代理在特定任务中获得最大的长期奖励。

最简单的一种回归任务就是线性回归,我就从这个学习任务开始入手。

线性回归就是一种分析方法,用来看看输入特征和输出目标之间是不是有线性关系。比如一个人的体重增加,和他每天摄入的能量以及消耗的能量有线性关系。

那么进行编程时间,首先安装scikit-learn库,可以使用pip命令如下:

复制代码
pip install scikit-learn

下面是一个线性回归的简单案例:

复制代码
from sklearn.linear_model import LinearRegression
import numpy as np

# Sample data
X = np.array([[1], [2], [3], [4], [5]])  # Input feature
y = np.array([2, 3.5, 2.8, 4.6, 5.2])     # Output target

# Create a linear regression model
model = LinearRegression()

# Fit the model to the data
model.fit(X, y)

# Make predictions
X_new = np.array([[6], [7]])  # New data for prediction
predictions = model.predict(X_new)

print("Predictions:", predictions)

执行这段代码,输出值为:

复制代码
Predictions: [5.87 6.62]

看起来似乎有点意思,但是我们怎么才知道这个预测是否准确呢?

相关推荐
weixin_446260851 小时前
LocalAI:一个免费开源的AI替代方案,让创意更自由!
人工智能·开源
CAE3201 小时前
基于机器学习的智能垃圾短信检测超强系统
人工智能·python·机器学习·自然语言处理·垃圾短信拦截
骄傲的心别枯萎1 小时前
RV1126 NO.37:OPENCV的图像叠加功能
人工智能·opencv·计算机视觉·音视频·视频编解码·rv1126
HyperAI超神经1 小时前
解决蛋白质构象异质性的原子级建模挑战!David Baker团队PLACER框架解析
人工智能·深度学习·ai·ai4s·蛋白质结构
TG:@yunlaoda360 云老大4 小时前
腾讯WAIC发布“1+3+N”AI全景图:混元3D世界模型开源,具身智能平台Tairos亮相
人工智能·3d·开源·腾讯云
这张生成的图像能检测吗4 小时前
(论文速读)Fast3R:在一个向前通道中实现1000+图像的3D重建
人工智能·深度学习·计算机视觉·3d重建
兴趣使然黄小黄7 小时前
【AI-agent】LangChain开发智能体工具流程
人工智能·microsoft·langchain
出门吃三碗饭7 小时前
Transformer前世今生——使用pytorch实现多头注意力(八)
人工智能·深度学习·transformer
l1t7 小时前
利用DeepSeek改写SQLite版本的二进制位数独求解SQL
数据库·人工智能·sql·sqlite
说私域8 小时前
开源AI智能名片链动2+1模式S2B2C商城小程序FAQ设计及其意义探究
人工智能·小程序