Reklamları nasıl yönetiyoruz?

Reklamları nasıl yönetiyoruz?

Kullanıcılarının kendi içeriğini (UGC - Kullanıcı tarafından oluşturulan içerik) oluşturabildiği her hizmet, yalnızca iş sorunlarını çözmekle kalmayıp aynı zamanda UGC'de işleri düzene koymakla da yükümlüdür. Zayıf veya düşük kaliteli içerik denetimi, sonuçta hizmetin kullanıcılar açısından çekiciliğini azaltabilir, hatta çalışmasını sonlandırabilir.

Bugün size Yula ile Odnoklassniki arasındaki, Yula'daki reklamları etkili bir şekilde denetlememize yardımcı olan sinerjiden bahsedeceğiz.

Sinerji genel olarak çok faydalı bir şey ve modern dünyada teknolojiler ve trendler çok hızlı değiştiğinde cankurtaran haline dönüşebiliyor. Neden zaten icat edilmiş ve aklınıza getirilmiş bir şeyi icat ederek kıt kaynakları ve zamanı boşa harcayasınız ki?

Kullanıcı içeriğini (resimler, metinler ve bağlantılar) denetleme göreviyle karşı karşıya kaldığımızda biz de aynı şeyi düşündük. Kullanıcılarımız Yula'ya her gün milyonlarca içerik yüklüyor ve otomatik işleme olmadan tüm bu verileri manuel olarak denetlemek tamamen imkansızdır.

Bu nedenle, Odnoklassniki'deki meslektaşlarımızın o zamana kadar "neredeyse mükemmel" duruma getirdiği hazır bir moderasyon platformu kullandık.

Neden Odnoklassniki?

Her gün on milyonlarca kullanıcı sosyal ağa geliyor ve fotoğraflardan videolara ve metinlere kadar milyarlarca içerik yayınlıyor. Odnoklassniki denetleme platformu, çok büyük miktarda veriyi kontrol etmeye ve spam gönderenlere ve botlara karşı koymaya yardımcı olur.

OK moderasyon ekibi, aracını 12 yıldır geliştirmekte olduğu için çok fazla deneyim biriktirdi. Yalnızca hazır çözümlerini paylaşmakla kalmayıp, platformlarının mimarisini de bizim özel görevlerimize uyacak şekilde özelleştirebilmeleri önemli.

Reklamları nasıl yönetiyoruz?

Artık kısaca OK moderasyon platformuna "platform" adını vereceğiz.

Her şey nasıl çalışıyor?

Yula ve Odnoklassniki arasındaki veri alışverişi şu şekilde kurulur: Apache Kafka.

Neden bu aracı seçtik:

  • Yula'da tüm reklamlar sonradan denetlenir, dolayısıyla başlangıçta eşzamanlı bir yanıt gerekli değildi.
  • Kötü bir paragraf oluşursa ve bazı yoğun yük nedeniyle Yula veya Odnoklassniki kullanılamıyorsa, Kafka'dan gelen veriler hiçbir yerde kaybolmaz ve daha sonra okunabilir.
  • Platform zaten Kafka ile entegre olduğundan güvenlik sorunlarının çoğu çözüldü.

Reklamları nasıl yönetiyoruz?

Yula'da kullanıcı tarafından oluşturulan veya değiştirilen her reklam için, verileri içeren bir JSON oluşturulur ve bu, daha sonra denetlenmek üzere Kafka'ya yerleştirilir. Duyurular Kafka'dan platforma yüklenir ve burada otomatik veya manuel olarak karara bağlanır. Kötü reklamlar bir gerekçeyle engelleniyor ve platformun ihlal bulamadığı reklamlar "iyi" olarak işaretleniyor. Daha sonra tüm kararlar Yula'ya geri gönderilir ve hizmette uygulanır.

Sonuçta Yula için her şey basit eylemlere bağlı: Odnoklassniki platformuna bir reklam gönderin ve "tamam" ya da neden "tamam" olmasın şeklinde bir çözüm alın.

Otomatik işleme

Reklam platforma çıktıktan sonra ne olur? Her reklam birkaç varlığa bölünmüştür:

  • İsim,
  • Tanım,
  • fotoğraflar,
  • reklamın kullanıcı tarafından seçilen kategorisi ve alt kategorisi,
  • цена.

Reklamları nasıl yönetiyoruz?

Platform daha sonra kopyaları bulmak için her varlık için kümeleme gerçekleştirir. Ayrıca metin ve fotoğraflar farklı şemalara göre kümelenmiştir.

Kümelemeden önce metinler, özel karakterleri, değiştirilmiş harfleri ve diğer çöpleri kaldırmak için normalleştirilir. Alınan veriler N gramlara bölünür ve bunların her biri karma hale getirilir. Sonuç olarak birçok benzersiz karma elde edilir. Metinler arasındaki benzerlik şu şekilde belirlenir: Jaccard'ın ölçüsü sonuçta ortaya çıkan iki küme arasında. Benzerlik eşikten büyükse metinler tek bir kümede birleştirilir. Benzer kümelerin aranmasını hızlandırmak için MinHash ve Yerelliğe duyarlı hash kullanılır.

PHash resimlerini karşılaştırmaktan, sinir ağı kullanarak kopyaları aramaya kadar, fotoğraflara resim yapıştırmak için çeşitli seçenekler icat edilmiştir.

Son yöntem en “şiddetli” olanıdır. Modeli eğitmek için, N'nin A'ya benzemediği ve P'nin A'ya benzer olduğu (yarı kopya) üçlü görüntü (N, A, P) seçildi. Daha sonra sinir ağı, A ve P'yi mümkün olduğu kadar yakın, A ve N'yi mümkün olduğu kadar uzak tutmayı öğrendi. Bu, önceden eğitilmiş bir ağdan basitçe yerleştirme almaya kıyasla daha az yanlış pozitif sonuç verir.

Sinir ağı girdi olarak görüntüleri aldığında, bunların her biri için N(128) boyutlu bir vektör üretir ve görüntünün yakınlığının değerlendirilmesi için bir talepte bulunulur. Daha sonra, yakın görüntülerin kopya olarak kabul edildiği bir eşik hesaplanır.

Model, pHash karşılaştırmasını atlamak için aynı ürünü özel olarak farklı açılardan fotoğraflayan spam gönderenleri ustaca bulabiliyor.

Reklamları nasıl yönetiyoruz?Reklamları nasıl yönetiyoruz?
Bir sinir ağı tarafından kopya olarak birbirine yapıştırılan spam fotoğraflarına bir örnek.

Son aşamada kopya reklamlar hem metin hem de görsel olarak aynı anda aranır.

İki veya daha fazla reklam bir kümede birbirine yapışırsa sistem, belirli algoritmalar kullanarak hangi kopyaların silineceğini ve hangilerinin bırakılacağını seçen otomatik engellemeyi başlatır. Örneğin, iki kullanıcının bir reklamda aynı fotoğraflara sahip olması durumunda sistem, daha yeni olan reklamı engelleyecektir.

Oluşturulduktan sonra tüm kümeler bir dizi otomatik filtreden geçer. Her filtre kümeye bir puan atar: bu filtrenin tanımladığı tehdidi içerme olasılığı.

Örneğin sistem bir reklamdaki açıklamayı analiz eder ve bunun için potansiyel kategorileri seçer. Daha sonra en yüksek olasılığa sahip olanı alır ve bunu reklam yazarının belirttiği kategoriyle karşılaştırır. Eşleşmezlerse reklam yanlış kategori için engellenir. Nazik ve dürüst olduğumuzdan, reklamın denetimi geçebilmesi için kullanıcıya hangi kategoriyi seçmesi gerektiğini doğrudan söyleriz.

Reklamları nasıl yönetiyoruz?
Yanlış kategori için engelleme bildirimi.

Makine öğrenimi platformumuzda kendini evindeymiş gibi hissediyor. Örneğin, onun yardımıyla Rusya Federasyonu'nda yasaklanan malların isimlerini ve açıklamalarını araştırıyoruz. Ve sinir ağı modelleri, URL'leri, spam metinleri, telefon numaralarını ve aynı "yasak" bilgileri içerip içermediklerini görmek için görüntüleri titizlikle "inceler".

Yasal bir şeymiş gibi görünerek yasaklanmış bir ürünü satmaya çalıştıkları ve başlıkta veya açıklamada herhangi bir metin bulunmadığı durumlarda resim etiketlemeyi kullanırız. Her görsele, görselin içinde ne olduğunu anlatan 11 bine kadar farklı etiket eklenebiliyor.

Reklamları nasıl yönetiyoruz?
Nargileyi semaver kılığına sokarak satmaya çalışıyorlar.

Karmaşık filtrelere paralel olarak basit filtreler de metinle ilgili bariz sorunları çözerek çalışır:

  • antimat;
  • URL ve telefon numarası dedektörü;
  • anlık mesajlaşma programlarından ve diğer bağlantılardan bahsetmek;
  • indirimli fiyat;
  • hiçbir şeyin satılık olmadığı reklamlar vb.

Günümüzde her reklam, reklamda kötü bir şey bulmaya çalışan 50'den fazla otomatik filtreden oluşan ince bir elekten geçiyor.

Dedektörlerden hiçbiri işe yaramazsa, Yula'ya reklamın "büyük olasılıkla" mükemmel sırada olduğuna dair bir yanıt gönderilir. Bu yanıtı kendimiz kullanırız ve satıcıya abone olan kullanıcılar yeni bir ürünün kullanılabilirliği hakkında bir bildirim alır.

Reklamları nasıl yönetiyoruz?
Satıcının yeni bir ürüne sahip olduğuna dair bildirim.

Sonuç olarak, her reklam meta verilerle "büyümüştür"; bunların bir kısmı reklam oluşturulduğunda oluşturulur (yazarın IP adresi, kullanıcı aracısı, platform, coğrafi konum vb.), geri kalanı ise her filtre tarafından verilen puandır. .

Duyuru kuyrukları

Bir reklam platforma ulaştığında sistem onu ​​sıralardan birine yerleştirir. Her sıra, reklam meta verilerini kötü modelleri tespit edecek şekilde birleştiren bir matematiksel formül kullanılarak oluşturulur.

Örneğin, "Cep Telefonları" kategorisinde St. Petersburg'dan olduğu iddia edilen Yula kullanıcılarından bir reklam kuyruğu oluşturabilirsiniz, ancak IP adresleri Moskova'dan veya diğer şehirlerdendir.

Reklamları nasıl yönetiyoruz?
Bir kullanıcının farklı şehirlerde yayınladığı reklamlara bir örnek.

Veya sinir ağının reklamlara atadığı puanlara göre bunları azalan sırada düzenleyerek kuyruklar oluşturabilirsiniz.

Her sıra kendi formülüne göre reklama bir son puan atar. Daha sonra farklı şekillerde ilerleyebilirsiniz:

  • bir reklamın belirli bir tür engellemeye maruz kalacağı eşiği belirtin;
  • kuyruktaki tüm reklamları manuel inceleme için moderatörlere göndermek;
  • veya önceki seçenekleri birleştirin: otomatik engelleme eşiğini belirtin ve bu eşiğe ulaşmayan reklamları moderatörlere gönderin.

Reklamları nasıl yönetiyoruz?

Bu kuyruklara neden ihtiyaç duyuluyor? Bir kullanıcının ateşli silahın fotoğrafını yüklediğini varsayalım. Sinir ağı ona 95'ten 100'e kadar bir puan veriyor ve resimde bir silahın olduğunu yüzde 99 doğrulukla belirliyor. Ancak puan değeri %95'in altındaysa modelin doğruluğu düşmeye başlar (bu, sinir ağı modellerinin bir özelliğidir).

Bunun sonucunda puan modeline göre bir sıra oluşturuluyor ve 95 ile 100 arasında puan alan reklamlar “Yasaklı Ürünler” olarak otomatik olarak engelleniyor. Puanı 95'in altında olan reklamlar, manuel olarak işlenmesi için moderatörlere gönderilir.

Reklamları nasıl yönetiyoruz?
Kartuşlu Çikolatalı Beretta. Yalnızca manuel denetleme için! 🙂

Manuel denetleme

2019'un başında Yula'daki tüm reklamların yaklaşık %94'ü otomatik olarak denetleniyor.

Reklamları nasıl yönetiyoruz?

Platform bazı reklamlara karar veremezse bunları manuel denetime gönderir. Odnoklassniki kendi aracını geliştirdi: moderatörlere yönelik görevler, hızlı bir karar vermek için gerekli tüm bilgileri anında görüntüler - reklam uygundur veya nedenini belirterek engellenmelidir.

Manuel denetleme sırasında hizmet kalitesinin olumsuz etkilenmemesi için insanların çalışmaları sürekli izlenir. Örneğin, görev akışında moderatöre "tuzaklar" (zaten hazır çözümlerin bulunduğu reklamlar) gösterilir. Moderatörün kararı biten kararla örtüşmüyorsa moderatöre bir hata verilir.

Ortalama olarak bir moderatör bir reklamı kontrol etmek için 10 saniye harcıyor. Üstelik hata sayısı tüm doğrulanmış reklamların %0,5'inden fazla değildir.

İnsanların ılımlılığı

Odnoklassniki'den meslektaşlar daha da ileri gitti ve "izleyicinin yardımından" yararlandı: sosyal ağ için büyük miktarda veriyi hızlı bir şekilde işaretleyebileceğiniz ve bazı kötü işaretleri vurgulayabileceğiniz bir oyun uygulaması yazdılar - Odnoklassniki Moderatörü (https://ok.ru/app/moderator). İçeriği daha eğlenceli hale getirmeye çalışan OK kullanıcılarının yardımından yararlanmanın iyi bir yolu.

Reklamları nasıl yönetiyoruz?
Kullanıcıların üzerinde telefon numarası bulunan fotoğrafları etiketlediği bir oyun.

Platformdaki herhangi bir reklam sırası Odnoklassniki Moderatör oyununa yönlendirilebilir. Oyun kullanıcılarının işaretlediği her şey daha sonra incelenmek üzere dahili moderatörlere gönderilir. Bu şema, filtreleri henüz oluşturulmamış reklamları engellemenize ve aynı zamanda eğitim örnekleri oluşturmanıza olanak tanır.

Denetleme sonuçlarının saklanması

Halihazırda karar verdiğimiz reklamları yeniden işlememek için, moderasyon sırasında alınan tüm kararları kaydediyoruz.

Reklamlara dayalı olarak her gün milyonlarca küme oluşturulmaktadır. Zamanla her küme "iyi" veya "kötü" olarak etiketlenir. İşaretli bir kümeye giren her yeni reklam veya revizyonu, kümenin kendisinden otomatik olarak bir çözüm alır. Günde yaklaşık 20 bin bu tür otomatik çözünürlük var.

Reklamları nasıl yönetiyoruz?

Kümeye yeni bir duyuru gelmezse bellekten kaldırılır ve hash'i ve çözümü Apache Cassandra'ya yazılır.

Platform yeni bir reklam aldığında öncelikle daha önce oluşturulmuş olanlar arasında benzer bir küme bulmaya çalışır ve ondan çözüm çıkarmaya çalışır. Eğer böyle bir küme yoksa platform Cassandra’ya gider ve oraya bakar. Buldun mu? Harika, çözümü kümeye uyguluyor ve Yula'ya gönderiyor. Her gün bu tür ortalama 70 bin "tekrarlanan" karar var; bu da toplamın %8'i.

Özetleme

Odnoklassniki moderasyon platformunu iki buçuk yıldır kullanıyoruz. Sonuçları beğendik:

  • Günde tüm reklamların %94'ünü otomatik olarak yönetiyoruz.
  • Bir reklamı denetlemenin maliyeti 2 rubleden 7 kopeğe düşürüldü.
  • Hazır araç sayesinde moderatörleri yönetme sorunlarını unuttuk.
  • Aynı moderatör sayısı ve bütçeyle manuel olarak işlenen reklamların sayısını 2,5 kat artırdık. Otomatik kontrol nedeniyle manuel denetlemenin kalitesi de arttı ve hatalarda %0,5 civarında dalgalanıyor.
  • Yeni spam türlerini filtrelerle hızlı bir şekilde ele alıyoruz.
  • Yeni departmanları hızlı bir şekilde moderasyona bağlarız "Yula Dikeyleri". Yula, 2017'den bu yana Emlak, Açık Pozisyonlar ve Otomobil sektörlerini ekledi.

Kaynak: habr.com

Yorum ekle