外部系统调用AWS ML服务的接口 - Python

本文介绍如何通过Python调用AWS Machine Learning服务,包括数据准备、模型训练及预测等步骤,并提供了具体的操作指南和环境配置示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 外部系统调用AWS ML服务的接口 - Python

  2. Amazon Machine Learning

https://aws.amazon.com/machine-learning/

  1. Steps
  • Step 1: Prepare Your Data
  • Step 2: Create a Training Datasource
  • Step 3: Create an ML Model
  • Step 4: Review the ML Model's Predictive Performance
  • Step 5: Use the ML Model to Generate Predictions
  • Step 6: Clean Up

准备数据(清洗,转换...)→选模型→检查结果→预测新数据→清理


1. 登录 EC2

2. 下载

cd  /home/ML

wget  https://github.com/awslabs/machine-learning-samples/archive/master.zip

unzip  master.zip

3. 进入

 cd  machine-learning-samples-master

[root@ip-172-30-0-89 machine-learning-samples-master]# ls

k-fold-cross-validation  ml-tools-python  mobile-ios  social-media             targeted-marketing-python

LICENSE                  mobile-android   README.md   targeted-marketing-java  targeted-marketing-scala

4. 测试 K-fold Cross-validation

[root@ip-172-30-0-89 k-fold-cross-validation]# ls

banking.csv.schema  build_folds.py  collect_perf.py  config.py  fold.py  README.md  recipe.json  setup.sh

5. 安装 python 依赖

版本 Python 2.7.10

在 apt-get 环境下

sudo apt-get update

sudo apt-get install python-pip python-virtualenv

在yum 环境下

yum install -y python27-pip  python27-virtualenv

安装的版本

[root@ip-172-30-0-89 k-fold-cross-validation]# /usr/bin/virtualenv  --version

12.0.7

[root@ip-172-30-0-89 k-fold-cross-validation]# pip --version

pip 6.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)

6. 执行setup.sh 脚本,安装 boto

boto的主页在  http://boto.readthedocs.io/en/latest/getting_started.html#getting-started-with-boto

[root@ip-172-30-0-89 k-fold-cross-validation]# source  setup.sh 

Not deleting local-python/bin

New python executable in local-python/bin/python2.7

Also creating executable in local-python/bin/python

Installing setuptools, pip...done.

You are using pip version 6.0.8, however version 9.0.1 is available.

You should consider upgrading via the 'pip install --upgrade pip' command.

Collecting pip from https://pypi.python.org/packages/b6/ac/7015eb97dc749283ffdec1c3a88ddb8ae03b8fad0f0e611408f196358da3/pip-9.0.1-py2.py3-none-any.whl#md5=297dbd16ef53bcef0447d245815f5144

  Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB)

    100% |################################| 1.3MB 380kB/s 

Installing collected packages: pip

  Found existing installation: pip 6.0.8

    Uninstalling pip-6.0.8:

      Successfully uninstalled pip-6.0.8


Successfully installed pip-9.0.1

Collecting boto

  Downloading boto-2.45.0-py2.py3-none-any.whl (1.3MB)

    100% |████████████████████████████████| 1.4MB 877kB/s 

Installing collected packages: boto

Successfully installed boto-2.45.0


说明: 退出, 使用 deactivate 命令

To exit the virtual environment, type deactivate. To clean up the dependent libraries after exiting, remove the ./local-python directory.

7. 缺少 Credentials

(后续补充)


### 基于Python的深度学习容器(DLC) 使用指南 #### 定义和配置SageMaker训练环境 为了利用Amazon SageMaker进行模型训练,可以使用`PyTorchEstimator`来指定EC2实例的数量、类型以及附加存储卷的大小。这允许用户灵活地调整计算资源以适应不同的工作负载需求[^1]。 ```python from sagemaker.pytorch import PyTorch estimator = PyTorch(entry_point='train.py', role='SageMakerRole', instance_count=2, instance_type='ml.p3.8xlarge', framework_version='1.8.0', py_version='py3') ``` 这段代码展示了如何通过设定参数如入口脚本(`entry_point`)、角色ARN(`role`)、实例数量(`instance_count`)、实例类型(`instance_type`)等来初始化一个`PyTorchEstimator`对象。这里选择了两个P3类型的GPU加速实例来进行分布式训练,并指定了框架版本为1.8.0及其对应的Python版本。 #### 创建并部署推理端点 对于已经完成训练的PyTorch模型来说,在将其投入生产之前还需要创建相应的服务端点以便接收预测请求。此时可借助`PyTorchModel`类简化这一过程[^2]: ```python from sagemaker.pytorch.model import PyTorchModel model = PyTorchModel(model_data='s3://mybucket/model.tar.gz', # S3路径指向保存好的模型文件 role='SageMakerRole', entry_point='inference.py') # 部署时使用的推断逻辑脚本 predictor = model.deploy(initial_instance_count=1, # 初始启动多少个实例处理请求 instance_type='ml.m5.large') # 执行推断任务所用的实例规格 ``` 上述例子说明了怎样加载位于S3上的预训练模型数据包,并定义了一个新的`PyTorchModel`实例;随后调用了`.deploy()`方法快速搭建起可供外部访问的服务接口。 #### 关于AWS优化后的深度学习AMI与DLC优势 当选用由AWS官方提供的深度学习AMI (Amazon Machine Image) 或者Docker镜像(即DLC),可以获得经过全面测试和支持的最佳性能表现。这类图像不仅包含了最新的NVIDIA驱动程序和其他必要的库支持,还针对云环境中常见的网络通信及I/O操作进行了特别优化,从而确保整个机器学习流水线能够高效稳定运行[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值