Хэрхэн сэтгэгдлээ нээж, спамд живэхгүй байх вэ

Хэрхэн сэтгэгдлээ нээж, спамд живэхгүй байх вэ

Таны ажил бол ямар нэг сайхан зүйлийг бүтээх юм бол үр дүн нь хүн бүрийн нүдэн дээр байдаг тул та энэ талаар хэт их ярих шаардлагагүй. Гэхдээ хэрэв та хашаан дээрх бичээсийг арилгавал хашаа нь сайхан харагдаж байвал эсвэл буруу зүйлийг арилгах хүртэл таны ажлыг хэн ч анзаарахгүй.

Сэтгэгдэл үлдээх, сэтгэгдэл бичих, мессеж илгээх, зураг байршуулах боломжтой аливаа үйлчилгээ эрт орой хэзээ нэгэн цагт спам, залилан, садар самууны асуудалтай тулгардаг. Үүнээс зайлсхийх боломжгүй, гэхдээ үүнийг шийдвэрлэх хэрэгтэй.

Намайг Михаил гэдэг, би Yandex үйлчилгээний хэрэглэгчдийг ийм асуудлаас хамгаалдаг Antispam багт ажилладаг. Бидний ажил бараг анзаарагддаггүй (энэ нь сайн хэрэг!), тиймээс өнөөдөр би энэ талаар илүү дэлгэрэнгүй ярих болно. Хэзээ зохицуулалт хийх нь ашиггүй, нарийвчлал нь түүний үр дүнтэй байдлын цорын ганц үзүүлэлт биш гэдгийг та ойлгох болно. Мөн бид муур, нохойн жишээг ашиглан хараалын талаар ярих болно, яагаад заримдаа "мараагч шиг сэтгэх" нь ашигтай байдаг.

Хэрэглэгчид өөрсдийн агуулгыг нийтэлдэг Yandex-д улам олон үйлчилгээ гарч ирж байна. Та Yandex.Q дээр асуулт асууж эсвэл хариулт бичиж, Yandex.Дүүрэг дэх хашааны мэдээг ярилцаж, Yandex.Maps дээр яриандаа замын хөдөлгөөний нөхцөл байдлыг хуваалцаж болно. Гэвч үйлчилгээний үзэгчдийн тоо өсөхөд энэ нь луйварчид болон спам илгээгчдийн сонирхлыг татах болно. Тэд ирж, сэтгэгдэл бөглөнө: тэд хялбар мөнгө санал болгож, гайхамшгийн эмчилгээг сурталчилж, нийгмийн ашиг тусыг амладаг. Спам илгээгчдээс болж зарим хэрэглэгчид мөнгөө алдаж, зарим нь спамаар дүүрсэн эмх замбараагүй үйлчилгээнд цаг зарцуулах хүсэлгүй болдог.

Мөн энэ нь цорын ганц асуудал биш юм. Бид хэрэглэгчдийг луйварчдаас хамгаалахаас гадна харилцааны таатай уур амьсгалыг бүрдүүлэхийг эрмэлздэг. Сэтгэгдэл дээр хүмүүс харааж зүхэж, доромжилсон үгтэй тулгарвал тэр хүмүүс орхиж, эргэж ирэхгүй байх магадлалтай. Энэ нь та ч гэсэн үүнийг даван туулах чадвартай байх ёстой гэсэн үг юм.

Цэвэр вэб

Бидэнд ихэвчлэн тохиолддог шиг, хайлтын үр дүнд спамтай тэмцдэг хэсэгт Хайлт дээр анхны хөгжүүлэлтүүд бий болсон. Арав орчим жилийн өмнө насанд хүрэгчдэд зориулсан контентыг гэр бүлийн хайлт болон 18+ ангиллын хариулт шаарддаггүй асуулгад шүүх даалгавар тэнд гарч ирсэн. Порно, хараалын тухай гараар бичсэн анхны толь бичгүүд ийм байдлаар гарч ирсэн бөгөөд тэдгээрийг шинжээчид дүүргэжээ. Гол ажил бол хүсэлтийг насанд хүрэгчдийн агуулгыг үзүүлэх боломжтой, хаана үзүүлэхгүй гэж ангилах явдал байв. Энэ даалгаврын хувьд тэмдэглэгээг цуглуулж, эвристикийг боловсруулж, загваруудыг сургасан. Хүсээгүй контентыг шүүх анхны бүтээн байгуулалтууд ингэж гарч ирэв.

Цаг хугацаа өнгөрөхөд UGC (хэрэглэгчийн үүсгэсэн контент) Yandex-д гарч эхэлсэн - хэрэглэгчид өөрсдөө бичсэн мессежүүд бөгөөд Yandex зөвхөн нийтэлдэг. Дээр дурдсан шалтгааны улмаас олон мессежийг хайхгүйгээр нийтлэх боломжгүй - зохицуулалт хийх шаардлагатай байв. Дараа нь тэд Yandex UGC-ийн бүх бүтээгдэхүүнийг спам болон халдагчдаас хамгаалах үйлчилгээг бий болгож, хайлт дахь хүсээгүй контентыг шүүж хөгжүүлэлтийг ашиглахаар шийджээ. Энэ үйлчилгээг "Цэвэр вэб" гэж нэрлэсэн.

Шинэ даалгавар, түлхэгчдийн тусламж

Эхэндээ зөвхөн энгийн автоматжуулалт л ажилласан: үйлчилгээнүүд бидэнд бичвэр илгээж, бид садар самуун үгсийн толь бичиг, порно толь бичиг, тогтмол хэллэгүүдийг ажиллуулж байсан - шинжээчид бүх зүйлийг гараар эмхэтгэсэн. Гэвч цаг хугацаа өнгөрөхөд энэ үйлчилгээг Yandex-ийн бүтээгдэхүүнүүдийн тоо нэмэгдэж, бид шинэ асуудлуудтай ажиллаж сурах хэрэгтэй болсон.

Ихэнхдээ хэрэглэгчид тойм бичихийн оронд утга учиргүй захидал нийтэлж, амжилтаа ахиулах гэж оролддог, заримдаа өрсөлдөгчийн компанийн тойм дээр өөрсдийн компанийг сурталчилж, заримдаа байгууллагуудыг төөрөлдүүлж, амьтны дэлгүүрийн талаархи тоймд бичдэг: " Төгс болгосон загас!" Хэзээ нэгэн цагт хиймэл оюун ухаан аливаа бичвэрийн утгыг төгс ойлгож сурах болно, гэхдээ одоо автоматжуулалт заримдаа хүнээс ч дор байдаг.

Гараар тэмдэглэгээ хийхгүйгээр бид үүнийг хийх боломжгүй нь тодорхой болсон бөгөөд бид хэлхээндээ хоёр дахь шатыг нэмсэн бөгөөд үүнийг хүн гараар шалгахаар илгээсэн. Ангилагч ямар ч асуудал олж хараагүй хэвлэгдсэн текстийг тэнд оруулсан болно. Ийм ажлын цар хүрээг та амархан төсөөлж байгаа тул бид зөвхөн үнэлгээчдэд найдаж зогсохгүй "олон түмний мэргэн ухааныг" ашигласан, өөрөөр хэлбэл бид толокеруудаас тусламж хүссэн. Тэд бол машин юу алдсаныг олж тогтооход тусалдаг бөгөөд ингэснээр үүнийг зааж өгдөг.

Ухаалаг кэш ба LSH хэш

Сэтгэгдэлтэй ажиллахад бидэнд тулгардаг өөр нэг асуудал бол спам, бүр тодруулбал түүний хэмжээ, тархалтын хурд юм. Yandex.Region-ын үзэгчид хурдацтай өсч эхлэхэд спам илгээгчид тэнд ирсэн. Тэд текстийг бага зэрэг өөрчлөх замаар ердийн хэллэгийг тойрч сурсан. Мэдээжийн хэрэг спамыг олж устгасан хэвээр байгаа боловч Yandex-ийн хэмжээнд 5 минутын турш нийтэлсэн хүлээн зөвшөөрөгдөөгүй мессежийг олон зуун хүн харж болно.

Хэрхэн сэтгэгдлээ нээж, спамд живэхгүй байх вэ

Мэдээжийн хэрэг, энэ нь бидэнд тохирохгүй байсан бөгөөд бид LSH дээр суурилсан ухаалаг текст кэш хийсэн.орон нутгийн мэдрэмтгий хэшинг). Энэ нь дараах байдлаар ажилладаг: бид текстийг хэвийн болгож, холбоосыг устгаж, n-грамм (n үсгийн дараалал) болгон хуваасан. Дараа нь n-грамын хэшийг тооцоолж, тэдгээрээс баримт бичгийн LSH векторыг бүтээв. Гол нь ижил төстэй бичвэрүүд бага зэрэг өөрчлөгдсөн ч ижил төстэй вектор болж хувирсан явдал юм.

Энэхүү шийдэл нь ижил төстэй бичвэрүүдэд ангилагч ба толокеруудын дүгнэлтийг дахин ашиглах боломжтой болсон. Спамын довтолгооны үеэр эхний мессеж сканнердаж, "спам" гэсэн дүгнэлттэй кэш рүү ормогц ижил төстэй бүх шинэ мессежүүд, тэр ч байтугай өөрчилсөн мессежүүд ижил шийдвэрийг хүлээн авч, автоматаар устгагдсан. Хожим нь бид спам ангилагчийг хэрхэн сургах, автоматаар дахин сургах талаар сурсан ч энэхүү "ухаалаг кэш" нь бидэнтэй хамт байсан бөгөөд бидэнд тусалдаг хэвээр байна.

Сайн текст ангилагч

Спамтай тэмцэх завсарлага авахгүйгээр бид агуулгын 95% нь гараар зохицуулагддаг гэдгийг ойлгосон: ангилагч нь зөвхөн зөрчилд хариу үйлдэл үзүүлдэг бөгөөд ихэнх текстүүд сайн байдаг. Бид 95 тохиолдлын 100-д нь "Бүх зүйл хэвийн" гэсэн үнэлгээ өгдөг цэвэрлэгчийг ачдаг. Би ер бусын ажил хийх хэрэгтэй болсон - сайн агуулгын ангилагч хийх, аз болоход энэ хугацаанд хангалттай тэмдэглэгээ хуримтлагдсан.

Эхний ангилагч нь иймэрхүү харагдаж байв: бид текстийг лемматжуулж (үгүүдийг анхны хэлбэрт нь оруулаад), ярианы бүх туслах хэсгүүдийг хаяж, урьдчилан бэлтгэсэн "сайн үгсийн толь бичиг" ашигладаг. Хэрэв текст дэх бүх үгс "сайн" байвал текст бүхэлдээ ямар ч зөрчил агуулаагүй болно. Өөр өөр үйлчилгээнүүдэд энэ арга нь гарын авлагын тэмдэглэгээг 25-35% автоматжуулсан. Мэдээжийн хэрэг, энэ арга нь тийм ч тохиромжтой биш юм: хэд хэдэн гэм зэмгүй үгсийг нэгтгэж, маш доромжилсон мэдэгдэл авахад хялбар байдаг, гэхдээ энэ нь автоматжуулалтын сайн түвшинд хурдан хүрэх боломжийг олгож, илүү төвөгтэй загваруудыг сургах цагийг бидэнд олгосон.

Сайн текст ангилагчдын дараагийн хувилбаруудад шугаман загвар, шийдвэрийн мод, тэдгээрийн хослолууд аль хэдийн орсон байна. Бүдүүлэг, доромжлолыг тэмдэглэхийн тулд бид BERT мэдрэлийн сүлжээг туршиж үздэг. Тухайн үгийн утгыг контекст болон өөр өөр өгүүлбэрийн үгсийн хоорондын уялдаа холбоог ойлгох нь чухал бөгөөд БЕРТ үүнийг сайн хийдэг. (Дашрамд хэлэхэд саяхан News-ийн хамт олон гэж хэлсэн, стандарт бус ажилд технологийг хэрхэн ашигладаг - толгойн хэсэгт алдаа олох.) Үүний үр дүнд үйлчилгээнээс хамааран урсгалын 90% хүртэл автоматжуулах боломжтой болсон.

Нарийвчлал, бүрэн бүтэн байдал, хурд

Хөгжүүлэхийн тулд та зарим автомат ангилагч ямар ашиг тус авчирдаг, тэдгээрийн өөрчлөлт, гарын авлагын шалгалтын чанар муудаж байгаа эсэхийг ойлгох хэрэгтэй. Үүнийг хийхийн тулд бид нарийвчлал болон эргэн санах хэмжигдэхүүнийг ашигладаг.

Нарийвчлал гэдэг нь муу агуулгын талаарх бүх шийдвэрийн зөв шийдвэрийн эзлэх хувь юм. Нарийвчлал өндөр байх тусам худал эерэг үр дүн бага байх болно. Хэрэв та нарийвчлалыг анхаарч үзэхгүй бол онолын хувьд та бүх спам, садар самууныг устгах боломжтой бөгөөд эдгээрийн хамт сайн мессежүүдийн талыг нь устгаж болно. Нөгөөтэйгүүр, хэрэв та зөвхөн нарийвчлалд найдаж байгаа бол хамгийн сайн технологи нь хэнийг ч барьж чаддаггүй технологи байх болно. Тиймээс бүрэн байдлын үзүүлэлт бас байдаг: муу агуулгын нийт эзлэхүүний дотор тодорхойлсон муу агуулгын эзлэх хувь. Эдгээр хоёр үзүүлэлт нь бие биенээ тэнцвэржүүлдэг.

Хэмжихийн тулд бид үйлчилгээ тус бүрээр ирж буй урсгалыг бүхэлд нь түүвэрлэн, шинжээчдийн үнэлгээ, машины шийдлүүдтэй харьцуулахын тулд агуулгын дээжийг үнэлгээчдэд өгдөг.

Гэхдээ бас нэг чухал үзүүлэлт бий.

Хүлээн зөвшөөрөгдөөгүй мессежийг 5 минутын дотор ч олон зуун хүн харж болно гэж би дээр бичсэн. Тиймээс бид муу контентыг нуухаасаа өмнө хүмүүст хичнээн удаа үзүүлснээ тоолдог. Энэ нь үр дүнтэй ажиллахад хангалтгүй учраас энэ нь чухал юм - та бас хурдан ажиллах хэрэгтэй. Тэгээд хараалын эсрэг хамгаалалт босгохдоо бид үүнийг бүрэн дүүрэн мэдэрсэн.

Муур, нохойн жишээг ашиглан антиматизм

Уянгын жижиг ухралт. Зарим хүмүүс садар самуун, доромжлол нь хортой холбоос шиг аюултай биш, спам шиг ядаргаатай биш гэж хэлж болно. Гэхдээ бид сая сая хэрэглэгчдийн харилцааны тав тухтай нөхцлийг бүрдүүлэхийг хичээдэг бөгөөд хүмүүс доромжлуулсан газар руу буцаж очих дургүй байдаг. Хараал хэлэх, доромжлохыг хориглох нь олон нийгэмлэг, тэр дундаа Хабрегийн дүрэмд тусгагдсан байдаг нь дэмий хоосон зүйл биш юм. Гэхдээ бид ухардаг.

хараалын толь бичиг нь орос хэлний бүх баялагийг даван туулж чадахгүй. Хэдийгээр хараалын үндсэн дөрвөн үндэс байдаг ч эдгээрээс та ердийн хөдөлгүүрт баригдахгүй олон тооны үгсийг гаргаж чадна. Нэмж дурдахад та үгийн хэсгийг галиглан бичих, ижил төстэй хослол бүхий үсгүүдийг солих, үсгүүдийг дахин цэгцлэх, од нэмэх гэх мэт боломжтой. Заримдаа контекстгүйгээр хэрэглэгч хараалын үг хэлснийг тодорхойлох боломжгүй байдаг. Бид Хабрын дүрмийг хүндэтгэдэг тул бид үүнийг амьд жишээгээр биш, харин муур, нохойгоор харуулах болно.

Хэрхэн сэтгэгдлээ нээж, спамд живэхгүй байх вэ

"Хууль" гэж муур хэлэв. Гэхдээ муур өөр үг хэлсэн гэдгийг бид ойлгож байна ...

Бид толь бичигт зориулсан "бүдэгхэн тохирох" алгоритмууд болон илүү ухаалаг урьдчилсан боловсруулалтын талаар бодож эхэлсэн: бид галиглах, хоосон зай, цэг таслалыг хооронд нь нааж, хэв маягийг хайж, тэдгээр дээр тусдаа тогтмол хэллэг бичсэн. Энэ арга нь үр дүнг авчирсан боловч ихэнхдээ нарийвчлалыг бууруулж, хүссэн бүрэн байдлыг хангаж чаддаггүй байв.

Дараа нь бид "мраглагчид шиг бодохоор" шийдсэн. Бид өөрсдөө өгөгдлийн чимээ шуугианыг нэвтрүүлж эхэлсэн: бид үсгүүдийг дахин цэгцэлж, үсгийн алдаа гаргаж, үсгүүдийг ижил төстэй үсгээр сольсон гэх мэт. Үүний анхны тэмдэглэгээг том хэмжээний текстэнд толь бичгүүдийг ашиглах замаар хийсэн. Нэг өгүүлбэр аваад хэд хэдэн янзаар мушгивал олон өгүүлбэр гарч ирнэ. Ингэснээр та сургалтын дээжийг хэдэн арван дахин нэмэгдүүлэх боломжтой. Үүссэн усан сан дээр нөхцөл байдлыг харгалзан үзсэн ухаалаг загвар дээр сургах л үлдлээ.

Хэрхэн сэтгэгдлээ нээж, спамд живэхгүй байх вэ

Эцсийн шийдвэрийн талаар ярихад эрт байна. Бид энэ асуудалд хандах хандлагыг туршиж үзсэн хэвээр байгаа боловч хэд хэдэн давхаргаас бүрдсэн энгийн симболын сүлжээ нь толь бичиг, ердийн хөдөлгүүрээс хамаагүй илүү байгааг бид аль хэдийн харж байна: нарийвчлал, санах ойг нэмэгдүүлэх боломжтой.

Мэдээжийн хэрэг, хамгийн дэвшилтэт автоматжуулалтыг тойрч гарах арга зам үргэлж байх болно гэдгийг бид ойлгож байна, ялангуяа асуудал маш аюултай үед: тэнэг машин ойлгохгүй байхаар бичээрэй. Энд, спамтай тэмцэхийн нэгэн адил бидний зорилго бол садар самуун зүйл бичих боломжийг арилгах биш, харин бидний даалгавар бол тоглоом нь лааны үнэ цэнэтэй зүйл биш гэдгийг батлах явдал юм.

Санал бодлоо хуваалцах, харилцах, сэтгэгдэл бичих боломжийг нээх нь тийм ч хэцүү биш юм. Аюулгүй, тав тухтай нөхцлийг бүрдүүлэх, хүмүүст хүндэтгэлтэй хандах нь илүү хэцүү байдаг. Мөн үүнгүйгээр аль ч нийгмийн хөгжил байхгүй болно.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх