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

目前支持PyTorch和scikit-learn

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

目前,该项目已经在网站上线,可以直接在网页上(网页地址可在文末获取)操作上述内容,并直接生成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/

— 完 —

版权所有,未经授权不得以任何形式转载及使用,违者必究。

相关阅读