机器学习社区:2023 年第二季度的亮点和成就

七月 25, 2023
Hee Jung DevRel Community Manager
Soonson Kwon DevRel Program Manager

让我们一起探索 Google 广泛的机器学习社区在 2023 年第二季度的亮点和成就。我们对全球 ML 社区网络的所有活动感到兴奋和欣慰。以下是一些亮点!

ML 培训活动总结

今年上半年,全球超过 35 个社区举办了由机器学习开发者计划团队组织的机器学习活动。感谢大家为整个机器学习社区的培训工作所付出的努力!

社区亮点

Keras

kaggle1

来自印度的 ML 开发者专家 (GDE) Suvaditya Mukherjee 发布了一篇 Kears.io 代码示例“使用可组合全卷积网络进行图像分割”(Image Segmentation using Composable Fully-Convolutional Networks),解释了如何使用 VGG-16 后端实现全卷积网络,以及如何将其用于执行图像分割。他在 TFUG 马来西亚小组和 TFUG 加尔各答小组的演讲“KerasCV for the Young and Restless”(幻灯片 | 视频)简单介绍了 KerasCV。他讨论了基本的计算机视觉组件的工作原理、为什么 Keras 是一个重要的工具,以及 KerasCV 如何基于已建立的 TFX 和 Keras 生态系统而构建。

ML GDE Aritra Roy Gosthipaty(印度)在 [ML 故事]《我的 Keras 编年史》(My Keras Chronicles) 中总结了他如何开始使用 Keras 进入深度学习领域。他还就如何进入开源社区提出了建议。此外,他还分享了他的 Kaggle 笔记本“[0.11] keras starter: unet + tf data pipeline”,这是关于维苏威挑战赛的入门指南。他和 Subvaditya 还分享了关于时间潜伏瓶颈网络(该理论于本论文中提出)的 Keras 实现代码

来自葡萄牙的 ML GDE Ayse Ayyuce Demirbas 开发了一个名为“KerasFuse”的 Python 库。该库将 TensorFlow 和 Keras 的强大功能与各种计算机视觉技术相结合,用于医学图像分析任务。该库提供了一系列模块和函数,以促进 TensorFlow 和 Keras 中用于图像分割、分类等任务的深度学习模型的开发。

TFUG 伊巴丹小组发表了“2023 年 Google I/O 大会:TensorFlow 的最新功能和工具的预览”(TensorFlow at Google I/O 23: A Preview of the New Features and Tools) 演讲。演讲探讨了 TensorFlow 的最新功能和工具的预览,并涵盖广泛的主题,包括 Dtensor、KerasCV 和 KerasNLP、TF 量化 API 以及 JAX2TF。

kaggle2

来自巴西的 ML GDE Dimitre Oliveira 发布了“稳定扩散 - 文本反转实现应用”(StableDiffusion - Textual-Inversion implementation app) 代码示例。该示例展示了如何实现研究中的代码,并使用 Textual Inversion 过程进行微调。该示例还提供了一些有价值的工具和框架的相关用例,如 HuggingFace、Gradio、TensorFlow Serving 和 KerasCV。

来自加拿大的 ML GDE Tanmay Bakshi 发表了“理解梯度下降算法并从头开始构建一个基于 TF 的图像分类器”(Understanding Gradient Descent and Building an Image Classifier in TF From Scratch) 演讲。在该演讲中,他介绍了如何培养对机器学习技术背后基本原理的深入理解和直觉,并展示了如何使用 TF.Keras 框架从头开始构建一个实际的图像分类系统。

来自印度的 Usha Rengaraju 发布了“对 CVPR 2023 论文的 TensorFlow 和 Keras 实现”(TensorFlow and Keras Implementation of the CVPR 2023 paper) 代码示例,以实际实现《BiFormer:具有双层路由注意力的视觉 Transformer》(BiFormer: Vision Transformer with Bi-Level Routing Attention) 论文中提出的方法。

Rouizi Yacine 创建了一个名为“使用 Python、OpenCV 和深度学习进行微笑检测”(Smile Detection with Python, OpenCV, and Deep Learning) 的教程,解释了如何使用深度学习以及 TensorFlow、Keras 和 OpenCV 来构建一个更强大的微笑检测器。

Kaggle

kaggle3

GDSC Uninter 社区面向希望提高 ML 技能的学生和志存高远的机器学习从业者,组织了学生 ML 奥林匹克竞赛。该竞赛的挑战包括预测美国工作签证申请的结果。320 多人报名参加了开幕活动,活动在 YouTube 上获得了 700 多次观看,66 支队伍参加了比赛,最终获胜者获得了 71% 的 F1 分数。

来自土耳其的 ML GDE Ertuğrul Demir 创建了一个名为“ICR | EDA & Baseline”的入门笔记本,适用于对 Kaggle 上最新的特色代码竞赛感兴趣的新手。该笔记本获得了 200 多个赞并派生出了 490 多个分支。

kaggle4

TFUG 哈吉布尔小组举行了一个主题为“使用权重和偏差更有效地在 Kaggle 上竞争”(Compete More Effectively on Kaggle using Weights and Biases) 的聚会活动。该活动旨在探索如何借助一些技巧以使用权重和偏差来提高模型在 Kaggle 比赛中的表现。来自印度的 Usha Rengaraju 担任演讲嘉宾,并就 Kaggle 和赢得竞赛的策略发表了自己的见解。她分享了一些技巧和诀窍,并演示了如何设置 W&B 账号以及如何与 Google Colab 和 Kaggle 进行集成。

来自印度的 ML GDE Ayush Thakur 发布了一个讨论帖子“基于骨架的动作识别:失败尝试”(Skeleton Based Action Recognition: A failed attempt)。这个讨论帖子是关于他在 Kaggle 竞赛“Google - 孤立手语识别”(Google - Isolated Sign Language Recognition) 中的经验总结。他分享了自己的代码库、训练日志以及他在竞赛中采用的思路。此外,他还在文章《Keras 稠密层:如何正确使用》(Keras Dense Layer: How to Use It Correctly) 中探讨了 Keras 的稠密层是什么,以及它在实践中的工作原理。

设备端 ML

kaggle5

来自印度的 ML GDE Pankaj Rai 在在教育工作者技术讲座上发表了“将机器学习添加到您的 Android 应用中”(Add Machine Learning to your Android App) 演讲。该演讲的主题是设备端 ML 介绍,以及如何将机器学习功能(例如目标检测和手势检测)添加到 Android 应用中。Pankaj Rai 解释了机器学习套件、MediaPipe 和 TF Lite 的功能,以及如何使用这些工具。有 700 多人报名观看了他的演讲。

2023 年新加坡的 I/O Extended 活动上,来自新加坡的 ML GDE Martin Andrews 在“MediaPipe 趣味介绍”(MediaPipe with a bit of Bard) 活动中分享了 MediaPipe 如何融入生态系统,并展示了 MediaPipe 的四个不同功能:音频分类、面部关键点定位、交互式分割和文本分类。

来自玻利维亚的 ML GDE Juan Guillermo Gomez Torres 发表了“使用 Google ML Kit 和 MediaPipe 将 ML 添加到应用中”(Adding ML to our apps with Google ML Kit and MediaPipe) 演讲。在该演讲中,他介绍了机器学习套件和 MediaPipe,以及设备端机器学习的优势。在“墨西哥创业学院”(Startup Academy México) 培训活动 (Google for Startups) 中,他分享了如何使用 ML 和 MediaPipe 增加客户的价值。

LLM

来自美国的 ML GDE Hannes Hapke 发表了《Google PaLM 2 API 介绍》(Introduction to Google's PaLM 2 API) 一文。在这篇文章中,他介绍了如何使用 PaLM2,并总结了其主要优势。他的另一篇文章《ML 工程在 GPT-4 和 PaLM 2 时代中的作用》(The role of ML Engineering in the time of GPT-4 & PaLM 2) 解释了 ML 专家在以下方面中的作用:寻找利益相关方之间的适当平衡和协调,以最佳方式应对这一新兴技术带来的机遇和挑战。他在 2023 年北美 Connect 大会GDG 波兰团队活动中进行了同一题目的演讲。

kaggle6

来自沙特阿拉伯的 ML GDE Ruqiya Bin Safi 发布了“ChatBard:智能客户服务中心应用”(ChatBard: An Intelligent Customer Service Center App) 代码示例。ChatBard 是一款智能客户服务中心应用,由使用 PaLM2 API 的生成式 AI 和 LLM 提供支持。

来自新加坡的 ML GDE Sam Witteveen 发布了“Bard 可以编写代码并将其放入 Colab”(Bard can now code and put that code in Colab for you) 视频。在该视频中,他展示了 Bard 如何编写代码。他经营着一个探索 ML 和 AI 的 YouTube 频道,播放列表涵盖了生成式 AI论文评论LLMLangChain 等不同主题。

来自印度的 ML GDE Bhavesh Bhatt 发布了“Google Bard 可以编写代码”(Google 's Bard Can Write Code) 视频。在该视频中,他展示了 Bard 的编码能力、如何使用 Bard 创建 2048 游戏,并介绍了如何为游戏添加一些基本功能。他还在播放列表中上传了有关 LangChain 的视频,并在此视频中介绍了 Google Cloud 关于生成式 AI 的新课程

kaggle7

GDG Cloud 沙特团队组织了“注意力机制和 Transformer 模型”(Attention Mechanisms and Transformers) 培训活动。在该活动中,他们介绍了 NLP 和 ML 中的注意力机制和 Transformer 模型。来自沙特阿拉伯的 ML GDE Ruqiya Bin Safi 作为嘉宾发表了演讲。该团队还在吉达举办了另一场活动:“使用 PaLM2 API 创建智能应用的实践”(Hands-on with the PaLM2 API to create smart apps(Jeddah))。在该活动中,他们探讨了 LLM、PaLM2 和 Bard 是什么、如何使用 PaLM2 API 以及如何使用 PaLM2 API 创建智能应用。

来自美国的 ML GDE Henry Ruiz 和 Web GDE Rabimba Karanjai 主持了一场关于生成式 AI 的研讨会,“生成式 AI 实践:Google I/O Extended [线上活动]”(Hands-on with Generative AI: Google I/O Extended [Virtual])。该研讨会展示了关于使用 PaLM API、Hugging Face Transformer 和 LangChain 框架等工具的实际操作演示,以帮助初学者入门。

2023 年的 Google I/O Extended 乔治市活动上,来自马来西亚的 ML GDE Kuan Hoong 发表了“使用 Google PaLM 和 MakerSuite 的生成式 AI”(Generative AI with Google PaLM and MakerSuite) 的演讲,该演讲围绕使用 Google PaLM 和 MakerSuite 的生成式 AI 展开了讨论。活动由GDG 乔治市团队主办,还涵盖 LLM、Responsible AI 和 MLOps 等 ML 相关主题。

kaggle8

TFUG 圣保罗小组举办了“使用 PaLM API 和 MakerSuite 的生成式 AI 简介”(Intro to Gen AI with PaLM API and MakerSuite) 介绍活动。该活动旨在向希望了解生成式 AI 以及学习如何使用 Google 工具促进采用和价值创造的人提供帮助。该小组介绍了如何使用 MakerSuite 对生成式 AI 创意进行原型设计,以及如何访问 PaLM2 和 PaLM API 的高级功能。该小组还主持了“打开潘多拉之盒:理解改变自然语言处理领域的论文”(Opening Pandora's box: Understanding the paper that revolutionized the field of NLP) 会议(视频)。在会议中,来自巴西的 ML GDE Pedro Gengo 和 ML GDE Vinicius Caridá 分享了知名 LLM 和其他生成式 AI 模型背后的秘密。小组成员还一起学习研究了《注意力就是一切》(Attention Is All You Need) 论文,并了解了该技术所能提供的全部潜力。

GDG Cloud 台北团队组织了“PaLM 能说、能看、能动、能理解的语言模型”(Language models which PaLM can speak, see, move, and understand) 活动,旨在为想要了解 PaLM 的概念和应用的人提供帮助。在活动中,来自中国台湾的 ML GED Jerry Wu 分享了 PaLM 的主要特点、功能等内容。

kaggle9

来自韩国的 ML GDE Chansung Park 和来自印度的 ML GDE Sayak Paul 发表了《使用 TF 和 GKE 提供服务:稳定扩散》(Serving With TF and GKE: Stable Diffusion) 一文。在这篇文章中,他们讨论了 TF Serving 和 Kubernetes Engine 如何为在线部署的系统提供服务。他们将稳定扩散分解为主要组件,并讨论这些组件如何影响后续的部署考虑。然后,他们介绍了与部署相关的细节,例如 TF Serving 的部署和 k8s 集群配置。

来自韩国的 ML GDE Chansung Park 发布了“TFX + W&B 集成”(TFX + W&B Integration) 代码示例,展示了如何在 TFX 调谐器组件中将 KerasTuner 与 W&B 的实验跟踪功能结合使用。他开发了一个自定义 TFX 组件,将经过全面训练的模型推送到 W&B Artifact 商店,并使用当前版本的模型在 Hugging Face Space 上发布工作应用。此外,他发表了题为“Google Cloud Platform 中的 ML 基础架构和高级框架”(ML Infra and High Level Framework in Google Cloud Platform) 的演讲,讲述了 MLOps 是什么、为什么它很难实施、为什么将云和 TFX 相结合是一个很好的起点,以及 TFX 如何与 Vertex AI 和 Dataflow 无缝集成。他还分享了他和来自印度的 ML GDE Sayak Paul 在过去两年中完成的项目的使用案例。

来自印度的 ML GDE Sayak Paul 发表了“开放协作的 MLOps”(Open and Collaborative MLOps) 演讲。在该演讲中,他讨论了为什么开放性和协作性是 MLOps 的两个重要方面,并简单介绍了 Hugging Face Hub 以及该存储库如何与 TFX 进行良好集成,以促进 MLOps 工作流程中的开放性和协作性。

ML 研究

来自英国的 ML GDE Grigory Sapunov 发表了《论文评论:PaLM 2 技术报告》(Paper review: PaLM 2 Technical Report) 一文。在这篇文章中,他深入探讨了 PaLM 2 模型和相关论文的细节。他通过社交渠道分享了与 Google 和 DeepMind 相关的论文评论,其中一些论文包括:《极端风险的模型评估》(Model evaluation for extreme risks)论文)、《使用深度强化学习发现更快的排序算法》(Faster sorting algorithms discovered using deep reinforcement learning)论文)、《对于经过训练的代理来说,寻求控制力是可能的,并且具有预测性》(Power-seeking can be probable and predictive for trained agents)论文)。

来自印度的 ML GDE Aritra Roy Gosthipaty 和 ML GDE Ritwik Raha 发布了《2023 年 JAX 学习之旅:第三部分 — 使用 JAX 训练第一个机器学习模型的分步指南》(Learning JAX in 2023: Part 3 — A Step-by-Step Guide to Training Your First Machine Learning Model with JAX) 一文。该指南展示了如何使用 JAX 训练线性和非线性回归模型,以及如何使用 PyTrees 库训练多层感知器模型。此外,在 TFUG 孟买小组主办的2023 年 5 月见面会上,他们发表了题为“用 Transformer 解码端到端目标检测”(Decoding End to End Object Detection with Transformers) 的演讲,介绍了该模型的架构以及导致 DETR 出现的各种组成部分。

来自台湾的 ML GDE Jerry Wu 发表了《在 TPU 上训练部署版的 GPT 模型的 20 个步骤》(20 steps to train a deployed version of the GPT model on TPU) 一文。在这篇文章中,他介绍了如何使用 JAX 和 TPU 来训练和推断中文问答数据。

kaggle10

TFUG 新加坡小组举办了“多模态 Transformer - 自定义 LLM、ViT 和 BLIP”(Multimodal Transformers - Custom LLMs, ViTs & BLIPs) 活动。该活动探讨了最近推出的与多式联运任务相关的模型、系统和技术。来自新加坡的 ML GDE Sam Witteveen 详细介绍了各种多模态模型和系统,以及如何使用 PaLM2 模型来构建自己的多模态模型。在六月份,该团队邀请了 Blaise Agüera y Arcas(Google 研究的副总裁和研究员)参与活动,并介绍了关于 Cerebra 项目的信息以及 Google DeepMind 正在进行的研究,包括生成式 AI 的当前发展、未来发展以及新兴趋势。

TensorFlow

来自澳大利亚的 ML GDE Thushan Ganegedara 发表了文章《训练具有动态嵌入的推荐模型》(Training a recommendation model with dynamic embeddings),解释了如何利用 TensorFlow 推荐器 (TFRS) 和 TensorFlow 推荐器插件 (TFRA) 来构建电影推荐器模型,并重点介绍了如何使用 TFRA 库中提供的动态嵌入功能来动态增加和缩小推荐设置中嵌入表的大小。

kaggle11

来自法国的 ML GDE Mathis Hammel 发表了“我如何以 100 美元建造了世界上最高效的深度伪造检测器”(How I built the most efficient deepfake detector in the world for $100) 演讲。在该演讲中,他探讨了一种检测通过 ThisPersonDoesNotExist.com 生成的图片的方法,他甚至找到了一种可以知道照片生成准确时间的方式。此外,他还发布了 Twitter 推文串“LinkedIn 上的 OSINT 调查”(OSINT Investigation on LinkedIn),对 LinkedIn 上的虚假公司网络进行了调查。他使用了基于 TensorFlow 模型的自制工具,并将其托管在 Google Cloud 上。推文中还包括了有关生成式神经网络的技术解释。该推文吸引了超过 701,000 人阅读,获得了 1,200 多次转发和 3,100 余次点赞。

kaggle12

来自巴西的 ML GDE Hugo Zanini 发表了《少镜头学习:使用 TensorFlow 和 Python 创建实时目标检测》(Few-shot learning: Creating a real-time object detection using TensorFlow and Python) 一文。在这篇文章中,他演示了如何使用摄像头拍摄目标的照片、标记图像,并训练少镜头学习模型实时运行。此外,他还在《使用 TensorFlow.js 进行自定义的 YOLOv7 目标检测》(Custom YOLOv7 Object Detection with TensorFlow.js) 一文中解释了他如何训练自定义 YOLOv7 模型,并使用 TensorFlow.js 使其直接在浏览器中离线实时运行。

image10.png

来自西班牙的 ML GDE Gema Parreno Piqueras 发表了“文字之主:DVC 实验的回归”(The Lord of the Words : The Return of the experiments with DVC) 演讲(幻灯片)。在该演讲中,她解释了神经机器学习场景中的 Transformer 是什么,以及如何使用 Tensorflow 和 DVC。在该项目中,她使用 TensorFlow Datasets 翻译目录来加载来自不同语言的数据,并使用 TensorFlow Transformer 库来训练多个模型。

来自印度的 ML GDE Sayak Paul 在“2023 年加尔各答云社区日”(Cloud Community Days Kolkata 2023) 和“2023 年浦那云社区日”(Cloud Community Days Pune 2023) 这两个活动上发表了两个关于如何使用 XLA 加速 TensorFlow 模型的演讲:“使用 XLA 来加速您的 TensorFlow 模型”(Accelerate your TensorFlow models with XLA)幻灯片),以及“使用 XLA 加速在 TensorFlow 中的模型部署”(Ship faster TensorFlow models with XLA)

来自巴西的 ML GDE Rubens Zimbres 发表了《配置 NVIDIA Merlin 和 TensorFlow 用于推荐模型》(Setup of NVIDIA Merlin and Tensorflow for Recommendation Models) 一文。他在这篇文章中对推荐算法和 Two Towers 算法进行了评价。此外,他还介绍了如何在本地环境和 Vertex AI 上设置 NVIDIA Merlin。

来自意大利的 ML GDE Paolo Galeone 发表了《在 Vertex AI 上使用 Go 语言实现用于表格数据的 AutoML 流水线》(AutoML pipeline for tabular data on VertexAI in Go) 一文。在这篇文章中,他深入探讨了使用 Vertex AI 和 Go 语言开发和部署表格数据模型的自动化机器学习流水线。他展示了实际的 Go 代码,并分享了通过尝试和错误以及广泛的 Google 研究而获得的宝贵经验,以克服文档限制。

kaggle14

来自巴西的 ML GDE Pedro Gengo 和 ML GDE Vinicius Caridá 发表了《超越图像:使用 AI 在视频中搜索信息》(Beyond images: searching information in videos using AI) 一文(幻灯片)。在这篇文章中,他们展示了如何创建一个搜索引擎,以在视频中搜索信息。他们提出了一个架构,在这个架构中,他们将音频转录为文本并给帧添加字幕、将这些文本转换为嵌入向量,并将其保存在向量数据库中,以便能够根据用户的查询进行搜索。

来自美国的 ML GDE Gant Laborde 发布了“为开发者创建出色的机器学习体验的秘密”(The secret sauce to creating amazing ML experiences for developers) 播客。他在这个播客中分享了他的“顿悟”时刻、他在机器学习领域拥有的 20 年经验,以及创造精彩和有意义的开发者体验的秘密。

来自葡萄牙的 ML GDE Gad Benram 发表了《Google 的 Generative AI Studio 里有什么?》(What's inside Google’s Generative AI Studio?)一文。在这篇文章中,他分享了新功能预览以及用户对新功能的期望。此外,他还发表了“如何在 2023 年推广 Vertex AI”(How to pitch Vertex AI in 2023) 一文中。在这篇文章中,他分享了六个简单而真诚的销售要点,以帮助 Google Cloud 的代表说服客户选择 Vertex AI 作为正确的平台。

来自卡塔尔的 ML GDE Sachin Kumar 发表了“如何与 Sachin Kumar 构建对话式 AI 增强现实体验”(How to build a conversational AI Augmented Reality Experience with Sachin Kumar) 演讲。在该演讲中,他介绍了如何结合 Google Cloud AI、Unity 等多种技术来构建 AR 应用,以及从头开始构建应用的分步指南。

kaggle15

来自印度的 ML GDE Nitin Tiwari 发表了主题为“在 Google Cloud 平台上进行机器学习”(Machine Learning on Google Cloud Platform) 的指导,旨在让学生深入了解训练 ML 模型和使用 GCP 部署模型所涉及的流程。在“使用 TensorFlow 和 GCP 构建强大的 ML 解决方案”(Building robust ML solutions with TensorFlow and GCP) 一文中,他分享了如何充分利用 GCP 和 TensorFlow 的功能来解决机器学习问题,以及如何部署自定义的 ML 模型。

TFUG 普拉亚格拉杰小组举行了主题为“Google Cloud 上从数据到 AI 的转化:AutoML、生成式 AI 等技术”(Data to AI on Google cloud: Auto ML, Gen AI, and more) 的活动,向学生介绍了如何利用 Google Cloud 的先进 AI 技术,例如 AutoML 和生成式 AI。