Ripasso Generale. e creare HTML/PDF e GUI. Renato Mainetti
|
|
|
- Violetta Marchesi
- 9 anni fa
- Просмотров:
Транскрипт
1 Ripasso Generale e creare HTML/PDF e GUI Renato Mainetti
2 Introduzione a Matlab Concetti importanti: Cos è Matlab Variabili Script Funzione Salvataggio WorkSpace 2
3 Matlab questo sconosciuto (abbreviazione di Matrix Laboratory) Cos è? E un ambiente (software) nato per il calcolo numerico e l'analisi statistica. A cosa serve? Permette di eseguire calcoli matematici, simulazioni, analisi dei dati, visualizzazione di grafici e sviluppo di algoritmi. Cosa ci faremo? Useremo alcune funzioni di base e alcuni tool-box per avvicinarci al mondo dell IA. Come scaricarlo e usarlo anche a casa? Studenti UNIMI hanno la possibilità di scaricarlo e installarlo su un PC per uso personale. guida per installazione 3
4 Cos è una variabile? Una variabile è una zona di memoria identificata attraverso un nome(combinazione lettere e digit) in cui è possibile memorizzare delle informazioni (numeri, array, oggetti). 4
5 Assegnamento di una variabile In matlab l operatore di assegnamento è = Per creare una variabile eseguirò da riga di comando: >> var1 = 10 Posso assegnare anche una formula: >> var2 = (3-1)*5 + var1 La variabile, una volta assegnata compare nel Workspace. E ora possibile richiamare il valore contenuto nella variabile, utilizzandola in formule e programmi. 5
6 Esempio di creazione esecuzione script Creazione: 6
7 Esempio di creazione esecuzione script Creazione: disp('questo è il nostro primo script in Matlab') disp('di solito però si inizia con "Hello World!"') a = input('inserisci un numero da elevare al quadrato: '); b = a*a; disp(['il risultato è: ' num2str(b)]) N.B: Se non conosciamo un comando, possiamo usare help. Esempio: >> help input 7
8 Esempio di creazione esecuzione script Esecuzione: >> firstscript Questo è il nostro primo script in Matlab Di solito però si inizia con "Hello World!" Inserisci un numero da elevare al quadrato: 3 Il risultato è: 9 N.B: Verificare il folder attuale, se siamo nel folder dove è contenuto il file.m è possibile usare la funzione di autocompletamento. (tab) 8
9 E se usassimo una funzione invece di uno Script? Una funzione può ricevere dei dati in ingresso e restituirne in uscita. E più flessibile Una funzione è composta da: Function a = triarea(b,h) input Parola chiave output Nome funzione 9
10 La funzione: function a = triarea(b,h) a = (b*h)/2; Può essere richiamata da riga di comando: >> A = triarea(5,6); N.B: Attraverso i commenti nella funzione è possibile scrivere la documentazione che viene mostrata attraverso il comando help 10
11 Salviamo il WorkSpace Può capitare di aver eseguito diverse operazioni e aver creato e memorizzato un elevato numero di variabili. Se spegniamo matlab senza salvare il workspace queste informazioni però vanno perse. Per salvare il workspace corrente: Viene generato un file.mat 11
12 Introduzione alla programmazione Concetti importanti: Programmazione Algoritmo Programmazione strutturata Sequenziale Condizionale (IF/ELSE - SWITCH) Iterativa (FOR - WHILE)
13 Cos è la programmazione La programmazione, in informatica, è l'insieme delle attività e tecniche che una o più persone specializzate, programmatori o sviluppatori (developer), svolgono per creare un programma, ossia un software da far eseguire ad un computer, scrivendo il relativo codice sorgente in un certo linguaggio di programmazione. (cit. Wikipedia) 13
14 Cos è un algoritmo Un algoritmo è un procedimento che risolve un determinato problema attraverso un numero finito di passi elementari. L'algoritmo è un concetto fondamentale dell'informatica, anzitutto perché è alla base della nozione teorica di calcolabilità: un problema è calcolabile quando è risolvibile mediante un algoritmo. L'algoritmo è un concetto cardine della fase di programmazione dello sviluppo di un software: preso un problema da automatizzare, la programmazione costituisce essenzialmente la traduzione o codifica di un algoritmo per tale problema in programma, scritto in un certo linguaggio, che può essere quindi effettivamente eseguito da un calcolatore. (cit: Wikipedia) 14
15 Testiamo il risultato: Punti chiave: Sequenza di istruzioni elementari per raggiungere uno scopo. Le istruzioni vanno eseguite nel giusto ordine. Il nostro senso comune non coincide con quello del computer. E possibile che esistano più vie per arrivare al risultato desiderato. 15
16 Programmazione strutturata: Il Teorema di Bohm-Jacopini afferma: qualsiasi algoritmo può essere definito usando esclusivamente le strutture di sequenza, di selezione e di iterazione. Sequenziale Condizionale Iterativa 16
17 Condizionale IF - IF/ELSE : PROBLEMA 1: Dati due numeri, mostrare se il primo è maggiore o minore del secondo. (usare solo IF) PROBLEMA 2: Dati due numeri, mostrare se il primo è maggiore o minore del secondo. (usare IF/ELSE). Cosa abbiamo guadagnato ad usare ELSE? PROBLEMA 3: Dati due numeri, mostrare se il primo è maggiore o minore del secondo e contemplare il caso di uguaglianza. (usare IF/ELSEIF/ELSE). 17
18 SWITCH: Condizionale n = input('inserisci un numero: '); switch n case -1 disp('uno Negativo') case 0 disp('zero') case 1 disp('uno Positivo') otherwise disp('altro valore') end PROBLEMA 4: Scrivere un programma che mostri il colore attuale di un semaforo. Il programma riceve in input un valore tra {1,2,3} e in base al numero ricevuto scrive il nuovo colore del semaforo. {Rosso,Giallo,Verde} N.B: se usiamo «otherwise» anche altri numeri andranno bene per il verde. 18
19 FOR: Iterativa for i = 1:5 fai qualcosa end PROBLEMA 5: Scrivere un programma che mostri il colore attuale di un semaforo per 5 volte. Il programma riceve in input un valore tra {1,2,3} e in base al numero ricevuto scrive il nuovo colore del semaforo. {Rosso,Giallo,Verde} 19
20 WHILE: Iterativa while n>0 fai qualcosa end PROBLEMA 6: Scrivere un programma che mostri il colore attuale di un semaforo per infinte volte, a meno che non intervenga una condizione di arresto. Il programma riceve in input un valore tra {1,2,3} e in base al numero ricevuto scrive il nuovo colore del semaforo. {Rosso,Giallo,Verde} N.B: usiamo «otherwise» come condizione di arresto. 20
21 FSM Macchine a stati finiti Concetti importanti: Simulazione di un oggetto/concetto complesso Stato iniziale Stati della macchina Transizioni STG Grafico delle transizioni di stato STT Tabella delle transizioni di stato 21
22 FSM 22
23 Matlab cosa ci regala? StateFlow: Stateflow consente di modellare il modo in cui il sistema reagisce a eventi, condizioni temporali e segnali di stimolo esterni. 23
24 FSM Matlab On-Off Aggiunge un nuovo stato Stato iniziale Componenti evidenziati in rosso da sinistra verso destra: «Constant» Valori costanti -> utilizzati come valore di input della macchina «switch» Interruttore -> seleziona quale valore inviare alla macchina «Chart» Rappresenta la nostra FSM, contiene stati e transizioni (doppio click per entrare nella vista interna alla FSM) Internamente a «Chart» troviamo: Stato -> rappresenta uno stato della fsm, può essere aggiunto con il bottone a forma quadrata sulla barra di sinistra. Transizioni -> dato lo stato attuale della fsm, se la condizione di verità si verifica modifica lo stato della FSM e passa ad un nuovo stato (indicato dalla freccia) Stato iniziale del sistema -> si può selezionare con il tasto freccia nel menù a sinistra 24
25 FSM Tamagotchi Cambiamo gli stati d animo del tamagotchi Grafo delle transizioni di stato 25
26 STT Tabella Transizioni Stato Se invece di «Chart» usiamo la TTS, inseriamo le stesse informazioni utilizzate per costruire lo STG ma in forma differente. Nella tabella a sinistra «States» possiamo aggiungere nuovi stati, e sulla destra in «transition» possiamo aggiungere condizioni di verità e il nuovo stato in cui andare al verificarsi di quella condizione. Matlab è in grado di ricostruire 26
27 Fuzzy system Concetti importanti: Fuzzificazione Fuzzy associative memory (FAM - regole) Defuzzificazione 27
28 Fuzzy Toolbox Fuzzy Logic Toolbox fornisce funzioni, applicazioni e un blocco Simulink per progettare, implementare e testare un sistema basato sulla logica fuzzy. Questo toolbox ci permette di modellare sistemi complessi, usando delle semplici regole logiche che vanno poi inserite nel Sistema di inferenza fuzzy. Questo toolbox può essere usato in modalità stand alone, è possibile costruire un app ed infine è anche possibile realizzare un blocco Simulink per utilizzarlo in una simulazione di processo dinamico. 28
29 Componenti sistema Fuzzy: FAM regole di decisione Cibo servizio Mancia 29
30 Definiamo il problema: Abbiamo cenato al ristorante, prima di andare via vogliamo lasciare una mancia al cameriere ma non sappiamo quanto lasciare. Proviamo a basarci su queste due considerazioni: La qualità del cibo Da 0 = pessimo A 10 = paradisiaco La qualità del servizio Da 0 = film horror A 10 = impeccabile 30
31 Modifichiamo gli elementi del sistema fuzzy: Eseguendo doppio click su un oggetto tra quelli citati si apre una nuova finestra che ne permette la modifica. Per esempio: doppio click su input1 aprirà una nuova finestra, dal titolo Membership function editor, che ci permetterà di modificare l input input0. 31
32 Vediamo i risultati: View -> Surface View -> Rules 32
33 Vettori, matrici e grafi Concetti importanti: Vettore Matrice Grafo Albero 33
34 Vettore In informatica: Si può immaginare un vettore(array) come una sorta di contenitore, le cui caselle sono dette celle dell'array stesso. Ciascuna delle celle si comporta come una variabile tradizionale che rappresenta un elemento dell'array; tutte le celle sono variabili di uno stesso tipo preesistente, detto tipo base dell'array. Si parlerà perciò di tipi come "array di interi", "array di stringhe", "array di caratteri". (wikipedia)
35 Vettori in Matlab: Possono essere inseriti come righe o come colonne: Riga: vetriga = [ ]; vetriga = [1,2,3,4,5]; Colonna: vetcolonna = [1;2;3;4;5]; Proviamo ora ad inserire un array da 1 a 20. Ci vuole tempo vero? E se vi dicessi che ci serve un array di 1000 elementi? 35
36 m righe Matrici: Sono fondamentalmente vettori bidimensionali Matrice m x n N colonne a1,1 a1,2 a1,3 a2,1 a2,2 a2,3 a3,1 a3,2 a3,3 am,n 36
37 Matrici in matlab: Inseriamo una matrice in matlab: mat = [1 2 3; 4 5 6; 7 8 9]; Stiamo sfruttando le due tecniche usate prima, ovvero inserimento righe e inserimento colonne contemporaneamente. 37
38 GRAFO: Un grafo è un insieme di elementi detti nodi o vertici che possono essere collegati fra loro da linee chiamate archi o lati o spigoli. (wiki) Si distinguono due tipi basilari di grafi, i grafi orientati (o grafi diretti) e i grafi non orientati (o grafi indiretti). Un "grafo non orientato" è un insieme di vertici e archi dove la connessione A - B ha lo stesso significato della connessione B A (non è importante la direzione) 38
39 ALBERO: Un albero è un grafo: non orientato nel quale due vertici qualsiasi sono connessi da uno e un solo cammino (grafo non orientato, connesso e privo di cicli). (wiki) 39
40 Mappa semplificata della Romania 40
41 Con lo script indicato e Matlab 2015b o 2016a Otteniamo un grafo così: Possiamo ricercare la strada più breve tra due nodi ed evidenziarla. 41
42 Decision-tree Concetti importanti: Decisione e strumenti di supporto alla decisione Alberi di decisione in teoria delle decisioni Alberi di decisione nel machine learning 42
43 Riflessioni: Una decisione è una scelta tra alternative. La decisione viene presa stimando l esito delle altre alternative Supportare in una decisione significa aiutare le persone ad accumulare intelligenza su quel problema, trovare alternative e prendere una decisione. 43
44 Elementi di una decisione razionale: Identificare il goal che vogliamo raggiungere con quella decisione Identificare tutte le opzioni disponibili Valutare il possibile risultato di ogni opzione Scegliere quale opzione è la migliore Eseguire la scelta 44
45 Alberi di Decisione (Wikipedia) Nella teoria delle decisioni (per esempio nella gestione dei rischi), un albero di decisione è un grado di decisioni e delle loro possibili conseguenze, (incluso i relativi costi, risorse e rischi) utilizzato per creare un 'piano di azioni' (plan) mirato ad uno scopo (goal). Un albero di decisione è costruito al fine di supportare l'azione decisionale (decision making). Nel machine learning un albero di decisione è un modello predittivo, dove ogni nodo interno rappresenta una variabile, un arco verso un nodo figlio rappresenta un possibile valore per quella proprietà e una foglia il valore predetto per la variabile obiettivo a partire da i valori delle altre proprietà, che nell'albero è rappresentato dal cammino (path) dal nodo radice (root) al nodo foglia. Normalmente un albero di decisione viene costruito utilizzando tecniche di apprendimento a partire dall'insieme dei dati iniziali (data set), il quale può essere diviso in due sottoinsiemi: il training set sulla base del quale si crea la struttura dell'albero e il test set che viene utilizzato per testare l'accuratezza del modello predittivo così creato. 45
46 Decision-Making Fasi e Passi Intelligenza Raccolta informazioni e dati Riconoscimento del problema Design Formulazione del modello Analisi del modello Scelte Generazione e Valutazione Selezione 46
47 Albero di decisione (Teoria delle decisioni) 50% Successo 100 Euro 50%(100) + 50%(-30) = 35 Euro 50% Fallimento -30 Euro 50% Successo 90 Euro 50%(90) + 50%(-10) = 40 Euro 50% Fallimento -10 Euro 47
48 Introduzione alla probabilità Inferenza Bayesiana Concetti importanti: Legge dei grandi numeri Probabilità marginale Probabilità condizionata Inferenza Bayesiana Variabili aleatorie discrete e continue PDF - CDF 48
49 Legge dei Grandi Numeri La legge dei grandi numeri, detta anche legge empirica del caso oppure teorema di Bernoulli descrive il comportamento della media di una sequenza di n variabili casuali indipendenti e caratterizzate dalla stessa distribuzione di probabilità (n misure della stessa grandezza, n lanci della stessa moneta ecc.) al tendere ad infinito della numerosità della sequenza stessa (n) (wiki) 49
50 Testa o Croce? Vogliamo realizzare una funzione in Matlab che ci permetta di simulare il processo di tirare una moneta e analizzarne l esito. Proviamo a capire cosa fa la funzione di Matlab rand: >> help rand 50
51 rand: Uniformly distributed pseudorandom numbers. Eseguendo il comando: >>rand Otteniamo un numero casuale tra (0 e 1). (intervallo aperto) Matlab in pratica suddivide l intervallo tra 0 e 1 uniformemente, restituendo un valore di questo intervallo. Tutti i sotto intervalli sono equiprobabili. 51
52 Perché pseudo-random? Perché i numeri sono generati da un algoritmo deterministico che produce una sequenza. Proviamolo! L algoritmo di generazione può essere inizializzato con un seme (seed). Normalmente matlab all avvio setta il seed a 0. Per vedere l attuale valore del seed eseguiamo: >> rng 52
53 Funzione moneta: Dopo aver visto come estrarre una sequenza di numeri casuali tra 0 e 1, ci chiediamo come sia possibile trasformare ogni evento di estrazione in un risultato che indichi Testa o Croce. Idee? 53
54 Simulazione del tiro di dadi Proviamo ora a simulare il tiro di due dadi, per poter analizzare empiricamente le probabilità legate a questo evento. Come possiamo fare? Idee su qualche funzione di arrotondamento? La funzione round? 54
55 Statistiche volatili: Marroni Bianchi Piccioni 30% 20% Gabbiani 10% 40% 55
56 Statistiche volatili: Marroni Bianchi Marginale specie (somma elementi riga) Piccioni 30% 20% 50% Gabbiani 10% 40% 50% Marginale colore (somma elementi colonna) 40% 60% 56
57 Probabilità condizionata e congiunta: P(a b) = P(a AND b) / P(b) P(a AND b) è probabilità congiunta Vediamo un volatile di un colore ma non sappiamo riconoscere la specie cosa facciamo? Probabilità condizionate di specie dato il colore : Marroni Bianchi Piccioni 75% 33% Gabbiani 25% 67% 57
58 Distribuzione di probabilità: (probability distribution function) Ci permette di descrivere in termini probabilistici un fenomeno aleatorio nel tempo, cioè che sia caratterizzato da una variabile aleatoria. (wiki) Per prima cosa iniziamo a distinguere il caso discreto dal caso continuo. Variabile aleatoria discreta -> moneta, dadi, etc. Variabile aleatoria continua -> altezza persone, dimensione pesce, etc. 58
59 Variabile aleatoria discreta L insieme dei possibili valori(esito) è finito, numerabile, discreto. Nel lancio della moneta ho due eventi possibili (T/C) Pt = ½; Pc = ½; Nel lancio dei dadi ho 6 eventi possibili (1,2,3,4,5,6) Pn = 1/6; 59
60 Funzione di ripartizione (cumulative distribution function) Ci aiuta a studiare le distribuzioni di probabilità Esempio del dado: F(X 1 ) = 1/6 F(X 2 ) = 1/6 + 1/6 = 2/6 F(X 3 ) = 1/6 + 1/6 + 1/6 = 3/6 F(X 4 ) = 1/6 + 1/6 + 1/6 + 1/6 = 4/6 F(X 5 ) = 1/6 + 1/6 + 1/6 + 1/6 + 1/6 = 5/6 F(X 6 ) = 1/6 + 1/6 + 1/6 + 1/6 + 1/6 + 1/6 = 6/6 Somma dei valori precedenti o uguali a un dato valore associato ad un blocco della partizione. (Somma totale = 1) 60
61 Passiamo ora al caso continuo: (variabile aleatoria continua) Abbiamo un numero infinito di probabilità per tutti i valori compresi in un intervallo. 61
62 Calcoliamo probabilità con matlab di distribuzione Normale/Gaussiana %creiamo vettore uniforme tra -4 e 4 con passo 0.01 >> x = -4:0.01:4; %creiamo la pdf con il comando normpdf, media 0 varianza 1 >>y = normpdf(x,0,1) %plot della gaussiana >>plot(x,y) 62
63 Data Import e Data cleaning Concetti importanti: Formato dei file importabili in matlab Pulizia e consistenza dei dati 63
64 Formato dei dati (i più comuni) File di testo CSV (comma separated values) Da Fogli di calcolo (es. Excel) Da Database Da File Binari (formati proprietari, immagini, audio, etc) 64
65 Pulizia dei dati: Attraverso il tool: IMPORT DATA Possiamo decidere se importare ogni colonna in singole variabili. Possiamo decidere se importare i dati in un oggetto tabella. Usiamo l auto completamento «tab» per vedere il contenuto dell oggetto tabella. 65
66 Dati mancanti (import data) Matlab ci fornisce la possibilità di inserire NaN in caso di valori assenti Di non considerare la riga dove mancano dati Di non considerare la colonna dove mancano dati 66
67 Apprendimento Supervisionato e Non 67
68 Apprendimento Supervisionato e Non Supervisionato: forniamo input e output Non supervisionato: forniamo solo input 68
69 Partizionamento spaziale Quad-tree e k-means Concetti importanti: Algoritmo di partizionamento ricorsivo Apprendimento non supervisionato Algoritmo k-means, calcolo dei centroidi Clustering 69
70 Partizione e Clustering Quad-tree e K-Means Renato Mainetti
71 Quad-tree Proviamo a suddividere usando come criterio il colore. Un immagine in Matlab è una matrice. Se l immagine è in toni di grigio allora viene rappresentata da una matrice monodimensionale, il numero di righe e di colonne equivale alla dimensione in pixel dell immagine (larghezza = colonne, altezza=righe) Se l immagine è a colori allora sarà una matrice tridimensionale. L immagine infatti avrà 3 canali: Rosso (Red) Verde (Green) Blue (Blue) 71
72 Quad-tree Impiegato in ambito di imaging: (compressione, segmentazione, ecc.) 72
73 kmeans Generiamo un dataset e proviamo ad applicare questo metodo. Il file: kmean.m 73
74 Classificazione e validazione Concetti importanti: Decision-tree Reti neurali Predire classe, dato un vettore di input Validazione: training e test, cross-fold 74
75 Pipeline: cosa fare per classificare 1) Dati Noti (Predittori) Risposte Note (Etichette) Modello 2) Modello Nuovi dati (non etichettati) Predizione Risposte 75
76 Proviamo a creare dei decision-tree: (usando come dati di addestramento le funzioni logiche booleane AND e XOR) AND XOR ma prima rapido ripasso della logica booleana 76
77 Addestramento Classificare i fiori in funzione della dimensioni di petali e sepali: 77
78 Perceptrone e reti neurali Concetti importanti: Dal neurone al perceptrone (modello matematico) Significato geometrico dell addestramento Funzioni linearmente separabili e non Addestramento Classificazione 78
79 Dal Neurone al Perceptrone Perceptrone: costrutti matematici che in qualche misura imitano le proprietà dei neuroni viventi. Si esegue una "somma pesata" (integrazione) dei vari input provenienti dai dendriti. Se la loro somma è superiore ad una certa soglia allora il neurone/perceptrone scarica. 79
80 Funzionamento perceptrone Somma degli input pesati a cui sottraggo il valore di soglia θ. Se il risultato è maggiore di zero, il perceptrone si attiva. n Z = sgn( x i w i θ) i=1 80
81 Addestramento perceptrone (geometricamente ) In pratica stiamo modificando i parametri della retta che divide i due insiemi linearmente separabili. 81
82 AND, OR e XOR U1 and U2 U1 U2 Y Y sempre falso (0) a meno che U1 e U2 siano entrambe vere(1) U1 or U2 U1 U2 Y Y sempre vero (1) a meno che U1 e U2 siano entrambe false(0) U1 xor U2 U1 U2 Y Y sempre falso (0) quando U1 = U2 Y sempre vero (1) quando U1 U2 82
83 Pubblicare un lavoro in html/pdf E possibile generare in maniera automatica la documentazione/report di un lavoro che avete eseguito in Matlab. Se viene usata una particolare sintassi all interno di uno script Matlab, matlab sarà in grado di auto-generare per noi la documentazione di quello script. Si possono utilizzare i tasti di formattazione testo, grassetto, corsivo, lista puntata, ecc. che hanno la funzionalità di aiutarci nell inserimento della giusta sintassi. Una volta terminato il lavoro è possibile generare il documento premendo il tasto «Publish». E inoltre possibile specificare il formato(html o pdf) nelle impostazioni di «Publish» (freccetta sotto il tasto) File esempio: Document.m 83
84 GUI - Graphical User Interface Per iniziare la creazione di una GUI inseriamo da riga di comando: >> guide La gui ci permette di fornire all utente un interfaccia grafica con cui interagire: Bottoni, testo editabile, menu, grafici. File esempio: simplegui.m 84
85 GUI - Graphical User Interface I componenti vengono aggiunti alla finestra che conterrà la nostra applicazione. Ogni componente viene identificato univocamente attraverso il suo TAG (nome). Se volete approfondire: 85
86 Fine del corso / Buona preparazione dell esame e del progetto. Contatti: [email protected] Pagine del corso: renato.aislab.tk/matlablessons.html 86
Macchina a Stati Finiti e Alberi di Decisione. Renato Mainetti
Macchina a Stati Finiti e Alberi di Decisione Renato Mainetti FSM FSM e Alberi di Decisione - Lezione 3 2 Matlab cosa ci regala? StateFlow: http://it.mathworks.com/products/stateflow/ Stateflow consente
Introduzione alla probabilità. Renato Mainetti
Introduzione alla probabilità Renato Mainetti Esperimenti sulla probabilità: Vedremo come utilizzare semplici funzioni di matlab per avvicinarci al mondo della probabilità, iniziando così ad introdurre
Vettori Matrici Grafi Introduzione al Fuzzy-tool. Renato Mainetti
Vettori Matrici Grafi Introduzione al Fuzzy-tool Renato Mainetti Vettore In Matematica: Un vettore è un elemento di uno spazio vettoriale. I vettori sono quindi elementi che possono essere sommati fra
Introduzione a Matlab. Renato Mainetti
Introduzione a Matlab Renato Mainetti Matlab questo sconosciuto (abbreviazione di Matrix Laboratory) Cos è? E un ambiente (software) nato per il calcolo numerico e l'analisi statistica. A cosa serve? Permette
Classificazione Validazione Decision Tree & kmeans. Renato Mainetti
Classificazione Validazione Decision Tree & kmeans Renato Mainetti Apprendimento Supervisionato e Non Supervisionato: forniamo input e output Non supervisionato: forniamo solo input 2 Apprendimento Supervisionato
Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017
Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017 Palermo 24-28 Luglio 2017 www.u4learn.it Arianna Pipitone Introduzione alla probabilità MATLAB mette a disposizione degli utenti una serie di funzioni
Data Import e Probabilità. Renato Mainetti
Data Import e Probabilità Renato Mainetti Importare dati in Matlab: Abbiamo visto come sia possibile generare array e matrici di dati. Per ora abbiamo sempre inserito i dati manualmente o utilizzando metodi
MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA
MATLAB I/O Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA Funzione input valore = input( inserisci un valore ); Matlab stampa a video la stringa inserisci un valore ed aspetta di ricevere
Fondamenti di Informatica
Fondamenti di Informatica AlgoBuild: Strutture selettive, iterative ed array Prof. Arcangelo Castiglione A.A. 2016/17 AlgoBuild : Strutture iterative e selettive OUTLINE Struttura selettiva Esempi Struttura
Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab
Metodi di Analisi dei Dati Sperimentali AA /2010 Pier Luca Maffettone Elementi di Matlab Sommario Introduzione Variabili Manipolazione di elementi Creazione di vettori/matrici Operazioni elementari Funzioni
Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro;
EXCEL Modulo 3 I Grafici Grafici Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro; Quando si crea un grafico ogni
Problemi, algoritmi, calcolatore
Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione
Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione
VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.
Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?
Fondamenti di Informatica
Fondamenti di Informatica AlgoBuild: Strutture iterative e selettive Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 AlgoBuild: Strutture iterative
L INTERFACCIA GRAFICA DI EXCEL
Dopo l avvio del foglio elettronico apparirà un interfaccia grafica nella quale verrà aperta una nuova cartella di lavoro alla quale il PC assegnerà automaticamente il nome provvisorio di Cartel1. La cartella
Strutture dati e loro organizzazione. Gabriella Trucco
Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi
Il computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile.
Liceo Scientifico Vinci PROGRAMMA FINALE A.S. 2016/2017 Materia: INFORMATICA Classe 1Q Prof. Dardanelli Francesco PROGRAMMA SVOLTO NELL ANNO SCOLASTICO IL COMPUTER. Hardware e software. Il computer. Il
Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software
Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell
MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)
MATLAB c M-file. Lucia Gastaldi Dipartimento di Matematica http://dm.ing.unibs.it/gastaldi/ Lezione 4 (15 ottobre 2003) Esercizio Problema 3: la successione di funzioni f n (x) = (x 2 x) n per 0 x 1 è
Introduzione al MATLAB c Parte 3 Script e function
Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell
Corso di Informatica di Base
Corso di Informatica di Base A.A. 2011/2012 Algoritmi e diagrammi di flusso Luca Tornatore Cos è l informatica? Calcolatore: esecutore di ordini o automa Programma: insieme di istruzioni che possono essere
Introduzione alla programmazione
Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura [email protected] 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina
Grafici e Pagina web
Grafici e Pagina web Grafici Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro. Quando si crea un grafico ogni riga
Il concetto di calcolatore e di algoritmo
Il concetto di calcolatore e di algoritmo Elementi di Informatica e Programmazione Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Informatica
CORSO DI LABORATORIO DI INFORMATICA
CORSO DI LABORATORIO DI INFORMATICA Corso di Laurea Triennale in Ingegneria Elettrica a.a. 2015/2016 Docente: Ing. Domenico Amalfitano Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione
Excel. Il foglio di lavoro. Il foglio di lavoro Questa viene univocamente individuata dalle sue coordinate Es. F9
Excel Un foglio di calcolo o foglio elettronico è un programma formato da: un insieme di righe e di colonne visualizzate sullo schermo in una finestra scorrevole in cui è possibile disporre testi, valori,
1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso
Domanda 1 1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso x n+1 = x n f(x n), n = 0, 1, 2,... K dove x 0 è il punto iniziale, f(x) = x 3 cos(x) e K è una costante assegnata.
3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette.
3.5 STAMPA UNIONE Le funzioni della stampa unione (o stampa in serie) permettono di collegare un documento principale con un elenco di nominativi e indirizzi, creando così tanti esemplari uguali nel contenuto,
Introduzione al Foglio Elettronico
Microsoft Excel Introduzione al Foglio Elettronico Il Foglio Elettronico Si presenta come una grande tabella le cui righe e colonne si intersecano in celle Le celle possono contenere differenti dati Numeri
Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
EXCEL. Alfabetizzazione Informatica Prof. GIUSEPPE PATTI
EXCEL Alfabetizzazione Informatica Prof. GIUSEPPE PATTI Operazioni base Excel è un programma che trasforma il vostro computer in un foglio a quadretti, così come Word lo trasformava in un foglio a righe.
Introduzione al Foglio Elettronico
Microsoft Excel Introduzione al Foglio Elettronico A. Saetti 1 Il Foglio Elettronico n Si presenta come una grande tabella le cui righe e colonne si intersecano in celle n Le celle possono contenere differenti
Introduzione al Foglio Elettronico
Microsoft Excel Introduzione al Foglio Elettronico Il Foglio Elettronico Si presenta come una grande tabella su un foglio di carta Le celle contengono differenti dati Numeri Testo Date Ecc I dati possono
LABORATORIO DI INFORMATICA ESERCITAZIONE VIII
LABORATORIO DI INFORMATICA ESERCITAZIONE VIII Cercate di eseguire gli esercizi da soli. Se non ci riuscite, cercate di capire i messaggi di errore. Se non ci riuscite, provateci di nuovo. Poi chiamate
GRAFICO DI PARETO. variabile rispetto a cui si vuole ordinare (ossia nel nostro esempio
Si consideri il data set nel file Pareto.xls. GRAFICO DI PARETO Vediamo come costruire il grafico di Pareto con Excel. Questo grafico non costituisce un output standard pertanto sarà necessario compiere
Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema
Algoritmo 2 Procedimento di risoluzione di un problema La programmazione Ver. 2.4 Permette di ottenere un risultato eseguendo una sequenza finita di operazioni elementari Esempi: Una ricetta di cucina
AUTOMA A STATI FINITI
Gli Automi Un Automa è un dispositivo, o un suo modello in forma di macchina sequenziale, creato per eseguire un particolare compito, che può trovarsi in diverse configurazioni più o meno complesse caratterizzate
Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso
Obiettivi Di seguito vengono riportate una serie di domande che possono essere poste durante la prova formale del corso. Le seguenti domande non sono da ritenersi esaustive ma esemplificative. 1. Architettura
RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO
RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO Rappresentazione degli algoritmi Problema Algoritmo Algoritmo descritto con una qualche notazione Programma Defne del procedimento
Analisi dei dati con Excel
Analisi dei dati con Excel memo I primi rudimenti Operazioni base Elementi caratteristici di excel sono: la barra delle formule con la casella nome ed il bottone inserisci funzione, nonché righe, colonne
1) Matlab e simulazione. 2) Esempi di utilizzo. Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata
Argomenti della Lezione 1) Matlab e simulazione 2) Esempi di utilizzo 1 Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata Matlab è un sistema di programmazione ad alto livello
Reti Neurali in Generale
istemi di Elaborazione dell Informazione 76 Reti Neurali in Generale Le Reti Neurali Artificiali sono studiate sotto molti punti di vista. In particolare, contributi alla ricerca in questo campo provengono
14Ex-Cap11.qxd :20 Pagina Le macro
14Ex-Cap11.qxd 21-12-2006 11:20 Pagina 203 11 Le macro Creare le macro Registrare una macro Eseguire una macro Riferimenti assoluti e relativi nelle macro Assegnare un pulsante a una macro Modificare una
Introduzione all ambiente MATLAB. Richiami II. Calcolo Numerico - A.A. 2008/09
Introduzione all ambiente MATLAB Richiami II Programmazione MATLAB MATLAB non è un vero e proprio linguaggio di programmazione, ma permette comunque di realizzare programmi utilizzando le classiche strutture
Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da:
Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da: http://it.wikipedia.org/wiki/al-khwarizmi Un
ITI M. FARADAY. Programmazione a. s
ITI M. FARADAY Programmazione a. s. 2018-2019 Disciplina: INFORMATICA Indirizzo: INFORMATICA E TELECOMUNICAZIONI Classi: Terza A Terza B Ore settimanali previste: 6 (3 ora Teoria - 3 ore Laboratorio) Docenti:
Fondamenti di Informatica A. A. 2017/18
Fondamenti di Informatica Prof. Marco Lombardi A. A. 2017/18 : OUTLINE Caratteristiche Come si presenta Primo diagramma di flusso ed utilizzo del blocco di output Esempio Utilizzo dei blocchi di input/output
Laboratorio di Calcolo Numerico
Laboratorio di Calcolo Numerico Lezione 3 Padova, April 4th 2016 F. Piazzon Department of Mathematics. Doctoral School in Mathematical Sciences, Applied Mathematics Area Outline Lab. 3-2 of 16 1 Costrutti
EUROPEAN COMPUTER DRIVING LICENCE SYLLABUS VERSIONE 5.0
Pagina I EUROPEAN COMPUTER DRIVING LICENCE SYLLABUS VERSIONE 5.0 Modulo 4 Foglio elettronico Il seguente Syllabus è relativo al Modulo 4, Foglio elettronico, e fornisce i fondamenti per il test di tipo
Linguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl
Approfondimento 2.1 Non è questo il testo dove trattare esaurientemente queste tecniche semantiche. Ci accontenteremo di dare un semplice esempio delle tecniche basate sui sistemi di transizione per dare
Guida a WordPress. 1. Iscrizione a Wordpress
Guida a WordPress 1. Iscrizione a Wordpress Digitare il seguente indirizzo: https://it.wordpress.com/ Cliccare su Crea sito web Scegliere un tema, ovvero la struttura principale che assumeranno le pagine
4. I moduli in Access 2000/2003
LIBRERIA WEB 4. I moduli in Access 2000/2003 Il modulo è uno degli oggetti del database di Access e rappresenta un insieme di dichiarazioni e routine scritte con il linguaggio Visual Basic, memorizzate
(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B
Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3
