معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1 PlatoBlockchain Data Intelligence. البحث العمودي. عاي.

معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1

غالبًا ما يتعين على المؤسسات عبر الصناعات مثل الرعاية الصحية والتمويل والإقراض والقانونية وتجارة التجزئة والتصنيع التعامل مع الكثير من المستندات في عمليات الأعمال اليومية الخاصة بهم. تحتوي هذه المستندات على معلومات مهمة تعتبر أساسية لاتخاذ القرارات في الوقت المحدد من أجل الحفاظ على أعلى مستويات رضا العملاء ، وتهيئة أسرع للعملاء ، وتقليل تضاؤل ​​العملاء. في معظم الحالات ، تتم معالجة المستندات يدويًا لاستخراج المعلومات والرؤى ، وهي عملية تستغرق وقتًا طويلاً وعرضة للخطأ ومكلفة ويصعب قياسها. هناك أتمتة محدودة متاحة اليوم لمعالجة واستخراج المعلومات من هذه الوثائق. تساعد المعالجة الذكية للمستندات (IDP) مع خدمات الذكاء الاصطناعي (AI) من AWS على أتمتة استخراج المعلومات من المستندات ذات الأنواع والتنسيقات المختلفة ، بسرعة وبدقة عالية ، دون الحاجة إلى مهارات التعلم الآلي (ML). يساعد استخراج المعلومات بشكل أسرع وبدقة عالية في اتخاذ قرارات تجارية عالية الجودة في الوقت المحدد ، مع تقليل التكاليف الإجمالية.

على الرغم من أن المراحل في سير عمل IDP قد تختلف وتتأثر بحالة الاستخدام ومتطلبات العمل ، يوضح الشكل التالي المراحل التي تكون عادةً جزءًا من سير عمل IDP. تعد معالجة المستندات مثل النماذج الضريبية والمطالبات والملاحظات الطبية ونماذج العملاء الجديدة والفواتير والعقود القانونية وغير ذلك مجرد أمثلة قليلة من حالات الاستخدام الخاصة بـ IDP.

في هذه السلسلة المكونة من جزأين ، نناقش كيف يمكنك أتمتة المستندات ومعالجتها بذكاء على نطاق واسع باستخدام خدمات AWS AI. في هذا المنشور ، نناقش المراحل الثلاث الأولى من سير عمل IDP. في جزء 2، نناقش مراحل سير العمل المتبقية.

حل نظرة عامة

يوضح الرسم التخطيطي للهندسة المعمارية التالي مراحل سير عمل IDP. يبدأ بمرحلة التقاط البيانات لتخزين وتجميع تنسيقات الملفات المختلفة بأمان (PDF ، JPEG ، PNG ، TIFF) وتخطيطات المستندات. المرحلة التالية هي التصنيف ، حيث تقوم بتصنيف المستندات الخاصة بك (مثل العقود أو نماذج المطالبات أو الفواتير أو الإيصالات) ، متبوعًا باستخراج المستندات. في مرحلة الاستخراج ، يمكنك استخراج معلومات تجارية مفيدة من مستنداتك. غالبًا ما تُستخدم هذه البيانات المستخرجة لجمع الرؤى عبر تحليل البيانات ، أو إرسالها إلى أنظمة المصب مثل قواعد البيانات أو أنظمة المعاملات. المرحلة التالية هي الإثراء ، حيث يمكن إثراء المستندات عن طريق تنقيح المعلومات الصحية المحمية (PHI) أو بيانات معلومات التعريف الشخصية (PII) ، واستخراج المصطلحات التجارية المخصصة ، وما إلى ذلك. أخيرًا ، في مرحلة المراجعة والتحقق من الصحة ، يمكنك تضمين قوة عاملة بشرية لمراجعة المستندات لضمان دقة النتيجة.

معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1 PlatoBlockchain Data Intelligence. البحث العمودي. عاي.

لأغراض هذا المنشور ، نأخذ في الاعتبار مجموعة من نماذج المستندات مثل كشوف الحسابات البنكية والفواتير وإيصالات المتجر. يمكن العثور على نماذج المستند ، جنبًا إلى جنب مع نموذج التعليمات البرمجية ، في ملف مستودع جيثب. في الأقسام التالية ، نوجهك عبر نماذج التعليمات البرمجية هذه جنبًا إلى جنب مع التطبيق العملي الحقيقي. نوضح كيف يمكنك استخدام إمكانيات ML مع أمازون تيكستراك, فهم الأمازونو أمازون المعزز بالذكاء الاصطناعي (Amazon A2I) لمعالجة المستندات والتحقق من صحة البيانات المستخرجة منها.

Amazon Textract هي خدمة تعلّم آلي تستخرج النص والكتابة اليدوية والبيانات تلقائيًا من المستندات الممسوحة ضوئيًا. يتجاوز التعرف الضوئي على الحروف (OCR) للتعرف على البيانات وفهمها واستخراجها من النماذج والجداول. تستخدم Amazon Textract التعلم الآلي لقراءة أي نوع من المستندات ومعالجتها ، واستخراج النص والكتابة اليدوية والجداول والبيانات الأخرى بدقة دون أي جهد يدوي.

Amazon Comprehend هي خدمة معالجة للغة الطبيعية (NLP) تستخدم ML لاستخراج رؤى حول محتوى المستندات. يمكن لـ Amazon Comprehend تحديد العناصر المهمة في المستندات ، بما في ذلك الإشارات إلى اللغة والأشخاص والأماكن ، وتصنيفها في موضوعات أو مجموعات ذات صلة. يمكنه إجراء تحليل المشاعر لتحديد وجهة نظر المستند في الوقت الفعلي باستخدام مستند واحد أو اكتشاف دفعة. على سبيل المثال ، يمكنه تحليل التعليقات على منشور مدونة لمعرفة ما إذا كان القراء يحبون المنشور أم لا. تكتشف خدمة Amazon Comprehend أيضًا معلومات تحديد الهوية الشخصية مثل العناوين وأرقام الحسابات المصرفية وأرقام الهواتف في المستندات النصية في الوقت الفعلي والوظائف المجمعة غير المتزامنة. يمكنه أيضًا تنقيح كيانات معلومات تحديد الهوية الشخصية في وظائف الدُفعات غير المتزامنة.

Amazon A2I هي خدمة تعلّم آلي تجعل من السهل إنشاء مهام سير العمل المطلوبة للمراجعة البشرية. تجلب Amazon A2I المراجعة البشرية لجميع المطورين ، وتزيل العبء الثقيل غير المتمايز المرتبط ببناء أنظمة المراجعة البشرية أو إدارة أعداد كبيرة من المراجعين البشريين ، سواء كان يعمل على AWS أم لا. يتكامل Amazon A2I مع كليهما أمازون تيكستراك و فهم الأمازون لتزويدك بالقدرة على تقديم خطوات المراجعة البشرية ضمن سير عمل معالجة المستندات الذكي.

مرحلة التقاط البيانات

يمكنك تخزين المستندات في مساحة تخزين عالية التحمل وقابلة للتوسع مثل خدمة تخزين أمازون البسيطة (أمازون S3). Amazon S3 هي خدمة تخزين كائنات توفر قابلية تطوير رائدة في الصناعة ، وتوفر البيانات ، والأمان ، والأداء. تم تصميم Amazon S3 للحصول على 11 9 من المتانة وتخزين البيانات لملايين العملاء في جميع أنحاء العالم. يمكن أن تأتي المستندات بتنسيقات وتخطيطات مختلفة ، ويمكن أن تأتي من قنوات مختلفة مثل بوابات الويب أو مرفقات البريد الإلكتروني.

مرحلة التصنيف

في الخطوة السابقة ، قمنا بتجميع المستندات من مختلف الأنواع والتنسيقات. في هذه الخطوة ، نحتاج إلى تصنيف المستندات قبل أن نتمكن من القيام بمزيد من الاستخراج. لذلك ، نستخدم Amazon Comprehend تصنيف مخصص. تصنيف الوثيقة هو عملية من خطوتين. أولاً ، تقوم بتدريب مصنف مخصص من Amazon Comprehend للتعرف على الفئات التي تهمك. بعد ذلك ، تقوم بنشر النموذج بامتداد نقطة نهاية الوقت الحقيقي للمصنف المخصص وإرسال المستندات غير المسماة إلى نقطة النهاية في الوقت الفعلي ليتم تصنيفها.

يمثل الشكل التالي سير عمل نموذجي لتصنيف المستندات.

مرحلة التصنيف

لتدريب المصنف ، حدد الفصول الدراسية التي تهتم بها وقدم نماذج من المستندات لكل فئة كمواد تدريبية. بناءً على الخيارات التي أشرت إليها ، تنشئ Amazon Comprehend نموذج ML مخصصًا تتدربه بناءً على المستندات التي قدمتها. يفحص هذا النموذج المخصص (المصنف) كل مستند ترسله. يقوم بإرجاع إما الفئة المحددة التي تمثل المحتوى على أفضل وجه (إذا كنت تستخدم الوضع متعدد الفئات) أو مجموعة الفئات التي تنطبق عليه (إذا كنت تستخدم وضع التسمية المتعددة).

تحضير بيانات التدريب

تتمثل الخطوة الأولى في استخراج النص من المستندات المطلوبة لمصنف Amazon Comprehend المخصص. لاستخراج معلومات النص الخام لجميع المستندات في Amazon S3 ، نستخدم Amazon Textract detect_document_text() API. نقوم أيضًا بتسمية البيانات وفقًا لنوع المستند الذي سيتم استخدامه لتدريب مصنف Amazon Comprehend المخصص.

تم تقليص الكود التالي لأغراض التبسيط. للحصول على الكود الكامل ، راجع GitHub عينة من الرموز For textract_extract_text(). الوظيفة call_textract() هي وظيفة wr4apper تستدعي ملف تحليل وثيقة API داخليًا ، وتلخص المعلمات التي تم تمريرها إلى الطريقة بعض التكوينات التي تحتاجها واجهة برمجة التطبيقات لتشغيل مهمة الاستخراج.

def textract_extract_text(document, bucket=data_bucket):        
    try:
        print(f'Processing document: {document}')
        lines = ""
        row = []
        
        # using amazon-textract-caller
        response = call_textract(input_document=f's3://{bucket}/{document}') 
        # using pretty printer to get all the lines
        lines = get_string(textract_json=response, output_type=[Textract_Pretty_Print.LINES])
        
        label = [name for name in names if(name in document)]  
        row.append(label[0])
        row.append(lines)        
        return row
    except Exception as e:
        print (e)        

تدريب مصنف مخصص

في هذه الخطوة ، نستخدم تصنيف Amazon Comprehend المخصص لتدريب نموذجنا على تصنيف المستندات. نحن نستخدم ال إنشاءمصنف الوثيقة API لإنشاء مصنف يقوم بتدريب نموذج مخصص باستخدام بياناتنا المصنفة. انظر الكود التالي:

create_response = comprehend.create_document_classifier(
        InputDataConfig={
            'DataFormat': 'COMPREHEND_CSV',
            'S3Uri': f's3://{data_bucket}/{key}'
        },
        DataAccessRoleArn=role,
        DocumentClassifierName=document_classifier_name,
        VersionName=document_classifier_version,
        LanguageCode='en',
        Mode='MULTI_CLASS'
    )

انشر نقطة نهاية في الوقت الفعلي

لاستخدام المصنف المخصص Amazon Comprehend ، نقوم بإنشاء نقطة نهاية في الوقت الفعلي باستخدام CreateEndpoint API:

endpoint_response = comprehend.create_endpoint(
        EndpointName=ep_name,
        ModelArn=model_arn,
        DesiredInferenceUnits=1,    
        DataAccessRoleArn=role
    )
    ENDPOINT_ARN=endpoint_response['EndpointArn']
print(f'Endpoint created with ARN: {ENDPOINT_ARN}')  

صنف المستندات بنقطة النهاية في الوقت الفعلي

بعد إنشاء نقطة نهاية Amazon Comprehend ، يمكننا استخدام نقطة النهاية في الوقت الفعلي لتصنيف المستندات. نحن نستخدم ال comprehend.classify_document() تعمل مع نص المستند المستخرج ونقطة نهاية الاستدلال كمعلمات إدخال:

response = comprehend.classify_document(
      Text= document,
      EndpointArn=ENDPOINT_ARN
      )

يُرجع Amazon Comprehend جميع فئات المستندات بدرجة ثقة مرتبطة بكل فئة في مجموعة من أزواج القيمة الرئيسية (درجة الاسم). نختار فئة المستند مع أعلى درجة ثقة. لقطة الشاشة التالية عبارة عن نموذج للرد.

صنف المستندات بنقطة النهاية في الوقت الفعلي

نوصي بالاطلاع على نموذج كود تصنيف الوثيقة التفصيلي على GitHub جيثب:.

مرحلة الاستخراج

يتيح لك Amazon Textract استخراج معلومات النص والبيانات المنظمة باستخدام Amazon Textract DetectDocumentText و تحليل وثيقة واجهات برمجة التطبيقات ، على التوالي. تستجيب واجهات برمجة التطبيقات (API) هذه ببيانات JSON ، والتي تحتوي على WORDS و LINES و FORMS و TABLES والهندسة أو معلومات الصندوق المحيط والعلاقات وما إلى ذلك. كلاهما DetectDocumentText و AnalyzeDocument هي عمليات متزامنة. لتحليل المستندات بشكل غير متزامن ، استخدم StartDocumentTextDetection.

استخراج البيانات المنظمة

يمكنك استخراج البيانات المنظمة مثل الجداول من المستندات مع الحفاظ على بنية البيانات والعلاقات بين العناصر المكتشفة. يمكنك استخدام ال تحليل وثيقة API مع FeatureType as TABLE لاكتشاف كل الجداول في المستند. يوضح الشكل التالي هذه العملية.

استخراج البيانات المنظمة

انظر الكود التالي:

response = textract.analyze_document(
    Document={
        'S3Object': {
            'Bucket': s3BucketName,
            'Name': documentName
        }
    },
    FeatureTypes=["TABLES"])

نحن ندير analyze_document() الطريقة مع FeatureType as TABLES في مستند تاريخ الموظف والحصول على استخراج الجدول في النتائج التالية.

تحليل استجابة وثيقة API لاستخراج الجداول

استخراج البيانات شبه المنظمة

يمكنك استخراج البيانات شبه المنظمة مثل النماذج أو أزواج القيمة الرئيسية من المستندات مع الحفاظ على بنية البيانات والعلاقات بين العناصر المكتشفة. يمكنك استخدام ال تحليل وثيقة API مع FeatureType as FORMS لاكتشاف كل النماذج في المستند. يوضح الرسم البياني التالي هذه العملية.

استخراج البيانات شبه المنظمة

انظر الكود التالي:

response = textract.analyze_document(
    Document={
        'S3Object': {
            'Bucket': s3BucketName,
            'Name': documentName
        }
    },
    FeatureTypes=["FORMS"])

هنا ، نقوم بتشغيل ملف analyze_document() الطريقة مع FeatureType as FORMS على وثيقة طلب الموظف والحصول على استخراج الجدول في النتائج.

معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1 PlatoBlockchain Data Intelligence. البحث العمودي. عاي.

استخراج البيانات غير المنظمة

Amazon Textract هو الخيار الأمثل لاستخراج النص الكثيف بدقة التعرف الضوئي على الحروف الرائدة في الصناعة. يمكنك استخدام ال DetectDocumentText واجهة برمجة التطبيقات (API) لاكتشاف سطور النص والكلمات التي تشكل سطرًا من النص ، كما هو موضح في الشكل التالي.

استخراج البيانات غير المنظمة

انظر الكود التالي:

response = textract.detect_document_text(Document={'Bytes': imageBytes})

# Print detected text
for item in response["Blocks"]:
	if item["BlockType"] == "LINE":
 		print (item["Text"])

الآن نقوم بتشغيل ملف detect_document_text() طريقة على صورة العينة والحصول على استخراج النص الخام في النتائج.

معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1 PlatoBlockchain Data Intelligence. البحث العمودي. عاي.

الفواتير والإيصالات

توفر Amazon Textract دعمًا متخصصًا لمعالجة الفواتير والإيصالات على نطاق واسع. ال تحليل المصاريف يمكن لواجهة برمجة التطبيقات استخراج البيانات المصنفة بشكل صريح والبيانات الضمنية وعناصر السطر من قائمة مفصلة للسلع أو الخدمات من أي فاتورة أو إيصال تقريبًا بدون أي قوالب أو تكوين. يوضح الشكل التالي هذه العملية.

استخراج الفواتير والإيصالات

انظر الكود التالي:

response = textract.analyze_expense(
    Document={
        'S3Object': {
            'Bucket': s3BucketName,
            'Name': documentName
        }
    })

يمكن لـ Amazon Textract العثور على اسم البائع في الإيصال حتى إذا تم الإشارة إليه فقط داخل شعار على الصفحة بدون تسمية صريحة تسمى "البائع". يمكنه أيضًا العثور على عناصر المصروفات والكمية والأسعار التي لم يتم تصنيفها برؤوس أعمدة لعناصر السطر واستخراجها.

تحليل استجابة API حساب

وثائق الهوية

نص الأمازون تحليل معرف يمكن أن تساعدك API في استخراج المعلومات تلقائيًا من وثائق الهوية ، مثل تراخيص القيادة وجوازات السفر ، دون الحاجة إلى قوالب أو تكوين. يمكننا استخراج معلومات محددة ، مثل تاريخ انتهاء الصلاحية وتاريخ الميلاد ، وكذلك تحديد واستخراج المعلومات الضمنية بذكاء ، مثل الاسم والعنوان. يوضح الرسم البياني التالي هذه العملية.

استخراج مستندات الهوية

انظر الكود التالي:

textract_client = boto3.client('textract')
j = call_textract_analyzeid(document_pages=["s3://amazon-textract-public-content/analyzeid/driverlicense.png"],boto3_textract_client=textract_client)

يمكننا استخدام tabulate للحصول على مخرجات مطبوعة جميلة:

from tabulate import tabulate

print(tabulate([x[1:3] for x in result]))

معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1 PlatoBlockchain Data Intelligence. البحث العمودي. عاي.

نوصي بالاطلاع على الاستخراج التفصيلي للوثيقة عينة من الرموز على جيثب. لمزيد من المعلومات حول نماذج التعليمات البرمجية الكاملة في هذا المنشور ، يرجى الرجوع إلى جيثب ريبو.

وفي الختام

في هذا المنشور الأول من سلسلة من جزأين ، ناقشنا المراحل المختلفة لـ IDP وبنية الحلول. ناقشنا أيضًا تصنيف المستندات باستخدام مصنف مخصص من Amazon Comprehend. بعد ذلك ، اكتشفنا الطرق التي يمكنك من خلالها استخدام Amazon Textract لاستخراج المعلومات من أنواع المستندات غير المهيكلة وشبه المهيكلة والمنظمة والمتخصصة.

In جزء 2 من هذه السلسلة ، نواصل المناقشة مع ميزات الاستخراج والاستعلام في Amazon Textract. نحن ننظر في كيفية استخدام كيانات Amazon Comprehend المحددة مسبقًا والكيانات المخصصة لاستخراج مصطلحات العمل الرئيسية من المستندات ذات النص الكثيف ، وكيفية دمج مراجعة بشرية في حلقة Amazon A2I في عمليات IDP الخاصة بك.

نوصي بمراجعة أقسام الأمان الخاصة بـ أمازون تيكستراك, فهم الأمازونو أمازون A2I الوثائق واتباع الإرشادات المقدمة. أيضًا ، خذ بعض الوقت لمراجعة وفهم أسعار أمازون تيكستراك, فهم الأمازونو أمازون A2I.


عن المؤلفين

معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1 PlatoBlockchain Data Intelligence. البحث العمودي. عاي. سوبراكاش دوتا مهندس حلول في Amazon Web Services. وهو يركز على استراتيجية التحول الرقمي وتحديث التطبيقات والترحيل وتحليلات البيانات والتعلم الآلي.

معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1 PlatoBlockchain Data Intelligence. البحث العمودي. عاي.سونالي ساهو يقود فريق مهندس حلول الذكاء الاصطناعي / ML في معالجة المستندات الذكية في Amazon Web Services. إنها شغوفة بالتكنولوجيا وتستمتع بالعمل مع العملاء لحل المشكلات المعقدة باستخدام الابتكار. مجال تركيزها الأساسي هو الذكاء الاصطناعي والتعلم الآلي لمعالجة المستندات بذكاء.

معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1 PlatoBlockchain Data Intelligence. البحث العمودي. عاي.أنجان بيسواس هو كبير مهندسي حلول خدمات الذكاء الاصطناعي مع التركيز على الذكاء الاصطناعي / تعلم الآلة وتحليلات البيانات. أنجان هو جزء من فريق خدمات الذكاء الاصطناعي على مستوى العالم ويعمل مع العملاء لمساعدتهم على فهم وتطوير حلول لمشاكل العمل باستخدام الذكاء الاصطناعي والتعلم الآلي. يتمتع Anjan بأكثر من 14 عامًا من الخبرة في العمل مع سلسلة التوريد العالمية ، والتصنيع ، ومؤسسات البيع بالتجزئة ، وهو يساعد العملاء بنشاط على البدء وتوسيع نطاق خدمات AWS AI.

معالجة المستندات بذكاء مع خدمات AWS AI: الجزء 1 PlatoBlockchain Data Intelligence. البحث العمودي. عاي.تشينماي راني هو مهندس حلول متخصص في AI / ML في Amazon Web Services. إنها شغوفة بالرياضيات التطبيقية والتعلم الآلي. تركز على تصميم حلول معالجة المستندات الذكية لعملاء AWS. خارج العمل ، تستمتع برقص السالسا والباشاتا.

الطابع الزمني:

اكثر من التعلم الآلي من AWS