--- title: Lab Meeting Minutes 2024/05/08 tags: lab_meeting --- > Outline > [TOC] --- # PERAL Lab Meeting - 時間:113 年 5 月 8 日 17:00 - 地點:線上 - 線上會議連結 : [Online](https://meet.google.com/zfi-zmnc-qfw) - 出席者:吳坤熹老師、謝萬霖、劉怡君、田蕙瑜(absent)、沈家正、梁宇騰、劉冠伶(absent)、繆亭霄、蘇翊荃、陳嘉璐、陳品妤、陳姿綾、陳姿澖 - 會議主題:[Generative AI]() - 主講者: 繆亭霄 - 主記: 陳嘉璐 ## 會議內容 ## Outline * Introduction * Variational AutoEncoder (VAE) * Generative Adversarial Network (GAN) * Diffusion Model * Metric * Examples * Conclusion ## Introduction - What is generative AI? * Models that are capable of generating new content, such as text, images, music * **Applications**: ChatGPT, MidJourney, Stable Diffusion, Copilot * ![image](https://hackmd.io/_uploads/BJegh2uMA.png) * `z` 可以是直或是向量 * 機器學習就是在找一個 funciton,讓這個 function output 出我們想要的東西。 ### Review - AutoEncoder (AE) ![image](https://hackmd.io/_uploads/SyGM23OzA.png) * encoder 、decoder 都是一個神經網路 ## Why VAE? * For a trained AE, inputting a specific code will generate a determined image * If this latent code comes from an unseen image, then the generated image will not be good ![image](https://hackmd.io/_uploads/rySSn2dfA.png) * latent code 分別為 1、10、5會產生的圖 ### Variational AutoEncoder (VAE) ![image](https://hackmd.io/_uploads/r1AD33dzR.png) ### Generative Adversarial Network (GAN) - Concept ![image](https://hackmd.io/_uploads/HyYt3huzC.png) * generator 會不斷調整騙過 discriminator * discriminator 會不斷調整讓自己不會被 generator騙過 ### GAN - Algorithm * Step 1: Fix Generator, update Discriminator ![image](https://hackmd.io/_uploads/SJY62h_z0.png) * Step 2: Fix Discriminator, update Generator ![image](https://hackmd.io/_uploads/B1EJT3OfR.png) * 越接近零,代表 discriminator 認為這張圖越假 ### GAN - Architecture ![image](https://hackmd.io/_uploads/rJQZa3uGC.png) ## Diffusion Model ### Concept ![image](https://hackmd.io/_uploads/Hy2z63_GC.png) ### Denoise module ![image](https://hackmd.io/_uploads/HyOLp3dGA.png) * Noise Predictor: 這張圖要過濾哪些雜訊會越清楚 ### Noise Predictor ![image](https://hackmd.io/_uploads/Hy7d62_MC.png) * 加完雜訊的圖 + step => input ## Metric - Fréchet Inception Distance (FID) * **Red sample**: fake * **Blue sample**: real * **FID**: Fréchet distance between the two gaussians * Inception Net : 結構很複雜的 CNN * 橘色 layer: 特徵向量 * 算 red group & blue group的 distribution 的距離 ![image](https://hackmd.io/_uploads/B1bhahOMC.png) * FID 缺點: 沒有學到照片特徵,導致原始照片和生成照片一樣,FID無法顯示 ### Example - VAE * **MNIST** * 60000 sets of data * Data size: 28*28 ![image](https://hackmd.io/_uploads/rye1AnOfR.png) * **CIFAR10** * 60000 sets of data * Data size: 32*32 ![image](https://hackmd.io/_uploads/rkP-R3dGC.png) * 變成 3 的 channel 後比起 MNIST 較差(需再調整參數),但CIFAR10比較多圖片集 ### Example - GAN * **AI CUP 2024** * 4320 sets of data * Data size: 428*240 ![image](https://hackmd.io/_uploads/BJ2Q0hOGA.png) ![image](https://hackmd.io/_uploads/H1cBC3OMC.png) * GAN: 需要根據 input (此指 黑色框縣)來生圖片,picture-to-picture 通常會用這樣的分是生圖 ## Conclusion ![image](https://hackmd.io/_uploads/ByZ_Ah_zR.png) --- ## 建議&問題 1. [name=Yukino] P.12 每次 denoise 圖片都會變得更清晰嗎? 如何知道它會越清晰 Ans: [name=] 對,根據 step 2. [name=Selena] p.10 Discriminator 高於幾分它才會覺得夠真 Ans: 0.5 以上,但其實我們會不管它真不真,我們是要根據它的分數來調整參數(目標為 1) [name=Selena] 會不會我給它清晰的貓,但它生產很清晰的狗 Ans: 首先,不會產生很清晰的圖。且你的 distribution 要夠厲害可以分類。 3. [name=Ellie] 不懂為什麼會是 distribution Ans: 把 Gaussian Distribution 的 z 經過 network轉換成 complex Distribution 的sample。z 是一個 random variable,這個用意是讓每次 input (x、y)的不一樣,如此 y 每次對應到的 sample 都不一樣。 Ans: [name=Solomon] ex, x是瞄準點,y 是射到箭靶上的位置,z 是干擾(風、聲音...),每次射箭 z 都會不一樣 5. [name=Ellie] generator 騙過 discriminator 了,他怎麼再更進步 Ans: [name=] 用誤差來訓練(二元分類) 6. [name=Louise] p.7 頁不太理解 Ans: [name=] v : variation 取 log 接下來乘 1/2,e : normal distribution 的 vector 8. [name=Ryan] discriminator 透過什麼 feedback 訓練 Ans: [name=] p.9 0 和 1 都有一個分數,用它的誤差訓練 9. [name=Ryan] 那會不會兩邊都訓練到一個地步之後,對抗變得比較消極 Ans: [name=] 此時就稱為收斂,兩邊都不會進步 [name=Solomon] 微積分中 local optima 10. [name=Miller] P.12 Diffusion Model Ans: [name=] 最終目標是要給一個 sample 然後生成一個想要的圖片 12. [name=Cooper] Is ChatGPT using the techniques you introduced today? Ans: [name=] ChatGPT is using transformer,不在今天討論範圍 [name=Cooper] AI Cup 問題有道路和河流的圖片作為 training data Ans: [name=] 有 RO、RI 分開 train 成兩個不同的 model 14. [name=Phoebe]p. 11 只有在第一輪才要喂 Real Image 嗎? Ans: 每一輪都要。 15. [name=Phoebe] VAE, GAN, Diffusion 有各自比較適用的領域嗎? Ans: VAE 通常不太會用。它很老了,只會在課本上看到。GAN 發展比較常用。Diffusion 則是最近比較紅。 (PS GAN 程式比較好寫,Diffusion 比較不好寫。) Diffusion 在處理影像的效果較好,但將其與 GAN 直接進行比較其實不太合適。任何訓練模型後面都可以加 GAN,可以把 GAN 當一個插件,因此你可以在 Diffusion 後面再加上 GAN。 16. [name=Egar] Gaussian Distribution 是誰提供的?誰決定Distribution 參數 (中心、密度、方向)? [name=Egar] VAE : Gaussian Distribution,在 P.7 圖片哪裡 ANS: [name=] e [name=Egar] GAE : p.11 Gaussian Distribution 哪個部分? ANS: [name=] Noise,Noise 出來的,不一樣的 Noise 對應同一個 Distribution [name=Egar] p.11 為什麼 noise 在 GAN 外面? ANS: [name=] noise 是 z,noise 是 sample 出來的 [name=Egar] p.11 會 input 很多次? ANS: [name=] 不同 sample 的 noise 來 train [name=Egar] p.13 Gaussian Distribution 哪個部分? ANS: [name=] p.13 右邊的 noise 是 Gaussian Distribution 19. [name=Solomon] 國土監測用空拍機,廠商覺得出動空拍機成本太高,希望不要用空拍機,給輪廓用 AI 產生照片給政府? Ans:[name=] 是 21. [name=Solomon] 希望大家可以把握一下上台報告的機會,讓學校的每個活動都有教育意義,不要為了報告而報告,期待碩士班報告的主題:(1)讓這個技術對實驗室的同學有用(2)survey 到哪些東西,接下來預計做什麼,練表達、練 Q&A ## 待追蹤事項 1. [name=Cooper] 因為之前有發現有些網路線不能用,希望調查哪些機器要接網路線,並規劃好拓譜圖,日後大掃除時能來重拉 2. 5/26 跑步,稍後公告在臉書上,再請大家投票(全跑還是跑一半) ## 臨時動議 1. 下周 meeting 改成 Selena 的 paper 報告 --- 散會結束時間: 2024/05/08 18:22