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


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

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

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

    >>> 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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

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

    >>> 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%
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

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

    🛠 安装

    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

  • 相关阅读:
    HyBird App(混合应用)核心原理JSBridge
    102. 二叉树的层序遍历
    GreatSQL vs MySQL性能测试来了,速围观~
    js 深度学习(七)
    java.nio.file.FileSystemException:......xx.jar
    LeetCode 每日一题——1656. 设计有序流
    Python入门:A+B问题
    Golang小数点保留
    centos 上容器配置X11
    报错:“[Thread-0] INFO CoreNLP - CoreNLP Server is shutting down.”
  • 原文地址:https://blog.csdn.net/weixin_41194129/article/details/133104821