Бид зар сурталчилгааг хэрхэн зохицуулдаг

Бид зар сурталчилгааг хэрхэн зохицуулдаг

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

Өнөөдөр бид Юла болон Одноклассники хоорондын хамтын ажиллагааны талаар танд хэлэх болно, энэ нь Юла дахь зар сурталчилгааг үр дүнтэй зохицуулахад тусалдаг.

Ерөнхийдөө синергетик нь маш хэрэгтэй зүйл бөгөөд орчин үеийн ертөнцөд технологи, чиг хандлага маш хурдан өөрчлөгдөж байгаа үед энэ нь аврагч болж хувирдаг. Яагаад аль хэдийн зохион бүтээсэн, таны өмнө санаанд орж ирсэн зүйлийг зохион бүтээхэд хомс нөөц, цаг хугацаа зарцуулдаг вэ?

Зураг, текст, холбоос зэрэг хэрэглэгчийн агуулгыг зохицуулах бүрэн даалгавартай тулгарах үед бид ижил зүйлийг бодсон. Манай хэрэглэгчид өдөр бүр хэдэн сая контентыг Yula-д байршуулдаг бөгөөд автомат боловсруулалтгүйгээр энэ бүх өгөгдлийг гараар зохицуулах боломжгүй юм.

Тиймээс бид бэлэн модератор платформыг ашигласан бөгөөд тэр үед Одноклассники дахь манай хамтрагчид "бараг төгс" байдалд хүрсэн байв.

Яагаад Одноклассники вэ?

Өдөр бүр олон арван сая хэрэглэгчид олон нийтийн сүлжээнд орж, зурагнаас эхлээд видео, текст зэрэг олон тэрбум контентыг нийтэлдэг. Odnoklassniki модератор платформ нь маш их хэмжээний өгөгдлийг шалгаж, спам илгээгч, роботтой тэмцэхэд тусалдаг.

OK модератор баг нь 12 жилийн турш хэрэглүүрээ сайжруулж байгаа тул маш их туршлага хуримтлуулсан. Тэд өөрсдийн бэлэн шийдлүүдийг хуваалцахаас гадна платформынхаа архитектурыг бидний тодорхой даалгаварт тохируулан өөрчлөх боломжтой байх нь чухал юм.

Бид зар сурталчилгааг хэрхэн зохицуулдаг

Одооноос товчхондоо бид зүгээр л OK зохицуулах платформыг "платформ" гэж нэрлэх болно.

Бүх зүйл хэрхэн ажилладаг

Юла болон Одноклассники хоёрын хооронд мэдээлэл солилцох замаар дамжуулан хийгддэг Apache Kafka.

Бид яагаад энэ хэрэгслийг сонгосон бэ:

  • Юла хэл дээр бүх зар сурталчилгаа нь шууд зохицуулагддаг тул эхэндээ синхрон хариу өгөх шаардлагагүй байв.
  • Хэрэв догол мөр гарч, Yula эсвэл Odnoklassniki-г ашиглах боломжгүй, тэр дундаа зарим оргил ачааллын улмаас Кафкагийн өгөгдөл хаана ч алга болохгүй бөгөөд дараа нь унших боломжтой.
  • Платформ нь Кафкатай аль хэдийн нэгдсэн байсан тул аюулгүй байдлын ихэнх асуудлыг шийдсэн.

Бид зар сурталчилгааг хэрхэн зохицуулдаг

Yula-д хэрэглэгчийн үүсгэсэн эсвэл өөрчилсөн зар бүрийн хувьд өгөгдөл бүхий JSON үүсгэгдэж, Кафка-д дараагийн зохицуулалт хийх зорилгоор байрлуулна. Кафкагаас зарлалуудыг платформд ачаалж, автоматаар эсвэл гараар шүүдэг. Муу зар сурталчилгааг тодорхой шалтгаанаар хаадаг бөгөөд платформ нь зөрчил илрээгүй тохиолдолд "сайн" гэж тэмдэглэдэг. Дараа нь бүх шийдвэрийг Юла руу илгээж, үйлчилгээнд хэрэглэнэ.

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

Автомат боловсруулалт

Зар сурталчилгаа платформ дээр гарсны дараа юу болох вэ? Зар бүрийг хэд хэдэн нэгжид хуваадаг:

  • нэр,
  • тодорхойлолт,
  • гэрэл зураг,
  • хэрэглэгчийн сонгосон ангилал болон зарын дэд ангилал,
  • үнэ

Бид зар сурталчилгааг хэрхэн зохицуулдаг

Дараа нь платформ нь давхардлыг олохын тулд аж ахуйн нэгж бүрт кластер хийдэг. Түүнээс гадна текст болон гэрэл зургуудыг янз бүрийн схемийн дагуу нэгтгэдэг.

Кластер хийхээс өмнө тусгай тэмдэгтүүд, өөрчлөгдсөн үсэг болон бусад хог хаягдлыг арилгахын тулд текстийг хэвийн болгодог. Хүлээн авсан өгөгдлийг N-граммд хувааж, тус бүр нь хэшлэгдсэн байна. Үр дүн нь олон өвөрмөц хэшүүд юм. Текстүүдийн ижил төстэй байдлыг тодорхойлно Жаккардын хэмжүүр үүссэн хоёр багцын хооронд. Хэрэв ижил төстэй байдал нь босго хэмжээнээс их байвал текстийг нэг кластерт нэгтгэнэ. Ижил төстэй кластеруудын хайлтыг хурдасгахын тулд MinHash болон Locality-ийн мэдрэмжтэй хэшинг ашигладаг.

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

Сүүлийн арга бол хамгийн "хүнд" юм. Загварыг сургахын тулд N нь А-тай адилгүй, P нь А-тай төстэй (хагас давхардсан) гурвалсан зургуудыг (N, A, P) сонгосон. Дараа нь мэдрэлийн сүлжээ нь A ба P-г аль болох ойртуулж, A ба N-г аль болох хол болгож сурсан. Энэ нь урьдчилан бэлтгэгдсэн сүлжээнээс зүгээр л суулгац авахтай харьцуулахад цөөн тооны худал эерэг үр дүнд хүргэдэг.

Мэдрэлийн сүлжээ нь дүрсийг оролт болгон хүлээн авахдаа тэдгээр тус бүрд N(128) хэмжээст вектор үүсгэж, зургийн ойролцоо байгаа эсэхийг үнэлэх хүсэлтийг тавьдаг. Дараа нь ойрын зургуудыг давхардсан гэж тооцох босго хэмжээг тооцоолно.

Энэхүү загвар нь pHash харьцуулалтыг тойрч гарахын тулд ижил бүтээгдэхүүнийг өөр өөр өнцгөөс тусгайлан авсан спам илгээгчдийг чадварлаг олох боломжтой.

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

Эцсийн шатанд давхардсан зарыг текст болон зургаар нэгэн зэрэг хайдаг.

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

Үүсгэсэний дараа бүх кластерууд хэд хэдэн автомат шүүлтүүрээр дамждаг. Шүүлтүүр бүр кластерт оноо өгдөг: энэ шүүлтүүрийн тодорхойлсон аюулыг агуулсан байх магадлал хэр зэрэг.

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

Бид зар сурталчилгааг хэрхэн зохицуулдаг
Ангилал буруу гэж блоклосон тухай мэдэгдэл.

Машины сургалт нь манай платформ дээр гэртээ байгаа мэт санагддаг. Жишээлбэл, түүний тусламжтайгаар бид ОХУ-д хориглосон барааны нэр, тайлбарыг хайдаг. Мэдрэлийн сүлжээний загварууд нь URL, спам текст, утасны дугаар, мөн ижил "хориотой" мэдээллийг агуулж байгаа эсэхийг шалгахын тулд зургийг нарийн "шалгадаг".

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

Бид зар сурталчилгааг хэрхэн зохицуулдаг
Хоокаг самоварын дүрд хувиргаж зарах гэж байна.

Нарийн төвөгтэй шүүлтүүрүүдтэй зэрэгцэн энгийн шүүлтүүрүүд ажилладаг бөгөөд тексттэй холбоотой тодорхой асуудлуудыг шийддэг.

  • антимат;
  • URL болон утасны дугаар илрүүлэгч;
  • шуурхай мессенжер болон бусад холбоо барих хаягийг дурдах;
  • хямд үнэ;
  • юу ч зардаггүй зар гэх мэт.

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

Хэрэв детекторуудын аль нь ч ажиллаагүй бол зар сурталчилгаа төгс дарааллаар "хамгийн их магадлалтай" гэсэн хариуг Юла руу илгээдэг. Бид энэ хариултыг өөрсдөө ашигладаг бөгөөд худалдагчийг захиалсан хэрэглэгчид шинэ бүтээгдэхүүн байгаа тухай мэдэгдэл хүлээн авдаг.

Бид зар сурталчилгааг хэрхэн зохицуулдаг
Худалдагч шинэ бүтээгдэхүүнтэй болсон тухай мэдэгдэл.

Үүний үр дүнд зар бүр нь мета өгөгдлөөр "дарагдсан" бөгөөд тэдгээрийн зарим нь зар үүсгэх үед үүсдэг (зохиогчийн IP хаяг, хэрэглэгчийн агент, платформ, газарзүйн байршил гэх мэт), үлдсэн хэсэг нь шүүлтүүр тус бүрээс гаргасан оноо юм. .

Зарын дараалал

Зар сурталчилгаа платформ дээр гарч ирэхэд систем нь дарааллын аль нэгэнд тавьдаг. Дараалал бүрийг математикийн томьёо ашиглан үүсгэсэн бөгөөд зар сурталчилгааны мета өгөгдлийг аливаа муу хэв маягийг илрүүлэх арга замаар нэгтгэдэг.

Жишээлбэл, та Санкт-Петербургээс ирсэн Юла хэрэглэгчдийн "Гар утас" ангилалд зар сурталчилгааны дараалал үүсгэж болно, гэхдээ тэдний IP хаяг нь Москва эсвэл бусад хотоос ирсэн байна.

Бид зар сурталчилгааг хэрхэн зохицуулдаг
Өөр өөр хотуудад нэг хэрэглэгчийн байршуулсан зар сурталчилгааны жишээ.

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

Дараалал бүр өөрийн томъёоны дагуу зар сурталчилгаанд эцсийн оноо өгдөг. Дараа нь та янз бүрийн аргаар үргэлжлүүлж болно:

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

Бид зар сурталчилгааг хэрхэн зохицуулдаг

Эдгээр дараалал яагаад хэрэгтэй вэ? Нэг хэрэглэгч галт зэвсгийн зургийг байршуулсан гэж бодъё. Мэдрэлийн сүлжээ нь түүнд 95-100 оноо өгч, зураг дээр зэвсэг байгаа эсэхийг 99 хувийн нарийвчлалтайгаар тодорхойлдог. Гэхдээ онооны утга 95% -иас доогуур байвал загварын нарийвчлал буурч эхэлдэг (энэ нь мэдрэлийн сүлжээний загваруудын онцлог юм).

Үүний үр дүнд онооны загварт үндэслэн дараалал үүсч, 95-аас 100 хүртэл авсан зарыг автоматаар "Хориотой бүтээгдэхүүн" гэж хаадаг. 95-аас доош оноо авсан зарыг гар аргаар боловсруулах зорилгоор зохицуулагчид илгээдэг.

Бид зар сурталчилгааг хэрхэн зохицуулдаг
Шоколадтай Беретта хайрцагтай. Зөвхөн гараар зохицуулахад зориулагдсан! 🙂

Гараар зохицуулах

2019 оны эхээр Юла дахь нийт зар сурталчилгааны 94 орчим хувь нь автоматаар зохицуулагддаг.

Бид зар сурталчилгааг хэрхэн зохицуулдаг

Хэрэв платформ нь зарим зар сурталчилгааг шийдэж чадахгүй бол тэдгээрийг гараар зохицуулахаар илгээдэг. Одноклассники өөрсдийн хэрэгслийг боловсруулсан: зохицуулагчид зориулсан даалгавар нь хурдан шийдвэр гаргахад шаардлагатай бүх мэдээллийг нэн даруй харуулдаг - зар сурталчилгаа нь тохиромжтой эсвэл хаагдсан байх ёстой бөгөөд энэ нь шалтгааныг харуулж байна.

Гар аргаар тохируулах явцад үйлчилгээний чанар мууддаггүйн тулд хүмүүсийн ажлыг байнга хянаж байдаг. Жишээлбэл, даалгаврын урсгалд зохицуулагчид "хавхнууд" - аль хэдийн бэлэн шийдлүүд байгаа заруудыг харуулдаг. Зохицуулагчийн шийдвэр нь дууссан шийдвэртэй давхцахгүй бол зохицуулагчид алдаа өгнө.

Модератор дунджаар нэг зарыг шалгахад 10 секунд зарцуулдаг. Түүнээс гадна алдааны тоо нь бүх баталгаажсан зар сурталчилгааны 0,5% -иас ихгүй байна.

Хүмүүсийн зохицуулалт

Одноклассники дахь хамт олон цаашаа явж, "үзэгчдийн тусламж" -ын давуу талыг ашигласан: тэд олон нийтийн сүлжээнд зориулсан тоглоомын програм бичсэн бөгөөд та маш их хэмжээний өгөгдлийг хурдан тэмдэглэж, зарим нэг муу шинж тэмдгийг онцолж болно - Одноклассники Модератор (https://ok.ru/app/moderator). Агуулгыг илүү тааламжтай болгохыг хичээж буй OK хэрэглэгчдийн тусламжийг ашиглах сайн арга.

Бид зар сурталчилгааг хэрхэн зохицуулдаг
Утасны дугаартай зурган дээр хэрэглэгчид шошго тавьдаг тоглоом.

Платформ дахь зар сурталчилгааны аливаа дарааллыг Odnoklassniki Moderator тоглоом руу дахин чиглүүлэх боломжтой. Тоглоомын хэрэглэгчдийн тэмдэглэсэн бүх зүйлийг баталгаажуулахын тулд дотоод зохицуулагчид илгээдэг. Энэхүү схем нь шүүлтүүрийг хараахан хийгээгүй зар сурталчилгааг хааж, сургалтын дээжийг нэгэн зэрэг үүсгэх боломжийг олгодог.

Зохицуулах үр дүнг хадгалж байна

Бид аль хэдийн шийдвэрлэсэн зар сурталчилгааг дахин боловсруулахгүйн тулд зохицуулалт хийх явцад гаргасан бүх шийдвэрийг хадгалдаг.

Зар сурталчилгаан дээр үндэслэн өдөр бүр сая сая кластерууд үүсдэг. Цаг хугацаа өнгөрөх тусам кластер бүрийг "сайн" эсвэл "муу" гэж тэмдэглэдэг. Тэмдэглэгээ бүхий кластерт орж буй шинэ зар эсвэл түүний засвар бүр автоматаар кластераас шийдвэр хүлээн авдаг. Өдөрт 20 мянга орчим ийм автомат тогтоол байдаг.

Бид зар сурталчилгааг хэрхэн зохицуулдаг

Хэрэв кластерт шинэ мэдэгдэл ирэхгүй бол түүнийг санах ойноос устгаж, түүний хэш болон шийдлийг Apache Cassandra руу бичнэ.

Платформ шинэ зар сурталчилгаа хүлээн авахдаа эхлээд аль хэдийн үүсгэгдсэн хүмүүсийн дунд ижил төстэй кластер хайж, үүнээс шийдэл гаргахыг хичээдэг. Хэрэв ийм кластер байхгүй бол платформ Кассандра руу очиж, тэнд харагдана. Чи үүнийг олсон уу? Гайхалтай, шийдлийг кластерт хэрэглэж, Юла руу илгээдэг. Өдөрт дунджаар 70 мянга орчим ийм "давтан" шийдвэр гардаг бөгөөд энэ нь нийт дүнгийн 8% юм.

Дүгнэж хэлэх

Бид хоёр жил хагасын турш Одноклассники модератор платформыг ашиглаж байна. Бид үр дүнд дуртай:

  • Бид өдөрт нийт зар сурталчилгааны 94%-ийг автоматаар зохицуулдаг.
  • Нэг зар сурталчилгааг зохицуулах зардлыг 2 рубльээс 7 копейк болгон бууруулсан.
  • Бэлэн болсон хэрэгслийн ачаар бид зохицуулагчдыг удирдахтай холбоотой асуудлуудыг мартсан.
  • Бид ижил тооны зохицуулагч, төсвөөр гараар боловсруулсан зар сурталчилгааны тоог 2,5 дахин нэмэгдүүлсэн. Мөн автомат удирдлагын ачаар гар аргаар зохицуулах чанар нэмэгдсэн бөгөөд алдааны 0,5% орчим хэлбэлздэг.
  • Бид шинэ төрлийн спамыг шүүлтүүрээр хурдан шуурхай хамгаалдаг.
  • Бид шинэ хэлтсүүдийг зохицуулалтад хурдан холбодог "Юла босоо". 2017 оноос хойш Юла үл хөдлөх хөрөнгө, сул орон тоо, авто босоо чиглэлүүдийг нэмсэн.

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

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