机器学习是我们使用一组算法解决来解决生活中问题的过程。创建机器学习模型很容易,但选择在泛化和性能方面都最适合的模型是一项艰巨的任务。

有多种机器学习算法可用于回归和分类,可根据我们要解决的问题来选择,但选择合适的模型是一个需要高计算成本、时间和精力的过程。

为解决上述问题,今天我给大家分享一款非常棒的工具包:FLAML,它是一个由微软开源的轻量级 Python 库,有助于自动、高效地找出最佳机器学习模型,不仅速度快,节省时间,而且设计轻巧。

让我们详细的介绍一下它吧…

安装所需的库

我们将首先使用 pip 安装来安装 FLAML。下面给出的命令将使用 pip 安装。

pip install flaml

导入所需的库

在这一步中,我们将导入创建机器学习模型和下载数据集所需的所有库。

from flaml import AutoML

解决分类问题

现在我们将从解决分类问题开始。我们将在这里使用的数据是著名的 Iris 数据集,可以从 Seaborn 库轻松加载。让我们开始创建模型。

#Loading the Dataset
from sklearn.datasets import load_iris

为 Automl 创建实例很重要,同时也定义 Automl 设置,因此在这一步中,我们还将创建 Automl 实例并定义设置。

automl = AutoML()
automl_settings = {"time_budget": 10,  # in seconds"metric": 'accuracy',"task": 'classification'
}

接下来,我们将拆分数据并将其拟合到模型中。最后,我们还将使用模型进行预测并找到最佳模型。

X_train, y_train = load_iris(return_X_y=True)
# Train with labeled input data
automl.fit(X_train=X_train, y_train=y_train,**automl_settings)
print(automl.predict_proba(X_train).shape)
# Export the best model
print(automl.model)

在这里,我们可以清楚地看到 ExtraTreeEstimator 是此数据的最佳模型。现在让我们打印模型的最佳超参数和准确性。

print('Best ML leaner:', automl.best_estimator)
print('Best hyperparmeter config:', automl.best_config)
print('Best accuracy on validation data: {0:.4g}'.format(1-automl.best_loss))
print('Training duration of best run: {0:.4g} s'.format(automl.best_config_train_time))

同样,对于回归问题,我们也将遵循相同的过程。

解决回归问题

现在将解决一个回归问题。我们将在这里使用的数据是著名的波士顿数据集,可以从 Seaborn 库轻松加载。我们可以遵循与分类问题完全相同的过程。

from sklearn.datasets import load_bostonautoml = AutoML()automl_settings = {"time_budget": 10,  # in seconds"metric": 'r2',"task": 'regression'
}
X_train, y_train = load_boston(return_X_y=True)
# Train with labeled input data
automl.fit(X_train=X_train, y_train=y_train,**automl_settings)
# Predict
print(automl.predict(X_train).shape)
# Export the best model
print(automl.model)

print('Best ML leaner:', automl.best_estimator)
print('Best hyperparmeter config:', automl.best_config)
print('Best accuracy on validation data: {0:.4g}'.format(1-automl.best_loss))
print('Training duration of best run: {0:.4g} s'.format(automl.best_config_train_time))

在这里,我们也可以清楚地看到回归问题的最佳模型和超参数。同样,你可以对你关注的数据集执行此过程,并找到最佳模型和超参数。

往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载机器学习的数学基础专辑黄海广老师《机器学习课程》视频课

本站qq群851320808,加入微信群请扫码:

【机器学习】微软出品!FLAML:一款可以自动化机器学习过程的神器!相关推荐

  1. 端到端机器学习_使用automl进行端到端的自动化机器学习过程

    端到端机器学习 Prerequisite: 先决条件: - Docker -码头工人 - Jupyter Notebook -Jupyter笔记本 - Python and Pip -Python和P ...

  2. 微软出品的实用小工具

    微软出品的实用小工具 分享一些微软出品的实用小工具,希望对大家有所帮助. 文章目录 微软出品的实用小工具 SysinternalsSuite常用工具 Autoruns procdump Process ...

  3. 推荐一款微软出品的开发神器,体验不输IDEA!

    最近微软的开发工具VSCode频繁更新Java支持,又是支持SpringBoot,又是支持Lombok,让我不禁好奇VSCode是不是也能胜任Java开发了?于是抽空体验了一把,确实完全可以胜任,Ja ...

  4. 学生用计算机app,学生党利器!微软出品的这个小众APP,帮你搞定数学难题!

    原标题:学生党利器!微软出品的这个小众APP,帮你搞定数学难题! 你的计算器能解数学题吗? 相信很多人用的都是手机自带的计算器,但是手机自带的计算器,也就只能算个加减乘除: 所以,今天给大家推荐一个集 ...

  5. 程职场人必备微软出品的实用小工具

    系统增强工具PowerToys 下载地址:https://github.com/microsoft/PowerToys 什么是 Windows 系统中,最好的辅助工具? PowerToys 一定可以获 ...

  6. 扫一扫数学题秒出答案?微软出品的解题神器

    以前小编在学习的时候,遇到实在不会做的题目,只能第二天才能去求助同学或老师.到了现在,娃学习的时候遇到不会的题目,他都会说"百X一下 你就知道".网络时代确实给了学生们一个全新的学 ...

  7. 微软出品优秀软件推荐

    众所周知,微软的操作系统在全世界都非常流行并且市场份额,用户量也十分庞大.因此我们常常忽略了其他方面,现在就介绍两款微软出品并且非常好用的软件. 1.bing输入法 下载地址http://bing.m ...

  8. 下载!微软出品的最新 Kubernetes 学习指南 3.0

    点击上方"逆锋起笔",关注领取视频教程 ☞ 程序员进阶必备资源免费送「各种技术!」 ☜ Kubernetes 正在席卷应用开发世界,正在塑造应用程序开发和管理的未来,这是一个不争的 ...

  9. 不愧是微软出品的工具,逆天(文末赠书)

    以下内容来自公众号逆锋起笔,关注每日干货及时送达 大家好,今天分享一些微软出品的实用小工具,希望对大家有所帮助. 原文链接:https://www.pconline.com.cn/win11/1501 ...

最新文章

  1. [Nginx优化]分享nginx配置文件及优化说明
  2. 读取串口数据_自定义串口通信的相关问题整理
  3. Oracle查询表结构的一些相关语句
  4. Android 解决mac无法识别手机设备
  5. hmacsha256是对称算法吗_HMAC-SHA256签名计算算法
  6. 【最近公共祖先】[COCI]STOGOVI
  7. DDL DML DCL
  8. (需求实战_终章_08)SSM集成RabbitMQ 订阅模式 关键代码讲解、开发、测试
  9. [转载] 使用DirectInput进行交互
  10. java int 和 long比较大小会_解析java的addExact()与multiplyExact()
  11. Python基础语法和数据类型最全总结
  12. python中双向索引_对索引Include子句的深入分析
  13. 关于代码调试de那些事
  14. centos7永久修改ip地址
  15. Eclipse 字体选择
  16. 剑指offer例题分享--6
  17. pyqt5程序的图标
  18. java面试题关于servlet_关于Java servlet的面试题目
  19. 汽车电子之NFC技术
  20. Fantastic Graph 2018沈阳网络赛

热门文章

  1. OEM status|start|stop
  2. 算法录 之 复杂度分析。
  3. php session 跨页失效问题
  4. VC++ 6.0 中如何使用 CRT 调试功能来检测内存泄漏[转]
  5. MySql采用range分区可提升查询效率
  6. flask的日志输出current_app.logger.debug
  7. BZOJ 4066: 简单题
  8. 多播程序设计(基于UDP协议)
  9. MFC UI按钮多线程
  10. Asp.net之MsChart控件动态绑定温度曲线图