Amazon SageMaker Pipelines এ PySpark ব্যবহার করে নিরাপদ প্রসেসিং কাজ চালান

Amazon SageMaker Pipelines এ PySpark ব্যবহার করে নিরাপদ প্রসেসিং কাজ চালান

অ্যামাজন সেজমেকার স্টুডিও আপনাকে আপনার মডেল তৈরি, প্রশিক্ষণ, ডিবাগ, স্থাপন, এবং নিরীক্ষণ করতে এবং আপনার মেশিন লার্নিং (ML) ওয়ার্কফ্লো পরিচালনা করতে সহায়তা করতে পারে। অ্যামাজন সেজমেকার পাইপলাইন আপনাকে একটি নির্মাণ করতে সক্ষম করে নিরাপদ, মাপযোগ্য, এবং নমনীয় MLOps প্ল্যাটফর্ম স্টুডিওর মধ্যে।

এই পোস্টে, আমরা কীভাবে পাইপলাইনের মধ্যে PySpark প্রক্রিয়াকরণ কাজগুলি চালাতে হয় তা ব্যাখ্যা করি। এটি যে কেউ পাইপলাইন ব্যবহার করে একটি মডেলকে প্রশিক্ষণ দিতে চায় তাকেও প্রশিক্ষণের ডেটা, পোস্টপ্রসেস ইনফারেন্স ডেটা, বা PySpark ব্যবহার করে মডেলগুলি মূল্যায়ন করতে সক্ষম করে। এই ক্ষমতাটি বিশেষভাবে প্রাসঙ্গিক যখন আপনাকে বড় আকারের ডেটা প্রক্রিয়া করতে হবে। উপরন্তু, আমরা কনফিগারেশন এবং স্পার্ক UI লগ ব্যবহার করে আপনার PySpark পদক্ষেপগুলিকে কীভাবে অপ্টিমাইজ করতে হয় তা দেখাই।

পাইপলাইন একটি আমাজন সেজমেকার এন্ড-টু-এন্ড এমএল পাইপলাইন নির্মাণ এবং পরিচালনার জন্য টুল। এটি একটি সম্পূর্ণরূপে পরিচালিত অন-ডিমান্ড পরিষেবা, SageMaker এবং অন্যান্য AWS পরিষেবাগুলির সাথে একত্রিত, এবং সেইজন্য আপনার জন্য সংস্থানগুলি তৈরি এবং পরিচালনা করে৷ এটি নিশ্চিত করে যে দৃষ্টান্তগুলি শুধুমাত্র সরবরাহ করা হয় এবং পাইপলাইনগুলি চালানোর সময় ব্যবহার করা হয়। উপরন্তু, পাইপলাইন দ্বারা সমর্থিত হয় সেজমেকার পাইথন এসডিকে, আপনি আপনার ট্র্যাক লেট তথ্য বংশ এবং পদক্ষেপগুলি পুনরায় ব্যবহার করুন উন্নয়নের সময় এবং খরচ সহজ করার জন্য তাদের ক্যাশে করে। একটি SageMaker পাইপলাইন ব্যবহার করতে পারেন প্রক্রিয়াকরণ পদক্ষেপ ডেটা প্রক্রিয়া করতে বা মডেল মূল্যায়ন করতে।

বড় আকারের ডেটা প্রক্রিয়া করার সময়, ডেটা বিজ্ঞানী এবং এমএল ইঞ্জিনিয়াররা প্রায়শই ব্যবহার করেন পাইস্পার্ক, এর জন্য একটি ইন্টারফেস আপা স্পার্ক পাইথনে। সেজমেকার প্রি-বিল্ট ডকার ইমেজ প্রদান করে যার মধ্যে PySpark এবং স্পার্ক ফ্রেমওয়ার্ক ব্যবহার করে ডেটা ট্রান্সফরমেশন এবং ফিচার ইঞ্জিনিয়ারিং সহ বিতরণ করা ডেটা প্রসেসিং কাজ চালানোর জন্য প্রয়োজনীয় অন্যান্য নির্ভরতা অন্তর্ভুক্ত। যদিও এই ছবিগুলি আপনাকে প্রক্রিয়াকরণের কাজগুলিতে PySpark ব্যবহার শুরু করার অনুমতি দেয়, তবে SageMaker দ্বারা তৈরি ক্লাস্টারের বিতরণ করা কম্পিউটিংকে অপ্টিমাইজ করার জন্য বড় আকারের ডেটা প্রক্রিয়াকরণের জন্য প্রায়ই নির্দিষ্ট স্পার্ক কনফিগারেশনের প্রয়োজন হয়।

আমাদের উদাহরণে, আমরা একটি সেজমেকার পাইপলাইন তৈরি করি যা একটি একক প্রক্রিয়াকরণ ধাপে চলে। আপনি একটি পাইপলাইনে অন্য কোন পদক্ষেপগুলি যোগ করতে পারেন সে সম্পর্কে আরও তথ্যের জন্য, পড়ুন পাইপলাইন ধাপ.

সেজমেকার প্রসেসিং লাইব্রেরি

SageMaker প্রসেসিং নির্দিষ্ট সঙ্গে চলতে পারে অবকাঠামো (উদাহরণস্বরূপ, SKlearnProcessor, PySparkProcessor, বা Hugging Face)। ব্যবহৃত ফ্রেমওয়ার্ক থেকে স্বাধীন, প্রতিটি প্রক্রিয়াকরণের ধাপ নিম্নলিখিত প্রয়োজন:

  • ধাপের নাম - আপনার সেজমেকার পাইপলাইন পদক্ষেপের জন্য যে নামটি ব্যবহার করা হবে
  • ধাপ আর্গুমেন্ট - আপনার পক্ষে যুক্তি ProcessingStep

উপরন্তু, আপনি নিম্নলিখিত প্রদান করতে পারেন:

  • সেজমেকার পাইপলাইনে আপনার পদক্ষেপের অপ্রয়োজনীয় রান এড়াতে আপনার স্টেপ ক্যাশের কনফিগারেশন
  • ধাপের নাম, ধাপের দৃষ্টান্ত, বা ধাপ সংগ্রহের উদাহরণগুলির একটি তালিকা যা ProcessingStep নির্ভর করে
  • প্রদর্শনের নাম ProcessingStep
  • একটি বর্ণনা ProcessingStep
  • সম্পত্তি ফাইল
  • নীতিগুলি পুনরায় চেষ্টা করুন৷

যুক্তি উপস্থাপন করা হয় ProcessingStep। আপনি ব্যবহার করতে পারেন sagemaker.spark.PySpark প্রসেসর or sagemaker.spark.SparkJarProcessor একটি প্রক্রিয়াকরণ কাজের ভিতরে আপনার স্পার্ক অ্যাপ্লিকেশন চালানোর জন্য ক্লাস।

ফ্রেমওয়ার্কের উপর নির্ভর করে প্রতিটি প্রসেসর তার নিজস্ব চাহিদা নিয়ে আসে। এটি ব্যবহার করে সর্বোত্তমভাবে চিত্রিত করা হয় PySparkProcessor, যেখানে আপনি অপ্টিমাইজ করতে অতিরিক্ত তথ্য পাস করতে পারেন ProcessingStep আরও, উদাহরণস্বরূপ মাধ্যমে configuration আপনার কাজ চালানোর সময় প্যারামিটার।

নিরাপদ পরিবেশে সেজমেকার প্রসেসিং কাজ চালান

এটা ভাল অভ্যাস একটি ব্যক্তিগত Amazon VPC তৈরি করতে এবং এটি কনফিগার করতে যাতে আপনার কাজগুলি সর্বজনীন ইন্টারনেটে অ্যাক্সেসযোগ্য না হয়৷ সেজমেকার প্রসেসিং কাজগুলি আপনাকে আপনার ভিপিসি-তে ব্যক্তিগত সাবনেট এবং সুরক্ষা গোষ্ঠীগুলি নির্দিষ্ট করার পাশাপাশি নেটওয়ার্ক বিচ্ছিন্নতা এবং আন্তঃ-কন্টেইনার ট্র্যাফিক এনক্রিপশন সক্ষম করার অনুমতি দেয় NetworkConfig.VpcConfig অনুরোধ পরামিতি CreateProcessingJob API আমরা ব্যবহার করে এই কনফিগারেশনের উদাহরণ প্রদান করি সেজমেকার এসডিকে পরবর্তী বিভাগে।

সেজমেকার পাইপলাইনের মধ্যে পাইস্পার্ক প্রসেসিং স্টেপ

এই উদাহরণের জন্য, আমরা ধরে নিই যে VPC, VPC এন্ডপয়েন্ট, নিরাপত্তা গ্রুপ, এডাব্লুএস আইডেন্টিটি এবং অ্যাক্সেস ম্যানেজমেন্ট (IAM) ভূমিকা, এবং AWS কী ব্যবস্থাপনা পরিষেবা (AWS KMS) কী। আমরা আরও অনুমান করি যে আপনার কাছে দুটি বালতি রয়েছে: একটি কোড এবং লগের মতো শিল্পকর্মের জন্য এবং একটি আপনার ডেটার জন্য৷ দ্য basic_infra.yaml ফাইল উদাহরণ প্রদান করে এডাব্লুএস ক্লাউডফর্মেশন প্রয়োজনীয় পূর্বশর্ত অবকাঠামো বিধান করার জন্য কোড। উদাহরণ কোড এবং স্থাপনার গাইড এছাড়াও উপলব্ধ GitHub.

একটি উদাহরণ হিসাবে, আমরা একটি একক ধারণকারী একটি পাইপলাইন সেট আপ ProcessingStep যা আমরা কেবল পড়ি এবং লিখি অ্যাবালোন ডেটাসেট স্পার্ক ব্যবহার করে। কোডের নমুনাগুলি আপনাকে দেখায় কিভাবে সেট আপ এবং কনফিগার করতে হয় ProcessingStep.

আমরা পাইপলাইন (নাম, ভূমিকা, বালতি, এবং তাই) এবং ধাপ-নির্দিষ্ট সেটিংস (উদাহরণ প্রকার এবং গণনা, ফ্রেমওয়ার্ক সংস্করণ, এবং তাই) জন্য পরামিতি সংজ্ঞায়িত করি। এই উদাহরণে, আমরা একটি সুরক্ষিত সেটআপ ব্যবহার করি এবং সাবনেট, নিরাপত্তা গোষ্ঠী এবং আন্তঃ-কন্টেইনার ট্র্যাফিক এনক্রিপশনও সংজ্ঞায়িত করি। এই উদাহরণের জন্য, আপনার সেজমেকার সম্পূর্ণ অ্যাক্সেস এবং একটি VPC সহ একটি পাইপলাইন কার্যকর করার ভূমিকা প্রয়োজন। নিম্নলিখিত কোড দেখুন:

{ "pipeline_name": "ProcessingPipeline", "trial": "test-blog-post", "pipeline_role": "arn:aws:iam::<ACCOUNT_NUMBER>:role/<PIPELINE_EXECUTION_ROLE_NAME>", "network_subnet_ids": [ "subnet-<SUBNET_ID>", "subnet-<SUBNET_ID>" ], "network_security_group_ids": [ "sg-<SG_ID>" ], "pyspark_process_volume_kms": "arn:aws:kms:<REGION_NAME>:<ACCOUNT_NUMBER>:key/<KMS_KEY_ID>", "pyspark_process_output_kms": "arn:aws:kms:<REGION_NAME>:<ACCOUNT_NUMBER>:key/<KMS_KEY_ID>", "pyspark_helper_code": "s3://<INFRA_S3_BUCKET>/src/helper/data_utils.py", "spark_config_file": "s3://<INFRA_S3_BUCKET>/src/spark_configuration/configuration.json", "pyspark_process_code": "s3://<INFRA_S3_BUCKET>/src/processing/process_pyspark.py", "process_spark_ui_log_output": "s3://<DATA_S3_BUCKET>/spark_ui_logs/{}", "pyspark_framework_version": "2.4", "pyspark_process_name": "pyspark-processing", "pyspark_process_data_input": "s3a://<DATA_S3_BUCKET>/data_input/abalone_data.csv", "pyspark_process_data_output": "s3a://<DATA_S3_BUCKET>/pyspark/data_output", "pyspark_process_instance_type": "ml.m5.4xlarge", "pyspark_process_instance_count": 6, "tags": { "Project": "tag-for-project", "Owner": "tag-for-owner" }
}

প্রদর্শন করার জন্য, নিম্নলিখিত কোড উদাহরণটি ব্যবহার করে একটি পাইপলাইনের মধ্যে সেজমেকার প্রসেসিং-এ একটি পাইস্পার্ক স্ক্রিপ্ট চালায় PySparkProcessor:

# import code requirements
# standard libraries import
import logging
import json # sagemaker model import
import sagemaker
from sagemaker.workflow.pipeline import Pipeline
from sagemaker.workflow.pipeline_experiment_config import PipelineExperimentConfig
from sagemaker.workflow.steps import CacheConfig
from sagemaker.processing import ProcessingInput
from sagemaker.workflow.steps import ProcessingStep
from sagemaker.workflow.pipeline_context import PipelineSession
from sagemaker.spark.processing import PySparkProcessor from helpers.infra.networking.networking import get_network_configuration
from helpers.infra.tags.tags import get_tags_input
from helpers.pipeline_utils import get_pipeline_config def create_pipeline(pipeline_params, logger): """ Args: pipeline_params (ml_pipeline.params.pipeline_params.py.Params): pipeline parameters logger (logger): logger Returns: () """ # Create SageMaker Session sagemaker_session = PipelineSession() # Get Tags tags_input = get_tags_input(pipeline_params["tags"]) # get network configuration network_config = get_network_configuration( subnets=pipeline_params["network_subnet_ids"], security_group_ids=pipeline_params["network_security_group_ids"] ) # Get Pipeline Configurations pipeline_config = get_pipeline_config(pipeline_params) # setting processing cache obj logger.info("Setting " + pipeline_params["pyspark_process_name"] + " cache configuration 3 to 30 days") cache_config = CacheConfig(enable_caching=True, expire_after="p30d") # Create PySpark Processing Step logger.info("Creating " + pipeline_params["pyspark_process_name"] + " processor") # setting up spark processor processing_pyspark_processor = PySparkProcessor( base_job_name=pipeline_params["pyspark_process_name"], framework_version=pipeline_params["pyspark_framework_version"], role=pipeline_params["pipeline_role"], instance_count=pipeline_params["pyspark_process_instance_count"], instance_type=pipeline_params["pyspark_process_instance_type"], volume_kms_key=pipeline_params["pyspark_process_volume_kms"], output_kms_key=pipeline_params["pyspark_process_output_kms"], network_config=network_config, tags=tags_input, sagemaker_session=sagemaker_session ) # setting up arguments run_ags = processing_pyspark_processor.run( submit_app=pipeline_params["pyspark_process_code"], submit_py_files=[pipeline_params["pyspark_helper_code"]], arguments=[ # processing input arguments. To add new arguments to this list you need to provide two entrances: # 1st is the argument name preceded by "--" and the 2nd is the argument value # setting up processing arguments "--input_table", pipeline_params["pyspark_process_data_input"], "--output_table", pipeline_params["pyspark_process_data_output"] ], spark_event_logs_s3_uri=pipeline_params["process_spark_ui_log_output"].format(pipeline_params["trial"]), inputs = [ ProcessingInput( source=pipeline_params["spark_config_file"], destination="/opt/ml/processing/input/conf", s3_data_type="S3Prefix", s3_input_mode="File", s3_data_distribution_type="FullyReplicated", s3_compression_type="None" ) ], ) # create step pyspark_processing_step = ProcessingStep( name=pipeline_params["pyspark_process_name"], step_args=run_ags, cache_config=cache_config, ) # Create Pipeline pipeline = Pipeline( name=pipeline_params["pipeline_name"], steps=[ pyspark_processing_step ], pipeline_experiment_config=PipelineExperimentConfig( pipeline_params["pipeline_name"], pipeline_config["trial"] ), sagemaker_session=sagemaker_session ) pipeline.upsert( role_arn=pipeline_params["pipeline_role"], description="Example pipeline", tags=tags_input ) return pipeline def main(): # set up logging logger = logging.getLogger(__name__) logger.setLevel(logging.INFO) logger.info("Get Pipeline Parameter") with open("ml_pipeline/params/pipeline_params.json", "r") as f: pipeline_params = json.load(f) print(pipeline_params) logger.info("Create Pipeline") pipeline = create_pipeline(pipeline_params, logger=logger) logger.info("Execute Pipeline") execution = pipeline.start() return execution if __name__ == "__main__": main()

পূর্ববর্তী কোডে দেখানো হয়েছে, আমরা প্রদান করে ডিফল্ট স্পার্ক কনফিগারেশনগুলি ওভাররাইট করছি configuration.json হিসেবে ProcessingInput. আমরা একটি ব্যবহার configuration.json যে ফাইলে সংরক্ষিত ছিল আমাজন সিম্পল স্টোরেজ সার্ভিস (Amazon S3) নিম্নলিখিত সেটিংস সহ:

[ { "Classification":"spark-defaults", "Properties":{ "spark.executor.memory":"10g", "spark.executor.memoryOverhead":"5g", "spark.driver.memory":"10g", "spark.driver.memoryOverhead":"10g", "spark.driver.maxResultSize":"10g", "spark.executor.cores":5, "spark.executor.instances":5, "spark.yarn.maxAppAttempts":1 "spark.hadoop.fs.s3a.endpoint":"s3.<region>.amazonaws.com", "spark.sql.parquet.fs.optimized.comitter.optimization-enabled":true } }
]

আমরা ডিফল্ট স্পার্ক কনফিগারেশন আপডেট করতে পারি ফাইলটিকে a হিসাবে পাস করে ProcessingInput অথবা রান করার সময় কনফিগারেশন আর্গুমেন্ট ব্যবহার করে run() ফাংশন.

স্পার্ক কনফিগারেশন অন্যান্য বিকল্পের উপর নির্ভরশীল, যেমন ইনস্ট্যান্সের ধরন এবং প্রসেসিং কাজের জন্য বেছে নেওয়া ইনস্ট্যান্স গণনা। প্রথম বিবেচ্য হল দৃষ্টান্তের সংখ্যা, vCPU কোরগুলি যেগুলি প্রতিটি দৃষ্টান্তে রয়েছে এবং ইনস্ট্যান্স মেমরি৷ তুমি ব্যবহার করতে পার স্পার্ক UI or ক্লাউডওয়াচ ইনস্ট্যান্স মেট্রিক্স এবং লগগুলি একাধিক রান পুনরাবৃত্তির মাধ্যমে এই মানগুলিকে ক্রমাঙ্কিত করতে।

উপরন্তু, নির্বাহক এবং ড্রাইভার সেটিংস আরও অপ্টিমাইজ করা যেতে পারে। এইগুলি কীভাবে গণনা করা যায় তার একটি উদাহরণের জন্য, পড়ুন অ্যামাজন ইএমআর-এ অ্যাপাচি স্পার্ক অ্যাপ্লিকেশনগুলির জন্য সফলভাবে মেমরি পরিচালনার জন্য সর্বোত্তম অনুশীলন.

এরপরে, ড্রাইভার এবং এক্সিকিউটর সেটিংসের জন্য, আমরা Amazon S3 এ লেখার সময় পারফরম্যান্স উন্নত করতে কমিটর সেটিংস তদন্ত করার পরামর্শ দিই। আমাদের ক্ষেত্রে, আমরা Amazon S3 এ Parquet ফাইল লিখছি এবং “সেটিং করছিspark.sql.parquet.fs.optimized.comitter.optimization-enabled"সত্য

আমাজন S3 এর সাথে সংযোগের জন্য প্রয়োজন হলে, একটি আঞ্চলিক শেষ পয়েন্ট "spark.hadoop.fs.s3a.endpoint” কনফিগারেশন ফাইলের মধ্যে নির্দিষ্ট করা যেতে পারে।

এই উদাহরণে পাইপলাইন, PySpark স্ক্রিপ্ট spark_process.py (নিম্নলিখিত কোডে দেখানো হয়েছে) অ্যামাজন S3 থেকে একটি স্পার্ক ডেটা ফ্রেমে একটি CSV ফাইল লোড করে, এবং প্যার্কেট হিসাবে ডেটা অ্যামাজন S3-এ ফিরে আসে৷

মনে রাখবেন যে আমাদের উদাহরণ কনফিগারেশনটি কাজের চাপের সাথে আনুপাতিক নয় কারণ অ্যাবালোন ডেটাসেট পড়া এবং লেখা একটি ক্ষেত্রে ডিফল্ট সেটিংসে করা যেতে পারে। আমরা উল্লিখিত কনফিগারেশনগুলি আপনার নির্দিষ্ট প্রয়োজনের উপর ভিত্তি করে সংজ্ঞায়িত করা উচিত।

# import requirements
import argparse
import logging
import sys
import os
import pandas as pd # spark imports
from pyspark.sql import SparkSession
from pyspark.sql.functions import (udf, col)
from pyspark.sql.types import StringType, StructField, StructType, FloatType from data_utils import( spark_read_parquet, Unbuffered
) sys.stdout = Unbuffered(sys.stdout) # Define custom handler
logger = logging.getLogger(__name__)
handler = logging.StreamHandler(sys.stdout)
handler.setFormatter(logging.Formatter("%(asctime)s %(message)s"))
logger.addHandler(handler)
logger.setLevel(logging.INFO) def main(data_path): spark = SparkSession.builder.appName("PySparkJob").getOrCreate() spark.sparkContext.setLogLevel("ERROR") schema = StructType( [ StructField("sex", StringType(), True), StructField("length", FloatType(), True), StructField("diameter", FloatType(), True), StructField("height", FloatType(), True), StructField("whole_weight", FloatType(), True), StructField("shucked_weight", FloatType(), True), StructField("viscera_weight", FloatType(), True), StructField("rings", FloatType(), True), ] ) df = spark.read.csv(data_path, header=False, schema=schema) return df.select("sex", "length", "diameter", "rings") if __name__ == "__main__": logger.info(f"===============================================================") logger.info(f"================= Starting pyspark-processing =================") parser = argparse.ArgumentParser(description="app inputs") parser.add_argument("--input_table", type=str, help="path to the channel data") parser.add_argument("--output_table", type=str, help="path to the output data") args = parser.parse_args() df = main(args.input_table) logger.info("Writing transformed data") df.write.csv(os.path.join(args.output_table, "transformed.csv"), header=True, mode="overwrite") # save data df.coalesce(10).write.mode("overwrite").parquet(args.output_table) logger.info(f"================== Ending pyspark-processing ==================") logger.info(f"===============================================================")

স্পার্ক প্রক্রিয়াকরণের কাজগুলি অপ্টিমাইজ করার জন্য, আপনি ক্লাউডওয়াচ লগগুলির পাশাপাশি স্পার্ক UI ব্যবহার করতে পারেন৷ আপনি SageMaker নোটবুকের উদাহরণে একটি প্রসেসিং কাজ চালিয়ে স্পার্ক UI তৈরি করতে পারেন। আপনি দেখতে পারেন একটি পাইপলাইনের মধ্যে চলমান প্রক্রিয়াকরণ কাজের জন্য স্পার্ক UI by ইতিহাস সার্ভার চলমান SageMaker নোটবুকের মধ্যে যদি স্পার্ক UI লগগুলি একই Amazon S3 অবস্থানের মধ্যে সংরক্ষণ করা হয়।

পরিষ্কার কর

আপনি যদি টিউটোরিয়ালটি অনুসরণ করেন, তাহলে চার্জ নেওয়া বন্ধ করতে আর ব্যবহার করা হয় না এমন সংস্থানগুলি মুছে ফেলার জন্য এটি ভাল অভ্যাস। নিশ্চিত করা CloudFormation স্ট্যাক মুছুন যে আপনি আপনার সম্পদ তৈরি করতে ব্যবহৃত. এটি তৈরি করা স্ট্যাকের পাশাপাশি এটি তৈরি করা সংস্থানগুলি মুছে ফেলবে।

উপসংহার

এই পোস্টে, আমরা দেখিয়েছি কিভাবে সেজমেকার পাইপলাইনের মধ্যে পাইস্পার্ক ব্যবহার করে একটি নিরাপদ সেজমেকার প্রসেসিং কাজ চালানো যায়। আমরা স্পার্ক কনফিগারেশন ব্যবহার করে PySpark কে কীভাবে অপ্টিমাইজ করতে হয় এবং নিরাপদ নেটওয়ার্কিং কনফিগারেশনে চালানোর জন্য আপনার প্রসেসিং কাজ সেট আপ করতে হয় তাও প্রদর্শন করেছি।

পরবর্তী ধাপ হিসেবে, সম্পূর্ণ মডেলের জীবনচক্র কীভাবে স্বয়ংক্রিয় করা যায় এবং কীভাবে তা অন্বেষণ করুন গ্রাহকরা নিরাপদ এবং মাপযোগ্য MLOps প্ল্যাটফর্ম তৈরি করেছেন SageMaker পরিষেবা ব্যবহার করে।


লেখক সম্পর্কে

Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence-এ PySpark ব্যবহার করে নিরাপদ প্রক্রিয়াকরণের কাজ চালান। উল্লম্ব অনুসন্ধান. আ.মারেন সুইলম্যান এ একজন ডেটা সায়েন্টিস্ট AWS প্রফেশনাল সার্ভিসেস. তিনি শিল্প জুড়ে গ্রাহকদের সাথে তাদের ব্যবসার ফলাফল অর্জনের জন্য AI/ML এর শক্তি উন্মোচন করে কাজ করেন। মেরেন নভেম্বর 2019 থেকে AWS-এর সাথে আছেন। তার অবসর সময়ে, তিনি কিকবক্সিং, দুর্দান্ত দৃশ্যে হাইকিং এবং বোর্ড গেমের রাত উপভোগ করেন।


Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence-এ PySpark ব্যবহার করে নিরাপদ প্রক্রিয়াকরণের কাজ চালান। উল্লম্ব অনুসন্ধান. আ.মাইরা লাদেইরা টাঙ্কে
এডব্লিউএস-এর একজন এমএল বিশেষজ্ঞ। ডেটা সায়েন্সের পটভূমিতে, তার 9 বছরের অভিজ্ঞতা রয়েছে শিল্প জুড়ে গ্রাহকদের সাথে আর্কিটেক্টিং এবং এমএল অ্যাপ্লিকেশন তৈরি করার। একটি প্রযুক্তিগত নেতৃত্ব হিসাবে, তিনি গ্রাহকদের উদীয়মান প্রযুক্তি এবং উদ্ভাবনী সমাধানগুলির মাধ্যমে তাদের ব্যবসায়িক মূল্যের অর্জনকে ত্বরান্বিত করতে সহায়তা করেন। তার অবসর সময়ে, মাইরা তার পরিবারের সাথে উষ্ণ কোথাও ভ্রমণ এবং সময় কাটাতে উপভোগ করে।


Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence-এ PySpark ব্যবহার করে নিরাপদ প্রক্রিয়াকরণের কাজ চালান। উল্লম্ব অনুসন্ধান. আ.পলিন টিং
তথ্য বিজ্ঞানী হয় AWS প্রফেশনাল সার্ভিসেস টীম. তিনি AI/ML সলিউশন তৈরি করে গ্রাহকদের তাদের ব্যবসায়িক ফলাফল অর্জন এবং ত্বরান্বিত করতে সহায়তা করেন। তার অবসর সময়ে, Pauline ভ্রমণ, সার্ফিং, এবং নতুন ডেজার্ট জায়গা চেষ্টা উপভোগ করে।


Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence-এ PySpark ব্যবহার করে নিরাপদ প্রক্রিয়াকরণের কাজ চালান। উল্লম্ব অনুসন্ধান. আ.ডোনাল্ড ফসুও
এর একজন সিনিয়র ডেটা আর্কিটেক্ট AWS প্রফেশনাল সার্ভিসেস দল, বেশিরভাগ গ্লোবাল ফাইন্যান্স সার্ভিসের সাথে কাজ করে। তিনি গ্রাহকদের সাথে উদ্ভাবনী সমাধান তৈরি করতে নিযুক্ত হন যা গ্রাহকদের ব্যবসায়িক সমস্যার সমাধান করে এবং AWS পরিষেবা গ্রহণকে ত্বরান্বিত করে। তার অবসর সময়ে, ডোনাল্ড পড়া, দৌড়ানো এবং ভ্রমণ উপভোগ করে।

সময় স্ট্যাম্প:

থেকে আরো এডাব্লুএস মেশিন লার্নিং

অ্যামাজন কেন্দ্র স্ল্যাক সংযোগকারী ব্যবহার করে বুদ্ধিমান অনুসন্ধানের মাধ্যমে স্ল্যাক ওয়ার্কস্পেসগুলিতে জ্ঞানের উন্মোচন করুন

উত্স নোড: 1216424
সময় স্ট্যাম্প: মার্চ 15, 2022

আমাজন কেন্দ্রের জন্য কুইপ সংযোগকারী ব্যবহার করে বুদ্ধিমান অনুসন্ধানের মাধ্যমে কুইপ নথিতে জ্ঞানের জন্য অনুসন্ধান করুন

উত্স নোড: 1270825
সময় স্ট্যাম্প: এপ্রিল 19, 2022