{"id":30044,"date":"2019-10-31T21:33:22","date_gmt":"2019-10-31T18:33:22","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kak-my-predskazyvali-ottok-podojdya-k-nemu-kak-k-stihijnomu-bedstviyu\/"},"modified":"2019-10-31T21:33:22","modified_gmt":"2019-10-31T18:33:22","slug":"kak-my-predskazyvali-ottok-podojdya-k-nemu-kak-k-stihijnomu-bedstviyu","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/kak-my-predskazyvali-ottok-podojdya-k-nemu-kak-k-stihijnomu-bedstviyu","title":{"rendered":"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Uneori, pentru a rezolva o problem\u0103, trebuie doar s\u0103 te ui\u021bi la ea dintr-un alt unghi. Chiar dac\u0103 \u00een ultimii zece ani, probleme similare au fost rezolvate \u00een acela\u0219i mod cu efecte diferite, nu \u00eenseamn\u0103 c\u0103 aceast\u0103 metod\u0103 este singura.<\/p>\n<p>Exist\u0103 un lucru numit plecare a clien\u021bilor. Este ceva inevitabil, deoarece clien\u021bii oric\u0103rei companii pot, din diverse motive, s\u0103 \u00eenceteze s\u0103 foloseasc\u0103 produsele sau serviciile sale. Evident, pentru o companie, plecarea este, de\u0219i natural\u0103, o ac\u021biune de dorit, prin urmare, toat\u0103 lumea \u00eencearc\u0103 s\u0103 minimizeze acest fenomen. \u0218i mai bine ar fi s\u0103 prezicem probabilitatea plec\u0103rii unei anumite categorii de utilizatori sau a unui utilizator specific \u0219i s\u0103 propunem anumite m\u0103suri pentru reten\u021bie.<\/p>\n<p>Analiza \u0219i \u00eencercarea de a re\u021bine clientul, dac\u0103 este posibil, este necesar\u0103, cel pu\u021bin, din urm\u0103toarele motive:<\/p>\n<ul>\n<li><b>atragerea de noi clien\u021bi este mai scump\u0103 dec\u00e2t procedurile de reten\u021bie<\/b>. De obicei, este necesar s\u0103 cheltuie\u0219ti o sum\u0103 pentru atragerea de noi clien\u021bi (publicitate), \u00een timp ce clien\u021bii existen\u021bi pot fi activa\u021bi printr-o ofert\u0103 special\u0103 cu condi\u021bii speciale;<\/li>\n<li><b>\u00een\u021belegerea motivelor plec\u0103rii clien\u021bilor este cheia pentru \u00eembun\u0103t\u0103\u021birea produselor \u0219i serviciilor<\/b>.<\/li>\n<\/ul>\n<p>\nExist\u0103 abord\u0103ri standard pentru prognozarea plec\u0103rii. Dar, la unul dintre campionatele de AI, am decis s\u0103 \u00eencerc\u0103m distribu\u021bia Weibull pentru acest scop. Este folosit\u0103 cel mai frecvent pentru analiza supravie\u021buirii, prognozarea vremii, analiza dezastrelor naturale, inginerie industrial\u0103 \u0219i altceva similar. Distribu\u021bia Weibull este o func\u021bie de distribu\u021bie special\u0103, parametrizat\u0103 prin doi parametri. <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/d30a25becc44269d51957349c6e8b4a0.png\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/42092030604bf54a98c8379fd532bffe.png\" style=\"display:block;margin: 0 auto;\" \/>. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/rostelecom\/blog\/444694\/\"><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/62e1933c8335dd16d765f0e358952d84.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<i>Wikipedia<\/i><\/p>\n<p>\u00cen general, este o idee interesant\u0103, dar pentru prognozarea plec\u0103rii, \u0219i \u00een general \u00een fintech, nu este folosit\u0103 at\u00e2t de des. Sub tipar v\u0103 vom povesti cum am realizat acest lucru (Laboratorul de analiz\u0103 inteligent\u0103 a datelor), c\u00e2\u0219tig\u00e2nd \u00een acela\u0219i timp aurul la Campionatul de inteligen\u021b\u0103 artificial\u0103 la categoria \u201eAI \u00een b\u0103nci\u201d.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Despre plecare \u00een general<\/h2>\n<p>\nHai s\u0103 \u00een\u021belegem pu\u021bin ce este reten\u021bia clien\u021bilor \u0219i de ce este at\u00e2t de important\u0103. Pentru afaceri, baza de clien\u021bi este esen\u021bial\u0103. Aceast\u0103 baz\u0103 se completeaz\u0103 cu clien\u021bi noi, care afl\u0103 despre produs sau serviciu prin publicitate, folosesc activ produsele pentru o perioad\u0103 de timp \u0219i, dup\u0103 un anumit interval, \u00eenceteaz\u0103 s\u0103 le foloseasc\u0103. Aceast\u0103 perioad\u0103 este numit\u0103 \u201eCiclul de via\u021b\u0103 al clientului\u201d (eng. Customer Lifecycle) \u2014 un termen care descrie etapele prin care trece un client c\u00e2nd afl\u0103 despre un produs, ia o decizie de cump\u0103rare, face plata, utilizeaz\u0103 \u0219i devine un consumator loial, iar ulterior, din diverse motive, \u00eenceteaz\u0103 utilizarea produselor. A\u0219adar, reten\u021bia reprezint\u0103 etapa final\u0103 a ciclului de via\u021b\u0103 al clientului, atunci c\u00e2nd clientul \u00eenceteaz\u0103 s\u0103 mai utilizeze serviciile, iar pentru afacere, aceasta \u00eenseamn\u0103 c\u0103 din acel moment clientul nu mai aduce profit \u0219i, \u00een general, niciun beneficiu. <\/p>\n<p>Fiecare client al b\u0103ncii este o persoan\u0103 concret\u0103, care alege un anumit tip de card bancar \u00een func\u021bie de nevoile sale. C\u0103l\u0103tore\u0219te frecvent \u2014 \u00eei va fi util un card cu mile. Face multe cump\u0103r\u0103turi \u2014 salut, card cu cashback. Face multe achizi\u021bii \u00een magazine specifice \u2014 pentru ace\u0219tia deja exist\u0103 un plastic partener. Bine\u00een\u021beles, uneori cardul este ales \u0219i pe criteriul \u201eCele mai ieftine costuri de \u00eentre\u021binere\u201d. \u00cen general, aici variabilele sunt numeroase.<\/p>\n<p>De asemenea, persoana alege \u0219i banca \u2014 care ar fi sensul de a alege cardul unei b\u0103nci, a c\u0103rei sucursale exist\u0103 doar \u00een Moscova \u0219i \u00eemprejurimi, c\u00e2nd tu e\u0219ti din Habarovsk? Chiar dac\u0103 cardul acelei b\u0103nci ar fi de dou\u0103 ori mai avantajos, prezen\u021ba sucursalelor b\u0103ncii \u00een apropiere r\u0103m\u00e2ne un criteriu important. Da, 2019 este deja aici \u0219i digitalul este totul pentru noi, dar unele probleme la anumite b\u0103nci pot fi rezolvate doar \u00een sucursal\u0103. \u00cen plus, o parte a popula\u021biei acord\u0103 mult mai mult\u0103 \u00eencredere b\u0103ncii fizice dec\u00e2t unei aplica\u021bii pe smartphone, \u0219i acest lucru trebuie luat \u00een considerare.<\/p>\n<p>Ca urmare, exist\u0103 multe motive pentru care o persoan\u0103 poate renun\u021ba la produsele b\u0103ncii (sau la banc\u0103 \u00een sine). A schimbat locul de munc\u0103, iar tariful cardului s-a schimbat dintr-unul de salariu \u00eentr-unul pentru \u201emuritorii de r\u00e2nd\u201d, care este mai pu\u021bin avantajos. S-a mutat \u00eentr-un alt ora\u0219, unde nu exist\u0103 sucursale ale b\u0103ncii. Nu i-a pl\u0103cut interac\u021biunea cu un operator necalificat din sucursal\u0103. A\u0219adar, motivele pentru \u00eenchiderea contului pot fi chiar mai numeroase dec\u00e2t cele pentru utilizarea produsului.<\/p>\n<p>\u00cen plus, clientul nu trebuie s\u0103-\u0219i exprime \u00een mod explicit inten\u021bia - de a merge la banc\u0103 \u0219i a scrie o cerere, ci poate pur \u0219i simplu s\u0103 \u00eenceteze utilizarea produselor, f\u0103r\u0103 a rezilia contractul. De aceea, pentru a \u00een\u021belege astfel de situa\u021bii, s-a decis utilizarea \u00eenv\u0103\u021b\u0103rii automate \u0219i a inteligen\u021bei artificiale.<\/p>\n<p>Mai mult, pierderea clien\u021bilor poate avea loc \u00een orice industrie (telecomunica\u021bii, furnizori de internet, companii de asigur\u0103ri, \u00een general, oriunde exist\u0103 o baz\u0103 de clien\u021bi \u0219i tranzac\u021bii periodice).<\/p>\n<h2>Ce am f\u0103cut<\/h2>\n<p>\n\u00cen primul r\u00e2nd, a fost necesar s\u0103 se descrie o limit\u0103 clar\u0103 - de la ce moment \u00eencepem s\u0103 consider\u0103m clientul ca fiind plecat. Din perspectiva b\u0103ncii care ne-a oferit datele pentru analiz\u0103, starea de activitate a clientului era binar\u0103 - fie era activ, fie nu. Exist\u0103 un flag numit ACTIVE_FLAG \u00een tabelul \u00abActivitate\u00bb, al c\u0103rui valoare putea fi fie \u00ab0\u00bb, fie \u00ab1\u00bb (respectiv, \u00abInactiv\u00bb \u0219i \u00abActiv\u00bb). \u0218i totul ar fi fost bine, dar natura uman\u0103 este astfel \u00eenc\u00e2t o persoan\u0103 poate folosi activ produsele pentru o perioad\u0103, iar apoi s\u0103 devin\u0103 inactiv\u0103 timp de o lun\u0103 - poate s-a \u00eemboln\u0103vit, a plecat \u00een vacan\u021b\u0103 \u00een alt\u0103 \u021bar\u0103 sau pur \u0219i simplu testeaz\u0103 cardul unei alte b\u0103nci. Sau poate, dup\u0103 o perioad\u0103 lung\u0103 de inactivitate, \u00eencepe din nou s\u0103 utilizeze serviciile b\u0103ncii.<\/p>\n<p>Prin urmare, am decis s\u0103 numim perioada de inactivitate un anumit interval continuu de timp \u00een care flag-ul pentru el era setat ca \u00ab0\u00bb. <\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/c4263f11be0f122e54ed7985ba0d2c9d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nClien\u021bii trec din starea de inactivitate \u00een starea activ\u0103 dup\u0103 perioade de inactivitate de diverse lungimi. Avem posibilitatea de a calcula gradul de m\u0103rime empiric\u0103 \u00abfiabilitatea perioadelor de inactivitate\u00bb - adic\u0103 probabilitatea c\u0103 o persoan\u0103 s\u0103 \u00eenceap\u0103 din nou s\u0103 foloseasc\u0103 produsele b\u0103ncii dup\u0103 o inactivitate temporar\u0103. <\/p>\n<p>De exemplu, \u00een acest grafic este reprezentat\u0103 reluarea activit\u0103\u021bii (ACTIVE_FLAG=1) a clien\u021bilor dup\u0103 c\u00e2teva luni de inactivitate (ACTIVE_FLAG=0).<\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/3828c06a86ca6b43e77a6de61f768804.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAici vom clarifica pu\u021bin setul de date cu care am \u00eenceput s\u0103 lucr\u0103m. Astfel, banca a furnizat informa\u021bii agregate pe 19 luni \u00een urm\u0103toarele tabele:<\/p>\n<ul>\n<li>\u00abActivitate\u00bb - tranzac\u021bii lunare ale clien\u021bilor (pe carduri, \u00een online banking \u0219i mobile banking), inclusiv pl\u0103\u021bi salariale \u0219i informa\u021bii despre turnover.<\/li>\n<li>\u00abCarduri\u00bb - date despre toate cardurile de\u021binute de client, cu o re\u021bea tarifar\u0103 detaliat\u0103.<\/li>\n<li>\u201eContractele\u201c \u2013 informa\u021bii despre contractele clien\u021bilor (at\u00e2t cele deschise, c\u00e2t \u0219i cele \u00eenchise): credite, depozite \u0219i altele, cu indica\u021bia parametrilor fiec\u0103ruia.<\/li>\n<li>\u201eClien\u021bii\u201c \u2013 un set de date demografice (sex \u0219i v\u00e2rst\u0103) \u0219i disponibilitatea datelor de contact.<\/li>\n<\/ul>\n<p>\nPentru lucru, ne-au fost necesare toate tabelele, mai pu\u021bin \u201eCardurile\u201c. <\/p>\n<p>Dificultatea a fost c\u0103, \u00een aceste date, banca nu specifica ce tip de activitate a avut loc pe carduri. Asta \u00eenseamn\u0103 c\u0103 am putut \u00een\u021belege dac\u0103 au existat tranzac\u021bii, dar nu am putut determina tipul acestora. Deci, nu era clar dac\u0103 clientul a retras numerar, a primit salariul sau a cheltuit bani pe achizi\u021bii. De asemenea, nu aveam date despre soldurile din conturi, ceea ce ar fi fost util. <\/p>\n<p>Selectarea \u00een sine a fost nesegmentat\u0103 \u2013 \u00een acest e\u0219antion, timp de 19 luni, banca nu a f\u0103cut nicio tentativ\u0103 de a re\u021bine clien\u021bii \u0219i de a minimiza pierderile.<\/p>\n<p>A\u0219adar, despre perioadele de inactivitate.<\/p>\n<p>Pentru formularea defini\u021biei pierderii, trebuie ales un period de inactivitate. Pentru a crea o prognoz\u0103 a pierderii \u00een anumite momente \u00een timp, <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/d2faf7d1a11c2770987ab6316b1db5e8.png\" style=\"display:block;margin: 0 auto;\" \/>, trebuie s\u0103 avem istoria clien\u021bilor de minimum 3 luni \u00een intervalul <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/194e5601c2f0f49866d8e8e5a9ff5993.png\" style=\"display:block;margin: 0 auto;\" \/>. Istoria noastr\u0103 a fost limitat\u0103 la 19 luni, a\u0219a c\u0103 am decis s\u0103 lu\u0103m perioada de inactivitate de 6 luni, dac\u0103 exist\u0103. Iar pentru perioada minim\u0103 pentru o prognoz\u0103 de calitate, am luat 3 luni. Numerele de 3 \u0219i 6 luni le-am ales empiric pe baza analizei comportamentului acestor clien\u021bi.<\/p>\n<p>Am formulat defini\u021bia pierderii astfel: luna de pierdere a clientului <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/3d581f5378975105aa6e73cacc175aeb.png\" style=\"display:block;margin: 0 auto;\" \/> este prima lun\u0103 cu ACTIVE_FLAG=0, unde din aceast\u0103 lun\u0103 urmeaz\u0103 cel pu\u021bin \u0219ase zero-uri consecutive \u00een c\u00e2mpul ACTIVE_FLAG, cu alte cuvinte, luna din care clientul a fost inactiv timp de 6 luni. <\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/04ea6d4c59a9497733e4a181a4a5847c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Num\u0103rul de clien\u021bi pierdu\u021bi<\/i><\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/4d470cbe91bbc6ee7ddfd1933e90e62c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Num\u0103rul de clien\u021bi r\u0103ma\u0219i<\/i><\/p>\n<h2>Cum se consider\u0103 pierderea<\/h2>\n<p>\n\u00cen astfel de competi\u021bii \u0219i, \u00een general, \u00een practic\u0103, pierderea este adesea prognozat\u0103 \u00een acest mod. Clientul folose\u0219te produse \u0219i servicii \u00een intervale diferite de timp, iar datele despre interac\u021biunea cu acesta sunt prezentate sub form\u0103 de vector de caracteristici de lungime fix\u0103 n. Cel mai frecvent, aceste informa\u021bii includ:<\/p>\n<ul>\n<li>Datele caracterizatoare ale utilizatorului (date demografice, segment de marketing).<\/li>\n<li>Istoria utiliz\u0103rii produselor \u0219i serviciilor bancare (acestea sunt ac\u021biunile clien\u021bilor, care sunt \u00eentotdeauna legate de un anumit timp sau de perioada intervalului necesar pentru noi).<\/li>\n<li>Date externe, dac\u0103 au fost ob\u021binute \u2014 de exemplu, recenzii din re\u021belele sociale.<\/li>\n<\/ul>\n<p>\n\u0218i apoi, dup\u0103 aceea, se formuleaz\u0103 o definire a ratei de abandon, specific\u0103 pentru fiecare sarcin\u0103. Apoi se utilizeaz\u0103 un algoritm de \u00eenv\u0103\u021bare automat\u0103, care prezice probabilitatea plec\u0103rii clientului <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/79ce2d7f3193a9aab0b985c9a0cd0ee1.png\" style=\"display:block;margin: 0 auto;\" \/> pe baza vectorului de factori <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/546791c513159e41d5950adca001d620.png\" style=\"display:block;margin: 0 auto;\" \/>. Pentru antrenarea algoritmului se folose\u0219te unul dintre cadrele cunoscute pentru construirea ansamblurilor de arbori decizionali, <noindex><a rel=\"nofollow\" href=\"https:\/\/xgboost.readthedocs.io\/en\/latest\/\">XGBoost<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Microsoft\/LightGBM\">LightGBM<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/catboost\/catboost\">CatBoost<\/a><\/noindex> sau modific\u0103rile acestora. <\/p>\n<p>Algoritmul \u00een sine nu este r\u0103u, dar \u00een ceea ce prive\u0219te prognoza ratei de abandon are c\u00e2teva dezavantaje semnificative.<\/p>\n<ul>\n<li><b>Nu dispune de a\u0219a-numita \u201ememorie\u201d<\/b>. La intrarea modelului ajunge un num\u0103r specificat de caracteristici, care corespund momentului actual. Pentru a incorpora informa\u021bii despre istoria modific\u0103rii parametrilor, este necesar s\u0103 se calculeze caracteristici speciale, care caracterizeaz\u0103 modific\u0103rile parametrilor \u00een timp, de exemplu, num\u0103rul sau suma tranzac\u021biilor bancare \u00een ultimele 1, 2, 3 luni. Aceast\u0103 abordare poate reflecta doar par\u021bial natura modific\u0103rilor temporale. <\/li>\n<li><b>Horizon de prognoz\u0103 fixat.<\/b> Modelul poate prezice abandonul clien\u021bilor doar pe o perioad\u0103 de timp prestabilit\u0103, de exemplu, prognoza pentru o lun\u0103 \u00een viitor. Dac\u0103 este necesar\u0103 o prognoz\u0103 pentru o alt\u0103 perioad\u0103 de timp, de exemplu, pentru trei luni, atunci trebuie s\u0103 se reconfigureze setul de date pentru antrenament \u0219i s\u0103 se reantreneze un nou model. <\/li>\n<\/ul>\n<p><\/p>\n<h2>Abordarea noastr\u0103<\/h2>\n<p>\nAm decis de la \u00eenceput c\u0103 nu vom folosi abord\u0103rile standard. \u00cen campionat s-au \u00eenregistrat \u0219i al\u021bi 497 de participan\u021bi, fiecare av\u00e2nd o experien\u021b\u0103 considerabil\u0103. A\u0219a c\u0103 \u00eencercarea de a face ceva conform schemei standard \u00een aceste condi\u021bii nu este cea mai bun\u0103 idee.<\/p>\n<p>\u0218i am \u00eenceput s\u0103 abord\u0103m problemele \u00eent\u00e2mpinate de modelul de clasificare binar\u0103, prin prognozarea distribu\u021biei probabilit\u0103\u021bii timpului de abandon al clien\u021bilor. O astfel de abordare poate fi examinat\u0103 <noindex><a rel=\"nofollow\" href=\"https:\/\/ragulpr.github.io\/assets\/draft_master_thesis_martinsson_egil_wtte_rnn_2016.pdf\">aici<\/a><\/noindex>, ea permite prognozarea mai flexibil\u0103 a abandonului \u0219i verificarea unor ipoteze mai complexe dec\u00e2t \u00een abordarea clasic\u0103. Ca familie de distribu\u021bii care modeleaz\u0103 timpul de abandon, am ales distribu\u021bia <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A0%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%92%D0%B5%D0%B9%D0%B1%D1%83%D0%BB%D0%BB%D0%B0\">Weibull<\/a><\/noindex> pentru utilizarea sa larg\u0103 \u00een analiza supravie\u021buirii. Comportamentul clientului poate fi privit ca un fel de supravie\u021buire. <\/p>\n<p>Iat\u0103 exemple de distribu\u021bii de densitate de probabilitate Weibull \u00een func\u021bie de parametri <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/57c935da52faf825ceedb4389d21c354.png\" style=\"display:block;margin: 0 auto;\" \/> \u0219i <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/85d1c92d5b9dfa83d13092edefb29a09.png\" style=\"display:block;margin: 0 auto;\" \/>:<\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/371e51ab8df2c10d5b139aadf290ebf8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAceasta este densitatea de distribu\u021bie a probabilit\u0103\u021bii de abandon a trei clien\u021bi diferi\u021bi \u00een timp. Timpul este reprezentat \u00een luni. Cu alte cuvinte, acest grafic arat\u0103 c\u00e2nd este cel mai probabil s\u0103 aib\u0103 loc abandonul clientului \u00een urm\u0103toarele dou\u0103 luni. Dup\u0103 cum se poate observa, clientul cu distribu\u021bia Weibull(2, 0.5) are un poten\u021bial mai mare de a pleca mai devreme comparativ cu clien\u021bii cu distribu\u021biile Weibull(2, 0.5) \u0219i Weibull(3,1). <\/p>\n<p>Rezultatul este un model care prezice pentru fiecare client, pentru orice<br \/>\nlun\u0103, parametrii distribu\u021biei Weibull care reflect\u0103 cel mai bine probabilitatea de abandon \u00een timp. Mai precis: <\/p>\n<ul>\n<li>Caracteristicile \u021bint\u0103 din setul de antrenament sunt timpul r\u0103mas p\u00e2n\u0103 la abandon \u00een o anumit\u0103 lun\u0103 pentru un anumit client.<\/li>\n<li>Dac\u0103 nu avem un indicator de abandon pentru client, presupunem c\u0103 timpul de abandon este mai mare dec\u00e2t num\u0103rul de luni, de la momentul actual \u0219i p\u00e2n\u0103 la sf\u00e2r\u0219itul istoricului pe care \u00eel avem.<\/li>\n<li>Modelul utilizat: re\u021bea neuronal\u0103 recurent\u0103 cu strat LSTM.<\/li>\n<li>Folosim ca func\u021bie de pierdere logaritmul negativ al func\u021biei de verosimilitate pentru distribu\u021bia Weibull.<\/li>\n<\/ul>\n<p>\nIat\u0103 avantajele acestei metode: <\/p>\n<ul>\n<li>Distribu\u021bia probabilistic\u0103, pe l\u00e2ng\u0103 evidenta capacitate de clasifiere binar\u0103, permite prezicerea flexibil\u0103 a diferitelor evenimente, de exemplu, dac\u0103 un client va \u00eenceta s\u0103 foloseasc\u0103 serviciile b\u0103ncii \u00een termen de 3 luni. De asemenea, dac\u0103 este necesar, putem media diferite metrici pe baza acestei distribu\u021bii.<\/li>\n<li>Re\u021beaua neuronal\u0103 recurent\u0103 LSTM are memorie \u0219i utilizeaz\u0103 eficient toat\u0103 istoricul disponibil. Odat\u0103 cu extinderea sau rafinarea istoricului, acurate\u021bea cre\u0219te.<\/li>\n<li>Abordarea poate fi scalat\u0103 f\u0103r\u0103 probleme prin \u00eemp\u0103r\u021birea intervalelor de timp \u00een unit\u0103\u021bi mai mici (de exemplu, prin \u00eemp\u0103r\u021birea lunilor \u00een s\u0103pt\u0103m\u00e2ni).<\/li>\n<\/ul>\n<p>\nDar este insuficient s\u0103 creezi un model bun, este necesar s\u0103 evalu\u0103m corect calitatea acestuia.<\/p>\n<h2>Cum am evaluat calitatea<\/h2>\n<p>\nCa metric\u0103, am ales Curba de Lift. Aceasta este utilizat\u0103 \u00een afaceri pentru astfel de cazuri datorit\u0103 interpret\u0103rii sale clare, fiind bine descris\u0103 <noindex><a rel=\"nofollow\" href=\"http:\/\/www2.cs.uregina.ca\/~dbd\/cs831\/notes\/lift_chart\/lift_chart.html\">aici<\/a><\/noindex> \u0219i <noindex><a rel=\"nofollow\" href=\"https:\/\/www.information-management.com\/news\/why-lift\">aici<\/a><\/noindex>. Dac\u0103 ar trebui s\u0103 descriem sensul acestei metrici \u00een unei fraze, ar fi \u201eDe c\u00e2te ori algoritmul face o prezicere mai bun\u0103 \u00een primele <img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/72818f84f73c2838fe7d63b33a96fd7b.png\" style=\"display:block;margin: 0 auto;\" \/>% comparativ cu una aleatoare.\u201d <\/p>\n<h2>Antren\u0103m modelele<\/h2>\n<p>\nCondi\u021biile competi\u021biei nu au stabilit o metric\u0103 specific\u0103 de calitate prin care s\u0103 putem compara diferite modele \u0219i abord\u0103ri. Mai mult dec\u00e2t at\u00e2t, defini\u021bia conceptului de churn poate varia \u0219i poate depinde de obiectivele de afaceri. Prin urmare, pentru a \u00een\u021belege care metod\u0103 este mai bun\u0103, am antrenat dou\u0103 modele:<\/p>\n<ol>\n<li>Abordarea frecvent utilizat\u0103 a clasific\u0103rii binare folosind algoritmul de \u00eenv\u0103\u021bare automat\u0103 bazat pe ansambluri de arbori decizionali (<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Microsoft\/LightGBM\">LightGBM<\/a><\/noindex>);<\/li>\n<li> Modelul Weibull-LSTM<\/li>\n<\/ol>\n<p>\nSetul de testare a fost format din 500 de clien\u021bi selecta\u021bi anterior, care nu erau \u00een setul de antrenament. Pentru model, s-au realizat ajust\u0103ri ale hiperparametrelor utiliz\u00e2nd validarea \u00eencruci\u0219at\u0103 pe baza clien\u021bilor. Pentru antrenarea fiec\u0103rui model au fost folosite acelea\u0219i seturi de caracteristici. <\/p>\n<p>Av\u00e2nd \u00een vedere c\u0103 modelul nu are memorie, s-au luat caracteristici speciale care arat\u0103 rela\u021bia dintre schimb\u0103rile parametrilor dintr-o lun\u0103 comparativ cu media parametrilor din ultimele trei luni. Aceasta a caracterizat viteza de schimbare a valorilor din ultimele trei luni. F\u0103r\u0103 aceasta, modelul bazat pe Random Forest ar fi fost \u00een dezavantaj fa\u021b\u0103 de Weibull-LSTM.<\/p>\n<h2>De ce este LSTM cu distribu\u021bia Weibull mai bun dec\u00e2t abordarea bazat\u0103 pe ansambluri de arbori decizionali <\/h2>\n<p>\nAici totul este vizibil, literar, cu c\u00e2teva imagini.<\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/0a87a27804f1b285f66a889ed798cf6b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Compararea Lift Curve pentru algoritmul clasic \u0219i Weibull-LSTM<\/i><\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/6c281677260098c7993a690c923692c8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Compararea metricii Lift Curve pe luni pentru algoritmul clasic \u0219i Weibull-LSTM<\/i><\/p>\n<p>\u00cen general, LSTM dep\u0103\u0219e\u0219te algoritmul clasic \u00een aproape toate cazurile.<\/p>\n<h2>Predic\u021bia churn-ului<\/h2>\n<p>\nModelul bazat pe re\u021bele neuronale recurente cu celule LSTM cu distribu\u021bie Weibull poate prezice churn-ul \u00een avans, de exemplu, poate prezice plecarea clientului \u00een urm\u0103toarele n luni. S\u0103 examin\u0103m cazul pentru n = 3. \u00cen acest caz, pentru fiecare lun\u0103, re\u021beaua neural\u0103 trebuie s\u0103 determine corect: dac\u0103 clientul va pleca \u00eencep\u00e2nd cu luna urm\u0103toare p\u00e2n\u0103 la luna n. Cu alte cuvinte, trebuie s\u0103 determine corect dac\u0103 clientul va r\u0103m\u00e2ne dup\u0103 expirarea lui n luni. Acesta poate fi considerat un prognoz\u0103 anticipat\u0103: prezicerea momentului c\u00e2nd clientul a \u00eenceput doar s\u0103 se g\u00e2ndeasc\u0103 s\u0103 plece. <\/p>\n<p>S\u0103 compar\u0103m Lift Curve pentru Weibull-LSTM cu 1, 2 \u0219i 3 luni \u00eenainte de churn:<\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/4b2ed9cb21844cf5dc8f54bcfe092a9d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAm men\u021bionat anterior c\u0103 sunt importante \u0219i prognoz\u0103rile pentru clien\u021bii care devin inactivi pentru o perioad\u0103 de timp. A\u0219adar, vom ad\u0103uga \u00een selec\u021bie cazurile \u00een care un client plecat a fost inactiv timp de o lun\u0103 sau dou\u0103, \u0219i vom verifica dac\u0103 Weibull-LSTM clasific\u0103 corect aceste cazuri ca fiind pierdere. Deoarece aceste cazuri au fost prezente \u00een selec\u021bie, ne a\u0219tept\u0103m ca re\u021beaua s\u0103 le gestioneze bine:<\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/4fe6e918aff2f16758c671c8d547895d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>P\u0103strarea clien\u021bilor<\/h2>\n<p>\nAceasta este, de fapt, esen\u021ba a ceea ce putem face, av\u00e2nd informa\u021bia c\u0103 anumi\u021bi clien\u021bi se preg\u0103tesc s\u0103 nu mai utilizeze produsul. Vorbind despre construirea unui model care ar putea oferi ceva util clien\u021bilor pentru a-i p\u0103stra - acest lucru nu va fi posibil dac\u0103 nu ave\u021bi o istorie a unor asemenea \u00eencerc\u0103ri care au avut un rezultat pozitiv.<\/p>\n<p>Nu am avut o astfel de istorie, a\u0219a c\u0103 am decis s\u0103 proced\u0103m astfel.<\/p>\n<ol>\n<li>Construim un model care identific\u0103 produsele interesante pentru fiecare client.<\/li>\n<li>\u00cen fiecare lun\u0103, rul\u0103m clasificatorul \u0219i identific\u0103m clien\u021bii poten\u021bial plec\u0103tori.<\/li>\n<li>O parte din clien\u021bi primesc produse conform modelului din punctul 1, ne amintim ac\u021biunile noastre.<\/li>\n<li>Dup\u0103 c\u00e2teva luni, observ\u0103m cine dintre ace\u0219ti clien\u021bi poten\u021bial plec\u0103tori a plecat \u0219i cine a r\u0103mas. Astfel, formulam un set de date pentru \u00eenv\u0103\u021bare.<\/li>\n<li>\u00cenv\u0103\u021b\u0103m modelul pe baza istoriei ob\u021binute \u00een punctul 4.<\/li>\n<li>Op\u021bional, repet\u0103m procedura, \u00eenlocuind modelul din punctul 1 cu modelul ob\u021binut \u00een punctul 5.<\/li>\n<\/ol>\n<p>\nO metod\u0103 de verificare a calit\u0103\u021bii acestei p\u0103str\u0103ri poate fi un test A\/B obi\u0219nuit - \u00eemp\u0103r\u021bim clien\u021bii poten\u021bial plec\u0103tori \u00een dou\u0103 grupuri. Uneia \u00eei oferim produse bazate pe modelul nostru de p\u0103streaz\u0103, iar celeilalte nu le oferim nimic. Am decis s\u0103 \u00eenv\u0103\u021b\u0103m un model care ar putea aduce beneficii chiar \u00een punctul 1 al exemplului nostru.<\/p>\n<p>Am dorit s\u0103 facem segmentarea c\u00e2t mai u\u0219or de interpretat. Pentru aceasta, am ales c\u00e2teva caracteristici care ar putea fi interpretate u\u0219or: num\u0103rul total de tranzac\u021bii, salariul, volumul total al contului, v\u00e2rsta, sexul. Caracteristicile din tabelul \u201eCarduri\u201d nu au fost luate \u00een considerare ca fiind pu\u021bin informatice, iar caracteristicile din tabelul 3 \u201eContracte\u201d - din cauza complexit\u0103\u021bii proces\u0103rii pentru a evita scurgerea de date \u00eentre setul de validare \u0219i setul de \u00eenv\u0103\u021bare.<\/p>\n<p>Clusterizarea a fost realizat\u0103 folosind modele de amestec Gaussian. Criteriul de informa\u021bie Akaike a permis identificarea a dou\u0103 optimumuri. Primul optimum corespunde unui cluster. Al doilea optimum, mai pu\u021bin pronun\u021bat, corespunde la 80 de clustere. Din acest rezultat se poate trasa urm\u0103toarea concluzie: datele sunt extrem de greu de \u00eemp\u0103r\u021bit \u00een clustere f\u0103r\u0103 informa\u021bii prealabile. Pentru o clusterizare de mai bun\u0103 calitate sunt necesare date care descriu detaliat fiecare client.<\/p>\n<p>Prin urmare, a fost analizat\u0103 problema \u00eenv\u0103\u021b\u0103rii supervizate, pentru a propune fiec\u0103rui client \u00een parte produsul s\u0103u. Au fost luate \u00een considerare urm\u0103toarele produse: \u201eDepozit la termen\u201d, \u201eCard de credit\u201d, \u201eOverdraft\u201d, \u201eCredit de consum\u201d, \u201eCredit auto\u201d, \u201eIpotec\u0103\u201d. <\/p>\n<p>\u00cen date a fost prezent un alt tip de produs: \u201eCont curent\u201d. Dar nu l-am considerat din cauza informa\u021biilor insuficiente. Pe utilizatorii care sunt clien\u021bi ai b\u0103ncii, adic\u0103 nu au \u00eencetat s\u0103 utilizeze produsele sale, a fost construit un model care prezice ce produs le-ar putea interesa. Ca model a fost aleas\u0103 regresia logistic\u0103, iar ca metric\u0103 de evaluare a calit\u0103\u021bii a fost utilizat\u0103 valoarea Lift pentru primele 10 percentile. <\/p>\n<p>Calitatea modelului poate fi evaluat\u0103 \u00een figura.<\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/77cab18988ab9c3b768b86e31479817f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Rezultatele modelului de recomandare a produselor pentru clien\u021bi <\/i> <\/p>\n<h2>Rezultatul<\/h2>\n<p>\nAceast\u0103 abordare ne-a adus primul loc la categoria \u201eAI \u00een b\u0103nci\u201d la Campionatul AI RAIF-Challenge 2017.<\/p>\n<p><img decoding=\"async\" alt=\"A\u0219a cum am prezis, am abordat fluxul de utilizatori ca pe o calamitate natural\u0103\" src=\"\/wp-content\/uploads\/2019\/03\/0c321869dfd02323766c025ed4021bcf.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSe pare c\u0103 principalul lucru a fost s\u0103 abord\u0103m problema dintr-o perspectiv\u0103 mai pu\u021bin obi\u0219nuit\u0103 \u0219i s\u0103 folosim o metod\u0103 care este de obicei utilizat\u0103 pentru alte situa\u021bii.<\/p>\n<p>De\u0219i migrarea masiv\u0103 a utilizatorilor poate fi cu adev\u0103rat o catastrof\u0103 pentru servicii.<\/p>\n<p>Aceast\u0103 metod\u0103 poate fi luat\u0103 \u00een considerare \u0219i pentru orice alt domeniu, unde este important s\u0103 se \u021bin\u0103 cont de migrare, nu doar de b\u0103nci. De exemplu, am folosit-o \u0219i pentru a calcula propria migrare - \u00een filiala din Siberia \u0219i \u00een cea din Sankt Petersburg a Rostelecom.<\/p>\n<p><i>\u201eLaboratorul de analiz\u0103 intelectual\u0103 a datelor\u201d compania \u201ePortalul de c\u0103utare Sputnik\u201d<\/i><br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/rostelecom\/blog\/444694\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0418\u043d\u043e\u0433\u0434\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0440\u0435\u0448\u0438\u0442\u044c \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043d\u0430\u0434\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u0437\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u043d\u0430 \u043d\u0435\u0435 \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u0438\u043c \u0443\u0433\u043b\u043e\u043c. \u0414\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043b\u0435\u0442 10 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0440\u0435\u0448\u0430\u043b\u0438 \u043e\u0434\u043d\u0438\u043c \u0438 \u0442\u0435\u043c \u0436\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c \u0441 \u0440\u0430\u0437\u043d\u044b\u043c \u044d\u0444\u0444\u0435\u043a\u0442\u043e\u043c, \u043d\u0435 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439. \u0415\u0441\u0442\u044c \u0442\u0430\u043a\u0430\u044f \u0442\u0435\u043c\u0430, \u043a\u0430\u043a \u043e\u0442\u0442\u043e\u043a \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432. \u0428\u0442\u0443\u043a\u0430 \u043d\u0435\u0438\u0437\u0431\u0435\u0436\u043d\u0430\u044f, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043a\u043b\u0438\u0435\u043d\u0442\u044b \u043b\u044e\u0431\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u043c\u043e\u0433\u0443\u0442 \u043f\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0443 \u043f\u0440\u0438\u0447\u0438\u043d \u0432\u0437\u044f\u0442\u044c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-30044","post","type-post","status-publish","format-standard","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0418\u043d\u043e\u0433\u0434\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0440\u0435\u0448\u0438\u0442\u044c \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043d\u0430\u0434\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u0437\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u043d\u0430 \u043d\u0435\u0435 \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u0438\u043c \u0443\u0433\u043b\u043e\u043c.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/kak-my-predskazyvali-ottok-podojdya-k-nemu-kak-k-stihijnomu-bedstviyu\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b\u0438 \u043e\u0442\u0442\u043e\u043a, \u043f\u043e\u0434\u043e\u0439\u0434\u044f \u043a \u043d\u0435\u043c\u0443 \u043a\u0430\u043a \u043a \u0441\u0442\u0438\u0445\u0438\u0439\u043d\u043e\u043c\u0443 \u0431\u0435\u0434\u0441\u0442\u0432\u0438\u044e | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0418\u043d\u043e\u0433\u0434\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0440\u0435\u0448\u0438\u0442\u044c \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043d\u0430\u0434\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u0437\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u043d\u0430 \u043d\u0435\u0435 \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u0438\u043c \u0443\u0433\u043b\u043e\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/kak-my-predskazyvali-ottok-podojdya-k-nemu-kak-k-stihijnomu-bedstviyu\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:33:22+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:33:22+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Cum am prezis migrarea, abord\u00e2nd-o ca pe o catastrof\u0103 natural\u0103 | ProHoster","description":"Uneori, pentru a rezolva o problem\u0103, trebuie s\u0103 te ui\u021bi la ea dintr-un alt unghi.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/kak-my-predskazyvali-ottok-podojdya-k-nemu-kak-k-stihijnomu-bedstviyu","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b\u0438 \u043e\u0442\u0442\u043e\u043a, \u043f\u043e\u0434\u043e\u0439\u0434\u044f \u043a \u043d\u0435\u043c\u0443 \u043a\u0430\u043a \u043a \u0441\u0442\u0438\u0445\u0438\u0439\u043d\u043e\u043c\u0443 \u0431\u0435\u0434\u0441\u0442\u0432\u0438\u044e | ProHoster","og:description":"\u0418\u043d\u043e\u0433\u0434\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0440\u0435\u0448\u0438\u0442\u044c \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043d\u0430\u0434\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u0437\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u043d\u0430 \u043d\u0435\u0435 \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u0438\u043c \u0443\u0433\u043b\u043e\u043c.","og:url":"https:\/\/prohoster.info\/ro\/blog\/kak-my-predskazyvali-ottok-podojdya-k-nemu-kak-k-stihijnomu-bedstviyu","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:33:22+00:00","article:modified_time":"2019-10-31T18:33:22+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"30044","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-20 23:33:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:43:15","updated":"2026-01-20 23:33:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/30044","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=30044"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/30044\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=30044"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=30044"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=30044"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}