Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Reformer

Откройте для себя модель Reformer: революционную архитектуру Transformer, оптимизированную для длинных последовательностей с LSH-вниманием и обратимыми слоями.

Reformer — это высокоэффективная эволюция стандартной архитектуры Transformer, специально разработанная для обработки чрезвычайно длинных последовательностей данных с минимальным потреблением памяти. Представленный Google в 2020 году, Reformer решает критическую проблему традиционных Transformer: квадратичную стоимость механизма внимания. В то время как стандартные модели с трудом обрабатывают длинные документы или изображения с высоким разрешением, поскольку их потребление памяти резко возрастает с увеличением длины последовательности, Reformer использует новые технологии, чтобы снизить эту сложность до почти линейного уровня. Этот прорыв позволяет моделям глубокого обучения анализировать контексты, охватывающие до миллиона токенов на одном графическом процессореGPU ), открывая новые возможности для задач, требующих сохранения обширного контекста.

Ключевые инновации в области эффективности

Reformer достигает своей замечательной производительности благодаря двум основным техническим инновациям, которые коренным образом меняют способ хранения и обработки информации во время обучения модели.

  • Локально-чувствительное хеширование (LSH) Внимание:в стандартном трансформере каждый токен (слово или пиксель) должен обращать внимание на все остальные токены, вычисляя огромную матрицу взаимосвязей. Reformer заменяет этот исчерпывающий поиск на LSH, технику, которая группирует подобные векторы в «корзины». Вместо проверки всех возможных связей, модель вычисляет внимание только внутри этих локальных корзин. Это приближение является высокоточным, но вычислительно гораздо более дешевым, что позволяет нейронной сети сосредоточиться на релевантной информации, не тратя ресурсы на несвязанные точки данных.
  • Обратимые остаточные слои:глубокие сети обычно должны хранить активность каждого слоя в памяти для вычисления градиентов во время обратного распространения. По мере углубления сетей требования к памяти быстро растут. Reformer использует обратимые слои (RevNets), которые позволяют пересчитывать активации любого слоя на основе вывода следующего слоя. Это означает, что модели не нужно хранить промежуточные состояния для всей истории сети, что значительно сокращает нагрузку на память и позволяет обучать гораздо более глубокие архитектуры.

Применение в реальном мире

Благодаря способности обрабатывать длинные контексты, Reformer особенно полезен в областях, где отношения между удаленными точками данных имеют решающее значение.

  1. Анализ геномной последовательности:цепи ДНК чрезвычайно длинные и часто содержат миллионы пар оснований. Традиционные модели, такие как BERT, не могут обрабатывать всю последовательность генов за один раз, теряя контекст того, как отдаленные генные маркеры влияют друг на друга. Реформатор Reformer может обрабатывать эти огромные последовательности за один проход, помогая исследователям идентифицировать функции генов и предсказывать структуры белков с большей точностью. Эта способность имеет жизненно важное значение для продвижения ИИ в здравоохранении и открытии лекарств.
  2. Создание длинных документов:для написания связных рассказов или составления резюме целых книг требуется модель, способная запоминать детали с начала текста при создании его конца. Стандартные языковые модели часто страдают «амнезией» на больших расстояниях. Reformer обеспечивает надежное составление резюме и создание длинных юридических контрактов, технических руководств или романов, сохраняя повествовательную связность гораздо лучше, чем рекуррентные нейронные сети (RNN).

Отличие от смежных терминов

Полезно отличать Reformer от других архитектур, ориентированных на эффективность.

  • Reformer vs. Longformer: обе модели направлены на решение проблемы длинных последовательностей. Longformer использует модель внимания со скользящим окном (локальный контекст) в сочетании с глобальным вниманием к конкретным токенам. Reformer, однако, использует сортировку на основе хеширования (LSH) для динамического поиска релевантных токенов в любой точке последовательности.
  • Reformer против YOLO26: в то время как Reformer оптимизирует память для длинных последовательностей (текст, аудио, геномные данные), YOLO26 — это модель обнаружения объектов, оптимизированная для скорости и точности в компьютерном зрении. Reformer обрабатывает последовательные зависимости, а YOLO26 — пространственные особенности изображений.

Обработка длинных последовательностей на практике

Хотя Reformer представляет собой конкретную архитектуру, концепция эффективного управления длинными последовательностями является универсальной. При работе с видео, которое по сути представляет собой последовательность изображений, использование эффективной обработки данных имеет решающее значение. Следующий пример показывает, как использовать ultralytics обрабатывать видеопоток кадр за кадром, аналогично тому, как последовательная модель обрабатывает токены, обеспечивая эффективность использования памяти.

import cv2
from ultralytics import YOLO

# Load the YOLO26 model, optimized for efficiency and accuracy
model = YOLO("yolo26n.pt")

# Open a video file (simulating a long data sequence)
video_path = "path/to/long_video.mp4"
cap = cv2.VideoCapture(video_path)

# Process the sequence frame by frame to conserve memory
while cap.isOpened():
    success, frame = cap.read()
    if success:
        # Run inference on the current frame
        results = model(frame)

        # Display the annotated frame
        cv2.imshow("YOLO26 Inference", results[0].plot())

        # Break loop on 'q' key press
        if cv2.waitKey(1) & 0xFF == ord("q"):
            break
    else:
        break

cap.release()
cv2.destroyAllWindows()

Понимание этих механизмов эффективности имеет ключевое значение для разработчиков, которые стремятся внедрить решения искусственного интеллекта на аппаратном обеспечении с ограниченными ресурсами или при работе с огромными массивами данных. Для получения дополнительной информации об оптимизации производительности моделей ознакомьтесь с Ultralytics .

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас