AWS Glue انٹرایکٹو سیشنز اور Amazon SageMaker Studio PlatoBlockchain Data Intelligence کا استعمال کرتے ہوئے حساس ڈیٹا کے تحفظ کے ساتھ بڑے پیمانے پر فیچر انجینئرنگ۔ عمودی تلاش۔ عی

AWS Glue انٹرایکٹو سیشنز اور Amazon SageMaker Studio کا استعمال کرتے ہوئے حساس ڈیٹا کے تحفظ کے ساتھ بڑے پیمانے پر فیچر انجینئرنگ

تنظیمیں کسٹمر کے تجربے کو بڑھانے، آپریشنل لاگت کو کم کرنے اور کاروباری نتائج کو بہتر بنانے کے لیے نئے امکانات کو کھولنے کے لیے مشین لرننگ (ML) اور AI سروسز کا استعمال کر رہی ہیں۔ ڈیٹا ML اور AI کے استعمال کے معاملات کو زیر کرتا ہے اور کسی تنظیم کے لیے ایک اسٹریٹجک اثاثہ ہے۔ چونکہ ڈیٹا تیزی سے بڑھ رہا ہے، تنظیمیں ڈیٹا کو پری پروسیس کرنے، فیچر انجینئرنگ کرنے، اور پیمانے پر ایم ایل ماڈلز کی تعمیر، تربیت اور آپریشنلائز کرنے کے لیے ایک مربوط، لاگت سے موثر، اور پرفارمنٹ ڈیٹا پلیٹ فارم قائم کرنے کی کوشش کر رہی ہیں۔ اس کو حاصل کرنے کے لیے، AWS ایک متحد جدید ڈیٹا پلیٹ فارم پیش کرتا ہے جس کی طاقت ہے۔ ایمیزون سادہ اسٹوریج سروس (Amazon S3) اینالیٹکس اور ML ورک بوجھ کو سپورٹ کرنے کے لیے مقصد سے بنائے گئے ٹولز اور پروسیسنگ انجنوں کے ساتھ ڈیٹا لیک کے طور پر۔ متحد ایم ایل کے تجربے کے لیے، آپ استعمال کر سکتے ہیں۔ ایمیزون سیج میکر اسٹوڈیوجو پیش کرتا ہے AWS Glue انٹرایکٹو سیشن کے ساتھ مقامی انضمام حساس ڈیٹا تحفظ کے ساتھ پیمانے پر فیچر انجینئرنگ انجام دینے کے لیے۔ اس پوسٹ میں، ہم اس حل کو لاگو کرنے کا طریقہ دکھاتے ہیں۔

ایمیزون سیج میکر ایک مکمل طور پر منظم ML سروس ہے جو آپ کو وسیع پیمانے پر استعمال کے کیسز کے لیے ماڈلز بنانے، تربیت دینے اور ان کی تعیناتی کے قابل بناتی ہے۔ ماڈل ٹریننگ کے لیے، آپ ان میں سے کوئی بھی استعمال کر سکتے ہیں۔ بلٹ ان الگورتھم سیج میکر کے اندر ایم ایل ماڈلز کو تیزی سے تربیت اور تعینات کرنا شروع کرنے کے لیے۔

ماڈل کی تعمیر اور ترقی کے عمل کا ایک اہم جزو فیچر انجینئرنگ ہے۔ AWS گلو پیمانے پر فیچر انجینئرنگ حاصل کرنے کے لیے تجویز کردہ اختیارات میں سے ایک ہے۔ AWS Glue آپ کو بغیر سرور کے Apache Spark انفراسٹرکچر پر تقسیم شدہ انداز میں ڈیٹا انٹیگریشن اور ٹرانسفارمیشن چلانے کے قابل بناتا ہے، اور فیچر انجینئرنگ اور ماڈل ڈیولپمنٹ کے لیے مشہور Spark ML لائبریری کو استعمال کرنا آسان بناتا ہے۔ اس کے علاوہ، آپ AWS Glue کو انکریمنٹل ڈیٹا پروسیسنگ کے ذریعے استعمال کر سکتے ہیں۔ نوکری کے بک مارکسکا استعمال کرتے ہوئے 100 سے زیادہ ذرائع سے ڈیٹا ہضم کریں۔ کنیکٹر، اور استعمال کرتے ہوئے تیز یا غیر متوقع کام کے بوجھ کو چلائیں۔ آٹو اسکیلنگ.

ایم ایل پر مبنی ایپلی کیشنز کے لیے ایک اور اہم ضرورت ڈیٹا سیکیورٹی اور رسائی کنٹرول ہے۔ کم از کم استحقاق تک رسائی کے اصول پر عمل کرتے ہوئے فیچر انجینئرنگ اور ماڈل بنانے کے عمل کے حصے کے طور پر انتہائی حساس ڈیٹا تک کون رسائی حاصل کر سکتا ہے اس پر سخت کنٹرول رکھنے کا عام مطالبہ ہے۔ اس کو حاصل کرنے کے لیے، آپ AWS گلو انضمام کے ساتھ استعمال کر سکتے ہیں۔ AWS جھیل کی تشکیل ڈیٹا لیک اثاثوں کی گورننس اور انتظام میں اضافہ کے لیے۔ Lake Formation کے ساتھ، آپ اپنے Amazon S3 ڈیٹا لیک کے اوپری حصے میں عمدہ ڈیٹا تک رسائی کے کنٹرول اور سیکیورٹی پالیسیوں کو ترتیب دے سکتے ہیں۔ پالیسیوں کی وضاحت ایک مرکزی مقام پر کی گئی ہے، جس سے متعدد تجزیات اور ML خدمات، جیسے AWS Glue، ایمیزون ایتینا، اور SageMaker، Amazon S3 میں ذخیرہ شدہ ڈیٹا کے ساتھ تعامل کرنے کے لیے۔

AWS گلو میں شامل ہے۔ ذاتی طور پر قابل شناخت معلومات (PII) کا پتہ لگانا ٹرانسفارم جو کہ ضرورت کے مطابق اداروں کا پتہ لگانے، نقاب پوش کرنے یا ہٹانے کی صلاحیت فراہم کرتا ہے، تاکہ تعمیل اور حکمرانی میں اضافہ ہو۔ PII ٹرانسفارم کے ساتھ، آپ ڈیٹا سیٹس میں PII ڈیٹا کا پتہ لگا سکتے ہیں اور مختلف صارف گروپوں کے لیے حساس ڈیٹا کو محدود کرنے کے لیے Lake Formation کا استعمال کرتے ہوئے خودکار طور پر فائن گرینڈ ایکسیس کنٹرول کا اطلاق کر سکتے ہیں۔

کیس استعمال کریں۔

ہم پروپینسیٹی ماڈل کے استعمال کے معاملے پر توجہ مرکوز کرتے ہیں جس میں کسٹمر مارکیٹنگ ڈیٹاسیٹ شامل ہوتا ہے اور اس میں دو صارف شخصیات شامل ہوتی ہیں: ایک ڈیٹا انجینئر اور ڈیٹا سائنسدان۔ ڈیٹاسیٹ میں فی گاہک کی معلومات شامل ہیں، بشمول لیڈ سورس، رابطے کے نوٹس، جاب رول، کچھ جھنڈے، فی وزٹ پیج ویوز، اور مزید۔ ڈیٹا سیٹ میں ذاتی فون نمبر جیسی حساس معلومات بھی شامل ہوتی ہیں۔

ڈیٹا انجینئر اینڈ ٹو اینڈ ڈیٹا پروسیسنگ پائپ لائن بنانے کا ذمہ دار ہے، بشمول ڈیٹا کی تیاری، پری پروسیسنگ، اور رسائی کنٹرول۔ ڈیٹا سائنسدان فیچر انجینئرنگ، اور ایم ایل ماڈل کی تربیت اور تعیناتی کا ذمہ دار ہے۔ نوٹ کریں کہ ڈیٹا سائنسدان کو فیچر انجینئرنگ یا ML ماڈل کی تربیت کے لیے کسی بھی PII حساس ڈیٹا تک رسائی کی اجازت نہیں ہے۔

اس استعمال کے کیس کے حصے کے طور پر، ڈیٹا انجینئر ڈیٹاسیٹ کو پری پروسیس کرنے کے لیے ایک ڈیٹا پائپ لائن بناتا ہے، کسی بھی PII معلومات کے لیے ڈیٹاسیٹ کو اسکین کرتا ہے، اور ڈیٹا سائنسدان صارف تک PII کالم تک رسائی کو محدود کرتا ہے۔ نتیجے کے طور پر، جب ڈیٹا سائنسدان فیچر انجینئرنگ انجام دینے اور ML ماڈلز بنانے کے لیے ڈیٹاسیٹ کا استعمال کرتا ہے، تو ان کے پاس PII حساس کالم (اس معاملے میں فون نمبرز) تک رسائی نہیں ہوتی ہے۔ فیچر انجینئرنگ کے عمل میں ٹائپ سٹرنگ کے کالموں کو ایسے فارمیٹ میں تبدیل کرنا شامل ہے جو ML ماڈلز کے لیے بہترین ہے۔ ایک اعلی درجے کے استعمال کے معاملے کے طور پر، آپ جھیل کی تشکیل کا استعمال کرتے ہوئے قطار کی سطح اور سیل سطح کی حفاظت کو لاگو کرنے کے لیے اس رسائی پیٹرن کو بڑھا سکتے ہیں۔

حل جائزہ

حل میں درج ذیل اعلیٰ سطحی اقدامات شامل ہیں:

  1. کے ساتھ وسائل مرتب کریں۔ AWS کلاؤڈ فارمیشن.
  2. AWS Glue انٹرایکٹو سیشن پر ڈیٹاسیٹ کو پہلے سے پروسیس کریں، بشمول PII کا پتہ لگانا اور عمدہ رسائی کنٹرول۔
  3. AWS Glue انٹرایکٹو سیشن پر فیچر انجینئرنگ انجام دیں۔
  4. SageMaker بلٹ ان XGBoost الگورتھم کا استعمال کرتے ہوئے ایک ML ماڈل کو تربیت دیں اور تعینات کریں۔
  5. ایم ایل ماڈل کا اندازہ کریں۔

مندرجہ ذیل خاکہ حل کے فن تعمیر کی وضاحت کرتا ہے۔

شرائط

اس ٹیوٹوریل کو مکمل کرنے کے لیے، آپ کو درج ذیل شرائط کا ہونا ضروری ہے:

AWS CloudFormation کے ساتھ وسائل مرتب کریں۔

اس پوسٹ میں فوری سیٹ اپ کے لیے CloudFormation ٹیمپلیٹ شامل ہے۔ آپ اپنی ضروریات کے مطابق اس کا جائزہ لے سکتے ہیں اور اسے اپنی مرضی کے مطابق بنا سکتے ہیں۔ اگر آپ وسائل کو ترتیب دینے کو ترجیح دیتے ہیں۔ AWS مینجمنٹ کنسول اور AWS CloudFormation کے بجائے AWS CLI، اس پوسٹ کے آخر میں ضمیمہ میں دی گئی ہدایات دیکھیں۔

CloudFormation ٹیمپلیٹ درج ذیل وسائل تیار کرتا ہے:

اپنے وسائل بنانے کے لیے، درج ذیل مراحل کو مکمل کریں:

  1. کنسول میں سائن ان کریں۔
  2. میں سے انتخاب کریں اسٹیک لانچ کریں۔:
    بٹن لانچ کریں
  3. میں سے انتخاب کریں اگلے.
  4. کے لئے ڈیٹا انجینئر پی ڈبلیو ڈی اور ڈیٹا سائنٹسٹ پی ڈبلیو ڈی، ڈیٹا انجینئر اور ڈیٹا سائنسدان صارفین کے لیے اپنا پاس ورڈ درج کریں۔
  5. کے لئے گلو ڈیٹا بیس کا نام، داخل کریں demo.
  6. کے لئے گلو ٹیبل کا نام، داخل کریں web_marketing.
  7. کے لئے S3BucketNameForInput، داخل کریں blog-studio-pii-dataset-.
  8. کے لئے S3BucketNameForOutput، داخل کریں blog-studio-output-.
  9. کے لئے SageMakerDomainId، اپنی SageMaker ڈومین ID درج کریں جو آپ نے ضروری مراحل میں تیار کی ہے۔
  10. میں سے انتخاب کریں اگلے.
  11. اگلے صفحے پر، منتخب کریں۔ اگلے.
  12. حتمی صفحہ پر تفصیلات کا جائزہ لیں اور منتخب کریں۔ میں تسلیم کرتا ہوں کہ AWS CloudFormation IAM وسائل پیدا کر سکتا ہے۔.
  13. میں سے انتخاب کریں تخلیق کریں.

اسٹیک بنانے میں 10 منٹ تک لگ سکتے ہیں۔ اسٹیک دو شخصیات کے لیے IAM رولز اور SageMaker صارف پروفائلز بناتا ہے: ڈیٹا انجینئر اور ڈیٹا سائنسدان۔ یہ ایک ڈیٹا بیس ڈیمو اور ٹیبل بھی بناتا ہے۔ web_marketing نمونہ ڈیٹاسیٹ کے ساتھ۔

اسٹیک بنانے کے وقت، ڈیٹا انجینئر شخصیت کو ٹیبل تک مکمل رسائی حاصل ہوتی ہے، لیکن ڈیٹا سائنسدان شخصیت کو ابھی تک ٹیبل تک کوئی رسائی حاصل نہیں ہے۔

ڈیٹا سیٹ کو پہلے سے پروسیس کریں۔

آئیے AWS Glue کے انٹرایکٹو سیشن پر ڈیٹا کی پری پروسیسنگ شروع کریں۔ ڈیٹا انجینئر شخصیت ڈیٹا کی تصدیق کرنا چاہتا ہے تاکہ یہ معلوم ہو سکے کہ آیا وہاں حساس ڈیٹا ہے یا نہیں، اور ڈیٹا سائنسدان شخصیت کو کم سے کم رسائی کی اجازت دینا چاہتا ہے۔ سے نوٹ بک ڈاؤن لوڈ کر سکتے ہیں۔ یہ مقام.

  1. ڈیٹا انجینئر صارف کا استعمال کرتے ہوئے کنسول میں سائن ان کریں۔
  2. سیج میکر کنسول پر، منتخب کریں۔ صارفین.
  3. ڈیٹا انجینئر صارف کو منتخب کریں اور منتخب کریں۔ سٹوڈیو کھولیں۔.
  4. ایک نئی نوٹ بک بنائیں اور منتخب کریں۔ SparkAnalytics 1.0 لیے تصویر اور گلو پی اسپارک لیے دانا.
  5. Boto3 کے نئے ورژن کو انسٹال کرنے کے لیے درج ذیل جادو کے ساتھ ایک انٹرایکٹو سیشن شروع کریں (یہ استعمال کرنے کے لیے ضروری ہے۔ create_data_cells_filter طریقہ):
    %additional_python_modules boto3==1.24.82

  6. سیشن شروع کریں:
    import boto3
    import sys
    from awsglue.transforms import *
    from awsglue.utils import getResolvedOptions
    from pyspark.context import SparkContext
    from awsglue.context import GlueContext
    from awsglue.job import Job
    
    sc = SparkContext.getOrCreate()
    glueContext = GlueContext(sc)
    spark = glueContext.spark_session
    job = Job(glueContext)

  7. نئے بنائے گئے ٹیبل سے AWS Glue DynamicFrame بنائیں، اور انتخاب کی اقسام کو حل کریں۔ کیٹلاگ اسکیما کی بنیاد پر، کیونکہ ہم ڈیٹا کی بنیاد پر خود بخود قیاس شدہ اسکیما کے بجائے کیٹلاگ میں بیان کردہ اسکیما کو استعمال کرنا چاہتے ہیں:
    dyf_marketing = glueContext.create_dynamic_frame.from_catalog(
    database="demo",
    table_name="web_marketing"
    )
    
    dyf_marketing_resolved = dyf_marketing.resolveChoice(
    choice="match_catalog",
    database="demo",
    table_name="web_marketing"
    )
    
    dyf_marketing_resolved.printSchema()

  8. ٹیبل میں تصدیق کریں کہ آیا AWS Glue PII کا پتہ لگانے کا استعمال کرتے ہوئے کوئی PII ڈیٹا موجود ہے:
    from awsglueml.transforms import EntityDetector
    
    entities_filter = [
    "EMAIL",
    "CREDIT_CARD",
    "IP_ADDRESS",
    "MAC_ADDRESS",
    "PHONE_NUMBER"
    ]
    entity_detector = EntityDetector()
    classified_map = entity_detector.classify_columns(dyf_marketing_resolved, entities_filter, 1.0, 0.1)
    print(classified_map)

  9. تصدیق کریں کہ آیا PII کے طور پر درجہ بند کالموں میں حساس ڈیٹا ہے یا نہیں (اگر نہیں، تو غیر حساس کالموں کو چھوڑنے کے لیے classified_map کو اپ ڈیٹ کریں):
    from pyspark.sql.functions import col
    dyf_marketing_resolved.toDF().select(*[col(c) for c in classified_map.keys()]).show()

  10. خودکار طور پر پائے جانے والے کالمز کے لیے ڈیٹا سیل فلٹر کا استعمال کرتے ہوئے لیک فارمیشن کی اجازتیں مرتب کریں، اور کالموں کو ڈیٹا سائنسدان شخصیت تک محدود رکھیں:
    lakeformation = boto3.client('lakeformation')
    sts = boto3.client('sts')
    
    account_id = sts.get_caller_identity().get('Account')
    
    # Create a data cell filter for excluding phone_number column
    lakeformation.create_data_cells_filter(
    TableData={
    'TableCatalogId': account_id,
    'DatabaseName': 'demo',
    'TableName': 'web_marketing',
    'Name': 'pii',
    'RowFilter': {
    'AllRowsWildcard': {}
    
    },
    'ColumnWildcard': {
    'ExcludedColumnNames': list(classified_map.keys())
    }
    }
    )
    
    # Grant permission on the data cell filter
    lakeformation.grant_permissions(
    Principal={
    'DataLakePrincipalIdentifier': f'arn:aws:iam::{account_id}:role/SageMakerStudioExecutionRole_data-scientist'
    },
    Resource={
    'DataCellsFilter': {
    'TableCatalogId': account_id,
    'DatabaseName': 'demo',
    'TableName': 'web_marketing',
    'Name': 'pii'
    }
    },
    Permissions=[
    'SELECT'
    ]
    )

  11. یہ دیکھنے کے لیے کہ PII کالم دکھائی نہیں دے رہے ہیں، ڈیٹا سائنسدان کے بطور اسٹوڈیو میں لاگ ان کریں۔ سے نوٹ بک ڈاؤن لوڈ کر سکتے ہیں۔ یہ مقام.
  12. ایک نئی نوٹ بک بنائیں اور منتخب کریں۔ SparkAnalytics 1.0 لیے تصویر اور گلو پی اسپارک لیے دانا:
    import boto3
    import sys
    from awsglue.transforms import *
    from awsglue.utils import getResolvedOptions
    from pyspark.context import SparkContext
    from awsglue.context import GlueContext
    from awsglue.job import Job
    
    sc = SparkContext.getOrCreate()
    glueContext = GlueContext(sc)
    spark = glueContext.spark_session
    job = Job(glueContext)
    
    dyf_marketing = glueContext.create_dynamic_frame.from_catalog(
    database="demo",
    table_name="web_marketing"
    )
    
    dyf_marketing.printSchema()

فیچر انجینئرنگ انجام دیں۔

ہم ڈیٹا سائنسدان صارف کے طور پر فیچر انجینئرنگ انجام دینے کے لیے Apache Spark ML لائبریری کا استعمال کرتے ہیں اور پھر آؤٹ پٹ کو Amazon S3 پر لکھتے ہیں۔

  1. درج ذیل سیل میں، ہم سے خصوصیات کا اطلاق کرتے ہیں۔ اپاچی اسپارک ایم ایل لائبریری:
    • StringIndexer لیبل کے ایک سٹرنگ کالم کو لیبل انڈیکس کے کالم سے نقشہ بناتا ہے۔
    • OneHotEncoder ایک زمرہ کی خصوصیت کا نقشہ بناتا ہے، جس کی نمائندگی لیبل انڈیکس کے طور پر کی جاتی ہے، زیادہ سے زیادہ ایک واحد قدر کے ساتھ ایک بائنری ویکٹر پر جو ایک مخصوص زمرہ کی خصوصیت کی موجودگی کی نشاندہی کرتی ہے۔ یہ تبدیلی ML الگورتھم کے لیے استعمال ہوتی ہے جو مسلسل خصوصیات کی توقع کرتے ہیں۔
    • VectorAssembler ایک ٹرانسفارمر ہے جو کالموں کی دی گئی فہرست کو ایک واحد ویکٹر کالم میں جوڑتا ہے، جو پھر الگورتھم جیسے لاجسٹک ریگریشن اور فیصلے کے درختوں کے لیے ML ماڈلز کی تربیت میں استعمال ہوتا ہے۔
    #feature engineering by using string indexer and one hot encoding from spark ML library
    from pyspark.ml.feature import StringIndexer, VectorIndexer, OneHotEncoder, VectorAssembler
    from pyspark.ml import Pipeline
    
    cols = ['lastcampaignactivity','region','viewedadvertisement','usedpromo','jobrole']
    
    int_cols = ['pageviewspervisit','totaltimeonwebsite','totalwebvisits',]
    
    indexers = [
    StringIndexer(inputCol=c, outputCol="{0}_indexed".format(c))
    for c in cols
    ]
    
    encoders = [
    OneHotEncoder(
    inputCol=indexer.getOutputCol(),
    outputCol="{0}_encoded".format(indexer.getOutputCol()))
    for indexer in indexers
    ]
    
    assembler = VectorAssembler(
    inputCols=[encoder.getOutputCol() for encoder in encoders]+int_cols,
    outputCol="features"
    )

  2. حتمی تبدیل شدہ ڈیٹا فریم پائپ لائن لائبریری کا استعمال کرتے ہوئے بنایا جا سکتا ہے۔ ایک پائپ لائن کو مراحل کی ترتیب کے طور پر بیان کیا گیا ہے۔ یہ مراحل ترتیب سے چلائے جاتے ہیں اور ان پٹ ڈیٹا فریم ہر مرحلے سے گزرتے ہی تبدیل ہو جاتا ہے۔
    df_marketing = dyf_marketing.toDF()
    pipeline = Pipeline(stages=indexers + encoders + [assembler])
    df_tfm=pipeline.fit(df_marketing).transform(df_marketing)
    

  3. اس کے بعد، ہم ڈیٹا سیٹ کو ٹرین میں تقسیم کرتے ہیں، ڈیٹا فریم کی توثیق کرتے ہیں اور ٹیسٹ کرتے ہیں اور ML ماڈل کو تربیت دینے کے لیے اسے S3 بالٹی میں محفوظ کرتے ہیں (مندرجہ ذیل کوڈ میں اپنا AWS اکاؤنٹ ID فراہم کریں):
    from pyspark.ml.functions import vector_to_array
    
    #set s3 output location for feature engineering output
    bucket='blog-studio-output-'
    
    #convert sparse to dense vector
    df_tfm=df_tfm.select('converted',vector_to_array("features").alias("features_array"))
    
    #split features array into individual columns
    df_tfm=df_tfm.select([df_tfm.converted] + [df_tfm.features_array[i] for i in range(17)])
    
    #split the overall dataset into 70-20-10 training , validation and test
    (train_df, validation_df, test_df) = df_tfm.randomSplit([0.7,0.2,0.1])
    
    #write back train, validation and test datasets to S3
    train_df.write
    .option("header","false")
    .csv('s3://{}/web-marketing/processed/training/'.format(bucket))
    
    validation_df.write
    .option("header","false")
    .csv('s3://{}/web-marketing/processed/validation/'.format(bucket))
    
    test_df.write
    .option("header","false")
    .csv('s3://{}/web-marketing/processed/test/'.format(bucket))

ایم ایل ماڈل کو ٹرین اور تعینات کریں۔

پچھلے حصے میں، ہم نے فیچر انجینئرنگ مکمل کی، جس میں کنورٹنگ سٹرنگ کالم شامل تھے۔ region, jobrole، اور usedpromo ایک فارمیٹ میں جو ایم ایل ماڈلز کے لیے بہترین ہے۔ ہم نے کالم بھی شامل کیے جیسے pageviewspervisit اور totalwebvisits، جو ہمیں ایک پروڈکٹ خریدنے کے لیے گاہک کے رجحان کا اندازہ لگانے میں مدد کرے گا۔

اب ہم SageMaker بلٹ ان XGBoost الگورتھم کا استعمال کرتے ہوئے ٹرین اور توثیق ڈیٹاسیٹ کو پڑھ کر ایک ML ماڈل کو تربیت دیتے ہیں۔ پھر ہم ماڈل کو تعینات کرتے ہیں اور درستگی کی جانچ کرتے ہیں۔ سے نوٹ بک ڈاؤن لوڈ کر سکتے ہیں۔ یہ مقام.

درج ذیل سیل میں، ہم دوسری S3 بالٹی سے ڈیٹا پڑھ رہے ہیں، جس میں ہمارے فیچر انجینئرنگ آپریشنز کا آؤٹ پٹ شامل ہے۔ پھر ہم ماڈل کو تربیت دینے کے لیے بلٹ ان الگورتھم XGBoost استعمال کرتے ہیں۔

  1. ایک نئی نوٹ بک کھولیں۔ منتخب کریں۔ ڈیٹا سائنس لیے تصویر اور ازگر 3 لیے دانا (مندرجہ ذیل کوڈ میں اپنا AWS اکاؤنٹ ID فراہم کریں):
    #set s3 bucket location for training data
    import sagemaker
    import boto3
    from sagemaker import get_execution_role
    
    container = sagemaker.image_uris.retrieve(region=boto3.Session().region_name,
    framework='xgboost', version='latest')
    bucket='blog-studio-output-'
    prefix='web-marketing/processed'
    
    #read train and validation input datasets
    s3_input_train = sagemaker.inputs.TrainingInput(s3_data='s3://{}/{}/training/'
    .format(bucket, prefix), content_type='csv')
    s3_input_validation = sagemaker.inputs.TrainingInput(s3_data='s3://{}/{}/validation/'
    .format(bucket, prefix), content_type='csv')
    
    #train xgb model
    sess = sagemaker.Session()
    from sagemaker import get_execution_role
    
    xgb = sagemaker.estimator.Estimator(
    container,
    role=get_execution_role(),
    instance_count=1,
    instance_type='ml.m4.xlarge',
    output_path='s3://{}/{}/output'
    .format(bucket, prefix),
    sagemaker_session=sess
    )
    
    xgb.set_hyperparameters(
    max_depth=5,
    eta=0.2,
    gamma=4,
    min_child_weight=6,
    subsample=0.8,
    silent=0,
    objective='binary:logistic',
    num_round=100
    )
    
    xgb.fit({'train': s3_input_train, 'validation': s3_input_validation})

  2. تربیت مکمل ہونے پر، ہم SageMaker ہوسٹنگ سروسز کا استعمال کرتے ہوئے ماڈل کو تعینات کر سکتے ہیں:
    #deploy ml model
    xgb_predictor = xgb.deploy(initial_instance_count=1,
    instance_type='ml.m4.xlarge')

ایم ایل ماڈل کا اندازہ کریں۔

ہم ٹیسٹ ڈیٹاسیٹ کا استعمال ماڈل کا جائزہ لینے کے لیے کرتے ہیں اور کسی بھی جاری چارجز سے بچنے کے لیے جب ہم مکمل کر لیتے ہیں تو انفرنس اینڈ پوائنٹ کو حذف کر دیتے ہیں۔

  1. مندرجہ ذیل کوڈ کے ساتھ ماڈل کا اندازہ کریں:
    #create csv serialiser to run accuracy on test dataset
    xgb_predictor.serializer = sagemaker.serializers.CSVSerializer()
    
    #read test dataset
    import io
    import pandas as pd
    
    s3 = boto3.resource('s3')
    bucket_obj = s3.Bucket(bucket)
    
    test_line = []
    test_objs = bucket_obj.objects.filter(Prefix="web-marketing/processed/test")
    for obj in test_objs:
    try:
    key = obj.key
    body = obj.get()['Body'].read()
    temp = pd.read_csv(io.BytesIO(body),header=None, encoding='utf8',sep=',')
    test_line.append(temp)
    except:
    continue
    
    test_df = pd.concat(test_line)
    
    #predict results using deployed model
    import numpy as np
    def predict(data, predictor, rows=500 ):
    split_array = np.array_split(data, int(data.shape[0] / float(rows) + 1))
    predictions = ''
    for array in split_array:
    predictions = ','.join([predictions, predictor.predict(array).decode('utf-8')])
    return np.fromstring(predictions[1:], sep=',')
    
    #drop the target variable in test_df and make prediction
    predictions = predict(test_df.drop(test_df.columns[0], axis=1).to_numpy(), xgb_predictor)
    
    #calculate accuracy using sklearn library
    from sklearn.metrics import accuracy_score, confusion_matrix
    y_pred=np.round(predictions)
    y_true=test_df.iloc[:,0].values.tolist()
    print('Accuracy score: ',accuracy_score(y_true, y_pred))
    print('Confusion matrix: n',confusion_matrix(y_true, y_pred))

    نمونہ چلانے کے لیے درستگی کا نتیجہ %84.6 تھا۔ ڈیٹاسیٹ کی بے ترتیب تقسیم کی وجہ سے یہ آپ کی دوڑ کے لیے قدرے مختلف ہو سکتا ہے۔

  2. ہم مندرجہ ذیل کوڈ کے ساتھ انفرنس اینڈ پوائنٹ کو حذف کر سکتے ہیں:
    xgb_predictor.delete_endpoint(delete_endpoint_config=True)

صاف کرو

اب آخری مرحلے پر، وسائل کو صاف کرنا۔

  1. CloudFormation اسٹیک کے ذریعے بنائی گئی دو بالٹیاں خالی کریں۔
  2. صارف سے وابستہ ایپس کو حذف کریں۔ profiles data-scientist اور data-engineer سٹوڈیو کے اندر
  3. CloudFormation اسٹیک کو حذف کریں۔

نتیجہ

اس پوسٹ میں، ہم نے ایک ایسے حل کا مظاہرہ کیا جو ڈیٹا انجینئرز اور ڈیٹا سائنسدانوں جیسے لوگوں کو فیچر انجینئرنگ کو پیمانے پر انجام دینے کے قابل بناتا ہے۔ AWS Glue انٹرایکٹو سیشنز کے ساتھ، آپ کسی بھی بنیادی ڈھانچے کو منظم کرنے کی ضرورت کے بغیر خودکار PII کا پتہ لگانے اور عمدہ رسائی کنٹرول کے ساتھ پیمانے پر فیچر انجینئرنگ آسانی سے حاصل کر سکتے ہیں۔ اسٹوڈیو کو سنگل انٹری پوائنٹ کے طور پر استعمال کر کے، آپ اینڈ ٹو اینڈ ایم ایل ورک فلو بنانے کے لیے ایک آسان اور مربوط تجربہ حاصل کر سکتے ہیں: ڈیٹا کی تیاری اور حفاظت سے لے کر ایم ایل ماڈلز کی تعمیر، تربیت، ٹیوننگ اور تعیناتی تک۔ مزید جاننے کے لیے، ملاحظہ کریں۔ AWS Glue انٹرایکٹو سیشن کے ساتھ شروع کرنا اور ایمیزون سیج میکر اسٹوڈیو.

ہم اس نئی صلاحیت کے بارے میں بہت پرجوش ہیں اور یہ دیکھنے کے خواہاں ہیں کہ آپ اس کے ساتھ کیا بنانے جا رہے ہیں!


ضمیمہ: کنسول اور AWS CLI کے ذریعے وسائل مرتب کریں۔

CloudFormation ٹیمپلیٹ کے بجائے کنسول اور AWS CLI کا استعمال کرتے ہوئے وسائل ترتیب دینے کے لیے اس سیکشن میں دی گئی ہدایات کو مکمل کریں۔

شرائط

اس ٹیوٹوریل کو مکمل کرنے کے لیے، آپ کو AWS CLI تک رسائی حاصل ہونی چاہیے (دیکھیں۔ AWS CLI کے ساتھ شروع کرنا) یا کمانڈ لائن تک رسائی کا استعمال کریں۔ AWS CloudShell.

IAM گروپ، صارفین، کردار اور پالیسیاں ترتیب دیں۔

اس سیکشن میں، ہم دو IAM صارفین بناتے ہیں: ڈیٹا-انجینئر اور ڈیٹا-سائنٹسٹ، جو IAM گروپ ڈیٹا-پلیٹ فارم-گروپ سے تعلق رکھتے ہیں۔ پھر ہم IAM گروپ میں ایک واحد IAM پالیسی شامل کرتے ہیں۔

  1. IAM کنسول پر، JSON ٹیب پر پالیسی بنائیں نام کی ایک نئی IAM کے زیر انتظام پالیسی بنانے کے لیے DataPlatformGroupPolicy. پالیسی گروپ میں صارفین کو اسٹوڈیو تک رسائی کی اجازت دیتی ہے، لیکن صرف ایک ٹیگ کے ساتھ SageMaker صارف پروفائل کا استعمال کرتے ہوئے جو ان کے IAM صارف نام سے ملتا ہے۔ اجازتیں فراہم کرنے کے لیے درج ذیل JSON پالیسی دستاویز کا استعمال کریں:
    {
       "Version":"2012-10-17",
       "Statement":[
          {
             "Action":[
                "sagemaker:DescribeDomain",
                "sagemaker:ListDomains",
                "sagemaker:ListUserProfiles",
                "sagemaker:ListApps"
             ],
             "Resource":"*",
             "Effect":"Allow",
             "Sid":"AmazonSageMakerStudioReadOnly"
          },
          {
             "Action":"sagemaker:AddTags",
             "Resource":"*",
             "Effect":"Allow",
             "Sid":"AmazonSageMakerAddTags"
          },
          {
             "Condition":{
                "StringEquals":{
                   "sagemaker:ResourceTag/studiouserid":"${aws:username}"
                }
             },
             "Action":[
                "sagemaker:CreatePresignedDomainUrl",
                "sagemaker:DescribeUserProfile"
             ],
             "Resource":"*",
             "Effect":"Allow",
             "Sid":"AmazonSageMakerAllowedUserProfile"
          },
          {
             "Condition":{
                "StringNotEquals":{
                   "sagemaker:ResourceTag/studiouserid":"${aws:username}"
                }
             },
             "Action":[
                "sagemaker:CreatePresignedDomainUrl",
                "sagemaker:DescribeUserProfile"
             ],
             "Resource":"*",
             "Effect":"Deny",
             "Sid":"AmazonSageMakerDeniedUserProfiles"
          }
       ]
    }

  2. ایک IAM گروپ بنائیں کہا جاتا ہے data-platform-group.
  3. ڈیٹا پلیٹ فارم گروپ پالیسی نامی AWS مینیجڈ پالیسی کو تلاش کریں اور گروپ میں منسلک کریں۔
  4. IAM صارفین بنائیں IAM گروپ ڈیٹا پلیٹ فارم گروپ کے تحت ڈیٹا انجینئر اور ڈیٹا سائنسدان کہا جاتا ہے۔
  5. ایک نئی منظم پالیسی بنائیں SageMakerExecutionPolicy کے نام سے (مندرجہ ذیل کوڈ میں اپنا علاقہ اور اکاؤنٹ ID فراہم کریں):
    {
       "Version":"2012-10-17",
       "Statement":[
          {
             "Action":[
                "sagemaker:DescribeDomain",
                "sagemaker:ListDomains",
                "sagemaker:ListUserProfiles",
                "sagemaker:ListApps"
             ],
             "Resource":"*",
             "Effect":"Allow",
             "Sid":"AmazonSageMakerStudioReadOnly"
          },
          {
             "Action":"sagemaker:AddTags",
             "Resource":"*",
             "Effect":"Allow",
             "Sid":"AmazonSageMakerAddTags"
          },
          {
             "Action":[
                "sagemaker:CreateTrainingJob",
                "sagemaker:DescribeTrainingJob",
                "logs:DescribeLogStreams",
                "sagemaker:CreateModel",
                "sagemaker:CreateEndpointConfig",
                "sagemaker:CreateEndpoint",
                "sagemaker:DescribeEndpoint",
                "sagemaker:InvokeEndpoint",
                "sagemaker:DeleteEndpointConfig",
                "sagemaker:DeleteEndpoint"
             ],
             "Resource":"*",
             "Effect":"Allow",
             "Sid":"AmazonSageMakerTrainingAndDeploy"
          },
          {
             "Action":"sagemaker:*App",
             "Resource":"arn:aws:sagemaker:::app/*/${aws:PrincipalTag/userprofilename}/*",
             "Effect":"Allow",
             "Sid":"AmazonSageMakerAllowedApp"
          },
          {
             "Action":"sagemaker:*App",
             "Effect":"Deny",
             "NotResource":"arn:aws:sagemaker:::app/*/${aws:PrincipalTag/userprofilename}/*",
             "Sid":"AmazonSageMakerDeniedApps"
          },
          {
             "Action":[
                "glue:GetTable",
                "glue:GetTables",
                "glue:SearchTables",
                "glue:GetDatabase",
                "glue:GetDatabases",
                "glue:GetPartition",
                "glue:GetPartitions"
             ],
             "Resource":[
                "arn:aws:glue:::table/demo/*",
                "arn:aws:glue:::database/demo",
                "arn:aws:glue:::catalog"
             ],
             "Effect":"Allow",
             "Sid":"GlueCatalogPermissions"
          },
          {
             "Action":[
                "lakeformation:GetDataAccess",
                "lakeformation:StartQueryPlanning",
                "lakeformation:GetQueryState",
                "lakeformation:GetWorkUnits",
                "lakeformation:GetWorkUnitResults"
             ],
             "Resource":"*",
             "Effect":"Allow",
             "Sid":"LakeFormationPermissions"
          },
          {
             "Effect":"Allow",
             "Action":[
                "s3:CreateBucket",
                "s3:GetObject",
                "s3:PutObject",
                "s3:ListBucket",
                "s3:DeleteObject"
             ],
             "Resource":[
                "arn:aws:s3:::blog-studio-output-",
                "arn:aws:s3:::blog-studio-output-/*"
             ]
          },
          {
             "Action":[
                "iam:PassRole",
                "iam:GetRole",
                "sts:GetCallerIdentity"
             ],
             "Resource":"*",
             "Effect":"Allow",
             "Sid":"AmazonSageMakerStudioIAMPassRole"
          },
          {
             "Action":"sts:AssumeRole",
             "Resource":"*",
             "Effect":"Deny",
             "Sid":"DenyAssummingOtherIAMRoles"
          }
       ]
    }

  6. ایک نئی منظم پالیسی بنائیں نام SageMakerAdminPolicy:
    {
       "Version":"2012-10-17",
       "Statement":[
          {
             "Action":[
                "lakeformation:GrantPermissions",
                "lakeformation:RevokePermissions",
                "lakeformation:ListPermissions",
                "lakeformation:BatchGrantPermissions",
                "lakeformation:BatchRevokePermissions",
                "lakeformation:CreateDataCellsFilter",
                "lakeformation:DeleteDataCellsFilter",
                "lakeformation:ListDataCellsFilter",
                "glue:GetUserDefinedFunctions",
                "glue:BatchGetCustomEntityTypes"
             ],
             "Resource":"*",
             "Effect":"Allow",
             "Sid":"GlueLakeFormationPermissions"
          }
       ]
    }

  7. ایک IAM کردار بنائیں ڈیٹا انجینئر (ڈیٹا انجینئر) کے لیے SageMaker کے لیے، جو متعلقہ صارف پروفائل کے ایگزیکیوشن رول کے طور پر استعمال ہوتا ہے۔ پر اجازت کی پالیسی منسلک کریں۔ صفحہ، AmazonSageMakerFullAccess (AWS مینیجڈ پالیسی) بطور ڈیفالٹ منسلک ہے۔ کم از کم استحقاق برقرار رکھنے کے لیے آپ بعد میں اس پالیسی کو ہٹا دیتے ہیں۔
    1. کے لئے کردار کا نامSageMakerStudioExecutionRole_data-engineer کے کردار کو نام دینے کے لیے اس سیکشن کے شروع میں متعارف کرائے گئے نام کنونشن کا استعمال کریں۔
    2. کے لئے ٹیگز، کلیدی صارف پروفائل نام اور ویلیو ڈیٹا انجینئر شامل کریں۔
    3. میں سے انتخاب کریں کردار بنائیں.
    4. باقی پالیسیاں شامل کرنے کے لیے، پر رولز صفحہ، کردار کا نام منتخب کریں جو آپ نے ابھی بنایا ہے۔
    5. کے تحت اجازت، AmazonSageMakerFullAccess پالیسی کو ہٹا دیں۔
    6. پر اجازت کی پالیسی منسلک کریں۔ صفحہ، AWS کے زیر انتظام پالیسی AwsGlueSessionUserRestrictedServiceRole، اور کسٹمر کے زیر انتظام پالیسیاں SageMakerExecutionPolicy اور SageMakerAdminPolicy جو آپ نے بنائی ہیں منتخب کریں۔
    7. میں سے انتخاب کریں پالیسیاں منسلک کریں۔.
    8. میں ترمیم کریں آپ کے کردار کا اعتماد کا رشتہ:
    {
       "Version":"2012-10-17",
       "Statement":[
          {
             "Effect":"Allow",
             "Principal":{
                "Service":[
                   "glue.amazonaws.com",
                   "sagemaker.amazonaws.com"
                ]
             },
             "Action":"sts:AssumeRole"
          }
       ]
    }

  8. ایک IAM کردار بنائیں ڈیٹا سائنسدان (ڈیٹا سائنسدان) کے لیے SageMaker کے لیے، جو متعلقہ صارف پروفائل کے ایگزیکیوشن رول کے طور پر استعمال ہوتا ہے۔
    1. کے لئے کردار کا نامSageMakerStudioExecutionRole_data-scientist کے کردار کا نام دیں۔
    2. کے لئے ٹیگز، کلیدی صارف پروفائل نام اور ویلیو ڈیٹا سائنسدان شامل کریں۔
    3. میں سے انتخاب کریں کردار بنائیں.
    4. باقی پالیسیاں شامل کرنے کے لیے، پر رولز صفحہ، کردار کا نام منتخب کریں جو آپ نے ابھی بنایا ہے۔
    5. کے تحت اجازت، AmazonSageMakerFullAccess پالیسی کو ہٹا دیں۔
    6. پر اجازت کی پالیسی منسلک کریں۔ صفحہ، AWS کے زیر انتظام پالیسی AwsGlueSessionUserRestrictedServiceRole، اور کسٹمر کے زیر انتظام پالیسی SageMakerExecutionPolicy جو آپ نے بنائی ہے منتخب کریں۔
    7. میں سے انتخاب کریں پالیسیاں منسلک کریں۔.
    8. میں ترمیم کریں آپ کے کردار کا اعتماد کا رشتہ:
    {
       "Version":"2012-10-17",
       "Statement":[
          {
             "Effect":"Allow",
             "Principal":{
                "Service":[
                   "glue.amazonaws.com",
                   "sagemaker.amazonaws.com"
                ]
             },
             "Action":"sts:AssumeRole"
          }
       ]
    }

سیج میکر صارف پروفائلز کو ترتیب دیں۔

کے ساتھ اپنے سیج میکر صارف پروفائلز بنانے کے لیے studiouserid ٹیگ، درج ذیل مراحل کو مکمل کریں:

  1. ڈیٹا انجینئر کے لیے اسٹوڈیو صارف پروفائل بنانے کے لیے AWS CLI یا CloudShell کا استعمال کریں (مندرجہ ذیل کوڈ میں اپنا اکاؤنٹ ID اور اسٹوڈیو ڈومین ID فراہم کریں):
    aws sagemaker create-user-profile --domain-id  --user-profile-name data-engineer --tags Key=studiouserid,Value=data-engineer --user-settings ExecutionRole=arn:aws:iam:::role/SageMakerStudioExecutionRole_data-engineer

  2. اکاؤنٹ آئی ڈی اور اسٹوڈیو ڈومین آئی ڈی کو تبدیل کرتے ہوئے ڈیٹا سائنسدان کے لیے صارف پروفائل بنانے کے لیے مرحلہ دہرائیں:
    aws sagemaker create-user-profile --domain-id  --user-profile-name data-scientist --tags Key=studiouserid,Value=data-scientist --user-settings ExecutionRole=arn:aws:iam:::role/SageMakerStudioExecutionRole_data-scientist

S3 بالٹیاں بنائیں اور نمونہ ڈیٹا سیٹ اپ لوڈ کریں۔

اس سیکشن میں، آپ دو S3 بالٹیاں بناتے ہیں۔ پہلی بالٹی میں ویب مارکیٹنگ سے متعلق ایک نمونہ ڈیٹاسیٹ ہے۔ دوسری بالٹی ڈیٹا سائنسدان کے ذریعہ فیچر انجینئرنگ کے کاموں سے آؤٹ پٹ کو ذخیرہ کرنے کے لیے استعمال کیا جاتا ہے، اور اس آؤٹ پٹ ڈیٹاسیٹ کو ایم ایل ماڈل کی تربیت کے لیے استعمال کیا جاتا ہے۔

سب سے پہلے، ان پٹ ڈیٹا کے لیے S3 بالٹی بنائیں:

  1. لوڈ ڈیٹاسیٹ.
  2. ایمیزون S3 کنسول پر، منتخب کریں۔ بالٹیاں۔ نیوی گیشن پین میں.
  3. میں سے انتخاب کریں بالٹی بنائیں.
  4. کے لئے ریجنSageMaker ڈومین کے ساتھ وہ علاقہ منتخب کریں جس میں آپ کے بنائے گئے صارف پروفائلز شامل ہوں۔
  5. کے لئے بالٹی کا نام، داخل کریں blog-studio-pii-dataset-.
  6. میں سے انتخاب کریں بالٹی بنائیں.
  7. اپنی بنائی ہوئی بالٹی کو منتخب کریں اور منتخب کریں۔ اپ لوڈ کریں.
  8. میں فائلوں کا انتخاب کریں سیکشن کا انتخاب کریں، فائلیں شامل کریں اور اپنے ڈاؤن لوڈ کردہ ڈیٹاسیٹ کو اپ لوڈ کریں۔
    اب آپ آؤٹ پٹ ڈیٹا کے لیے بالٹی بناتے ہیں:
  9. پر بالٹیاں۔ صفحہ، منتخب کریں بالٹی بنائیں.
  10. کے لئے ریجنSageMaker ڈومین کے ساتھ وہ علاقہ منتخب کریں جس میں آپ کے بنائے گئے صارف پروفائلز شامل ہوں۔
  11. کے لئے بالٹی کا نام، داخل کریں blog-studio-output-.
  12. میں سے انتخاب کریں بالٹی بنائیں.

AWS Glue ڈیٹا بیس اور ٹیبل بنائیں

اس سیکشن میں، آپ ڈیٹاسیٹ کے لیے AWS Glue ڈیٹا بیس اور ٹیبل بناتے ہیں۔

  1. جھیل فارمیشن کنسول پر، نیچے ڈیٹا کیٹلاگ نیویگیشن پین میں، منتخب کریں۔ ڈیٹا بیس.
  2. میں سے انتخاب کریں ڈیٹا بیس شامل کریں۔.
  3. کے لئے نام، ڈیمو درج کریں۔
  4. میں سے انتخاب کریں ڈیٹا بیس بنائیں.
  5. کے تحت ڈیٹا کیٹلاگمنتخب کریں میزیں.
  6. کے لئے نام، داخل کریں web_marketing.
  7. کے لئے ڈیٹا بیسمنتخب demo.
  8. کے لئے راستہ شامل کریں۔ان پٹ ڈیٹا کے لیے اپنی S3 بالٹی کا راستہ درج کریں۔
  9. کے لئے کی درجہ بندیمنتخب کریں CSV.
  10. کے تحت سکیممنتخب کریں اسکیما اپ لوڈ کریں۔.
  11. ٹیکسٹ باکس میں درج ذیل JSON سرنی درج کریں:
    [
       {
          "Name":"lastcampaignactivity",
          "Type":"string"
       },
       {
          "Name":"pageviewspervisit",
          "Type":"double"
       },
       {
          "Name":"totaltimeonwebsite",
          "Type":"bigint"
       },
       {
          "Name":"totalwebvisits",
          "Type":"bigint"
       },
       {
          "Name":"attendedmarketingevent",
          "Type":"string"
       },
       {
          "Name":"organicsearch",
          "Type":"string"
       },
       {
          "Name":"viewedadvertisement",
          "Type":"string"
       },
       {
          "Name":"leadsource",
          "Type":"string"
       },
       {
          "Name":"jobrole",
          "Type":"string"
       },
       {
          "Name":"contactnotes",
          "Type":"string"
       },
       {
          "Name":"leadprofile",
          "Type":"string"
       },
       {
          "Name":"usedpromo",
          "Type":"string"
       },
       {
          "Name":"donotreachout",
          "Type":"boolean"
       },
       {
          "Name":"city",
          "Type":"string"
       },
       {
          "Name":"converted",
          "Type":"bigint"
       },
       {
          "Name":"region",
          "Type":"string"
       },
       {
          "Name":"phone_number",
          "Type":"string"
       }
    ]

  12. میں سے انتخاب کریں اپ لوڈ کریں.
  13. میں سے انتخاب کریں جمع کرائیں.
  14. کے تحت ٹیبل کی تفصیلاتمنتخب کریں ٹیبل میں ترمیم کریں۔.
  15. کے تحت ٹیبل کی خصوصیاتمنتخب کریں شامل کریں.
  16. کے لئے کلیدی، داخل کریں skip.header.line.count، کے لئے قدر، 1 درج کریں۔
  17. میں سے انتخاب کریں محفوظ کریں.

جھیل کی تشکیل کی اجازتوں کو ترتیب دیں۔

اس سیکشن میں، آپ IAM کے کردار کی اجازت دینے کے لیے Lake Formation کی اجازتیں ترتیب دیتے ہیں۔ SageMakerStudioExecutionRole_data-engineer ایک ڈیٹا بیس بنانے اور S3 لوکیشن کو لیک فارمیشن میں رجسٹر کرنے کے لیے۔

سب سے پہلے، جھیل کی تشکیل کی اجازتوں میں مقام کے تحت میزوں کا نظم کرنے کے لیے ڈیٹا لیک لوکیشن کو رجسٹر کریں:

  1. میں سے انتخاب کریں ڈیٹا جھیل کے مقامات.
  2. میں سے انتخاب کریں رجسٹر مقام.
  3. کے لئے ایمیزون S3 کا راستہ، داخل کریں s3://blog-studio-pii-dataset-/ (وہ بالٹی جس میں ڈیٹاسیٹ ہوتا ہے)۔
  4. میں سے انتخاب کریں رجسٹر مقام.
    اب آپ IAM کے کرداروں کو لیک فارمیشن ڈیٹا بیس اور ٹیبل کی اجازت دیتے ہیں۔ SageMakerStudioExecutionRole_data-engineer اور SageMakerStudioExecutionRole_data-scientist.سب سے پہلے، کے لیے ڈیٹا بیس کی اجازت دیں۔ SageMakerStudioExecutionRole_data-engineer:
  5. کے تحت اجازتمنتخب کریں ڈیٹا لیک کی اجازت.
  6. کے تحت ڈیٹا کی اجازتمنتخب کریں گرانٹ.
  7. کے لئے پرنسپلمنتخب کریں IAM صارفین اور کردار، اور کردار کو منتخب کریں۔ SageMakerStudioExecutionRole_data-engineer.
  8. کے لئے پالیسی ٹیگز یا کیٹلاگ وسائلمنتخب کریں نامزد ڈیٹا کیٹلاگ وسائل.
  9. کے لئے ڈیٹا بیس، ڈیمو کا انتخاب کریں۔
  10. کے لئے ڈیٹا بیس کی اجازت، منتخب سپر.
  11. میں سے انتخاب کریں گرانٹ.
    اگلا، کے لیے ٹیبل کی اجازت دیں۔ SageMakerStudioExecutionRole_data-engineer:
  12. کے تحت ڈیٹا کی اجازتمنتخب کریں گرانٹ.
  13. کے لئے پرنسپلمنتخب کریں IAM صارفین اور کردار، اور کردار کو منتخب کریں۔ SageMakerStudioExecutionRole_data-engineer.
  14. کے لئے پالیسی ٹیگز یا کیٹلاگ وسائلمنتخب کریں نامزد ڈیٹا کیٹلاگ وسائل.
  15. کے لئے ڈیٹا بیسمنتخب کریں demo.
  16. کے لئے میزیںمنتخب کریں web_marketing.
  17. کے لئے ٹیبل اجازتیں، منتخب سپر.
  18. کے لئے گرانٹ ایبل اجازتیں، منتخب سپر.
  19. میں سے انتخاب کریں گرانٹ.
    آخر میں، کے لیے ڈیٹا بیس کی اجازت دیں۔ SageMakerStudioExecutionRole_data-scientist:
  20. کے تحت ڈیٹا کی اجازتمنتخب کریں گرانٹ.
  21. کے لئے پرنسپلمنتخب کریں IAM صارفین اور کردار، اور کردار کو منتخب کریں۔ SageMakerStudioExecutionRole_data-scientist.
  22. کے لئے پالیسی ٹیگز یا کیٹلاگ وسائلمنتخب کریں نامزد ڈیٹا کیٹلاگ وسائل.
  23. کے لئے ڈیٹا بیسمنتخب کریں demo.
  24. کے لئے ڈیٹا بیس کی اجازت، منتخب بیان.
  25. میں سے انتخاب کریں گرانٹ.

مصنفین کے بارے میں

AWS Glue انٹرایکٹو سیشنز اور Amazon SageMaker Studio PlatoBlockchain Data Intelligence کا استعمال کرتے ہوئے حساس ڈیٹا کے تحفظ کے ساتھ بڑے پیمانے پر فیچر انجینئرنگ۔ عمودی تلاش۔ عی

پروین کمار AWS میں ایک تجزیاتی حل آرکیٹیکٹ ہے جس میں کلاؤڈ-مقامی خدمات کا استعمال کرتے ہوئے جدید ڈیٹا اور تجزیاتی پلیٹ فارمز کو ڈیزائن کرنے، بنانے اور ان پر عمل درآمد کرنے میں مہارت حاصل ہے۔ اس کی دلچسپی کے شعبے سرور لیس ٹیکنالوجی، جدید کلاؤڈ ڈیٹا گودام، اسٹریمنگ، اور ایم ایل ایپلی کیشنز ہیں۔

AWS Glue انٹرایکٹو سیشنز اور Amazon SageMaker Studio PlatoBlockchain Data Intelligence کا استعمال کرتے ہوئے حساس ڈیٹا کے تحفظ کے ساتھ بڑے پیمانے پر فیچر انجینئرنگ۔ عمودی تلاش۔ عی

نوریٹاکا سیکیاما AWS Glue ٹیم میں ایک پرنسپل بگ ڈیٹا آرکیٹیکٹ ہے۔ وہ اس پوسٹ کی طرح نتائج فراہم کرنے کے لیے مختلف ٹیموں کے ساتھ تعاون سے لطف اندوز ہوتا ہے۔ اپنے فارغ وقت میں، وہ اپنے خاندان کے ساتھ ویڈیو گیمز کھیلنے سے لطف اندوز ہوتا ہے۔

ٹائم اسٹیمپ:

سے زیادہ AWS مشین لرننگ