เรียกใช้ปริมาณงานการอนุมานของแมชชีนเลิร์นนิงบนอินสแตนซ์ที่ใช้ AWS Graviton ด้วย Amazon SageMaker PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

เรียกใช้ปริมาณงานการอนุมานของแมชชีนเลิร์นนิงบนอินสแตนซ์ที่ใช้ AWS Graviton ด้วย Amazon SageMaker

วันนี้เรามาเปิดตัว อเมซอน SageMaker การอนุมาน AWS กราวิตอน เพื่อให้คุณได้รับประโยชน์จากราคา ประสิทธิภาพ และประโยชน์ด้านประสิทธิภาพที่มาจากชิป Graviton

อินสแตนซ์ที่ใช้ Graviton พร้อมใช้งานสำหรับการอนุมานแบบจำลองใน SageMaker โพสต์นี้ช่วยคุณโยกย้ายและปรับใช้เวิร์กโหลดการอนุมานของแมชชีนเลิร์นนิง (ML) จาก x86 ไปยังอินสแตนซ์ที่ใช้ Graviton ใน SageMaker เรามีคำแนะนำทีละขั้นตอนในการปรับใช้โมเดลที่ผ่านการฝึกอบรม SageMaker ของคุณกับอินสแตนซ์ที่ใช้ Graviton ครอบคลุมแนวทางปฏิบัติที่ดีที่สุดเมื่อทำงานกับ Graviton หารือเกี่ยวกับประโยชน์ต่อประสิทธิภาพด้านราคา และสาธิตวิธีการปรับใช้โมเดล TensorFlow บนอินสแตนซ์ SageMaker Graviton

ภาพรวมโดยย่อของ Graviton

AWS Graviton เป็นตระกูลโปรเซสเซอร์ที่ออกแบบโดย AWS ซึ่งให้ประสิทธิภาพราคาดีที่สุดและประหยัดพลังงานมากกว่าโปรเซสเซอร์ x86 โปรเซสเซอร์ AWS Graviton 3 เป็นโปรเซสเซอร์รุ่นล่าสุดในตระกูล Graviton และได้รับการปรับให้เหมาะสมสำหรับปริมาณงาน ML รวมถึงการรองรับ bfloat16 และแบนด์วิดท์ Single Instruction Multiple Data (SIMD) สองเท่า เมื่อรวมคุณสมบัติทั้งสองนี้เข้าด้วยกัน Graviton 3 สามารถให้ประสิทธิภาพที่ดีขึ้นถึงสามเท่าเมื่อเทียบกับอินสแตนซ์ Graviton 2 Graviton 3 ยังใช้พลังงานน้อยลงถึง 60% สำหรับประสิทธิภาพที่เท่ากัน อเมซอน อีลาสติก คอมพิวท์ คลาวด์ อินสแตนซ์ (Amazon EC2) นี่เป็นคุณสมบัติที่ยอดเยี่ยมหากคุณต้องการลดรอยเท้าคาร์บอนและบรรลุเป้าหมายด้านความยั่งยืนของคุณ

ภาพรวมโซลูชัน

ในการปรับใช้โมเดลของคุณกับอินสแตนซ์ Graviton คุณใช้ คอนเทนเนอร์การเรียนรู้เชิงลึกของ AWS or นำภาชนะมาเอง เข้ากันได้กับสถาปัตยกรรม Arm v8.2

การโยกย้าย (หรือการปรับใช้ใหม่) ของโมเดลของคุณจากอินสแตนซ์ที่ขับเคลื่อนด้วย x86 ไปยังอินสแตนซ์ Graviton นั้นง่ายเพราะ AWS จัดเตรียมคอนเทนเนอร์ให้กับโฮสต์โมเดลด้วย PyTorch, TensorFlow, Scikit-learn และ XGBoost และโมเดลนั้นเป็นสถาปัตยกรรมที่ไม่เชื่อเรื่องพระเจ้า อย่างไรก็ตาม หากคุณต้องการนำไลบรารี่ของคุณเอง คุณก็สามารถทำได้ เพียงตรวจสอบให้แน่ใจว่าคอนเทนเนอร์ของคุณสร้างด้วยสภาพแวดล้อมที่รองรับสถาปัตยกรรม Arm64 ดูข้อมูลเพิ่มเติมได้ที่ สร้างคอนเทนเนอร์อัลกอริทึมของคุณเอง.

คุณต้องดำเนินการสามขั้นตอนให้เสร็จสิ้นเพื่อปรับใช้โมเดลของคุณ:

  1. สร้างโมเดล SageMaker: จะมีข้อมูลเกี่ยวกับตำแหน่งไฟล์โมเดล คอนเทนเนอร์ที่จะใช้สำหรับการปรับใช้ และตำแหน่งของสคริปต์การอนุมาน (หากคุณมีโมเดลที่ปรับใช้แล้วในอินสแตนซ์การอนุมานแบบ x86 คุณสามารถข้ามขั้นตอนนี้ได้)
  2. สร้างการกำหนดค่าปลายทาง: จะมีข้อมูลเกี่ยวกับประเภทของอินสแตนซ์ที่คุณต้องการสำหรับปลายทาง (เช่น ml.c7g.xlarge สำหรับ Graviton3) ชื่อของรุ่นที่คุณสร้างในขั้นตอนที่ 1 และจำนวนอินสแตนซ์ต่อ จุดสิ้นสุด
  3. เปิดใช้งานจุดสิ้นสุดด้วยการกำหนดค่าจุดสิ้นสุดที่สร้างขึ้นในขั้นตอนที่ 2

เบื้องต้น

ก่อนเริ่มต้น ให้พิจารณาข้อกำหนดเบื้องต้นต่อไปนี้:

  1. กรอกข้อกำหนดเบื้องต้นตามที่ระบุไว้ใน เบื้องต้น.
  2. โมเดลของคุณควรเป็นโมเดลที่ใช้ PyTorch, TensorFlow, XGBoost หรือ Scikit-learn ตารางต่อไปนี้สรุปรุ่นที่รองรับในปัจจุบันในขณะที่เขียนนี้ สำหรับการอัพเดทล่าสุด โปรดดูที่ คอนเทนเนอร์กรอบงาน SageMaker (รองรับ SM เท่านั้น).
    . หลาม TensorFlow ไพทอร์ช วิทย์ - เรียน XGBoost
    รุ่นที่รองรับ 3.8 2.9.1 1.12.1 1.0-1 1.3-1 ถึง 1.5-1
  3. สคริปต์การอนุมานถูกเก็บไว้ใน บริการจัดเก็บข้อมูลอย่างง่ายของ Amazon (อเมซอน เอส3).

ในส่วนต่อไปนี้ เราจะแนะนำคุณตลอดขั้นตอนการปรับใช้

สร้างโมเดล SageMaker

หากคุณมีโมเดลที่มีอยู่ซึ่งปรับใช้ในอินสแตนซ์การอนุมานที่ใช้ x86 แล้ว คุณสามารถข้ามขั้นตอนนี้ได้ มิฉะนั้น ให้ทำตามขั้นตอนต่อไปนี้เพื่อสร้างโมเดล SageMaker:

  1. ค้นหารุ่นที่คุณจัดเก็บไว้ในบัคเก็ต S3 คัดลอก URI
    คุณใช้โมเดล URI ในภายหลังใน MODEL_S3_LOCATION.
  2. ระบุเวอร์ชันเฟรมเวิร์กและเวอร์ชัน Python ที่ใช้ระหว่างการฝึกโมเดล
    คุณต้องเลือกคอนเทนเนอร์จากรายการ AWS Deep Learning Containers ที่พร้อมใช้งานตามเฟรมเวิร์กและเวอร์ชัน Python ของคุณ สำหรับข้อมูลเพิ่มเติม โปรดดูที่ ขอแนะนำอิมเมจคอนเทนเนอร์แบบหลายสถาปัตยกรรมสำหรับ Amazon ECR.
  3. ค้นหา URI สคริปต์ Python การอนุมานในบัคเก็ต S3 (ชื่อไฟล์ทั่วไปคือ inference.py).
    จำเป็นต้องใช้ URI สคริปต์การอนุมานใน INFERENCE_SCRIPT_S3_LOCATION.
  4. ด้วยตัวแปรเหล่านี้ คุณสามารถเรียกใช้ SageMaker API ด้วยคำสั่งต่อไปนี้:
    client = boto3.client("sagemaker")
    
    client.create_model(
        ModelName="Your model name",
        PrimaryContainer={
            "Image": ,
            "ModelDataUrl": ,
            "Environment": {
            "SAGEMAKER_PROGRAM": "inference.py",
            "SAGEMAKER_SUBMIT_DIRECTORY": ,
            "SAGEMAKER_CONTAINER_LOG_LEVEL": "20",
            "SAGEMAKER_REGION": 
            }
        },
        ExecutionRoleArn= 
    )

คุณยังสามารถสร้างรูปภาพที่มีหลายสถาปัตยกรรม และใช้รูปภาพเดียวกันแต่ใช้แท็กต่างกันได้ คุณสามารถระบุได้ว่าอินสแตนซ์ของคุณจะใช้สถาปัตยกรรมใด สำหรับข้อมูลเพิ่มเติม โปรดดูที่ ขอแนะนำอิมเมจคอนเทนเนอร์แบบหลายสถาปัตยกรรมสำหรับ Amazon ECR.

สร้างการกำหนดค่าปลายทาง

หลังจากที่คุณสร้างโมเดลแล้ว คุณต้องสร้างการกำหนดค่าปลายทางโดยเรียกใช้คำสั่งต่อไปนี้ (สังเกตประเภทของอินสแตนซ์ที่เราใช้):

client.create_endpoint_config(
    EndpointConfigName= ,
    ProductionVariants=[
        {
         "VariantName": "v0",
         "ModelName": "Your model name",
         "InitialInstanceCount": 1,
         "InstanceType": "ml.c7g.xlarge",
        },
    ]
)

ภาพหน้าจอต่อไปนี้แสดงรายละเอียดการกำหนดค่าปลายทางบนคอนโซล SageMaker

เปิดตัวปลายทาง

ด้วยการกำหนดค่าปลายทางที่สร้างขึ้นในขั้นตอนก่อนหน้า คุณสามารถปรับใช้ปลายทางได้:

client.create_endpoint(
    EndpointName = "",
    EndpointConfigName = ""
    )

รอจนกว่าปลายทางโมเดลของคุณจะถูกปรับใช้ สามารถขอการคาดการณ์ได้ในลักษณะเดียวกับที่คุณขอการคาดการณ์สำหรับปลายทางที่ใช้งานในอินสแตนซ์แบบ x86

ภาพหน้าจอต่อไปนี้แสดงปลายทางของคุณบนคอนโซล SageMaker

SageMaker Endpoint จากการกำหนดค่า

รองรับอะไรบ้าง

SageMaker นำเสนอคอนเทนเนอร์เชิงลึก Graviton ที่เพิ่มประสิทธิภาพสำหรับเฟรมเวิร์ก TensorFlow และ PyTorch คอนเทนเนอร์เหล่านี้รองรับการมองเห็นของคอมพิวเตอร์ การประมวลผลภาษาธรรมชาติ คำแนะนำ และกรณีการใช้งานการอนุมานตามแบบจำลองเชิงลึกและเชิงกว้างทั่วไป นอกจากคอนเทนเนอร์การเรียนรู้เชิงลึกแล้ว SageMaker ยังมีคอนเทนเนอร์สำหรับเฟรมเวิร์ก ML แบบคลาสสิก เช่น XGBoost และ Scikit-learn คอนเทนเนอร์รองรับไบนารีในอินสแตนซ์ c6g/m6g และ c7g ดังนั้นการย้ายแอปพลิเคชันการอนุมานจากรุ่นหนึ่งไปยังอีกรุ่นหนึ่งจึงราบรื่น

C6g/m6g รองรับ fp16 (โฟลตที่มีความแม่นยำครึ่งหนึ่ง) และสำหรับรุ่นที่เข้ากันได้จะให้ประสิทธิภาพที่เทียบเท่าหรือดีกว่าเมื่อเทียบกับอินสแตนซ์ c5 C7g เพิ่มประสิทธิภาพ ML อย่างมากโดยเพิ่มความกว้างของ SIMD เป็นสองเท่าและรองรับ bfloat-16 (bf16) ซึ่งเป็นแพลตฟอร์มที่คุ้มค่าที่สุดสำหรับการรันโมเดลของคุณ

ทั้ง c6g/m6g และ c7g ให้ประสิทธิภาพที่ดีสำหรับ ML แบบคลาสสิก (เช่น XGBoost) เมื่อเทียบกับอินสแตนซ์ CPU อื่นๆ ใน SageMaker การรองรับ Bfloat-16 บน c7g ช่วยให้ปรับใช้โมเดลที่ผ่านการฝึกอบรม bf16 หรือ AMP (Automatic Mixed Precision) ได้อย่างมีประสิทธิภาพ แบ็กเอนด์ Arm Compute Library (ACL) บน Graviton มอบเคอร์เนล bfloat-16 ที่สามารถเร่งความเร็วแม้กระทั่งตัวดำเนินการ fp32 ผ่านโหมดคณิตคิดเร็ว

แนวทางปฏิบัติที่ดีที่สุดที่แนะนำ

บนอินสแตนซ์ Graviton ทุก vCPU จะเป็นฟิสิคัลคอร์ ไม่มีข้อโต้แย้งสำหรับทรัพยากร CPU ทั่วไป (ต่างจาก SMT) และการปรับขนาดประสิทธิภาพของเวิร์กโหลดจะเป็นเส้นตรงกับการเพิ่ม vCPU ทุกครั้ง ดังนั้น ขอแนะนำให้ใช้การอนุมานแบบกลุ่มเมื่อใดก็ตามที่กรณีการใช้งานอนุญาต สิ่งนี้จะช่วยให้ใช้ vCPU ได้อย่างมีประสิทธิภาพโดยการประมวลผลแบตช์แบบขนานบนฟิสิคัลคอร์แต่ละคอร์ หากไม่สามารถอนุมานแบบกลุ่มได้ จำเป็นต้องใช้ขนาดอินสแตนซ์ที่เหมาะสมที่สุดสำหรับเพย์โหลดที่กำหนด เพื่อให้แน่ใจว่าโอเวอร์เฮดของการจัดกำหนดการเธรดของ OS จะไม่มีค่าเกินกำลังประมวลผลที่มาพร้อมกับ vCPU เพิ่มเติม

TensorFlow มาพร้อมกับเคอร์เนล Eigen ตามค่าเริ่มต้น และขอแนะนำให้เปลี่ยนไปใช้ OneDNN ด้วย ACL เพื่อรับแบ็คเอนด์การอนุมานที่เหมาะสมที่สุด สามารถเปิดใช้งานแบ็กเอนด์ OneDNN และโหมดคณิตคิดเร็ว bfloat-16 ได้ขณะเปิดใช้บริการคอนเทนเนอร์:

docker run -p 8501:8501 --name tfserving_resnet 
--mount type=bind,source=/tmp/resnet,target=/models/resnet 
-e MODEL_NAME=resnet -e TF_ENABLE_ONEDNN_OPTS=1 
-e DNNL_DEFAULT_FPMATH_MODE=BF16 -e -t tfs:mkl_aarch64

คำสั่งการให้บริการก่อนหน้าโฮสต์โมเดล resnet50 มาตรฐานที่มีคอนฟิกูเรชันที่สำคัญสองแบบ:

-e TF_ENABLE_ONEDNN_OPTS=1
-e DNNL_DEFAULT_FPMATH_MODE=BF16

สิ่งเหล่านี้สามารถส่งผ่านไปยังคอนเทนเนอร์การอนุมานได้ด้วยวิธีต่อไปนี้:

client.create_model(
    ModelName="Your model name",
    PrimaryContainer={
    "Image": ,
    "ModelDataUrl": ,
    "Environment": {
        "SAGEMAKER_PROGRAM": "inference.py",
        "SAGEMAKER_SUBMIT_DIRECTORY": "",
        "SAGEMAKER_CONTAINER_LOG_LEVEL": "20",
        "SAGEMAKER_REGION": ,
        "TF_ENABLE_ONEDNN_OPTS": "1",
        "DNNL_DEFAULT_FPMATH_MODE": "BF16"
         }
     },
     ExecutionRoleArn='ARN for AmazonSageMaker-ExecutionRole'
)

ตัวอย่างการใช้งาน

ในโพสต์นี้ เราจะแสดงวิธีปรับใช้โมเดล TensorFlow ที่ได้รับการฝึกอบรมใน SageMaker บนอินสแตนซ์การอนุมานของ SageMaker ที่ขับเคลื่อนโดย Graviton

คุณสามารถเรียกใช้โค้ดตัวอย่างในอินสแตนซ์โน้ตบุ๊ก SageMaker และ สตูดิโอ Amazon SageMaker โน้ตบุ๊กหรือโน้ตบุ๊ก Jupyter ในโหมดโลคัล คุณต้องดึงข้อมูลบทบาทการดำเนินการของ SageMaker หากคุณใช้โน้ตบุ๊ก Jupyter ในโหมดโลคัล

ตัวอย่างต่อไปนี้จะพิจารณาชุดข้อมูล CIFAR-10 คุณสามารถทำตามตัวอย่างสมุดบันทึกจากตัวอย่าง SageMaker repo GitHub เพื่อสร้างแบบจำลองที่ใช้ในโพสต์นี้ เราใช้รูปแบบการฝึกอบรมและ cifar10_keras_main.py สคริปต์ Python สำหรับการอนุมาน

โมเดลถูกจัดเก็บไว้ในบัคเก็ต S3: s3://aws-ml-blog/artifacts/run-ml-inference-on-graviton-based-instances-with-amazon-sagemaker/model.tar.gz

พื้นที่ cifar10_keras_main.py สคริปต์ ซึ่งสามารถใช้ในการอนุมานได้ ถูกเก็บไว้ที่:s3://aws-ml-blog/artifacts/run-ml-inference-on-graviton-based-instances-with-amazon-sagemaker/script/cifar10_keras_main.py

เราใช้ us-east-1 กำหนดขอบเขตและปรับใช้โมเดลบนอินสแตนซ์ที่ใช้ Graviton ml.c7g.xlarge จากสิ่งนี้ URI ของ AWS Deep Learning Container จึงเป็น 763104351884.dkr.ecr.us-east-1.amazonaws.com/tensorflow-inference-graviton:2.9.1-cpu-py38-ubuntu20.04-sagemaker

  1. ตั้งค่าด้วยรหัสต่อไปนี้:
    import sagemaker
    import boto3
    import datetime
    import json
    import gzip
    import os
    
    sagemaker_session = sagemaker.Session()
    bucket = sagemaker_session.default_bucket()
    role = sagemaker.get_execution_role()
    region = sagemaker_session.boto_region_name

  2. ดาวน์โหลดชุดข้อมูลสำหรับการทดสอบปลายทาง:
    from keras.datasets import cifar10
    (x_train, y_train), (x_test, y_test) = cifar10.load_data()

  3. สร้างแบบจำลองและการกำหนดค่าปลายทาง และปรับใช้ปลายทาง:
    timestamp = "{:%Y-%m-%d-%H-%M-%S}".format(datetime.datetime.now())
    
    client = boto3.client("sagemaker")
    
    MODEL_NAME = f"graviton-model-{timestamp}"
    ENDPOINT_NAME = f"graviton-endpoint-{timestamp}"
    ENDPOINT_CONFIG_NAME = f"graviton-endpoint-config-{timestamp}"
    
    # create sagemaker model
    create_model_response = client.create_model(
        ModelName=MODEL_NAME,
        PrimaryContainer={
        "Image":  "763104351884.dkr.ecr.us-east-1.amazonaws.com/tensorflow-inference-graviton:2.9.1-cpu-py38-ubuntu20.04-sagemaker ",
        "ModelDataUrl":  "s3://aws-ml-blog/artifacts/run-ml-inference-on-graviton-based-instances-with-amazon-sagemaker/model.tar.gz",
        "Environment": {
            "SAGEMAKER_CONTAINER_LOG_LEVEL": "20",
            "SAGEMAKER_REGION": region
            }
        },
        ExecutionRoleArn=role
    )
    print ("create_model API response", create_model_response)

  4. คุณสามารถเพิ่มสคริปต์การอนุมานของคุณได้ Environment in create_model หากคุณไม่ได้เพิ่มมันเป็นสิ่งประดิษฐ์ให้กับโมเดล SageMaker ของคุณในระหว่างการฝึกอบรม:
    "SAGEMAKER_PROGRAM": "inference.py",
    "SAGEMAKER_SUBMIT_DIRECTORY": ,
    		
    # create sagemaker endpoint config
    create_endpoint_config_response = client.create_endpoint_config(
        EndpointConfigName=ENDPOINT_CONFIG_NAME,
        ProductionVariants=[
            {
             "VariantName": "v0",
             "ModelName": MODEL_NAME,
             "InitialInstanceCount": 1,
             "InstanceType": "ml.c7g.xlarge" 
            },
        ]
    )
    print ("ncreate_endpoint_config API response", create_endpoint_config_response)
    
    # create sagemaker endpoint
    create_endpoint_response = client.create_endpoint(
        EndpointName = ENDPOINT_NAME,
        EndpointConfigName = ENDPOINT_CONFIG_NAME,
    )
    print ("ncreate_endpoint API response", create_endpoint_response)   
    

    คุณต้องรอสองสามนาทีเพื่อให้การปรับใช้เกิดขึ้น

  5. ตรวจสอบสถานะปลายทางด้วยรหัสต่อไปนี้:
    describe_response = client.describe_endpoint(EndpointName=ENDPOINT_NAME)
    print(describe_response["EndpointStatus"]

    คุณยังสามารถตรวจสอบ คอนโซลการจัดการ AWS เพื่อดูว่าโมเดลของคุณถูกปรับใช้เมื่อใด

  6. ตั้งค่าสภาพแวดล้อมรันไทม์เพื่อเรียกใช้ปลายทาง:
    runtime = boto3.Session().client(service_name="runtime.sagemaker")

    ตอนนี้เราเตรียมเพย์โหลดเพื่อเรียกใช้ปลายทาง เราใช้รูปภาพประเภทเดียวกับที่ใช้สำหรับการฝึกโมเดล สิ่งเหล่านี้ถูกดาวน์โหลดในขั้นตอนก่อนหน้า

  7. โยนเพย์โหลดไปยังเทนเซอร์และตั้งค่ารูปแบบที่ถูกต้องตามที่โมเดลต้องการ สำหรับตัวอย่างนี้ เราขอคำทำนายเพียงรายการเดียว
    input_image = x_test[0].reshape(1,32,32,3)

    เราได้ผลลัพธ์ของโมเดลเป็นอาร์เรย์

  8. เราสามารถเปลี่ยนผลลัพธ์นี้เป็นความน่าจะเป็นได้หากเราใช้ softmax กับมัน:
    CONTENT_TYPE = 'application/json'
    ACCEPT = 'application/json'
    PAYLOAD = json.dumps(input_image.tolist())
    
    response = runtime.invoke_endpoint(
        EndpointName=ENDPOINT_NAME, 
        ContentType=CONTENT_TYPE,
        Accept=ACCEPT,
        Body=PAYLOAD
    )
        
    print(response['Body'].read().decode())

ทำความสะอาดทรัพยากร

บริการที่เกี่ยวข้องกับโซลูชันนี้มีค่าใช้จ่าย เมื่อคุณใช้วิธีแก้ไขปัญหานี้เสร็จแล้ว ให้ล้างข้อมูลทรัพยากรต่อไปนี้:

client.delete_endpoint(EndpointName=ENDPOINT_NAME)
client.delete_endpoint_config(EndpointConfigName=ENDPOINT_CONFIG_NAME)
client.delete_model(ModelName=MODEL_NAME)

การเปรียบเทียบราคาประสิทธิภาพ

อินสแตนซ์ที่ใช้ Graviton เสนอราคาที่ต่ำที่สุดและประสิทธิภาพด้านราคาที่ดีที่สุดเมื่อเปรียบเทียบกับอินสแตนซ์ที่ใช้ x86 คล้ายกับอินสแตนซ์ EC2 จุดสิ้นสุดการอนุมานของ SageMaker ที่มีอินสแตนซ์ ml.c6g (Graviton 2) เสนอราคาที่ต่ำกว่า 20% เมื่อเทียบกับ ml.c5 และอินสแตนซ์ Graviton 3 ml.c7g ราคาถูกกว่าอินสแตนซ์ ml.c15 6% สำหรับข้อมูลเพิ่มเติม โปรดดูที่ ราคา Amazon SageMaker.

สรุป

ในโพสต์นี้ เราได้แสดงความสามารถของ SageMaker ที่เพิ่งเปิดตัวเพื่อปรับใช้โมเดลในอินสแตนซ์การอนุมานที่ขับเคลื่อนด้วย Graviton เราได้ให้คำแนะนำเกี่ยวกับแนวทางปฏิบัติที่ดีที่สุดแก่คุณ และพูดคุยสั้นๆ เกี่ยวกับประโยชน์ด้านประสิทธิภาพราคาของอินสแตนซ์การอนุมานประเภทใหม่

ดูข้อมูลเพิ่มเติมเกี่ยวกับ Graviton ได้ที่ โปรเซสเซอร์ AWS Graviton. คุณสามารถเริ่มต้นใช้งานอินสแตนซ์ EC2 ที่ใช้ AWS Graviton บนคอนโซล Amazon EC2 และโดยอ้างอิงจาก คู่มือทางเทคนิค AWS Graviton. คุณสามารถปรับใช้จุดสิ้นสุดของแบบจำลอง Sagemaker สำหรับการอนุมานบน Graviton ด้วยโค้ดตัวอย่างในโพสต์บล็อกนี้


เกี่ยวกับผู้แต่ง

วิคเตอร์ จารามิลโลวิคเตอร์ จารามิลโล ปริญญาเอก เป็นวิศวกรแมชชีนเลิร์นนิ่งอาวุโสใน AWS Professional Services ก่อนร่วมงานกับ AWS เขาเป็นศาสตราจารย์มหาวิทยาลัยและนักวิทยาศาสตร์ด้านการวิจัยในการบำรุงรักษาเชิงคาดการณ์ ในเวลาว่าง เขาชอบขี่มอเตอร์ไซค์และช่างยนต์ทำเอง

ซัมนาโก อัวเราะห์มานZmnako Awrahman ปริญญาเอก เป็นสมาชิก Practice Manager, ML SME และ Machine Learning Technical Field Community (TFC) ที่ Amazon Web Services เขาช่วยให้ลูกค้าใช้ประโยชน์จากพลังของระบบคลาวด์เพื่อดึงคุณค่าจากข้อมูลของพวกเขาด้วยการวิเคราะห์ข้อมูลและการเรียนรู้ของเครื่อง

สุนิตา นาดัมปาลีสุนิตา นาดัมปาลี เป็นผู้จัดการฝ่ายพัฒนาซอฟต์แวร์ที่ AWS เธอเป็นผู้นำในการเพิ่มประสิทธิภาพซอฟต์แวร์ Graviton สำหรับการเอนเอียงของเครื่องจักร, HPC และเวิร์คโหลดมัลติมีเดีย เธอหลงใหลเกี่ยวกับการพัฒนาโอเพ่นซอร์สและนำเสนอโซลูชันซอฟต์แวร์ที่คุ้มค่าด้วย Arm SoC

โจน่า หลิวโจน่า หลิว เป็นวิศวกรพัฒนาซอฟต์แวร์ในทีม Amazon SageMaker งานปัจจุบันของเธอมุ่งเน้นไปที่การช่วยให้นักพัฒนาโฮสต์โมเดลการเรียนรู้ของเครื่องได้อย่างมีประสิทธิภาพและปรับปรุงประสิทธิภาพการอนุมาน เธอหลงใหลเกี่ยวกับการวิเคราะห์ข้อมูลเชิงพื้นที่และใช้ AI ในการแก้ปัญหาสังคม

อลัน ตันอลัน ตัน เป็นผู้จัดการผลิตภัณฑ์อาวุโสของ SageMaker ซึ่งเป็นผู้นำในการอนุมานแบบจำลองขนาดใหญ่ เขาหลงใหลในการใช้แมชชีนเลิร์นนิงในด้านการวิเคราะห์ นอกเวลางาน เขาสนุกกับกิจกรรมกลางแจ้ง

ประทับเวลา:

เพิ่มเติมจาก AWS Machine Learning AWS