Düzen anlama ve alan çıkarımının üç katmanı
Sayfadan metin elde etme, düzeni çözme ve alan değeri türetme katmanlarını ayırmayı, uzun belgeleri kanıtı bozmadan parçalamayı ve alan bazında doğruluk ölçmeyi öğretir.
Önkoşul: Artificial Intelligence, Machine Learning
BU DERSİN SONUNDA
- Bir çıkarım hatasının kaynak, düzen veya yorum katmanından hangisinde doğduğunu teşhis etmek
- Tablo, çok sütunlu ve çok sayfalı yapıları kanıtı koruyacak biçimde parçalamak
- Alan bazlı ve belge bazlı doğruluğu ayrı ayrı hesaplamak
- Karşılaştırma öncesi normalleştirme kurallarını yazılı hale getirmek
- 1
Teori
Kavramın çalışma mantığı
- 2
Örnek
Gerçek bir senaryo üzerinde gösterim
- 3
Lab
Uygulamalı alıştırma
- 4
Test
Kısa ölçüm
- 5
Proje
Rotadaki projeye katkı
Kısa cevap
Alan çıkarımı tek bir iş değil, üst üste binen üç iştir: sayfadan metni ve konumunu elde etmek, sayfanın düzenini (okuma sırası, sütun, tablo ızgarası) çözmek ve çözülen metinden alan değerini türetmek. Doğruluğu artırmanın ilk adımı model değiştirmek değil, hatanın bu üç katmandan hangisinde doğduğunu ayırmaktır.
Teori: üç katman ve hatanın kaynağı#
Kaynak katmanı belgenin fiziğidir. Dijital olarak üretilmiş bir belgede metin, konumuyla birlikte zaten gömülüdür ve doğrudan okunabilir; taranmış bir sayfada yalnızca piksel vardır, metin optik karakter tanımayla üretilir. Bu aşamada üretilen her hata sonraki katmanlara aynen taşınır ve orada düzeltilemez. Gömülü metnin bulunması da yetmez: bozuk font eşlemesiyle üretilmiş bir belgede kopyalanan metin okunaksız çıkabilir.
Düzen katmanı sayfanın geometrisidir. Metin akışı görsel düzeni taşımaz: iki sütunlu bir sayfada satırlar birbirine karışır, tablo hücreleri tek bir satır dizisine iner, üstbilgi gövdenin ortasına düşer. Düzen çözümü metin parçalarına konum kutusu ve rol atar: başlık, hücre, dipnot, imza alanı. Görsel ve dilsel girdiyi birlikte işleyen modeller bu konum bilgisini doğrudan kullanır; yalnızca düz metin gören bir model "Toplam" ile sayının aynı satırda olduğunu ancak metin sırasından tahmin eder.
Yorum katmanı ilişkidir. Alan değeri, etiket ile değer arasındaki bağdan türetilir: "Toplam"ın sağındaki sayı, "Fatura tarihi"nin altındaki tarih. Bu katmanın hatası genellikle okuma hatası değil seçim hatasıdır; iki doğru okunmuş sayıdan yanlış olanı alınır, ara toplam genel toplam sanılır. Bu yüzden yorum katmanı hataları en sinsileridir: çıktı biçimsel olarak kusursuz görünür.
Uygulamada: yapıya göre ele alış#
| Yapı | Nerede bozulur | Ele alış | Doğrulama ipucu |
|---|---|---|---|
| Tek sayfalık form | Etiket ile değerin eşleşmesi | Alan adının eş anlamlılarını listeleyin | Değerin kutusu etiketin sağında veya altında mı |
| Sayfaya taşan tablo | İkinci sayfada başlık yok, sütunlar kayar | Başlık satırını her sayfa parçasına kopyalayın | Satır sayısı ile toplam birbirini tutuyor mu |
| İki sütunlu düzen | Okuma sırası iki sütunu harmanlar | Sütunları ayırıp ayrı akış olarak işleyin | Cümleler yarıda kesilip başka konuya atlıyor mu |
| Kaşe, damga, el yazısı ek | Basılı metnin üstüne biner | Ayrı katman olarak işaretleyin; kritikse insana verin | Alanın kutusuyla çakışan başka kutu var mı |
| Koşullu veya boş alan | Boş alana komşu satırın değeri yazılır | Şemada "boş" meşru cevap olsun, kanıt zorunlu tutulsun | Değerin kutusu gerçekten o alanın yanında mı |
| Ekler ve kapak sayfaları | Alan yanlış sayfadan okunur | Önce sayfa rolünü sınıflayın | Çıkarılan alan hangi sayfadan geldi |
Uzun belgeyi parçalarken#
Alan çıkarımında parçalamanın amacı arama değil, alanın kanıtıyla birlikte tek parçada kalmasıdır. Sayfa ve bölüm sınırında bölün; satır veya cümle ortasından kesmek etiketi değerinden ayırır ve yorum katmanına çözülemez bir iş bırakır. Tabloda başlık satırı her parçaya kopyalanır, çünkü hücrenin anlamı sütun başlığından gelir. Her parçaya sayfa numarası ve bölüm yolu iliştirin: çıkarılan değerin nereden geldiğini gösterebilmenin tek yolu budur.
{
"belge": "fatura-000418",
"alanlar": [
{
"ad": "toplam_tutar",
"deger": "12450.00",
"para_birimi": "TRY",
"kanit": {
"sayfa": 2,
"kutu": [412, 980, 520, 1004],
"metin": "Genel Toplam 12.450,00"
}
},
{
"ad": "vergi_no",
"deger": null,
"kanit": null,
"not": "belgede bulunamadı"
}
]
}Ölçüm: alan bazında doğruluk#
- Alan doğruluğu: normalleştirme sonrası doğru değer oranı, her alan için ayrı hesaplanır.
- Doldurma ile atlama ayrımı: alan yanlış mı dolduruldu yoksa boş mu bırakıldı; ikisinin operasyonel maliyeti farklıdır.
- Belge düzeyinde tam doğruluk: bütün kritik alanları doğru olan belge oranı; operasyonun gerçekte hissettiği sayı budur.
- Katman etiketi: her hatanın yanına kaynak, düzen veya yorum etiketi yazın; düzeltme bütçesi bu dağılıma göre harcanır.
- Normalleştirme kuralları yazılı olsun: tarih biçimi, ondalık ayırıcı, para birimi ve unvan sonekleri karşılaştırmadan önce sabitlenir.
Sık yapılan hata#
Karakter düzeyindeki başarıyı alan düzeyindeki başarı sanmak. Bir sayfadaki karakterlerin ezici çoğunluğu doğru okunsa bile tek karakterlik kayma bir hesap numarasını, vergi numarasını veya tutarı geçersiz kılar; bu alanlarda kısmî doğruluk diye bir şey yoktur. İkinci yaygın hata, bütün alanları tek bir ortalamada toplamaktır: serbest açıklama alanındaki gürültü, tutar alanındaki hatayı ortalamanın içinde gizler.
LAB · UYGULAMALI ALIŞTIRMA
Yirmi belgede katman teşhisi yapın
- 1Kendi akışınızdan on dijital ve on taranmış belge seçin; ikisinde de aynı beş alanı hedefleyin (örneğin tarih, belge numarası, taraf, toplam, para birimi).
- 2Her belgede metni fareyle seçip kopyalamayı deneyin: seçilebiliyorsa gömülü metin katmanı vardır, seçilemiyorsa sayfa görüntüdür. Bu ayrımı listeye yazın.
- 3Kopyalayabildiğiniz belgelerin metnini düz metin dosyasına yapıştırın ve okuma sırasının bozulduğu yerleri işaretleyin: karışan sütunlar, tek satıra inen tablo satırları, gövdenin arasına düşen üstbilgi.
- 4Beş alanın doğru değerlerini belgeye bakarak elle doldurun; bu sizin referans kümenizdir.
- 5Şimdi yalnızca düz metin dosyasına bakarak aynı beş alanı doldurmayı deneyin, sayfayı açmadan. Belirsizleşen her alanı işaretleyin; bu, düz metin gören bir sistemin gördüğüdür.
- 6Alan bazlı ve belge bazlı doğruluğu ayrı yazın ve her hataya kaynak, düzen veya yorum etiketi koyup dağılımı çıkarın; metni hiç kopyalanamayan taranmış belgeler bu tabloda kaynak katmanı kaybı olarak sayılır, tablodan düşürülmez.
Beklenen çıktı
Beş alan için alan bazlı ve belge bazlı doğruluk tablosu, düz metne indirgendiğinde belirsizleşen alanların listesi ve katman etiketli hata dağılımı.
Sık sorulan sorular
Taranmış belgeyi kaynakta düzeltemiyorum; doğruluk tavanı nedir?
Tavanı taramanın kendisi koyar: çözünürlük, eğrilik, kontrast ve sıkıştırma bozuksa sonraki hiçbir katman bunu telafi edemez, çünkü kaynakta kaybolan bilgi geri gelmez. Bu yüzden tarama ayarını düzeltmek veya sayfayı düz yerleştirmek, sistem değiştirmeyi düşünmeden önce denenecek adımdır. Ölçüm tablonuzda tarama kalitesini ayrı bir sütun olarak tutun; hata dağılımı kaynak katmanında yığılıyorsa bunu orada görürsünüz.
Tabloları neden ayrı ele almak gerekiyor?
Tabloda anlam hücrenin konumundan gelir: bir sayının hangi sütuna ve hangi satıra ait olduğu metnin kendisinde yazmaz. Düz metne indirgenmiş tablo bu ilişkiyi kaybeder. Bu yüzden ya satır ve sütun indeksini koruyan bir temsil kullanılır ya da başlık satırı her parçaya kopyalanarak ilişki metnin içine taşınır.
Alan çıkarımı için özel bir model eğitmek gerekir mi?
Önce ölçün. Hataların çoğu kaynak veya düzen katmanındaysa eğitim işe yaramaz; girdinin düzeltilmesi gerekir. İnce ayar sisteme yeni bilgi eklemez, istenen çıktı biçimini ve alan adlandırmasını daha kararlı hale getirir. Kararı, etiketli örnek toplama maliyeti ile kalan hatanın maliyeti belirler.
LEARN
Belge Otomasyonu Uzmanı rotasına devam et
Dersler tek başına da okunabilir, ama sıralı ilerlemek önkoşul boşluklarını kapatır.
