Colab超火的Keras/TPU深度学习免费实战,有点Python基础就能看懂的快速课程

本文档提供了一个适合初学者的深度学习实践教程,重点在于使用Keras和TPU在Google Colab上进行训练。内容涵盖了Tensorflow的基本操作、迁移学习、卷积神经网络和TPU的使用。通过四个逐步递进的实验,读者将学习如何加载数据、构建卷积图像分类器,并利用TPU进行高效训练。
摘要由CSDN通过智能技术生成

大数据文摘出品

编译:曹培信、周素云、蒋宝尚


想要真的了解深度学习,除了看视频,拿数据和算力真枪实弹的练手可能比各种理论知识更重要。


编程基础不好?不会配置环境?本地GPU太贵配置太低?训练速度达不到要求?这些可能都是阻碍你搭建第一个神经网络的原因。


谷歌开发者博客的Codelabs项目上面给出了一份教程(课程链接在文末),不只是教你搭建神经网络,还给出四个实验案例,手把手教你如何使用keras、TPU、Colab。


这个练手指南被成为“仅会一点点python也能看懂”,也就是说,基础再薄弱都可以直接了解哦。


(连python都不会的同学,文摘菌前几天发布了一个100python计划,可以先行学习了再来跟着这篇文章搭建神经网络。)


四次实验均在谷歌的Collab上运行,由浅入深、循序渐进。无需进行任何设置,可以用Chromebook打开,实验环境都帮你搭建好了。


跟着文摘菌一起,是时候搭建一个属于自己的神经网络了!


快速开启!


四次实验均选择TPU支持,这会使代码运行速度大大加快,毕竟用了硬件加速。


先教会你如何在Tensorflow框架下快速加载数据,然后介绍一些tf.data.Dataset的基础知识,包括eager模式以及元组数据集等。


第二部分,手把手教你实现迁移学习,把别人训练好的模型拿过来直接使用,不用一步一步搭建也能使用强大的神经网络。除了迁移学习,在这部分还会简单介绍一些必要的知识点,包括神经元、激活函数等。


第三部分,进入卷积神经网络部分,在了解卷积层、池化层、Dense层卷积网络三个必要的组件之后,你将学会使用Keras Sequential模型构建卷积图像分类器,并使用良好的卷积层选择来微调模型。


第四部分,进入到更加前沿的部分,在接受了前面三个部分的洗礼之后,在这部分你会实现在Keras中利用TPU组建现代卷积网络和实现分类。



和在Jupyter Notebook操作方式一样,同时按住键盘的Shift和enter按钮,便可以运行代码。



如果你是首次执行,需要登录Google帐户进行身份验证。注意页面提醒就可以啦~



此notebook支持目录功能,点击网页左侧的黑色箭头可以查看。



利用Colab上的TPU训练Keras模型需要输入以下代码☟

tpu = tf.contrib.cluster_resolver.TPUClusterResolver(TPU_ADDRESS)strategy = tf.contrib.tpu.TPUDistributionStrategy(tpu)tpu_model = tf.contrib.tpu.keras_to_tpu_model(model, strategy=strategy)
tpu_model.fit(get_training_dataset,              steps_per_epoch=TRAIN_STEPS, epochs=EPOCHS,              validation_data=get_validation_dataset, validation_steps=VALID_STEPS)


本质上是在keras中调用keras_to_tpu_model,部署额外的硬件可以通过增加训练批次的大小增加训练过程。需要注意的是目前,Keras支持仅限于8个核心或一个Cloud TPU。


注:TPU可以在神经网络运算上达到高计算吞吐量,同时能耗和物理空间都很小。因为TPU从内存加载数据。当每个乘法被执行后,其结果将被传递到下一个乘法器,同时执行加法。因此结果将是所有数据和参数乘积的和。在大量计算和数据传递的整个过程中,不需要执行任何的内存访问。


介绍完基本的操作,接下来,文摘菌带大家看看官方给出的四个实验。


Tensorflow入门:tfrecords和tf.data



此实验涉及两个tf的基础操作,一个是使用tf.data.Dataset API导入训练数据,另一个是使用TFRecord格式从GCS有效导入训练数据。


此次实验使用花卉图片的数据集,学习的目标是将其分为5种类别。使用tf.data.Dataset API 执行数据加载。


Keras和Tensorflow在其所有训练和评估功能中接受数据集。在数据集中加载数据后,API会提供对神经网络训练数据有用的所有常用功能:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值