Scalari, Vettori, Matrici, Tensori: rappresentare dati con certe dimensioni

« Older   Newer »
 
  Share  
.
  1.  
    .
    Avatar

    Advanced Member

    Group
    Amministratore
    Posts
    8,544

    Status
    Offline

    Vettori, Matrici, Tensori: rappresentare dati con certe dimensioni



    Prima di fare post riguardo al funzionamento Matematico dei Big Data è fondamentale dare nozioni di base per chi parte da zero.
    I nostri dati possono essere rappresentati in diverse dimensioni.
    Il singolo valore rappresenta uno scalare (ad esempio il valore 10 è uno scalare) e solitamente viene associato ad una specifica unità di misura, però un dato può essere definito anche da più valori.
    Da qui in poi è doveroso fare una premessa importante: il concetto di Vettore, Matrice e Tensore sono in realtà molto ampi e possono esistere diverse interpretazioni.

    In questo caso io voglio riferirmi alla rappresentazione matriciale di questi componenti e quindi partiamo dal concetto di Matrice: la matrice ha due dimensioni e viene rappresentata come una tabella.
    Esisteranno quindi due indici: uno per la riga e uno per la colonna.
    Se può semplificarvi la vita è come dover giocare a battaglia navale!

    Vi propongo questa immagine di Wikipedia che può aiutarvi a capire il concetto di matrice

    1200px-Matrix_-_it.svg



    Ovviamente al posto di tutti gli elementi al posto di 'a' e i relativi indici di riga e colonna ci saranno dei valori.
    Il valore di a12 verrà specificato con indice di riga = 1 e indice di colonna = 2.
    Nella vita reale potete pensare ad esempio di avere due variabili: il Nome di una persona e il voto che fornisce a certi film, nelle righe verrà rappresentato il nome, mentre nella colonna verranno rappresentati i voti dei film.
    Le parti in blu servono solo per farvi capire meglio il concetto, ma nell'implementazione della matrice saranno presenti solo le parti in giallo.

    Matrice




    Dal concetto di matrice arriviamo al concetto di Vettore Riga o Vettore Colonna che al momento è la definizione di vettore che daremo poiché la più adatta per problemi informatici: immaginiamo un vettore come una matrice che sia formata da 1 riga e N colonne (vettore riga) oppure da N righe e 1 colonna (vettore colonna).
    In questo modo possiamo rappresentare sequenze di dati a una dimensione.
    Immaginiamo di avere la lista dei voti di una singola persona, questo è un esempio di vettore riga:

    Vettore



    Infine se vogliamo rappresentare dati a più di 2 dimensioni possiamo utilizzare delle matrici multidimensionali, anche chiamate tensori.
    Quindi:

    • Nella Matrice abbiamo due indici: uno per la riga e uno per la colonna;

    • Nel Vettore abbiamo un indice: per la riga (vettore riga) oppure per la colonna (vettore colonna);

    • Nel Tensore abbiamo più di due indici a seconda di quante dimensioni vogliamo rappresentare;


    Questa struttura dati presa sempre da Wikipedia mostra come un Tensore possa essere rappresentato come una "Matrice a tre dimensioni"

    1920px-Epsilontensor.svg



    Quindi per riassumere possiamo utilizzare questa immagine mostrata in questo articolo di Medium

    Scalari-Vettori-Tensori

     
    Top
    .
  2.  
    .
    Avatar

    Staff

    Group
    ForumFree Staff
    Posts
    109,420
    Location
    Slayer's Flag

    Status
    Anonymous
    fino ai numeri me la cavavo, quando li hanno sostituiti con le lettere mi sono perso :asd: comunque i database sono matrici?
     
    Top
    .
  3.  
    .
    Avatar

    Advanced Member

    Group
    Amministratore
    Posts
    8,544

    Status
    Offline
    CITAZIONE (kostaki @ 23/8/2022, 00:12) 
    fino ai numeri me la cavavo, quando li hanno sostituiti con le lettere mi sono perso :asd: comunque i database sono matrici?

    Le "lettere" servono per dare generalità alle formule matematiche, comunque non sei l'unico :asd:
    Ammetto che la domanda sui database e le matrici mi ha colpito e ho fatto anche qualche ricerca per evitare di risponderti con una stupidaggine.
    In C sono abituato a pensare che le matrici siano una tabella di elementi tutti dello stesso tipo (ad esempio o solo numeri interi o solo numeri reali), ovvero appartengano tutti a uno stesso insieme.
    Vi è anche da dire che il concetto di Insieme può essere ampio e racchiudere anche dati di tipo diverso.

    Quindi in generale per me la risposta è sì, più correttamente un database non è una matrice, ma un insieme di matrici (le tabelle del database).
     
    Top
    .
  4.  
    .
    Avatar

    Staff

    Group
    ForumFree Staff
    Posts
    109,420
    Location
    Slayer's Flag

    Status
    Anonymous
    CITAZIONE (shiny ditto @ 23/8/2022, 12:43) 
    Quindi in generale per me la risposta è sì, più correttamente un database non è una matrice, ma un insieme di matrici (le tabelle del database).

    ecco sì, ero stato impreciso, mi riferivo alle tabelle di un db :fifi:
     
    Top
    .
3 replies since 22/8/2022, 02:47   54 views
  Share  
.