【在线机器学习】River对流数据进行机器学习

River是一个用于在线机器学习的Python库。它旨在成为对流数据进行机器学习的最用户友好的库。River是crème和scikit-multiflow合并的结果。

https://github.com/online-ml/river

举个简单示例,将训练逻辑回归来对网站网络钓鱼数据集进行分类。下面介绍了数据集中的第一个观测值。

python 复制代码
>>> from pprint import pprint
>>> from river import datasets

>>> dataset = datasets.Phishing()

>>> for x, y in dataset:
...     pprint(x)
...     print(y)
...     break
{'age_of_domain': 1,
 'anchor_from_other_domain': 0.0,
 'empty_server_form_handler': 0.0,
 'https': 0.0,
 'ip_in_url': 1,
 'is_popular': 0.5,
 'long_url': 1.0,
 'popup_window': 0.0,
 'request_from_other_domain': 0.0}
True

现在,让我们以流式处理方式在数据集上运行模型。我们按顺序交错预测和模型更新。同时,我们更新性能指标以查看模型的表现如何。

python 复制代码
>>> from river import compose
>>> from river import linear_model
>>> from river import metrics
>>> from river import preprocessing

>>> model = compose.Pipeline(
...     preprocessing.StandardScaler(),
...     linear_model.LogisticRegression()
... )

>>> metric = metrics.Accuracy()

>>> for x, y in dataset:
...     y_pred = model.predict_one(x)      # make a prediction
...     metric = metric.update(y, y_pred)  # update the metric
...     model = model.learn_one(x, y)      # make the model learn

>>> metric
Accuracy: 89.28%

当然,这只是一个人为的例子。我们欢迎您查看文档的介绍部分以获取更全面的教程。

🛠 安装

River 旨在与 Python 3.8 及更高版本配合使用。安装可以通过以下方式完成:pip

pip install river

有可用于Linux,MacOS和Windows的轮子,这意味着您很可能不必从源代码构建River。

您可以从 GitHub 安装最新的开发版本,如下所示:

pip install git+https://github.com/online-ml/river --upgrade

或者,通过 SSH:

pip install git+ssh://git@github.com/online-ml/river.git --upgrade

River 提供了以下算法系列的在线实现

线性模型,具有各种优化器

决策树和随机森林

(近似)最近邻

异常检测

漂移检测

推荐系统

时间序列预测

强盗

因子分解机

不平衡的学习

聚类

装袋/升压/堆垛

主动学习

River还提供其他在线实用程序

特征提取和选择

在线统计和指标

预处理

内置数据集

渐进式模型验证

对管道进行建模

查看 API 以获得全面的概述

很棒的在线机器学习

https://github.com/online-ml/awesome-online-machine-learning
https://parameterfree.com/lecture-notes-on-online-learning/

https://www.zhihu.com/question/465062970/answer/3148474389?utm_id=0
https://scikit-multiflow.readthedocs.io/en/stable/installation.html

Online learning的综述文章:https://arxiv.org/abs/1912.13213

相关推荐
摸鱼仙人~5 小时前
大语言模型微调中的数据分布不均与长尾任务优化策略
人工智能·深度学习·机器学习
LeeZhao@5 小时前
【狂飙全模态】狂飙AGI-Wan2.1文生视频实战部署-Gradio篇
人工智能·语言模型·音视频·agi
roman_日积跬步-终至千里5 小时前
【人工智能导论】07-学习-CNN:卷积+池化+多层堆叠,有效处理图像等结构化数据
人工智能·学习·cnn
Coder_Boy_5 小时前
【人工智能应用技术】-基础实战-小程序应用(基于springAI+百度语音技术)智能语音控制-单片机交互
人工智能·单片机·小程序
刘海东刘海东5 小时前
结构学习理论和结构推理理论(提纲)
人工智能
不被AI替代的BOT5 小时前
AgentScope深入分析-LLM&MCP
人工智能·后端
Jorunk5 小时前
状态对齐是连接 GMM-HMM 和 DNN-HMM 的核心桥梁
人工智能·神经网络·dnn
袋鼠云数栈5 小时前
媒体专访丨袋鼠云 CEO 宁海元:Agent元年之后,产业需回到“数据+智能”的长期结构
大数据·人工智能
TF男孩6 小时前
一堆3D点,神经网络是怎么判断它是椅子的?
人工智能·神经网络
AI即插即用6 小时前
即插即用系列 | CVPR 2024 RMT:既要全局感受野,又要 CNN 的局部性?一种拥有显式空间先验的线性 Transformer
人工智能·深度学习·神经网络·目标检测·计算机视觉·cnn·transformer