CSDN:很多大公司都开源了自己的机器学习平台,侧重的模型可能有所不同,但都会有分布式、编程方面的优化,在您接触过的平台中,您如何推荐从业者在什么情况下采用哪种框架? 唐源:我认为还是得具体看自己的应用、需求、以及团队的背景。如果在语音上面的应用很多的话,需要用到很多类似于 LSTM, RNN,等深度学习模型,那可以在做实验比较的时候会考虑到这些模型在不同框架上的速度。如果团队的背景很多元,比如在做研究的时候可能用的编程语言不统一,那就得考虑一下哪个平台能够对这些语言提供更好的支持。再具体一点,可能要考虑哪个平台使用起来是既能够实现目的又能够灵活地在现有基础上进行必要的拓展来达到各种需求。社区的支持也很重要,不仅仅是开源社区,研究社区对某一平台的支持也是需要考虑进去的,比如说如果对 Facebook 的研究很感兴趣,那可能会更关注 Torch,因为他们的最新研究成果都会首先开源 Torch 的实现。 为什么我们应该使用 TensorFlow CSDN:TensorFlow 开发者大会给我们呈现了大量的信息,您最为关注的有哪些? 唐源:我最关注的是那些高阶一点的 API,比如 Estimator 和 Keras 在 TensorFlow 内部的发展,我最早是和谷歌的 Illia Polosukhin 合作创建了 Scikit Flow 这个项目,然后紧接着被 TensorFlow 接受,放在了 TensorFlow 里面,得到了谷歌内部的大力支持和贡献,不仅仅适用于深度学习,也提供了许多机器学习的 Estimator,比如 KMeans、SVM、随机森林,等等,来帮助更广范围的用户方便地使用像 TensorFlow 这样分布式的系统。TensorFlow 对一般用户来说确实很难学好也很难写得很正确,尤其是一些分布式的逻辑,这样的高阶的 API 是特别有需求的。还有比较关注也是一直在关注的就是 DeepMind 在研究上的一些进展,比如说对皮肤癌的图片分类,对艺术和音乐的自动生成,这些都是非常有意义的事情,我很高兴他们能够不仅仅花时间在研发这个框架,也能够好好利用这个框架来做这一些有意义有影响力的一些研究。这也是各种深度学习框架的意义所在:把先进的技术免费提供给大家,帮助大家更好更有效地做研究和分享研究成果。 CSDN:XGBoost 最初的优势在于 boosting,不了解 DMLC、MXNet 的人也可能很喜欢 XGBoost,您最开始改进和延伸了 XGBoost 项目,请介绍近期的发展或进展,未来的重要工作是什么? 唐源:XGBoost 算是我比较早期的时候就开始一直参与的项目,经过了 Kaggle、学术界、以及工业界很多用户的千锤百炼,对于最近比较值得注意的一些进展,大家可以看看新增加的 Callback 功能,可以用来更方便地监控和观察模型的训练,最近也支持了 GPU,以及对 Spark、Flink 等大数据平台的结合使用的支持,未来的很大一部分工作就是更好地帮助用户使用,从他们的使用当中了解需求,atv,尽可能帮助到大家更好地从事数据科学工作。 CSDN:如果用户已经使用 Spark 作为大数据处理平台,也用了 MLlib,有什么理由是他必须使用 TensorFlow 的? 唐源:TensorFlow 提供的不仅仅只是现有的一些比较热门的模型实现,深度学习和机器学习这个领域的发展是非常快的,很多问题往往不是简单的现有模型能够解决的,最重要的是一个框架的灵活性和可拓展性一定是不能丢的,Spark 的 MLlib 很优秀地实现了一些工业界需求比较大的一些算法,atv,但是 TensorFlow 能提供的不仅仅是这些,它提供了很多建立机器学习和深度学习必有的元素,比如,TensorFlow 有着自己的 metrics、losses、optimizers、layers 等模块来帮助建立各种各样的深度学习模型,它也提供了许多高阶的 Estimator API 来帮助用户更好地搭建和定义自己的分布式的模型,FeatureColumn 模块来帮助数据科学工作中很重要的特征工程,DataFrame 和 QueueRunner 等模块来更好地实现数据的预处理,提取批量队列,等等。另外,TensorFlow 省去了在各种不同的设备(比如 CPU、GPU、TPU)上的实现,用户只需要集中精力调用已经实现好的 API 就可以在各种设备上进行自动优化以及资源分配,这些都是 Spark 目前还不能或者是很难做到的。最近雅虎开源的 TensorFlowOnSpark 也挺有意思,可以在现有的 Spark/Hadoop 分布式集群的基础上部署 TensorFlow 的程序,这样可以避免数据在已有 Spark/Hadoop 集群和深度学习集群间移动,HDFS 里面的数据能够更好地输入进 TensorFlow 的程序当中。 CSDN:您如何与黄文坚老师配合完成《TensorFlow 实战》?怎样实现了工作和写作之间的平衡?写完此书有哪些收获和体会? (责任编辑:本港台直播) |