3 điểm bởi GN⁺ 2025-02-27 | 1 bình luận | Chia sẻ qua WhatsApp
  • Cơ chế Self-Attention hiện có có độ phức tạp O(n²), nên khả năng mở rộng cho các chuỗi dài bị hạn chế
  • Bài báo này đề xuất FFTNet sử dụng Fast Fourier Transform (FFT)
  • FFTNet thực hiện trộn token toàn cục với độ phức tạp thời gian O(n log n)
  • Mô hình giới thiệu bộ lọc phổ có thể học trong miền tần số và hàm kích hoạt modReLU để nhấn mạnh các thành phần tần số quan trọng
  • Trong các thí nghiệm benchmark Long Range Arena (LRA) và ImageNet, mô hình cho thấy hiệu năng vượt trội hơn Self-Attention truyền thống và các mô hình Fourier biến đổi cố định

Nghiên cứu liên quan

  • Độ phức tạp của Self-Attention: Các mô hình Transformer cần lượng tính toán O(n²), nên kém hiệu quả khi xử lý chuỗi dài
  • Cách tiếp cận dựa trên Fourier: Các mô hình như FNet sử dụng biến đổi Fourier cố định để giảm chi phí tính toán, nhưng thiếu khả năng thích ứng với đầu vào
  • Kỹ thuật xấp xỉ tuyến tính, thưa và hạ chiều: Các nghiên cứu như Performer, Linformer, BigBird đề xuất các cách xấp xỉ phép tính của Self-Attention
  • Kỹ thuật phân rã ma trận trực giao: Việc sử dụng biến đổi trực giao (bao gồm DFT) giúp cải thiện độ ổn định khi huấn luyện mô hình
  • Lọc phổ thích ứng: Việc thêm bộ lọc có thể học vào biến đổi dựa trên FFT giúp phương pháp này linh hoạt hơn và có năng lực biểu diễn cao hơn so với các cách làm trước đây

FFTNet: Kỹ thuật lọc phổ thích ứng

Động cơ

  • Self-Attention có độ phức tạp O(n²) và kém hiệu quả với chuỗi dài
  • FFT hoạt động với độ phức tạp O(n log n) và có thể mã hóa hiệu quả các tương tác toàn cục

Phương pháp

  • Biến đổi Fourier (áp dụng FFT)
    • Chuyển chuỗi đầu vào sang miền tần số để nắm bắt phụ thuộc toàn cục một cách hiệu quả
  • Áp dụng bộ lọc phổ thích ứng
    • Sử dụng vector ngữ cảnh toàn cục để tạo bộ lọc có thể học, từ đó nhấn mạnh động các dải tần quan trọng
  • Kích hoạt phi tuyến modReLU
    • Áp dụng kích hoạt dựa trên ReLU trong miền tần số phức để tăng năng lực biểu diễn
  • Biến đổi Fourier ngược (IFFT)
    • Sau khi áp dụng lọc và kích hoạt lên dữ liệu đã biến đổi, mô hình chuyển dữ liệu trở lại miền thời gian

Cơ sở lý thuyết của FFTNet

  • Có thể thực hiện trộn token toàn cục với chi phí tính toán O(n log n)
  • Attention thích ứng: Bộ lọc có thể học trong miền tần số điều chỉnh tần số theo đầu vào được cung cấp
  • Tăng cường năng lực biểu diễn của kích hoạt phi tuyến: Việc áp dụng modReLU cho phép học các mẫu bậc cao vượt ra ngoài biến đổi tuyến tính đơn giản
  • Đảm bảo ổn định dựa trên định lý Parseval: Bảo toàn năng lượng của tín hiệu để giảm thiểu mất mát thông tin

Kết quả thực nghiệm

Benchmark Long Range Arena (LRA)

  • FFTNet ghi nhận độ chính xác nhìn chung cao hơn Transformer và FNet
  • Đặc biệt, mô hình cho kết quả tốt hơn trên các tác vụ ListOps, Text, Retrieval, Image, Pathfinder và đạt điểm trung bình cao nhất
  • Transformer cho hiệu năng cao ở một số tác vụ, nhưng có giới hạn trong việc xử lý phụ thuộc dài hạn
  • FNet cũng sử dụng FFT, nhưng do cơ chế biến đổi cố định thiếu tính thích ứng nên nhìn chung cho hiệu năng thấp hơn
  • Đặc biệt, ở tác vụ Path-X, Transformer thất bại do vượt bộ nhớ (OOM), trong khi FFTNet cho hiệu năng ổn định

Thí nghiệm phân loại ImageNet

  • Vision Transformer dựa trên FFTNet (FFTNetViT) duy trì độ chính xác tương đương ViT truyền thống trong khi giảm đáng kể lượng tính toán (FLOPs)
  • Với mô hình Base, FFTNetViT sử dụng ít FLOPs hơn khoảng 38% so với ViT nhưng độ chính xác vẫn tăng nhẹ
  • Ở các mô hình Large và Huge, FFTNetViT cũng duy trì hiệu năng tương đương ViT với chi phí tính toán thấp hơn
  • Điều này cho thấy FFTNetViT mang lại hiệu quả tính toán cao

Nghiên cứu ablation (phân tích tầm quan trọng của từng thành phần)

  • Nghiên cứu phân tích ảnh hưởng đến hiệu năng của mô hình khi loại bỏ các thành phần khác nhau của FFTNet
  • Khi loại bỏ các thành phần chính của FFTNet, độ chính xác có xu hướng giảm
    • Loại bỏ spectral gating: Chức năng nhấn mạnh các tần số cụ thể biến mất, khiến độ chính xác giảm nhẹ
    • Loại bỏ mô-đun thích ứng: Chức năng điều chỉnh bộ lọc động theo đầu vào không còn, làm độ chính xác giảm thêm
    • Dùng tích chập thay cho FFT: Khả năng trộn hiệu quả thông tin toàn cục biến mất, dẫn đến mức suy giảm hiệu năng lớn nhất
  • Qua đó có thể xác nhận rằng mỗi thành phần của FFTNet đều đóng vai trò quan trọng trong việc cải thiện hiệu năng

Kết luận

  • FFTNet là một phương án thay thế có hiệu quả tính toán vượt trội so với Self-Attention
  • Việc kết hợp bộ lọc phổ thích ứng và modReLU trong miền tần số mang lại năng lực biểu diễn mạnh mẽ
  • Kết quả thực nghiệm cho thấy hiệu năng và hiệu quả vượt trội hơn các mô hình Self-Attention hiện có trên LRA và ImageNet
  • Duy trì độ phức tạp O(n log n) nhưng vẫn cung cấp hiệu năng ở mức Self-Attention, nên phù hợp cho xử lý chuỗi dài
  • Vision Transformer dựa trên FFTNet (FFTNetViT) cũng đạt hiệu năng tương đương ViT với FLOPs thấp hơn

1 bình luận

 
GN⁺ 2025-02-27
Ý kiến trên Hacker News
  • Về cơ bản là tận dụng định lý tích chập: phép tích chập đắt đỏ trong không gian trực tiếp trở thành phép nhân đơn giản trong không gian đối ngẫu

    • Khi dữ liệu có phép tích chập, ta biến đổi nó sang miền liên hợp để chuyển phép đó thành phép nhân
    • Tức là làm việc trên dữ liệu trong miền tự nhiên của nó
  • Google đã giới thiệu ý tưởng "FNet: Mixing Tokens with Fourier Transforms" vào năm 2022

    • Sau đó họ phát hiện TPU của họ trong hầu hết các kịch bản lại chạy phép nhân ma trận nhanh hơn FFT
  • Biến đổi Fourier được thực hiện trên chiều "token". Nhưng trong nhiều ứng dụng, chiều này không có nhiều ý nghĩa

    • Vì vậy các kiến trúc kiểu transformer là một lựa chọn rất tốt để xử lý dữ liệu bất biến theo hoán vị
    • Muốn xem thêm các thử nghiệm dùng biến đổi Fourier trên những nhóm hữu hạn ít được biết đến hơn
    • Nếu đây trở thành xu hướng lớn tiếp theo của LLMs, không rõ các engine suy luận như vLLM, llama.cpp... sẽ tích hợp nó dễ đến mức nào
  • Phần toán quá khó nên rất khó hiểu. Không biết có ai có thể giải thích bằng tiếng Anh đơn giản xem nó tương đương với cơ chế attention như thế nào, đang nói đến những tần số nào, và cách nó mã hóa quan hệ vị trí giữa các token ra sao không

  • Không rõ làm sao có thể áp dụng causal masking vào framework này. Cũng không thấy nhắc đến positional embedding, nên có vẻ phần self-attention được đem ra so sánh là NoPE phi nhân quả

    • Nếu kết quả thật sự gần mức state-of-the-art thì có lẽ tác giả đã nhắc đến rồi
  • Không thấy nhắc đến Hyena Operator, thứ đã trình diễn việc trộn toàn bộ ngữ cảnh với độ phức tạp O(n log n) từ vài năm trước

  • Trong thời đại telemetry, tôi nghĩ không áp dụng FFT cho cloud telemetry để phát hiện các epicycle và hệ thống bán ổn định trước khi chúng gây ra sự cố là một sai lầm lớn

    • "SLA có khả năng bị vi phạm cao nhất vào khoảng 23-25 phút sau khi triển khai dịch vụ. Tò mò không biết tại sao... à không."
  • Không biết có ai có trực giác tốt về việc vì sao nhìn mọi thứ trong miền tần số lại hữu ích không

    • Tôi hiểu thành phần DC, nhưng không kỳ vọng dữ liệu đầu vào lại có tính tuần hoàn đến mức các tần số khác trở nên có ý nghĩa
  • Tôi hiểu phần nào ký pháp Big O, nhưng cũng như đa số thứ liên quan đến máy tính hay kỹ thuật điện, cái này vẫn rất khó nắm bắt

    • Là người rất yếu toán, tôi khá ghen tị với những ai có thể hiểu hoặc học được những thứ như thế này
    • Điều tôi biết về FFT là nó biến đổi tín hiệu, được dùng trong một số bài toán xử lý tín hiệu, và từng đóng vai trò quan trọng trong việc phát hiện các vụ nổ hạt nhân trong quá khứ
  • Tôi không hiểu vì sao attention lại cần thiết. Một lớp fully connected cũng có thể "chú ý" đến mọi đầu vào

    • Với các tập dữ liệu rất nhỏ (0 - 500 token), attention làm việc huấn luyện lâu hơn và cho kết quả tệ hơn
    • Có vẻ lợi ích chỉ xuất hiện với tập dữ liệu lớn hơn
    • Tôi là người mới học AI và đang làm một dự án AI cá nhân, nên đây không phải là tham khảo thật sự chính xác