比Keras更好用的机器学习“模型包”:无需预处理,0代码上手做模型
萧箫 发自 凹非寺
量子位 报道 | 公众号 QbitAI
做机器学习模型时,只是融合各种算法,就已经用光了脑细胞?
又或者觉得,数据预处理就是在“浪费时间”?
一位毕业于哥廷根大学、做机器学习的小哥也发现了这个问题:原本只是想设计个模型,结果“实现比设计还麻烦”。
于是他自己动手做了个项目igel (德语中意为“刺猬”,但也是Init、Generate、Evaluate Machine Learning的缩写),无需编写任何多余代码,就能设计出想要的模型。
也就是说,用户只需要知道各种机器学习模型的原理,但不需要再自己动手写代码。
相比于Keras,这个项目进一步简化了预处理、输入输出的工作,就像“模型包”一样简便。
作者用了两周的时间,做出了项目的1.0版本,一天以内已有842 Star,目前还在快速上涨中。
由于只是1.0版本,作者表示,这个项目仍然有很大的完善空间。
但就目前的功能来说,已经足够进行基本的机器学习建模了。
“让机器学习生产变得自动化”
作者建立这个项目的初衷,是希望为所有人提供机器学习模型。
无论是技术向工程师、还是非技术向的其他行业用户,都能使用机器模型让自己的工作更简单。
说白了,就是将机器学习变成一个“自动化”的过程,而他也这么设计了。
项目igel包含了当前最新的所有机器学习模型(回归、分类、聚类),而且作者表示,项目还在持续更新中。
也就是说,后续如果还有更新的机器学习模型,也会再加进项目。
模型目前支持的功能有以下几种:
支持所有最新的机器学习模型(甚至是预览模型)
支持不同的数据预处理方法
在编写配置时提供灵活性和数据控制
支持交叉验证
支持yaml和json格式
支持不同的sklearn指标以进行回归,分类和聚类
支持多输出/多目标回归和分类
支持多处理并行模型构建
可以看出,作者为了偷懒让机器学习生产变得更简洁,也是操碎了心。
如果要上手的话,也非常简便。
6步上手“模型包”
与其他程序一样,作者为这个程序提供了“帮助”菜单,只需要输入“igel -h” (或igel -help),就能了解它的使用方法。
学习完使用方法后,就可以开始创建配置文件了,无论是yaml还是json格式,都ok。
如果你是个“懒癌患者” (像作者一样),可以使用“igel init”来初始化。
例如,想做个判断“是否生病”功能的配置文件:
第一步,选择功能、模型、目标:igel init -type “classification” -model “NeuralNetwork” -target “sick”
第二步,初始化:igel init
那么,程序就会给你生成一份配置文件,根据需要进行修改。
在那之后,就是选择具体的算法参数、并提供你所选的数据集了。
例如,想用随机森林处理数据,那么,只需要提供参数给系统(以及数据集、配置文件路径),它就会帮你训练:
此外,还可以对模型/预训练模型进行评估:
感觉不错?生成预测模型:
直接用起来:
简单6步,机器模型(预览模型)就已经生成了,非常方便。
网友:太棒了,想要更多新功能
此外,作者也非常乐意采纳各个网友的意见。
例如,一个网友指出,如果能用交叉验证进行超参数搜索/调整,那么会是个很好的改进,而作者本人也立即采纳了这个建议。
不过,也有网友表示,“让一切程序自动化”是没有意义的。
毕竟作者已经声明,项目是建立在scikit-learn的基础上的。但后者同样几行代码就能做机器学习,那么scikit-learn和这个项目有什么区别?
作者对此回应称,最大的区别在于,相比于编写代码,这个项目旨在以更“可读”的方式设计想做的模型。
有网友认可这样的观点,毕竟对于许多做生产的机器学习工程师来说,“任何不需要做的编程工作”都是没有意义的,是在“浪费时间和金钱”。
对于这个项目,更多的网友表示了支持,并希望看见他的新功能。
对这个机器学习项目感兴趣的小伙伴,可以通过下方传送门查看~
作者介绍
Nidhal Baccouri,于今年4月在德国哥廷根大学取得硕士学位,研究方向是软件、控制工程和人工智能。
目前,Nidhal Baccouri在汽车行业工作,研究方向是数字双胞胎技术,会同时应用人工智能和物联网的知识。业余时间,他喜欢做做项目,尤其是与AI和Python相关的项目。
传送门
项目地址:
https://github.com/nidhaloff/igel
参考链接:
https://news.ycombinator.com/item?id=24671525
https://nidhalbacc.azurewebsites.net/
— 完 —
本文系网易新闻•网易号特色内容激励计划签约账号【量子位】原创内容,未经账号授权,禁止随意转载。
一键三连「分享」、「点赞」和「在看」
科技前沿进展日日相见~
比Keras更好用的机器学习“模型包”:无需预处理,0代码上手做模型相关推荐
- 比Keras更好用的机器学习“模型包”:0代码上手做模型
做机器学习模型时,只是融合各种算法,就已经用光了脑细胞? 又或者觉得,数据预处理就是在"浪费时间"? 一位毕业于哥廷根大学.做机器学习的小哥也发现了这个问题:原本只是想设计个模型, ...
- GraphSAGE 模型解读与tensorflow2.0代码实现
上一篇文章,我们讲了图神经网络:图卷积神经网络(GCN)理解与tensorflow2.0代码实现,也提到GCN的缺点:GCN属于直推式学习(Transductive Learning),它在固定的图上 ...
- 信用卡评分模型(数据获取+数据预处理+探索分析+变量选择+模型开发+模型评估+信用评分+建立评分系统)
最近两次遇到关于信用卡评分的题目,遂了解一波. Reference: 基于python的信用卡评分模型(超详细!!!) https://www.jianshu.com/p/f931a4df202c h ...
- 入门学习3D建模的必备知识,基础打的好,7天就能上手做模型!
今年4月的全球数字游戏销售额达到了破纪录的105亿美元(约合人民币750亿),利润超过今年三月并比去年4月上涨了17%.疫情过后,游戏市场迎来了一次高潮,如果你喜欢3D游戏建模或看好这个行业坚持下去, ...
- 基于多时间尺度滚动优化的多能源微网双层调度模型 多能源微网 代码主要做的是一个多能源微网的优化调度问题,首先对于下层多能源微网模型多时间尺度 滚动优化 微网双层模型 调度
MATLAB代码:基于多时间尺度滚动优化的多能源微网双层调度模型 关键词:多能源微网 多时间尺度 滚动优化 微网双层模型 调度 参考文档:<Collaborative Autonomous Op ...
- pip keras 失败_关于 Python 机器学习导包失败 简短的补充
上次一下子装好后,很嘚瑟来着:记一次装好 Keras 和 TensorFlow(CPU版)重装系统后,装包,卸了装卸了装······但是都没有反应.看来不是玄学.再次翻各个网页博客.找到这位兄弟的文章 ...
- 2018阿里广告点击率预估模型---DIN,Tensorflow2.0代码实践,并附上github
前言 最近看了2018年阿里在KDD上发表的论文<Deep Interest Network for Click-Through Rate Prediction>,想复现下,看了文章给出的 ...
- 星型模型 3nf的区别_贵州省遵义市工业模型经典案例展示
随着城市的发展,沙盘模型在城市建设中发展着越来越重要的作用.地产商在开发一个片区时候,都会首先和一些专业的沙盘模型公司联系,用以来构建未来的的展现效果.那平时制作沙盘模型都有哪些方法,都使用了哪些原料 ...
- “让Keras更酷一些!”:层与模型的重用技巧
作者丨苏剑林 单位丨追一科技 研究方向丨NLP,神经网络 个人主页丨kexue.fm 今天我们继续来深挖 Keras,再次体验 Keras 那无与伦比的优雅设计.这一次我们的焦点是"重用&q ...
最新文章
- [转]小心C# 5.0 中的await and async模式造成的死锁
- C#调用非托管C++DLL:直接调用法
- linux下makefile使用
- CSS/DIV网页设计视频教程目录【转】
- ElasticJob-分布式作业调度神器,你们还在用Quartz吗
- Android studio 报错:Manifest merger failed xxx
- ajax ssm 页面跳转_SSM框架的面试常见问题
- git wechat.class.php,wechat-php-sdk/qywechat.class.php at master · gitye/wechat-php-sdk · GitHub
- Nhibernate3.3.3 GA使用初探
- JavaGC(1)—深入浅出Java垃圾回收机制
- 存储树形数据_数据结构篇之顺序表的创建以及实现
- 删除oracle的注册,oracle数据库账号删除oracle收集系统统计信息
- C#学习历程(四)[实际问题]
- 热门软件看点:哇嘎和它的对手们
- android 转码工具下载,视频格式转换工具app
- 微博十年,再次走到十字路口
- 浊音、清音、爆破音音频分析
- oracle 配置不能保存,Oracle Net Manager保存网络配置提示无效条目Error writing entr
- ttyS 和 ttyO 的区别
- 今日收获 2018/4/22