ট্যাবুলার ডেটা মডেলিংয়ের জন্য নতুন বিল্ট-ইন অ্যামাজন সেজমেকার অ্যালগরিদম: লাইটজিবিএম, ক্যাটবুস্ট, অটোগ্লুওন-টেবুলার এবং ট্যাবট্রান্সফরমার

উত্স নোড: 1541386

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

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

নিম্নলিখিত চারটি নতুন বিল্ট-ইন অ্যালগরিদমের তালিকা, তাদের ডকুমেন্টেশন, উদাহরণ নোটবুক এবং উত্সের লিঙ্ক সহ।

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

নিম্নলিখিত বিভাগে, আমরা প্রতিটি অ্যালগরিদমের একটি সংক্ষিপ্ত প্রযুক্তিগত বিবরণ এবং সেজমেকার SDK বা SageMaker জাম্পস্টার্টের মাধ্যমে কীভাবে একটি মডেলকে প্রশিক্ষণ দেওয়া যায় তার উদাহরণ প্রদান করি।

লাইটজিবিএম

লাইটজিবিএম গ্রেডিয়েন্ট বুস্টিং ডিসিশন ট্রি (GBDT) অ্যালগরিদমের একটি জনপ্রিয় এবং দক্ষ ওপেন সোর্স বাস্তবায়ন। GBDT হল একটি তত্ত্বাবধানে থাকা শেখার অ্যালগরিদম যেটি সহজ এবং দুর্বল মডেলের একটি সেট থেকে অনুমানের সমষ্টিকে একত্রিত করে একটি লক্ষ্য ভেরিয়েবলের সঠিকভাবে পূর্বাভাস দেওয়ার চেষ্টা করে। LightGBM প্রচলিত GBDT-এর দক্ষতা এবং মাপযোগ্যতা উল্লেখযোগ্যভাবে উন্নত করতে অতিরিক্ত কৌশল ব্যবহার করে।

ক্যাটবুস্ট

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

অটোগ্লুওন-টেবুলার

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

ট্যাব ট্রান্সফরমার

ট্যাব ট্রান্সফরমার তত্ত্বাবধানে শেখার জন্য একটি অভিনব ডিপ ট্যাবুলার ডেটা মডেলিং আর্কিটেকচার। ট্যাবট্রান্সফরমার স্ব-মনোযোগ ভিত্তিক ট্রান্সফরমারের উপর নির্মিত। ট্রান্সফরমার স্তরগুলি উচ্চতর ভবিষ্যদ্বাণী নির্ভুলতা অর্জনের জন্য শ্রেণীবদ্ধ বৈশিষ্ট্যগুলির এম্বেডিংগুলিকে শক্তিশালী প্রাসঙ্গিক এম্বেডিংগুলিতে রূপান্তরিত করে। উপরন্তু, TabTransformer থেকে শেখা প্রাসঙ্গিক এম্বেডিংগুলি অনুপস্থিত এবং কোলাহলপূর্ণ ডেটা বৈশিষ্ট্য উভয়ের বিরুদ্ধে অত্যন্ত শক্তিশালী এবং আরও ভাল ব্যাখ্যাযোগ্যতা প্রদান করে। এই মডেল সাম্প্রতিক পণ্য আমাজন বিজ্ঞান গবেষণা (কাগজ এবং অফিসিয়াল ব্লগ পোস্ট এখানে) এবং ML সম্প্রদায়ের দ্বারা ব্যাপকভাবে গৃহীত হয়েছে, বিভিন্ন তৃতীয়-পক্ষ বাস্তবায়ন সহ (Kerasঅটোগ্লুওন,) এবং সামাজিক মিডিয়া বৈশিষ্ট্য যেমন টুইটডেটাসায়েন্সের দিকে, মাঝারি, এবং Kaggle.

সেজমেকার বিল্ট-ইন অ্যালগরিদমের সুবিধা

আপনার নির্দিষ্ট ধরণের সমস্যা এবং ডেটার জন্য একটি অ্যালগরিদম নির্বাচন করার সময়, একটি SageMaker বিল্ট-ইন অ্যালগরিদম ব্যবহার করা সবচেয়ে সহজ বিকল্প, কারণ এটি করার ফলে নিম্নলিখিত প্রধান সুবিধাগুলি আসে:

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

আসুন এখন দেখি কিভাবে এই অন্তর্নির্মিত অ্যালগরিদমগুলির মধ্যে একটিকে প্রশিক্ষণ দেওয়া যায়।

SageMaker SDK ব্যবহার করে একটি অন্তর্নির্মিত অ্যালগরিদম প্রশিক্ষণ দিন

একটি নির্বাচিত মডেলকে প্রশিক্ষণের জন্য, আমাদের সেই মডেলের URI, সেইসাথে প্রশিক্ষণের স্ক্রিপ্ট এবং প্রশিক্ষণের জন্য ব্যবহৃত কন্টেইনার চিত্র পেতে হবে। সৌভাগ্যক্রমে, এই তিনটি ইনপুট শুধুমাত্র মডেলের নাম, সংস্করণের উপর নির্ভর করে (উপলব্ধ মডেলগুলির একটি তালিকার জন্য, দেখুন জাম্পস্টার্ট উপলব্ধ মডেল টেবিল), এবং আপনি যে ধরনের উদাহরণে প্রশিক্ষণ দিতে চান। এটি নিম্নলিখিত কোড স্নিপেটে প্রদর্শিত হয়:

from sagemaker import image_uris, model_uris, script_uris train_model_id, train_model_version, train_scope = "lightgbm-classification-model", "*", "training"
training_instance_type = "ml.m5.xlarge" # Retrieve the docker image
train_image_uri = image_uris.retrieve( region=None, framework=None, model_id=train_model_id, model_version=train_model_version, image_scope=train_scope, instance_type=training_instance_type
)
# Retrieve the training script
train_source_uri = script_uris.retrieve( model_id=train_model_id, model_version=train_model_version, script_scope=train_scope
)
# Retrieve the model artifact; in the tabular case, the model is not pre-trained train_model_uri = model_uris.retrieve( model_id=train_model_id, model_version=train_model_version, model_scope=train_scope
)

সার্জারির train_model_id পরিবর্তন lightgbm-regression-model যদি আমরা একটি রিগ্রেশন সমস্যা মোকাবেলা করছি। এই পোস্টে প্রবর্তিত অন্যান্য সমস্ত মডেলের আইডিগুলি নিম্নলিখিত টেবিলে তালিকাভুক্ত করা হয়েছে।

মডেল সমস্যার ধরণ মডেল আইডি
লাইটজিবিএম শ্রেণীবিন্যাস lightgbm-classification-model
. প্রত্যাগতি lightgbm-regression-model
ক্যাটবুস্ট শ্রেণীবিন্যাস catboost-classification-model
. প্রত্যাগতি catboost-regression-model
অটোগ্লুওন-টেবুলার শ্রেণীবিন্যাস autogluon-classification-ensemble
. প্রত্যাগতি autogluon-regression-ensemble
ট্যাব ট্রান্সফরমার শ্রেণীবিন্যাস pytorch-tabtransformerclassification-model
. প্রত্যাগতি pytorch-tabtransformerregression-model

তারপরে আমরা নির্ধারণ করি যে আমাদের ইনপুট কোথায় রয়েছে আমাজন সিম্পল স্টোরেজ সার্ভিস (Amazon S3)। আমরা এই উদাহরণের জন্য একটি সর্বজনীন নমুনা ডেটাসেট ব্যবহার করছি। আমরা আমাদের আউটপুট কোথায় যেতে চাই তাও সংজ্ঞায়িত করি এবং নির্বাচিত মডেলকে প্রশিক্ষণের জন্য প্রয়োজনীয় হাইপারপ্যারামিটারের ডিফল্ট তালিকা পুনরুদ্ধার করি। আপনি আপনার পছন্দ অনুযায়ী তাদের মান পরিবর্তন করতে পারেন.

import sagemaker
from sagemaker import hyperparameters sess = sagemaker.Session()
region = sess.boto_session.region_name # URI of sample training dataset
training_dataset_s3_path = f"s3:///jumpstart-cache-prod-{region}/training-datasets/tabular_multiclass/" # URI for output artifacts output_bucket = sess.default_bucket()
s3_output_location = f"s3://{output_bucket}/jumpstart-example-tabular-training/output" # Retrieve the default hyper-parameters for training
hyperparameters = hyperparameters.retrieve_default( model_id=train_model_id, model_version=train_model_version
) # [Optional] Override default hyperparameters with custom values
hyperparameters[ "num_boost_round"
] = "500" # The same hyperparameter is named as "iterations" for CatBoost

অবশেষে, আমরা একটি সেজমেকারকে ইনস্ট্যান্টিয়েট করি Estimator সমস্ত পুনরুদ্ধার করা ইনপুট সহ এবং এর সাথে প্রশিক্ষণের কাজ শুরু করুন .fit, এটি পাস করা আমাদের প্রশিক্ষণ ডেটাসেট URI. দ্য entry_point প্রদত্ত স্ক্রিপ্টের নাম দেওয়া হয়েছে transfer_learning.py (অন্যান্য কাজ এবং অ্যালগরিদমের জন্য একই), এবং ইনপুট ডেটা চ্যানেল পাস করা হয়েছে .fit নাম দিতে হবে training.

from sagemaker.estimator import Estimator
from sagemaker.utils import name_from_base # Unique training job name
training_job_name = name_from_base(f"built-in-example-{model_id}") # Create SageMaker Estimator instance
tc_estimator = Estimator( role=aws_role, image_uri=train_image_uri, source_dir=train_source_uri, model_uri=train_model_uri, entry_point="transfer_learning.py", instance_count=1, instance_type=training_instance_type, max_run=360000, hyperparameters=hyperparameters, output_path=s3_output_location,
) # Launch a SageMaker Training job by passing s3 path of the training data
tc_estimator.fit({"training": training_dataset_s3_path}, logs=True)

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

SageMaker JumpStart ব্যবহার করে একটি অন্তর্নির্মিত অ্যালগরিদম প্রশিক্ষণ দিন

আপনি SageMaker JumpStart UI এর মাধ্যমে কয়েকটি ক্লিকের মাধ্যমে এই অন্তর্নির্মিত অ্যালগরিদমগুলিকে প্রশিক্ষণ দিতে পারেন। জাম্পস্টার্ট হল একটি সেজমেকার বৈশিষ্ট্য যা আপনাকে গ্রাফিকাল ইন্টারফেসের মাধ্যমে বিভিন্ন এমএল ফ্রেমওয়ার্ক এবং মডেল হাব থেকে অন্তর্নির্মিত অ্যালগরিদম এবং প্রাক-প্রশিক্ষিত মডেলগুলিকে প্রশিক্ষণ ও স্থাপন করতে দেয়। এটি আপনাকে সম্পূর্ণরূপে উন্নত ML সলিউশন মোতায়েন করার অনুমতি দেয় যা একটি লক্ষ্যযুক্ত ব্যবহারের ক্ষেত্রে সমাধান করতে ML মডেল এবং অন্যান্য বিভিন্ন AWS পরিষেবাকে একত্রিত করে।

আরও তথ্যের জন্য, দেখুন টেনসরফ্লো হাব এবং হাগিং ফেস মডেল ব্যবহার করে অ্যামাজন সেজমেকার জাম্পস্টার্টের সাথে পাঠ্য শ্রেণিবিন্যাস চালান.

উপসংহার

এই পোস্টে, আমরা SageMaker-এ এখন উপলব্ধ ট্যাবুলার ডেটাসেটে ML-এর জন্য চারটি শক্তিশালী নতুন বিল্ট-ইন অ্যালগরিদম চালু করার ঘোষণা করেছি। আমরা এই অ্যালগরিদমগুলির একটি প্রযুক্তিগত বিবরণ প্রদান করেছি, সেইসাথে SageMaker SDK ব্যবহার করে LightGBM-এর জন্য একটি উদাহরণ প্রশিক্ষণ কাজের।

আপনার নিজস্ব ডেটাসেট আনুন এবং SageMaker-এ এই নতুন অ্যালগরিদমগুলি ব্যবহার করে দেখুন এবং বিল্ট-ইন অ্যালগরিদমগুলি ব্যবহার করার জন্য নমুনা নোটবুকগুলি দেখুন GitHub.


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

ডঃ জিন হুয়াং Amazon SageMaker JumpStart এবং Amazon SageMaker বিল্ট-ইন অ্যালগরিদমের জন্য একজন ফলিত বিজ্ঞানী। তিনি স্কেলেবল মেশিন লার্নিং অ্যালগরিদম বিকাশের দিকে মনোনিবেশ করেন। তার গবেষণার আগ্রহগুলি প্রাকৃতিক ভাষা প্রক্রিয়াকরণ, ট্যাবুলার ডেটার উপর ব্যাখ্যাযোগ্য গভীর শিক্ষা এবং নন-প্যারামেট্রিক স্পেস-টাইম ক্লাস্টারিংয়ের শক্তিশালী বিশ্লেষণের ক্ষেত্রে। তিনি ACL, ICDM, KDD কনফারেন্স এবং রয়্যাল স্ট্যাটিস্টিক্যাল সোসাইটি: সিরিজ এ জার্নালে অনেক গবেষণাপত্র প্রকাশ করেছেন।

আশিস খেতান ড Amazon SageMaker JumpStart এবং Amazon SageMaker বিল্ট-ইন অ্যালগরিদম সহ একজন সিনিয়র ফলিত বিজ্ঞানী এবং মেশিন লার্নিং অ্যালগরিদম বিকাশে সহায়তা করে৷ তিনি মেশিন লার্নিং এবং পরিসংখ্যানগত অনুমানের একজন সক্রিয় গবেষক এবং NeurIPS, ICML, ICLR, JMLR, ACL, এবং EMNLP সম্মেলনে অনেক গবেষণাপত্র প্রকাশ করেছেন।

জোয়াও মৌরা অ্যামাজন ওয়েব সার্ভিসেসের একজন এআই/এমএল বিশেষজ্ঞ সলিউশন আর্কিটেক্ট। তিনি বেশিরভাগই এনএলপি ব্যবহারের ক্ষেত্রে এবং গ্রাহকদের ডিপ লার্নিং মডেল প্রশিক্ষণ এবং স্থাপনার অপ্টিমাইজে সহায়তা করার উপর দৃষ্টি নিবদ্ধ করেন। তিনি লো-কোড এমএল সমাধান এবং এমএল-বিশেষ হার্ডওয়্যারের সক্রিয় প্রবক্তা।

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

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

অ্যামাজন সেজমেকার স্টুডিও এবং অ্যামাজন সেজমেকার অটোপাইলট ব্যবহার করে স্যাটেলাইট ইমেজ বৈশিষ্ট্য ব্যবহার করে ম্যানগ্রোভ বন সনাক্ত করুন – পার্ট 1

উত্স নোড: 1497650
সময় স্ট্যাম্প: জুন 21, 2022

AWS AI পরিষেবাগুলি ব্যবহার করে বন্ধকী আন্ডাররাইটিং প্রক্রিয়ায় নথির বৈধতা এবং জালিয়াতি সনাক্তকরণ স্বয়ংক্রিয় করুন: পার্ট 1 | আমাজন ওয়েব সার্ভিসেস

উত্স নোড: 2106660
সময় স্ট্যাম্প: 24 পারে, 2023