Roblox PII Sınıflandırıcısının Açık Kaynak Kodlanması: Sohbette AI PII Algılamaya Yaklaşımımız
Bağlamı Kullanarak Geri Çağırma Oranını Artırma

Kullanıcılar her gün Roblox'ta ortalama 6,1 milyar sohbet mesajı oluşturuyor. İletişimin güvenli ve medeni kalmasını sağlamak için sağlam moderasyon sistemleri kullanıyor, yaşa dayalı kısıtlamalar uyguluyor ve ebeveyn denetimleri sunuyoruz. Platformdaki mesajların büyük çoğunluğu, iki arkadaşın oyun stratejisini tartışması gibi günlük sohbetlerdir, ancak mesajların küçük bir yüzdesinde kullanıcılar hassas olabilecek kişisel olarak tanımlanabilir bilgileri (PII) paylaşmaya çalışır. PII birçok şekilde ortaya çıkabilir ve kullanıcılar bunu birçok masum nedenden dolayı paylaşır: Bir kullanıcı, oyun koordinasyonu için başka bir platformdaki kullanıcı adını veya yeni başlayan bir arkadaşlık kurmak için telefon numarasını paylaşabilir. Ancak, kötü niyetli kişilerin, kullanıcıları Roblox'tan gerçek dünyada zarar görme riskinin daha yüksek olabileceği diğer platformlara çekmek için PII'yi aradığı nadir durumlar da vardır. Uygulamada, bu niyet farklılıklarını ayırt etmek zordur; bu nedenle, PII paylaşımına veya aranmasına karşı katı politikalarımız bulunmaktadır. Varsayılan olarak, sohbette tespit edilen tüm PII'yi engellemek için birden fazla araç kullanıyoruz ve kısıtlamaları yalnızca 18 yaş ve üstü kullanıcılar ile birbirlerini Güvenilir Bağlantılar olarak doğrulamış 13 ila 17 yaş arası kullanıcılar için gevşetiyoruz.
Kişisel bilgilerin tespit edilmesi, sektör genelinde bir teknik zorluktur. Sektör standardı tespit araçları atlatılabilir ve yeni ortaya çıkan dil kalıplarına uyum sağlama yeteneğinden yoksundur. Hiçbir araç mükemmel olmasa da, dilin gelişen doğasını hesaba katmak ve bağlamı kullanarak kullanıcıların filtreleri atlatıp kişisel bilgi istemeye veya paylaşmaya çalıştıkları durumları tespit etmek için bir yapay zeka modeli olan Roblox PII Classifier'ı geliştirdik.
Bugün, açık kaynaklı güvenlik araç setimizdeki diğer araçlarla birlikte PII Classifier'ı da açık kaynak olarak yayınladığımızı duyurmaktan heyecan duyuyoruz. 2024'ün sonlarında PII Classifier'ı uygulamaya koyduğumuzdan bu yana, geri çağırma oranında hızlı ve sürekli bir iyileşme gördük ve performansımız mevcut diğer modelleri aştı. Bugün açık kaynak olarak yayınladığımız PII modelimizin sürümü, Roblox'taki İngilizce metinlerde1 potansiyel PII konuşmalarının %98'ini geri çağırıyor. Model ayrıca üretim verilerimizde %94'lük bir F1 puanı elde ederek, LlamaGuard v3 8B (%28) ve Piiranha NER (%14) gibi diğer son teknoloji güvenlik modellerinden daha iyi performans gösterdi.



Zorluklar
Kişisel bilgilerin büyük ölçekte etkili bir şekilde tespit edilmesi, üç ana zorluğa indirgenebilir:
- Karşıt kalıplar: Kullanıcılar yaratıcıdır ve filtreleri atlatmak için sürekli yeni yollar bulurlar. Etkili bir sistem, dilin gelişmesine ve yeni kalıpların ortaya çıkmasına uyum sağlamalıdır.
- Eğitim ve değerlendirme: En etkili modeli oluşturmak için, etkili eğitim veri kümeleri ve ölçüm yöntemleri de geliştirmeliyiz. Model, ortaya çıkan kalıpları hesaba katması gerektiğinden, mevcut üretim verileri eğitim için yeterli değildir.
- Performans: Böyle bir modeli geniş ölçekte sunmak, kullanıcı deneyimine olumsuz etki etmemesi için dikkatli bir mimari ve optimizasyon kararları gerektirir.
Karşıt Kalıplar
Mevcut PII algılama çözümleri, esas olarak adlandırılmış varlık tanıma (NER) ve sosyal medya kullanıcı adları, telefon numaraları ve adresler gibi belirli türdeki isimlerin token düzeyinde algılanmasına dayanır. Ancak isimlerin algılanması, sorunun sadece bir parçasıdır. Bilgili kötü niyetli kişiler, NER algılamasını atlatmak için dilini kasıtlı olarak değiştirir (örneğin, A, B ve C'yi temsil etmek için alfa, bravo ve Charlie'yi kullanarak veya bir platformu açıkça adlandırmadan atıfta bulunarak). Kötü niyetli bir kişinin, NER filtresinin yakalayacağı hassas bilgileri hiç paylaşmadan başka bir platformda bağlantı kurma niyetini belirtmesi mümkündür. PII Sınıflandırıcısının görevi, yalnızca Roblox'ta paylaşılan açık PII metinlerini tespit etmek ve gizlemek değil, aynı zamanda iletişimin bağlamını anlamak ve kötü niyetli kişilerin PII ile ilgili konuşmalara girmesini en başından engellemektir.
İşte, varsayımsal bir sosyal platform olan StarTalk'u kullanan bazı tipik atlatma örüntüleri:
Karakter düzeyinde manipülasyon
- "aramak istediğin 5tärtālk var mı? birkaç gün önce bir hesap açtım"
- "ggrr nefret ediyorum etiketler Adın ne? S ve T"
Popüler sosyal medyaya dolaylı atıflar
- "Tekrar soruyorum, rats ppa Reverse ne demek?"
- "hey, yellow sun uygulamasında adımı kontrol eder misin? Orada sohbet edelim mi?"
Dil ve argo terimler zamanla değişir ve kötü niyetli kişiler filtreleri atlatmak için sürekli yeni yollar ararlar. PII Classifier'ın gücü, yeni dil kalıplarına ve ortaya çıkan geçici çözümlere uyum sağlama yeteneğinde yatmaktadır. Gerçek dünyadaki saldırgan kalıpları tespit ettiğimizde, bunları modele dahil ederek modelin sürekli olarak eğitilmesine yardımcı oluyoruz.
Eğitim ve Değerlendirme

Modeli başlangıçta eğitmek için, PII ile ilgili verileri manuel olarak inceledik ve etiketledik. Bu bize bir başlangıç noktası sağladı, ancak hızlı bir şekilde ölçeklendirme yapmamıza ve çok çeşitli senaryoları yakalamamıza izin vermedi. Her gün milyarlarca sohbet mesajında bulunan her terimi ve permütasyonu manuel olarak taramaya ve uygun etiketi uygulamaya çalışmak yerine, eğitim için ilgili örnekleri seçmek üzere veri örnekleyiciler oluşturduk ve test ettik. Amacımız, zararsız konuşmaları hariç tutmak ve PII ile ilgili veriler içeren konuşmalara odaklanarak insan etiketleme hatalarının olasılığını azaltmak ve daha geniş bir alanı kapsamaktı. İki örnekleyici en etkili olduğu kanıtlandı:
- Model puan çıktılarını kullanan belirsizlik örneklemesi: Bu örnekleyici, güçlü bir olumlu veya olumsuz sinyal uyandırmayan örnekleri seçti ve bu sayede belirsiz vakaları daha da netleştirebildik.
- Ardışık PII bloklarından örnekler: Bu örnekleyici, bazı konuşmalarda işaretlenmiş ancak ardışık konuşmalarda işaretlenmemiş kullanıcılardan örnekler seçti. Bu takip eden konuşmaların, mevcut PII filtresini atlatmış atipik dil içermesi daha olasıydı. Uygulamada bu, bir kullanıcının sistemi atlatamayıp akıllı bir boşluk bulana kadar tekrar denemesi gibi görünebilir.
Mevcut üretim verileri üzerinde veri örnekleme ve insan etiketlemesinin bu kombinasyonu, modeli eğitmek için güçlü bir temel sağladı, ancak amacımız ortaya çıkan kalıpları hesaba katmak olduğu için, örneklerimizde henüz mevcut olmayan verilerle eğitim yapmanın bir yoluna ihtiyacımız vardı.
AI tarafından üretilen sentetik veriler
Yalnızca mevcut örneklem verilerine güvenmek, önyargılara yol açabilir ve yeni iletişim kalıpları geliştikçe modelin uyum sağlama yeteneğini sınırlayabilir. Örneğin, Roblox'ta en yaygın PII talepleri, popüler sosyal medya platformlarının kullanıcı adları içindir. Yalnızca üretim verileriyle eğitilen bir model, en yaygın taleplere karşı bir önyargı geliştirebilir ve daha az bilinen sosyal medya platformları, e-posta adresleri ve telefon numaraları gibi daha nadir taleplerde düşük performans gösterebilir. Kullanıcı iletişimi de popüler kelime dağarcığı ve dil kalıplarına yönelme eğilimindedir. Yalnızca üretim verileriyle eğitilen bir model, yaygın dil kalıplarına karşı önyargılı hale gelebilir ve atipik veya yeni ortaya çıkan şekillerde ifade edilen ihlalleri tespit edemeyebilir.
Bu ve diğer önyargıları ortadan kaldırmak için, ilk eğitim veri setinden miras alınan tüm zayıflıkları hedefleyen bir AI veri üretme süreci tasarladık. İlk olarak, bağlam, PII türü, kullanıcı profili, dil ve örnek sohbet satırları dahil olmak üzere çeşitli değişkenlerin bir kombinasyonunu kullanarak komutlar oluşturduk. Ardından, bu komutlara dayalı olarak yeni sohbet satırları oluşturduk ve bunları modele besledik.
İnsan ve AI kırmızı takım çalışması
Geliştirme aşamasında, modelin etkinliğini test etmek ve eğitimi iyileştirmek için hem insan hem de AI kırmızı takımını (ekiplerin bir sistemin savunmasını test etmek için düşmanca saldırıları simüle ettiği) kullandık. Moderatörleri, PII'yi isteme ve paylaşma konusunda farklı yöntemleri denemeye davet ettik ve LLM'leri bu yöntemleri çeşitli şekillerde geliştirmeye yönlendirdik, ardından modelin gözden kaçırdığı örnekleri eğitim veri setine ekledik. AI kırmızı takım çalışması, birçok varyasyonu hızlı bir şekilde test etmemize ve moderatörlerin ele almamış olabileceği yöntemleri kapsamamıza yardımcı oldu. Örneğin:
Orijinal: şifre xxxx
AI ile geliştirilmiş: ŞİFRE xxxx
Orijinal: Bella, telefon numaram 346
AI ile geliştirilmiş: Bella, numaram aslında threefour6
Kırmızı takım çalışması, mevcut eğitim verilerimizdeki boşlukları daha iyi anlamamıza ve bunları kapatmak için sentetik verilerimizi uyarlamamıza yardımcı oldu. Ayrıca, bir modelin iki sürümü değerlendirme setini doyurmaya başladığında giderek zorlaşan model yinelemeleri arasındaki farkları ölçmemizi sağladı. Kırmızı takım aracı altında modelin birden fazla sürümünü kullanarak aynı ortamdaki atlatma oranlarını doğrudan karşılaştırdık ve istatistiksel olarak hangi modelin daha etkili olduğunu belirledik.
Performans
Günde ortalama 6,1 milyar sohbet mesajı alışverişi ile PII Classifier, Roblox'ta saniyede 200.000'den fazla sorgu alıyor. Bu hacmi <100 ms P90 gecikme süresiyle işliyoruz. Hizmet ve kalite arasında denge sağlamak için, yalnızca kodlama mimarisini seçtik ve modelimizi XLM-RoBERTa-Large2'den ince ayarladık. CPU'da verimli bir şekilde çalışmak için tokenizer ile ön ve son işleme hizmetlerini ayırıyoruz ve maliyetleri düşürmek için GPU'da saf dönüştürücü mimarisini kullanıyoruz. Ayrıca, verimi artırmak için Triton sunucularında dinamik toplu işleme kullanıyoruz.
Halka Açık ve Dahili Veri Kümelerinde Karşılaştırmalı Değerlendirme
Kendi üretim verilerimizi ve kamuya açık veri kümelerini kullanarak PII Classifier'ı diğer en gelişmiş modellerle karşılaştırdık. Kamuya açık PII veri kümelerinin çoğu, niyeti işaret edebilecek çevre metinlerden ziyade PII metninin kendisine odaklanmaktadır, bu nedenle karşılaştırma için platform gereksinimlerimize tam olarak uyan hiçbir veri kümesi bulunmamaktaydı. Yine de, Kaggle'daki The Learning Agency Lab'ın PII Veri Algılama Veri Seti3 gibi popüler PII veri setlerini kullanarak modelimizin mevcut algılama çözümlerine kıyasla nasıl bir performans gösterdiğini görmek istedik.
Karşılaştırmadaki LLM'ler yalnızca bir çift (geri çağırma, kesinlik) sağladığından F1 puanlarını kullandık. Sınıflandırma puanları üreten modeller için, test setindeki en uygun F1 puanını rapor ettik. Modelimizin girdi olarak kullanıcı sohbet satırlarından bir parça gerektirdiğini ve sohbet satırları hakkında ikili bir karar vermek için kullandığımız bir PII puanı ürettiğini unutmayın. Adil bir karşılaştırma için, halka açık veri setini cümlelere ayırdık ve herhangi bir pozitif NER PII belirteci içeren her cümleyi pozitif olarak etiketledik.
PII V1.1 | ||||||
%45,48 | %5,90 | %5,46 | %3,72 | %3,26 | %33,20 | |
Roblox Değerlendirme İngilizce | %94,34 | %3,17 | %27,73 | %26,55 | %26,29 | %13,88 |
Karşılaştırmalı değerlendirmelerimizde, modelimiz hem The Learning Agency Lab'ın halka açık veri setinde hem de Roblox'ta 47.000'den fazla çeşitli gerçek dünya örneğini içeren iç üretim verilerimizde diğer açık kaynaklı modellerden önemli ölçüde daha iyi performans gösterdi. Daha geniş konuşma bağlamını dahil etmeye ve dilin akıcı doğasına sürekli uyum sağlamaya odaklanmak, kullanıcının Kişisel Tanımlayıcı Bilgileri (PII) istemeyi veya paylaşmayı amaçladığı daha fazla konuşmayı tespit etmek için etkili bir yaklaşım olduğunu kanıtladı.
PII Sınıflandırıcı, Roblox'ta güvenliği ve nezaketi teşvik etmek için kullandığımız birçok yenilikçi sistemden sadece biridir. Bir konuşmanın ne zaman PII talebine doğru yöneldiğini tespit etme yeteneği, aksi takdirde tespit edilemeyebilecek gizli talepleri yakalayabileceğimiz anlamına gelir. Hiçbir sistem mükemmel olmasa da, üretimdeki ilk yılımızın sonuçları şimdiden umut verici ve bu aracı, açık kaynaklı güvenlik araç setimizdeki diğer araçlarla birlikte açık kaynak topluluğuyla paylaşmaktan heyecan duyuyoruz.
- %98'lik geri çağırma oranı, %1 FPR olarak ayarlanmış bir Roblox iç test seti üzerinde ölçülmüştür. Veri seti, üretim verilerinden toplanmış olup, güvenlik uzmanları tarafından birçok kez incelenmiş ve etiketlenmiştir.
- Conneau, A., Khandelwal, K., Goyal, N., Chaudhary, V., Wenzek, G., Guzmán, F., Grave, E., Ott, M., Zettlemoyer, L. ve Stoyanov, V. 2019. Büyük ölçekte denetimsiz diller arası temsil öğrenimi. arXiv ön baskı arXiv:1911.02116.
- Holmes, L., Crossley, S. A., Sikka, H. ve Morris, W. 2023. PIILO: Kişisel olarak tanımlanabilir bilgilerin etiketlenmesi ve gizlenmesi için açık kaynaklı bir sistem. Bilgi ve Öğrenme Bilimi, 124 (9/10), 266-284.


