nbswords

@nbswords

Stay hungry, Stay foolish. http://blog.nbswords.com/ https://github.com/nbswords https://www.linkedin.com/in/nbswords/

Prime membership

Joined on Jan 8, 2018

  • Discovering novel algorithms with AlphaTensor Introduction 之前做出 AlphaGo, AlphaZero 等專案的 DeepMind 之最新力作 (2022-10-05),用 RL 來找到比現有方法更有效率的矩陣相乘做法 AlphaTensor 為 AlphaZero 的延伸,AlphaZero 是個完全沒有訓練過的神經網路,它透過與自己對戰來進行強化學習,而 AlphaTensor 一開始也沒有被灌輸任何既有的矩陣乘法演算法,而是藉由自我學習來重新發現了歷史上的各種快速矩陣演算法,包括知名的 Strassen,最後它超越了人類,找到比現今SOTA更快的演算法。 這有什麼厲害的? 矩陣相乘 (GEMM) // GEMM, A:MxK * B:KxN
     Like  Bookmark
  • Intro 背景敘述 CNN這幾年能成長得這麼快是由於它多層的非線性hidden layer結構,其中包含幾百萬的參數並能利用其學習input/output之間的關係, 不過當只有有限training data的時候(像是FGVC), 就會常常發生overfitting 導致其表現下降 Dropout在許多解決overfitting的方法中脫穎而出 , AlexNet, VGG, Inception等都有使用Dropout將前一層的輸出攤平成一維vector並且將下一層的幾個neuron隨機設為0 在大部分case中, Dropout是被用在限制CNN中的FCL而不適合用在Conv . 其中一個主要原因是Dropout是在每個neuron上做操作, 而在Conv之中每一個channel是由多重的neurons作為基本單元所組成的, 而每一個neuron都對應一個特定樣式的input image WCD敘述與來源 本篇論文提出一個新穎的技巧去正規化一疊Conv (FCL的前一層) , 而這個conv它的channels是從下一層隨機選出的 這篇論文的另一個啟發是從對CNN中一疊Conv的觀察而來. <br> 所有在前一層產生的channel在下一層都得到平等的對待. 但這就衍伸出了一個問題, 也就是說這些特質可能不是那些擁有最佳特性的features. <br> 對每一個input image來說,只有少量在高層的channels被激發,同時, 其他channel的一些neurons respones都靠近0 因此,Instead of totally random selection, 我們根據激活的相對程度來選擇channels. 這個方法可被當成一個去model channels之間的相互依存關係的方法
     Like  Bookmark
  • Paper Link Intro DNN Model最近在Object detection和Speech recognition都獲得很棒的結果, 但DNN之所以強大是因為這些模型都可以利用平行運算讓整個訓練過程有效率地進行。 若能有一個能map seq2seq的Domain-indepentent方法會很有用, 因為大部分的問題的input和output都不是fixed的而且unknownex:機器翻譯和語音辨識還有QA 這篇裡面利用一個LSTM來讀input sequence (當Encoder) 再用另一個LSTM來提取這些Sequence (當Decoder) 第二個LSTM基本上是一個RNN的LM LSTM一個有用的特性是可以將variable的input sentence map成一個fixed-dimensional的vector representation,而這正能解決最近的困境
     Like  Bookmark
  • paper link Intro 主要的挑戰有三個 : Scale, Freshness, Noise Scale : 需要非常大規模的分散是訓練以及 serving 才能處理他們的 scale,這是許多現有的推薦系統無法處理的 Freshness : 由於每一秒都有大量的內容被上傳到 YouTube,系統必須能反應得足夠快速去處理這些新內容,並且在新內容和現存已有的優質內容之間做平衡 ( exploration/exploitation ) Noise : 使用者的歷史資料不僅 sparse 且受到許多外部因子的影響,幾乎很難直接拿到 groud truth of user satisfaction,反而是必須從 implicit feedback 中擷取出來,另外影片的 metadata 也需要做一些處理才能用 SYSTEM OVERVIEW 整個系統由 1. candidate generation 和 2. ranking 所組成
     Like  Bookmark
  • blog link Why? 雖然現在推薦系統中各個模型都使用統一資料來源,但還是各自獨立訓練,在某個模型中的創新很難套用到另一個模型上面 這些模型由於獨立運作的關係,各自受限於各自的延遲,只能使用較短的 time window 來做推論 所以他們希望能做一個共用的基礎模型,能從所有user的互動歷史和其他內容中提取特徵然後分發特徵給這些模型使用,不論是拿來 share weight fine tune 或是直接給 embedding 最後,也是因為最近由NLP->LLM上的典範轉移,使得模型趨勢從多個小型模型轉向為單一大型模型,並透過 fine tune 來適用在不同任務上 (1. 由 model-centric → data-centric 2. LLM 可以使用未標記的資料做大規模的半監督學習,以 Next Token Prediction 來展示他對資料的深刻理解) Data Netflix 資料雖然多 (3億user, 數千億次互動),但資料品質>資料數量,為此他們使用互動標記化來識別哪些事件是有意義的
     Like  Bookmark
  • paper link code Intro 本作是由何愷明的團隊在2024年6月發布並入選NIPS 2024 當前的自迴歸圖片生成模型常使用Vector Quantization(VQ)將圖片離散化成一個個token來模擬自迴歸模型在NLP領域上的成功,但作者認為這種離散值空間對於自迴歸圖片生成模型並不是必要的,因此提出一種基於連續空間的自迴歸圖片生成模型,兼具更高的準度以及快速的推論時間。 以下先稍微介紹一下相關的背景知識 Vector Quantization (VQ)
     Like  Bookmark
  • 這個主題的目的在於如何快速從龐大的高維特徵空間查找到與 query vector 最相似的 ID。 特徵降維 (PCA, LDA)、最近鄰居演算法(KD-Tree, LSH, Product/Vector quant)、分層辨識 (利用年齡、性別等顯性特徵分層儲存特徵) 都是常見的方法 KD-Tree 常見的 tree-based search algo,是這個領域的經典演算法。他透過不斷地找出變異數最大的維度來將整個特徵空間用一個超平面分割成兩塊來使得特徵空間變成一個二元樹,每一個特徵空間的點都對應到二元樹中的節點,以此來搜尋到 nearest point。但是,K-D tree 在高維度的線性搜尋的時候效率就會變差,因為高維空間的資料分布非常稀疏會導致搜尋的準度下降很多。現在已經不太會用這個方法來做了。 截圖 2023-03-29 上午11.57.27 1 Quantization
     Like  Bookmark
  • paper link code Intro 由OpenAI於2022年12月開源的多語語音辨識模型,從 Open ASR leaderboard來看,由於其支援高達50種以上的語言,在除了英文以及一些歐洲語言以外的領域中,whisper即使放到2025年仍是能力最強的模型,可見語料匱乏對於ASR領域的發展受限有多大 實驗出ASR模型在訓練到680,000個小時的多語言、多任務語音資料之後就會湧現出Zero-shot的能力 有許多衍生的開源應用,如faster-whisper-GUI、Whisper Desktop、Mac Whisper等等,使其成為現今最廣為使用的ASR應用 模型版本 螢幕擷取畫面 2025-05-16 143026
     Like  Bookmark
  • paper link references Intro 主要應用在 Google play 的 app 推薦系統上 希望解決推薦系統的無法兼得 memorization 和 generalization 的問題Memorization 指的是能從歷史資料中找出常常一起出現的item或是feature有哪些,並利用這些關係來做推薦 (推薦跟使用者看過的東西有關係的) Generalization 指的是根據這些歷史資料的特徵來推薦使用者他從未或者很少看過的那些新的特徵組合 (從使用者的歷史資料來推測他會喜歡甚麼沒看過的) Logistic Regression 因為簡單、易擴展以及可解釋性而常被推薦系統所使用
     Like  Bookmark
  • 這是一篇 2022/10/17 發表的論文,來自 Meta,而這篇方法之簡潔確實是非常驚喜 paper link Intro 目標是透過在 ViT 中增加一個 module 來融合冗余(redundant) 的 token,好增加 training / inference throughput融合 Token 並不是什麼新提出的 trick,例如 Token Pooling, 2021 就也是在做類似的事情 宣稱不論是否有加進去重新訓練都可以運作,非常之神奇,也是這一特點讓我選擇這篇來報 目前提升 transformers 效率的領域有 Efficient transformer, Token Reduction, Combine Token,但都沒有提出可以不需要訓練就獲得提升的方法,而且這些方法不僅又耗費資源又慢又缺乏泛化性
     Like  Bookmark
  • paper link timm code Intro V3 之後過了5年,V4 終於橫空出世,一樣由 Google 的團隊發表,試圖 make MobileNet great again 這篇的主要目的是在任何 CPU, DSP, GPU上都能獲得最佳的表現,包含 Apple Neural Engine 以及 Google 自己的 Pixel EdgeTPU,這篇論文的成果最後是應用在 Pixel 8 上面 主要的組件有 1. UIB (Universal Inverted Bottleneck) 2. MobileMQA 3. 老招 NAS 螢幕擷取畫面 2024-09-12 003856
     Like  Bookmark
  • 什麼是GPT? GPT (Generative Pre-trained Transformer) 是一個生成式的預訓練語言模型,能夠 fine-tune 到很多種如文章生成、程式生成以及機器翻譯或是問答等等常見的 NLP 任務之上 他最大的特點就是大,有多大呢,號稱全世界最大的語言模型,今年聽說會出 GPT-4可以發現從 GPT-3 開始超乎人類想像了,原來這就是鈔能力 1_C-KNWQC_wXh-Q2wc6VPK1g 螢幕擷取畫面_2022-05-26_012439 這次不是芝麻街美語的角色了,那為什麼是獨角獸? 在 OpenAI 的 GPT-2 blog 中展示了一個例子,他給模型一段人類寫的文章,而 GPT-2 在閱讀完之後就開始自己產生了下面那一堆文章,使得文章本來只是在說科學家在安地斯山發現會說英文的獨角獸變成把整個發現獨角獸的過程都詳細寫了出來。這就是一本正經的瞎掰。 1653557777705 之後只要看到安地斯山上面有一堆獨角獸,那就是在說 GPT 模型Dzak2U-VYAA1b3J
     Like  Bookmark
  • Intro ViT從出現以來一直有很笨重的特性,在實務上難以放在移動裝置上輕鬆運行,那麼我們是否能夠結合 CNN 和 ViT 來建立一個輕量型網路呢? MobileViT 這個系列的作法就是將 ViT 融入進去 MobileNetV2,做出輕量化的 ViT 模型,而 V2 則是提出可分離式 Self-attention 進一步將計算輕量化 Apple 於2021年發表了 MobileViT (ICLR2022).宣稱可以用比 MobileNetV3 更低的參數量達到更高的準確度,之後同一批人在 2022年6月發布 MobileViT v2,而後於 2022年10月普渡大學+美光也發布了 MobileViT v3,但 v3 沒有 timm 支援且並不是 Apple 原班人馬發的所以這裡先不講 timm links MobileViT v1 paper link ViT-B/16 vs MobileNetv3的參數量 86 vs 7.5 millions parameters 本篇目標在於做出 1.) light-weight 2.) general-purpose 3.) low latency 的 ViT 模型
     Like 1 Bookmark
  • Paper Link Intro 近年來序列模型的Sota方法都是RNN,LSTM,GRU等模型 即使在引入Attention機制做Seq2Seq之後, 仍然是以RNN,CNN作為Encoder/Decoder來建造模型Visualize Seq2Seq with Attention 但這種模型一直因為RNN的序列結構而使訓練速度受限, 即使之後有許多論文嘗試解決, 問題仍然存在 Attention機制在此之前都是和RNN之類的模型一起使用 , 從未有一個模型只有Attention
     Like  Bookmark
  • ML 需要許多算距離的方法來計算不同資料之間的關係,例如計算兩個機率分布之間的"距離",此篇整理了我所知的所有與機器學習相關的距離算法 衡量兩點距離 Euclidean Distance 定義:兩個點在歐式空間的距離 一維: ${d(p,q)={\sqrt {(p-q)^{2}}}}$ 二維:
     Like 3 Bookmark
  • Techniques for Dimensionality Reduction 分三種 Feature Elimination and Extraction Linear Algebra Manifold (流形學習) 1. Feature extraction and elimination Missing values ratio 缺失值比例
     Like  Bookmark
  • First rule in Google’s 43 Rules of Machine Learning: Don’t be afraid to launch a product without machine learning. Challenges Unclear technical feasibility很難去評估一個AI系統實際運作的時候會發生甚麼問題 EX : 很多公司都說他們的自駕車可信,但最終都會出現問題 Complex product specification 難以確切的描述出在各種不同狀況下的可接受錯誤有多少,也難以去為一個AI系統寫出一個spec,因為可能造成錯誤的事件類型太多了
     Like 1 Bookmark
  • Based on basic image manipulations 每一個 data augmentation 方法都應該考慮到其 safety 舉例來說,若是在辨識ImageNet的圖片,就可以使用 rotation 或是 flip,但若是 Cifar 的手寫圖片辨識就不行,會造成 no safety Geometric transformations 針對圖片的位置做操作 適合處理 positional bias,比如人臉辨識 包含 flipping, Cropping, Scaling, Rotation, Translation, Noise injection
     Like  Bookmark
  • v1 paper v2 paper on ICCV17 youtube Why Deformable Conv ? Associated with Anchor-free object detection Reppointv1 actually is DCNv3
     Like  Bookmark
  • Paper Link Problems of anchor-based objection detection anchor-based object detection 有以下幾個問題: detection performance 與 anchor 大小、比例和數量有很大關係(sensitive) 因為 anchor 的大小與比例都是固定的,detector 較難處理有較大 shape variation 的物件,尤其在小物件上 為了 high recall rate,anchor-based method 會放非常多的 anchor 在圖片的每個區域 有多多? more than 180K anchor boxes in feature pyramid networks (FPN) for an image with its shorter side being 800
     Like  Bookmark