‫好的, 我会的
‫所以现在我们有了一个函数来预处理我们的图像, 也就是把它们变成时态｡
‫我们现在可以开始考虑下一步要做什么了｡
‫所以我们已经准备好了数据, 把它转换成时态｡
‫选择一个模型｡
‫嗯嗯嗯
‫我们还没准备好｡
‫如果我们回来, 我们将进一步了解TensorFlow中的图像学习｡
‫我们会发现TensorFlow喜欢以数据批的形式查看内容｡ k､ a包含图像示例或一段数据示例的张量｡
‫请记住, 这与数据无关｡
‫我们只是用图像作为实际例子｡
‫所以它喜欢给予我一个数据的形式, 它被标记为一个组合张量, 这样我就可以很快地处理它们｡
‫如果您想知道什么是批处理, 那么, 它也称为迷你批处理, 它是数据的一小部分｡
‫一般来说, 如果你想知道什么是好的批处理大小, 或者多少是一小部分,
‫32通常是大多数深度学习模型的默认批处理大小｡
‫我会告诉你这是我如何解决很多问题的｡
‫所以我们批大小去严立群, 你可能会想严立群到底是谁？
‫批量大小是多少？
‫所有这些对我来说都是新的｡
‫好吧, 我想告诉你们一个小窍门, 当你发现或者听说有人, 比如说,
‫是机器学习或者深度学习领域的人物｡
‫我用人工智能的技巧来弄清楚他们对某个话题的看法是我谷歌他们的名字, 我谷歌我正在寻找的概念｡
‫另一个是杰里米·霍华德｡
‫所以约翰·拉金和杰里米·霍华德德, 你可以去杰里米·霍华德批量谷歌, 我只是随便告诉你这两个人,
‫乔希·麦考恩,
‫我会让你研究他, 但他是卷积神经网络的创始人之一, 我们将要用它来处理我们的图像｡
‫但是如果我们谷歌一下严立群的批量, 我们就偏离了主题｡
‫然后我们来到Twitter, 这实际上是一个很棒的资源来解决问题｡
‫听着, 这种小批量的训练对你的健康有害｡
‫更重要的是, 这对你的测试错误是不利的｡
‫朋友不允许朋友使用大于32的小批量｡
‫我们这里有一份关于不同批量的文件｡
‫所以我会让你去查的｡
‫我将在参考资料部分链接这条推文, 以便您可以查看这篇论文｡
‫但这是我们要努力的方向｡
‫我们要将数据转换为大小为32的批｡
‫因此, 它们在TensorFlow中的处理效率非常高｡
‫让我们来做一个小标题, 将数据转换为批处理｡
‫还有这些小花絮, 我刚才给你们看的, 比如搜索某人的名字, 我认为这类事情很重要,
‫对吧？
‫如果我没告诉你或者你没偶然发现你怎么会知道？
‫我发现这一点的唯一方法是偶然发现, 嘿, 人们正在分享所有这些伟大的信息｡
‫我怎么发现, 每隔一段时间, 我的方式并不完美, 但却很有帮助｡
‫我在谷歌上搜索某人的名字和某个概念, 我想了解更多｡
‫这就是为什么如果你发现了有价值的东西, 分享你的工作是很重要的｡
‫好吧, 我会的
‫又一次偏离了主题｡
‫但是为什么我们现在要把一些东西变成批量呢？
‫嗯, 这么说吧｡
‫为什么要将我们的数据批量处理？
‫如果你还对批次感到困惑, 我们只是取一小部分, 32张图像,
‫一次计算这32张图像｡
‫然后是下一个循环, 下一个训练课程, 我们计算下一个32｡
‫因为如果我们试着计算所有10,000张图像的模式｡
‫在这里, 假设您尝试一次处理10, 000多张图像｡
‫它们可能都不适合记忆｡
‫我的意思是, 虽然CPU的计算速度很快, 但它的内存量仍然有限｡
‫我的电脑有16 GB的内存, GPU支持, 这可能有8 GB的内存｡
‫如果我们有10, 000多张图像, 我们试图一次性处理这些图像上的模式, 这可能超过8
‫GB, 这将减缓我们的训练过程｡
‫它会破坏一切的｡
‫所以我们一次做32个｡
‫这就是为什么我们一次要拍摄32张照片｡
‫您可以32张图片, 批量大小｡
‫就在这里
‫这是批处理大小｡
‫如果需要, 您可以手动调整批处理大小｡
‫好吧, 我们聊得够久了｡
‫让我们开始编写一些代码｡
‫我们需要什么？
‫所以写在这里｡
‫为了有效地使用TensorFlow, 我们需要以张量元组的形式提供数据, 如下所示｡
‫所以图像以张量和标签的形式出现｡
‫所以成双成对｡
‫然后我们一次将32张图片传递给机器学习模型,
‫机器学习模型会找出这张图片中与这个标签相关的模式, 然后它会以一种循环的方式结束, 直到它浏览完所有10,000多张图片｡
‫好吧, 我会的
‫让我们构建一些功能｡
‫但首先我们需要一种获取元组的方法｡
‫所以在我们把它们变成32个一批的数据之前, 我们需要得到一个元组, 看起来像这样｡
‫我们来写一个小函数｡
‫因此, 创建一个简单的函数来返回一个元组, 一个可以很好地表达的时态元组｡
‫所以我们要去def获取图像标签｡
‫因为这里有一个函数, 它会返回图像｡
‫所以我们要做的就是得到一个标签, 它和我们传递给这个函数的路径相关联｡
‫我们来看看图像路径｡
‫现在你们一定会嘲笑我这个函数有多简单, 因为我们所做的就是传递图像路径｡
‫实际的标签和我们刚刚编写的图像预处理函数｡
‫处理图像, 图像路径, 然后返回图像标签｡
‫你看那个｡
‫这有多基本？
‫So获取一个图像文件路径名, so she添加标签处理该图像并返回一个图像标签表｡
‫文档字符串比函数长｡
‫真漂亮｡
‫我们甚至不需要那句台词｡
‫我们本来可以把一切都做好的｡
‫返回此处｡
‫现在, 让我们给予一个简单的例子｡
‫让我们看看这到底是什么样子｡
‫过程, 形象｡
‫我们需要文件名｡
‫我们最喜欢的数字加40｡
‫那是什么呢？
‫叫什么名字？
‫公牛巷｡
‫标签｡
‫我们可以用X和Y, 不是吗？
‫这样可能会好些｡
‫十､
‫为什么？
‫42.
‫演示上述内容｡
‫真漂亮｡
‫这是一个元组｡
‫我们的图像在张量中, 因为我们将它传递给过程图像, 但我们的标签还没有在张量中｡
‫不过没关系｡
‫我们可以把它转化为张量, 只要设为TF常数｡
‫我们走吧｡
‫现在我们有了几个图像和标签对｡
‫以时态的形式｡
‫现在, 我们在准备数据方面取得了一些不错的进展｡
‫现在, 还记得我说过的很多机器学习只是将你的数据预处理成一种适合机器学习模型的格式？
‫这就是我们要做的｡
‫现在, 再一次, 这个过程是把我们的数据转换成数据标签的格式, 在一些时态中,
‫不管你使用什么数据, 都是未知的｡
‫所以如果你不用图片, 你用的是文本, 这是一个非常相似的过程,
‫除了你的预处理方式｡
‫文本将与图像不同｡
‫你还是得把它变成时态｡
‫好吧, 我会的
‫所以我们有一个小函数来获取元组形式的图像和标签对｡
‫我们将在下一个视频中编写一个函数, 将图像和标签对转换为批处理｡
‫我们需要注意一些小细节, 具体取决于我们的图像是在训练批次､
‫验证批次还是测试批次中｡
‫但我们会在下一个视频中看到｡