Crawling public data for finding patterns using machine learning

machine-learning
big-data
cloud
crawling
weka

(Adavidoaiei Dumitru-Cornel) #1

Am scris un mic script care sa ia toate anunturile de inchirieri garsoniere de pe www.piata-az.ro sa le salveze intr-o baza de date MongoDB in cloud Azure, apoi cu workbench de machine learning Weka, am incercat sa construiesc un model de machine learning cu aceste date care sa iti dea pretul in functie de caracteristicile garsonierei, datele se split-uesc, 66% din date sunt folosite la construirea modelului de machine learning, 44% la evaluarea modelului de machine learning, evaluarea modelului de machine learning mi-a dat o acuratete de 70% a predictiilor, cea ce inseamna ca ar mai trebui tunat, 90% acuratete a modelului de machine learning e ideal.

Crawler il puteti gasi pe github cat si anunturile crawl-uite in format CSV.
https://github.com/adavidoaiei/Crawling-web-for-machine-learning

Workbench Weka de machine learning iti permite sa serializezi binar modelul de machine learning intr-un fisier *.model si apoi sa il consumi din orice tip de aplicatie(web, desktop, mobile, servicii rest, soap) si din orice tehnologie(Java, .NET, Python, PHP, Node.js, …), aceste modele de machine learning se pot scala pe orizontala in cloud, pe mai multe masinii.

Internet-ul inseamna machine learning si big data in cloud pentru marile companii, acestia colecteaza TB of data zilnic de la utilizatori sau din resurse de pe internet, si au ca nucleu machine learning pentru a gasi pattern-uri in aceste date, un model predictiv de machine learning este un pattern al datelor indiferent daca e un arbore de decizie(decision tree), configuratia unei retele neurale sau alta reprezentare, Google(motor-ul de cautare, sistemul de adds), NetFlix(movies recommandation system), Amazon(products recommandation system)… Who has big data use machine learning for finding patterns in this data, otherwise the power of big data is wasted, sursele posibile de colectare Big Data sunt de la online users, senzori, Internet of Things, crawling resurse de pe internet(anunturi, review-uri la produse, forum-uri), retele sociale, dar au in spate o armata de ingineri software.


(István F.) #2

E complicat, sunt oameni care nu pun pretul real sau sunt cazuri cand preturile se schimba de la un sezon la altul. Gen vara in timpul Untold nu gasesti apartament sub 600 de euro.
Date mult prea putine si coloane mult prea multe.

Eventual poti scoate cu o precizie de 100% o categorie de pret in functie de 3-4 caracteristici, dar cam atat. Trebuie facut si deviatie standard si scoase outlier-urile peste 2.5 la o anumita configuratie/categorie pret.


(Adavidoaiei Dumitru-Cornel) #3

Da vream sa prezint ceva interesant la tech talk din cadrul echipei, dar mi-a luat foarte mult sa configurez infrastructura in cloud la Azure desi ar fii mers la volumul de date mic sa rulez si pe masina mea, plus ca iti ia foarte mult sa preprocesezi datele pentru Workbench Weka de Machine Learning, de exemplu pentru predictie numerica gen cea de pret mi-a cerut sa ii dau la intrare seturi de date numerice, asa ca am inlocuit Da/Nu cu 1/0, e o treaba care consuma mult timp pentru un hobby, pentru o prezentare poti sa iei un set de date preprocesat de pe net pe care algoritmi sa mearga brici.