开发者如何在云上技术中玩转机器学习?

53ee41aeca8293e2f23918cf4d3f4306.gif

近期,AI 领域不断涌现出重大的变革和创新,其中包括大规模模型的问世和 AIGC 技术的快速迭代发展。每天都有新技术、新算法不断涌现,更大型的模型也层出不穷。AI 技术已经渗透到了各行各业,对开发者、设计师、文字工作者等职业都产生了深刻影响。AI 正在改变着我们的工作生产方式,这已成为行业的共识。因此,了解和掌握 AI 的重要技术变革和趋势对于开发者来说至关重要。

为了让更多的开发者了解和真正参与到技术的开发与应用中,我们推出了一项名为【云上探索实验室】的活动,希望可以和开发者一起从实践中探索技术的边界。本期实验室主题围绕【从实践中探索机器学习边界——Amazon SageMaker 产品体验活动】进行。

从实践中探索机器学习边界——Amazon SageMaker 产品体验活动:

https://dev.amazoncloud.cn/experience

903977281c7a11c5638e93147d68758f.png

c2339e5285a1bb5a1374f87c1e35996e.png

9f87b1f773d7021501f5a5aaef469f6a.jpeg

活动得到了众多专业开发者和技术爱好者的热情响应,他们积极参与提交产品体验报告,并分享了实践的视频 Demo。在活动社群中,参与者们积极交流讨论,相互帮助解决问题,共同创造分享、互相启发、共同玩转云上技术的氛围十分活跃。

热门创意作品曝光,

开发者分享心得与避坑经验

现在活动已经进入了中期阶段,许多开发者已经提交了自己的体验作品,并分享了一些心得与避坑经验。为了让更多的开发者加入其中,我们选取了一些具有代表性的体验报告和实践文档分享给大家,希望也可以给大家带来一些开发中的灵感。

1

体验者“白水”:

仅20分钟,就可搭建属于自己的 AIGC 应用

体验者“白水”《20分钟,使用 Amazon SageMaker 快速搭建属于自己的 AIGC 应用 》文中图文并茂地逐步讲解了基于Amazon SageMaker搭建 AIGC 应用的整体流程:

  1.  创建 Notebook;

  2.  利用 Hugging Face 克隆模型;

  3.  了解模型的超参数;

  4.  配置和微调 Stable Diffusion 模型;

  5.  部署和使用训练好的模型;

  6.  清理资源。

《20分钟,使用 Amazon SageMaker 快速搭建属于自己的 AIGC 应用 》:

https://al4x5zumz6.feishu.cn/docx/I7kJdl1W9o6CQ7xd9XgcOkGfn9f

b734a457d861df20213937210a58502e.png

使用 Amazon SageMaker 基于 Stable Diffusion 模型搭建的 AIGC 应用

除了讲解如何搭建 AIGC 应用,作者还设计了两个评估模型性能实验:“CPU 和 GPU 对生成速度”和“超参数对模型性能”,探究 Stable Diffusion 模型在不同情况下的效率区别,进而更加详细地展现对 Stable Diffusion 模型的解读。

“目前市面上机器学习的平台已经有很多,Amazon SageMaker 是比较全面的,而且还是面向应用的。”体验者“白水”表示,Amazon SageMaker 中包括了机器学习的各个流程,以往 Python 中的开发习惯完全可以在 Amazon SageMaker 中适用。不仅如此,Amazon SageMaker 支持 Sklearn、PyTorch、TensorFlow、Hugging Face 等,对这些主流模块和框架都有相应的封装。为了方便训练模型,Amazon SageMaker 还提供了 Amazon AutoPilot 可以自动对各种模型以及各组超参数进行搜索,训练最优模型。

2

体验者“墨理学 AI”:

讲解视频+体验报告,小白开发者的福音

相比较其他小伙伴儿提交的体验报告,体验者“墨理学 AI” 的《 如何在亚马逊 SageMaker 进行 Stable Diffusion 模型在线服务部署 》则为我们带来了 AI 模型的 Web 端在线部署和推理调用实践。

《 如何在亚马逊 SageMaker 进行 Stable Diffusion 模型在线服务部署 》:

https://positive.blog.csdn.net/article/details/130019373

文章从如何在 Amazon SageMaker 中进行环境搭建展示开始,创建笔记本编程实例(这个过程大概5分钟左右)——下载代码并上传到 Jupyter 中——选择合适的 Conda 环境。

第二步一键运行所有代码,代码执行过程中会依次完成 Stable Diffusion 模型相关类和函数的代码定义、推理测试,并打包代码和模型,然后部署模型至 Amazon Sagemaker 推理终端节点。

8263058be696ac318f9d68f56f9e1c18.png

模型创建完成之后,作者通过 Amazon Cloud9 创建了一个前后端 Web 应用。在云服务环境的创建成功基础上,运行下图中的服务代码。

07754403e2a345d869cac257dacd8ec0.png

作者完成测试体验之后,表示即使每次输入的提示词是同一个,模型生成得到的输出也是不固定的。所以他建议输入提示词语如果越精准,生成的图像效果可能会越好。

“通过使用 Amazon SageMaker 服务平台,我们只需要一个浏览器,即可编写、运行和调试各种代码,无需进行复杂的机器适配和环境搭建,能够快速完成 AI 模型的推理、测试、验证部署工作。”体验者“墨理学 AI”谈到。通过借助 Amazon SageMaker 平台进行 AI 模型服务部署,可以简化普通开发者进行 AI 模型部署服务的难度,这对于中小企业和个人开发者而言,AI 服务的快速落地也不再是一件难事

3

体验者“ZackSock”:

Amazon SageMaker 使用自编码器完成人脸生成

与其他体验者不同,体验者“ZackSock”《Amazon SageMaker 使用自编码器完成人脸生成 》围绕 Amazon SageMaker 和自编码器进行的一次体验实践。通过训练自编码器,制作实现“变脸需求”,让人脸 A 渐渐变成人脸 B、让一个人从小慢慢变老、生成人脸等有趣的小实验。

《Amazon SageMaker 使用自编码器完成人脸生成 》:

https://blog.csdn.net/ZackSock/article/details/129745320

作者首先使用 Amazon SageMaker 进行环境创建,再进行数据处理,最后训练一个自编码器。本次作者使用的数据是10万张修正好的人脸图片,所以实践是训练一个人脸的自编码。作者针对人脸渐变原理详细解释到,假设人脸 A 被编码成 z1,人脸 B 被编码成 z2,现在想让人脸由 A 到 B 渐变。现在可以把这个问题转换为向量 z1 和 z2 之间的渐变,向量的渐变可以直接使用插值算法,我们在两个向量见插入 n 个向量,再把这些向量输入解码器,得到的人脸图像就是介于 A 和 B 之间的人脸。现在人脸渐变就变为了插值。具体操作如下:

首先实现插值算法,插值的实现很简单,具体代码如下:

f7b65be87fac907e9a09307156faa437.png

上面函数输入两个长度一样的向量,输出 num 个向量。这 num 个向量将作为 Decoder 的输入。接下来使用 Decoder 部分进行推理:

65ad6b612cecef4efc8798f033e8af35.png

下面是实现的效果:

6736b09c45da868ef2becee36452c484.png

自编码器不仅可以实现人脸渐变,还能生成人脸。作者分享表示:“在训练自编码器时,把人脸编码成一个长度为1024维的向量。现在我们假设人脸服从高斯分布,如果能求出均值和方差,就可以知道这个高斯分布的具体样子。在知道高斯分布的具体表达式后,就可以对从中采样人脸向量,把这个向量交给 decoder 就可以生成人脸。”

199855a87626273b15c71143c91c0d2c.png

示例图

除了上面这些开发者朋友们的分享内容,还有很多的小伙伴们提交了自己的体验报告,这里就不一一展示了,直接给大家看看他们都做出了哪些好玩的创意作品吧。

e5dabf6324038585baff2d770cc4206f.png

任务:“A bird is flying in space” 和 “Photos of horseback riding under the sea”

7df09dd289d9f216e3ebea5728eb111d.png

任务:“A cute panda is sitting on the sofa”

f29b55aa8c09846b81fbb1dd94f572fd.png

任务:“一个宇航员在骑马”

AI 生成图像和绘画,非常直观和有趣。其实你也可以从零动手,实现上面这些充满创意和趣味的作品,快来参加【云上探索实验室】从实践中探索机器学习边界——Amazon SageMaker 产品体验活动吧!

c9585b6ff490414d385d185bdca1be40.png

除了分享自己的作品,体验者还无私分享了对于技术和产品的理解与积累。

例如,“盼小辉丶”为我们总结了关于 Amazon SageMaker 为开发者带来的便利:

提供了完备的机器学习工具,通过自动化功能帮助用户快速优化模型和参数;

提供交互式笔记本,可快速地探索和处理数据;

提供多种不同的模型部署和管理方式,满足使用过程中在不同场景下的需求;

提供完善的监控和调试工具,确保模型的稳定性和可靠性。

另外,体验者白水还自发汇总了对开发过程中有帮助的产品文档:

Amazon SageMaker 入门教程:

https://aws.amazon.com/cn/sagemaker/getting-started/

Amazon SageMaker 产品介绍:

https://aws.amazon.com/cn/sagemaker/

Amazon SageMaker 产品文档:

https://docs.aws.amazon.com/zh_cn/sagemaker/index.html

Stable Diffusion 模型文档(HuggingFace):

https://huggingface.co/spaces/stabilityai/stable-diffusion

Stable Diffusion 模型文档(StabilityAI):

https://stability.ai/blog/stable-diffusion-public-release    

以上只是本次活动中的体验者分享的很少一部分技术与内容。他们作为此次活动的前期体验者,在活动和社群中学习实践云上技术,并将成果毫无保留地分享出来,同时摸索经验和克服开发中遇到的难点,帮助其他开发者在体验学习中避坑,这正是本次活动所倡导的“一同创造分享,互助启发,玩转云上技术”!

7377908c8815c957a42fb7affb1605e4.png

579c4712bf01a5f3f91e5b8819eb62f7.gif

d3a35d69e3ca43256370bd82e3456b82.gif

听说,点完下面4个按钮

就不会碰到 bug 了!

c74eaf9b5df3be4d2d9678dd3911e513.gif

猜你喜欢

转载自blog.csdn.net/u012365585/article/details/130143974