亚马逊云科技【云上探索实验室】使用 Amazon SageMaker 构建机器学习应用、基于 Amazon SageMaker构建细粒度情感分析应用、使用 Amazon SageMaker基于Stable Diffusion模型,快速搭建你的第一个AIGC应用
实验前准备:
确保自己处于稳定的网络环境。
请确保自己的DNS设置为8.8.8.8或国外DNS地址,这一步主要是确保你访问亚马逊云会快一点。
文中提到的一些坑需要注意一下。
申请额度需要一定时间,可以点击这里查看额度申请记录
如果要使用代理网络,请确保不要频繁切换其他国家节点,否则会触发"未经授权活动"
的假阳性系统报警。
PS:我就是那个大冤钟,半夜做实验网络不好疯狂切换代理网络,后面风控报警还以为号真的被盗了,紧急改了root密码、检查用户、日志和资源并且设置了两步验证(两步验证还是有必要开启一下)。
这里点名表扬亚马逊,应急响应速度反应很快,客服也很尽责,回消息很快。
第一个实验【使用 Amazon SageMaker 构建机器学习应用】
前面根据手册上的步骤进行部署即可,文章写了很详细,按照步骤来就可以做完。
手册链接:使用 Amazon SageMaker 构建机器学习应用
注意:instance创建完成之后会Pending 5分钟左右才会变成inService
点开Open Jupyter
打开Jupyter Notebook 界面
点击cell,并插入cell,建议每执行手册中提供的命令或者代码就在below下插入一个cell
下载并解压数据:
!wget -N https://archive.ics.uci.edu/ml/machine-learning-databases/00222/bank-additional.zip
!unzip -o bank-additional.zip
后续参考部署手册:使用 Amazon SageMaker 构建机器学习应用
第二个实验【基于 Amazon SageMaker 构建细粒度情感分析应用】
步骤可以参考文章:基于 Amazon SageMaker 构建细粒度情感分析应用
注意:这篇文中步骤部署写的不是很详细,而且还有一点问题,可以参考我这里建议的方法
前提:这里会使用ml.p3.2xlarge,请确保 ml.p3.2xlarge有额度,点击这里:Service Quotas查看
在搜索框中输入ml.p3.2xlarge for endpoint usage 如果没有额度请申请
根据文章:基于 Amazon SageMaker 构建细粒度情感分析应用 创建instance
点开Open Jupyter
部署完成后,打开Jupyter Notebook 界面,点击new新建一个terminal
terminal中执行以下命令。下载GAS-Sagemaker数据
cd ~/SageMaker
git clone https://github.com/HaoranLv/GAS-SageMaker.git
具体数据可以在这里查看这个目录
cd ~/SageMaker/data/tasd/
打开Jupyter Notebook 界面、进入Sagemaker目录,打开gabsa.ipynb 选择内核为conda_pytorch
然后逐行运行。
可以查看这个视频,这里没有使用部署手册里面的代码:
第二个实验视频
需要注意以下:
1、在执行hyperparameters 这一行时需要注意,epochs的参数为30,这意味着后续训练次数会训练30次,经过我自己的训练训练了一个小时才训练了19次,如果担心会影响后续扣费。
建议调低一下这个数值,如10次即可。
修改"num_train_epochs":“30”,为"num_train_epochs":“10”
2、如果使用手册提供的代码,请注意这里的单引号有问题需要注意一下。
以下为手册和github下载的代码对比
下图是手册里面提供的代码,使用手册的代码没有跑通
以下为gabsa.ipynb内置的代码,博主用的是自带的代码。
3、response = estimator.fit(inputs)
启动模型训练,开始训练会比较久,注意训练时间。
后续逐行执行即可,训练完成之后,可以在这里看到训练任务和创建的端点
点开终端节点,往下滑可以看到监控状态。
第三个实验 【基于Stable Diffusion模型,快速搭建你的第一个AIGC应用】
部署参考手册:基于Stable Diffusion模型,快速搭建你的第一个AIGC应用 这个手册写的很详细,但是也需要注意一个地方,后续会提到。
前提:这里会使用ml.g4dn.xlarge,请确保 ml.g4dn.xlarge有额度,点击这里:Service Quotas 查看,在搜索框中输入ml.g4dn.xlarge for endpoint usage,如果没有额度请申请
注意:
根据手册要求上传ipynb文件之后,选择内核为conda_pytorch,逐行执行命令部分手册未详细说明。
这里逐行执行命令即可。我这里简单录制了一段视频
第三个实验
后面部署的时候会很慢,耐心等待即可。
检查终端节点是否创建,如下图
ipynb部分部署完毕之后再参考手册:基于Stable Diffusion模型,快速搭建你的第一个AIGC应用 Cloud9创建前后端Web应用部分,进行后续部署
部署完成之后,这里用了两个简单的prompt:
a beauty girl
a china superman
弱弱吐槽一句。输入的prompt生成的图有点搞笑,酷似马云=_=
来个正常点的prompt:
a cartoon style cute monkey wearing a space suit, star background; clear portrait of a superhero concept between spiderman and batman, cottagecore
可能遇到的问题:
如果打开preview running application提示:“You can’t access preview functionality because your browser blocks third-party cookies (also known as cross-site tracking). To use previews, allow third-party cookies and reload your IDE.”
解决方法:在cloud9页面里把已阻止的勾选为允许,如下图
关于扣费
重要的事情说三遍
做完实验,停止实例之后记得删除实例、训练任务等等!!!
做完实验,停止实例之后记得删除实例、训练任务等等!!!
做完实验,停止实例之后记得删除实例、训练任务等等!!!
如果触发扣费怎么解决:
先检查account账户账单,如果有扣费点击这里新建case找客服解决。
在此期间检查一下以下链接,把能删除任务删除。
https://console.aws.amazon.com/s3/
https://console.aws.amazon.com/iam/
https://us-east-1.console.aws.amazon.com/sagemaker/home?region=us-east-1#/processing-jobs
https://console.aws.amazon.com/cloudwatch/
删除带/aws/sagemaker/.的日志
参考文档:https://docs.aws.amazon.com/sagemaker/latest/dg/ex1-cleanup
总结
这三个实验总体来说并不是很难,文章写的很详细,容易上手,我是第一次使用Amazon Sagemaker,也算小白一个,之前用过谷歌的colab,在部署中耽误时间的点主要是阅读手册时,理解可能会有误差,如第三个实验没有部署ipynb导致后面cloud9部署后不能正常生图,后面返回去部署ipynb才解决;在部署第二个实验时,发现有手册中的步骤和实际操作有出入,发现错误需要有一点点代码经验来排查才能顺利完成整个实验,中途遇到问题时很正常的,根据提示来排查问题然后解决这是一项必备的技能。解决问题后把遇到的问题总结起来,以后遇到可以用类似的思路来解决,总结经验。最后感谢亚马逊能提供这样的一个活动,让我们可以随时体验到科技带了的便利,别忘了做完实验之后停止并删除实例以及训练任务等等,大家遇到什么问题可以在文章后面评论,如文中有错误也希望大家能够指出改进,我们共同交流学习。