---
# System prepended metadata

title: ML(Hung-yi Lee)_Lecture06. Self-Supervised Learning
tags: [Machine Learning]

---

###### tags: `Machine Learning`
# ML(Hung-yi Lee)_Lecture06. Self-Supervised Learning
## self-supervised
在沒有label的情況下自己想辦法做supervise
![](https://i.imgur.com/A3CgksH.png)
可以視做unsupervised learning
### Bert series
填空題
#### masking input
* 輸入一排向量輸出同樣長度的向量
* Bert最早用在文字上
* 隨機蓋住文字中的一個字
![](https://i.imgur.com/ocoPOEl.png)
#### Next Sentence Prediction
![](https://i.imgur.com/StlABIY.png)
只判斷[CLS]裡的結果，output為y/n （y代表s1和s2相接），但對Bert接下來要做的事情幫助不大
* **sentence order prediction** (SOP)
	把兩個句子各自排列(s1s2、s2s1)給Bert看哪一種才對，被使用在ALBERT上
$\rightarrow$Bert學會做填空題運用在其他事情上**Downstream tasks**
* Bert分化成各種任務稱之為**fine-tune**
* 在fine-tune之前產生Bert的過程稱之為**Pre-train**
	self-supervised learning
* 測試self-supervised model的能力：把Bert分化成多個任務去測試能力（**GLUE**）

#### 使用Bert的情境
1. sentiment analysis
input:sequence output:class
2. pos taggin詞性標住
input:sequence output:same as input
3. NLI 自然語言處理
input:two sequences output: a class
給定前提&假設，機器要判斷是否contradiction
4. Extraction-baesd Question Answering(QA)
input:document&query output:two integers(s,e) $\rightarrow$s,e表示文章中的第s個字到第e個字為解答
#### pre-training a seq2seq2 model
對encoder的輸入做一些擾動(corrupted)
decoder要還原弄壞的結果
![](https://i.imgur.com/e516GmL.png)
#### why does Bert work
* ex. 計算不同"果"之間的cosine similarity
從上下文中抽取資訊去預測
![](https://i.imgur.com/LmxtTyf.png)
#### Multi-lingual BERT
* 拿各種語言去做填空題
* 應用：拿各種語言來做fine-tune，pre-train是對英文做QA訓練，但卻可以應用在中文QA上
### GPT series
預測接下來會出現的token
* few-shot learning
給定數個例子讓GPT可以做翻譯，看幾個例子GPT就知道要做什麼
* one-shot learning
* zero-shot learning
正確率很低

## Auto-encoder
不需要label data
![](https://i.imgur.com/RigGobU.png)
希望encoder的輸入和decoder的輸出愈接近愈好，不需要label，只需要大量圖片就可以做到
* 透過高維度image透過encoder壓縮成較低維度$\rightarrow$**dimnesion reduction**

### why auto-encoder?
把圖片壓縮再還原回來
* how to reconstruct?
找出有限的變化來簡化複雜的image
#### **De-noising**
encoder看到有加雜訊的照片decoder還原成沒有雜訊的
#### Feature disentangle
假設Encoder輸入100維向量，前50維代表說話內容後50維代表說話者特徵
* 可以知道auto-encoder內每一個維度的資訊內容
* 應用：Voice conversion語意轉換（柯南的變聲器）

#### Discrete Representation
在完全沒有label的情況下讓機器自動分類
* text as representation 
seq2seq2seq：長的seq轉成短的seq再轉成長的seq

#### application
* 可以把decoder視做一個generator(吃進去一個向量產生一個圖片)
* decoder:lossy的解壓縮（會失真）
* 異常檢測Anomaly Detection$\rightarrow$**one class分類問題**  使用auto-encoder
	* 輸入此類別的照片透過decoder還原，計算input和output的相差有多大，若差異很小代表
![](https://i.imgur.com/qqloY7t.png)
