Video: A Funny Thing Happened on the Way to the Moon - MUST SEE!!! Multi - Language 2024
Învățarea de a număra obiecte într-un flux vă poate ajuta să găsiți cele mai frecvente elemente sau să clasificați evenimente obișnuite și neobișnuite. Acest algoritm utilizează funcțiile hash și schițele aproximative. Se face după filtrarea obiectelor duplicate și prin numărarea elementelor distincte care au apărut în fluxul de date.
Utilizați această tehnică pentru a rezolva probleme cum ar fi găsirea celor mai frecvente interogări într-un motor de căutare, articolele cele mai bine vândute de la un comerciant online, paginile extrem de populare dintr-un site web sau cele mai volatile stocuri vândute și cumpărate).
Aplicați soluția la această problemă, Count-Min Sketch, într-un flux de date. Este nevoie doar de o singură cale de date și stochează cât mai puține informații posibil. Acest algoritm este aplicat în multe situații din lumea reală (cum ar fi analiza traficului în rețea sau gestionarea fluxurilor de date distribuite). Rețeta necesită utilizarea unei mulțimi de funcții hash, fiecare asociată cu un vector bit, într-un mod care seamănă cu un filtru Bloom, după cum se arată în figură:
- Inițializați toți vectorii de biți la zero în toate pozițiile.
- Aplicați funcția hash pentru fiecare vector de biți când primiți un obiect dintr-un flux. Utilizați adresa numerică rezultată pentru a crește valoarea la acea poziție.
- Aplicați funcția hash la un obiect și extrageți valoarea la poziția asociată când vi se cere să estimați frecvența unui obiect. Din toate valorile primite de la vectorii de biți, luați cel mai mic ca frecvența fluxului.
Deoarece coliziunile sunt întotdeauna posibile atunci când se folosește o funcție hash, mai ales dacă vectorul de biți asociat are puține sloturi, având mai multe vectori de biți la îndemână vă asigură că cel puțin unul dintre ele păstrează valoarea corectă. Valoarea alegerii ar trebui să fie cea mai mică, deoarece nu este amestecată cu numere false pozitive din cauza coliziunilor.