{"id":242,"date":"2020-09-17T23:53:09","date_gmt":"2020-09-17T23:53:09","guid":{"rendered":"https:\/\/machine-learning.webcloning.com\/2020\/09\/17\/detecting-and-redacting-pii-using-amazon-comprehend\/"},"modified":"2020-09-17T23:53:09","modified_gmt":"2020-09-17T23:53:09","slug":"detecting-and-redacting-pii-using-amazon-comprehend","status":"publish","type":"post","link":"https:\/\/salarydistribution.com\/machine-learning\/2020\/09\/17\/detecting-and-redacting-pii-using-amazon-comprehend\/","title":{"rendered":"Detecting and redacting PII using Amazon Comprehend"},"content":{"rendered":"<div id=\"\">\n<p><a href=\"https:\/\/aws.amazon.com\/comprehend\/\" target=\"_blank\" rel=\"noopener noreferrer\">Amazon Comprehend<\/a> is a natural language processing (NLP) service that uses machine learning (ML) to find insights and relationships like people, places, sentiments, and topics in unstructured text. You can now use Amazon Comprehend ML capabilities to detect and redact personally identifiable information (PII) in customer emails, support tickets, product reviews, social media, and more. No ML experience required. For example, you can analyze support tickets and knowledge articles to detect PII entities and redact the text before you index the documents in the search solution. After that, search solutions are free of PII entities in documents. Redacting PII entities helps you protect privacy and comply with local laws and regulations.<\/p>\n<h3><strong><u>Customer use case: TeraDact Solutions<\/u><\/strong><\/h3>\n<p>TeraDact Solutions has already put this new feature to work. TeraDact Solutions\u2019 software offers a robust alternative for secure information sharing in a world of ever-increasing compliance and privacy concerns. With its signature Information Identification &amp; Presentation (IIaP\u2122) capabilities, TeraDact\u2019s tools provide the user with a safe information sharing environment. \u201cUsing Amazon Comprehend for PII redaction with our tokenization system not only helps us reach a larger set of our customers but also helps us overcome the shortcomings of rules-based PII detection which can result in false alarms or missed details. PII detection is critical for businesses and with the power of context-aware NLP models from Comprehend we can uphold the trust customers place in us with their information. Amazon is innovating in ways to help push our business forward by adding new features which are critical to our business thereby providing enhanced service to 100% of customers able to access Comprehend in AWS.\u201d said Chris Schrichte, CEO, TeraDact Solutions, Inc.<\/p>\n<p>In this post, I cover how to use Amazon Comprehend to detect PII and redact the PII entities via the <a href=\"http:\/\/aws.amazon.com\/console\" target=\"_blank\" rel=\"noopener noreferrer\">AWS Management Console<\/a> and the <a href=\"http:\/\/aws.amazon.com\/cli\" target=\"_blank\" rel=\"noopener noreferrer\">AWS Command Line Interface<\/a> (AWS CLI).<\/p>\n<h2>Detecting PII in Amazon Comprehend<\/h2>\n<p>When you analyze text using Amazon Comprehend real-time analysis, Amazon Comprehend automatically identifies PII, as summarized in the following table.<\/p>\n<table border=\"1px\" cellpadding=\"5px\">\n<tbody>\n<tr>\n<td width=\"200\"><strong>PII entity category<\/strong><\/td>\n<td width=\"315\"><strong>PII entity types<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\"200\"><strong>Financial<\/strong><\/td>\n<td width=\"315\">\n<p>BANK_ACCOUNT_NUMBER<\/p>\n<p>BANK_ROUTING<\/p>\n<p>CREDIT_DEBIT_NUMBER<\/p>\n<p>CREDIT_DEBIT_CVV<\/p>\n<p>CREDIT_DEBIT_EXPIRY<\/p>\n<p>PIN<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"200\"><strong>Personal<\/strong><\/td>\n<td width=\"315\">\n<p>NAME<\/p>\n<p>ADDRESS<\/p>\n<p>PHONE<\/p>\n<p>EMAIL<\/p>\n<p>AGE<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"200\"><strong>Technical security<\/strong><\/td>\n<td width=\"315\">\n<p>USERNAME<\/p>\n<p>PASSWORD<\/p>\n<p>URL<\/p>\n<p>AWS_ACCESS_KEY<\/p>\n<p>AWS_SECRET_KEY<\/p>\n<p>IP_ADDRESS<\/p>\n<p>MAC_ADDRESS<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"200\"><strong>National<\/strong><\/td>\n<td width=\"315\">\n<p>SSN<\/p>\n<p>PASSPORT_NUMBER<\/p>\n<p>DRIVER_ID<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"200\"><strong>Other<\/strong><\/td>\n<td width=\"315\">DATE_TIME<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>For each detected PII entity, you get the type of PII, a confidence score, and begin and end offset. These offsets help you locate PII entities in your documents for document processing to redact it at the secure storage or downstream solutions.<\/p>\n<h2>Analyzing text on the Amazon Comprehend console<\/h2>\n<p>To get started with Amazon Comprehend, all you need is an <a href=\"https:\/\/aws.amazon.com\/premiumsupport\/knowledge-center\/create-and-activate-aws-account\/\" target=\"_blank\" rel=\"noopener noreferrer\">AWS account<\/a>. To use the console, complete the following steps:<\/p>\n<ol>\n<li>On the Amazon Comprehend console, in the <strong>Input text<\/strong> section, select <strong>Built-in<\/strong>.<\/li>\n<li>For <strong>Input text<\/strong>, enter your text.<\/li>\n<li>Choose <strong>Analyze<\/strong>.<\/li>\n<\/ol>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-16056\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2020\/09\/17\/1-Realtime-analysis.jpg\" alt=\"\" width=\"900\" height=\"648\"><\/p>\n<ol start=\"4\">\n<li>On the <strong>Insights<\/strong> page, choose the <strong>PII<\/strong>\n<\/li>\n<\/ol>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-16057\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2020\/09\/17\/2-Analysis.jpg\" alt=\"\" width=\"900\" height=\"792\"><\/p>\n<p>The <strong>PII<\/strong> tab shows color-coded text to indicate different PII entity types, such as name, email, address, phone, and others. The <strong>Results<\/strong> section shows more information about the text. Each entry shows the PII entity, its type, and the level of confidence Amazon Comprehend has in this analysis.<\/p>\n<h2>Analyzing text via the AWS CLI<\/h2>\n<p>To perform real-time analysis using the AWS CLI, enter the following code:<\/p>\n<div class=\"hide-language\">\n<pre class=\"unlimited-height-code\"><code class=\"lang-bash\">aws comprehend detect-pii-entities \r\n--language-code en \r\n--text \r\n\" Good morning, everybody. My name is Van Bokhorst Serdar, and today I feel like sharing a whole lot of personal information with you. Let's start with my Email address SerdarvanBokhorst@dayrep.com. My address is 2657 Koontz Lane, Los Angeles, CA. My phone number is 818-828-6231. My Social security number is 548-95-6370. My Bank account number is 940517528812 and routing number 195991012. My credit card number is 5534816011668430, Expiration Date 6\/1\/2022, my C V V code is 121, and my pin 123456. Well, I think that's it. You know a whole lot about me. And I hope that Amazon comprehend is doing a good job at identifying PII entities so you can redact my personal information away from this document. Let's check.\"<\/code><\/pre>\n<\/div>\n<p>To view the output, open the JSON response object and look at the detected PII entities. For each entity, the service returns the type of PII, confidence score metric, BeginOffset, and EndOffset. See the following code:<\/p>\n<div class=\"hide-language\">\n<pre class=\"unlimited-height-code\"><code class=\"lang-json\">{\r\n    \"Entities\": [\r\n        {\r\n            \"Score\": 0.9996334314346313,\r\n            \"Type\": \"NAME\",\r\n            \"BeginOffset\": 36,\r\n            \"EndOffset\": 55\r\n        },\r\n        {\r\n            \"Score\": 0.9999902248382568,\r\n            \"Type\": \"EMAIL\",\r\n            \"BeginOffset\": 167,\r\n            \"EndOffset\": 195\r\n        },\r\n        {\r\n            \"Score\": 0.9999983310699463,\r\n            \"Type\": \"ADDRESS\",\r\n            \"BeginOffset\": 211,\r\n            \"EndOffset\": 245\r\n        },\r\n        {\r\n            \"Score\": 0.9999997615814209,\r\n            \"Type\": \"PHONE\",\r\n            \"BeginOffset\": 265,\r\n            \"EndOffset\": 277\r\n        },\r\n        {\r\n            \"Score\": 0.9999996423721313,\r\n            \"Type\": \"SSN\",\r\n            \"BeginOffset\": 308,\r\n            \"EndOffset\": 319\r\n        },\r\n        {\r\n            \"Score\": 0.9999984502792358,\r\n            \"Type\": \"BANK_ACCOUNT_NUMBER\",\r\n            \"BeginOffset\": 347,\r\n            \"EndOffset\": 359\r\n        },\r\n        {\r\n            \"Score\": 0.9999974966049194,\r\n            \"Type\": \"BANK_ROUTING\",\r\n            \"BeginOffset\": 379,\r\n            \"EndOffset\": 388\r\n        },\r\n        {\r\n            \"Score\": 0.9999991655349731,\r\n            \"Type\": \"CREDIT_DEBIT_NUMBER\",\r\n            \"BeginOffset\": 415,\r\n            \"EndOffset\": 431\r\n        },\r\n        {\r\n            \"Score\": 0.9923601746559143,\r\n            \"Type\": \"CREDIT_DEBIT_EXPIRY\",\r\n            \"BeginOffset\": 449,\r\n            \"EndOffset\": 457\r\n        },\r\n        {\r\n            \"Score\": 0.9999997615814209,\r\n            \"Type\": \"CREDIT_DEBIT_CVV\",\r\n            \"BeginOffset\": 476,\r\n            \"EndOffset\": 479\r\n        },\r\n        {\r\n            \"Score\": 0.9998345375061035,\r\n            \"Type\": \"PIN\",\r\n            \"BeginOffset\": 492,\r\n            \"EndOffset\": 498\r\n        }\r\n    ]\r\n}<\/code><\/pre>\n<\/div>\n<h2>Asynchronous PII redaction batch processing on the Amazon Comprehend console<\/h2>\n<p>You can redact documents by using Amazon Comprehend asynchronous operations. You can choose redaction mode <strong>Replace with PII entity<\/strong> to replace PII entities with PII entity type, or choose to mask PII entity with redaction mode <strong>Replace with character <\/strong>and replace the characters in PII entities with a character of your choice (!, #, $, %, &amp;, *, or @).<\/p>\n<p>To analyze and redact large documents and large collections of documents, ensure that the documents are stored in an <a href=\"http:\/\/aws.amazon.com\/s3\" target=\"_blank\" rel=\"noopener noreferrer\">Amazon Simple Storage Service<\/a> (Amazon S3) bucket and start an asynchronous operation to detect and redact PII in the documents. The results of the analysis are returned in an S3 bucket.<\/p>\n<ol>\n<li>On the Amazon Comprehend console, choose <strong>Analysis jobs<\/strong>.<\/li>\n<li>Choose <strong>Create job<\/strong>.<\/li>\n<\/ol>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-16058\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2020\/09\/17\/3-Analysis-jobs.jpg\" alt=\"\" width=\"900\" height=\"251\"><\/p>\n<ol start=\"3\">\n<li>On the <strong>Create analysis job<\/strong> page, for <strong>Name<\/strong>, enter a name (for this post, we enter comprehend-blog-redact-01).<\/li>\n<li>For <strong>Analysis type<\/strong>, choose <strong>Personally identifiable information (PII)<\/strong>.<\/li>\n<li>For <strong>Language<\/strong>, choose <strong>English<\/strong>.<\/li>\n<\/ol>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-16059\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2020\/09\/17\/4-Create-analysis-job.jpg\" alt=\"\" width=\"900\" height=\"516\"><\/p>\n<ol start=\"6\">\n<li>In the <strong>PII detection settings<\/strong> section, for <strong>Output mode<\/strong>, select <strong>Redactions<\/strong>.<\/li>\n<li>Expand <strong>PII entity types<\/strong> and select the entity types to redact.<\/li>\n<li>For <strong>Redaction mode<\/strong>, choose <strong>Replace with PII entity type<\/strong>.<\/li>\n<\/ol>\n<p>Alternatively, you can choose <strong>Replace with character<\/strong> to replace PII entities with a character of your choice (!, #, $, %, &amp;, *, or @).<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-16060\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2020\/09\/17\/5-PII-detection.jpg\" alt=\"\" width=\"900\" height=\"916\"><\/p>\n<ol start=\"9\">\n<li>In the <strong>Input data<\/strong> section, for <strong>Data source<\/strong>, select <strong>My documents<\/strong>.<\/li>\n<li>For <strong>S3 location<\/strong>, enter the S3 path for pii-s3-input.txt.<\/li>\n<\/ol>\n<p>This text file has the same example content we used earlier for real-time analysis.<\/p>\n<ol start=\"11\">\n<li>In the <strong>Output data<\/strong> section, for <strong>S3 location<\/strong>, enter the path to the output folder in Amazon S3.<\/li>\n<\/ol>\n<p>Make sure you choose the correct input and output paths based on how you organized the document.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-16061\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2020\/09\/17\/6-Input-data.jpg\" alt=\"\" width=\"900\" height=\"672\"><\/p>\n<ol start=\"12\">\n<li>In the <strong>Access permissions<\/strong> section, for <strong>IAM<\/strong> role, select <strong>Create an IAM role<\/strong>.<\/li>\n<\/ol>\n<p>You need an <a href=\"http:\/\/aws.amazon.com\/iam\" target=\"_blank\" rel=\"noopener noreferrer\">AWS Identity and Access Management<\/a> (IAM) role with required permissions to access the input and output S3 buckets for the job that is created and propagated.<\/p>\n<ol start=\"13\">\n<li>For <strong>Permissions to access<\/strong>, choose <strong>Input and Output S3 buckets<\/strong>.<\/li>\n<li>For <strong>Name suffix<\/strong>, enter a suffix for your role (for this post, we enter ComprehendPIIRole).<\/li>\n<li>Choose <strong>Create job<\/strong>.<\/li>\n<\/ol>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-16062\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2020\/09\/17\/7-Access-permissions.jpg\" alt=\"\" width=\"900\" height=\"464\"><\/p>\n<p>You can see the job <code>comprehend-blog-redact-01<\/code> with the job status <code>In progress<\/code>.<\/p>\n<p>When the job status changes to <code>Completed<\/code>, you can access the output file to view the output. The <code>pii-s3-input.txt<\/code> file has the same example content we used earlier, and using redaction mode replaces PII with its PII entity type. Your output looks like the following text:<\/p>\n<div class=\"hide-language\">\n<p><code>Good morning, everybody. My name is [NAME], and today I feel like sharing a whole lot of personal information with you. Let's start with my Email address [EMAIL]. My address is [ADDRESS] My phone number is [PHONE]. My Social security number is [SSN]. My Bank account number is [BANK-ACCOUNT-NUMBER] and routing number [BANK-ROUTING]. My credit card number is [CREDIT-DEBIT-NUMBER], Expiration Date [CREDIT-DEBIT-EXPIRY], my C V V code is [CREDIT-DEBIT-CVV], and my pin [PIN]. Well, I think that's it. You know a whole lot about me. And I hope that Amazon comprehend is doing a good job at identifying PII entities so you can redact my personal information away from this document. Let's check.<\/code><\/p>\n<\/div>\n<p>If you have very long entity types, you may prefer to mask PII with a character. If you choose to replace PII with the character *, your output looks like the following text. :<\/p>\n<div class=\"hide-language\">\n<p><code>Good morning, everybody. My name is *******************, and today I feel like sharing a whole lot of personal information with you. Let's start with my Email address ****************************. My address is ********************************** My phone number is ************. My Social security number is ***********. My Bank account number is ************ and routing number *********. My credit card number is ****************, Expiration Date ********, my C V V code is ***, and my pin ******. Well, I think that's it. You know a whole lot about me. And I hope that Amazon comprehend is doing a good job at identifying PII entities so you can redact my personal information away from this document. Let's check.<\/code><\/p>\n<\/div>\n<h2>Asynchronous PII redaction batch processing via the AWS CLI<\/h2>\n<p>To perform the PII redaction job using the AWS CLI, enter the following code:<\/p>\n<div class=\"hide-language\">\n<pre class=\"unlimited-height-code\"><code class=\"lang-bash\">aws comprehend start-pii-entities-detection-job \r\n --input-data-config S3Uri=\"s3:\/\/ai-ml-services-lab\/public\/labs\/comprehend\/pii\/input\/redact\/pii-s3-input.txt\"  \r\n --output-data-config S3Uri=\"s3:\/\/ai-ml-services-lab\/public\/labs\/comprehend\/pii\/output\/redact\/\"  \r\n --mode \"ONLY_REDACTION\" \r\n --redaction-config PiiEntityTypes=\"BANK_ACCOUNT_NUMBER\",\"BANK_ROUTING\",\"CREDIT_DEBIT_NUMBER\",\"CREDIT_DEBIT_CVV\",\"CREDIT_DEBIT_EXPIRY\",\"PIN\",\"EMAIL\",\"ADDRESS\",\"NAME\",\"PHONE\",\"SSN\",MaskMode=\"REPLACE_WITH_PII_ENTITY_TYPE\" \r\n --data-access-role-arn \"arn:aws:iam::&lt;ACCOUNTID&gt;:role\/service-role\/AmazonComprehendServiceRole-ComprehendPIIRole\" \r\n --job-name \"comprehend-blog-redact-001\" \r\n --language-code \"en\"\r\n<\/code><\/pre>\n<\/div>\n<p>The request yields the following output:<\/p>\n<div class=\"hide-language\">\n<pre class=\"unlimited-height-code\"><code class=\"lang-json\">{\r\n    \"JobId\": \"e41101e2f0919a320bc0583a50f86b5f\",\r\n    \"JobStatus\": \"SUBMITTED\"\r\n}\r\n<\/code><\/pre>\n<\/div>\n<p>To monitor the job request, enter the following code:<\/p>\n<div class=\"hide-language\">\n<pre class=\"unlimited-height-code\"><code class=\"lang-bash\">aws comprehend describe-pii-entities-detection-job --job-id \" e41101e2f0919a320bc0583a50f86b5f \"<\/code><\/pre>\n<\/div>\n<p>The following output shows that the job is complete:<\/p>\n<div class=\"hide-language\">\n<pre class=\"unlimited-height-code\"><code class=\"lang-python\">{\r\n    \"PiiEntitiesDetectionJobProperties\": {\r\n        \"JobId\": \"e41101e2f0919a320bc0583a50f86b5f\",\r\n        \"JobName\": \"comprehend-blog-redact-001\",\r\n        \"JobStatus\": \"COMPLETED\",\r\n        \"SubmitTime\": &lt;SubmitTime&gt;,\r\n        \"EndTime\": &lt;EndTime&gt;,\r\n        \"InputDataConfig\": {\r\n            \"S3Uri\": \"s3:\/\/ai-ml-services-lab\/public\/labs\/comprehend\/pii\/input\/redact\/pii-s3-input.txt\",\r\n            \"InputFormat\": \"ONE_DOC_PER_LINE\"\r\n        },\r\n        \"OutputDataConfig\": {\r\n            \"S3Uri\": \"s3:\/\/ai-ml-services-lab\/public\/labs\/comprehend\/pii\/output\/redact\/&lt;AccountID&gt;-PII-e41101e2f0919a320bc0583a50f86b5f\/output\/\"\r\n        },\r\n        \"RedactionConfig\": {\r\n            \"PiiEntityTypes\": [\r\n                \"BANK_ACCOUNT_NUMBER\",\r\n                \"BANK_ROUTING\",\r\n                \"CREDIT_DEBIT_NUMBER\",\r\n                \"CREDIT_DEBIT_CVV\",\r\n                \"CREDIT_DEBIT_EXPIRY\",\r\n                \"PIN\",\r\n                \"EMAIL\",\r\n                \"ADDRESS\",\r\n                \"NAME\",\r\n                \"PHONE\",\r\n                \"SSN\"\r\n            ],\r\n            \"MaskMode\": \"REPLACE_WITH_PII_ENTITY_TYPE\"\r\n        },\r\n        \"LanguageCode\": \"en\",\r\n        \"DataAccessRoleArn\": \"arn:aws:iam::&lt;AccountID&gt;:role\/ComprehendBucketAccessRole\",\r\n        \"Mode\": \"ONLY_REDACTION\"\r\n    }\r\n}\r\n<\/code><\/pre>\n<\/div>\n<p>After the job is complete, the output file is plain text (same as the input file). Other Amazon Comprehend asynchronous jobs (<code>start-entities-detection-job<\/code>) have an output file called <code>output.tar.gz<\/code>, which is a compressed archive that contains the output of the operation. <code>Start-pii-entities-detection-job<\/code> retains the folder and file structure as input. Our <code>comprehend-blog-redact-001<\/code> job input file <code>pii-s3-input.txt<\/code> has the respective <code>pii-s3-input.txt.out<\/code> file with the redacted text in the jobs output folder. You can find the Amazon S3 location in the output from monitoring the job; the JSON element <code>PiiEntitiesDetectionJobProperties.OutputDataConfig.S3uri<\/code> has the file <code>pii-s3-input.txt.out<\/code> and the redacted content with PII entity type.<\/p>\n<h2>Conclusion<\/h2>\n<p>As of this writing, the PII detection feature in Amazon Comprehend is available for US English in the following Regions:<\/p>\n<ul>\n<li>US East (Ohio)<\/li>\n<li>US East (N. Virginia)<\/li>\n<li>US West (Oregon),<\/li>\n<li>Asia Pacific (Mumbai)<\/li>\n<li>Asia Pacific (Seoul)<\/li>\n<li>Asia Pacific (Singapore)<\/li>\n<li>Asia Pacific (Sydney)<\/li>\n<li>Asia Pacific (Tokyo)<\/li>\n<li>EU (Frankfurt)<\/li>\n<li>EU (Ireland)<\/li>\n<li>EU (London)<\/li>\n<li>AWS GovCloud (US-West)<\/li>\n<\/ul>\n<p>Take a look at the <a href=\"https:\/\/aws.amazon.com\/comprehend\/pricing\/\" target=\"_blank\" rel=\"noopener noreferrer\">pricing page<\/a>, give the feature a try, and please send us feedback either via the <a href=\"https:\/\/forums.aws.amazon.com\/forum.jspa?forumID=281\" target=\"_blank\" rel=\"noopener noreferrer\">AWS forum<\/a> for Amazon Comprehend or through your usual AWS support contacts.<\/p>\n<hr>\n<h3>About the Author<\/h3>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"size-full wp-image-16063 alignleft\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59\/2020\/09\/17\/Sriharsha-M-S.jpg\" alt=\"\" width=\"103\" height=\"103\"><strong>Sriharsha M S<\/strong> is an AI\/ML specialist solution architect in the Strategic Specialist team at Amazon Web Services. He works with strategic AWS customers who are taking advantage of AI\/ML to solve complex business problems. He provides technical guidance and design advice to implement AI\/ML applications at scale. His expertise spans application architecture, bigdata, analytics and machine learning.<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>https:\/\/aws.amazon.com\/blogs\/machine-learning\/detecting-and-redacting-pii-using-amazon-comprehend\/<\/p>\n","protected":false},"author":0,"featured_media":243,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[],"_links":{"self":[{"href":"https:\/\/salarydistribution.com\/machine-learning\/wp-json\/wp\/v2\/posts\/242"}],"collection":[{"href":"https:\/\/salarydistribution.com\/machine-learning\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/salarydistribution.com\/machine-learning\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/salarydistribution.com\/machine-learning\/wp-json\/wp\/v2\/comments?post=242"}],"version-history":[{"count":0,"href":"https:\/\/salarydistribution.com\/machine-learning\/wp-json\/wp\/v2\/posts\/242\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/salarydistribution.com\/machine-learning\/wp-json\/wp\/v2\/media\/243"}],"wp:attachment":[{"href":"https:\/\/salarydistribution.com\/machine-learning\/wp-json\/wp\/v2\/media?parent=242"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/salarydistribution.com\/machine-learning\/wp-json\/wp\/v2\/categories?post=242"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/salarydistribution.com\/machine-learning\/wp-json\/wp\/v2\/tags?post=242"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}