Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Introduzione all'informatica: Sistemi operativi e algoritmi - Prof. Paolanti, Schemi e mappe concettuali di Elementi di Informatica

Riassunto per esame orale di informatica con la professoressa Paolanti. Argomenti trattati: - realtà aumentata - realtà virtuale - internet - intelligenza artificiale - machine learning - deep learning - macchina di Von Neuman - elaboratore - hardware - software -sistema operativo - algoritmo

Tipologia: Schemi e mappe concettuali

2020/2021

In vendita dal 21/01/2022

LauraFiori
LauraFiori 🇮🇹

4.3

(31)

33 documenti

1 / 6

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Pagina 1
Informatica
Internet (la rete delle reti) nacque per scopi militari negli USA intorno agli anni ’60, e in origine si chiamava ARPANET . Nel tempo si è
trasformata rapidamente nella più praticata via d'informazione oggi presente. Dal punto di vista strettamente tecnico, Internet è una rete
telematica che collega milioni di computer in tutto il mondo. una rete di persone collegate attraverso i computer ,una risorsa informativa e
un luogo di interazione culturale, sociale, economica. La vera rivoluzione di internet consiste nel fatto che chiunque pio mettere
informazioni in rete.
ALGORITMO è una procedura generale, finita, completa, non ambigua e eseguibile che lavora su dati di ingresso, fornendo alcuni
risultati in uscita. È generale perché il metodo deve risolvere una classe di problemi, è finita perché le azioni che compongono un algoritmo
e il numero di volte che ogni azione deve essere eseguita devono essere finiti, è completa perché deve completare tutti i casi possibili del
problema da risolvere, è non ambigua perché ogni istruzione deve essere definita in modo preciso, senza alcuna ambiguità, è eseguibile
perché deve esistere un agente di calcolo in grado di eseguire ogni istruzione in un tempo finito.
ISTRUZIONI: in informatica le operazioni sono dette istruzioni. Ci sono diversi tipi di istruzioni: le azioni (calcolo valore X), il controllo
(se si verifica A allora calcola X, altrimenti Y), la comunicazione (leggi il valore X) e il salto (se si verifica A allora prosegui, altrimenti
salta ad un’altra istruzione).
ELABOLATORE è uno strumento per la rappresentazione e elaborazione dell’informazione. L’elabolatore elettronico è uno strumento in
grado di eseguire insiemi di azioni elementari o mosse. Le mosse vengono eseguite su dati per produrre dei risultati. L’esecuzione di mosse
viene richiesta all’elaboratore attraverso frasi scritte in qualche linguaggio. Il calcolatore è uno strumento programmabile per
rappresentare, memorizzare e elaborare informazioni. I componenti principali di un elaboratore sono l’unità centrale, il monitor, la tastiera,
il mouse e un lettore CD. Vi sono anche componenti accessori quali la stampante, Modem, scanner. Sia le componenti principali che le
accessorie compongono l’Hardware.
La prima decomposizione di un calcolatore è relativa a HARDWARE e SOFTWARE. La differenza tra HARDWARE e SOFTWARE è
che H è la componente fisica e tangibile di un qualsiasi sistema informatico mentre il S si riferisce a tutti i programmi che fanno svolgere al
computer tutte le funzioni di cui abbiamo bisogno. L’architettura dell’hardware di un calcolatore reale è molto complessa.
IL SOFTWARE
Software: programmi che vengono eseguiti dal sistema. Il software è un insieme complesso di programmi organizzati a strati, ciascuno con
funzionalità di livello più alto rispetto a quelli sottostanti.
Distinzione fra: • Software di base (es. Sistema Operativo) • Software applicativo
NB: suddivisione utile ma non sempre evidente (firmware)
Il sistema operativo è uno strato di programmi che opera al di sopra di hardware e firmware e gestisce l’elaboratore. Solitamente è
venduto insieme all’elaboratore. Spesso si può scegliere tra diversi sistemi operativi per lo stesso elaboratore con diverse caratteristiche.
Alcuni esempi di sistema operativo sono Linux, MacOS, Windows ecc.. Le funzioni messe a disposizione dal Sistema Operativo
dipendono dalla complessità del sistema di elaborazione ovvero dalla gestione delle risorse disponibili, gestione della memoria centrale,
organizzazione e gestione della memoria di massa, interpretazione e esecuzione di comandi elementari e infine gestione di un sistema multi
utente. Attraverso il sistema operativo il livello di interazione fra utente e elaboratore viene elevato. Il sistema operativo traduce le
richieste dell’utente in opportune istruzioni macchina che si traducono in sequenze di valori e impulsi elettrici a livello di macchina fisica.
Possiamo classificare il sistema operativo in base al numero utenti:
-mono utente nel quale un solo utente alla volta può utilizzare il sistema.
-Multi utente più utenti possono interagire contemporaneamente con la macchina.
Possiamo classificarlo anche in base al numero di programmi in esecuzione:
- mono programmato nel quale si può eseguire un solo programma per volta.
-Multi programmato il sistema operativo è in grado di portare avanti contemporaneamente l’esecuzione di più programmi.
I programmi applicativi risolvono problemi specifici degli utenti:
-word processor (elaborazione di testi)
-Fogli elettronici (gestione di tabelle, calcoli e grafici)
-Database (gestione di archivi)
-Integranti (collezione di applicativi capaci di funzionare in modo integrato come un’applicazione unica)
L’ambiente di programmazione è l’insieme dei programmi che consentono la scrittura, verifica e esecuzioni di nuovi programmi.
L’editor serve per scrivere il programma sorgente (uno o più file di testo contenenti la codifica di un programma scritto in un linguaggio di
alto livello) e distinte automaticamente le direttive al compilatore, le costanti e i simboli definiti dall’utente. Affinché un programma
sorgente sia comprensibile e eseguibile da un calcolatore occorre tradurlo nel linguaggio della macchina. Questa operazione viene svolta da
specifici programmi detti traduttori (la traduzione del programma sorgente in un programma eseguibile è effettuata dai 3 programmi
eseguiti in sequenza: compilatore (programma oggetto. Ha 2 funzioni ovvero l’analisi sintattica del programma sorgente e la
trasformazione del programma sorgente in programma oggetto o codice oggetto) linker (programma rilocabile. Il codice oggetto può
contenere dei simboli irrisolti. Il linkerò crea il programma eseguibile rilocabile collegando gli eventuali vari moduli oggetto con i
pf3
pf4
pf5

Anteprima parziale del testo

Scarica Introduzione all'informatica: Sistemi operativi e algoritmi - Prof. Paolanti e più Schemi e mappe concettuali in PDF di Elementi di Informatica solo su Docsity!

Informatica

Internet (la rete delle reti) nacque per scopi militari negli USA intorno agli anni ’60, e in origine si chiamava ARPANET. Nel tempo si è trasformata rapidamente nella più praticata via d'informazione oggi presente. Dal punto di vista strettamente tecnico, Internet è una rete telematica che collega milioni di computer in tutto il mondo. una rete di persone collegate attraverso i computer ,una risorsa informativa e un luogo di interazione culturale, sociale, economica. La vera rivoluzione di internet consiste nel fatto che chiunque pio mettere informazioni in rete. ALGORITMO è una procedura generale, finita, completa, non ambigua e eseguibile che lavora su dati di ingresso, fornendo alcuni risultati in uscita. È generale perché il metodo deve risolvere una classe di problemi, è finita perché le azioni che compongono un algoritmo e il numero di volte che ogni azione deve essere eseguita devono essere finiti, è completa perché deve completare tutti i casi possibili del problema da risolvere, è non ambigua perché ogni istruzione deve essere definita in modo preciso, senza alcuna ambiguità, è eseguibile perché deve esistere un agente di calcolo in grado di eseguire ogni istruzione in un tempo finito. ISTRUZIONI: in informatica le operazioni sono dette istruzioni. Ci sono diversi tipi di istruzioni: le azioni (calcolo valore X), il controllo (se si verifica A allora calcola X, altrimenti Y), la comunicazione (leggi il valore X) e il salto (se si verifica A allora prosegui, altrimenti salta ad un’altra istruzione). ELABOLATORE è uno strumento per la rappresentazione e elaborazione dell’informazione. L’elabolatore elettronico è uno strumento in grado di eseguire insiemi di azioni elementari o mosse. Le mosse vengono eseguite su dati per produrre dei risultati. L’esecuzione di mosse viene richiesta all’elaboratore attraverso frasi scritte in qualche linguaggio. Il calcolatore è uno strumento programmabile per rappresentare, memorizzare e elaborare informazioni. I componenti principali di un elaboratore sono l’unità centrale, il monitor, la tastiera, il mouse e un lettore CD. Vi sono anche componenti accessori quali la stampante, Modem, scanner. Sia le componenti principali che le accessorie compongono l’Hardware. La prima decomposizione di un calcolatore è relativa a HARDWARE e SOFTWARE. La differenza tra HARDWARE e SOFTWARE è che H è la componente fisica e tangibile di un qualsiasi sistema informatico mentre il S si riferisce a tutti i programmi che fanno svolgere al computer tutte le funzioni di cui abbiamo bisogno. L’architettura dell’hardware di un calcolatore reale è molto complessa. IL SOFTWARE Software: programmi che vengono eseguiti dal sistema. Il software è un insieme complesso di programmi organizzati a strati, ciascuno con funzionalità di livello più alto rispetto a quelli sottostanti. Distinzione fra: • Software di base (es. Sistema Operativo) • Software applicativo NB: suddivisione utile ma non sempre evidente (firmware) Il sistema operativo è uno strato di programmi che opera al di sopra di hardware e firmware e gestisce l’elaboratore. Solitamente è venduto insieme all’elaboratore. Spesso si può scegliere tra diversi sistemi operativi per lo stesso elaboratore con diverse caratteristiche. Alcuni esempi di sistema operativo sono Linux, MacOS, Windows ecc.. Le funzioni messe a disposizione dal Sistema Operativo dipendono dalla complessità del sistema di elaborazione ovvero dalla gestione delle risorse disponibili, gestione della memoria centrale, organizzazione e gestione della memoria di massa, interpretazione e esecuzione di comandi elementari e infine gestione di un sistema multi utente. Attraverso il sistema operativo il livello di interazione fra utente e elaboratore viene elevato. Il sistema operativo traduce le richieste dell’utente in opportune istruzioni macchina che si traducono in sequenze di valori e impulsi elettrici a livello di macchina fisica. Possiamo classificare il sistema operativo in base al numero utenti:

- mono utente nel quale un solo utente alla volta può utilizzare il sistema.

- Multi utente più utenti possono interagire contemporaneamente con la macchina.

Possiamo classificarlo anche in base al numero di programmi in esecuzione:

- mono programmato nel quale si può eseguire un solo programma per volta.

- Multi programmato il sistema operativo è in grado di portare avanti contemporaneamente l’esecuzione di più programmi.

I programmi applicativi risolvono problemi specifici degli utenti:

- word processor (elaborazione di testi)

- Fogli elettronici (gestione di tabelle, calcoli e grafici)

- Database (gestione di archivi)

- Integranti (collezione di applicativi capaci di funzionare in modo integrato come un’applicazione unica)

L’ambiente di programmazione è l’insieme dei programmi che consentono la scrittura, verifica e esecuzioni di nuovi programmi. L’editor serve per scrivere il programma sorgente (uno o più file di testo contenenti la codifica di un programma scritto in un linguaggio di alto livello) e distinte automaticamente le direttive al compilatore, le costanti e i simboli definiti dall’utente. Affinché un programma sorgente sia comprensibile e eseguibile da un calcolatore occorre tradurlo nel linguaggio della macchina. Questa operazione viene svolta da specifici programmi detti traduttori (la traduzione del programma sorgente in un programma eseguibile è effettuata dai 3 programmi eseguiti in sequenza: compilatore (programma oggetto. Ha 2 funzioni ovvero l’analisi sintattica del programma sorgente e la trasformazione del programma sorgente in programma oggetto o codice oggetto) linker (programma rilocabile. Il codice oggetto può contenere dei simboli irrisolti. Il linkerò crea il programma eseguibile rilocabile collegando gli eventuali vari moduli oggetto con i

programmi di supporto necessari.) e loader (programma eseguibile. Completa la creazione del programma eseguibile caricando in memoria centrale un programma rilocabile)). Il DEBUGGER o spulciatore consente di eseguire un programma passo passo controllando quello che succede al fine di scoprire e eliminare errori logici non rilevabili dal compilatore. Interprete: Con i traduttori prima si traduce tutto il programma e poi si esegue la versione tradotta. Nel mondo reale, la traduzione può essere fatta in modo intercalato da una terza persona: l’interprete. I traduttori - compilatori traducono l’intero programma senza eseguirlo e producono in uscita il programma eseguibile. I traduttori - interpreti traducono e eseguono ogni singola istruzione del programma sorgente. L’esecuzione di un programma compilato è più veloce di quella di un programma interpretato. La MACCHINA DI VON NEUMAN è un modello semplificativo dei calcolatori moderni. Tramite questo modello è possibile schematizzare le diverse operazioni svolte durante un ciclo di calcolo o elaborazione:

  • (^) operazioni di ingresso dati ossia assegnazioni di valori alle variabili del programma, queste avvengono fra l'unità di ingresso e la memoria
  • (^) Operazioni di trasferimento dati dalla memoria ai registri dell’ALU (Unità Aritmetico Logica, dedicata alla esecuzione delle operazioni aritmetiche e logiche) ( e viceversa)
  • (^) operazioni aritmetiche e logiche eseguite all'interno dell’ALU
  • (^) operazioni di uscita ossia l'elaboratore restituisce all'esterno i risultati della elaborazione, queste avvengono fra la memoria e l'unità di uscita Secondo questo modello, le unità funzionali fondamentali sono il Processore (CPU - Central processing unit), Unità di Input e Output, la memoria centrale (composta da Ram e Rom) e Bus di sistema. La CPU presiede all’esecuzione di un programma (i programmi e i dati risiedono in file memorizzati in memoria secondaria, i programmi per essere eseguiti e i dati usati vengono copiati nella memoria primaria). È in grado di eseguire le istruzioni di cui sono composti i programmi. La CPU si occupa di eseguire i programmi ed essi sono scritti in un linguaggio macchina. Nei calcolatori ogni informazione è codificata in bit Se un bit può assumere due configurazioni possibili,0 e 1. Un Byte è una sequenza di 8 bit. La CPU è costituita da 4 elementi:
  • Clock: dà la base dei tempi necessaria per mantenere il sincronismo fra le operazioni imponendo che l’esecuzione di ogni operazione impieghi un tempo al massimo uguale al periodo di clock.
  • ALU (unità aritmetico logica): esegue operazioni aritmetiche, logiche e confronti sui dati della memoria centrale o dei registri. Può essere semplice o complessa.
  • Registri: sono locazioni usate per memorizzare dati, istruzioni o indirizzi nella CPU. L’accesso ai registri è molto veloce. Vi sono i registri specializzati ovvero i PROGRAM COUNTER (che indica l’indirizzo della cella di memoria che contiene la prossima istruzione da eseguire), gli ISTRUCTION REGISTER (contiene l’istruzione da eseguire), la MEMORY ADDRESS REGISTER (che contiene l’indirizzo della cella della memoria da selezionare per il trasferimento di un dato con la cpu) e la MEMORY ADDRESS REGISTER (che contiene il dato attualmente oggetto di elaborazione e il risultato al termine dell’esecuzione). Vi sono altri registri cioè REGISTRO INTERRUZZIONI (che serve a gestire le interruzioni), il PROGRAM STATUS WORD (ogni bit flag indica la presenza / assenza di una proprietà nell’ultimo risultato generato dalla ALU) e i REGISTRI DI USO GENERALE (sono usati per contenere dati e indirizzi).
  • Unità di controllo: fa in modo che l’elaboratore funzioni. Da quando viene acceso a quando si spegne essa esegue in continuazione il ciclo prelievo, decodifica e esecuzione. Ci sono poi le unità di Input e Outpu t: per Input si intendono i dati che il computer riceve in ingresso e ha lo scopo di trasferire l’informazione all’interno del computer e per Output sono i dati che il computer trasmette verso un oggetto esterno e ha lo scopo di trasferire l’informazione del computer all’esterno. Periferiche di Input sono la tastiera o il mouse mentre di Output è la stampante. La memoria centrale è di dimensioni limitate ma con un accesso molto rapido. È composta da Ram (random accesa memory) che è volatile e perde il suo contenuto quando si spegne il calcolatore e da Rom (read only memory) che è persistite ovvero mantiene il suo contenuto quando si spegne il calcolatore. La Ram è usata per memorizzare dati e programmi mentre la Rom è usata per memorizzare programmi di sistema. La memoria di massa memorizza grandi quantità di informazioni. È una memoria persistente ovvero in cui le informazioni non perdono spegnendo la macchina. L’INDIRIZZAMENTO è l’attività con cui l’elaboratore selezione una cella di memoria, per farlo pone l’indirizzo della cella desiderata ne registro indirizzi. Il Bus di sistema collega due unità funzionali alla volta in cui una trasmette e l’altra riceve. Il trasferimento dei dati avviene o sotto il controllo della CPU o mediante accesso diretto alla memoria. Il bus è un insieme di linee di comunicazione diverse:
  • Bus dati - è bidirezionale e serve a trasmettere datti dalla memoria o viceversa.
  • Bus indirizzi - è unidirezionale e serve a trasmettere il contenuto del registro.
  • Bus comandi - è bidirezionale ed è tipicamente usato per inviare comandi verso la memoria o verso una periferica. Può essere usato per inviare comandi verso il processore.

codifica che economizzano, codificando solo le ‘differenze’ fra un fotogramma e l’altro (MPEG). Un video è una sequenza di immagini (25/30 al secondo) sincronizzate con un audio. Rappresentazione di suoni: L’accuratezza della ricostruzione dipende: da quanto sono piccoli gli intervalli di campionamento, da quanti bit uso per descrivere il suono in ogni campione nella fase di quantizzazione e come al solito maggiore accuratezza significa maggior quantità di memoria occupata! Anche per i suoni si possono utilizzare tecniche di compressione per migliorare l’occupazione di memoria della sequenza di campioni. Gli Algoritmi lossy per suoni sfruttano il fatto che per l’orecchio umano suoni a basso volume sovrapposti ad altri di volume maggiore sono poco udibili e possono essere eliminati, sostanzialmente è quello che accade nello standard MPEG Layer 3, detto anche MP3. LO STANDARD MIME : MIME (Multipurpose Internet Mail Extension) è uno standard che permette di riconoscere correttamente la codifica di dati di natura diversa (testo, immagini, suoni etc.). Una codifica MIME comprende un preambolo, in cui viene specificato in modo standard il tipo del dato che stiamo codificando (text/ plain,image/jpeg,image/gif) e un corpo (body), che contiene la codifica vera e propria. Teorema di Shannon-Nyquist > se digitalizziamo un segnale periodico con una frequenza di campionamento superiore al doppio della sua armonica più alta, allora la sequenza di numeri ottenuta contiene tutta l’informazione del segnale originario. L’orecchio umano non può percepire componenti armoniche di frequenza superiore a 22KHz. Se campioniamo il segnale a 44 KHz siamo sicuri che non perdiamo contenuto indicativo apprezzabile dall’orecchio umano. Formati di file audio:

  • non compressi (WAV • AIFF • AU)
  • con compressione lossless ( FLAC (Free Lossless Audio Codec) • Apple Lossless • lossless Windows Media Audio)
    • con compressione lossy (Ogg/Vorbis • RealAudio • lossy Windows Media Audio (WMA) • AAC (Advanced Audio Codec) • MP (Mpeg-1 Layer 3)) Formati aperti:
  • wav – usato soprattutto sotto Windows ( non compresso • CD-quality (44Khz – 16bits) sound^ files)
  • ogg – free, open source ( supporta vari codecs, il pi. comune. Vorbis • miglior compressionie rispeto all’MP3)
  • mpc – Musepack or MPC (ex MPEGplus, MPEG+ or MP+), open source • compressione lossy di alta qualit. (stereo audio al bitrate di 160–180 kbit/s).
  • flac – compressione lossless (come zip) specializzata per l’audio
  • aiff – usato da Apple.. il wav del Mac.
  • raw – formato grezzo per PCM • au – usato da Sun, Unix e Java
  • gsm – standard per la telefonia mobile in Europa pensato per comprimere al meglio la voce umana Formati proprietari:
  • mp3 – formato MPEG Layer-3 ( compressione lossy^ fino al 10% del PCM originale e bitrate dinamico is the most popular format for downloading and storing music)
  • wma –Windows Media Audio propriet. della Microsoft progettato per Digital Rights Management (DRM copy protection)
  • ra – Real Audio format progettato per lo streaming audio su Internet
  • msv – formato proprietario Sony per Memory Stick
  • dvf – formato proprietario Sony per dictation recorders
  • mp4 –versione propritaria dello standard MP4 con Digital Rights Management sviluppata Apple per scaricare musica con iTunes Music Store NUMERI RAPPRESENTAZIONE DELL’INFORMAZIONE
  • Internamente a un elaboratore, ogni informazione è rappresentata tramite sequenze di bit (cifre binarie)
  • Una sequenza di bit non dice “cosa” essa rappresenta: l’interpretazione è negli occhi di chi guarda
  • Ad esempio, 01000001 può rappresentare:
  • l’intero 65, il carattere ‘A’, il boolean ‘vero’, …
  • … il colore di un puntino sullo schermo... INFORMAZIONI NUMERICHE
  • La rappresentazione delle informazioni numeriche è di particolare rilevanza
  • In particolare vogliamo poter trattare: N: numeri naturali (interi senza segno), Z: numeri interi (con segno), R: numeri reali
  • con la consapevolezza di: eventuali limiti nella loro rappresentazione e nel loro uso e eventuali approssimazioni necessarie. Il valore di un numero è ricavabile a partire dal valore rappresenta da ogni simbolo e pesandolo in base alla posizione che occupa.

PYTHON

Scrivere un programma significa codificare nel linguaggio della macchina un pezzo della nostra intelligenza che possiamo condividere con gli altri. Python è un linguaggio di programmazione di alto livello orientato agli oggetti (if classe.numerostudenti == 13: print “Siamo tutti!”) che viene tradotto in istruzioni nel linguaggio della macchina dall’interprete Python. Questo linguaggio è stato inizialmente sviluppato nel 1991 da Guido van Rossum. Un programma è una sequenza di passi da eseguire in ordine. Alcuni passi sono condizionali e potrebbero essere saltati. Alle volte un passo o un gruppo di passi deve essere ripetuto. Alle volte memorizziamo una serie di passi per essere usati più volte in più punti del programma. I valori fissi come numeri, lettere e stringhe sono chiamate COSTANTI, quelle numeriche sono scritte come numeri mentre le costanti stringhe sono racchiuse tra apici o virgolette. Una variabile è un posto nella memoria con un nome, dove un programmatore può memorizzare i dati per poi recuperarli usando il nome della variabile. In python le variabili, i numeri e le costanti hanno un TIPO. Il programma conosce il tipo di ogni cosa quindi proibisce alcune operazione quando il tipo non è compatibile. SOCIAL MEDIA e sentiment Al giorno d'oggi, i contenuti social sono sempre più ricchi di immagini, ed è una fonte crescente di dati e informazioni sugli utenti, grazie all’aumento della partecipazione e l’impegno costante. C’è un maggiore caricamento costante delle foto caricate quotidianamente da influencer ma solo il 15% contiene dati rilevanti. Le immagini sono il nuovo modo di comunicare, ci sono circa 1,8 milioni di foto condivise ogni giorno sui social. Inoltre è stato studiato che le immagini attraggono più attenzione se sono accompagnate da un testo. Il sentiment sui social network può essere positivo, negativo o neutro. Il sentimento di un’immagine è identificato da un classificatore di machine learnig basato su visualizzazioni e testi estratti da 2 reti addestrate di Deep Convolutional Neural Networks. REALTA AUMENTATA E REALTA VIRTALE La realtà virtuale è una tecnologia in grado di “trasportarci” in un ambiente digitale che sostituisce completamente il mondo reale. Si intende una tecnologia capace di trasportarci in una realtà diversa da quella che stiamo vivendo. Questo avviene grazie a dei visori che, una volta indossati, sono capaci di isolare dal mondo e teletrasportare altrove. Tutto quello che vediamo e sentiamo è rimpiazzato con qualcosa generato al computer, che ci avvolge a 360 gradi esperienza immersiva e con il quale possiamo interagire usando le mani, proprio come nella realtà. La realtà aumentata amplifica il mondo reale con la sovrapposizione di contenuti digitali. Ci si riferisce ad una versione aumentata della realtà creata grazie all’uso della tecnologia, che aggiunge informazioni digitali sovrapponendole all’ambiente reale. Le app di realtà aumentata utilizzano la fotocamera del telefono per mostrare una visione del mondo reale di fronte a te. Quella è l’immagine di partenza, su cui vengono aggiunti dei livelli di informazioni, come testi e / o altre immagini. Uno degli esempi più celebri è Pokemon Go, app che permette di apporre sopra la realtà le immagini digitali. In poche parole la realtà aumentata parte dalla nostra realtà e vi aggiunge qualcosa. Non “teletrasporta” altrove, semplicemente amplifica il nostro attuale stato di presenza. INTELLIGENZA ARTIFICIALE L’intelligenza artificiale è un campo di ricerca che studia la programmazione e la progettazione di sistemi mirati a dotare le macchine di una o più caratteristiche considerate tipicamente umane. Le proprietà variano dall’apprendimento alla percezione visiva o spazio - temporale. A differenza dei software tradizionali, un sistema IA non si basa sulla programmazione (cioè sul lavoro di sviluppatori che scrivono il codice di funzionamento del sistema) ma su tecniche di apprendimento: vengono cioè definiti degli algoritmi che elaborano un’enorme quantità di dati dai quali è il sistema stesso che deve derivare le proprie capacità di comprensione e ragionamento. MACHINE LEARNING Il Machine Learning (ML) è un sottoinsieme dell'intelligenza artificiale (AI) che si occupa di creare sistemi che apprendono—o migliorano le performance—in base ai dati che utilizzano. Intelligenza artificiale è un termine generico e si riferisce a sistemi o macchine che imitano l'intelligenza umana. I termini Machine learning e AI vengono spesso utilizzati insieme e in modo interscambiabile, ma non hanno lo stesso significato. Un'importante distinzione è che sebbene tutto ciò che riguarda il machine learning rientra nell'intelligenza artificiale, l'intelligenza artificiale non include solo il machine learning. Attualmente, il machine learning è utilizzato ovunque. Quando interagiamo con le banche, acquistiamo online o utilizziamo i social media, vengono utilizzati gli algoritmi di machine learning per rendere la nostra esperienza efficiente, facile e sicura. Il Machine Learning e la tecnologia associata si stanno sviluppando rapidamente e noi abbiamo appena iniziato a scoprire le loro funzionalità. Un dataset come un foglio Exell è costituito da alcuni termini: classe (ex: cane, gatto, cavallo), le Feature (ovvero le caratteristiche che possono essere antropometriche o di colore). Più sono brava a riconoscere le caratteristiche e le feature tanto più il mio algoritmo funziona bene. La parte più importante del processo di machine Learning è il dataset che però non possono essere confusi e disordinati. Una parte di dataset viene chiamata training set e serve a far allenare il nostro algoritmo su quella porzione di dato. Il test set è il test di esempi usato per valutare le performance dell’algoritmo e generalmente viene usato una volta che il training è completato. La parte della validation set è una porzione del mio data set che serve a valutare come l’algoritmo sta acquisendo conoscenza.