Các doanh nghiệp thường phải xử lý khối lượng lớn yêu cầu dịch vụ CNTT. Theo truyền thống, gánh nặng đặt lên vai người yêu cầu là phải chọn đúng danh mục cho mọi vấn đề. Lỗi thủ công hoặc phân loại sai phiếu thường dẫn đến sự chậm trễ trong việc giải quyết yêu cầu dịch vụ CNTT. Điều này có thể dẫn đến giảm năng suất, giảm sự hài lòng của khách hàng, ảnh hưởng đến các thỏa thuận cấp độ dịch vụ (SLA) và tác động đến hoạt động rộng hơn. Khi doanh nghiệp của bạn phát triển, vấn đề nhận được yêu cầu dịch vụ phù hợp đến đúng nhóm càng trở nên quan trọng hơn. Sử dụng phương pháp tiếp cận dựa trên máy học (ML) và trí tuệ nhân tạo có thể đáp ứng nhu cầu ngày càng phát triển của doanh nghiệp bạn.
ML được giám sát là một quy trình sử dụng các bộ dữ liệu và kết quả đầu ra được gắn nhãn để đào tạo các thuật toán học tập về cách phân loại dữ liệu hoặc dự đoán kết quả. Amazon hiểu là dịch vụ xử lý ngôn ngữ tự nhiên (NLP) sử dụng ML để khám phá những hiểu biết sâu sắc và kết nối có giá trị trong văn bản. Nó cung cấp các API được cung cấp bởi ML để trích xuất các cụm từ khóa, thực thể, phân tích tình cảm, v.v.
Trong bài đăng này, chúng tôi chỉ cho bạn cách triển khai mô hình ML được giám sát có thể giúp tự động phân loại các yêu cầu dịch vụ CNTT bằng cách sử dụng Phân loại tùy chỉnh của Amazon Compreh. Phân loại tùy chỉnh của Amazon Comprehend giúp bạn tùy chỉnh Amazon Comprehend theo yêu cầu cụ thể của bạn mà không cần có bộ kỹ năng cần thiết để xây dựng các giải pháp NLP dựa trên ML. Với ML tự động hoặc AutoML, phân loại tùy chỉnh của Amazon Comprehend thay mặt bạn xây dựng các mô hình NLP tùy chỉnh bằng cách sử dụng dữ liệu đào tạo mà bạn cung cấp.
Tổng quan về giải pháp
Để minh họa việc phân loại yêu cầu dịch vụ CNTT, giải pháp này sử dụng Tập dữ liệu SEOSS. Tập dữ liệu này là tập dữ liệu được truy xuất một cách có hệ thống bao gồm 33 dự án phần mềm nguồn mở chứa một số lượng lớn các tạo phẩm được đánh máy và theo dõi các liên kết giữa chúng. Giải pháp này sử dụng dữ liệu vấn đề từ 33 dự án nguồn mở, bản tóm tắt và mô tả do người dùng cuối báo cáo để xây dựng mô hình phân loại tùy chỉnh bằng Amazon Comprehend.
Bài đăng này trình bày cách triển khai và triển khai giải pháp bằng cách sử dụng Bộ công cụ phát triển đám mây AWS (AWS CDK) ở trạng thái biệt lập Đám mây riêng ảo Amazon Môi trường (Amazon VPC) chỉ bao gồm các mạng con riêng tư. Chúng tôi cũng sử dụng mã để minh họa cách bạn có thể sử dụng AWS CDK khung nhà cung cấp, một khung nhỏ để triển khai nhà cung cấp cho Hình thành đám mây AWS tài nguyên tùy chỉnh để tạo, cập nhật hoặc xóa tài nguyên tùy chỉnh, chẳng hạn như điểm cuối Amazon Comprehend. Điểm cuối Amazon Comprehend bao gồm các tài nguyên được quản lý giúp mô hình tùy chỉnh của bạn có sẵn để suy luận theo thời gian thực cho máy khách hoặc ứng dụng của bên thứ ba. Các mã cho giải pháp này có sẵn trên Github.
Bạn sử dụng AWS CDK để triển khai cơ sở hạ tầng, mã ứng dụng và cấu hình cho giải pháp. Bạn cũng cần có tài khoản AWS và khả năng tạo tài nguyên AWS. Bạn sử dụng AWS CDK để tạo các tài nguyên AWS như VPC có mạng con riêng, Điểm cuối của Amazon VPC, Hệ thống tệp đàn hồi Amazon (Amazon EFS), một Dịch vụ thông báo đơn giản của Amazon (Amazon SNS), chủ đề Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3), Thông báo sự kiện Amazon S3và AWS Lambda chức năng. Nói chung, các tài nguyên AWS này tạo thành ngăn xếp đào tạo mà bạn sử dụng để xây dựng và huấn luyện mô hình phân loại tùy chỉnh.
Sau khi tạo các tài nguyên AWS này, bạn tải xuống tập dữ liệu SEOSS và tải tập dữ liệu lên bộ chứa S3 do giải pháp tạo ra. Nếu bạn đang triển khai giải pháp này ở Khu vực AWS us-east-2, định dạng của tên nhóm S3 là comprehendcustom--us-east-2-s3stack
. Giải pháp này sử dụng trình kích hoạt tải lên nhiều phần của Amazon S3 để gọi hàm Lambda bắt đầu quá trình xử lý trước dữ liệu đầu vào và sử dụng dữ liệu được xử lý trước để huấn luyện trình phân loại tùy chỉnh Amazon Comprehend nhằm tạo ra mô hình phân loại tùy chỉnh. Sau đó, bạn sử dụng Tên tài nguyên Amazon (ARN) của mô hình phân loại tùy chỉnh để tạo ngăn xếp suy luận, tạo ra điểm cuối Amazon Comprehend bằng AWS CDK khung nhà cung cấp, sau đó bạn có thể sử dụng để suy luận từ ứng dụng hoặc máy khách của bên thứ ba.
Sơ đồ sau minh họa kiến trúc của ngăn xếp huấn luyện.
Các bước quy trình làm việc như sau:
- Tải tập dữ liệu SEOSS lên bộ chứa S3 được tạo như một phần của quy trình triển khai ngăn xếp đào tạo. Điều này tạo ra một trình kích hoạt sự kiện gọi ra
etl_lambda
chức năng. - Sản phẩm
etl_lambda
hàm tải tập dữ liệu thô từ Amazon S3 xuống Amazon EFS. - Sản phẩm
etl_lambda
Hàm thực hiện nhiệm vụ tiền xử lý dữ liệu của tập dữ liệu SEOSS. - Khi quá trình thực thi hàm hoàn tất, nó sẽ tải lên dữ liệu đã chuyển đổi với
prepped_data
tiền tố vào nhóm S3. - Sau khi quá trình tải lên dữ liệu đã chuyển đổi hoàn tất, một thông báo hoàn thành ETL thành công sẽ được gửi tới Amazon SNS.
- Trong Amazon Comprehend, bạn có thể phân loại tài liệu của mình bằng hai chế độ: nhiều lớp hoặc nhiều nhãn. Chế độ nhiều lớp xác định một và chỉ một lớp cho mỗi tài liệu và chế độ nhiều nhãn xác định một hoặc nhiều nhãn cho mỗi tài liệu. Vì muốn xác định một lớp duy nhất cho mỗi tài liệu nên chúng tôi huấn luyện mô hình phân loại tùy chỉnh ở chế độ nhiều lớp. Amazon SNS kích hoạt
train_classifier_lambda
chức năng khởi tạo quá trình đào tạo bộ phân loại Amazon Comprehend ở chế độ nhiều lớp. - Sản phẩm
train_classifier_lambda
bắt đầu quá trình đào tạo bộ phân loại tùy chỉnh Amazon Comprehend. - Amazon Comprehend tải xuống dữ liệu đã chuyển đổi từ
prepped_data
tiền tố trong Amazon S3 để huấn luyện mô hình phân loại tùy chỉnh. - Khi quá trình đào tạo mô hình hoàn tất, Amazon Comprehend sẽ tải lên
model.tar.gz
nộp vàooutput_data
tiền tố của nhóm S3. Thời gian hoàn thành trung bình để huấn luyện mô hình phân loại tùy chỉnh này là khoảng 10 giờ. - Trình kích hoạt tải lên Amazon S3 gọi
extract_comprehend_model_name_lambda
hàm truy xuất mô hình phân loại tùy chỉnh ARN. - Hàm trích xuất ARN mô hình phân loại tùy chỉnh từ tải trọng sự kiện S3 và phản hồi của
list-document-classifiers
gọi. - Hàm gửi ARN mô hình phân loại tùy chỉnh đến địa chỉ email mà bạn đã đăng ký trước đó như một phần của quy trình tạo ngăn xếp đào tạo. Sau đó, bạn sử dụng ARN này để triển khai ngăn xếp suy luận.
Việc triển khai này tạo ra ngăn xếp suy luận, như thể hiện trong hình dưới đây. Ngăn suy luận cung cấp cho bạn REST API được bảo mật bởi một Quản lý truy cập và nhận dạng AWS (IAM), sau đó bạn có thể sử dụng để tạo điểm tin cậy của nhãn dựa trên văn bản đầu vào được cung cấp từ ứng dụng hoặc máy khách của bên thứ ba.
Điều kiện tiên quyết
Đối với bản demo này, bạn phải có các điều kiện tiên quyết sau:
- An Tài khoản AWS.
- Python 3.7 trở lên, Node.jsvà đi trong cỗ máy phát triển. AWS CDK sử dụng các phiên bản cụ thể của Node.js (>=10.13.0, ngoại trừ phiên bản 13.0.0 – 13.6.0). Nên sử dụng phiên bản hỗ trợ dài hạn đang hoạt động (LTS).
Để cài đặt phiên bản LTS đang hoạt động của Node.js, bạn có thể sử dụng cách sau cài đặt tập lệnh chonvm
Và sử dụngnvm
đến cài đặt, dựng lên phiên bản LTS của Node.js. Bạn cũng có thể cài đặt LTS Node.js đang hoạt động hiện tại thông qua trình quản lý gói tùy thuộc vào hệ điều hành bạn chọn.Đối với macOS, bạn có thể cài đặt Node.js thông qua trình quản lý gói bằng cách sử dụng thông tin sau hướng dẫn.
Đối với Windows, bạn có thể cài đặt Node.js thông qua trình quản lý gói bằng cách sử dụng cách sau hướng dẫn.
- AWS CDK v2 được cài đặt sẵn nếu bạn đang sử dụng Đám mây AWS9 IDE. Nếu bạn đang sử dụng AWS Cloud9 IDE, bạn có thể bỏ qua bước này. Nếu bạn chưa cài đặt AWS CDK trong máy phát triển, hãy cài đặt AWS CDK v2 trên toàn cầu bằng lệnh Node Package Manager
npm install -g aws-cdk
. Bước này yêu cầu cài đặt Node.js trong máy phát triển. - Định cấu hình thông tin đăng nhập AWS của bạn để truy cập và tạo tài nguyên AWS bằng AWS CDK. Để biết hướng dẫn, hãy tham khảo Chỉ định thông tin đăng nhập và khu vực.
- Tải về Tập dữ liệu SEOSS bao gồm các yêu cầu, báo cáo lỗi, lịch sử mã và liên kết theo dõi của 33 dự án phần mềm nguồn mở. Lưu các tập tin
dataverse_files.zip
trên máy cục bộ của bạn.
Triển khai kho đào tạo AWS CDK
Để triển khai AWS CDK, chúng tôi bắt đầu với ngăn xếp đào tạo. Hoàn thành các bước sau:
- Sao chép kho lưu trữ GitHub:
- Điều hướng đến
amazon-comprehend-custom-automate-classification-it-service-request
thư mục:
Tất cả các lệnh sau được chạy trong amazon-comprehend-custom-automate-classification-it-service-request
thư mục.
- Trong thư mục amazon-comprehend-custom-automate-classification-it-service-request, khởi tạo môi trường ảo Python và cài đặt require.txt bằng pip:
- Nếu bạn đang sử dụng AWS CDK trong một tài khoản và Khu vực AWS cụ thể lần đầu tiên, hãy xem hướng dẫn dành cho khởi động môi trường CDK AWS của bạn:
- Tổng hợp các mẫu CloudFormation cho giải pháp này bằng cách sử dụng
cdk synth
Và sử dụngcdk deploy
để tạo tài nguyên AWS được đề cập trước đó:
Sau khi bạn nhập cdk deploy
, AWS CDK sẽ nhắc xem bạn có muốn triển khai các thay đổi cho từng ngăn xếp được gọi ra trong lệnh triển khai cdk hay không.
- đăng ký hạng mục thi
y
đối với mỗi lời nhắc tạo ngăn xếp, thì bước triển khai cdk sẽ tạo ra các ngăn xếp này. Đăng ký địa chỉ email do bạn cung cấp cho chủ đề SNS được tạo như một phần của quá trình triển khai cdk. - Sau khi triển khai cdk hoàn tất thành công, hãy tạo một thư mục có tên
raw_data
trong nhóm S3comprehendcustom---s3stack
. - Tải lên tập dữ liệu SEOSS
dataverse_files.zip
mà bạn đã tải xuống trước đó vào thư mục này.
Sau khi quá trình tải lên hoàn tất, giải pháp sẽ gọi etl_lambda
sử dụng trình kích hoạt sự kiện Amazon S3 để bắt đầu quá trình trích xuất, chuyển đổi và tải (ETL). Sau khi quá trình ETL hoàn tất thành công, một tin nhắn sẽ được gửi đến chủ đề SNS, gọi ra train_classifier_lambda
chức năng. Hàm này kích hoạt quá trình đào tạo mô hình phân loại tùy chỉnh của Amazon Comprehend. Tùy thuộc vào việc bạn có đào tạo mô hình của mình trên bộ dữ liệu SEOSS hoàn chỉnh hay không, quá trình đào tạo có thể mất tới 10 giờ. Khi quá trình đào tạo hoàn tất, Amazon Comprehend sẽ tải lên model.tar.gz
nộp vào output_data
tiền tố trong nhóm S3.
Tải lên này kích hoạt extract_comprehend_model_name_lambda
bằng cách sử dụng trình kích hoạt sự kiện S3 để trích xuất ARN mô hình phân loại tùy chỉnh và gửi nó đến địa chỉ email mà bạn đã đăng ký trước đó. Sau đó, mô hình phân loại tùy chỉnh ARN này được sử dụng để tạo ngăn xếp suy luận. Khi quá trình đào tạo mô hình hoàn tất, bạn có thể xem số liệu hiệu suất của mô hình phân loại tùy chỉnh bằng cách điều hướng đến phần chi tiết phiên bản trong bảng điều khiển Amazon Comprehend (xem ảnh chụp màn hình sau) hoặc bằng cách sử dụng Amazon Comprehend SDK Boto3.
Triển khai ngăn xếp suy luận AWS CDK
Bây giờ bạn đã sẵn sàng triển khai ngăn xếp suy luận.
- Sao chép mô hình phân loại tùy chỉnh ARN từ email bạn nhận được và sử dụng thông tin sau
cdk deploy
lệnh để tạo ngăn xếp suy luận.
Lệnh này triển khai API REST của Cổng API được bảo mật bởi người ủy quyền IAM mà bạn sử dụng để suy luận với ID người dùng AWS hoặc vai trò IAM chỉ có đặc quyền exec-api:Gọi IAM. Lệnh triển khai cdk sau đây sẽ triển khai ngăn xếp suy luận. Ngăn xếp này sử dụng AWS CDK khung nhà cung cấp để tạo điểm cuối Amazon Comprehend dưới dạng tài nguyên tùy chỉnh, để việc tạo, xóa và cập nhật điểm cuối Amazon Comprehend có thể được thực hiện như một phần của vòng đời ngăn xếp suy luận bằng cách sử dụng lệnh cdk triển khai và lệnh hủy cdk.
Vì bạn cần chạy lệnh sau sau khi đào tạo mô hình hoàn tất, quá trình này có thể mất tới 10 giờ, nên hãy đảm bảo rằng bạn đang ở trong môi trường ảo Python mà bạn đã khởi tạo ở bước trước đó và trong amazon-comprehend-custom-automate-classification-it-service-request
danh mục:
Ví dụ:
- Sau
cdk deploy
lệnh hoàn tất thành công, sao chépAPIGWInferenceStack.ComprehendCustomClassfierInvokeAPI
giá trị từ đầu ra của bảng điều khiển và sử dụng API REST này để tạo suy luận từ máy khách hoặc ứng dụng của bên thứ ba cóexecute-api:Invoke
Đặc quyền IAM. Nếu bạn đang chạy giải pháp này trong us-east-2, định dạng của API REST này làhttps://.execute-api.us-east-2.amazonaws.com/prod/invokecomprehendV1
.
Ngoài ra, bạn có thể sử dụng ứng dụng khách thử nghiệm apiclientinvoke.py
từ kho lưu trữ GitHub để gửi yêu cầu đến mô hình phân loại tùy chỉnh. Trước khi sử dụng apiclientinvoke.py, hãy đảm bảo có sẵn các điều kiện tiên quyết sau:
- Bạn có
boto3
vàrequests
Gói Python được cài đặt bằng pip trên máy khách. - Bạn đã định cấu hình thông tin xác thực Boto3. Theo mặc định, máy khách thử nghiệm giả định rằng có một cấu hình có tên mặc định và nó có
execute-api:Invoke
Đặc quyền IAM trên API REST. - SigV4Auth trỏ đến Vùng nơi API REST được triển khai. Cập nhật
có giá trị đối với
us-east-2
inapiclientinvoke.py
nếu API REST của bạn được triển khai ở us-east-2. - Bạn đã chỉ định
raw_data
biến có văn bản mà bạn muốn đưa ra dự đoán lớp hoặc yêu cầu phân loại:
- Bạn đã chỉ định
restapi
biến có API REST được sao chép trước đó:
restapi="https://.execute-api.us-east-2.amazonaws.com/prod/invokecomprehendV1"
- Chạy
apiclientinvoke.py
sau các bản cập nhật trước:
Bạn nhận được phản hồi sau từ mô hình phân loại tùy chỉnh:
Amazon Comprehend trả về điểm tin cậy cho từng nhãn được gán chính xác. Nếu dịch vụ có độ tin cậy cao về nhãn thì điểm sẽ gần bằng 1. Do đó, đối với mô hình phân loại tùy chỉnh Amazon Comprehend được đào tạo bằng tập dữ liệu SEOSS, mô hình phân loại tùy chỉnh sẽ dự đoán rằng văn bản thuộc lớp SPARK. Sau đó, sự phân loại này được mô hình phân loại tùy chỉnh Amazon Comprehend trả về có thể được sử dụng để phân loại các yêu cầu dịch vụ CNTT hoặc dự đoán danh mục chính xác của các yêu cầu dịch vụ CNTT, từ đó giảm thiểu các lỗi thủ công hoặc phân loại sai các yêu cầu dịch vụ.
Làm sạch
Để dọn sạch tất cả các tài nguyên được tạo trong bài đăng này được tạo như một phần của ngăn xếp đào tạo và ngăn xếp suy luận, hãy sử dụng lệnh sau. Lệnh này xóa tất cả tài nguyên AWS được tạo như một phần của lệnh triển khai cdk trước đó:
Kết luận
Trong bài đăng này, chúng tôi đã chỉ cho bạn cách doanh nghiệp có thể triển khai mô hình ML được giám sát bằng cách sử dụng phân loại tùy chỉnh của Amazon Comprehend để dự đoán danh mục yêu cầu dịch vụ CNTT dựa trên chủ đề hoặc mô tả yêu cầu do người dùng cuối gửi. Sau khi xây dựng và huấn luyện mô hình phân loại tùy chỉnh, bạn có thể chạy phân tích thời gian thực để phân loại tùy chỉnh bằng cách tạo điểm cuối. Sau khi triển khai mô hình này đến điểm cuối Amazon Comprehend, bạn có thể sử dụng mô hình này để chạy suy luận theo thời gian thực bởi các ứng dụng của bên thứ ba hoặc các máy khách khác, bao gồm cả các công cụ quản lý dịch vụ CNTT. Sau đó, bạn có thể sử dụng suy luận này để dự đoán loại lỗi và giảm các lỗi thủ công hoặc phân loại sai phiếu. Điều này giúp giảm độ trễ trong quá trình giải quyết yêu cầu và tăng độ chính xác của quá trình giải quyết cũng như năng suất của khách hàng, điều này cuối cùng giúp tăng sự hài lòng của khách hàng.
Bạn có thể mở rộng các khái niệm trong bài đăng này sang các trường hợp sử dụng khác, chẳng hạn như định tuyến yêu cầu kinh doanh hoặc CNTT tới các nhóm nội bộ khác nhau như bộ phận kinh doanh, đại lý dịch vụ khách hàng và hỗ trợ CNTT Cấp 2/3, do người dùng cuối tạo hoặc thông qua tự động hóa. có nghĩa.
dự án
- Rath, Michael; Mäder, Patrick, 2019, “Bộ dữ liệu SEOSS – Yêu cầu, Báo cáo lỗi, Lịch sử mã và Liên kết theo dõi cho toàn bộ dự án”, https://doi.org/10.7910/DVN/PDDZ4Q, Dữ liệu Harvard, V1
Về các tác giả
Chakraborty Arnab là Kiến trúc sư giải pháp cấp cao tại AWS có trụ sở tại Cincinnati, Ohio. Anh ấy đam mê các chủ đề về kiến trúc Doanh nghiệp & Giải pháp, Phân tích dữ liệu, Serverless và Machine Learning. Trong thời gian rảnh rỗi, anh ấy thích xem phim, chương trình du lịch và thể thao.
Viral Desai là Kiến trúc sư giải pháp chính tại AWS. Với hơn 25 năm kinh nghiệm trong lĩnh vực công nghệ thông tin, ông đã và đang giúp khách hàng áp dụng AWS và hiện đại hóa kiến trúc của họ. Anh ấy thích đi bộ đường dài và thích tìm hiểu sâu cùng khách hàng về mọi thứ trên AWS.
- Nâng cao (300)
- AI
- nghệ thuật ai
- máy phát điện nghệ thuật ai
- ai rô bốt
- Amazon hiểu
- trí tuệ nhân tạo
- chứng nhận trí tuệ nhân tạo
- trí tuệ nhân tạo trong ngân hàng
- robot trí tuệ nhân tạo
- robot trí tuệ nhân tạo
- phần mềm trí tuệ nhân tạo
- Học máy AWS
- blockchain
- hội nghị blockchain ai
- thiên tài
- trí tuệ nhân tạo đàm thoại
- hội nghị tiền điện tử ai
- dall's
- học kĩ càng
- google ai
- Trung cấp (200)
- học máy
- plato
- Plato ai
- Thông tin dữ liệu Plato
- Trò chơi Plato
- PlatoDữ liệu
- Platogaming
- quy mô ai
- cú pháp
- Hướng dẫn kỹ thuật
- zephyrnet