如何⽤Python和Tensorflow2.0神经⽹络分类表格数据?以客户流失数据为例,看 Tensorflow 2.0 版本如何帮助我们快速构建表格(结构化)数据的神经⽹络分类模型。
变化
表格数据,你应该并不陌⽣。毕竟, Excel 这东西在咱们平时的⼯作和学习中,还是挺常见的。
在之前的教程⾥,我为你分享过,如何利⽤深度神经⽹络,锁定即将流失的客户。⾥⾯⽤到的,就是这样的表格数据。
时间过得真快,距离写作那篇教程,已经⼀年半了。
这段时间⾥,出现了2个重要的变化,使我觉得有必要重新来跟你谈谈这个话题。
这两个变化分别是:
⾸先,tflearn 框架的开发已经不再活跃。
tflearn 是当时教程中我们使⽤的⾼阶深度学习框架,它基于 Tensorflow 之上,包裹了⼤量的细节,让⽤户可以⾮常⽅便地搭建⾃⼰的模型。
但是,由于 Tensorflow 选择拥抱了它的竞争者 Keras ,导致后者的竞争优势凸显。
对⽐⼆者获得的星数,已经不在同⼀量级。
观察更新时间,tflearn 已经⼏个⽉没有动静;⽽ Keras ⼏个⼩时之前,还有更新。
我们选择免费开源框架,⼀定要使⽤开发活跃、社区⽀持完善的。只有这样,遇到问题才能更低成本、⾼效率地解决。
看过我的《Python编程遇问题,⽂科⽣怎么办?》⼀⽂之后,你对上述结论,应该不陌⽣。
另⼀项新变化,是 Tensorflow 发布了 2.0 版本。
相对 1.X 版本,这个⼤版本的变化,我在《如何⽤ Python 和 BERT 做中⽂⽂本⼆元分类?》⼀⽂中,已经粗略地为你介绍过了。简要提炼⼀下,就是:
之前的版本,以计算图为中⼼。开发者需要为这张图服务。因此,引⼊了⼤量的不必要术语。新版本以⼈为中⼼,⽤户撰写⾼阶的简洁语句,框架⾃动将其转化为对应的计算图。
之前的版本,缺少⽬前竞争框架(如 PyTorch 等)包含的新特性。例如计算图动态化、运⾏中调试功能等。
但对普通开发者来说,最为重要的是,官⽅⽂档和教程变得对⽤户友好许多。不仅写得清晰简明,更靠着 Google Colab 的⽀持,全都能⼀键运
⾏。我尝试了 2.0 版本的⼀些教程样例,确实感觉⼤不⼀样了。
其实你可能会觉得奇怪—— Tensorflow ⼤张旗⿎宣传的⼤版本改进,其实也⽆⾮就是向着 PyTorch 早就有的功能靠拢⽽已嘛。那我⼲脆去学PyTorch 好了!
如果我们只说道理,这其实没错。然⽽,还是前⾯那个论断,⼀个框架好不好,主要看是否开发活跃
python怎么读csv数据、社区⽀持完善。这就是⼀个⾃证预⾔。⼀旦⼈们都觉得 Tensorflow 好⽤,那么 Tensorflow 就会更好⽤。因为会有更多的⼈参与进来,帮助反馈和改进。
看看现在 PyTorch 的 Github 页⾯。
受关注度,确实已经很⾼了。
然⽽你再看看 Tensorflow 的。
⾄少在⽬前,⼆者根本不在⼀个数量级。
Tensorflow 的威⼒,不只在于本⾝构建和训练模型是不是好⽤。那其实只是深度学习中,⾮常⼩的⼀个环节。不信?你在下图⾥看。
真正的问题,在于是否有完整的⽣态环境⽀持。其中的逻辑,我在《学 Python ,能提升你的竞争⼒吗?》⼀⽂中,已经为你详细分析过了。
⽽ Tensorflow ,早就通过⼀系列的布局,使得其训练模型可以直接快速部署,最快速度铺开,帮助开发者占领市场先机。
如果你使⽤ PyTorch ,那么这样的系统,是相对不完善的。当然你可以在 PyTorch 中训练,然后转换并且部署到 Tensorflow ⾥⾯。毕竟三巨头达成了协议,标准开放,这样做从技术上并不困难。
但是,⼈的认知带宽,是⾮常有限的。⼤部分⼈,是不会选择在两个框架甚⾄⽣态系统之间折腾的。这就是路径依赖。
所以,别左顾右盼了,认认真真学 Tensorflow 2.0 吧。
这篇⽂章⾥⾯,我给你介绍,如何⽤ Tensorflow 2.0 ,来训练神经⽹络,对⽤户流失数据建⽴分类模型,从⽽可以帮你见微知著,洞察风险,提前做好⼲预和防范。
数据
你⼿⾥拥有的,是⼀份银⾏欧洲区客户的数据,共有10000条记录。客户主要分布在法国、德国和西班⽛。
数据来⾃于匿名化处理后的真实数据集,下载⾃ superdatascience 官⽹。
从表格中,可以读取的信息,包括客户们的年龄、性别、信⽤分数、办卡信息等。客户是否已流失的信息在最后⼀列(Exited)。
这份数据,我已经上传到了这个地址,你可以下载,并且⽤ Excel 查看。
环境
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论