普通AWS EC2实例和ML实例有什么区别?

7

我正在使用免费套餐的AWS Sagemaker进行实验。根据Sagemaker价格,在免费套餐中,我可以使用50小时的m4.xlarge和m5.xlarge实例进行训练。(我安全地在两个月的限制范围内。) 但是当我尝试使用m5.xlarge训练XGBoost容器算法时,会弹出下面代码下的错误。

ml类型和非ml类型的实例是否是相同的,只是带有Sagemaker使用的花哨前缀,或者它们完全不同?EC2页面甚至没有列出ml实例。

sess = sagemaker.Session()

xgb = sagemaker.estimator.Estimator(container,
                                    role, 
                                    instance_count=1, 
                                    instance_type='m5.xlarge',
                                    output_path=output_location,
                                    sagemaker_session=sess)

客户端错误:调用CreateTrainingJob操作时发生错误(ValidationException):检测到1个验证错误:值“m5.xlarge”在“resourceConfig.instanceType”上未能满足约束条件:成员必须满足枚举值集:[ml.p2.xlarge,ml.m5.4xlarge,ml.m4.16xlarge,ml.p4d.24xlarge,ml.c5n.xlarge,ml.p3.16xlarge,ml.m5.large,ml.p2.16xlarge,ml.c4.2xlarge,ml.c5.2xlarge,ml.c4.4xlarge,ml.c5.4xlarge,ml.c5n.18xlarge,ml.g4dn.xlarge,ml.g4dn.12xlarge,ml.c4.8xlarge,ml.g4dn.2xlarge,ml.c5.9xlarge,ml.g4dn.4xlarge,ml.c5.xlarge,ml.g4dn.16xlarge,ml.c4.xlarge,ml.g4dn.8xlarge,ml.c5n.2xlarge,ml.c5n.4xlarge,ml.c5.18xlarge,ml.p3dn.24xlarge,ml.p3.2xlarge,ml.m5.xlarge,ml.m4.10xlarge,ml.c5n.9xlarge,ml.m5.12xlarge,ml.m4.xlarge,ml.m5.24xlarge,ml.m4.2xlarge,ml.p2.8xlarge,ml.m5.2xlarge,ml.p3.8xlarge,ml.m4.4xlarge]。
3个回答

13

ml前缀的实例是专门用于Sagemaker的实例类。

除了在Sagemaker服务中使用之外,该实例还将运行一个包含所有必要库和软件包(如Jupyter)的AMI。


1
那么,为什么免费层提供不支持Sagemaker的非ML实例呢? - navneethc
1
Sagemaker 包括自己的免费层,其中包含一个 ml.t3.medium 实例。这也是目前支持的最小实例大小。原因很简单,就是运行所需的 ml 实例所需的最低要求。 - Chris Williams
如果我没记错的话,那是用来运行笔记本实例而不是使用基于算法的容器进行训练的。(请参阅我在原始帖中发布的链接。) - navneethc
1
那么我的问题是,如果Sagemaker专门用于ML实例,这意味着什么?使用50小时的m4.xlarge或m5.xlarge实例进行训练(如果您还猜不出来,我试图在这个实验中不花任何钱。 :-) ) - navneethc
1
是的,这就是一直让我感到困惑的地方。我会相信你的话并尝试一下。感谢讨论。 - navneethc
显示剩余2条评论

5

带有ml前缀的AWS EC2实例是专门用于在AWS Sagemaker中使用的特定EC2实例类别。


0

机器学习实例是专门为机器学习优化的。AWS SageMaker也非常适合共享设置机器学习的代码,因为其他人可以使用相同的机器学习实例。相比之下,为了进行机器学习和共享,设置EC2需要更多的代码和手动工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接