参加GCP的大数据和机器学习培训“CPB100”

我叫伊藤,是一名基础设施工程师。
在我看来,
谷歌云平台(GCP)。
2016 年 12 月,我参加了一个名为 Google Cloud OnBoard 的 GCP 研讨会,
据说有超过 1000 名参与者。
参与了 Google Cloud OnBoard | Beyond Inc
此次在日本扩张的原因很可能是由于东京区域的推出。Google
Cloud 东京区域 | Google Cloud Platform
我想大概是2016年10月或11月左右。
以上是冗长的介绍,但正如本文标题所示,
我参加了GCP培训课程“CPB100”。
该培训课程侧重于大数据和机器学习。

Google Cloud Platform 免费培训之旅 | Topgate Co., Ltd
关于大数据

虽然我们在本次研讨会上没有进行任何具体操作,但我们获得了许多关于总体概况的信息。
提到谷歌的大数据服务,首先想到的就是“BigQuery”。BigQuery
- 分析数据仓库 | 谷歌云平台
当然,OnBoard 上也讨论过这个问题。
BigQuery 能够在不到 10 秒的时间内完成 100 亿行数据的正则表达式替换。
那么,它的内部工作原理是什么呢?
它将数据拆分并存储在硬盘驱动器 (HDD) 上。当运行查询时,数据会被提取出来,并为每条数据创建一个容器。
由于磁盘 I/O 是运行查询时的瓶颈,BigQuery 将数据拆分到多个容器中,从而实现高速分析。顺便一提,BigQuery 不会创建索引,而是执行全表扫描。显然,
由于数据量太大,创建索引更加困难。
其他服务
| GCP | AWS | 概述 |
|---|---|---|
| 云数据流 | Amazon Elastic Map Reduce | 托管服务,例如批量处理 |
| Cloud Dataproc | Amazon Elastic Map Reduce | 托管式 Spark 和 Hadoop 服务 |
| 云发布/订阅 | 亚马逊简单通知服务 | 一个简单的消息服务 |
以下是一些示例。
为了便于理解,我将其与 AWS 服务进行了比较。
我猜流程大概是这样的。
- 使用 Compute Engine 按进程分发数据
- 数据存储在云存储中
- 使用 Pub/Sub 接收 CloudStorage 数据并将其发送到相应位置
- 使用 Dataflow 或 Dataproc 处理数据
- 此外,处理后的数据存储在云存储中。
对于简单的数据,Compute Engine 可以处理,但
它会成为单点故障。
我认为有效利用托管服务才是云计算成功的关键。
关于机器学习

当你日常使用谷歌时,机器学习就已经存在于你的生活中了。
以Gmail为例。它目前只有英文版本,但
它利用机器学习来推断上下文并提供回复建议。
此外,谷歌还利用机器学习技术调整了数据中心的冷却能耗,成功降低了 40%。
新闻报道——谷歌利用 DeepMind 的人工智能技术,将数据中心冷却能耗降低了 40%:ITpro
各种 API
Google 将其目前开发的技术以 API 的形式提供,
当然,Google 翻译也使用了机器学习 API(翻译 API)。
例如,这个。
语音 API - 语音识别 | Google Cloud Platform
它能将你说的话转换成文字。
谷歌应用和 YouTube 也都有这个功能。
虽然已有图像识别和字符识别技术,但Google Cloud Next '17,谷歌发布了以下技术:
云视频智能 - 视频内容分析 | Google Cloud Platform
这是一个视频版的图像识别技术。目前处于公开测试阶段,所以如果您想试用,需要注册。
自己动手做
使用现有的 API,如果你将一张人物图像输入图像识别 API,它可以识别出这个人是“人”或“男性”,但
无法识别出诸如人名之类的信息。
这是因为谷歌目前提供的应用程序接口(API)无法学习个人姓名。
这是一个相当知名的例子,谷歌提供了一个名为 TensorFlow 的机器学习库,
它被用来区分“好黄瓜”和“大黄瓜”。
谷歌云平台日本官方博客:TensorFlow 将黄瓜种植户与深度学习连接起来
大致来说,这就是你需要的流程。
你需要把它详细地写下来。
- 准备训练数据,创建算法,并创建“训练好的模型”。
- 使用预训练模型
- 继续学习以提高准确性
然而,实现该算法相当困难,
而这正是 TensorFlow 的用武之地。
TensorFlow 是一个用于实现深度学习的库。
如前所述,它由谷歌开发,作为 GCP 服务发布,并且是开源的。
提供 C++ 和 Python API。
此外,机器学习在学习过程中需要大量的资源,
主要是GPU和CPU(例如用于图像识别等任务)。
为此,出现了“云机器学习引擎”。
由于机器学习仅在“学习”时才需要资源,因此非常适合云计算。云机器学习
引擎可以使用GPU,并且后台会部署大量专用于GPU的机器。
预测分析 - 云机器学习引擎 | Google Cloud Platform
如果您对 TensorFlow 感兴趣,
可以加入 TensorFlow 用户组,这是一个不错的学习小组。TensorFlow
用户组东京分部 - connpass
然而,它却异常受欢迎,原本计划只有20人左右的学习小组,竟然有200人参加……!!
概括
还有很多话要说,但只有到场的人才能听到。
午餐盒是提供的,味道很棒。
不用提醒我,我肯定会拍照,这样看起来更美味。

哦,GCP 经常被拿来与 AWS 比较,但接下来的部分让我想,“我明白了!”
AWS“将已作为开源产品(例如 Memcached、ElasticSearch 等)放在 AWS 上,并以易于使用的格式提供给用户”,而
GCP “使用他们自己开发的产品,并将
提供给用户”。
例如,谷歌开发的 MapReduce 已经发展成为 Dremel,并以 GCP 的“BigQuery”之名发布,而 MapReduce 现在以 Hadoop 的名称作为开源软件提供。
GCP 基本上采取了与 AWS 相反的方法。
0