update
This commit is contained in:
187
content/CSE510/CSE510_L2.md
Normal file
187
content/CSE510/CSE510_L2.md
Normal file
@@ -0,0 +1,187 @@
|
|||||||
|
# CSE510 Deep Reinforcement Learning (Lecture 2)
|
||||||
|
|
||||||
|
Introduction and Markov Decision Processes (MDPs)
|
||||||
|
|
||||||
|
## What is reinforcement learning (RL)
|
||||||
|
|
||||||
|
- A general computational framework for behavior learning through reinforcement/trial and error
|
||||||
|
- Deep RL: combining deep learning with RL for complex problems
|
||||||
|
- Showing a promise for artificial general intelligence (AGI)
|
||||||
|
|
||||||
|
## What RL can do now.
|
||||||
|
|
||||||
|
### Backgammon
|
||||||
|
|
||||||
|
#### Neuro-Gammon
|
||||||
|
|
||||||
|
Developed by Gerald Tesauro in 1989 in IBM's research center.
|
||||||
|
|
||||||
|
Train to mimic expert demonstrations using supervised learning.
|
||||||
|
|
||||||
|
Achieved intermediate-level human player.
|
||||||
|
|
||||||
|
#### TD-Gammon (Temporal Difference Learning)
|
||||||
|
|
||||||
|
Developed by Gerald Tesauro in 1992 in IBM's research center.
|
||||||
|
|
||||||
|
A neural network that trains itself to be an evaluation function by playing against itself starting from random weights.
|
||||||
|
|
||||||
|
Achieved performance close to top human players of its time.
|
||||||
|
|
||||||
|
### DeepMind Atari
|
||||||
|
|
||||||
|
Use deep Q-learning to play Atari games.
|
||||||
|
|
||||||
|
Without human demonstrations, it can learn to play the game at a superhuman level.
|
||||||
|
|
||||||
|
### AlphaGo
|
||||||
|
|
||||||
|
Monte Carlo Tree Search, learning policy and value function networks for pruning the search tree, expert demonstrations, self-play, and TPU from Google.
|
||||||
|
|
||||||
|
### Video Games
|
||||||
|
|
||||||
|
OpenAI Five for Dota 2
|
||||||
|
|
||||||
|
won 5v5 best of 3 games against top human players.
|
||||||
|
|
||||||
|
Deepmind AlphaStar for StarCraft
|
||||||
|
|
||||||
|
supervised training followed by a league competition training.
|
||||||
|
|
||||||
|
### AlphaTensor
|
||||||
|
|
||||||
|
discovering faster matrix multiplication algorithms with reinforcement learning.
|
||||||
|
|
||||||
|
AlphaTensor: 76 vs Strassen's 80 for 5x5 matrix multiplication.
|
||||||
|
|
||||||
|
### Training LLMs
|
||||||
|
|
||||||
|
For verifiable tasks (coding, math, etc.), RL can be used to train a model to perform the task without human supervision.
|
||||||
|
|
||||||
|
### Robotics
|
||||||
|
|
||||||
|
Unitree Go, Altlas by Boston Dynamics, etc.
|
||||||
|
|
||||||
|
## What are the challenges of RL in real world applications?
|
||||||
|
|
||||||
|
Beating the human champion is "easier" than placing the go stones.
|
||||||
|
|
||||||
|
### State estimation
|
||||||
|
|
||||||
|
Known environments (known entities and dynamics) vs. unknown environments (unknown entities and dynamics).
|
||||||
|
|
||||||
|
Need for behaviors to **transfer/generalize** across environmental variations since the real world is very diverse.
|
||||||
|
|
||||||
|
> **State estimation**
|
||||||
|
>
|
||||||
|
> To be able to act, you need first to be able to **see**, detect the **objects** that you interact with, detect whether you achieved the **goal**.
|
||||||
|
|
||||||
|
Most works are between two extremes:
|
||||||
|
|
||||||
|
- Assuming the world model known (object locations, shapes, physical properties obtain via AR tags or manual tuning), they use planners to search for the action sequence to achieve a desired goal.
|
||||||
|
|
||||||
|
- Do not attempt to detect any objects and learn to map RGB images directly to actions.
|
||||||
|
|
||||||
|
Behavior learning is challenging because state estimation is challenging, in other word, because computer vision/perception is challenging.
|
||||||
|
|
||||||
|
Interesting direction: **leveraging DRL and vision-language models**
|
||||||
|
|
||||||
|
### Efficiency
|
||||||
|
|
||||||
|
Cheap vs. Expensive to get experience samples
|
||||||
|
|
||||||
|
#### DRL Sample Efficiency
|
||||||
|
|
||||||
|
Humans after 15 minutes tend to outperform DDQN after
|
||||||
|
115 hours
|
||||||
|
|
||||||
|
#### Reinforcement Learning in Human
|
||||||
|
|
||||||
|
Human appear to learn to act (e.g., walk) through "very few examples" of trial and error. How is an open question...
|
||||||
|
|
||||||
|
Possible answers:
|
||||||
|
|
||||||
|
- Hardware: 230 million years of bipedal movement data
|
||||||
|
- Imitation Learning: Observation of other humans walking (e.g., imitation learning, episodic memory and semantic memory)
|
||||||
|
- Algorithms: Better than backpropagation and stochastic gradient descent
|
||||||
|
|
||||||
|
#### Discrete and continuous action spaces
|
||||||
|
|
||||||
|
Computation is discrete, but the real action space is continuous.
|
||||||
|
|
||||||
|
#### One-goal vs. Multi-goal
|
||||||
|
|
||||||
|
Life is a multi-goal problem. Involving infinitely many possible games.
|
||||||
|
|
||||||
|
#### Rewards automatic and auto detect rewards
|
||||||
|
|
||||||
|
Our curiosity is a reward.
|
||||||
|
|
||||||
|
#### And more
|
||||||
|
|
||||||
|
- Transfer learning
|
||||||
|
- Generalization
|
||||||
|
- Long horizon reasoning
|
||||||
|
- Model-based RL
|
||||||
|
- Sparse rewards
|
||||||
|
- Reward design/learning
|
||||||
|
- Planning/Learning
|
||||||
|
- Lifelong learning
|
||||||
|
- Safety
|
||||||
|
- Interpretability
|
||||||
|
- etc.
|
||||||
|
|
||||||
|
## What is the course about?
|
||||||
|
|
||||||
|
To teach you RL models and algorithms.
|
||||||
|
|
||||||
|
- To be able to tackle real world problems.
|
||||||
|
|
||||||
|
To excite you about RL.
|
||||||
|
|
||||||
|
- To provide a primer for you to launch advanced studies.
|
||||||
|
|
||||||
|
Schedule:
|
||||||
|
|
||||||
|
- RL Model and basic algorithms
|
||||||
|
- Markov Decision Process (MDP)
|
||||||
|
- Passive RL: ADP and TD-learning
|
||||||
|
- Active RL: Q-Learning and SARSA
|
||||||
|
- Deep RL algorithms
|
||||||
|
- Value-Based methods
|
||||||
|
- Policy Gradient Methods
|
||||||
|
- Model-Based methods
|
||||||
|
- Advanced Topics
|
||||||
|
- Offline RL, Multi-Agent RL, etc.
|
||||||
|
|
||||||
|
### Reinforcement Learning Algorithms
|
||||||
|
|
||||||
|
#### Model-Based
|
||||||
|
|
||||||
|
- Learn the model of the world, then plan using the model
|
||||||
|
- Update model often
|
||||||
|
- Re-plan often
|
||||||
|
|
||||||
|
#### Value-Based
|
||||||
|
|
||||||
|
- Learn the state or state-action value
|
||||||
|
- Act by choosing best action in state
|
||||||
|
- Exploration is a necessary add-on
|
||||||
|
|
||||||
|
#### Policy-based
|
||||||
|
|
||||||
|
- Learn the stochastic policy function that maps state to action
|
||||||
|
- Act by sampling policy
|
||||||
|
- Exploration is baked in
|
||||||
|
|
||||||
|
#### Better sample efficiency to Less sample efficiency
|
||||||
|
|
||||||
|
- Model-Based
|
||||||
|
- Off-policy/Q-learning
|
||||||
|
- Actor-critic
|
||||||
|
- On-policy/Policy gradient
|
||||||
|
- Evolutionary/Gradient-free
|
||||||
|
|
||||||
|
## What is RL?
|
||||||
|
|
||||||
|
## RL model: Markov Decision Process (MDP)
|
||||||
@@ -4,4 +4,5 @@ export default {
|
|||||||
type: 'separator'
|
type: 'separator'
|
||||||
},
|
},
|
||||||
CSE510_L1: "CSE510 Deep Reinforcement Learning (Lecture 1)",
|
CSE510_L1: "CSE510 Deep Reinforcement Learning (Lecture 1)",
|
||||||
|
CSE510_L2: "CSE510 Deep Reinforcement Learning (Lecture 2)",
|
||||||
}
|
}
|
||||||
348
content/CSE5313/CSE5313_L2.md
Normal file
348
content/CSE5313/CSE5313_L2.md
Normal file
@@ -0,0 +1,348 @@
|
|||||||
|
# CSE5313 Coding and information theory for data science (Lecture 2)
|
||||||
|
|
||||||
|
## Review on Channel coding
|
||||||
|
|
||||||
|
Let $F$ be the input alphabet, $\Phi$ be the output alphabet.
|
||||||
|
|
||||||
|
e.g. $F=\{0,1\},\mathbb{R}$.
|
||||||
|
|
||||||
|
Introduce noise: $\operatorname{Pr}(c'\text{ received}|c\text{ transmitted})$.
|
||||||
|
|
||||||
|
We use $u$ to denote the information to be transmitted
|
||||||
|
|
||||||
|
$c$ to be the codeword.
|
||||||
|
|
||||||
|
$c'$ is the received codeword. given to the decoder.
|
||||||
|
|
||||||
|
$u'$ is the decoded information word.
|
||||||
|
|
||||||
|
Error if $u' \neq u$.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
**Binary symmetric channel (BSC)**
|
||||||
|
|
||||||
|
$F=\Phi=\{0,1\}$
|
||||||
|
|
||||||
|
Every bit of $c$ is flipped with probability $p$.
|
||||||
|
|
||||||
|
**Binary erasure channel (BEC)**
|
||||||
|
|
||||||
|
$F=\Phi=\{0,1,*\}$, very common in practice when we are unsure when the bit is transmitted.
|
||||||
|
|
||||||
|
$c$ is transmitted, $c'$ is received.
|
||||||
|
|
||||||
|
$c'$ is $c$ with probability $1-p$, $e$ with probability $p$.
|
||||||
|
|
||||||
|
## Encoding
|
||||||
|
|
||||||
|
Encoding $E$ is a function from $F^k$ to $F^n$.
|
||||||
|
|
||||||
|
Where $E(u)=c$ is the codeword.
|
||||||
|
|
||||||
|
Assume $n\geq k$, we don't compress the information.
|
||||||
|
|
||||||
|
A code $\mathcal{C}$ is a subset of $F^n$.
|
||||||
|
|
||||||
|
Encoding is a one to one mapping from $F^k$ to $\mathcal{C}$.
|
||||||
|
|
||||||
|
In practice, we usually choose $\mathcal{C}\subseteq F^n$ to be the size of $F^k$.
|
||||||
|
|
||||||
|
## Decoding
|
||||||
|
|
||||||
|
$D$ is a function from $\Phi^n$ to $\mathcal{C}$.
|
||||||
|
|
||||||
|
$D(c')=\hat{c}$
|
||||||
|
|
||||||
|
The decoder then outputs the unique $u'$ such that $E(u')=\hat{c}$.
|
||||||
|
|
||||||
|
Our aim is to have $u=u'$.
|
||||||
|
|
||||||
|
Decoding error probability: $\operatorname{P}_{err}=\max_{c\in \mathcal{C}}\operatorname{P}_{err}(c)$.
|
||||||
|
|
||||||
|
where $\operatorname{P}_{err}(c)=\sum_{y|D(y)\neq c}\operatorname{Pr}(y\text{ received}|c\text{ transmitted})$.
|
||||||
|
|
||||||
|
Our goal is to construct decoder $D$ such that $\operatorname{P}_{err}$ is bounded.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
Repetition code in binary symmetric channel:
|
||||||
|
|
||||||
|
Let $F=\Phi=\{0,1\}$. Every bit of $c$ is flipped with probability $p$.
|
||||||
|
|
||||||
|
Say $k=1$, $n=3$ and let $\mathcal{C}=\{000,111\}$.
|
||||||
|
|
||||||
|
Let the encoder be $E(u)=u u u$.
|
||||||
|
|
||||||
|
The decoder is $D(000)=D(100)=D(010)=D(001)=0$, $D(110)=D(101)=D(011)=D(111)=1$.
|
||||||
|
|
||||||
|
Exercise: Compute the error probability of the repetition code in binary symmetric channel.
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Solution</summary>
|
||||||
|
|
||||||
|
Recall that $P_{err}(c)=\sum_{y|D(y)\neq c}\operatorname{Pr}(y\text{ received}|c\text{ transmitted})$.
|
||||||
|
|
||||||
|
Use binomial random variable:
|
||||||
|
|
||||||
|
$$
|
||||||
|
\begin{aligned}
|
||||||
|
P_{err}(000)&=\sum_{y|D(y)\neq 000}\operatorname{Pr}(y\text{ received}|000\text{ transmitted})\\
|
||||||
|
&=\operatorname{Pr}(2\text{ flipes or more})\\
|
||||||
|
&=\binom{n}{2}p^2(1-p)+\binom{n}{3}p^3\\
|
||||||
|
&=3p^2(1-p)+p^3\\
|
||||||
|
\end{aligned}
|
||||||
|
$$
|
||||||
|
|
||||||
|
The computation is identical for $111$.
|
||||||
|
|
||||||
|
$P_{err}=\max\{P_{err}(000),P_{err}(111)\}=P_{err}(000)=3p^2(1-p)+p^3$.
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
### Maximum likelihood principle
|
||||||
|
|
||||||
|
For $p\leq 1/2$, the last example is maximum likelihood decoder.
|
||||||
|
|
||||||
|
Notice that $\operatorname{Pr}(c'=000|c=000)=(1-p)^3$ and $\operatorname{Pr}(c'=000|c=111)=p^3$.
|
||||||
|
|
||||||
|
- If $p\leq 1/2$, then $(1-p)^3\geq p^3$. $c=000$ is more likely to be transmitted than $c=111$.
|
||||||
|
|
||||||
|
When $\operatorname{Pr}(c'=001|c=000)=(1-p)^2p$ and $\operatorname{Pr}(c'=001|c=111)=p^2(1-p)$.
|
||||||
|
|
||||||
|
- If $p\leq 1/2$, then $(1-p)^2p\geq p^2(1-p)$. $c=001$ is more likely to be transmitted than $c=110$.
|
||||||
|
|
||||||
|
For $p>1/2$, we just negate the above.
|
||||||
|
|
||||||
|
In general, Maximum likelihood decoder is $D(c')=\arg\max_{c\in \mathcal{C}}\operatorname{Pr}(c'\text{ received}|c\text{ transmitted})$.
|
||||||
|
|
||||||
|
## Defining a "good" code
|
||||||
|
|
||||||
|
Two metrics:
|
||||||
|
|
||||||
|
- How many redundant bits are needed?
|
||||||
|
- e.g. repetition code: $k=1$, $n=3$ sends $2$ redundant bits.
|
||||||
|
- What is the resulting error probability?
|
||||||
|
- Depends on the decoding function.
|
||||||
|
- Normally, maximum likelihood decoding is assumed.
|
||||||
|
- Should go zero with $n$.
|
||||||
|
|
||||||
|
### Definition for rate of code is $\frac{k}{n}$.
|
||||||
|
|
||||||
|
More generally, $\log_{|F|}\frac{|\mathcal{C}|}{n}$.
|
||||||
|
|
||||||
|
### Definition for information entropy
|
||||||
|
|
||||||
|
Let $X$ be a random variable over a discrete set $\mathcal{X}$.
|
||||||
|
|
||||||
|
- That is every $x\in \mathcal{X}$ has a probability $\operatorname{Pr}(X=x)$.
|
||||||
|
|
||||||
|
The entropy $H(X)$ of a discrete random variable $X$ is defined as:
|
||||||
|
|
||||||
|
$$
|
||||||
|
H(X)=\mathbb{E}_{x\sim X}{\log \frac{1}{\operatorname{Pr}(x)}}=-\sum_{x\in \mathcal{X}}\operatorname{Pr}(x)\log \operatorname{Pr}(x)
|
||||||
|
$$
|
||||||
|
|
||||||
|
when $X=Bernouili(p)$, we denote $H(X)=H(p)=-p\log p-(1-p)\log (1-p)$.
|
||||||
|
|
||||||
|
A deeper explanation will be given in the later in the course.
|
||||||
|
|
||||||
|
## Which rate are possible?
|
||||||
|
|
||||||
|
Claude Shannon '48: Coding theorem of the BSC(binary symmetric channel)
|
||||||
|
|
||||||
|
Recall $r=\frac{k}{n}$.
|
||||||
|
|
||||||
|
Let $H(\cdot)$ be the entropy function.
|
||||||
|
|
||||||
|
For every $0\leq r<1-H(p)$,
|
||||||
|
|
||||||
|
- There exists $\mathcal{C}_1, \mathcal{C}_2,\ldots$ of rates $r_1,r_2,\ldots$ lengths $n_1,n_2,\ldots$ and $r_i\geq r$.
|
||||||
|
- That with Maximum likelihood decoding satisifies $P_{err}\to 0$ as $i\to \infty$.
|
||||||
|
|
||||||
|
For any $R\geq 1-H(p)$,
|
||||||
|
|
||||||
|
- Any sequence $\mathcal{C}_1, \mathcal{C}_2,\ldots$ of rates $r_1,r_2,\ldots$ lengths $n_1,n_2,\ldots$ and $r_i\geq R$,
|
||||||
|
- Any andy decoding algorithm, $P_{err}\to 1$ as $i\to \infty$.
|
||||||
|
|
||||||
|
$1-H(p)$ is the capacity of the BSC.
|
||||||
|
|
||||||
|
- Informally, the capacity is the best possible rate of the code (asymptotically).
|
||||||
|
- A special case of a broader theorem (Shannon's coding theorem).
|
||||||
|
- We will see later in this course.
|
||||||
|
|
||||||
|
Polar codes, for explicit construction of codes with rate arbitrarily close to capacity.
|
||||||
|
|
||||||
|
### BSC capacity - Intuition
|
||||||
|
|
||||||
|
Capacity of the binary symmetric channel with crossover probability $p=1-H(p)$.
|
||||||
|
|
||||||
|
A correct decoder $c'\to c$ essentially identifies two objects:
|
||||||
|
|
||||||
|
- The codeword $c$
|
||||||
|
- The error word $e=c'-c$ subtraction $\mod 2$.
|
||||||
|
- $c$ and $e$ are independent of each other.
|
||||||
|
|
||||||
|
A **typical** $e$ has $\approx np$ $1$'s (law of large numbers), say $n(p\pm \delta)$.
|
||||||
|
|
||||||
|
Exercise:
|
||||||
|
|
||||||
|
$\operatorname{Pr}(e)=p^{n(p\pm \delta)}(1-p)^{n(1-p\pm \delta)}=2^{-n(H(p)+\epsilon)}$ for some $\epsilon$ goes to zero as $n\to \infty$.
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Intuition</summary>
|
||||||
|
|
||||||
|
There exists $\approx 2^{n(H(p)}$ typical error words.
|
||||||
|
|
||||||
|
To index those typical error words, we need $\log_2 (2^{nH(p)})=nH(p)+O(1)$. bits to identify the error word $e$.
|
||||||
|
|
||||||
|
To encode the message, we need $\log_2 |\mathcal{C}|$ bits.
|
||||||
|
|
||||||
|
Since we send $n$ bits, the rate is $k+nH(p)+O(1)\leq n$, so $\frac{k}{n}\leq 1-H(p)$.
|
||||||
|
|
||||||
|
So the rate cannot exceed $1-H(p)$.
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Formal proof</summary>
|
||||||
|
|
||||||
|
$$
|
||||||
|
\begin{aligned}
|
||||||
|
\operatorname{Pr}(e)&=p^{n(p\pm \delta)}(1-p)^{n(1-p\pm \delta)}\\
|
||||||
|
&=p^{np}(1-p)^{n(1-p)}p^{\pm n\delta}(1-p)^{\mp n\delta}\\
|
||||||
|
\end{aligned}
|
||||||
|
$$
|
||||||
|
|
||||||
|
And
|
||||||
|
|
||||||
|
$$
|
||||||
|
\begin{aligned}
|
||||||
|
2^{-n(H(p)+\epsilon)}&=2^{-n(-p\log p-(1-p)\log (1-p)+\epsilon)}\\
|
||||||
|
&=2^{np\log p}2^{n(1-p)\log (1-p)}2^{-n\epsilon}\\
|
||||||
|
&=p^{np}(1-p)^{n(1-p)}2^{-n\epsilon}\\
|
||||||
|
\end{aligned}
|
||||||
|
$$
|
||||||
|
|
||||||
|
So we need to check there exists $\epsilon>0$ such that
|
||||||
|
|
||||||
|
$$
|
||||||
|
\lim_{n\to \infty}p^{\pm n\delta}(1-p)^{\mp n\delta}\leq 2^{-n\epsilon}
|
||||||
|
$$
|
||||||
|
|
||||||
|
Test
|
||||||
|
|
||||||
|
$$
|
||||||
|
\begin{aligned}
|
||||||
|
2^{-n\epsilon}&=p^{np}(1-p)^{n(1-p)}2^{-n\epsilon}\\
|
||||||
|
-n\epsilon&=\delta n\log p-\delta n\log (1-p)\\
|
||||||
|
\epsilon&=\delta (\log (1-p)-\log p)\\
|
||||||
|
\end{aligned}
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
## Hamming distance
|
||||||
|
|
||||||
|
How to quantify the noise in the channel?
|
||||||
|
|
||||||
|
- Number of flipped bits.
|
||||||
|
|
||||||
|
Definition of Hamming distance:
|
||||||
|
|
||||||
|
- Denote $c=(c_1,c_2,\ldots,c_n)$ and $c'=(c'_1,c'_2,\ldots,c'_n)$.
|
||||||
|
- $d_H(c,c')=\sum_{i=1}^n [c_i\neq c'_i]$.
|
||||||
|
|
||||||
|
Minimum hamminng distance:
|
||||||
|
|
||||||
|
- Let $\mathcal{C}$ be a code.
|
||||||
|
- $d_H(\mathcal{C})=\min_{c_1,c_2\in \mathcal{C},c_1\neq c_2}d_H(c_1,c_2)$.
|
||||||
|
|
||||||
|
Hamming distance is a metric.
|
||||||
|
|
||||||
|
- $d_H(x,y)\geq 0$ equal iff $x=y$.
|
||||||
|
- $d_H(x,y)=d_H(y,x)$
|
||||||
|
- Triangle inequality: $d_H(x,y)\leq d_H(x,z)+d_H(z,y)$
|
||||||
|
|
||||||
|
### Level of error handling
|
||||||
|
|
||||||
|
error detection
|
||||||
|
|
||||||
|
erasure correction
|
||||||
|
|
||||||
|
error correction
|
||||||
|
|
||||||
|
Erasure: replacement of an entry by $*\not\in F$.
|
||||||
|
|
||||||
|
Error: substitution of one entry by a different one.
|
||||||
|
|
||||||
|
Example: If $d_H(\mathcal{C})=d$.
|
||||||
|
|
||||||
|
#### Error detection
|
||||||
|
|
||||||
|
Theorem: If $d_H(\mathcal{C})=d$, then there exists $f:F^n\to \mathcal{C}\cap \{\text{"error detected"}\}$. that detects every patter of $\leq d-1$ errors correctly.
|
||||||
|
|
||||||
|
\* track lost *\
|
||||||
|
|
||||||
|
Idea:
|
||||||
|
|
||||||
|
Since $d_H(\mathcal{C})=d$, one needs $\geq d$ errors to cause "confusion$.
|
||||||
|
|
||||||
|
#### Erasure correction
|
||||||
|
|
||||||
|
Theorem: If $d_H(\mathcal{C})=d$, then there exists $f:\{F^n\cup \{*\}\}\to \mathcal{C}\cap \{\text{"failed"}\}$. that recovers every patter of at most $d-1$ erasures.
|
||||||
|
|
||||||
|
Idea:
|
||||||
|
|
||||||
|
\* track lost *\
|
||||||
|
|
||||||
|
#### Error correction
|
||||||
|
|
||||||
|
Define the Hamming ball of radius $r$ centered at $c$ as:
|
||||||
|
|
||||||
|
$$
|
||||||
|
B_H(c,r)=\{y\in F^n:d_H(c,y)\leq r\}
|
||||||
|
$$
|
||||||
|
|
||||||
|
Theorem: If $d_H(\mathcal{C})\geq d$, then there exists $f:F^n\to \mathcal{C}$ that corrects every pattern of at most $\lfloor \frac{d-1}{2}\rfloor$ errors.
|
||||||
|
|
||||||
|
Ideas:
|
||||||
|
|
||||||
|
The ball $\{B_H(c,\lfloor \frac{d-1}{2}\rfloor)|c\in \mathcal{C}\}$ are disjoint.
|
||||||
|
|
||||||
|
Use closest neighbor decoding, use triangle inequality.
|
||||||
|
|
||||||
|
## Intro to linear codes
|
||||||
|
|
||||||
|
Summary: a code of minimum hamming distance $d$ can
|
||||||
|
|
||||||
|
- detect $\leq d-1$ errors.
|
||||||
|
- correct $\leq d-1$ erasures.
|
||||||
|
- Correct $\leq \lfloor \frac{d-1}{2}\rfloor$ errors.
|
||||||
|
|
||||||
|
Problems:
|
||||||
|
|
||||||
|
- How to construct good codes, $k/n$ and $d$ large?
|
||||||
|
- How good can these codes possibly be?
|
||||||
|
- How to encode?
|
||||||
|
- How to decode with noisy channel
|
||||||
|
|
||||||
|
Tools
|
||||||
|
|
||||||
|
- Linear algebra over finite fields.
|
||||||
|
|
||||||
|
### Linear codes
|
||||||
|
|
||||||
|
Consider $F^n$ as a vector space, and let $\mathcal{C}\subseteq F^n$ be a subspace.
|
||||||
|
|
||||||
|
$F,\Phi$ are finites, we use finite fields (algebraic objects that "immitate" $\mathbb{R}^n$, $\mathbb{C}^n$).
|
||||||
|
|
||||||
|
Formally, satisfy the field axioms.
|
||||||
|
|
||||||
|
Next Lectures:
|
||||||
|
|
||||||
|
- Field axioms
|
||||||
|
- Prime fields ($\mathbb{F}_p$)
|
||||||
|
- Field extensions (e.g. $\mathbb{F}_{p^t}$)
|
||||||
|
|
||||||
@@ -4,4 +4,5 @@ export default {
|
|||||||
type: 'separator'
|
type: 'separator'
|
||||||
},
|
},
|
||||||
CSE5313_L1: "CSE5313 Coding and information theory for data science (Lecture 1)",
|
CSE5313_L1: "CSE5313 Coding and information theory for data science (Lecture 1)",
|
||||||
|
CSE5313_L2: "CSE5313 Coding and information theory for data science (Lecture 2)",
|
||||||
}
|
}
|
||||||
0
content/CSE5519/CSE5519_L2.md
Normal file
0
content/CSE5519/CSE5519_L2.md
Normal file
@@ -4,4 +4,5 @@ export default {
|
|||||||
type: 'separator'
|
type: 'separator'
|
||||||
},
|
},
|
||||||
CSE5519_L1: "CSE5519 Advances in Computer Vision (Lecture 1)",
|
CSE5519_L1: "CSE5519 Advances in Computer Vision (Lecture 1)",
|
||||||
|
CSE5519_L2: "CSE5519 Advances in Computer Vision (Lecture 2)",
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user