# 前言
随着 **ChatGPT** 的爆火,有越来越多的同学多[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)感兴趣了,想尝试一下如何利用 **AI** 来解决自己身边的问题。在[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)领域主要分为两个派系,**CV** 方向和 **NLP** 方向,作为初学者我的建议是从 **CV** 方便入手,因为操作起来相对简单一些。
看到这里你是否已经跃跃欲试了呢,是否已经准备去买 4090 显卡了呢?不要急,我们可以先使用亚马逊云科技的免费机器学服务器来先动手试试看。
##### 注册与申请
官方网址:[免费机器学习服务 - Amazon (amazon.com)](https://aws.amazon.com/cn/free/machine-learning/?trk=cndc-detail)

如上图所示我们可以免费试用两个月,这对我们入门学习已经够用了。
在我们完成注册后,选择第一个免费的服务即可


# 创建云服务
在我们进入控制台后,可以通过左上角的服务菜单来选择我们需要的服务, 我这里选择的是[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)相关的。


针对新手用户,他们提供了详细的文档

我选择【**Studio**】开始我们的环境搭建


选择角色
如果之前没有创建过角色的,可以创建一个

在创建好域之后,我们在添加一个配置文件

使用默认即可




点击启动菜单下面的【**Studio**】

根据网速,这个页面需要稍等一会


# 训练环境搭建
新建一个 **NoteBook**

镜像我们可以选择 **PyTorch1.13 + Python3.9 GPU** 版本的,我们后面也可以根据需求重新选择适合的镜像。

我们可以通过如下命令来查看云环境中 **PyTorch** 版本以及 GPU 的版本
```
!python -c 'import torch;print(torch.__version__);print(torch.version.cuda)'
```

也可以用以下命令来查看我们安装了哪些 **Python** 库,需要注意的是,我们在 **Notebook** 中执行命令的时候,要在命令前加一个半角的感叹号(!)。
```
!pip list
```

> 这样我们就可以省去安装 PyTorch 的步骤,也不用担心 GPU 版本问题。
我们这里使用 **OpenMMLab** 框架来作为训练演示,配置 **OpenMMLab** 环境
```
!pip install -U openmim
```

安装 **mmcv** 工具
```
!mim install "mmcv>=2.0.0rc1"
```

我们本次演示的是目标检测模型 (**mmclassification** ),因此再安装一个 **mmcls** 的工具
```
!mim install mmcls
```

现在预训练模型
```
!mim download mmcls --config mobilenet-v2_8xb32_in1k --dest .
```

- py 文件为配置文件,我们后期如果自己训练模型的时候,可以根据自己的需求进行修改,要符合 Python 语法。
- pth 文件为预训练模型,通常它的 size 比较大,他是我们模型训练完成后生成的一个文件。
# 效果验证
我们上传一张香蕉的图片, 然后用预训练的模型检测一下看看效果。

```
CPU版本
from mmcls.apis import init_model, inference_model
model = init_model("mobilenet-v2_8xb32_in1k.py", "mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth", device="cpu")
result = inference_model(model, "banana.png")
```

我们也可以可视化的看一下效果:
```
from mmcls.apis import show_result_pyplot
show_result_pyplot(model, "banana.png", result)
```

如果想用 GPU 来推理的话, 只需要将 device="cpu" 换成 device="cuda:0" 即可
```
model = init_model("mobilenet-v2_8xb32_in1k.py", "mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth", device="cuda:0")
```
# 结束语
我们通过在亚马逊云服务上搭建了一个简单的目标检测的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)项目,了解了亚马逊云的基础使用方法。我们这里只是演示了一下如何利用预训练模型来做目标检测,感兴趣的小伙伴可以尝试动手自己训练一个模型,顺便体验一下它的性能。如果还是小白,亚马逊云科技服务还提供了丰富的学习资源,500 多节免费数字课程任您选择,全面覆盖各种角色、技能水平和领域,以帮助您提升 Amazon Cloud 技能 。

除了上述既有的课程外,还会不定期的举办一些线上线下的活动,感兴趣的小伙伴可以关注一下,这里和大家简单分享一下日程:
| **活动名称** | **活动时间** | **活动地点** | **活动信息** |
| --- | --- |--- |--- |
| AIGC 实战营 | 2023年3月3日 | 上海 | [点击查看](https://aws.amazon.com/cn/campaigns/aigc-shanghai/?trk=cndc-detail) |
| 亚马逊云科技从业者加速训练营 | 2023年3月8日 | 线上 | [点击查看](https://www.awsevents.cn/livePage.aspx?code=13a56a503ed14864bf929ced3595f780&s=&smid=&vep_st=?trk=cndc-detail) |
| AIGC 创业实践在线大会 | 2023年3月9日 | 线上 | [点击查看](https://www.awsevents.cn/AIGC0309/listDetails.html?s=8188&smid=16976?trk=cndc-detail)|
| AIGC 实战营 | 2023年3月10日 | 北京 | [点击查看](https://aws.amazon.com/cn/campaigns/aigc-beijing/?trk=cndc-detail) |
| 亚马逊云科技从业者加速训练营 | 2023年3月14日 | 线上 | [点击查看](https://www.awsevents.cn/livePage.aspx?code=13a56a503ed14864bf929ced3595f780&s=&smid=&vep_st=?trk=cndc-detail)|
| 三月女性公益课堂:[无服务器](https://aws.amazon.com/cn/serverless/?trk=cndc-detail)开发简介 | 2023年3月15日 | 线上 | [点击查看](https://www.awsevents.cn/livePage.aspx?code=8bfa4bf3a0414952bf506d6354fb7e1d&s=&smid=&vep_st=?trk=cndc-detail) |
|AIGC 实战营 | 2023年3月17日 | 深圳 | [点击查看](https://aws.amazon.com/cn/campaigns/aigc-shenzhen/?trk=cndc-detail) |
| 备考训练营:Amazon Certified 解决方案架构师-专业级 | 2023年3月21日 | 线上 | [点击查看](https://www.awsevents.cn/livePage.aspx?code=1a77704cda44499bb8bac57b831fbc16&s=&smid=&vep_st=?trk=cndc-detail) |
| 三月女性公益课堂:保护您的亚马逊云科技云 | 2023年3月22日 | 线上 | [点击查看](https://www.awsevents.cn/livePage.aspx?code=cab4938df7334bc4952f4fc0ac9a9d18&s=&smid=&vep_st=?trk=cndc-detail) |
| 云原生大数据研讨会 | 2023年4月21日 | 上海 | [点击查看](https://www.awsevents.cn/livePage.aspx?code=cab4938df7334bc4952f4fc0ac9a9d18&s=&smid=&vep_st=?trk=cndc-detail?trk=cndc-detail) |
这次的分享就是这些,希望这篇文章对你有所帮助。