`` Gli esseri umani imparano dall'esperienza, mentre i computer eseguono di programmi: questo sis sa! La domanda che ci si pone è se anche i computer possano imparare dall'esperienza. La risposta è si, se chiamiamo dati l'esperienza`` (da A Friendly Introduction to Machine Learning)
Supponiamo di gestire un servizio per la valutazione immobiliare. In pratica i nostri clienti ci chiedono qual'è il prezzo migliore per vendere o acquistare un dato immobile. Noi eseguiamo la stima e il cliente esegue la transazione al prezzo indicato. Se nel tempo ha avuto la percezione di aver fatto un buon affare premierà la nostra attività con una valutazione positiva che influenzerà il nostro rating e quindi il nostro business. Se, al contrario, avrà la percezione di aver fatto un brutto affare, punirà con un voto negativo
Come si esegue una valutazione di un immobile? Ci sono due aspetti diversi da considerare: l'uno è legato al valore oggettivo derivante dalla metratura, materiali di costruzione, valore interni ecc., poi c'è la componente di mercato. Se un certo tipo di immobile non è di moda, oppure se è in una zona mal frequentata ecc., il suo valore scenderà, al contrario, se un immobile presenta caratteristiche alla moda, o è situato in una zona ricercata, allora il suo prezzo potrebbe salire indipendentemente dal suo valore reale.
Un buon venditore deve conoscere entrambi questi aspetti e, per mantenere alto il suo onore, deve fornire delle valutazioni corrette.
La domanda che ci poniamo è: una macchina potrebbe essere un buon venditore?
Forse stiamo un po' esagerando, il processo di vendita è più complesso della semplice stima di un prezzo, ma il punto resta: potremmo affidare ad una macchina
il compito di eseguire una valutazione immobiliare?
La risposta è forse! Un buon venditore non improvvisa le proprie valutazione, ma le basa su calcoli e sull'esperienza. I calcoli gli permettono di conoscere
il prezzo teorico, ma l'esperineza gli permette di sapere se un certo immobile andrà o no venduto a quel dato prezzo.
La macchina può apprendere dall'esperienza come fa il venditore?
Un computer (un sistema informatico) che possa accedere ai dati del mercato può valutare il prezzo di un immobile e ottenere il massimo del rating
Sembra ovvio? Non lo è: bisogna considerare che da nessuna parte qualcuno ha scritto né quale sia il prezzo base né il prezzo al metro quadro,
quindi non è possibile scrivere un programma che implementi la formula del prezzo vista sopra
Certo, conoscendo il modello matematico seguito dal mercato, un venditore potrebbe indovinare prezzo al metro quadro e prezzo base, e preparare tale programma. Come farebbe a farlo? Semplice: osserverebbe le vendite degli immobili, e cercherebbe di dedurne i parametri cercati. Poi, ad ogni variazione del mercato cambierebbe i paramtri del programma
In questo pacchetto trovi tutto il necessario per creare simulare un servizio di valutazione immobiliare che fornisca i prezzi degli immobili usando a piacere il machine learning o una valutazione non automatica
Dalla directory cognitiva lancia l'eseguibile ./cognitiva_xreg
Lasciato a sé stesso il sistema consiglia sempre il prezzo 0 € con conseguente valutazione negativa da parte del cliente. In questa fase proviamo a modificare i parametri di calcolo del prezzo usando le frecce SU, GIU, DESTRA e SINISTRA che modificano il prezzo base e il prezzo al metro. In figura si vede la varizione del prezzo consiglito dopo aver modificato i parametri di base del calcolo
Con il tasto r attiviamo la ricezione dei dati delle vendite di immobili nel nostro mercato di
riferimento
Ovviamente si tratta di dati inventati, però se si volesse ricevere dei dati veri sarebbe sufficiente modificare un'unica fuzione del codice
Ogni transazione viene mostrata come illustrato nella figura seguente
Siamo arrivati finalmente alla fase agognata: attiviamo l'apprendimento della macchina, il Machine Learning. Con il tasto a attiviamo l'apprendimento. Il sistema esegue una regressione lineare dei dati inviati dal canale delle vendite per calcolare i paramteri di base e li usa per fornire la propria valutazione
dell'immbobile
Una volta che si è capito come funzione, ci si può divertire a scoprire cosa succede al sistema se si cambia improvvisamente il mercato: basta premere il tasto c, cambieranno i parametri di riferimento e il sistema si troverà spiazzato, ma... provare per capire!
The tools are Open Source code distributed under GNU-GPL license. The tools are developed in the Scuola Sisini using GNU-gcc and GNU-Emacs editor only. Please, visit the Free Software Foundation and GNU project for more information about that.