Авторы Сяодан Лян, Чжитин Ху, Хао Чжан, Лян Линь и Эрик Син

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

В некоторых работах сформулированы графические модели и структурные ограничения для прогнозов окончательной свертки (например, CRF), но они не могут явно улучшить представления признаков и поэтому не могут быть широко обобщены. Капсульные сети могут быть расширены для обучения обмену знаниями между местоположениями для поиска кластеров функций, но они могут использовать только неявную и неконтролируемую иерархию функций. Отсутствие явных рассуждений о контекстах и ​​семантике высокого уровня не позволяет свёрточным сетям распознавать объекты в больших словарях понятий, где необходимо исследовать семантические корреляции и ограничения. Тем не менее, структурированные знания действительно помогают записывать человеческие наблюдения и здравый смысл с использованием символических слов (например, существительных или предикатов). Следовательно, мы хотим связать символическую семантику с изученными представлениями локальных функций для лучшего анализа графов.

Используя «здравый смысл»

В нашей статье мы исследуем, как включить человеческий здравый смысл в обучение промежуточному представлению признаков, помимо локальных сверток, для дальнейшего достижения глобальной семантической согласованности. Мы представляем «человеческий здравый смысл» как различные неориентированные графы, состоящие из богатых взаимосвязей (например, семантическая иерархия, пространственные / действия взаимодействия и атрибуты, а также совпадение) между концепциями. Например, понятия «Шетландская овчарка» и «Хаски» разделяют суперкласс «собака» из-за некоторых общих характеристик; люди носят шляпы и играют на гитарах, но не наоборот; а оранжевый - желтоватый цвет. После связывания этого структурированного знания с визуальными элементами все эти символические сущности (например, «собака») могут быть связаны с доказательствами из изображений, что позволяет нам интегрировать визуальный образ со знанием здравого смысла.

Затем мы пытаемся имитировать эту процедуру рассуждений и интегрировать ее в сверточные сети: во-первых, мы характеризуем представления различных символических узлов путем голосования по локальным признакам; мы выполняем рассуждения графа для улучшения визуальных свидетельств этих символических узлов посредством распространения графа для достижения семантической согласованности; и, наконец, мы отображаем развитые особенности символических узлов обратно в каждое локальное представление. Важно отметить, что мы выходим за рамки предыдущих подходов, напрямую включая рассуждения о графах внешних знаний в изучение локальных функций, которое мы называем уровнем рассуждений о символических графах (SGR). Обратите внимание, что здесь мы используем «символический» для обозначения узлов с явным лингвистическим значением, а не узлы обычных / скрытых графов, используемых в графических моделях или нейронных сетях графов.

Рассуждения по символическому графу

Ядро нашего уровня SGR состоит из трех модулей, показанных на рисунке 1.

Модуль локального семантического голосования

Первый модуль - это персонализированное визуальное свидетельство каждого символического узла, созданное путем голосования из всех локальных представлений. Мы называем это модулем локального семантического голосования. Веса голосования означают доверие семантического согласия каждой локальной функции определенному узлу. Учитывая тензоры локальных признаков из сверточных слоев, наша цель - использовать рассуждения глобального графа для улучшения локальных функций с помощью внешних структурированных знаний. Для этого мы сначала суммируем глобальную информацию, закодированную в локальных характеристиках, в представления символических узлов - локальные особенности, которые коррелируют с определенным семантическим значением (например, кошка), агрегируются для отображения характеристики соответствующего им символического узла. Формально мы используем тензор признаков после сверточного слоя в качестве входных данных модуля.

Модуль построения графиков

Второй модуль - это графическое обоснование, которое использует структурированные знания, основанные на визуальных доказательствах и семантических ограничениях, для развития глобальных представлений символических узлов. Мы включаем лингвистические вложения каждого символического узла и связей знаний (т. Е. Ребер узлов). Формально для каждого символического узла $ n \ in \ mathcal {N} $ мы используем стандартные векторы слов в качестве лингвистических вложений. Модуль логического обоснования графа выполняет распространение графа по представлениям всех символьных узлов с помощью формы умножения матриц, что приводит к развитию функций.

Модуль семантического и локального сопоставления

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

Слой SGR

Каждый уровень логического обоснования символического графа составляет этот стек модуля локального-семантического голосования, модуля логического обоснования графа и модуля семантического-локального отображения. Уровень SGR создается конкретным графом знаний с различным количеством символических узлов и различными соединениями узлов. Объединение нескольких слоев SGR с отдельными графами знаний в сверточные сети может привести к поведению рассуждений гибридного графа. Мы реализуем модули каждой SGR с помощью комбинации $ 1 \ times 1 $ операций свертки и нелинейных функций, подробно описанных на рисунке 2.

Ключевыми достоинствами нашего слоя SGR являются: a) за счет изучения ассоциаций между наблюдениями, относящимися к изображению, и графами предшествующих знаний, он позволяет сотрудничать между локальными свертками и глобальными рассуждениями, чему способствует знание здравого смысла; b) каждая локальная характеристика усиливается коррелированными входящими локальными характеристиками, тогда как в стандартных локальных свертках локальные характеристики основаны только на сравнении с их собственными входящими характеристиками и изученным вектором весов; c) после изучения представлений универсальных символических узлов изученный уровень SGR может быть легко перенесен в другой домен набора данных с дискретными наборами концепций, а уровень SGR может быть вставлен между любыми сверточными слоями и впоследствии персонализирован в соответствии с отдельными графами знаний.

Построение универсального графа

Граф знаний здравого смысла используется для изображения различных корреляций между сущностями (например, классами, атрибутами и отношениями) в целом, которые могут принимать любую форму. Для поддержки универсальных рассуждений о графах граф знаний можно сформулировать как граф с набором символов и набором ребер. Вот три примера:

  1. Граф иерархии классов, состоящий из списка классов сущностей (например, «человек», «мотоциклист») и с ребрами графа, составленными из концептуальных принадлежностей (например, «является разновидностью» или «является частью »). Сети, оснащенные этой иерархией знаний, могут стимулировать изучение иерархии функций путем передачи общих представлений родительских классов в их дочерние узлы;
  2. Граф вхождения классов с ребрами, которые определены как вхождения двух классов в изображениях, характеризующие рациональность прогнозов;
  3. Семантическая абстракция более высокого уровня - граф семантических отношений, который может расширять символические узлы для включения большего количества действий (например, «поездка», «воспроизведение»), макетов (например, «поверх») и атрибутов (например, цвета или shape), а ребра графа статистически собираются из языковых описаний. Использование таких высокоуровневых знаний здравого смысла может помочь сетям отсечь ложные объяснения, что приведет к хорошей семантической согласованности.

Основываясь на этой общей формуле, рассуждения графа должны быть совместимыми и достаточно общими для мягких ребер графа (например, вероятностей появления) и жестких ребер (например, принадлежностей), а также различных символических узлов. Различные структурные ограничения могут быть смоделированы как граничные соединения над символическими узлами, точно так же, как мы используем языковые инструменты. Наш уровень SGR разработан для достижения общих графических рассуждений, которые применимы для кодирования широкого спектра форм графов знаний.

Эксперименты

Наш слой SGR достаточно гибкий и универсальный, чтобы его можно было вставлять между любыми локальными свертками. Однако, поскольку SGR предназначен для включения семантических рассуждений высокого уровня, лучше использовать его на более поздних уровнях свертки, как показали наши эксперименты.

Таблицы 1, 2 и 3 показывают результаты нашего слоя SGR по сравнению с последними современными методами на Coco- Наборы данных Stuff, Pascal-Context и ADE20K соответственно. Наш уровень SGR значительно превосходит существующие методы для всех трех наборов данных, демонстрируя свою эффективность в выполнении явных графических рассуждений помимо локальных сверток для крупномасштабного распознавания на уровне пикселей.

Рисунок 3 показывает качественное сравнение с исходным уровнем Deeplabv2. Наша SGR обеспечивает лучшую производительность сегментации, особенно для некоторых редких классов (например, зонтик, плюшевый мишка), благодаря совместным рассуждениям с частыми концепциями по графу иерархии концепций. Он включает семантические ограничения высокого уровня, разработанные для задач классификации, в попиксельном распознавании, что впечатляет, поскольку связать предварительные знания с плотными пикселями сложно. В отличие от предыдущих методов, наш уровень SGR достигает лучших результатов только с одним дополнительным уровнем рассуждений, сохраняя при этом хорошие вычисления и эффективность использования памяти.

Обратите внимание, что наша SGR изучает различные веса голосования и сопоставления в модулях локально-семантический и семантический-локальный соответственно. Сравнение «Нашего SGR (ResNet-101)» с «SGR (без сопоставления)» как по производительности тестирования, так и по сходимости обучения в Таблицах 1 и 4 показывает, что оценка новых Веса семантического преобразования в локальные могут улучшить процесс рассуждений о распределениях развитых признаков после анализа графов.

Мы являемся пионерами интеграции здравого смысла в разработку систем машинного обучения, и мы надеемся, что наша SGR поможет ускорить исследования в области глобального мышления в сверточных сетях. Более подробную информацию можно найти в нашей статье: http://papers.nips.cc/paper/7456-symbolic-graph-reasoning-meets-convolutions