范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

程序员学习深度学习TensorFlow

  什么是TensorFlow?
  想想,在机器学习流行之前,我们是如何做与语音和图像相关的识别的?大多数是基于规则的系统。例如,做自然语言处理,需要很多语言学的知识;再如,1997年的IBM的深蓝计算机对战国际象棋,也需要很多象棋的知识。
  当以统计方法为核心的机器学习方法成为主流后,我们需要的领域知识就相对少了。重要的是做特征工程(feature engineering),然后调一些参数,根据一些领域的经验来不断提取特征,特征的好坏往往就直接决定了模型的好坏。这种方法的一大缺点是,对文字等抽象领域,特征还相对容易提取,而对语音这种一维时域信号和图像这种二维空域信号等领域,提取特征就相对困难。
  深度学习的革命性在于,它不需要我们过多地提取特征,在神经网络的每一层中,计算机都可以自动学习出特征。为了实现深度学习中运用的神经网络,TensorFlow这样的深度学习开源工具就应运而生。我们可以使用它来搭建自己的神经网络。这就有点儿类似于PHP开发当中的CodeIgniter框架,Java开发当中的SSH三大框架,Python开发当中的Tornado、Django框架,C++当中的MFC、ACE框架。框架的主要目的就是提供一个工具箱,使开发时能够简化代码,呈现出来的模型尽可能简洁易懂。为什么要学TensorFlow?
  首先,TensorFlow的一大亮点是支持异构设备分布式计算(heterogeneous distributed computing)。
  何为异构?信息技术当中的异构是指包含不同的成分,有异构网络(如互联网,不同厂家的硬件软件产品组成统一网络且互相通信)、异构数据库(多个数据库系统的集合,可以实现数据的共享和透明访问[8])。这里的异构设备是指使用CPU、GPU等核心进行有效地协同合作;与只依靠CPU相比,性能更高,功耗更低。
  那何为分布式?分布式架构目的在于帮助我们调度和分配计算资源(甚至容错,如某个计算节点宕机或者太慢),使得上千万、上亿数据量的模型能够有效地利用机器资源进行训练。
  图1-1给出的是开源框架TensorFlow的标志。
  图1-1
  TensorFlow支持卷积神经网络(convolutional neural network,CNN)和循环神经网络(recurrent neural network,RNN),以及RNN的一个特例长短期记忆网络(long short-term memory,LSTM),这些都是目前在计算机视觉、语音识别、自然语言处理方面最流行的深度神经网络模型。
  下面参考《The Unreasonable Effectiveness of Recurrent Neural Networks》[9]这篇文章梳理了一个有效框架应该具有的功能。Tensor库是对CPU/GPU透明的,并且实现了很多操作(如切片、数组或矩阵操作等)。这里的透明是指,在不同设备上如何运行,都是框架帮用户去实现的,用户只需要指定在哪个设备上进行哪种运算即可。有一个完全独立的代码库,用脚本语言(最理想的是Python)来操作Tensors,并且实现所有深度学习的内容,包括前向传播/反向传播、图形计算等。可以轻松地共享预训练模型(如Caffe的模型及TensorFlow中的slim模块)。没有编译过程。深度学习是朝着更大、更复杂的网络发展的,因此在复杂图算法中花费的时间会成倍增加。而且,进行编译的话会丢失可解释性和有效进行日志调试的能力。
  在我看来,在目前的深度学习的研究领域主要有以下3类人群。学者。主要做深度学习的理论研究,研究如何设计一个"网络模型",如何修改参数以及为什么这样修改效果会好。平时的工作主要是关注科研前沿和进行理论研究、模型实验等,对新技术、新理论很敏感。算法改进者。这些人为了把现有的网络模型能够适配自己的应用,达到更好的效果,会对模型做出一些改进,把一些新算法改进应用到现有模型中。这类人主要是做一些基础的应用服务,如基础的语音识别服务、基础的人脸识别服务,为其他上层应用方提供优良的模型。工业研究者。这类人群不会涉及太深的算法,主要掌握各种模型的网络结构和一些算法实现。他们更多地是阅读优秀论文,根据论文去复现成果,然后应用到自己所在的工业领域。这个层次的人也是现在深度学习研究的主流人群。
  我相信本文的读者也大都是第二类和第三类人群,且以第三类人群居多。
  而在工业界,TensorFlow将会比其他框架更具优势。工业界的目标是把模型落实到产品上,而产品的应用领域一般有两个:一是基于服务端的大数据服务,让用户直接体验到服务端强大的计算能力(谷歌云平台及谷歌搜索功能);二是直接面向终端用户的移动端(Android系统)以及一些智能产品的嵌入式。
  坐拥Android的市场份额和影响力的谷歌公司,在这两个方向都很强大。此外,谷歌力推的模型压缩和8位低精度数据存储(详见第 19 章)不仅对训练系统本身有优化作用,在某种程度上也能使算法在移动设备上的部署获益,这些优化举措将会使存储需求和内存带宽要求降低,并且使性能得到提升,对移动设备的性能和功耗非常有利。
  如果一个框架的用户生态好,用的人就会很多,而用的人多会让用户生态更繁荣,用的人也就会更多。这庞大的用户数就是TensorFlow框架的生命力。
  截至2017年1月,与Caffe、Theano、Torch、MXNet等框架相比,TensorFlow在GitHub上Fork数和Star数都是最多的,如图1-2所示。
  图1-2
  图1-3展示了截至2017年2月,近些年几大机器学习框架的流行程度。
  1-3
  1.2.1 TensorFlow的特性
  在TensorFlow官方网站[10]上,着重介绍了TensorFlow的6大优势特性。高度的灵活性(deep flexibility)。TensorFlow是一个采用数据流图(data flow graph),用于数值计算的开源软件库。只要计算可以表示为一个数据流图,就可以使用TensorFlow,只需要构建图,书写计算的内部循环即可。因此,它并不是一个严格的"神经网络库"。用户也可以在TensorFlow上封装自己的"上层库",如果发现没有自己想要的底层操作,用户也可以自己写C++代码来丰富。关于封装的"上层库",TensorFlow现在有很多开源的上层库工具,极大地减少了重复代码量,在第7章中会详细介绍。真正的可移植性(true portability)。TensorFlow可以在CPU和GPU上运行,以及在台式机、服务器、移动端、云端服务器、Docker容器等各个终端运行。因此,当用户有一个新点子,就可以立即在笔记本上进行尝试。将科研和产品结合在一起(connect research and production)。过去如果将一个科研的机器学习想法应用到商业化的产品中,需要很多的代码重写工作。现在TensorFlow提供了一个快速试验的框架,可以尝试新算法,并训练出模型,大大提高了科研产出率。自动求微分(auto-differentiation)。求微分是基于梯度的机器学习算法的重要一步。使用TensorFlow后,只需要定义预测模型的结构和目标函数,将两者结合在一起后,添加相应的数据,TensorFlow就会自动完成计算微分操作。多语言支持(language options)。TensorFlow提供了Python、C++、Java接口来构建用户的程序,而核心部分是用C++实现的,如图1-12所示。第4章中会着重讲解TensorFlow的架构。用户也可以使用Jupyter Notebook[11]来书写笔记、代码,以及可视化每一步的特征映射(feature map)。用户也可以开发更多其他语言(如Go、Lua、R等)的接口。
  图1-4
  最优化性能(maximize performance)。假如用户有一台32个CPU内核、4个GPU显卡的机器,如何将计算机的所有硬件计算资源全部发挥出来呢?TensorFlow给予线程、队列、分布式计算等支持,可以让用户将TensorFlow的数据流图上的不同计算元素分配到不同的设备上,最大化地利用硬件资源。关于线程和队列,将在4.9节中介绍;关于分布式,将在第14章介绍。
  1.2.2 使用TensorFlow的公司
  除了谷歌在自己的产品线上使用TensorFlow外,国内的京东、小米等公司,以及国外的Uber、eBay、Dropbox、Airbnb等公司,都在尝试使用TensorFlow。图1-5是摘自TensorFlow官方网站的日益壮大的公司墙。
  图1-5
  1.2.3 TensorFlow的发展
  2016年4月,TensorFlow的0.8版本就支持了分布式、支持多GPU运算。2016年6月,TensorFlow的0.9版本改进了对移动设备的支持。2017年2月,TensorFlow的1.0正式版本中,增加了Java和Go的实验性API,以及专用编译器XLA和调试工具Debugger,还发布了tf.transform,专门用来数据预处理。并且还推出了"动态图计算"TensorFlow Fold,这是被评价为"第一次清晰地在设计理念上领先"[12]。
  用户还可以使用谷歌公司的PaaS TensorFlow产品Cloud Machine Learning来做分布式训练。现在也已经有了完整的TensorFlow Model Zoo。
  另外,TensorFlow出色的版本管理和细致的官方文档手册,以及很容易找到解答的繁荣的社区,应该能让用户用起来相当顺手。
  截至2017年3月,用TensorFlow作为生产平台和科研基础研发已经越来越坚实可靠。1.3 机器学习的相关赛事
  说到机器学习,不得不提到每年的一些挑战赛。近年来取得好成绩的队伍,常常是使用深度学习的方法的。正是这些赛事激励着全世界科学家不断采用更优化的方法提高算法结果的准确率,也引领着年度的深度学习探索方向。
  1.3.1 ImageNet的ILSVRC
  ILSVRC(ImageNet Large Scale Visual Recognition Challenge,大规模视觉识别挑战赛)是用来大规模评估对象检测和图像识别的算法的挑战赛。从2010年开始,至2016年已举办7届。ImageNet是目前世界上最大的图像识别数据库,拥有超过1500万张有标记的高分辨率图像的数据集,这些图像分属于大概22 000个类别。ILSVRC使用ImageNet的一个子集,分为1 000种类别,每种类别中都有大约1 000张图像。总之,大约有120万张训练图像,5万张验证图像和15万张测试图像。[6]图1-6所示为ImageNet的官方网站。
  图1-6
  ILSVRC每年邀请谷歌、微软、百度等IT企业使用ImageNet,测试他们图片分类系统运行情况。过去几年中,该系统的图像识别功能大大提高,出错率仅为约5%(比人眼还低,人眼的识别错误率大概在5.1%)。在2015年,ILSVRC的错误率已经降低到了3.57%,采用152层的ResNet获得了2015年分类任务的第一名。ILSVRC历年的Top-5错误率如图1-7所示。
  在ImageNet上,习惯性地报告两个错误率:Top-1和Top-5。Top-1错误率是指,预测输出的概率最高的类别,是否和人工标记的类别一致,如果不一致,此时的概率。Top-5错误率是指,预测输出的概率最高的前5个类别当中,有没有和人工标记的类别一致,当5个都不一致时的概率。例如在图片分类任务下,对一张图片进行预测,输出这张图片分类概率最高的5个类别,只要有一个预测的类别和人工标注的类别标记一致,就是认为正确。当5个都不一致发生的概率就是Top-5错误率。
  图1-7
  值得自豪的是,在刚刚过去的ILSVRC 2016上,中国学术界和工业界科研团队包揽了多项冠军。CUImage(商汤科技联合港中文):目标检测第一。Trimps-Soushen(公安部三所):目标定位第一。CUvideo(商汤科技联合港中文):视频中物体检测子项目第一。NUIST(南京信息工程大学):视频中的物体探测两个子项目第一。Hikvvision(海康威视):场景分类第一。SenseCUSceneParsing(商汤科技联合港中文):场景分析第一。
  1.3.2 Kaggle
  如果说ILSVRC企业参加的居多,那Kaggle这个平台则更多地面向个人开发者。图 1-7展示的是Kaggle的官方网站首页。
  Kaggle成立于2010年,是一个进行数据发掘、数据分析和预测竞赛的在线平台。与Kaggle合作之后,一家公司可以提供一些数据,进而提出一个问题,Kaggle网站上的计算机科学家和数学家(也就是现在的数据科学家)将领取任务,提供潜在的解决方案。最终胜出的解决方案可以获得3万美元到25万美元的奖励。也就是说,Kaggle也是一个众包理念,利用全世界的人才来解决一个大问题。
  图1-7
  Kaggle这个比赛非常适合学生参加,因为一般在校学生可能拿不到很多数据。此外,Kaggle不仅对参赛者有算法能力上的要求,而且能锻炼参赛者对数据的"嗅觉",使参赛者从数据本身问题出发来寻求解决方案。
  1.3.3 天池大数据竞赛
  "天池"是阿里搭建的一个大数据竞赛平台,图1-8展示的是它的官方网站页面。
  图1-8
  这个平台上一般会有一些穿衣搭配挑战、新浪微博互动预测、用户重复购买行为预测等赛事。平台提供的"赛题攻略"对新手入门有很大的引领作用。如果在一些项目上取得不错的成绩,还有丰厚的奖金,以及进入阿里巴巴的工作机会。
  1.7 国内的人工智能公司
  近年来,国内涌现出一批做人工智能的公司,很多原有的互联网公司也开始试水人工智能方向。虽然不可否认人工智能领域还是有一些泡沫存在,但是这个技术领域的井喷点确实来临了,确切地说是科研成果的井喷点。我们要做的就是加快科研成果向产品的转化速度。
  国内的腾讯、阿里、百度三大公司在人工智能研究和商业化探索方面走得最早。腾讯优图是腾讯的人工智能开放平台;阿里云ET是阿里巴巴的智能机器人;百度主要在无人驾驶汽车和手机百度客户端的基于"自然语言的人机交互界面"的"度秘"上发力。这些都是人工智能在产业界应用的探索。此外,还有搜狗、云从科技、商汤科技、昆仑万维、格灵深瞳等公司,都在人工智能领域纷纷发力。
  下面我们就来介绍国内几家比较有特色的做人工智能的公司。
  (1)陌上花科技:衣+(dress+)。提供图像识别、图像搜索、物体追踪检测、图片自动化标记、图像视频智能分析、边看边买、人脸识别和分析等服务。其官方网站的首页如图1-8所示。
  图1-8
  (2)旷视科技:Face++。以人脸识别精度著称,并且提供人工智能开放平台。目前已经和美图秀秀、魔漫相机合作,实现美白、瘦脸、五官美化等美颜效果。此外,还和支付宝合作,未来有望推出"Smile to Pay"。其官方网站首页如图1-9所示。
  图1-9
  (3)科大讯飞。主要提供语音识别解决方案,以及语音合成、语言云(分词、词性标注、命名实体识别、依存句法分析、语义角色标注等)等语音扩展服务,有完善的SDK及多种语言实现的API。其官方网站首页如图1-10所示。
  图1-10
  (4)地平线。嵌入式人工智能的领导者,致力于提供高性能、低功耗、低成本、完整开放的嵌入式人工智能解决方案。其官方网站首页如图1-11所示。
  图1-11
  本文摘自《TensorFlow技术解析与实战》作者:李嘉璇。喜欢的读者请转发到朋友圈。
  END

UP主耗时半年纯手工制作CPU,采用完全自主开发的指令集和架构一个人,到底能肝到什么程度?最近大火的一个视频,或许给了这个问题一个完美诠释纯!手!工!自制CPU!其实在发布这个视频之前,Up主便在贴吧中开玩笑的说了句CPU太贵了,买了显卡就买Windows11预览版体验触控优化经过6年多的打磨,微软终于发布了全新一代的系统Windows11,相信不少小伙伴应该已经入坑了。Windows11不仅换上了全新外观,还专门为触屏做了优化,还发布了一个特别实用的功被侮辱了,还支持它实现增长,是DampampampG营销给力还是怪国人不自爱?我茫然为什么?这几天看到这么一出新闻,很让我无语的新闻。三年前,也就是2018年炮制低俗丑化中国的杜嘉班纳DG,在遭到大部分中国消费者的强烈抵制后经历销售下跌后,2021年居然反弹MIUI13将发布?小米辟谣称看到海报我差点就信了一张MIUI13发布的预热海报在社交平台广泛传播,随后,小米公关部总经理王化予以否认,但他只否认了该海报非官方出品,并未明确否认MIUI13在8月份发布。王化表示,不得不承认现在米成年人的电动玩具特斯拉Model3装贴隐形车衣本期施工施工车型特斯拉Model3车型颜色纯黑色施工项目隐形车衣自从上海车展特斯拉一站成名,所有吃瓜群众都以为马斯克这次肯定玩完的时候,现实总是反手一巴掌扇过来。受疫情缺芯紧缺等多稳中取胜文武双全的代表宝马5系装贴隐形车衣本期施工施工车型宝马5系车型颜色量子蓝施工项目装贴隐形车衣为了突出自己的别具一格,很多车主会给自己座驾的进气格栅涂上三道杠,分别是浅蓝紫罗蓝以及深红色,看上去确实有点唬人。其实真正捷豹XE英伦绅士蕴藏的爆发力本期施工施工车型捷豹XE车型颜色水晶蓝施工项目水晶装甲绿改色膜在早期现代工业的发祥地英国,曾诞生了很多享誉全球的汽车品牌,而这些品牌的车型无一不展现着人们常说的英伦范。那么究竟什么吴亦凡之后,两位圈内大咖被实名举报这两天吴亦凡被刑拘的新闻铺天盖地大家都知道,涉及面之广你我也无法想象,避开的避开,道歉的道歉,封号的封号,还有发律师函的发律师函,但是,这些信息都不足够覆盖吴亦凡刑拘的消息的,要覆秀外慧中的低调之选,宝马5系GT装贴亮白改色膜本期施工施工车型宝马5系GT车型颜色猎户星座银施工项目装贴亮白改色膜在宝马旗下有这样一款车,集豪华轿车运动型车和旅行车于一身,虽然以5系命名,但是采用的是7系标准轴距底盘内核的车型三百预算也能买到好的蓝牙耳机?漫步者FitPods整挺好说起耳机,我想每个人都不陌生吧,市面上也多如牛毛啊,各种型号,各种功能,各种品牌要有仅有,如果你叫我数一数,我大概都能够数出几十家甚至上百家的耳机呢,不限于各大手机厂商,音箱公司,iPhone又现致命漏洞在昨日,iPhone安全隐患再次上微博热搜,内容显示,一家名为AmnestyInternational的公司发布报告称,苹果的iPhone存在漏洞,黑客可以通过间谍软件盗取iPho
V1芯片与光学器件双升级,vivoX70系列探索手机影像新高度vivoX系列作为vivo的影像旗舰产品线,在近几代更迭中展现出强大的实力,各种差异化的卖点让用户深深记住了X系列产品。在该系列产品上,很多人会想到防抖能力出色的微云台,具有良好成13台根服务器均不在中国,一旦发生紧急情况,网络会瘫痪吗?在互联网时代,数据是最宝贵的资源,而作为数据处理中心和存储中心的服务器,更是核心中的核心,所以目前各国对于服务器都是非常看重。而在众多服务器当中,互联网根服务器更是重中之重。提到计真的有外星人存在吗?为何美国宇航局频频拍到神秘飞行物?网络上流传的真真假假的新闻太多了,以至于难以分辨,美国NASA或许真的曾经拍摄到不明飞行物,但是可以确定的是,明面上人类从未真正地接触外星人。不少此类新闻都是一些小媒体或个人报道出世界绕地球飞行卫星美国3395颗,俄罗斯1553颗,中国多少颗?根据美国国家航空航天局(NASA)下属的约翰逊航天中心提供的数据信息来看,地球轨道上将近一半的卫星都是美国的卫星,军用民用都很多,美国最多。如此多的人造卫星在天空上飞行,难怪夜晚的三架马车齐头并进北京经开区科技生态文化场景全域开放人民网北京9月3日电从手机一键就能召唤来的无人驾驶出租车,到效率比传统工厂提升60的小米黑灯工厂从全国首个零碳产业园区,到凉水河经开区段成为国家级河湖样板间从全国首个科技馆之城,到用了一年AppleWatch苹果表,和大家说说心里话这东西值不值3000苹果产品有很多,而我也很喜欢苹果产品的设计感以及使用体验,尤其是在细节体验上确实做的很不错,但是每一款苹果产品都值得买吗?尤其是在售价格外昂贵的前提之下?这一点我并不认同,比如苹果巨头入场,苹果计划2024年发布新能源汽车,影响如何?近期,苹果就汽车项目与多家韩国电动汽车零部件制造商进行了接触,其中包括LGSK集团现代汽车韩华集团等。同时,苹果和中国的锂电池供应商也进行了会谈,其中包括比亚迪和宁德时代。苹果这是传苹果正秘会丰田以达成协议,2024年推首款量产车,带半自动驾驶据外媒DigiTimes报道,科技巨头苹果公司正在亚洲秘会丰田汽车的代表,协商二者可能的协作关系。苹果公司的目标是找到可以信任的长期固定合作伙伴,以便他们能在2024年如期推出其首手机资讯7月苹果领跑高端,39005200元份额华为vivo持平7月国内手机市场份额根据一家市场调研机构的数据,苹果在高端手机的市场占有率上依旧领跑其他品牌,在5200元以上价位的高端手机里,苹果占比66,华为占比30。而在39005200元的几家欢喜几家愁!华为卖二手机续命,荣耀将推子品牌荣耀Magic3系列的预热阶段,荣耀官方定下的产品slogan是致非凡,而华为Mate40系列slogan则是跃见非凡。见到此番景象,网友们纷纷打字请友商不要藕断丝连。Magic3干货分享学习C编程,那些经典书籍是你一定会用上的呢?很多同学在学习CC的时候,知道自己要书籍结合视频对照学习,网上搜索了也没找到,但却不知道自己应该看那几本书籍,本文特意针对C的几个方面,全面的例举了学习时候对你有帮助的书籍,拿走不