前言 之前写了一篇如何在windows系统上安装Tensorflow Object Detection API? 然后就想着把数据集换成自己的数据集进行训练得到自己的目标检测模型。...动手之前先学习了一波别人是如何实现的,看了大多数教程都有一个小问题:用VOC2012数据集进行训练当做用自己的数据集。 然而,初心想看的是自己的数据集啊!...于是就自己来撸一篇教程,方便自己也给别人一些参考吧~ 目录 基于自己数据集进行目标检测训练的整体步骤如下: 数据标注,制作VOC格式的数据集 将数据集制作成tfrecord格式 下载预使用的目标检测模型...数据标注,制作VOC格式的数据集 数据集当然是第一步,在收集好数据后需要进行数据的标注,考虑到VOC风格,这里推荐使用LabelImg工具进行标注。 ?...下载预使用的目标检测模型 准备好训练数据后,选择模型进行训练,下载官方预训练模型【Github】 对于目标检测,可以考虑选择几种最常用的模型: ssd_mobilenet_v1_coco ssd_mobilenet_v2
然后,我选择使用FloydHub而不是AWS EC2或谷歌云来计算和存储我的网络的调整权重,原因有很多: 只需少数的几个简单的shell命令,在无需处理FTP的情况下,装载数据(mount data)的处理在...装载数据:https://docs.floydhub.com/guides/data/mounting_data/ 在FloydHub里运行着pix2pix的Tensorflow实现,需要对代码进行一些细微的调整...对于一个更复杂的项目,我建议添加一个可以在命令中设置的附加参数,你可以简单地改变pix2pix.py中的第625行和725行: 例如,如果我要测试或导出一个名为model-99200的模型,只需将checkpoint...另一个无需修改代码的快速解决方案是在运行推断之前预先填充输出目录,并使用预先训练过的检查点。...但是考虑到我们只有不到150张训练图片,这些结果可能并不是那么糟糕!我使用了两种标准的数据扩充:随机剪裁和水平反射。
在FloydHub中保存和恢复 现在,让我们研究FloydHub上的一些代码。...我将向你展示如何在TensorFlow、Keras和PyTorch这三个流行的深度学习框架中保存检查点: 在开始之前,使用floyd login命令登录到FloydHub命令行工具,然后复刻(fork)...--data标记指定pytorch-mnist数据集应该在/inputdirectory中可以使用 –gpu标记实际上是可选的,除非你想马上开始运行GPU机器上的代码 从你的检查点恢复: floyd...第二个–data标记指定前一个工作的输出应该在/modeldirectory中可以使用 –gpu标记实际上是可选的——除非你想马上开始运行GPU机器上的代码 通过FloydHub的Jupyter Notebook.../modeldirectory中可以使用 –gpu标记实际上是可选的——除非你想马上开始运行GPU机器上的代码 通过FloydHub的Jupyter Notebook模式 floyd run \ --
FloydHub是个YC孵化的创业公司,号称要做深度学习领域的Heroku。它在GPU系统上预装了TensorFlow和很多其他的机器学习工具,用户可以按时长租用,训练自己的机器学习模型。...进入正题~ 以下内容编译自FloydHub官方博客: 我将分三个步骤展示如何打造你自己的着色神经网络。 第一部分介绍核心逻辑。...Alpha版本机器人的Jupyter Notebook代码、上述三个版本实现代码的FloydHub和GitHub地址,以及在FloydHub的GPU云上运行的所有实验代码,都在文末。...中间图像是用神经网络完成的,右边图像是原始的彩色照片。这个网络使用了相同图像做训练和测试,在beta版本中还会再讲这一点。 1、颜色空间 首先,使用一种能改变颜色通道的算法,从RGB到Lab。...FloydHub的数据集目录(—data emilwallner / datasets / colornet / 2:data)中载入了一个公开数据集,你在FloydHub上查看并使用此数据集和许多其他公开数据集
其实深度学习最好,最经济的训练方式就是在云端,找个GPU的机器,安装搭建环境进行训练,这也是我之前做项目和使用的方式,但对于深度学习的研究者,开发者来说,不太希望花费太多的时间在驱动安装,环境配置,包依赖处理这些琐碎的方面...,如果有一两条命令就可以在云端开始训练,那就可以将大部分精力放在模型本身的调整上。...对于新用户,有免费的2个小时的GPU训练时间,当然后续你可以购买其他计划。下面的部分给大家快速介绍与喜爱如何使用Floyd进行深度学习训练。...从整个过程来看,使用Floyd进行深度学习训练不需要自己准备和搭建环境,还是非常方便的,而且也提供了很多例子,共初学者快速的上手,比如下面这个风格迁移的例子,大家可以自己尝试: ?...Whatever,我又可以在mac上开心的敲代码啦!而且,用户体验对一个学习者来说,简直完美。 ∞∞∞∞∞
本文为你介绍,如何在 GPU 深度学习云服务里,上传和使用自己的数据集。 (由于微信公众号外部链接的限制,文中的部分链接可能无法正确打开。...文章发布后,有读者在后台提出来两个问题: 我没有外币信用卡,免费时长用完后,无法续费。请问有没有类似的国内服务? 我想使用自己的数据集进行训练,该怎么做? 第一个问题,有读者替我解答了。...例如可以在微信小程序里面随时查看运行结果,以及查询剩余时长信息。 解决了第一个问题后,我用 Russell Cloud 为你演示,如何上传你自己的数据集,并且进行深度学习训练。...那不是你代码的错,是运行环境过于老旧。 其次,屏幕输出内容过多的时候(例如我跑了 100 个 epoch, 每个显示 100 条训练进度),“运行日志”网页上模拟终端往下拉,就容易出现不响应的情况。...通过一个实际的深度学习模型训练过程,我为你展示了如何把自己的数据集上传到云环境,并且在训练过程中挂载和调用它。
这是来自于 “Deep Learning with Python” 书上的一个例子。 运行的时候,代码有两个大循环。 第一个把数据跑100遍(epochs),第二个把数据跑500遍。...为了能把珍贵的 GPU 运算时间花在刀刃上,我认真地阅读了快速上手教程。 几分钟后,我确信自己学会了使用方法。...执行下面命令登录进去: floyd login 系统会提示你,输入 FloydHub 上的账号信息。...如果你希望使用其他深度学习框架或版本,可以参考这个链接。 FloydHub 对我们的命令,是这样回应的: 操作结束? 对,就这么简单。 你的任务,已在云端运行了。 结果 然后,我就忙自己的事儿去了。...价格和易用程度,与 FloydHub 相较如何? 如果你对数据科学感兴趣,欢迎阅读我的系列教程。索引贴为《如何高效入门数据科学?》。
这份教程是基于FloydHub平台写的,这个平台号称深度学习领域的Heroku,在GPU系统上预装了TensorFlow和很多其他的机器学习工具,用户可以按时长租用,训练自己的机器学习模型。...进入正题~ 以下内容编译自FloydHub官方博客: 我将分三个步骤展示如何打造你自己的着色神经网络。 第一部分介绍核心逻辑。...Alpha版本机器人的Jupyter Notebook代码、上述三个版本实现代码的FloydHub和GitHub地址,以及在FloydHub的GPU云上运行的所有实验代码,都在文末。...我们在FloydHub的数据集目录(—data emilwallner / datasets / colornet / 2:data)中载入了一个公开数据集,你在FloydHub上查看并使用此数据集和许多其他公开数据集...我在FloydHub上创建了一个公开的高质量图像数据集,而不是使用现有的Imagenet。
每次运行都是自动存档的。对于每次运行,使用的代码、用来运行代码的命令、命令行任意输出以及任何输出的数据都会自动保存,并且通过一个网页接口建立索引。 ? 如图为FloydHub的网页接口。...上面:历史运行的索引,和单次运行的概观。下面:每次运行所使用的代码和运行输出的任意数据都被自动存档。 第二点的重要程度我难以言表。...我用FloydHub遇到的一个麻烦是它不能自定义容器。如果你的代码有非常多的依赖包,你在每次运行前都需要安装这些依赖包。这就限制了短期运行上的迭代速率。...举例来说,一旦我认为基本完成了所有事情,我就会在这个环境上进行端到端测试。但是即使我一直使用最简单的环境,当训练一个点移动到正方形中央上,仍然遇到了非常大的问题。...做任何事之前, 检查如何在你的环境中使用基线算法简化智能体训练。 不要忘记标准化观察,这些观察有可能使用在所有地方。 一旦你觉得你做出了什么,就尽快写一个端到端的测试。
我不完全确定如何使人在这方面做更多,但我目前最好的猜测是: 学习识别困惑的感觉。「事情不太对的感觉」有很多种,有时是代码很丑,有时是担心浪费时间在错误的事情上。但有时是「你看到了一些意料之外的事情」。...每次运行时使用的代码、开始运行的命令、任意命令行输出和任意数据输出都可以自动保存,并通过网页接口设置索引。 ? FloydHub 的网页接口。上方:过去运行的索引,和单次运行的概览。...我认为 FloydHub 的一个痛点在于不能自定义容器。如果你的代码中有大量的依赖包,你需要在所有运行启动前安装它们。这限制了短期运行上的迭代次数。...例如当我感觉完成了基本工作,我就会直接在环境上执行端到端的测试。但是即使我一直使用最简单的环境,我仍然遇到了非常大的问题。...一般机器学习 由于端到端的测试需要很长时间才能完成,因此如果我们需要做一些重构会浪费大量时间。我们需要在第一次实现就检查错误并试运行,而不是在训练完后重新编写代码与结构。
--tensorboard 注意:我们已经在 FloydHub 上安装了一个公开数据集(我已经上传了),数据集的目录在这里: --dataemilwallner/datasets/colornet/2...:data 你可以直接在 FloydHub 上使用这个数据集(其他的也是)并且: 通过--tensorboard 指令开启 Tensorboard 通过--mode jupyter 指令运行 Jupyter...打开它,并运行所有代码块,随着逐渐增加的 epoch 值,我们可以体会神经网络是如何学习的。...这里是部分验证图像,仅使用 20 张图像用于网络训练。 ? 大部分图像的输出结果效果不好。但是我在一个较大的验证集(包含 2500 个图像)上找到了一些不错的图像。...还有,你可以上传彩色图像作为测试图像,因为系统可以自动将它们转换成黑白图像。 代码 注意:使用下列代码时我从 Keras 序列模型转向了它们的功能性 API。
了解代码的最佳方法是修改它并创建几个错误。 ? 损失曲线显示每个训练步骤的错误数量 使用Tensorboard时,你可以形象化每一个实验,并建立一个直觉来判断每个参数是如何改变训练的。...使用FloydHub docs来安装floyd-cli命令行工具。如果你在安装时被困在任何地方,FloydHub会在他们的内部通话聊天中提供支持。...完成之后,返回到你的终端并运行相同的init命令。 floyd init 101 现在,你可以在FloydHub上运行你的神经网络了。通过floyd runcommand,你可以进入不同的设置。...在我们的案例中,我们想要: 在FloydHub上架置一个我已经上传的公共数据集。...你可以通过在FloydHub上浏览它探索该数据集(以及许多其他公共数据集) 使用云GPU——GPU 使用Tensorboard——Tensorboard 在Jupyter Notebook模式下运行——
如果你掌握了基础的命令行技能,部署FloydHub将不会超过5分钟。 使用FloyHub文档来安装floyd-cli命令行工具。FloydHub还为遇到问题的客户提供内部客服支持。...现在你可以在FloydHub上运行你的神经网络任务了。 你可以通过“floyd run”命令进行不同的设置。...你可以在FloydHub上查看该数据集(以及许多其他公共数据集)。...你想训练神经网络来预测未经训练的数据。它需要能泛化的能力。这是一种介于学习与遗忘之间的平衡。 你想它能学习如何将信号从噪声中分离,但是同时遗忘只在训练数据中出现的信号。...它指的是从训练数据学习过多。 Regularization (正则化)是一种通过遗忘训练中的特定信号来减少过拟合的方法。 为了进一步理解这些概念,我们在CIFAR-10数据集上开展实验。
这个网络是在同一个图像上进行训练和测试的——我们将在beta版本中回到这个问题上。 ? 颜色空间 首先,我们将使用一种算法来改变颜色通道,从RGB到Lab。...部署FloydHub上的代码 如果你是FloyHub新手,请花费2分钟安装它,并观看下面的5分钟安装教程或者步骤指南。这是最好的(也是最简单的)在云GPUs上训练深度学习模式的方法。...--tensorboard 一些关于我们工作的简短的说明: 我们在FloydHub上安装了一个公共数据集(我已经上传)在data目录--dataemilwallner/datasets/colornet...你可以在FloydHub通过浏览它来查看和使用该数据集(以及许多其他公共数据集) 我们能够用Tensorboard–tensorboard 我们在Jupyter Notebook模式下运行这个工作-mode...我没有使用Imagenet,而是在FloydHub上创建了一个有更高质量图像的公共数据集。这些照片来自Unsplash,是由专业摄影师拍摄的,包括了9.5万张训练图片和500张验证图片。
这个损失实际上和原始的GAN损失是一模一样的,如果这一步不是很理解的可以参考我之前的一篇专栏:GAN学习指南:从原理入门到制作生成Demo。 但单纯的使用这一个损失是无法进行训练的。...CycleGAN与pix2pix模型的对比 pix2pix也可以做图像变换,它和CycleGAN的区别在于,pix2pix模型必须要求成对数据(paired data),而CycleGAN利用非成对数据也能进行训练...为了训练这么一个模型,我们需要分别准备好男性的图片和女性的图片。在实践中,我使用了CelebA数据集,分别取出其中男性和女性的图片并统一缩放到256x256的大小,然后存入两个文件夹中: ?...当然,也可以使用自己的数据,只需要将它们存为jpg格式并统一缩放到256x256的大小就可以了。接下来的步骤为: 1....woman.tfrecords \ --image_size 256 训练的过程比较漫长,此时可以打开TensorBoard来观察训练情况(运行这个命令时需要将“20170715-1622”改成机器中对应的文件夹
读完这篇文章后,你的数据科学工具库将添加一些强大的新工具,帮助你为自己的深度学习模型自动找到最佳配置。 与机器学习模型不同,深度学习模型实际上充满了超参数。...你可以使用工作区在完全配置的云服务器上运行以下代码(使用 Scikit-learn 和 Keras 进行网格搜索)。...你可以使用工作区在完全配置的云服务器上运行以下代码(使用 Scikit-learn 和 Keras 进行随机搜索)。...你可以使用工作区在完全配置的云服务器上运行以下代码(使用 Hyperas 进行贝叶斯优化(SMBO-TPE))。 搜索策略对比 现在让我们来总结一下到目前为止所涵盖的策略,以了解每个策略的优缺点。...在 FloydHub 上管理你的实验 FloydHub 最大的特点之一是能够在训练时比较使用不同的超参数集的不同模型。 下图展示了 FloydHub 项目中的作业列表。
它为开发人员提供了一套用于在 GPU 上探索数据、训练深度学习模型以及运行计算工作的完整工具。...常用的供应商包括亚马逊的 AWS、微软的 Azure 和谷歌的 GCP。 创建虚拟服务器 选择云服务供应商之后,就要创建自己的虚拟机了,它基本上就是托管代码、数据以及配置设置的服务器。...创建虚拟机的步骤取决于你所选择的云供应商。 在我写的《Hands-on Transfer Learning with Python》第二章中详细介绍了如何在 AWS 上创建和实例化自己的虚拟机。...假设你用的是英伟达的 GPU。测试你是否安装了驱动的最好方法是在终端运行 nvidia-smi 命令。如果命令不起作用,我们就要安装 GPU 驱动。 ? 2....我们用得比较多的是 keras 和 tensorflow,下面的命令可以帮助我们在自己的深度学习环境上安装它们: ? 访问深度学习云端环境 我们并不想一直在服务器的终端上写代码。
读完这篇文章后,你的数据科学工具库将添加一些强大的新工具,帮助你为自己的深度学习模型自动找到最佳配置。 与机器学习模型不同,深度学习模型实际上充满了超参数。...你可以使用工作区在完全配置的云服务器上运行以下代码(使用 Scikit-learn 和 Keras 进行网格搜索)。...你可以使用工作区在完全配置的云服务器上运行以下代码(使用 Scikit-learn 和 Keras 进行随机搜索)。...你可以使用工作区在完全配置的云服务器上运行以下代码(使用 Hyperas 进行贝叶斯优化(SMBO-TPE))。...在 FloydHub 上管理你的实验 FloydHub 最大的特点之一是能够在训练时比较使用不同的超参数集的不同模型。 下图展示了 FloydHub 项目中的作业列表。
这个损失实际上和原始的GAN损失是一模一样的,如果这一步不是很理解的可以参考我之前的一篇专栏:GAN学习指南:从原理入门到制作生成Demo。 但单纯的使用这一个损失是无法进行训练的。...,我使用的代码是:vanhuyz/CycleGAN-TensorFlow。...为了训练这么一个模型,我们需要分别准备好男性的图片和女性的图片。在实践中,我使用了CelebA数据集,分别取出其中男性和女性的图片并统一缩放到256x256的大小,然后存入两个文件夹中: ?...当然,也可以使用自己的数据,只需要将它们存为jpg格式并统一缩放到256x256的大小就可以了。接下来的步骤为: 1..../man2woman/woman.tfrecords \ --image_size 256 训练的过程比较漫长,此时可以打开TensorBoard来观察训练情况(运行这个命令时需要将
以下是使用Beta版本对测试图像着色的结果。 ? 我们没有使用ImageNet,而是在FloydHub上创建了一个高质量图像的公共数据集。图片来自Unsplash——公开的专业摄影师创意图片。...以下是一些验证图像,仅使用20张图像来训练网络。 ? 大多数图像变得很差,但是由于大量验证/测试集(2,500张图像),我设法找到了一些看上去还不错的图像。...在更多的图像上进行训练可以获得更加一致的结果,但是大部分都是棕色的。这里是我运行的实验的完整列表,包括验证图像。...在30次实验以后,我仍然发现而来很多错误。程序能运行并不等同于能用。调试神经网络有多复杂不用我多说。 多样化的数据集让着色效果呈现棕色(brownish)。 每幅图片的大小都需要确定,比例一致。.../emilwallner/Coloring-greyscale-images-in-Keras),以及我在FloydHub的GPU云上运行的所有实验的代码(https://www.floydhub.com
领取专属 10元无门槛券
手把手带您无忧上云