Qanday qilib sharhlarni ochish va spamga tushib qolmaslik kerak

Qanday qilib sharhlarni ochish va spamga tushib qolmaslik kerak

Sizning ishingiz go'zal narsalarni yaratish bo'lsa, bu haqda ko'p gapirishingiz shart emas, chunki natija hammaning ko'z o'ngida. Ammo agar siz to'siqlardagi yozuvlarni o'chirib tashlasangiz, to'siqlar yaxshi ko'rinmaguncha yoki biron bir noto'g'ri narsani o'chirmaguningizcha, hech kim sizning ishingizni sezmaydi.

Izoh qoldirish, ko'rib chiqish, xabar yuborish yoki rasmlarni yuklash mumkin bo'lgan har qanday xizmat ertami-kechmi spam, firibgarlik va odobsizlik muammosiga duch keladi. Buni oldini olish mumkin emas, lekin u bilan kurashish kerak.

Mening ismim Mixail, men antispam jamoasida ishlayman, bu Yandex xizmatlari foydalanuvchilarini bunday muammolardan himoya qiladi. Bizning ishimiz kamdan-kam e'tiborga olinadi (va bu yaxshi narsa!), shuning uchun bugun men sizga bu haqda ko'proq ma'lumot beraman. Moderatsiya qachon foydasiz ekanligini va nima uchun aniqlik uning samaradorligining yagona ko'rsatkichi emasligini bilib olasiz. Shuningdek, biz mushuklar va itlar misolida so'kinish haqida gaplashamiz va nima uchun ba'zan "qasam ichadigan kabi o'ylash" foydali bo'ladi.

Foydalanuvchilar o'z kontentini nashr etadigan Yandex-da tobora ko'proq xizmatlar paydo bo'lmoqda. Siz Yandex.Q-da savol berishingiz yoki javob yozishingiz, Yandex.Tumanidagi hovli yangiliklarini muhokama qilishingiz, Yandex.Maps-dagi suhbatlarda yo'l harakati sharoitlarini baham ko'rishingiz mumkin. Ammo xizmat auditoriyasi o'sib ulg'ayganida, u firibgarlar va spamerlar uchun jozibador bo'ladi. Ular kelib, sharhlarni to'ldirishadi: ular oson pul taklif qiladilar, mo''jizaviy davolarni reklama qiladilar va ijtimoiy imtiyozlarni va'da qiladilar. Spamerlar tufayli ba'zi foydalanuvchilar pul yo'qotishadi, boshqalari esa spam bilan to'lib-toshgan bema'ni xizmatda vaqt o'tkazish istagini yo'qotadilar.

Va bu yagona muammo emas. Biz nafaqat foydalanuvchilarni firibgarlardan himoya qilishga, balki muloqot uchun qulay muhit yaratishga ham intilamiz. Agar odamlar sharhlarda so'kinish va haqoratlarga duch kelsa, ular ketishlari va hech qachon qaytmasliklari mumkin. Bu shuni anglatadiki, siz ham bu bilan shug'ullanishingiz kerak.

Toza veb

Ko'pincha bizda bo'lgani kabi, birinchi ishlanmalar Qidiruvda, qidiruv natijalarida spam bilan kurashadigan qismida tug'ildi. Taxminan o'n yil oldin, u erda oilaviy qidiruvlar va 18+ toifasidagi javoblarni talab qilmaydigan so'rovlar uchun kattalar tarkibini filtrlash vazifasi paydo bo'ldi. Shunday qilib, porno va so'kinishlarning qo'lda terilgan birinchi lug'atlari paydo bo'ldi, ular tahlilchilar tomonidan to'ldirildi. Asosiy vazifa so'rovlarni kattalar uchun kontentni ko'rsatish mumkin bo'lgan va ko'rsatilmaydiganlarga tasniflash edi. Ushbu vazifani bajarish uchun belgilar yig'ildi, evristikalar qurildi va modellar o'qitildi. Keraksiz tarkibni filtrlash bo'yicha birinchi ishlanmalar shunday paydo bo'ldi.

Vaqt o'tishi bilan UGC (foydalanuvchi tomonidan yaratilgan kontent) Yandex-da paydo bo'la boshladi - foydalanuvchilarning o'zlari yozadigan xabarlar va Yandex faqat nashr etadi. Yuqorida tavsiflangan sabablarga ko'ra, ko'plab xabarlarni ko'rmasdan chop etib bo'lmaydi - moderatsiya kerak edi. Keyin ular barcha Yandex UGC mahsulotlari uchun spam va tajovuzkorlardan himoyani ta'minlaydigan va Qidiruvda keraksiz kontentni filtrlash uchun ishlanmalardan foydalanadigan xizmatni yaratishga qaror qilishdi. Xizmat "Clean Web" deb nomlangan.

Yangi vazifalar va itaruvchilarning yordami

Avvaliga biz uchun faqat oddiy avtomatlashtirish ishladi: xizmatlar bizga matnlar yubordi va biz ular ustida odobsiz lug'atlar, porno lug'atlar va oddiy iboralarni ishlatdik - tahlilchilar hamma narsani qo'lda tuzdilar. Ammo vaqt o'tishi bilan xizmat ko'payib borayotgan Yandex mahsulotlarida qo'llanila boshlandi va biz yangi muammolar bilan ishlashni o'rganishimiz kerak edi.

Ko'pincha, sharh o'rniga, foydalanuvchilar o'zlarining yutuqlarini oshirishga harakat qilib, ma'nosiz xatlar to'plamini nashr etadilar, ba'zida ular o'z kompaniyasini raqobatchi kompaniyasining sharhlarida reklama qiladilar, ba'zan esa shunchaki tashkilotlarni chalkashtirib yuborishadi va chorva do'koni haqida sharhda yozadilar: " Ajoyib pishirilgan baliq! ” Ehtimol, bir kun kelib sun'iy intellekt har qanday matnning ma'nosini mukammal tushunishni o'rganadi, ammo endi avtomatlashtirish ba'zan odamlardan ham yomonroqdir.

Biz buni qo'lda belgilamasdan qila olmasligimiz aniq bo'ldi va biz sxemamizga ikkinchi bosqichni qo'shdik - uni odam tomonidan qo'lda tekshirish uchun yubordik. U erda tasniflagich hech qanday muammo ko'rmagan nashr etilgan matnlar kiritilgan. Siz bunday vazifaning ko'lamini osongina tasavvur qilishingiz mumkin, shuning uchun biz nafaqat baholovchilarga tayandik, balki "olomonning donoligi" dan ham foydalandik, ya'ni yordam uchun tolokerlarga murojaat qildik. Ular bizga mashina o'tkazib yuborgan narsani aniqlashga yordam beradi va shu bilan uni o'rgatadi.

Smart keshlash va LSH xeshlash

Sharhlar bilan ishlashda biz duch kelgan yana bir muammo spam, aniqrog‘i uning hajmi va tarqalish tezligi edi. Yandex.Region auditoriyasi tez o'sishni boshlaganida, u erga spamerlar keldi. Ular matnni biroz o'zgartirib, oddiy iboralarni chetlab o'tishni o'rgandilar. Spam, albatta, hali ham topilgan va o'chirilgan, ammo Yandex miqyosida hatto 5 daqiqa davomida yuborilgan qabul qilib bo'lmaydigan xabarni yuzlab odamlar ko'rishlari mumkin edi.

Qanday qilib sharhlarni ochish va spamga tushib qolmaslik kerak

Albatta, bu bizga mos kelmadi va biz LSH asosida aqlli matn keshlash qildik (hududga sezgir xeshlash). Bu shunday ishlaydi: biz matnni normallashtirdik, undan havolalarni olib tashladik va uni n-grammga (n harflar ketma-ketligi) kesib tashladik. Keyinchalik, n-grammlarning xeshlari hisoblab chiqildi va ulardan hujjatning LSH vektori qurildi. Gap shundaki, o'xshash matnlar, agar ular biroz o'zgartirilgan bo'lsa ham, o'xshash vektorlarga aylandi.

Ushbu yechim o'xshash matnlar uchun tasniflagichlar va tolokerlarning hukmlarini qayta ishlatishga imkon berdi. Spam-hujum paytida, birinchi xabar skanerdan o'tishi va "spam" hukmi bilan keshga kirishi bilanoq, barcha yangi o'xshash xabarlar, hatto o'zgartirilgan xabarlar ham xuddi shunday hukmni oldi va avtomatik ravishda o'chiriladi. Keyinchalik, biz spam tasniflagichlarini qanday o'rgatish va avtomatik ravishda qayta tayyorlashni o'rgandik, ammo bu "aqlli kesh" biz bilan qoldi va ko'pincha bizga yordam beradi.

Yaxshi matn tasniflagichi

Spamga qarshi kurashda tanaffusga vaqt topa olmagan holda, biz tarkibimizning 95 foizi qo'lda boshqarilishini angladik: tasniflagichlar faqat qoidabuzarliklarga munosabat bildiradilar va matnlarning aksariyati yaxshi. Biz tozalagichlarni yuklaymiz, ular 95 ta holatdan 100 tasida "Hammasi yaxshi" degan baho beradi. Men g'ayrioddiy ish bilan shug'ullanishim kerak edi - yaxshi kontent tasniflagichlarini yaratish, xayriyatki, bu vaqt ichida etarlicha belgilar to'plangan edi.

Birinchi tasniflagich shunday ko'rinishga ega edi: biz matnni lemmatizatsiya qilamiz (so'zlarni boshlang'ich shakliga keltiramiz), nutqning barcha yordamchi qismlarini tashlaymiz va oldindan tayyorlangan "yaxshi lemmalar lug'ati" dan foydalanamiz. Agar matndagi barcha so'zlar "yaxshi" bo'lsa, unda butun matnda hech qanday qoidabuzarlik yo'q. Turli xil xizmatlarda ushbu yondashuv darhol qo'lda belgilashni 25 dan 35% gacha avtomatlashtirish imkonini berdi. Albatta, bu yondashuv ideal emas: bir nechta begunoh so'zlarni birlashtirish va juda haqoratli bayonotni olish oson, lekin bu bizga tez avtomatlashtirishning yaxshi darajasiga erishishga imkon berdi va bizga yanada murakkab modellarni o'rgatish uchun vaqt berdi.

Yaxshi matn tasniflagichlarining keyingi versiyalari allaqachon chiziqli modellarni, qarorlar daraxtlarini va ularning kombinatsiyalarini o'z ichiga olgan. Qo'pollik va haqoratni belgilash uchun, masalan, biz BERT neyron tarmog'ini sinab ko'ramiz. Kontekstdagi so'zning ma'nosini va turli jumlalardagi so'zlar o'rtasidagi aloqani tushunish muhimdir va BERT buni yaxshi bajaradi. (Aytgancha, yaqinda News hamkasblari dedi, texnologiyadan nostandart vazifa uchun qanday foydalaniladi - sarlavhalardagi xatolarni topish.) Natijada, xizmatga qarab oqimning 90% gacha avtomatlashtirish mumkin bo'ldi.

Aniqlik, to'liqlik va tezlik

Rivojlanish uchun siz ba'zi avtomatik tasniflagichlar qanday foyda keltirayotganini, ulardagi o'zgarishlarni va qo'lda tekshirish sifatini yomonlashtirayotganini tushunishingiz kerak. Buning uchun biz aniqlik va eslab qolish ko'rsatkichlaridan foydalanamiz.

Aniqlik - bu yomon mazmunga oid barcha hukmlar orasida to'g'ri hukmlarning nisbati. Aniqlik qanchalik yuqori bo'lsa, noto'g'ri musbatlar shunchalik kam bo'ladi. Agar siz aniqlikka e'tibor bermasangiz, nazariy jihatdan siz barcha spam va odobsizliklarni va ular bilan birga yaxshi xabarlarning yarmini o'chirib tashlashingiz mumkin. Boshqa tomondan, agar siz faqat aniqlikka tayansangiz, unda eng yaxshi texnologiya hech kimni ushlamaydigan texnologiya bo'ladi. Shu sababli, to'liqlik ko'rsatkichi ham mavjud: yomon kontentning umumiy hajmi orasida aniqlangan yomon kontentning ulushi. Ushbu ikki ko'rsatkich bir-birini muvozanatlashtiradi.

O'lchash uchun biz har bir xizmat uchun to'liq kiruvchi oqimni tanlaymiz va ekspert baholash va mashina echimlari bilan taqqoslash uchun baholovchilarga kontent namunalarini beramiz.

Ammo yana bir muhim ko'rsatkich bor.

Qabul qilib bo'lmaydigan xabarni hatto 5 daqiqada ham yuzlab odamlar ko'rishi mumkinligini yuqorida yozdim. Shunday qilib, biz odamlarga yomon kontentni yashirishdan oldin necha marta ko'rsatganimizni hisoblaymiz. Bu juda muhim, chunki samarali ishlash etarli emas - siz ham tez ishlashingiz kerak. So‘kinishga qarshi himoya qurganimizda esa buni to‘liq his qildik.

Mushuklar va itlar misolida antimatizm

Kichik lirik chekinish. Ba'zilar, odobsizlik va haqoratlar zararli havolalar kabi xavfli emas va spam kabi zerikarli emasligini aytishi mumkin. Ammo biz millionlab foydalanuvchilar uchun muloqot qilish uchun qulay sharoitlarni saqlashga intilamiz va odamlar haqoratlangan joylarga qaytishni yoqtirmaydilar. So'kish va haqorat qilishni taqiqlash ko'plab jamoalarning qoidalarida, shu jumladan Habré-da ham ko'rsatilganligi bejiz emas. Ammo biz chekinamiz.

So'kinish lug'atlari rus tilining barcha boyliklariga dosh bera olmaydi. Faqat to'rtta asosiy qasamyod ildizi mavjudligiga qaramay, ulardan siz hech qanday oddiy dvigatellar tomonidan ushlanib bo'lmaydigan son-sanoqsiz so'zlarni yaratishingiz mumkin. Bundan tashqari, siz so'zning bir qismini transliteratsiyada yozishingiz, harflarni o'xshash birikmalar bilan almashtirishingiz, harflarni o'zgartirishingiz, yulduzcha qo'shishingiz va hokazo. Ba'zan, kontekstsiz, foydalanuvchi so'kinish so'zini nazarda tutganini aniqlab bo'lmaydi. Biz Xabr qoidalarini hurmat qilamiz, shuning uchun biz buni jonli misollar bilan emas, balki mushuk va itlar bilan ko'rsatamiz.

Qanday qilib sharhlarni ochish va spamga tushib qolmaslik kerak

- Qonun, - dedi mushuk. Ammo mushuk boshqa so'z aytganini tushunamiz ...

Biz lug'atimiz uchun "loyqa moslashish" algoritmlari va aqlliroq qayta ishlash haqida o'ylay boshladik: biz transliteratsiyani ta'minladik, bo'shliqlar va tinish belgilarini birlashtirdik, naqshlarni qidirdik va ularga alohida muntazam iboralar yozdik. Ushbu yondashuv natijalar keltirdi, lekin ko'pincha aniqlikni pasaytirdi va kerakli to'liqlikni ta'minlamadi.

Keyin biz "qasam ichadiganlar kabi o'ylashga" qaror qildik. Biz o'zimiz ma'lumotlarga shovqin kiritishni boshladik: biz harflarni qayta joylashtirdik, matn terish xatolarini yaratdik, harflarni o'xshash imlolar bilan almashtirdik va hokazo. Buning uchun dastlabki belgilash matnlarning katta korpuslariga mat lug'atlarni qo'llash orqali olingan. Agar siz bitta jumlani olib, uni bir necha usulda aylantirsangiz, siz ko'p jumlalarga ega bo'lasiz. Shu tarzda siz o'quv namunasini o'nlab marta oshirishingiz mumkin. Qolgan narsa, natijada paydo bo'lgan hovuzda kontekstni hisobga olgan bir oz yoki kamroq aqlli modelni mashq qilish edi.

Qanday qilib sharhlarni ochish va spamga tushib qolmaslik kerak

Yakuniy qaror haqida gapirishga hali erta. Biz hali ham ushbu muammoga yondashuvlar bilan tajriba o'tkazmoqdamiz, biroq biz allaqachon bir necha qatlamlardan iborat oddiy ramziy konvolyutsion tarmoq lug'atlar va oddiy dvigatellardan sezilarli darajada ustun ekanligini ko'rishimiz mumkin: aniqlikni ham, eslab qolishni ham oshirish mumkin.

Albatta, biz har doim eng ilg'or avtomatlashtirishni chetlab o'tish yo'llari bo'lishini tushunamiz, ayniqsa masala juda xavfli bo'lsa: ahmoq mashina tushunmaydigan tarzda yozing. Bu erda, spamga qarshi kurashda bo'lgani kabi, bizning maqsadimiz odobsiz narsalarni yozish imkoniyatini yo'q qilish emas; bizning vazifamiz o'yin shamga arzimasligiga ishonch hosil qilishdir.

O'z fikringizni baham ko'rish, muloqot qilish va fikr bildirish imkoniyatini ochish qiyin emas. Xavfsiz, qulay sharoitlarga erishish va odamlarga hurmat bilan munosabatda bo'lish ancha qiyin. Busiz esa hech bir jamiyat taraqqiyoti bo‘lmaydi.

Manba: www.habr.com

a Izoh qo'shish