Ana Çıkarımlar

  • Binance, platformdaki şüpheli etkinlikleri izlemek için makine öğrenimi modellerini kullanıyor.

  • Eski özellikler olarak bilinen bir sorun, bu tür modellerin performansını olumsuz etkileyerek hatalı tahminler veya sınıflandırmalar yapmalarına neden olabilir.

  • Akış hattımız veya modeli sürekli olarak gerçek zamanlı verilerle besleme sürecimiz iki bölümden oluşur: veri işleme ve veri sunma.

  • Veri işleme ayrıca üç kategoriye ayrılır: Akış hesaplama, alma ve boşaltma.

Binance ekosistemini korumak için makine öğrenimini nasıl kullandığımızı öğrenin.

Makine öğrenimi mühendisleri ve veri bilimcilerinden oluşan risk yapay zekası ekibimiz, dolandırıcılıkla mücadele etmek ve Binance kullanıcılarını korumak için 24 saat çalışıyor. Bunu başarmak için, eşler arası (P2P) dolandırıcılık, ödeme ayrıntılarının çalınması ve hesap ele geçirme saldırıları (ATO) gibi potansiyel tehditleri tanımlayıp bunlara yanıt verebilen yapay zeka odaklı çözümler kullanıyorlar.

Bu makalede, risk yapay zekası ekibimizin, sahne arkasında olup bitenlere ek olarak gerçek zamanlı yanıtlar sağlamak için bir akış hattını nasıl kullandığını açıklayacağız.

Makine öğrenimine aşina değilseniz, bu makale boyunca kullanacağımız bazı terimlere ilişkin temel bir genel bakış için aşağıdaki bölümü okumanızı öneririz.

Toplu İşlem ve Akış

Makine öğrenimi mühendisleri genellikle iki tür ardışık düzen kullanır: toplu ve akış. Durumun gerektirdiğine göre her ikisinin de artıları ve eksileri var.

Toplu işlem hatları, adından da anlaşılacağı gibi, verileri gruplar halinde işler. Mühendisler genellikle bunları büyük hacimli verileri işlemek için kullanırlar.

Öte yandan akış hatları, verileri toplandıkça gerçek zamanlı olarak işler. Bu, onları neredeyse anında yanıt gerektiren durumlar için ideal kılar; örneğin, bir bilgisayar korsanının çalınan bir hesaptan para çekmeden önce tespit edilmesi.

Her iki boru hattının da eşit derecede önemli olduğunu unutmayın. Akış işlem hatları, gerçek zamanlı yanıtlar sağlamak için mükemmeldir; toplu işlem hatları ise büyük hacimli verileri işlemede daha iyidir.

Dolandırıcılığın önlenmesi durumunda, makine öğrenimi modellerinin güncelliğini yitirmesi veya hatalı hale gelmesi anlamına gelen "model bayatlığı" adı verilen bir durumdan kaçınmak için gerçek zamanlı verilere öncelik vermemiz gerekir.

Bayatlığın Önemi

İnsanların en son bilgi veya tekniklerle güncel kalmamaları durumunda bir görevde nasıl daha az etkili olabileceği gibi, makine öğrenimi modelleri de duruma göre düzenli olarak güncellenmezlerse daha az doğru hale gelebilir.

İstemediğiniz şeylerden biri dolandırıcılığın bayatlamasını önlemek için tasarlanmış bir modeldir. Bunun sonuçları, modelin meşru bir işlemi yanlış bir şekilde sahtekarlık olarak etiketlemesinden veya güvenliği ihlal edilmiş bir hesabı tespit edememesine kadar uzanır. Bu nedenle, dolandırıcılık önleme modellerinin gerçek zamanlı verilerle çalıştığından emin olmak için bir akış hattı kullanıyoruz.

Hesap Devralma (ATO) modeli için bilgi işlem

Suçluların kötü niyetle ele geçirdiği hesapları tespit etmek için eğittiğimiz ATO modelinden bir örnek alalım. Bu modelin ölçtüğü özelliklerden biri, belirli bir müşterinin son dakika içinde yaptığı işlem sayısıdır.

Bilgisayar korsanları, kısa bir süre içinde para çekme gibi çok sayıda işlemi gerçekleştirerek sıralı bir model izleme eğilimindedir. Olası tehditlere karşı sistemimizin bu özelliği en kısa sürede hesaplaması gerekmektedir. Bu, kullanıcının harekete geçmesi ile bu kullanıcının etkinlik verilerinin modellerimiz tarafından işlenmesi arasındaki gecikmelerin en aza indirilmesi anlamına gelir. Sadece birkaç saniye, bir bilgisayar korsanını durdurmak ile bir kullanıcının tüm parasını kaybetmesi arasındaki fark olabilir.

Gecikmeli özelliklerin model performansını nasıl etkilediği hakkında daha fazla bilgi için LinkedIn Engineering'in şu makalesine başvurabilirsiniz: Neredeyse gerçek zamanlı kişiselleştirme için neredeyse gerçek zamanlı özellikler.

Toplu hesaplamanın rolü

Özellik bayatlığının öneminin kullanılan modele veya özelliğe bağlı olabileceğini unutmayın. Örneğin bazı özellikler nispeten kararlıdır. Yukarıda bahsedilen ATO durumunda, en son işlemlerine dayalı bir oran hesaplamak için kullanıcının son 30 gün içindeki para çekme işlemlerine ilişkin verileri de almamız gerekir.

Bu durumda, verilerin veri ambarlarına ulaşmasının ve toplu işlerin periyodik olarak çalıştırılmasının beklenmesinden kaynaklanan yüksek bayatlığa rağmen, günlük veya saatlik aralıklar gibi daha uzun zaman aralıklarında toplu hesaplama kabul edilebilir.

Tazelik ve Gecikmeyi Dengelemek

Sonuçta toplu ve akışlı işlem hatları arasındaki seçim, kullanım senaryosunun özel gereksinimlerine ve söz konusu özelliklere göre yapılmalıdır. Bu faktörlerin dikkatlice göz önünde bulundurulması, kullanıcılarımızı koruyan etkili dolandırıcılık önleme sistemleri oluşturmamıza olanak tanır.

Akış hattı kullanmak, zamana duyarlı özellikler için gecikme yerine yeniliğe öncelik vermemize olanak tanır. Yukarıdaki diyagram bu ihtiyacı göstermektedir, çünkü özelliklerin alınmasına yönelik işlem sayısının iki yerine üç olması gerekir.

Bu nedenle gerçek zamanlı bir makine öğrenimi hattı risk ekibimizin günlük operasyonları için çok önemlidir.

Akış Boru Hattının Parçalanması

Binance risk yapay zekası ekibi için gerçek zamanlı makine öğrenimi temel olarak iki bölümden oluşur:

  • Veri işleme (diyagramın üst kısmı)

  • Veri sunumu (diyagramın alt kısmı)

Veri işleme

Veri işlemeyle ilgili olarak akış hattımızı (Flink Job) sorumluluklarına göre üç kategoriye ayırabiliriz:

  • Akış hesaplama: özellik mühendisliği

  • Akış alımı: özellik alımı

  • Akış kaybı: veri zenginleştirme

Akış hesaplama

İşlem hattının akış hesaplama bileşeni, ham verilerden özelliklerin çıkarılması süreci olan neredeyse gerçek zamanlı özellik mühendisliğinden sorumludur.

Makine öğrenimi modellerimizin çevrimiçi tahmin için kullanacağı özellikleri önceden hesaplar. Akışlı hesaplama hattı için iki tür hesaplama yöntemi vardır: zamana dayalı ve olaya dayalı.

  1. Zamana dayalı. Her 10 dakikada bir işlem sayısını hesaplamak. Bu biraz eskimeye neden olur ancak gecikmeyi azaltır.

  2. Olay bazlı. Gelen olaya göre özelliklerin hesaplanması. Bu, eskimeyi azaltır ancak gecikmeyi biraz artırır.

Bizim tercihimiz mümkün olduğunca gerçek zamanlı hesaplamayı kullanmamaktır; nedeni şu:

  1. Gecikme ve eskime arasında bir denge vardır. Çevrimiçi istekler geldikçe bilgi işlem özellikleri, bilgi işlem mantığını hafif yaklaşımlarla sınırlar. Bu yöntem eskimeyi azaltırken, özellik hesaplaması tahmin gecikmesini artırır.

  2. Tahmin ve bilgi işlem hizmetleri birbirine bağlı olduğundan bağımsız olarak ölçeklendirme zordur.

  3. İstek trafiğine dayalı isteğe bağlı bilgi işlem, öngörülemeyen ölçeklendirme baskısı yaratır.

  4. Özellikler merkezi bir veritabanında, yani bir özellik deposunda saklanmadığından, gerçek zamanlı hesaplama, model izleme (eğitim-hizmet çarpıklığı) ve özellik izleme çözümlerimize uyarlanamaz.

Akış besleme

Akış besleme bileşeni, özelliklerin makine öğrenimi platformu Kafka'dan özellik depomuza neredeyse gerçek zamanlı olarak aktarılmasından sorumludur. Özellik depoları, yaygın olarak kullanılan özellikleri barındıran merkezi veritabanlarıdır. Makine öğrenimi hatlarında önemli bir rol oynarlar. Aşağıdaki makalelerden bunlar hakkında daha fazla bilgi edinebilirsiniz: Makine Öğrenimi Özellik Mağazamıza Daha Yakından Bakış ve Gerçek Zamanlı Uçtan Uca Makine Öğrenimi İşlem Hattı Oluşturmak için MLOps'u Kullanma.

Akış havuzu

Akış havuzu bileşeni esas olarak, proje gereksinimlerine bağlı olarak gerçek zamanlı olayları S3 gibi yüksek oranda dağıtılmış dosya sistemleri (HDFS) veya ElasticSearch gibi diğer harici veritabanları gibi belirli bir hedefe göndermekten sorumludur.

Risk yapay zekası ekibimiz için, kullanım senaryosuna bağlı olarak Kafka'daki gerçek zamanlı verilere uygulanabilecek genel olarak iki veri zenginleştirme modeli vardır:

  1. Statik veriler. Örneğin, Flink işlerinde P2P ile ilgili iş projeleri için S3'te bulunan popüler yapımcıların bir listesini almak. Referans verileri statiktir ve yalnızca ayda bir defadan daha az güncellenmeyi gerektirir.

  2. Dinamik veriler. Örneğin gerçek zamanlı döviz kurları (BTC'den USD'ye) Redis gibi harici veritabanlarından elde edilir. Kayıt başına arama, referans verileri değişirse düşük gecikme süresi ve yüksek doğruluk sağlar.

Veri Sunumu

İşlem hattının veri hizmeti bileşeni, çevrimiçi tahmin ve toplu hesaplamadan sorumludur.

  1. Çevrimiçi tahmin. Bu, talepler Karar Merkezi (risk ekibimizin dahili kural motoru) aracılığıyla geldiğinde meydana gelir. İlgili hizmet daha sonra özellikleri almak ve bunları puanlama için makine öğrenimi modeline göndermek için özellik deposunu arayacaktır. Risk AI ekibimiz, farklı iş gereksinimlerini karşılamak üzere tasarlanmış 20'den fazla makine öğrenimi modeline sahiptir.

  2. Toplu hesaplama. Birkaç güne kadar gecikmeye neden olabilse de, gerçek zamanlı olarak hesaplanan özellikleri tamamlaması nedeniyle burada önemli bir rol oynamaktadır.

Kapanış Düşünceleri

Açılış ve kapanış saatleri olan geleneksel finansal piyasaların aksine, kripto piyasasının 7/24 çalıştığını unutmamak önemlidir. Her saniye, kullanıcı fonlarını veya kişisel bilgilerini çalmaya çalışan kötü aktörlere karşı dikkatli olmamızı gerektiren sürekli bir yeni veri akışı (para çekme, para yatırma, takas vb.) yaşanıyor.

Risk yapay zekası ekibimiz, şüpheli etkinlikleri etkili bir şekilde işaretleyebilecek gelişmiş bir yapay zeka sistemi geliştirmek ve sürdürmek için yorulmadan çalıştı. Onların çabaları sayesinde, ele geçirilen Binance hesaplarını potansiyel kayıplardan korumak veya hasarı mümkün olduğunca azaltmak için hızlı bir şekilde çalışabiliriz.

Makine öğrenimi çalışmalarımız hakkında daha fazla bilgi edinmek için bizi takip etmeye devam edin veya aşağıdaki önceki makalelerimizden bazılarına göz atın. Binance'te makine öğrenimi kariyeriyle ilgileniyor musunuz? Açık iş ilanları için kariyer sayfamızdaki Binance Engineering'e göz atın.

Daha fazla okuma

  • Makine Öğrenimi Özellik Mağazamıza Daha Yakından Bir Bakış

  • Gerçek Zamanlı Uçtan Uca Makine Öğrenimi İşlem Hattı Oluşturmak için MLOps'u Kullanma

  • Tutarlılık ve Sahtekarlık Tespiti Konusunda Özellik Mühendisliği Örnek Olay İncelemesi