Carane mbukak komentar lan ora kecemplung ing spam

Carane mbukak komentar lan ora kecemplung ing spam

Nalika tugas sampeyan nggawe sing ayu, sampeyan ora perlu ngomong akeh babagan, amarga asil ana ing ngarepe saben wong. Nanging yen sampeyan mbusak prasasti saka pager, ora ana sing bakal ngelingi karya sampeyan anggere pager katon prayoga utawa nganti sampeyan mbusak sing salah.

Sembarang layanan ngendi sampeyan bisa ninggalake komentar, review, ngirim pesen utawa upload gambar cepet utawa mengko ngadhepi masalah spam, penipuan lan saru. Iki ora bisa nyingkiri, nanging kudu ditangani.

Jenengku Mikhail, aku kerja ing tim Antispam, sing nglindhungi pangguna layanan Yandex saka masalah kasebut. Pakaryan kita arang banget diweruhi (lan iku apik banget!), Dadi dina iki aku bakal ngandhani sampeyan luwih akeh babagan iki. Sampeyan bakal sinau nalika moderat ora ana gunane lan kenapa akurasi ora mung minangka indikator efektifitas. Kita uga bakal ngomong babagan sumpah nggunakake conto kucing lan asu lan apa sebabe kadhangkala migunani kanggo "mikir kaya wong sumpah".

Luwih akeh layanan sing katon ing Yandex ing ngendi pangguna nerbitake konten. Sampeyan bisa takon utawa nulis jawaban ing Yandex.Q, ngrembug warta yard ing Yandex.District, nuduhake kahanan lalu lintas ing obrolan ing Yandex.Maps. Nanging nalika pamirsa layanan tuwuh, dadi menarik kanggo scammers lan spammers. Dheweke teka lan ngisi komentar: menehi dhuwit gampang, ngiklanake obat ajaib lan janji keuntungan sosial. Amarga spammer, sawetara pangguna kelangan dhuwit, dene liyane kelangan kepinginan kanggo nglampahi wektu ing layanan unkempt overgrown karo spam.

Lan iki ora mung masalah. Kita usaha ora mung kanggo nglindhungi kedhaftar saka scammers, nanging uga kanggo nggawe atmosfer nyaman kanggo komunikasi. Yen wong ngadhepi karo sumpah lan moyoki ing komentar, padha kamungkinan kanggo ninggalake lan ora bakal bali. Iki tegese sampeyan uga kudu bisa ngatasi iki.

Web sing resik

Minangka asring kasus karo kita, pangembangan pisanan lair ing Panelusuran, ing bagean sing nglawan spam ing asil panelusuran. Kira-kira sepuluh taun kepungkur, tugas nyaring konten diwasa kanggo telusuran kulawarga lan pitakon sing ora mbutuhake jawaban saka kategori 18+ muncul ing kana. Iki minangka kamus porno lan sumpah sing diketik kanthi manual pisanan, padha diisi maneh dening analis. Tugas utama yaiku nggolongake panjalukan menyang sing bisa ditrima kanggo nuduhake konten diwasa lan ing ngendi ora. Kanggo tugas iki, markup diklumpukake, heuristik dibangun, lan model dilatih. Iki minangka pangembangan pisanan kanggo nyaring konten sing ora dikarepake.

Sajrone wektu, UGC (konten sing digawe pangguna) wiwit katon ing Yandex - pesen sing ditulis dening pangguna dhewe, lan Yandex mung nerbitake. Kanggo alasan sing diterangake ing ndhuwur, akeh pesen sing ora bisa diterbitake tanpa dipikir - dibutuhake moderat. Banjur padha mutusake kanggo nggawe layanan sing bakal menehi perlindungan marang spam lan panyerang kanggo kabeh produk Yandex UGC lan nggunakake pangembangan kanggo nyaring konten sing ora dikarepake ing Panelusuran. Layanan kasebut diarani "Web Bersih".

Tugas anyar lan bantuan saka pushers

Kaping pisanan, mung otomatisasi prasaja sing bisa digunakake kanggo kita: layanan kasebut ngirim teks, lan kita mbukak kamus saru, kamus porno lan ekspresi reguler - analis nglumpukake kabeh kanthi manual. Nanging suwe-suwe, layanan kasebut digunakake ing akeh produk Yandex, lan kita kudu sinau nggarap masalah anyar.

Asring, tinimbang review, pangguna nerbitake sakumpulan huruf sing ora ana gunane, nyoba nambah prestasi, kadhangkala padha ngiklanake perusahaan ing review perusahaan pesaing, lan kadhangkala mung mbingungake organisasi lan nulis ing review babagan toko pet: " Iwak sing dimasak kanthi sampurna!” Mbok menawa, ing sawijining dina, intelijen buatan bakal sinau kanggo mangerteni makna teks apa wae, nanging saiki otomatisasi kadhangkala luwih elek tinimbang manungsa.

Dadi cetha yen kita ora bisa nindakake iki tanpa menehi tandha manual, lan kita nambahake tahap kapindho ing sirkuit kita-ngirim kanggo pengawasan manual dening wong. Teks sing diterbitake sing diklasifikasikake ora ana masalah sing dilebokake ing kana. Sampeyan bisa kanthi gampang mbayangno ukuran tugas kasebut, mula kita ora mung ngandelake penilai, nanging uga njupuk kauntungan saka "kawicaksanan wong akeh", yaiku, kita njaluk bantuan menyang toloker. Dheweke sing mbantu kita ngenali apa sing ora kejawab mesin kasebut, lan mulane mulang.

Caching cerdas lan hashing LSH

Masalah liyane sing kita temoni nalika nggarap komentar yaiku spam, utawa luwih tepat, volume lan kacepetan panyebaran. Nalika pamirsa Yandex.Region wiwit tuwuh kanthi cepet, spammer teka ing kana. Dheweke sinau kanggo ngliwati ekspresi reguler kanthi rada ngganti teks. Spam, mesthi, isih ditemokake lan dibusak, nanging ing skala Yandex, pesen sing ora bisa ditampa sing dikirim sanajan 5 menit bisa dideleng dening atusan wong.

Carane mbukak komentar lan ora kecemplung ing spam

Mesthi, iki ora cocog karo kita, lan kita nggawe cache teks cerdas adhedhasar LSH (hashing sensitif lokalitas). Kerjane kaya iki: kita normalake teks, mbusak pranala saka iku lan Cut menyang n-gram (urutan saka n aksara). Sabanjure, hash saka n-gram diwilang, lan vektor LSH saka dokumen kasebut dibangun saka dheweke. Intine yaiku teks sing padha, sanajan rada diganti, dadi vektor sing padha.

Solusi iki ngidini sampeyan nggunakake maneh putusan klasifikasi lan toloker kanggo teks sing padha. Sajrone serangan spam, sanalika pesen pisanan ngliwati pemindaian lan mlebu ing cache kanthi putusan "spam", kabeh pesen anyar sing padha, malah sing diowahi, nampa putusan sing padha lan dibusak kanthi otomatis. Mengko, kita sinau carane nglatih lan nglatih maneh klasifikasi spam kanthi otomatis, nanging "cache cerdas" iki tetep karo kita lan isih kerep mbantu kita metu.

Klasifikasi teks sing apik

Tanpa duwe wektu kanggo ngaso saka nglawan spam, kita nyadari yen 95% isi kita dimoderasi kanthi manual: klasifikasi mung nanggepi pelanggaran, lan akeh teks sing apik. We mbukak pembersih sing ing 95 kasus saka 100 menehi rating "Kabeh OK". Aku kudu nindakake pakaryan sing ora biasa - nggawe klasifikasi konten sing apik, untunge cukup markup wis akumulasi sajrone wektu iki.

Klasifikasi pisanan katon kaya iki: kita lemmatize teks (ngurangi tembung menyang wangun awal), uncalan metu kabeh bagean tambahan wicara lan nggunakake "kamus lemmas apik" wis disiapake. Yen kabeh tembung ing teks kasebut "apik", mula kabeh teks ora ngemot pelanggaran. Ing macem-macem layanan, pendekatan iki langsung menehi saka 25 nganti 35% otomatisasi markup manual. Mesthine, pendekatan iki ora becik: gampang nggabungake sawetara tembung sing ora sopan lan entuk pernyataan sing nyerang, nanging ngidini kita cepet tekan tingkat otomatisasi sing apik lan menehi wektu kanggo nglatih model sing luwih rumit.

Versi sabanjure klasifikasi teks sing apik wis kalebu model linear, wit keputusan, lan kombinasi. Kanggo menehi tandha ora sopan lan ngina, contone, kita nyoba jaringan saraf BERT. Iku penting kanggo nangkep makna tembung ing konteks lan sambungan antarane tembung saka sentences beda, lan BERT nindakake proyek apik iki. (Ngomong-ngomong, bubar kolega saka News ngandika, carane teknologi digunakake kanggo tugas non-standar - nemokake kasalahan ing header.) AkibatΓ©, iku bisa kanggo ngotomatisasi nganti 90% saka aliran, gumantung ing layanan.

Akurasi, jangkep lan kacepetan

Kanggo ngembangake, sampeyan kudu ngerti apa keuntungan sing disedhiyakake dening klasifikasi otomatis tartamtu, owah-owahan, lan apa kualitas pamriksa manual wis mudhun. Kanggo nindakake iki, kita nggunakake metrik presisi lan kelingan.

Akurasi minangka proporsi putusan sing bener ing antarane kabeh putusan babagan konten sing ora apik. Sing luwih dhuwur akurasi, kurang positif palsu. Yen sampeyan ora menehi perhatian marang akurasi, banjur ing teori sampeyan bisa mbusak kabeh spam lan saru, lan bebarengan karo setengah saka pesen apik. Ing sisih liya, yen sampeyan mung ngandelake akurasi, mula teknologi sing paling apik bakal dadi sing ora nyekel sapa wae. Mulane, ana uga indikator lengkap: panggabungan isi ala sing diidentifikasi ing antarane volume total isi ala. Iki loro metrik ngimbangi saben liyane.

Kanggo ngukur, kita menehi conto kabeh aliran mlebu kanggo saben layanan lan menehi conto konten menyang penilai kanggo evaluasi pakar lan mbandhingake karo solusi mesin.

Nanging ana indikator penting liyane.

Aku nulis ing ndhuwur yen pesen sing ora bisa ditampa bisa dideleng dening atusan wong sanajan ing 5 menit. Dadi, kita ngitung kaping pirang-pirang kita nuduhake konten sing ala sadurunge ndhelikake. Iki penting amarga ora cukup kanggo bisa kanthi efisien - sampeyan uga kudu kerja kanthi cepet. Lan nalika kita mbangun pertahanan nglawan sumpah, kita ngrasakake kanthi lengkap.

Antimatisme nggunakake conto kucing lan asu

A digression lyrical cilik. Sawetara bisa uga ujar manawa saru lan penghinaan ora mbebayani kaya tautan sing ala, lan ora ngganggu kaya spam. Nanging kita usaha kanggo njaga kahanan nyaman kanggo komunikasi kanggo mayuta-yuta pangguna, lan wong ora kaya kanggo bali menyang panggonan kang lagi moyoki. Iku ora kanggo apa-apa sing larangan ing sumpah lan moyoki wis ditulis metu ing aturan saka akeh komunitas, kalebu ing HabrΓ©. Nanging kita digress.

Kamus sumpah ora bisa ngatasi kabeh kasugihan basa Rusia. Senadyan kasunyatan sing ana mung papat werna sumpah utama, saka wong-wong mau sampeyan bisa nggawe nomer kaetung saka tembung sing ora bisa kejiret dening sembarang mesin biasa. Kajaba iku, sampeyan bisa nulis bagean saka tembung ing transliterasi, ngganti huruf karo kombinasi padha, ngatur maneh aksara, nambah tanda bintang, etc. Kadhangkala, tanpa konteks, iku Sejatine mokal kanggo nemtokake sing pangguna temenan tembung sumpah. Kita ngurmati aturan Habr, mula kita bakal nduduhake iki ora nganggo conto langsung, nanging karo kucing lan asu.

Carane mbukak komentar lan ora kecemplung ing spam

"Hukum," ujare kucing. Nanging kita ngerti yen kucing ngandika tembung liyane ...

Kita wiwit mikir babagan algoritma "pencocokan kabur" kanggo kamus kita lan babagan preprocessing sing luwih pinter: kita nyedhiyakake transliterasi, spasi terpaku lan tanda baca bebarengan, nggoleki pola lan nulis ekspresi reguler sing kapisah. Pendekatan iki nggawa asil, nanging asring nyuda akurasi lan ora menehi kalengkapan sing dikarepake.

Banjur kita mutusake kanggo "mikir kaya wong sumpah". Kita wiwit ngenalake gangguan menyang data dhewe: kita nyusun ulang huruf, nggawe kesalahan ketik, ngganti huruf kanthi ejaan sing padha, lan liya-liyane. Markup awal kanggo iki dijupuk kanthi nggunakake kamus mat kanggo corpora teks gedhe. Yen sampeyan njupuk siji ukara lan ngowahi kanthi pirang-pirang cara, sampeyan bakal entuk akeh ukara. Kanthi cara iki sampeyan bisa nambah sampel latihan kaping sepuluh. Kabeh sing isih ana kanggo olahraga ing blumbang asil sawetara model luwih utawa kurang pinter sing njupuk menyang akun konteks.

Carane mbukak komentar lan ora kecemplung ing spam

Iku banget awal kanggo pirembagan bab kaputusan final. Kita isih nyoba pendekatan kanggo masalah iki, nanging kita wis bisa ndeleng manawa jaringan convolutional simbolis prasaja saka sawetara lapisan Ngartekno outperforms dictionaries lan mesin biasa: iku bisa kanggo nambah loro akurasi lan kelingan.

Mesthi wae, kita ngerti manawa bakal ana cara kanggo ngliwati otomatisasi sing paling maju, utamane yen masalah kasebut mbebayani banget: nulis kanthi cara sing ora dingerteni mesin bodho. Ing kene, kaya ing perang nglawan spam, tujuane ora kanggo ngilangi kemungkinan nulis sing saru; tugas kita yaiku kanggo mesthekake yen game kasebut ora cocog karo lilin.

Mbukak kesempatan kanggo nuduhake pendapat, komunikasi lan komentar ora angel. Luwih angel kanggo nggayuh kahanan sing aman, nyaman lan perawatan wong sing hormat. Lan tanpa iki ora bakal ana pangembangan komunitas apa wae.

Source: www.habr.com

Add a comment