1. Giriş
Document AI; belgeler ve e-postalar gibi yapılandırılmamış verileri alarak verilerin anlaşılmasını, analiz edilmesini ve kullanılmasını kolaylaştıran bir belge anlama çözümüdür.
Document AI Workbench sayesinde kendi eğitim verilerinizi kullanıp tamamen özelleştirilmiş modeller oluşturarak daha yüksek belge işleme doğruluğu elde edebilirsiniz.
Bu laboratuvarda Özel Belge Ayıklama işlemcisi oluşturacak, bir veri kümesini içe aktaracak, örnek belgeleri etiketleyecek ve işlemciyi eğiteceksiniz.
Bu laboratuvarda kullanılan belge veri kümesi, Kaggle'daki Sahte W-2 (ABD Vergi Formu) veri kümesinden, CC0: Kamu Alanı Lisansına sahip olan bir belgedir.
Ön koşullar
Bu codelab'de, diğer Document AI Codelab'lerinde sunulan içerikler temel alınır.
Devam etmeden önce aşağıdaki Codelab'leri tamamlamanız önerilir.
- Document AI (Python) ile Optik Karakter Tanıma (OCR)
- Document AI ile Form Ayrıştırma (Python)
- Document AI (Python) kullanan Özel İşlemciler
- Document AI işlemcilerini Python ile yönetme
- Document AI: Döngüdeki İnsan
- Document AI: Geliştirme
Neler öğreneceksiniz?
- Özel Belge Ayıklayıcı işlemcisi oluşturun.
- Ek açıklama aracını kullanarak Document AI eğitim verilerini etiketleyin.
- Yeni bir model sürümü eğitin.
- Yeni model sürümünün doğruluğunu değerlendirin.
Gerekenler
2. Kurulum
Bu codelab'de, Tanıtım Codelab'de listelenen Document AI Kurulum adımlarını tamamladığınız varsayılır.
Devam etmeden önce lütfen aşağıdaki adımları tamamlayın:
3. İşlemci Oluşturma
Öncelikle bu laboratuvarda kullanmak için bir Özel Belge Ayıklayıcı işlemcisi oluşturmanız gerekir.
- Konsolda Document AI Overview (Document AI'a Genel Bakış) sayfasına gidin.
- Özel İşlemci Oluştur'u tıklayın ve Özel Belge Ayıklayıcı'yı seçin.
- Hedefe
codelab-custom-extractor
adını (veya hatırlayacağınız başka bir ad) verin ve listeden en yakın bölgeyi seçin.
- İşleyicinizi oluşturmak için Oluştur'u tıklayın. İşlemciye Genel Bakış sayfasını görüyor olmanız gerekir.
4. Veri Kümesi Oluştur
Veri işleyeni eğitmek için, ayıklamak istediğimiz varlıkları tespit etmesine yardımcı olacak eğitim ve test verilerini içeren bir veri kümesi oluşturmamız gerekir.
- İşlemciye Genel Bakış sayfasında Veri Kümenizi Yapılandırın'ı tıklayın.
- Şu anda Veri Kümesini Yapılandır sayfasında olmalısınız. Eğitim dokümanlarını ve etiketlerini depolamak için kendi paketinizi belirtmek istiyorsanız Show Advanced Options (Gelişmiş Seçenekleri Göster) seçeneğini tıklayın. Aksi takdirde, Devam'ı tıklamanız yeterlidir.
- Veri kümesinin oluşturulmasını bekleyin. Oluşturulan veri kümesi sizi Eğitim sayfasına yönlendirmelidir.
5. Test Dokümanı İçe Aktar
Şimdi örnek bir W2 pdf dosyasını veri kümemize aktaralım.
- Dokümanları İçe Aktar'ı tıklayın.
- Bu laboratuvarda kullanabileceğiniz örnek bir PDF'miz var. Aşağıdaki bağlantıyı kopyalayıp Kaynak Yolu kutusuna yapıştırın. "Verileri bölme"den ayrılın "Atanmamış" olarak . Diğer tüm kutuları işaretlemeyin. Import'u (İçe aktar) tıklayın.
cloud-samples-data/documentai/codelabs/custom/extractor/pdfs
- Dokümanın içe aktarılmasını bekleyin. Bu işlem 1 dakikadan daha kısa sürer.
- İçe aktarma işlemi tamamlandığında Eğitim sayfasında Dokümanı görürsünüz.
6. Etiket Oluştur
Yeni bir işlemci türü oluşturduğumuzdan, hangi alanları çıkarmak istediğimizi Document AI'a bildirmek için özel etiketler oluşturmamız gerekecek.
- Sol alt köşedeki Şemayı Düzenle'yi tıklayın.
- Schema Management konsolundasınız.
- Etiket Oluştur düğmesini kullanarak aşağıdaki etiketleri oluşturun.
Ad | Veri Türü | Tekrar |
| Sayı | Zorunlu birden çok |
| Düz Metin | Zorunlu birden çok |
| Düz Metin | Zorunlu birden çok |
| Adres | Zorunlu birden çok |
| Para | Zorunlu birden çok |
| Para | Zorunlu birden çok |
| Para | Zorunlu birden çok |
| Para | Zorunlu birden çok |
- Tamamlandığında Console aşağıdaki gibi görünecektir. İşiniz bittiğinde Kaydet'i tıklayın.
- Eğitim sayfasına dönmek için Geri okunu tıklayın. Oluşturduğumuz etiketlerin sol alt köşede göründüğüne dikkat edin.
7. Test Dokümanını Etiketle
Ardından, ayıklamak istediğimiz varlıklar için metin öğelerini ve etiketleri belirleyeceğiz. Bu etiketler, bu belirli belge yapısını ayrıştıracak ve doğru türleri tanımlayacak şekilde modelimizi eğitmek için kullanılacaktır.
- Etiketleme konsoluna girmek için daha önce içe aktardığımız dokümanı çift tıklayın. Şuna benzer bir görünümde olacaktır.
- "Sınırlayıcı Kutu"yu tıklayın. Araç, ardından "1173038" metnini vurgulayın ve
CONTROL_NUMBER
etiketini atayın. Etiket adlarını aramak için metin filtresini kullanabilirsiniz.
- Diğer
CONTROL_NUMBER
örneği için tamamlayın, etiketlendikten sonra şu şekilde görünecektir.
- Aşağıdaki metin değerlerinin tüm örneklerini vurgulayın ve uygun etiketleri atayın.
Etiket Adı | Metin |
| 24-3188810 |
| 19127,2 |
| 5093,71 |
| 66584,46 |
| 56081,18 |
| 714-32-2105 |
| Adams, Chase and Gilbert Inc 972 Gonzalez Dam South Katherine NC 95869-5178 |
- Tamamlandığında etiketlenen belge şu şekilde görünmelidir. Dokümandaki sınırlayıcı kutuyu veya sol taraftaki menüde etiket adını/değerini tıklayarak bu etiketlerde ayarlamalar yapabileceğinizi unutmayın. Etiketleme işlemini tamamladığınızda Etiketli Olarak İşaretle'yi tıklayın, ardından Veri Kümesi yönetim konsoluna dönün.
8. Eğitim Setine Doküman Ata
Şimdi Veri Kümesi yönetim konsoluna geri dönmüş olmanız gerekir. Etiketli ve Etiketsiz doküman sayısının ve etiket başına örnek sayısının değiştiğine dikkat edin.
- Bu belgeyi "Eğitim" veya "Test" yapın ayarlandı. Belgeyi, Sete Ata'yı ve ardından Eğitim'i tıklayın.
- Veri Bölme sayılarının değiştiğini fark edeceksiniz.
9. Önceden Etiketlenmiş Verileri İçe Aktar
Document AI Özel İşlemcileri için hem eğitim hem de test setlerinde en az 10 belge ve her grupta her etiketin 10 örneği bulunmalıdır.
En iyi performans için her etiketten en az 50 örnek olacak şekilde, her grupta en az 50 dokümanın olması önerilir. Daha fazla eğitim verisi, genellikle daha yüksek doğruluk anlamına gelir.
Tüm dokümanları manuel olarak etiketlemek uzun sürer. Bu nedenle, bu laboratuvar için içe aktarabileceğiniz önceden etiketlenmiş bazı dokümanlarımız mevcuttur.
Önceden etiketlenmiş doküman dosyalarını Document.json
biçiminde içe aktarabilirsiniz. Bunlar, bir işleyenin çağrılması ve Human in the Loop (HITL) (Döngüdeki İnsan İnsanı) aracını kullanarak doğruluğun doğrulanmasıyla sağlanabilir.
negatif bir kenara
NOT: Önceden etiketlenmiş verileri içe aktarırken bir model eğitiminden önce ek açıklamaları manuel olarak incelemeniz kesinlikle önerilir.
- Dokümanları İçe Aktar'ı tıklayın.
- Aşağıdaki Cloud Storage yolunu kopyalayıp yapıştırın ve Eğitim grubuna atayın.
cloud-samples-data/documentai/codelabs/custom/extractor/training
- Başka Bir Klasör Ekle'yi tıklayın. Ardından aşağıdaki Cloud Storage yolunu Kopyalayın/Yapıştırın ve Test grubuna atayın.
cloud-samples-data/documentai/codelabs/custom/extractor/test
- İçe Aktar'ı tıklayın ve dokümanların içe aktarılmasını bekleyin. İşlenecek daha fazla belge olduğu için bu işlem geçen zamandan daha uzun sürecek. Bu işlem yaklaşık 6 dakika sürer. Bu sayfadan ayrılıp daha sonra geri dönebilirsiniz.
- İşlem tamamlandığında Eğitim sayfasında belgeleri göreceksiniz.
10. Modeli Eğitme
Artık Özel Belge Ayıklayıcımızı eğitmeye hazırız.
- Yeni Sürümü Eğit'i tıklayın
- Kullandığınız sürüme kolay akılda kalacak bir ad verin (ör.
codelab-custom-1
). "Eğitim Yöntemi" için "Sıfırdan eğit"i seçin.
- (İsteğe bağlı) Veri kümenizdeki etiketlerle ilgili metrikleri görmek için Etiket İstatistiklerini Görüntüle'yi de seçebilirsiniz.
- Eğitim sürecini başlatmak için Eğitimi Başlat'ı tıklayın. Veri kümesi yönetimi sayfasına yönlendirilirsiniz. Eğitim durumunu sağ tarafta görebilirsiniz. Eğitimin tamamlanması birkaç saat sürer. Bu sayfadan ayrılıp daha sonra geri dönebilirsiniz.
- Sürüm adını tıklarsanız Sürümleri Yönet sayfasına yönlendirilirsiniz. Burada, Sürüm Kimliği ve Eğitim İşi'nin mevcut durumu gösterilir.
11. Yeni Model Sürümünü Test Etme
Eğitim İşi tamamlandıktan sonra (testlerim yaklaşık 1 saat sürdü), artık yeni model sürümünü test edebilir ve tahminler için kullanmaya başlayabilirsiniz.
- Sürümleri Yönet sayfasına gidin. Burada mevcut durumu ve F1 puanını görebilirsiniz.
- Bu model sürümünü kullanılabilmesi için dağıtmamız gerekiyor. Sağ taraftaki dikey noktaları tıklayın ve Sürümü Dağıt'ı seçin.
- Sürümün dağıtılmasını beklerken pop-up pencerede Dağıt'ı seçin. Bu işlemin tamamlanması birkaç dakika sürer. Dağıtımdan sonra bu sürümü Varsayılan Sürüm olarak ayarlayabilirsiniz.
- Dağıtım tamamlandıktan sonra Değerlendir sekmesine gidin. Bu sayfada tüm dokümanın yanı sıra tek tek etiketler için F1 puanı, Hassasiyet ve Geri Çağırma gibi değerlendirme metriklerini görüntüleyebilirsiniz. Bu metrikler hakkında daha fazla bilgiye AutoML Belgeleri'nden ulaşabilirsiniz.
- Aşağıda bağlantısı verilen PDF dosyasını indirin. Bu, Eğitim veya Test setine dahil edilmeyen örnek bir W2'dir.
- Test Dokümanı Yükle'yi tıklayıp PDF dosyasını seçin.
- Çıkarılan varlıklar aşağıdakine benzer bir görünümde olacaktır.
12. İsteğe bağlı: Yeni içe aktarılan dokümanları otomatik olarak etiketleme
Eğitilmiş bir işlemci sürümünü dağıttıktan sonra, yeni dokümanları içe aktarırken etiketleme işleminde zaman kazanmak için Otomatik etiketleme özelliğini kullanabilirsiniz.
- Tren sayfasında Dokümanları İçe Aktar'ı tıklayın.
- Aşağıdaki yolunu kopyalayıp yapıştırın. Bu dizin 5 etiketsiz W2 PDF içerir. Veri bölme açılır listesinden Eğitim'i seçin.
cloud-samples-data/documentai/Custom/W2/AutoLabel
- Otomatik etiketleme bölümünde Otomatik etiketlemeyle içe aktar onay kutusunu seçin.
- Dokümanları etiketlemek için mevcut bir işlemci sürümünü seçin.
- Örneğin:
2af620b2fd4d1fcf
- İçe Aktar'ı tıklayın ve dokümanların içe aktarılmasını bekleyin. Bu sayfadan ayrılıp daha sonra geri dönebilirsiniz.
- İşlem tamamlandığında belgeler, Eğitim sayfasındaki Otomatik etiketlenmiş bölümünde görünür.
- Otomatik olarak etiketlenen belgeleri, etiketli olarak işaretlemeden eğitim veya test amacıyla kullanamazsınız. Otomatik olarak etiketlenmiş dokümanları görüntülemek için Otomatik etiketli bölümüne gidin.
- Etiketleme konsoluna gireceğiniz ilk dokümanı seçin.
- Etiketleri, sınırlayıcı kutuları ve değerleri kontrol ederek doğru olduklarından emin olun. Dahil edilmeyen tüm değerleri etiketleyin.
- İşlemi tamamladığınızda Etiketli olarak işaretle'yi seçin.
- Otomatik olarak etiketlenen her belge için etiket doğrulamasını tekrarlayın, ardından verileri eğitimde kullanmak üzere Eğitim sayfasına dönün.
13. Sonuç
Tebrikler, Özel Belge Ayıklayıcı işlemcisini eğitmek için Document AI'ı başarıyla kullandınız. Artık bu işlemciyi, herhangi bir Uzman İşleyen'de olduğu gibi bu biçimdeki dokümanları ayrıştırmak için kullanabilirsiniz.
İşleme yanıtının nasıl ele alınacağını incelemek için Uzman İşleyenler Codelab'e bakabilirsiniz.
Temizleme
Bu eğiticide kullanılan kaynaklar için Google Cloud hesabınızın ücretlendirilmesini önlemek amacıyla:
- Cloud Console'da Kaynakları yönetin sayfasına gidin.
- Proje listesinden projenizi seçin ve ardından Sil'i tıklayın.
- İletişim kutusuna proje kimliğini yazın ve projeyi silmek için Kapat'ı tıklayın.
Kaynaklar
- Document AI Workbench Belgeleri
- Belgelerin Geleceği - YouTube Oynatma Listesi
- Document AI Belgeleri
- Document AI Python İstemci Kitaplığı
- Document AI Örnekleri
Lisans
Bu çalışma, Creative Commons Attribution 2.0 Genel Amaçlı Lisans ile lisans altına alınmıştır.