Finansal Hizmetlerde Dolandırıcılık Tespitini Grafik Sinir Ağları ile Güçlendirmek

Not: Bu blog yazısı, 28 Ekim 2024’te ilk kez yayımlandı, ancak yeni güncellemeleri yansıtmak üzere düzenlenmiştir.

Finansal hizmetlerdeki dolandırıcılık büyük bir sorun teşkil ediyor. Dünya genelinde kredi kartı işlemi dolandırıcılığından kaynaklanan finansal kayıpların, Nilson Raporu’na göre, önümüzdeki 10 yıl içinde 403,88 milyar dolara ulaşması bekleniyor. Kimlik hırsızlığı, hesap ele geçirme ve kara para aklama gibi diğer dolandırıcılık türleri de önemli endişe kaynağıdır; ancak, kredi kartı dolandırıcılığı, yüksek işlem hacmi ve geniş saldırı yüzeyi nedeniyle dolandırıcılar için özel bir hedef oluşturur.

Geleneksel dolandırıcılık tespit yöntemleri, kurallar esasına dayalı sistemler veya istatistiksel yöntemlere dayandığından, reaktiftir ve giderek karmaşık dolandırıcılık faaliyetlerini tespit etmede etkisiz hale gelmektedir. Veri hacimleri arttıkça ve dolandırıcılık taktikleri evrildikçe, finansal kurumların dolandırıcılık işlemlerini tespit etmek ve önlemek için daha proaktif ve zeki yaklaşımlara ihtiyacı vardır.

Yapay zeka, devasa işlem verilerini analiz etmek, anormal davranışları belirlemek ve dolandırıcılığı gösteren kalıpları tanımak için gerekli araçları sunar. Tespit yöntemlerinde iyileştirmeler yapılmış olsa da, yanlış pozitifleri azaltmak ve dolandırıcılık tespitindeki operasyonel verimliliği artırmak için daha sofistike tekniklere ihtiyaç vardır.

NVIDIA’nın finansal dolandırıcılık tespitine yönelik AI Planı, finansal hizmetlerde karmaşık dolandırıcılık faaliyetlerini yüksek doğrulukla tespit etmek ve önlemek için graf sinir ağları (GNN) kullanmaktadır.

Graf Sinir Ağları ile Dolandırıcılık Tespiti

Geleneksel makine öğrenimi (ML) modelleri, bireysel işlemlerde anomali tespiti yapmakta etkilidir, ancak dolandırıcılık nadiren yalnızca bir işlemde gerçekleşir. Dolandırıcılar, hesaplar ve işlemler arasındaki bağlantıları kullanarak faaliyetlerini gizlemektedir. Burada GNN’ler devreye giriyor.

GNN’ler, grafik yapısında verilerle çalışmak üzere tasarlandığı için, finansal dolandırıcılığı tespit etmede idealdir. Sadece bireysel işlemleri analiz etmek yerine, GNN’ler hesapları, işlemleri ve cihazları birbirine bağlı düğümler olarak değerlendirir ve tüm ağ boyunca şüpheli kalıpları ortaya çıkarır.

Örneğin, bir hesap normal görünse bile, GNN’ler bu hesabın bilinen dolandırıcılara veya yüksek riskli varlıklara bağlı olması durumunda bunu belirleyebilir; bu, geleneksel modellerin gözünden kaçabilecek tehditleri gün yüzüne çıkarır.

GNN’lerin XGBoost ile birleştirilmesi, her iki dünyanın en iyisini sunar:

  • Daha yüksek doğruluk: GNN’ler, işlemler arasındaki bağlantılara bakarak dolandırıcılık kalıplarını tespit eder; bu da onu yalnızca bireysel işlemleri incelemekten daha etkili kılar.
  • Daha az yanlış pozitif: Daha fazla bağlam ile, GNN’ler bir işlemi genel çerçeve içinde değerlendirir ve bu nedenle normal bir işlemi şüpheli olarak işaretleme olasılığı düşer.
  • Daha iyi ölçeklenebilirlik: GNN’ler büyük veri ağlarını etkili bir şekilde işlemek üzere tasarlanmıştır; bu nedenle XGBoost ile birleştirildiğinde, büyük ölçekte gerçek zamanlı dolandırıcılık tespiti sağlar.
  • Açıklanabilirlik: GNN’lerin XGBoost ile birleştirilmesi, derin öğrenmenin gücünü, karar ağaçlarının açıklanabilirliği ile bir araya getirir.

NVIDIA AI Planı ile GNN’ler Kullanarak Finansal Dolandırıcılık Tespiti

NVIDIA, geleneksel ML ile GNN’lerin gücünü birleştiren bir referans örneği geliştirmiştir. Bu süreç, standart bir XGBoost yaklaşımını temel alırken, doğruluğu önemli ölçüde artırmak için GNN gömme işlemleri ile güçlendirilmiştir. Belirli metrikler farklılık gösterebilir; ancak, yalnızca %1’lik bir iyileşme bile milyonlarca dolarlık tasarruf anlamına gelebilir ve bu nedenle GNN’ler dolandırıcılık tespit sistemlerinin kritik bir bileşeni haline gelmektedir.

Bu referans mimarisi iki ana bölümden oluşmaktadır: model oluşturma süreci ve çıkarım süreci. Bu sürecin akış şeması Şekil 1’de gösterilmiştir.

A flowchart showing the NVIDIA AI Blueprint for financial fraud detection, with data preparation steps on the left, and model building and inference on the right.
Şekil 1. NVIDIA AI Planı’nın finansal dolandırıcılık tespiti süreci

GNN’ler ve XGBoost ile Model Oluşturma

Dolandırıcılık, çıkarım aşamasında tespit edilir; ancak öncesinde bir model oluşturulması gerekmektedir. Model oluşturma süreci, finansal-dolandırıcılık-eğitim konteynerinin içinde yer alır ve GNN gömme işlemlerinden oluşturulan bir XGBoost modeli üretir. Bu konteyner, hem bir Veri Özellik Mağazası (tablolar verisi) hem de bir Grafik Mağazası (yapısal veri) oluşturma karmaşasını gizler. Konteynerin sağladığı önemli bir avantaj, en iyi performans ve doğruluğu sağlamak için optimize edilmiş GNN çerçevesini kullanmasıdır.

Model oluşturma iş akışı (Şekil 2) aşağıda gösterilmiştir ve üç ana adımdan oluşmaktadır: veri hazırlama, yapılandırma dosyası oluşturma ve konteyneri çalıştırma.

Şekil 2. Ödeme dolandırıcılığı tespiti için model oluşturma iş akışı

Adım 1: Veri Hazırlama

Gelen işlem verileri, NVIDIA’nın CUDA-X kütüphanelerinin bir parçası olan RAPIDS gibi araçlarla etkin bir şekilde temizlenir ve hazırlanır. Veri hazırlama ve özellik mühendisliği, modelin performansını önemli ölçüde etkiler. Bu adım, verilerin tam anlamıyla anlaşılmasını gerektirir ve en iyi sonuçları elde etmek için birkaç deneme gerektirebilir. finansal-dolandırıcılık-eğitim konteynerinin belgeleri, verilerin nasıl hazırlanacağına dair öneriler sunmaktadır.

Bir veri hazırlama betiği oluşturulduktan sonra, iş akışına otomatikleştirilebilir. Veri hazırlama süreci, yeni veriler eklendikçe veya veriler büyüdükçe güncellenmelidir. Bu iş akışının bir sonraki yinelemesi, NVIDIA RAPIDS Accelerator for Apache Spark kullanarak veri işleme bölümünü hızlandıracaktır.

Adım 2: Yapılandırma Dosyası Oluşturma

finansal-dolandırıcılık-eğitim konteynerinin, modelin nasıl eğitileceğini ve oluşturulacağını belirtmek üzere JSON formatında bir yapılandırma dosyasının oluşturulmasını gerektirir. Yapılandırma dosyasındaki veriler iki bölümden oluşur: (A) “yollar”, verilerin okunacağı ve modelin kaydedileceği dizin yollarını tanımlayan bir bölüm ve (B) “modeller”, modelin eğitimi ve oluşturulmasında kullanılan parametreleri tanımlayan bir bölüm.

Yollar bölümü aşağıdaki iki parametreyi tanımlar:

  • data_dir: eğitimi verinin yerleştirildiği konteyner içindeki yol.
  • output_dir: eğitimden sonra modellerin kaydedileceği konteyner içindeki yol.

Model bölümü, modelin nasıl eğitileceğini tanımlar ve iki parçaya ayrılabilir: Kind bölümü ve Model Yapılandırma Şeması.

Kind bölümünde iki argüman tanımlanır:

  • kind: bu, GraphSAGE_XGBoost veya XGBoost olabilir.
  • gpu: şu anda yalnızca “tek” ile sınırlıdır.

Konteyner, doğrudan giriş özelliklerinden XGBoost modelini eğitme seçeneğini destekler. Bazı veri setlerinde, saf XGBoost yaklaşımı daha iyi sonuçlar verebilir; ancak, çoğu veri seti için bu geçerli değildir. Bu blogda, GNN’ler kullanılmasına odaklanılmıştır. Sadece XGBoost ile ilgileniyorsanız, bu yaklaşım için yapılandırma dosyasını nasıl oluşturacağınızı görmek için belgelere göz atabilirsiniz.

Model Yapılandırma Şeması bölümü, hem GNN kısmı hem de XGBoost kısmı için hiperparametreleri tanımlar.

İşte bir GNN modelinden elde edilen gömmeleri kullanarak bir XGBoost modeli eğitmek için tam bir eğitim yapılandırma dosyası örneği:

{
  "paths": {				// Konteyner içindeki dizin yolları
    "data_dir": "/data"		// eğitim verisinin yerleştirildiği yol.
    "output_dir": "/trained_models"  // eğitimden sonra modellerin kaydedileceği yol.
  },

  "models": [
    {
      "kind": "GraphSAGE_XGBoost", // GNN modelinin gömmeleri üretmesi
      "gpu": "single",             // tek-gpu veya çoklu-gpu kullanımı
      "hyperparameters": {
        "gnn": {                   // GraphSAGE Hiperparametreleri gömmeleri üretir
          "hidden_channels": 16,   // GraphSAGE modelinde gizli kanalların sayısı
          "n_hops": 1,             // Katman sayısı
          "dropout_prob": 0.1,     // Regulasyon için bırakma olasılığı
          "batch_size": 1024,      // Modelin eğitimi için batch boyutu
          "fan_out": 16,           // Her düğüm için örnekleme komşu sayısı
          "num_epochs": 16         // Eğitim dönem sayısı
        },
        "xgb": {  // XGBoost Hiperparametreleri dolandırıcılık skorunu tahmin eder
          "max_depth": 6,          // Ağacın maksimum derinliği
          "learning_rate": 0.2,    // artırma için öğrenme oranı
          "num_parallel_tree": 3,  // Paralel olarak inşa edilen ağaç sayısı
          "num_boost_round": 512,  // artırma turları sayısı
          "gamma": 0.0             // Ek bir kesme için minimum kayıp azaltımı
        }
      }
    }
  ]
}

Adım 3: Konteyneri Çalıştırma

Artık veriler hazırlandı ve yapılandırma dosyası oluşturulduğuna göre, son adım finansal-dolandırıcılık-eğitim konteynerini çalıştırarak modeli oluşturmaktır. Veri hazırlanma adımında, iki dizin oluşturulmuş olmalıdır. Bu örnekte, bu dizinler için değişkenler kullanılacaktır. Bu dizinler:

  • host_path_data_root_dir: hazırlanmış verilerin bulunduğu ana dizin.
  • host_path_trained_models: üretilen model ve gerekli NVIDIA Dynamo scriptlerinin kaydedileceği dizin.

Konteyner, belirlenen bazı portlar aracılığıyla etkileşimde bulunur:

NIM_HTTP_PORT = 8002
NIM_GRPC_PORT = 50051
CONTAINER_NAME = "finansal-dolandırıcılık-eğitim"

Şimdi, standart Docker komutlarını kullanarak konteyneri başlatma zamanı.

docker run -d -it --rm --name={CONTAINER_NAME} --gpus "device=0" 
-p {NIM_HTTP_PORT}:{NIM_HTTP_PORT} 
-e NIM_HTTP_API_PORT={NIM_HTTP_PORT} 
-p {NIM_GRPC_PORT}:{NIM_GRPC_PORT} 
-e NIM_DISABLE_MODEL_DOWNLOAD=True 
-e NIM_GRPC_API_PORT={NIM_GRPC_PORT} 
-v {host_path_data_root_dir}:/data 
-v {host_path_trained_models}:/trained_models 
nvcr.io/nvidia/cugraph/financial-fraud-training:1.0.0 
-e NGC_API_KEY={API_KEY}

Konteyner çalışmaya başladıktan sonra, son adım yapılandırma bilgilerinin aktarılması ve eğitim sürecinin başlatılmasıdır.

!curl -X POST "http://{MY_IP}:$NIM_HTTP_PORT/train" 
-H "Content-Type: application/json" 
-d @{training_config_file_name}

Gerçek Zamanlı Dolandırıcılık Tespiti için Çıkarım

Model eğitildikten sonra, gerçek zamanlı dolandırıcılık tespiti için NVIDIA Dynamo-Triton (eski adıyla Triton Inference Server) kullanılarak hizmete sunulabilir. Bu, AI model sunma platformudur ve üretimde AI çıkarım iş yüklerini hızlandırıp basitleştirir. NVIDIA Dynamo-Triton, işletmelere model sunumu altyapısının karmaşıklığını azaltmasına, yeni AI modellerinin üretime aktarım süresini kısaltmasına ve AI inferans ve tahmin kapasitesini artırmasına yardımcı olur.

Çıkarım süreci (Şekil 3’te gösterilmiştir) şu adımları içerir:

  1. Ham girdi verilerinin, modelin oluşturulmasında kullanılan aynı süreçte dönüştürülmesi.
  2. Verinin, dolandırıcılık olup olmadığını tahmin etmek için Dynamo-Triton ile dağıtılan modellere beslenmesi. İçsel olarak, veri öncelikle bir GNN modeline verilir ve ardından işlemler gömme haline dönüştürülerek XGBoost modeline dolandırıcılık skorunu tahmin etmek üzere gönderilir.
Şekil 3. Çıkarım iş akışı

GNN’ler ve XGBoost’un bir araya getirilmesi, dolandırıcılık tespiti için esnek ve yüksek performanslı bir çözüm sunar. Şirketler, GNN’lerin yapılandırmasını özelleştirebilir ve model oluşturma süreçlerini kendi ihtiyaçlarına göre ayarlayarak sistemin zamanla optimize edilmesini sağlayabilir.

Dolandırıcılığı Geliştirmek için Ekosistem

Amazon Web Services, NVIDIA AI Planı’nın finansal dolandırıcılık tespitini yüksek güvenlikli hızlandırılmış bilgi işlem yetenekleri ile entegre eden ilk ortaklardan biridir. Bu entegrasyonla, dolandırıcılık tespit modelleri geliştiren geliştiriciler, veri işleme için NVIDIA RAPIDS’i Amazon EMR içerisinde kullanabilir ve eğitim için finansal-dolandırıcılık-eğitim konteynerini Amazon SageMaker içinde kullanabilirler. Modeller eğitildikten sonra, NVIDIA Dynamo-Triton kullanılarak Amazon SageMaker veya Amazon Elastic Kubernetes Service uç noktasında dağıtılmaktadır. Bu uç noktalar, çeşitli ML çerçevelerinden modeller sunmayı desteklemekte ve dinamik toplama ve eş zamanlı çalıştırma gibi özellikler sunmaktadır.

Bu çabalar geliştikçe, bu plan NVIDIA ortak ekosisteminde işletmeler ve geliştiricilerin prototipler oluşturup bunları NVIDIA AI Enterprise üzerinden üretime alması için ulaşılabilir hale gelecektir. Diğer bazı erken benimseyen ortaklar arasında Cloudera, Dell Technologies, EXL, Hewlett Packard Enterprise, Infosys ve SHI International yer almakta olup, bu ortaklar bu planı kendi laboratuvarlarında ve tekliflerinde birleştirerek kurumsal geliştiricilerin bu yetenekleri test etmelerine olanak tanımaktadır.

Harekete Geçin

Dolandırıcılık taktikleri evrim geçirdikçe, geleneksel tespit yöntemleri etkisiz hale gelmektedir. XGBoost ile GNN’lerin birleştirilmesi güçlü bir çözüm sunarak; doğruluğu artırmakta, yanlış pozitifleri azaltmakta ve gerçek zamanlı tespiti geliştirmektedir. NVIDIA AI Planı, geliştiricilerin gelişmiş dolandırıcılık girişimlerinin önüne geçmesine ve yeni tehditlere hızla uyum sağlamasına yardımcı olmak için tasarlanmıştır.

NVIDIA’nın finansal dolandırıcılık tespitine yönelik planına göz atmak için build.nvidia.com adresini ziyaret ederek GPU hızlandırmalı bir ortamda defteri dağıtabilir veya kendi ortamınızdaki GitHub deposunu kullanarak başlayabilirsiniz.

Kaynak

Nvdia Blog

Exit mobile version