Amazon Comprehend özel sınıflandırıcısı PlatoBlockchain Data Intelligence ile BT hizmeti isteklerinin sınıflandırılmasını otomatikleştirin. Dikey Arama. Ai.

Amazon Comprehend özel sınıflandırıcı ile BT hizmeti isteklerinin sınıflandırılmasını otomatikleştirin

Kuruluşlar genellikle büyük hacimli BT hizmeti talepleri ile ilgilenir. Geleneksel olarak, her sorun için doğru kategoriyi seçme yükü talepte bulunana yüklenir. Bir biletin manuel hatası veya yanlış sınıflandırılması, genellikle BT hizmeti talebinin çözümlenmesinde bir gecikme anlamına gelir. Bu, üretkenliğin azalmasına, müşteri memnuniyetinin azalmasına, hizmet düzeyi anlaşmalarına (SLA'lar) ve daha geniş operasyonel etkilere neden olabilir. İşletmeniz büyüdükçe, doğru hizmet talebinin doğru ekibe ulaşması sorunu daha da önemli hale gelir. Makine öğrenimi (ML) ve yapay zekaya dayalı bir yaklaşım kullanmak, işletmenizin sürekli gelişen ihtiyaçlarına yardımcı olabilir.

Denetimli ML, verilerin nasıl sınıflandırılacağı veya bir sonucun nasıl tahmin edileceği konusunda öğrenme algoritmalarını eğitmek için etiketlenmiş veri kümelerini ve çıktıları kullanan bir süreçtir. Amazon Kavramak metindeki değerli içgörüleri ve bağlantıları ortaya çıkarmak için makine öğrenimini kullanan bir doğal dil işleme (NLP) hizmetidir. Anahtar kelime öbeklerini, varlıkları, duygu analizini ve daha fazlasını çıkarmak için ML tarafından desteklenen API'ler sağlar.

Bu gönderide, kullanarak BT hizmeti isteklerini otomatik olarak sınıflandırmaya yardımcı olabilecek denetimli bir ML modelinin nasıl uygulanacağını gösteriyoruz. Amazon Özel sınıflandırmayı anlama. Amazon Comprehend özel sınıflandırması, ML tabanlı NLP çözümleri oluşturmak için gereken beceri seti olmadan Amazon Comprehend'i özel gereksinimleriniz için özelleştirmenize yardımcı olur. Otomatik ML veya AutoML ile Amazon Comprehend özel sınıflandırma, sağladığınız eğitim verilerini kullanarak sizin adınıza özelleştirilmiş NLP modelleri oluşturur.

Çözüme genel bakış

BT hizmeti talebi sınıflandırmasını göstermek için bu çözüm aşağıdakileri kullanır: SEOSS veri kümesi. Bu veri kümesi, çok sayıda daktilo edilmiş yapıt ve bunlar arasındaki izleme bağlantılarını içeren 33 açık kaynaklı yazılım projesinden oluşan sistematik olarak alınan bir veri kümesidir. Bu çözüm, Amazon Comprehend kullanarak özel bir sınıflandırıcı modeli oluşturmak için son kullanıcılar tarafından bildirilen bu 33 açık kaynaklı proje, özet ve açıklamadaki sorun verilerini kullanır.

Bu gönderi, çözümün aşağıdakileri kullanarak nasıl uygulanacağını ve dağıtılacağını gösterir. AWS Bulut Geliştirme Kiti (AWS CDK) yalıtılmış bir Amazon Sanal Özel Bulut Yalnızca özel alt ağlardan oluşan (Amazon VPC) ortamı. Kodu, AWS CDK'yi nasıl kullanabileceğinizi göstermek için de kullanırız. sağlayıcı çerçevesiiçin bir sağlayıcı uygulamak için bir mini çerçeve AWS CloudFormation Amazon Comprehend uç noktası gibi özel bir kaynağı oluşturmak, güncellemek veya silmek için özel kaynaklar. Amazon Comprehend uç noktası, özel modelinizi bir istemci makinede veya üçüncü taraf uygulamalarda gerçek zamanlı çıkarım için kullanılabilir hale getiren yönetilen kaynaklar içerir. bu Bu çözüm için kod Github'da mevcuttur.

Çözümün altyapısını, uygulama kodunu ve yapılandırmasını dağıtmak için AWS CDK'yı kullanırsınız. Ayrıca bir AWS hesabına ve AWS kaynakları oluşturma yeteneğine de ihtiyacınız vardır. Özel alt ağlara sahip bir VPC gibi AWS kaynakları oluşturmak için AWS CDK'sını kullanırsınız, Amazon VPC uç noktaları, Amazon Elastik Dosya Sistemi (Amazon EFS), bir Amazon Basit Bildirim Servisi (Amazon SNS) konusu, bir Amazon Basit Depolama Hizmeti (Amazon S3) kova, Amazon S3 olay bildirimleri, ve AWS Lambda fonksiyonlar. Toplu olarak, bu AWS kaynakları, özel sınıflandırıcı modelini oluşturmak ve eğitmek için kullandığınız eğitim yığınını oluşturur.

Bu AWS kaynaklarını oluşturduktan sonra SEOSS veri kümesini indirir ve veri kümesini çözümün oluşturduğu S3 kovasına yüklersiniz. Bu çözümü AWS Bölgesi us-east-2'de dağıtıyorsanız, S3 paket adının biçimi şöyledir: comprehendcustom--us-east-2-s3stack. Çözüm, giriş verilerinin ön işlemesini başlatan bir Lambda işlevini çağırmak için Amazon S3 çok parçalı yükleme tetikleyicisini kullanır ve özel sınıflandırıcı modeli oluşturmak üzere Amazon Comprehend özel sınıflandırıcısını eğitmek için önceden işlenmiş verileri kullanır. Ardından, AWS CDK kullanarak bir Amazon Comprehend uç noktası oluşturan çıkarım yığınını oluşturmak için özel sınıflandırıcı modelinin Amazon Kaynak Adını (ARN) kullanırsınız. sağlayıcı çerçevesi, daha sonra üçüncü taraf bir uygulamadan veya istemci makineden çıkarımlar için kullanabilirsiniz.

Aşağıdaki diyagram, eğitim yığınının mimarisini göstermektedir.

İş akışı adımları aşağıdaki gibidir:

  1. SEOSS veri kümesini, eğitim yığını dağıtım sürecinin bir parçası olarak oluşturulan S3 klasörüne yükleyin. Bu, aşağıdakileri çağıran bir olay tetikleyicisi oluşturur. etl_lambda fonksiyonu.
  2. The etl_lambda işlevi, ham veri kümesini Amazon S3'ten Amazon EFS'ye indirir.
  3. The etl_lambda işlevi, SEOSS veri kümesinin veri ön işleme görevini gerçekleştirir.
  4. İşlev yürütme tamamlandığında, dönüştürülen verileri şu şekilde yükler: prepped_data S3 kovasının öneki.
  5. Dönüştürülen verilerin karşıya yüklenmesi tamamlandıktan sonra Amazon SNS'ye başarılı bir ETL tamamlama mesajı gönderilir.
  6. Amazon Comprehend'de belgelerinizi iki modu kullanarak sınıflandırabilirsiniz: çok sınıflı veya çok etiketli. Çoklu sınıf modu, her belge için yalnızca bir sınıf tanımlar ve çoklu etiket modu, her belge için bir veya daha fazla etiket tanımlar. Her belgeye tek bir sınıf tanımlamak istediğimizden, özel sınıflandırıcı modelini çoklu sınıf modunda eğitiriz. Amazon SNS, train_classifier_lambda Amazon Comprehend sınıflandırıcı eğitimini çok sınıflı bir modda başlatan işlev.
  7. The train_classifier_lambda işlevi, Amazon Comprehend özel sınıflandırıcı eğitimini başlatır.
  8. Amazon Comprehend, dönüştürülmüş verileri prepped_data Amazon S3'te özel sınıflandırıcı modelini eğitmek için önek.
  9. Model eğitimi tamamlandığında Amazon Comprehend, model.tar.gz dosyaya output_data S3 kovasının öneki. Bu özel sınıflandırıcı modelini eğitmek için ortalama tamamlanma süresi yaklaşık 10 saattir.
  10. Amazon S3 yükleme tetikleyicisi, extract_comprehend_model_name_lambda ARN özel sınıflandırıcı modelini alan işlev.
  11. İşlev, özel sınıflandırıcı model ARN'yi S3 olay yükünden ve yanıtından çıkarır. list-document-classifiers aramak.
  12. İşlev, özel sınıflandırıcı model ARN'yi, eğitim yığını oluşturma sürecinin bir parçası olarak daha önce abone olduğunuz e-posta adresine gönderir. Daha sonra çıkarım yığınını dağıtmak için bu ARN'yi kullanırsınız.

Bu dağıtım, aşağıdaki şekilde gösterildiği gibi çıkarım yığınını oluşturur. Çıkarım yığını, size bir AWS Kimlik ve Erişim Yönetimi (IAM) yetkilendiricisi, daha sonra üçüncü taraf bir uygulamadan veya istemci makineden sağlanan giriş metnine dayalı olarak etiketlerin güven puanlarını oluşturmak için kullanabilirsiniz.

Çıkarım yığını mimarisi

Önkoşullar

Bu demo için aşağıdaki ön koşullara sahip olmalısınız:

  • An AWS hesabı.
  • Python 3.7 veya üzeri, node.js, ve Git geliştirme makinesinde. AWS CDK, Node.js'nin belirli sürümlerini kullanır (>=10.13.0, 13.0.0 – 13.6.0 sürümü hariç). Aktif uzun vadeli destekte (LTS) bir sürüm önerilir.
    Node.js'nin etkin LTS sürümünü yüklemek için aşağıdakileri kullanabilirsiniz. komut dosyası yükle için nvm ve kullan nvm için kurmak Node.js LTS sürümü. Seçtiğiniz işletim sistemine bağlı olarak mevcut etkin LTS Node.js'yi paket yöneticisi aracılığıyla da yükleyebilirsiniz.

    macOS için, aşağıdakileri kullanarak Node.js'yi paket yöneticisi aracılığıyla yükleyebilirsiniz. talimatlar.

    Windows için, Node.js'yi aşağıdakileri kullanarak paket yöneticisi aracılığıyla yükleyebilirsiniz. talimatlar.

  • kullanıyorsanız, AWS CDK v2 önceden yüklenmiştir. AWS Bulut9 IDE. AWS Cloud9 IDE kullanıyorsanız bu adımı atlayabilirsiniz. Geliştirme makinesinde AWS CDK kurulu değilse, Node Package Manager komutunu kullanarak AWS CDK v2'yi global olarak kurun npm install -g aws-cdk. Bu adım, Node.js'nin geliştirme makinesine yüklenmesini gerektirir.
  • AWS CDK kullanarak AWS kaynaklarına erişmek ve bunları oluşturmak için AWS kimlik bilgilerinizi yapılandırın. Talimatlar için bkz. Kimlik bilgilerini ve bölgeyi belirtme.
  • Atomic Cüzdanı indirin : SEOSS veri kümesi 33 açık kaynaklı yazılım projesinin gereksinimleri, hata raporları, kod geçmişi ve izleme bağlantılarından oluşur. Dosya 'yı kaydet dataverse_files.zip yerel makinenizde.

SEOSS veri kümesi

AWS CDK eğitim yığınını dağıtın

AWS CDK dağıtımı için eğitim yığınıyla başlıyoruz. Aşağıdaki adımları tamamlayın:

  1. GitHub deposunu klonlayın:
$ git clone https://github.com/aws-samples/amazon-comprehend-custom-automate-classification-it-service-request.git

  1. gidin amazon-comprehend-custom-automate-classification-it-service-request Klasör:
$ cd amazon-comprehend-custom-automate-classification-it-service-request/

Aşağıdaki tüm komutlar içinde çalıştırılır amazon-comprehend-custom-automate-classification-it-service-request dizin.

  1. amazon-comprehend-custom-automate-classification-it-service-request dizininde Python sanal ortamını başlatın ve gereksinimler.txt dosyasını pip ile kurun:
$ python3 -m venv .venv
$ source .venv/bin/activate
$ pip install -r requirements.txt

  1. AWS CDK'yi belirli bir AWS hesabında ve Bölgesinde ilk kez kullanıyorsanız, aşağıdaki talimatlara bakın: AWS CDK ortamınızı önyükleme:
$ cdk bootstrap aws:///

  1. Bu çözüm için CloudFormation şablonlarını kullanarak sentezleyin. cdk synth ve kullan cdk deploy daha önce bahsedilen AWS kaynaklarını oluşturmak için:
$ cdk synth
$ cdk deploy VPCStack EFSStack S3Stack SNSStack ExtractLoadTransformEndPointCreateStack --parameters SNSStack:emailaddressarnnotification=

girdikten sonra cdk deploy, AWS CDK, cdk dağıtım komutunda çağrılan yığınların her biri için değişiklikleri dağıtmak isteyip istemediğinizi sorar.

  1. Keşfet y yığın oluşturma istemlerinin her biri için cdk konuşlandırma adımı bu yığınları oluşturur. Sizin tarafınızdan sağlanan e-posta adresini, cdk dağıtımının bir parçası olarak oluşturulan SNS konusuna abone olun.
  2. cdk dağıtımı başarıyla tamamlandıktan sonra, adlı bir klasör oluşturun. raw_data S3 kovasında comprehendcustom---s3stack.
  3. SEOSS veri kümesini yükleyin dataverse_files.zip Bu klasöre daha önce indirdiğiniz

Yükleme tamamlandıktan sonra çözüm, etl_lambda çıkarma, dönüştürme ve yükleme (ETL) sürecini başlatmak için bir Amazon S3 olay tetikleyicisi kullanan işlev. ETL işlemi başarıyla tamamlandıktan sonra, SNS konusuna bir mesaj gönderilir. train_classifier_lambda işlev. Bu işlev, bir Amazon Comprehend özel sınıflandırıcı modeli eğitimini tetikler. Modelinizi eksiksiz SEOSS veri kümesi üzerinde eğitip eğitmemenize bağlı olarak, eğitim 10 saate kadar sürebilir. Eğitim süreci tamamlandığında Amazon Comprehend şunları yükler: model.tar.gz dosyaya output_data S3 kovasındaki önek.

Bu yükleme şunları tetikler: extract_comprehend_model_name_lambda ARN özel sınıflandırıcı modelini çıkaran ve daha önce abone olduğunuz e-posta adresine gönderen bir S3 olay tetikleyicisi kullanan işlev. Bu özel sınıflandırıcı model ARN daha sonra çıkarım yığınını oluşturmak için kullanılır. Model eğitimi tamamlandığında, Amazon Comprehend konsolundaki sürüm ayrıntıları bölümüne giderek (aşağıdaki ekran görüntüsüne bakın) veya Amazon Comprehend'i kullanarak özel sınıflandırıcı modelinin performans ölçümlerini görüntüleyebilirsiniz. Boto3 SDK'sı.

Performans metrikleri

AWS CDK çıkarım yığınını dağıtın

Artık çıkarım yığınını dağıtmaya hazırsınız.

  1. Aldığınız e-postadan özel sınıflandırıcı model ARN'yi kopyalayın ve aşağıdakileri kullanın cdk deploy çıkarım yığınını oluşturma komutu.

Bu komut, yalnızca execute-api:Invoke IAM ayrıcalığına sahip bir AWS kullanıcı kimliği veya IAM rolüyle çıkarım için kullandığınız bir IAM yetkilendiricisi tarafından güvence altına alınmış bir API Gateway REST API'sini dağıtır. Aşağıdaki cdk dağıtım komutu, çıkarım yığınını dağıtır. Bu yığın, AWS CDK'sini kullanır sağlayıcı çerçevesi Amazon Comprehend uç noktasını özel bir kaynak olarak oluşturmak, böylece Amazon Comprehend uç noktasının oluşturulması, silinmesi ve güncellenmesi, cdk dağıtım ve cdk yok etme komutları kullanılarak çıkarım yığını yaşam döngüsünün bir parçası olarak yapılabilir.

10 saate kadar sürebilen model eğitimi tamamlandıktan sonra aşağıdaki komutu çalıştırmanız gerektiğinden, daha önceki bir adımda başlattığınız Python sanal ortamında olduğunuzdan emin olun. amazon-comprehend-custom-automate-classification-it-service-request dizin:

$ cdk deploy APIGWInferenceStack --parameters APIGWInferenceStack:documentclassifierarn=

Örneğin:

$ cdk deploy APIGWInferenceStack --parameters APIGWInferenceStack:documentclassifierarn=arn:aws:comprehend:us-east-2:111122223333:document-classifier/ComprehendCustomClassifier-11111111-2222-3333-4444-abc5d67e891f/version/v1

  1. Sonra cdk deploy komut başarıyla tamamlandı, kopyalayın APIGWInferenceStack.ComprehendCustomClassfierInvokeAPI konsol çıktısından değer ve bu REST API'sini bir istemci makineden veya bir üçüncü taraf uygulamasından çıkarımlar oluşturmak için kullanın. execute-api:Invoke IAM ayrıcalığı. Bu çözümü us-east-2'de çalıştırıyorsanız, bu REST API'nin biçimi https://.execute-api.us-east-2.amazonaws.com/prod/invokecomprehendV1.

Alternatif olarak, test istemcisini kullanabilirsiniz. apiclientinvoke.py özel sınıflandırıcı modeline bir istek göndermek için GitHub deposundan. apiclientinvoke.py'yi kullanmadan önce aşağıdaki ön koşulların mevcut olduğundan emin olun:

  • Sende var boto3 ve requests İstemci makinede pip kullanılarak kurulan Python paketi.
  • Boto3 kimlik bilgilerini yapılandırdınız. Varsayılan olarak, test istemcisi default adlı bir profilin mevcut olduğunu varsayar ve execute-api:Invoke REST API'sinde IAM ayrıcalığı.
  • SigV4Auth, REST API'nin dağıtıldığı Bölgeye işaret eder. Güncelle değer us-east-2 in apiclientinvoke.py REST API'niz us-east-2'de konuşlandırılmışsa.
  • sen atadın raw_data sınıf tahminini veya sınıflandırma talebini yapmak istediğiniz metni içeren değişken:
raw_data="""Spark is a unified analytics engine for large-scale data processing. It provides high-level APIs in Scala, Java, Python, and R, and an optimized engine that supports general computation graphs for data analysis."""

  • sen atadın restapi daha önce kopyalanan REST API ile değişken:

restapi="https://.execute-api.us-east-2.amazonaws.com/prod/invokecomprehendV1"

  1. Çalıştır apiclientinvoke.py önceki güncellemelerden sonra:
$ python3 apiclientinvoke.py

Özel sınıflandırıcı modelinden aşağıdaki yanıtı alırsınız:

{
 "statusCode": 200,
 "body": [
	{
	 "Name": "SPARK",
	 "Score": 0.9999773502349854
	},
	{
	 "Name": "HIVE",
	 "Score": 1.1613215974648483e-05
	},
	{
	 "Name": "DROOLS",
	 "Score": 1.1110682862636168e-06
	}
   ]
}

Amazon Comprehend, doğru şekilde ilişkilendirdiği her etiket için güven puanları döndürür. Hizmet bir etiket konusunda oldukça eminse puan 1'e yakın olacaktır. Bu nedenle, SEOSS veri kümesi kullanılarak eğitilmiş Amazon Comprehend özel sınıflandırıcı modeli için özel sınıflandırıcı modeli metnin SPARK sınıfına ait olduğunu tahmin eder. Amazon Comprehend özel sınıflandırıcı modeli tarafından döndürülen bu sınıflandırma, daha sonra BT hizmeti isteklerini sınıflandırmak veya BT hizmeti isteklerinin doğru kategorisini tahmin etmek için kullanılabilir, böylece manuel hataları veya hizmet isteklerinin yanlış sınıflandırılmasını azaltır.

Temizlemek

Eğitim yığınının ve çıkarım yığınının bir parçası olarak oluşturulan bu gönderide oluşturulan tüm kaynakları temizlemek için aşağıdaki komutu kullanın. Bu komut, önceki cdk dağıtım komutlarının bir parçası olarak oluşturulan tüm AWS kaynaklarını siler:

$ cdk destroy --all

Sonuç

Bu yayında, son kullanıcı tarafından gönderilen talebin konusuna veya açıklamasına göre BT hizmeti taleplerinin kategorisini tahmin etmek için kuruluşların Amazon Comprehend özel sınıflandırmasını kullanarak denetimli bir ML modelini nasıl uygulayabileceklerini gösterdik. Özel bir sınıflandırıcı modeli oluşturup eğittikten sonra, bir uç nokta oluşturarak özel sınıflandırma için gerçek zamanlı analiz çalıştırabilirsiniz. Bu modeli bir Amazon Comprehend uç noktasına dağıttıktan sonra, üçüncü taraf uygulamalar veya BT hizmet yönetimi araçları da dahil olmak üzere diğer istemci makineler tarafından gerçek zamanlı çıkarımı çalıştırmak için kullanılabilir. Daha sonra bu çıkarımı, kusur kategorisini tahmin etmek ve manuel hataları veya biletlerin yanlış sınıflandırmalarını azaltmak için kullanabilirsiniz. Bu, çağrı çözümü için gecikmelerin azaltılmasına yardımcı olur ve çözünürlük doğruluğunu ve müşteri üretkenliğini artırır, bu da sonuçta müşteri memnuniyetinin artmasıyla sonuçlanır.

Bu gönderideki kavramları, iş departmanları, müşteri hizmetleri aracıları ve Katman 2/3 BT desteği gibi çeşitli dahili ekiplere iş veya BT biletlerinin son kullanıcılar tarafından veya otomatikleştirilmiş yöntemlerle oluşturulması gibi diğer kullanım durumlarını kapsayacak şekilde genişletebilirsiniz. anlamına geliyor.

Referanslar

  • Rath, Michael; Mäder, Patrick, 2019, “SEOSS Veri Kümesi – Gereksinimler, Hata Raporları, Kod Geçmişi ve Tüm Projeler için İzleme Bağlantıları”, https://doi.org/10.7910/DVN/PDDZ4Q, Harvard Veri Evreni, V1

Yazarlar Hakkında

Amazon Comprehend özel sınıflandırıcısı PlatoBlockchain Data Intelligence ile BT hizmeti isteklerinin sınıflandırılmasını otomatikleştirin. Dikey Arama. Ai.Arnab Çakraborty AWS'de Cincinnati, Ohio merkezli bir Kıdemli Çözüm Mimarıdır. Kurumsal ve Çözüm mimarisi, Veri analitiği, Sunucusuz ve Makine Öğrenimi konularında tutkulu. Boş zamanlarında film, gezi programları ve spor izlemekten hoşlanır.

ViralAmazon Comprehend özel sınıflandırıcısı PlatoBlockchain Data Intelligence ile BT hizmeti isteklerinin sınıflandırılmasını otomatikleştirin. Dikey Arama. Ai. Desai AWS'de Baş Çözüm Mimarıdır. Bilgi teknolojisindeki 25 yılı aşkın deneyimiyle, müşterilerin AWS'yi benimsemelerine ve mimarilerini modernleştirmelerine yardımcı oluyor. Doğa yürüyüşü yapmayı sever ve müşterilerle AWS'ye dair her konuda derinlere dalmaktan keyif alır.

Zaman Damgası:

Den fazla AWS Makine Öğrenimi