প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

একটি ডেটা উৎস হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন৷

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

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

ব্যবসাগুলিকে ক্লাউডে এমএল প্রক্রিয়াগুলি বাস্তবায়নে সহায়তা করার জন্য AWS-এর একাধিক পরিষেবা রয়েছে৷

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

AWS ML স্ট্যাকের তিনটি স্তর রয়েছে। মাঝের স্তরটি রয়েছে SageMaker, যা ডেভেলপার, ডেটা সায়েন্টিস্ট এবং ML ইঞ্জিনিয়ারদের স্কেলে ML মডেলগুলি তৈরি, প্রশিক্ষণ এবং স্থাপন করার ক্ষমতা প্রদান করে। এটি ML কার্যপ্রবাহের প্রতিটি ধাপ থেকে জটিলতা দূর করে যাতে আপনি আরও সহজে আপনার ML ব্যবহারের ক্ষেত্রে স্থাপন করতে পারেন। এর মধ্যে ভবিষ্যদ্বাণীমূলক রক্ষণাবেক্ষণ থেকে শুরু করে গ্রাহকের আচরণের পূর্বাভাস দেওয়ার জন্য কম্পিউটারের দৃষ্টিভঙ্গি অন্তর্ভুক্ত রয়েছে। গ্রাহকরা সেজমেকারের সাথে ডেটা বিজ্ঞানীদের উত্পাদনশীলতায় 10 গুণ পর্যন্ত উন্নতি অর্জন করে।

Apache Cassandra un-structured বা আধা-কাঠামোগত ডেটা সহ পড়ার-ভারী ব্যবহারের ক্ষেত্রে একটি জনপ্রিয় পছন্দ। উদাহরণস্বরূপ, একটি জনপ্রিয় খাদ্য বিতরণ ব্যবসা ডেলিভারির সময় অনুমান করে এবং একজন খুচরা গ্রাহক অ্যাপাচি ক্যাসান্দ্রা ডেটাবেসে পণ্যের ক্যাটালগ তথ্য ব্যবহার করে ঘন ঘন স্থির থাকতে পারে। আমাজন কীস্পেস একটি পরিমাপযোগ্য, অত্যন্ত উপলব্ধ, এবং পরিচালিত সার্ভারহীন Apache Cassandra-সামঞ্জস্যপূর্ণ ডাটাবেস পরিষেবা। আপনাকে সার্ভারের ব্যবস্থা, প্যাচ বা পরিচালনা করার দরকার নেই এবং আপনাকে সফ্টওয়্যার ইনস্টল, রক্ষণাবেক্ষণ বা পরিচালনা করার দরকার নেই। টেবিলগুলি স্বয়ংক্রিয়ভাবে উপরে এবং নীচে স্কেল করতে পারে এবং আপনি যে সংস্থানগুলি ব্যবহার করেন তার জন্য আপনি কেবল অর্থ প্রদান করেন। Amazon Keyspaces আপনাকে আজকে যে Cassandra অ্যাপ্লিকেশন কোড এবং ডেভেলপার টুল ব্যবহার করে AWS-এ আপনার Cassandra ওয়ার্কলোড চালাতে দেয়।

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

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

সমাধান ওভারভিউ

নির্দেশাবলী অনুমান করে যে আপনি কোডটি চালানোর জন্য SageMaker স্টুডিও ব্যবহার করবেন। সংশ্লিষ্ট কোড শেয়ার করা হয়েছে AWS নমুনা GitHub. ল্যাবে নির্দেশাবলী অনুসরণ করে, আপনি নিম্নলিখিতগুলি করতে পারেন:

  • প্রয়োজনীয় নির্ভরতা ইনস্টল করুন।
  • Amazon Keyspaces এর সাথে সংযোগ করুন, একটি টেবিল তৈরি করুন এবং নমুনা ডেটা গ্রহণ করুন৷
  • Amazon Keyspaces-এ ডেটা ব্যবহার করে একটি শ্রেণীবিভাগ ML মডেল তৈরি করুন।
  • মডেল ফলাফল অন্বেষণ.
  • নতুন তৈরি সম্পদ পরিষ্কার করুন।

একবার সম্পূর্ণ হয়ে গেলে, নিম্নলিখিত ছবিতে দেখানো ML মডেলগুলিকে প্রশিক্ষিত করার জন্য আপনি Amazon Keyspaces-এর সাথে SageMaker সংহত করবেন।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

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

পূর্বশর্ত

প্রথমে, SageMaker-এ নেভিগেট করুন।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

এর পরে, আপনি যদি প্রথমবার সেজমেকার ব্যবহার করছেন তবে নির্বাচন করুন এবার শুরু করা যাক.

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

পরবর্তী, নির্বাচন করুন SageMaker ডোমেন সেট আপ করুন.

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

এর পরে, নামের সাথে একটি নতুন ব্যবহারকারী প্রোফাইল তৈরি করুন - sagemakeruser, এবং নির্বাচন করুন নতুন ভূমিকা তৈরি করুন মধ্যে ডিফল্ট এক্সিকিউশন রোল উপ বিভাগ।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

এরপরে, পপ আপ হওয়া স্ক্রীনে, যেকোনো একটি নির্বাচন করুন অ্যামাজন সিম্পল স্টোরেজ সার্ভিস (অ্যামাজন এস 3) বালতি, এবং ভূমিকা তৈরি করুন নির্বাচন করুন।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

ভূমিকা থেকে অস্থায়ী শংসাপত্র ব্যবহার করে SageMaker-কে কীস্পেস টেবিল অ্যাক্সেস করার অনুমতি দেওয়ার জন্য এই ভূমিকাটি নিম্নলিখিত ধাপে ব্যবহার করা হবে। এটি নোটবুকে একটি ব্যবহারকারীর নাম এবং পাসওয়ার্ড সংরক্ষণ করার প্রয়োজনীয়তা দূর করে।

এর পরে, এর সাথে যুক্ত ভূমিকা পুনরুদ্ধার করুন sagemakeruser যেটি সারাংশ বিভাগ থেকে পূর্ববর্তী ধাপে তৈরি করা হয়েছিল।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

তারপর, নেভিগেট করুন এডাব্লুএস কনসোল এবং তাকান AWS আইডেন্টিটি অ্যান্ড অ্যাকসেস ম্যানেজমেন্ট (IAM)। IAM-এর মধ্যে, ভূমিকাতে নেভিগেট করুন। ভূমিকার মধ্যে, পূর্ববর্তী ধাপে চিহ্নিত সম্পাদন ভূমিকা অনুসন্ধান করুন।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

এর পরে, পূর্ববর্তী ধাপে চিহ্নিত ভূমিকা নির্বাচন করুন এবং অনুমতি যোগ করুন নির্বাচন করুন। প্রদর্শিত ড্রপ ডাউনে, ইনলাইন নীতি তৈরি করুন নির্বাচন করুন। সেজমেকার আপনাকে একটি দানাদার স্তরের অ্যাক্সেস সরবরাহ করতে দেয় যা ব্যবসার প্রয়োজনীয়তার উপর ভিত্তি করে ব্যবহারকারী/অ্যাপ্লিকেশন কী কী কাজ করতে পারে তা সীমাবদ্ধ করে।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

তারপর, JSON ট্যাবটি নির্বাচন করুন এবং Github এর নোট বিভাগ থেকে নীতিটি অনুলিপি করুন পৃষ্ঠা. এই নীতি SageMaker নোটবুককে কীস্পেসের সাথে সংযোগ করতে এবং আরও প্রক্রিয়াকরণের জন্য ডেটা পুনরুদ্ধার করার অনুমতি দেয়।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

তারপরে, ড্রপ ডাউন থেকে আবার অনুমতি যোগ করুন নির্বাচন করুন এবং নীতি সংযুক্ত করুন নির্বাচন করুন।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

AmazonKeyspacesFullAccess নীতি দেখুন, এবং ম্যাচিং ফলাফলের পাশের চেকবক্সটি নির্বাচন করুন এবং নীতি সংযুক্ত করুন নির্বাচন করুন।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

যাচাই করুন যে অনুমতি নীতি বিভাগ অন্তর্ভুক্ত AmazonS3FullAccess, AmazonSageMakerFullAccess, AmazonKeyspacesFullAccess, সেইসাথে নতুন যোগ করা ইনলাইন নীতি.

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

এরপর, AWS কনসোল ব্যবহার করে SageMaker স্টুডিওতে নেভিগেট করুন এবং SageMaker স্টুডিও নির্বাচন করুন। সেখানে একবার, অ্যাপ লঞ্চ করুন এবং স্টুডিও নির্বাচন করুন।

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

নোটবুক ওয়াকথ্রু

সেজমেকার নোটবুক থেকে কীস্পেসের সাথে সংযোগ করার পছন্দের উপায় হল ব্যবহার করে AWS স্বাক্ষর সংস্করণ 4 প্রক্রিয়া (SigV4) ভিত্তি অস্থায়ী শংসাপত্র প্রমাণীকরণের জন্য। এই পরিস্থিতিতে, আমাদের কীস্পেস শংসাপত্র তৈরি বা সংরক্ষণ করার দরকার নেই এবং SigV4 প্লাগইন দিয়ে প্রমাণীকরণের জন্য শংসাপত্রগুলি ব্যবহার করতে পারি। অস্থায়ী নিরাপত্তা শংসাপত্রে একটি অ্যাক্সেস কী আইডি এবং একটি গোপন অ্যাক্সেস কী থাকে। যাইহোক, তারা একটি নিরাপত্তা টোকেনও অন্তর্ভুক্ত করে যা শংসাপত্রের মেয়াদ শেষ হওয়ার নির্দেশ করে। এই পোস্টে, আমরা একটি IAM ভূমিকা তৈরি করব এবং অস্থায়ী নিরাপত্তা শংসাপত্র তৈরি করব।

প্রথমে, আমরা একটি ড্রাইভার ইনস্টল করি (ক্যাসান্ড্রা-সিগভি 4)। এই ড্রাইভার আপনাকে AWS স্বাক্ষর সংস্করণ 4 প্রক্রিয়া (SigV4) ব্যবহার করে আপনার API অনুরোধগুলিতে প্রমাণীকরণ তথ্য যোগ করতে সক্ষম করে। প্লাগইন ব্যবহার করে, আপনি IAM ব্যবহারকারী এবং ভূমিকা ব্যবহার করে Amazon Keyspaces (Apache Cassandra-এর জন্য) অ্যাক্সেস করতে স্বল্প-মেয়াদী শংসাপত্র সহ ব্যবহারকারী এবং অ্যাপ্লিকেশনগুলি সরবরাহ করতে পারেন। এটি অনুসরণ করে, আপনি অতিরিক্ত প্যাকেজ নির্ভরতা সহ একটি প্রয়োজনীয় শংসাপত্র আমদানি করবেন। শেষ পর্যন্ত, আপনি নোটবুকটিকে কীস্পেসের সাথে কথা বলার ভূমিকা গ্রহণ করার অনুমতি দেবেন।

# Install missing packages and import dependencies
# Installing Cassandra SigV4
%pip install cassandra-sigv4 # Get Security certificate
!curl https://certs.secureserver.net/repository/sf-class2-root.crt -O # Import
from sagemaker import get_execution_role
from cassandra.cluster import Cluster
from ssl import SSLContext, PROTOCOL_TLSv1_2, CERT_REQUIRED
from cassandra_sigv4.auth import SigV4AuthProvider
import boto3 import pandas as pd
from pandas import DataFrame import csv
from cassandra import ConsistencyLevel
from datetime import datetime
import time
from datetime import timedelta import pandas as pd
import datetime as dt
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
from sklearn.preprocessing import MinMaxScaler # Getting credentials from the role
client = boto3.client("sts") # Get notebook Role
role = get_execution_role()
role_info = {"RoleArn": role, "RoleSessionName": "session1"}
print(role_info) credentials = client.assume_role(**role_info)

এরপরে, অ্যামাজন কীস্পেসের সাথে সংযোগ করুন এবং সংযোগটি যাচাই করতে কীস্পেস থেকে পান্ডাস ডেটাফ্রেমে সিস্টেম ডেটা পড়ুন।

# Connect to Cassandra Database from SageMaker Notebook # using temporary credentials from the Role.
session = boto3.session.Session() ###
### You can also pass specific credentials to the session
###
#session = boto3.session.Session(
# aws_access_key_id=credentials["Credentials"]["AccessKeyId"],
# aws_secret_access_key=credentials["Credentials"]["SecretAccessKey"],
# aws_session_token=credentials["Credentials"]["SessionToken"],
#) region_name = session.region_name # Set Context
ssl_context = SSLContext(PROTOCOL_TLSv1_2)
ssl_context.load_verify_locations("sf-class2-root.crt")
ssl_context.verify_mode = CERT_REQUIRED auth_provider = SigV4AuthProvider(session)
keyspaces_host = "cassandra." + region_name + ".amazonaws.com" cluster = Cluster([keyspaces_host], ssl_context=ssl_context, auth_provider=auth_provider, port=9142)
session = cluster.connect() # Read data from Keyspaces system table. # Keyspaces is serverless DB so you don't have to create Keyspaces DB ahead of time.
r = session.execute("select * from system_schema.keyspaces") # Read Keyspaces row into Panda DataFrame
df = DataFrame(r)
print(df)

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

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

  • সাম্প্রতিকতা: একজন গ্রাহক কিভাবে সম্প্রতি একটি কেনাকাটা করেছেন।
  • ফ্রিকোয়েন্সি: একজন গ্রাহক কত ঘন ঘন ক্রয় করেন।
  • আর্থিক মূল্য: একজন গ্রাহক ক্রয়ের জন্য কত টাকা ব্যয় করেন।

RFM বিশ্লেষণ সাংখ্যিকভাবে এই তিনটি বিভাগের প্রতিটিতে একজন গ্রাহককে র‍্যাঙ্ক করে, সাধারণত 1 থেকে 5 এর স্কেলে (সংখ্যা যত বেশি হবে, ফলাফল তত ভাল)। "সেরা" গ্রাহক প্রতিটি বিভাগে একটি শীর্ষ স্কোর পাবেন। আমরা পান্ডাদের কোয়ান্টাইল-ভিত্তিক ডিসক্রিটাইজেশন ফাংশন (qcut) ব্যবহার করব। এটি নমুনা কোয়ান্টাইলের উপর ভিত্তি করে বা সমান আকারের বালতিতে মানগুলিকে আলাদা করতে সাহায্য করবে।

# Prepare Data
r = session.execute("select * from " + keyspaces_schema + ".online_retail") df = DataFrame(r)
df.head(100) df.count()
df["description"].nunique()
df["totalprice"] = df["quantity"] * df["price"]
df.groupby("invoice").agg({"totalprice": "sum"}).head() df.groupby("description").agg({"price": "max"}).sort_values("price", ascending=False).head()
df.sort_values("price", ascending=False).head()
df["country"].value_counts().head()
df.groupby("country").agg({"totalprice": "sum"}).sort_values("totalprice", ascending=False).head() returned = df[df["invoice"].str.contains("C", na=False)]
returned.sort_values("quantity", ascending=True).head() df.isnull().sum()
df.dropna(inplace=True)
df.isnull().sum()
df.dropna(inplace=True)
df.isnull().sum()
df.describe([0.05, 0.01, 0.25, 0.50, 0.75, 0.80, 0.90, 0.95, 0.99]).T
df.drop(df.loc[df["customer_id"] == ""].index, inplace=True) # Recency Metric
import datetime as dt today_date = dt.date(2011, 12, 9)
df["customer_id"] = df["customer_id"].astype(int) # create get the most recent invoice for each customer
temp_df = df.groupby("customer_id").agg({"invoice_date": "max"})
temp_df["invoice_date"] = temp_df["invoice_date"].astype(str)
temp_df["invoice_date"] = pd.to_datetime(temp_df["invoice_date"]).dt.date
temp_df["Recency"] = (today_date - temp_df["invoice_date"]).dt.days
recency_df = temp_df.drop(columns=["invoice_date"])
recency_df.head() # Frequency Metric
temp_df = df.groupby(["customer_id", "invoice"]).agg({"invoice": "count"})
freq_df = temp_df.groupby("customer_id").agg({"invoice": "count"})
freq_df.rename(columns={"invoice": "Frequency"}, inplace=True) # Monetary Metric
monetary_df = df.groupby("customer_id").agg({"totalprice": "sum"})
monetary_df.rename(columns={"totalprice": "Monetary"}, inplace=True)
rfm = pd.concat([recency_df, freq_df, monetary_df], axis=1) df = rfm
df["RecencyScore"] = pd.qcut(df["Recency"], 5, labels=[5, 4, 3, 2, 1])
df["FrequencyScore"] = pd.qcut(df["Frequency"].rank(method="first"), 5, labels=[1, 2, 3, 4, 5])
df["Monetary"] = df["Monetary"].astype(int)
df["MonetaryScore"] = pd.qcut(df["Monetary"], 5, labels=[1, 2, 3, 4, 5])
df["RFM_SCORE"] = ( df["RecencyScore"].astype(str) + df["FrequencyScore"].astype(str) + df["MonetaryScore"].astype(str)
)
seg_map = { r"[1-2][1-2]": "Hibernating", r"[1-2][3-4]": "At Risk", r"[1-2]5": "Can't Loose", r"3[1-2]": "About to Sleep", r"33": "Need Attention", r"[3-4][4-5]": "Loyal Customers", r"41": "Promising", r"51": "New Customers", r"[4-5][2-3]": "Potential Loyalists", r"5[4-5]": "Champions",
} df["Segment"] = df["RecencyScore"].astype(str) + rfm["FrequencyScore"].astype(str)
df["Segment"] = df["Segment"].replace(seg_map, regex=True)
df.head()
rfm = df.loc[:, "Recency":"Monetary"]
df.groupby("customer_id").agg({"Segment": "sum"}).head()

এই উদাহরণে, আমরা কীস্পেস টেবিল থেকে রেকর্ড পড়তে CQL ব্যবহার করি। কিছু এমএল ব্যবহারের ক্ষেত্রে, আপনাকে একই কীস্পেস টেবিল থেকে একই ডেটা একাধিকবার পড়তে হতে পারে। এই ক্ষেত্রে, আমরা সুপারিশ করব যে আপনি অতিরিক্ত খরচ এড়াতে আপনার ডেটা একটি Amazon S3 বালতিতে সংরক্ষণ করুন মূল্যঅ্যামাজন কীস্পেস থেকে পড়ছে। আপনার দৃশ্যের উপর নির্ভর করে, আপনি ব্যবহার করতে পারেন আমাজন ইএমআর থেকে inges সেজমেকারে একটি খুব বড় অ্যামাজন S3 ফাইল।

## Optional Code to save Python DataFrame to S3
from io import StringIO # python3 (or BytesIO for python2) smclient = boto3.Session().client('sagemaker')
sess = sagemaker.Session()
bucket = sess.default_bucket() # Set a default S3 bucket
print(bucket) csv_buffer = StringIO()
df.to_csv(csv_buffer)
s3_resource = boto3.resource('s3')
s3_resource.Object(bucket, ‘out/saved_online_retail.csv').put(Body=csv_buffer.getvalue())

এরপর, আমরা KMeans অ্যালগরিদম ব্যবহার করে একটি ML মডেলকে প্রশিক্ষণ দিই এবং নিশ্চিত করি যে ক্লাস্টারগুলি তৈরি হয়েছে। এই বিশেষ পরিস্থিতিতে, আপনি দেখতে পাবেন যে তৈরি করা ক্লাস্টারগুলি মুদ্রিত হয়েছে, যা দেখায় যে কাঁচা ডেটা সেটের গ্রাহকদের ডেটা সেটের বিভিন্ন বৈশিষ্ট্যের উপর ভিত্তি করে একত্রিত করা হয়েছে। এই ক্লাস্টার তথ্য টার্গেটেড মার্কেটিং প্রচারের জন্য ব্যবহার করা যেতে পারে।

# Training sc = MinMaxScaler((0, 1))
df = sc.fit_transform(rfm) # Clustering
kmeans = KMeans(n_clusters=6).fit(df) # Result
segment = kmeans.labels_ # Visualize the clusters
import matplotlib.pyplot as plt final_df = pd.DataFrame({"customer_id": rfm.index, "Segment": segment})
bucket_data = final_df.groupby("Segment").agg({"customer_id": "count"}).head()
index_data = final_df.groupby("Segment").agg({"Segment": "max"}).head()
index_data["Segment"] = index_data["Segment"].astype(int)
dataFrame = pd.DataFrame(data=bucket_data["customer_id"], index=index_data["Segment"])
dataFrame.rename(columns={"customer_id": "Total Customers"}).plot.bar( rot=70, title="RFM clustering"
)
# dataFrame.plot.bar(rot=70, title="RFM clustering");
plt.show(block=True);

প্ল্যাটোব্লকচেন ডেটা ইন্টেলিজেন্স হিসাবে ডেটা উত্স হিসাবে Amazon Keyspaces ব্যবহার করে মেশিন লার্নিং মডেলগুলিকে প্রশিক্ষণ দিন। উল্লম্ব অনুসন্ধান. আ.

(ঐচ্ছিক) এর পরে, আমরা লক্ষ্যযুক্ত বিপণনের জন্য ML মডেল দ্বারা চিহ্নিত গ্রাহক বিভাগগুলিকে একটি Amazon Keyspaces টেবিলে সংরক্ষণ করি। একটি ব্যাচের কাজ এই ডেটা পড়তে পারে এবং নির্দিষ্ট সেগমেন্টে গ্রাহকদের লক্ষ্যযুক্ত প্রচার চালাতে পারে।

# Create ml_clustering_results table to store results createTable = """CREATE TABLE IF NOT EXISTS %s.ml_clustering_results ( run_id text, segment int, total_customers int, run_date date, PRIMARY KEY (run_id, segment)); """
cr = session.execute(createTable % keyspaces_schema)
time.sleep(20)
print("Table 'ml_clustering_results' created") insert_ml = ( "INSERT INTO " + keyspaces_schema + '.ml_clustering_results' + '("run_id","segment","total_customers","run_date") ' + 'VALUES (?,?,?,?); '
) prepared = session.prepare(insert_ml)
prepared.consistency_level = ConsistencyLevel.LOCAL_QUORUM run_id = "101"
dt = datetime.now() for ind in dataFrame.index: print(ind, dataFrame['customer_id'][ind]) r = session.execute( prepared, ( run_id, ind, dataFrame['customer_id'][ind], dt, ), )

অবশেষে, আমরা সম্পদ পরিষ্কার করুন অতিরিক্ত চার্জ এড়াতে এই টিউটোরিয়াল চলাকালীন তৈরি করা হয়েছে।

# Delete blog keyspace and tables
deleteKeyspace = "DROP KEYSPACE IF EXISTS blog"
dr = session.execute(deleteKeyspace) time.sleep(5)
print("Dropping %s keyspace. It may take a few seconds to a minute to complete deletion keyspace and table." % keyspaces_schema )

কীস্পেস এবং টেবিল মুছে ফেলা সম্পূর্ণ করতে কয়েক সেকেন্ড থেকে এক মিনিট সময় লাগতে পারে। আপনি যখন একটি কীস্পেস মুছে দেন, কীস্পেস এবং এর সমস্ত টেবিল মুছে ফেলা হয় এবং আপনি তাদের থেকে চার্জ সংগ্রহ করা বন্ধ করেন।

উপসংহার

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


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

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

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

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

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

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

ক্রমাগত সিস্টেমগুলি Amazon CodeWhisperer এর সাথে সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ের ভবিষ্যতকে আকার দেয় আমাজন ওয়েব সার্ভিসেস

উত্স নোড: 1879500
সময় স্ট্যাম্প: আগস্ট 23, 2023