木易 发自 凹非寺 
量子位 报道 | 公众号 QbitAI

连机器学习的代码,也可以套模(tou)版(lan)了。

现在,有一个Web应用程序,可以生成用于机器学习的模板代码(demo),目前支持PyTorch和scikit-learn。

同时,对于初学者来说,这也是一个非常好的工具。在模版中学习机器学习的代码,可以少走一些弯路。

这也难怪开发者在项目的介绍中,这样写道:

这非常适合机器学习的初学者!

这个名为traingenerator的项目,已于最近成功上线,并冲上了reddit的热榜。

这,究竟是一个什么样的项目,就让我们来看一下。

选择模型和参数,一键生成demo

在任务处理上,目前的任务目标只有图像分类这一种可供选择。

不过,开发者说,有更多功能正在路上,比如目标检测、语义分割等任务目标。

而目前,Web支持的框架有PyTorchscikit-learn,如下图所示,在选定框架后,模版会自动变换。

在PyTorch下,可使用的模型有:AlexNet、ResNet、DenseNet及VGG。

而在scikit-learn下,可选择的模型有:Support vectors、Random forest、Perceptron、K-nearest neighbors及Decision tree。

之后,在下方,在选择不同的模型下,还可以调节不同的训练参数。

此外,可输入的数据有着两种选择:Numpy arraysImage files

最后,在demo输出上,你也有三个选择,能够分别导出.pyJupyter notebookGoogle Colab三种文件格式。

目前,该项目已经在网站上线,可以直接在网页上(网页地址可在文末获取)操作上述内容,并直接生成demo。

运行方法

另外,如果你想要在本地运行或者部署,开发者还贴心地提供了使用指南。

安装

git clone https://github.com/jrieke/traingenerator.git
cd traingenerator
pip install -r requirements.txt

如果要使「在Colab中打开」生效,还需要设置一个Github repo来存储笔记本文件(因为Colab只能打开Github上的公共文件)。

设置repo后,创建一个.env文件其中包含:

GITHUB_TOKEN=<your-github-access-token>
REPO_NAME=<user/notebooks-repo>

本地运行

streamlit run app/main.py

确保总是从traingenerator目录(而不是从应用程序目录)运行,否则应用程序将无法找到模板。

部署到Heroku

首先,安装heroku并登录。要创建新部署的话,便在traingenerator内部运行:

heroku create
git push heroku main
heroku open

之后,更新已部署的应用程序,提交更改并运行:

git push heroku main

如果你设置了一个Github repo来启用「在Colab中打开」按钮,你还需要运行:

heroku config:set GITHUB_TOKEN=<your-github-access-token>
heroku config:set REPO_NAME=<user/notebooks-repo>

测试

最后,进行测试即可:

pytest ./tests

该Web应用程序上线了,并且代码也已开源,感兴趣的小伙伴可以点击下方链接获取。

Web应用程序地址:
https://traingenerator.jrieke.com/

Github地址:
https://github.com/jrieke/traingenerator#installation

参考链接:
https://www.reddit.com/r/MachineLearning/comments/kd23vg/p_traingenerator_a_web_app_to_generate_template/

本文系网易新闻•网易号特色内容激励计划签约账号【量子位】原创内容,未经账号授权,禁止随意转载。

AI落地最佳参考!

2020中国人工智能年度评选结果揭晓

12月16日,量子位MEET 2021智能未来大会现场,50大领航企业、10大明星创业公司、30大商业领军人物、10大最佳产品、10大最佳解决方案、5大社会责任榜样、5大最佳技术社区等年度奖项悉数颁出。

点击图片查看完整榜单:

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见~

机器学习也能套模版:在线选择模型和参数,一键生成demo相关推荐

  1. 机器学习(MACHINE LEARNING)MATLAB人口增长模型logistic参数确定

    文章目录 1 Logistic函数(又称sigmoid函数) 2 logistic回归模型 3 logistic 人口增长模型的参数确定 1 Logistic函数(又称sigmoid函数) Logis ...

  2. 营业执照在线一键生成_如何在线制作证件照?证件照一键生成的方法

    如何在线制作证件照?每一年的毕业季也是就业季,几百多万的大学生都面临着找工作,而在工作之前必须准备好证件照,这样方便参加面试和入职.随着市场需求的逐步扩大,很多便捷的软件和网站都被设计出来了,比如小编 ...

  3. 机器学习因子:在线性因子模型中捕捉非线性

    本文由BigQuant翻译来自于MSCI研究,原文标题为<机器学习因子:在线性因子模型中捕捉非线性> 作者:George Bonne, Jun Wang, Howard Zhang 发表时 ...

  4. java 网站源码 四套模版 兼容手机平板PC 在线编辑模版 freemaker 静态引擎

    前台: 支持四套模版, 可以在后台切换 点击:获取地址 QQ 313596790 官网 http://www.fhadmin.org/ 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JST ...

  5. 机器学习如何选择模型 机器学习与数据挖掘区别 深度学习科普

    今天看到这篇文章里面提到如何选择模型,觉得非常好,单独写在这里. 更多的机器学习实战可以看这篇文章:http://www.cnblogs.com/charlesblc/p/6159187.html 另 ...

  6. 机器学习的练功方式(五)——模型选择及调优

    文章目录 5 模型选择及调优 5.1 数据增强 5.2 过拟合 5.3 交叉验证 5.4 超参数搜索--网格搜索 5 模型选择及调优 5.1 数据增强 有时候,你和你的老板说你数据不够,它是不会理你的 ...

  7. 机器学习入门笔记(一):模型性能评价与选择

    文章目录 一.训练误差与测试误差 1.1 基本概念 1.2 训练误差 1.3 泛化误差(测试误差) 1.4 过拟合 二.模型评估方法 2.1 留出法(hold-out) 2.2 正则化 2.3 交叉验 ...

  8. 机器学习(十二)如何选择学习模型以及如何评估和优化你的学习模型?

    如何评估和优化你的学习算法以及学习模型如何选择? 前言 : 前面我们学习了线性回归,逻辑回归,神经网络等相关的机器学习算法,那么你如何评价你的算法好坏?如果你的算法执行结果并不是令人满意的结果,那么你 ...

  9. 《机器学习》周志华 第二章——模型评估与选择笔记

    <机器学习>周志华 第二章--模型评估与选择 过拟合和欠拟合 过拟合:对训练数据拟合过当的情况,训练集表现很好,测试集表现差. 欠拟合:模型在训练和预测时都表现不好. 降低过拟合的方法: ...

最新文章

  1. 从零开始一起学习SLAM | 理解图优化,一步步带你看懂g2o代码
  2. vue-router 中导航守卫问题
  3. linux 文件打开数设置, too ma
  4. java二进制反转_Java实现 LeetCode 190 颠倒二进制位
  5. 主设备号与次设备号以及申请
  6. 【C语言】C语言结构解析
  7. web 错误 处理你的请求时出错_最强辅助Jmeter技术干货:JMeter中处理器的另类玩法...
  8. 机器学习11/100天-KNN实践
  9. 台达A2/B2伺服电机编码器改功率 台达A2/B2伺服电机编码修改
  10. mysql-front服务器_mysql-front远程连接自己linux服务器上的mysql服务器
  11. white-space 与换行和空格的控制?
  12. Android热修复学习之旅开篇——热修复概述
  13. php文本框添加表情,仿微信在对话框文字中插入Emoji表情包
  14. win10下php连接不了access,win10无法连接到这个网络怎么解决
  15. 宝塔面板搭建个人图床Chevereto完整教程
  16. html 全景图three,室内房间全景图(基于three.js)
  17. vue-video-player 拖动进度条触发暂停移动端展示倍速菜单
  18. 详解五种最短路径算法及其区别(c++)
  19. MAPI错误0x80040107
  20. JAVA-@Primary的常用方式

热门文章

  1. TypeError:“模块”对象不可调用
  2. 如何使用Mockito模拟void方法
  3. 按属性对自定义对象的ArrayList进行排序
  4. Gson解析JSON数据中动态未知字段key的方法
  5. 简单时间复杂度大O记法
  6. Mybatis3.3.x技术内幕(十三):Mybatis之RowBounds分页原理
  7. 对ESB概念的理解(转)
  8. cnetos7安装docker V1.0
  9. C++ STL之vector常用指令
  10. 终于知道移动比联通牛的原因了(绝对真实绝对有趣)不看后悔