Processing math: 100%

System Design

NOTA: tolgo dalle note perché non mi sembra importante. Introduction to system design Packages vs diagrams 🟩- Packages fisica implementazione, perché è una cosa utile per lo sviluppo Diagrams logica visualizzazione perché aiuta solamente a comprendere meglio come funziona il sistema in toto. Components What is a component (3) 🟨 È una entità totalmente indipendente che funziona a sé, un esempio è il dll, dynamically loaded libraries presente nei sistemi di windows. Una cosa è che espongono interfacce per interagirci, e questi possono essere utilizzati per creare sistemi complessi. ...

2 min · Xuanqiang 'Angelo' Huang

The Database Management System

Struttura del DBMS Introduzione ai DBMS Schema riassuntivo #### Operazioni classiche Ci stiamo chiedendo, come facciamo a descrivere i processi che portano alla comprensione della query e della retrieval degli elementi utili? Questo deve fare il DBMS, ossia capace di - Aggiornare tuple - Trovare tuple - Gestire gli accessi - Gestire accessi concorrenti? ### Query processor #### Query compiler (3) 🟩 - Parsing (crea l'albero di derivazione per la nostra query) - Pre-processing (fa check semantici sulla query) - Optimization, si occupa lui di migliorare L'ottimizzazione #### Execution engine 🟩 Esegue l'effettiva computazione per la query, ed è il punto d'incontro col resto (indexes, e logging per dire) Esegue il piano di esecuzione che probabilmente un livello superiore ha calcolato Interagisce con tutti gli altri componenti del db (ad esempio Log per transazioni e durabilità, buffer e scheduler delle operazioni prolly). Anche se non so nei dettagli in che modo esegue questo (alla fine roba assembly? che livello di astrazione ha?) ...

5 min · Xuanqiang 'Angelo' Huang

The RLHF pipeline

https://huyenchip.com/2023/05/02/rlhf.html è un blog post che lo descrive in modo abbastanza dettagliato e buono. Introduzione a RLHF Questo è il processo che è quasi la migliore per la produzione di LLM moderni (maggior parte si basano su questo per dire). Struttura generale Si può dire che RLHF si divida in 3 parti fondamentali Completion il modello viene allenato a completare parole dal web,solitamente è molto inutile Fine tuning per le singole task, per esempio riassumere, rispondere in certo modo etc. Reinforcement Learning basato su un reward model scoperto. Partiamo con l’approccio di reinforcement learning che è la parte un po’ più interessante in questo momento ...

2 min · Xuanqiang 'Angelo' Huang

Tokenization

Introduction to tokenization Tokenization is the process of converting normal strings into small little pieces that could be fed into one of our models. It usually comes from a tradition in programming languages, as we can see in Automi e Regexp where we define a specific token to have a known pattern, usually recognized by regular expressions. There have been historically been many approaches to tokenization, let’s see a few: Un approccio semplice (e non funzionante) Uno dei primi approcci che potrebbe venire in mente per questo problema di divisione delle parole è avere delle componenti fisse (ad esempio lettere di alfabeto, o lettere) e utilizzare queste per fare tokenization. Cioè stiamo mappando parti delle parole in modo greedy, prima arriva meglio è. Si potrebbe rappresentare in questo modo: Da questo ipynb ...

3 min · Xuanqiang 'Angelo' Huang

Unified Modeling Language

Cosa è UML è un linguaggio di modelling (molto vecchio) ma ancora di continua evoluzione, da un punto di vista storico è nato insieme ai concetti di Object Oriented Programming che ora è molto presente all’interno dell’industria, descritto bene in Classi OOP, anche se in questa occasione sviluppata in maniera molto più intuitiva (grafica). Perché serve 🟩 Per cercare di comunicare quanto necessario riguardo struttura e dinamicità dell’architettura. Struttura di UML Structural Diagram 🟨++ These diagrams focus on representing the static structure of a system. They help depict the components, classes, objects, and their relationships in a system. Some common structural diagrams in UML include: ...

7 min · Xuanqiang 'Angelo' Huang

Vettore potenziale

Introduzione al vettore potenziale Definizione vettore potenziale 🟩 B=×A Con un campo vettoriale a caso A, vedremo che questo campo avrà qualche utilità per fare i calcoli. Possiamo notare che soddisfa la proprietà dell campo solenoidale citato in Magnetismo, infatti B=(×A)=0 Perché sappiamo che la divergenza del rotore (questo operatore dico) è sempre nullo per ragioni di Cauchy, se ne parla in Divergenza e Circuitazione. ...

3 min · Xuanqiang 'Angelo' Huang

Accept Reject algorithm

Some useful links Main results: https://jblevins.org/notes/accept-reject Intuition: https://en.wikipedia.org/wiki/Rejection_sampling La cosa è che faccio sampling fra due distribuzioni diverse e devo settare anche un parametro (e a seconda di certe cose diventa molto lento). Introduzione al metodo Vorrei utilizzare una funzione g per generarne una altra, questo è il fulcro del concetto. L’idea principale è: Conosco la funzione densità della funzione f che voglio andare a generare Riesco a generare seguendo una funzione semplice, la chiamo g, candidate density. (che è la densità che utilizzo per calcolare il target che non conosco molto bene). Ma devono esserci due cose: ...

2 min · Xuanqiang 'Angelo' Huang

Ampere e Faraday

Relazioni con fili - Ampere Legge di Biot-Savart/Formalizzazione esperienza di Ampere 🟩 Poniamo che ho due fili in cui scorra della corrente, voglia capire la forza per unità di lunghezza del filo uno su due e viceversa. So che entrambi generano campo magnetico So che il campo magnetico induce forza su correnti in movimento. Supponiamo che la loro distanza sia D, allora avremo che: Per la prima legge so: dB=μ0idl׈r4πr2 da questo posso calcolare il campo magnetico totale, in un modo simile a quanto fatto in precedenza per il campo elettrico (solo che in questo caso abbiamo il prodotto seno, quindi l’angolo che conviene scegliere è un po’ diverso), e una volta che ho questo posso usare la seconda legge per avere la forza, questo è il piano. B=Filoμ0i4πdl׈rr2=ˆkμi4π+π/2π2dlr2sinθrsinθ=Dr=DsinθDl=tanθl=Dtanθdl=Ddθsin2θ|B|=μ0i4π0πsinθDdθdx=μ0i4πD(cosθ)0π=μ0i2πD Da qui abbiamo ottenuto la legge di Biot Savart. Qui notiamo che il campo magnetico circola intorno al filo (è tangente al campo magnetico in questo caso, molto simile). ...

9 min · Xuanqiang 'Angelo' Huang

Conduttori elettrici

Campo elettrico nei materiali Se prendiamo un conduttore, gli elettroni in questi materiali sono liberi, significa che sono liberi di muoversi come vogliono, si può dire che “vadano in giro” (per esempio questo vale per il rame). il reticolo cristallino è al struttura regolare che è comune nei materiali, in cui gli atomi sono sempre a distanza costante (o comunque a pattern regolari) uno dall’altro r per esempio. Campo e materiali (6) Schermatura del campo (!) 🟩 Quando un materiale conduttore è sottoposto a un campo elettrico *gli elettroni si mettono in modo da schermare il campo esterno, in modo tale da raggiungere un equilibrio. ...

7 min · Xuanqiang 'Angelo' Huang

Kolmogorov complexity

Gran parte di quanto scrivo ora è tratto da (Li & Vitányi 2019). Chaitin, Kolmogorov e Solomonoff hanno elaborato il tema in modo indipendente e allo stesso tempo verso gli anni ‘60! Solomonoff lo ha trovato sul problema dell’induzione all’età di 38 anni, Kolmogorov invece era già tardi, ha già trovato gli assiomi della probabilità e poi nel 65 cerca randomness. Mentre Chaiten Information = Computation e non probabilità, nel 68 all’età di 19 anni. In AI teorico questo sembra un tema molto importante. ...

8 min · Xuanqiang 'Angelo' Huang