结合工程实践选题调研分析同类软件产品
Posted zhuangjiale
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了结合工程实践选题调研分析同类软件产品相关的知识,希望对你有一定的参考价值。
工程实践选题为深度学习相关,但是只是进行训练然后预测,所以介绍一下几种深度学习框架吧。可能从严格意义上来说这些框架并不能算是软件,而更像是一种工具,但是在开发过程中起到的作用丝毫不亚于那些集成开发工具。做一个简单的比喻,一套深度学习框架就是这个品牌的一套积木,各个组件就是某个模型或算法的一部分,可以自己设计如何使用积木去堆砌符合你数据集的积木。当我们要完成一个不同动物图像的分类,Google搜索告诉我们,卷积神经网络(CNN)对于此类图像分类任务非常有效。所以我们需要去实现这个模型,但是如果你开始从头开始编写CNN,那么获得工作模型将是几天后(甚至是几周),而这就是深度学习框架真正改变了这尴尬的局面。下面介绍三种深度学习框架:TensorFlow框架、PyTorch框架和Torch框架。
TensorFlow支持Python和C++两种类型的接口。用户可以在一个相对丰富的高层环境中做实验并在需要本地代码或低延迟的环境中部署模型。TensorFlow适用于图像和基于序
列的数据。
Torch运行在LuaJIT上,与C++、C#以及Java等工业语言相比速度非常快,用户可编写任意类型的计算而不需要担心性能,但Lua并非主流语言。
PyTorch相当于Torch的Python版,该框架是用C语言实现、Lua语言进行封装,并用Python语言完成GPU加速。除了GPU加速以及高效的内存使用外,PyTorch受到欢迎的其它
原因是其动态计算图的使用,这类动态计算图已经被其它不主流的深度学习框架使用,比如Chainer。
1.这些软件的开发者是怎么说服你(陌生人)成为他们的用户的?他们的目标都是盈利么?他们的目标都是赚取用户的现金么?还是别的?
要说一个老练的程序员在哪个网站呆的时间最长,除了面向Google找Bug,那应该就是开源社区了。现在越来越多的科技公司将自己的代码开源,能说他们是为了盈利?在全球信息化的今天,开源在帮助公司本身提高代码质量的同时也提高着这些公司的竞争优势。同时开源在某些特殊的项目还有着独特的优势,Linux操作系统、各种深度学习框架。在开源这些代码的同时别人也在帮助着改进代码、维护代码。
2.这些软件是如何到你手里的?
正如上面所说,这些框架都是开源的。可以从官网获得,也可以从开源社区www.github.com获得。
3.这些软件有Bug 么??是如何更新新版本的?
有,任何代码中都可能存在Bug。不过由于代码是开源的,当出现Bug时,不仅仅是公司在维护,不同地方使用这些代码的程序员的都在努力发现Bug。这些开源代码一般使用Git这个工具来进行版本更新,可以将云端库下载到本地,当对本地库进行修改后,可以更新云端代码,不过也不是随便就可以更改的。
4.此类软件是什么时候开始出现的,同?类型的软件之间是如何竞争的? 发展趋势如何?
Torch是2002年在纽约大学诞生,而TensorFlow和PyTorch出现的就比较晚了。2016年,谷歌发布了TensorFlow深度学习框架。而PyTorch是由Facebook公司于2017年1月份开发的深度学习框架,可以说是torch的python版。不同框架有着各自的优点,现在处于主导地位的应该是TensorFlow,不过PyTorch有后来居上之势。不过最近TensorFlow发布了2.0,隐隐有横扫一切之势。
5.列举你在使用上述软件时观察到的“特殊”现象,它们和硬件有什么不同?这些能说明软件的某些本质特性么?
无论给了多大的训练集,感觉训练出来的模型依然会有误差。但是我可以很轻易的把这些训练集放到框架里,却很难直接把这些训练接放到硬件里。软件更精确的说应该是操作系统,屏蔽了底层硬件的特性让我们可以更轻易的使用软件。
6.你个人第一次用此类软件是什么时候,你当时是几年级,班主任叫什么?在哪里,什么状态,当时的软件是如何得到的(买的正版,盗版,下载?)
第一次了解框架是在大四的时候,但是真正使用是在研究生阶段,在研一,班主任是郭成,是从官网上下载。
7.你是如何精通这类软件的?它给你什么好处,坏处?
精通这些还需要很长一段时间,框架让我们更好的搭建模型,但是也隐藏了更深层次的东西。想要精通,了解这些深层次的东西是必不可少的。
8.你现在还?它么,或者是同类软件的不同品牌,为何?
还在使用,因为确实提高了效率,如果独自开始从零搭建,对于刚接触深度学习的小白来说,真的是黑暗中的曙光,大大提高了生产效率。
9.这种软件再过10年,20年还会存在么,为什么?
一定会存在的,因为以后必定是深度学习的天下,可能会出现更多更高效的框架,但是一定不会消失。现在人们都追求效率,通过深度学习处理以前那些繁琐且重复的任务能够变得更高效。
以上是关于结合工程实践选题调研分析同类软件产品的主要内容,如果未能解决你的问题,请参考以下文章