оригинал:Large Scale Fine-Grained Categorization and Domain-Specific Transfer Learning
резюме
Для доменной мелкозернистой визуальной классификации (fgvc, мелкозернистая визуальная категоризация) такие задачи, как распознавание птиц или марок и моделей автомобилей, обеспечивают эффективные решения. В этом случае аннотация данных часто требует специальных знаний в предметной области, что затрудняет масштабирование набора данных. В этой работе мы сначала решаем проблему крупномасштабного набора данных для задачи FGVC. Наш метод занял первое место в конкурсе крупномасштабной классификации видов iNaturalist2017. Центральное место в успехе нашего подхода занимает использование изображений с более высоким разрешением для обучения и обработка длинных распределений обучающих данных. Затем мы переходим от крупномасштабного набора данных к мелкомасштабному набору данных FGVC для конкретной предметной области, изучая трансферное обучение. Мы предлагаем метод оценки подобия домена с помощью расстояния Earth Mover и демонстрируем, что трансферное обучение может выиграть от предварительного обучения в исходном домене, аналогичном этому целевому домену. Предлагаемое нами трансферное обучение превосходит предварительное обучение ImageNet и обеспечивает самые современные результаты на нескольких часто используемых наборах данных FGVC.
вводить
Детальная визуальная классификация (fgvc) направлена на выделение подчиненных визуальных категорий. Например, идентификация естественных классификаций, таких как виды птиц, собак и растений, или искусственных классификаций, таких как сборки и модели автомобилей. Успешная модель FGVC должна уметь различать тонкие различия классов, что является огромной проблемой, но дизайн этой модели обеспечивает основу для других приложений, расширенных подписей к изображениям, генерации изображений, машинного обучения и других приложений.
Недавние достижения в сверточных нейронных сетях для визуального распознавания (CNN) привели к значительному прогрессу в FGVC. В общем, чтобы достичь достаточно хорошей производительности на CNN, необходимо обучать сетевые данные с большим контролем. Однако для сбора помеченных мелкозернистых наборов данных требуются знания предметной области на уровне эксперта, что затрудняет масштабирование. Поэтому обычно используемые наборы данных FGVC относительно малы и обычно содержат около 10 тыс. помеченных обучающих изображений. В этом случае часто используется тонкая настройка сети, предварительно обученной с помощью большого набора данных, такого как ImageNet.
Это распространенное использование вызывает два вопроса: 1) Каковы важные факторы для достижения хорошей производительности на крупномасштабных наборах данных FGVC? В то время как другое крупномасштабное общее видение Наборы данных, такие как ImageNet, содержат детализированные категории, изображения которых часто представляют собой знаковые веб-изображения, содержащие объекты в центре, с аналогичными пропорциями и простым фоном. Из-за крупномасштабной ограниченной доступности наборов данных FGVC вопрос о том, как разрабатывать хорошо работающие модели, остается недостаточно разработанной областью для больших неиконичных изображений с детализированными категориями. 2) Как насчет тонкой настройки на мелкозернистых наборах данных для конкретной предметной области, сначала обучив крупномасштабные наборы данных, а затем эффективно выполняя трансферное обучение? Подавляющее большинство современных методов FGVC используют предварительно обученные сети ImageNet, подходящие для точной настройки. Учитывая, что целевая детальная область известна, можем ли мы добиться большего успеха, чем ImageNet?
Этот документ призван ответить на два из вышеперечисленных вопросов, касающихся недавнего запуска iNaturalist 2017 для крупномасштабных наборов данных (INAT). iNat содержит 675 170 обучающих и проверочных изображений из 5 089 подробных категорий. Все изображения сделаны в естественных условиях с разным масштабом объектов и фоном. Таким образом, INAT предоставляет прекрасную возможность изучить ключевые факторы, лежащие в основе того, как обучать нейронные сети, чтобы они хорошо работали на крупномасштабных FGVC. Кроме того, вместе с ImageNet iNat позволяет нам переносить знания, полученные на основе крупномасштабных наборов данных, в мелкие детализированные домены.
В этой работе мы сначала предлагаем график обучения, который позволяет получить высшие баллы по iNat с использованием крупномасштабной мелкозернистой классификации. В отличие от ImageNet, изображения в iNat имеют более высокое разрешение и широкий диапазон масштабов объектов. Производительность iNat может быть значительно улучшена при более высоком разрешении входного изображения. Другая проблема, которую мы обсуждаем в этой статье, — это проблема распределений с длинными хвостами, где некоторые классы имеют наибольшее количество изображений. Для решения этой проблемы мы предлагаем простой проблемно-эффективный метод. Идея состоит в том, чтобы изучить хорошие функции из большого количества обучающих данных, а затем точно настроить более равномерно распределенное подмножество, чтобы сбалансировать производительность сети. Результаты наших экспериментов показывают, что мы можем значительно улучшить недопредставленные категории и добиться более высокой общей производительности.
Во-вторых, мы изучаем, как передача знаний учится на крупномасштабных наборах данных с мелкомасштабными доменами. Наборы данных часто необъективны в содержании и статистике стиля. На CUB200 Birds предварительно обученная сеть iNat работает лучше, чем ImageNet предварительно обученные; в то время как в Stanford-Dogs предварительно обученные сети ImageNet могут повысить производительность. Это связано с тем, что в iNat больше визуально похожих категорий птиц, а в ImageNet — категорий собак. В связи с этим мы предлагаем новый метод измерения визуального сходства исходного и целевого доменов на уровне изображения на основе расстояния движения земли. Путем точной настройки подобия домена сети на основе предложенного нами обучения выбранного подмножества мы достигаем лучшего передаточного обучения предварительного обучения ImageNet и самых современных результатов на мелкозернистых наборах данных. На рис. 1 представлена пояснительная диаграмма.
Мы считаем, что наше исследование крупномасштабного FGVC и трансферного обучения в конкретной предметной области может стать полезным руководством для исследователей, изучающих аналогичные проблемы.
Связанных с работой
Последние методы FGVC обычно включают полезную детальную информацию в CNN и обучают сеть от начала до конца. Примечательно, что билинейное взаимодействие признаков второго порядка оказалось очень эффективным. Позже эта идея была расширена до компактного билинейного объединения, за которым следуют взаимодействия более высокого порядка.Для фиксации тонких визуальных различий часто используются визуальное внимание и глубокое объемное обучение. Помимо пикселей, мы также используем другую информацию, включая части, атрибуты, взаимодействие с человеком и текстовые описания. Чтобы справиться с нехваткой обучающих данных, можно собрать дополнительные сетевые изображения, чтобы дополнить исходный набор данных. Наш подход отличается от них предварительным обучением сети на существующем крупномасштабном наборе данных без сбора новых данных.
Использование изображений высокого разрешения для fgvc становится все более популярным. Аналогичная тенденция наблюдается и в визуальном распознавании изображений ImageNet: от исходного 224×224 в Alexnet до 331×331 в недавно предложенной NASNET. Однако влияние разрешения изображения на крупномасштабные мелкозернистые наборы данных систематически не исследовалось, как это делается в этой статье.
Как работать с распределениями с длинными хвостами — важный вопрос в реальных данных. Однако это довольно неисследованная область, главным образом потому, что обычно используемые эталонные наборы данных проходят предварительную обработку, близкую к равномерному распределению. ванХорн и др. указали, что категория «хвост» работает намного хуже, чем категория «голова», для которой достаточно обучающих данных. Мы предлагаем простую двухэтапную схему обучения для обработки распределений с длинными хвостами, которая хорошо работает на практике.
Сверточные нейронные сети (CNN), обученные в ImageNet, широко используются для передачи обучения путем прямого использования предварительно обученных сетей в качестве средств извлечения признаков или сетей точной настройки. Большая работа была проделана для понимания трансферного обучения из-за замечательного успеха трансферного обучения с использованием предварительно обученных CNN. В частности, некоторые предыдущие работы неточно продемонстрировали связь между трансферным обучением и сходством предметной области. Например, перенос обучения между двумя случайными сегментациями проще, чем сегментация естественных/искусственных объектов в ImageNet [64]; ручное добавление 512 дополнительных связанных классов из всех доступных классов улучшает 1000 классов ImageNet, обычно используемых в PASCAL VOC. и наборы данных Places дают лучшие результаты в списке задач визуального распознавания. Азизпур и др. провели полезное исследование списка задач трансферного обучения, которые по-разному похожи на исходную задачу классификации ImageNet (например, классификация изображений считается более похожей, чем поиск экземпляров и т. д.). Основные различия между нашей работой двояки: во-первых, мы предоставляем метод количественной оценки сходства между исходным и целевым доменами, а затем выбираем более похожее подмножество из исходного домена для лучшего обучения переносу. Во-вторых, они оба используют предварительно обученные CNN в качестве средств извлечения признаков и обучают только последний слой или используют линейный SVM для извлеченных признаков, в то время как мы настраиваем все слои сети.
Крупномасштабная мелкозернистая классификация
В этом разделе мы представим нашу программу обучения -- Лучшие результаты на сложном наборе данных 2017 года iNaturalist , особенно с изображениями с более высоким разрешением и обработка распределений с длинными хвостами.
Эффект разрешения изображения
При обучении CNN, чтобы облегчить проектирование сети и
Пакетное обучение, входные изображения обычно предварительно обрабатываются
квадрат определенного размера. каждая сетевая архитектура
Обычно есть размер ввода по умолчанию. Например, АлексНет
и VGGNet с размером ввода по умолчанию 224×224.
И этот размер ввода по умолчанию нелегко изменить -
что приводит к полностью связанным слоям после того, как требуется свертка
Карта объектов фиксированного размера. Последние сети включают
ResNet и Inception полностью сверточные, с глобальным средним пулом в конце. Эта конструкция позволяет сети получать ввод
изображения любого размера. Делайте снимки с разным разрешением
Карты признаков с различными размерами субдискретизации вводятся в сеть.
.
Входные изображения с более высоким разрешением обычно содержат
Более подробная информация и более мелкие детали
Визуальная идентификация, особенно для FGVC. следовательно,
Входные изображения с более высоким разрешением обеспечивают лучшую производительность
. Для сетей, оптимизированных для ImageNet, существует
Тенденция к использованию входных изображений с более высоким разрешением
: от исходного 224×224 в AlexNet [33] до
331×331, недавно предложенный NASNet [72], как показано на рис.
Таблица 3. Однако большинство изображений из ImageNet имеют
с разрешением 500×375 и содержащие объекты аналогичного масштаба,
Ограничьте преимущества, которые мы можем получить от использования более высоких разрешений. Мы изучаем использование широкого спектра эффектов
Размер входного изображения от 299x299 до 560x560 в iNat
набор данных, ввод с высоким разрешением показывает более высокую производительность.
Распределение с длинным хвостом
Статистика для изображений реального мира имеет длинный хвост: мало Категории очень репрезентативны и имеют большую часть изображения, в то время как большинство классов редко наблюдаются, Только несколько картинок. Это резко контрастирует с однородным распределением изображений в популярных наборах данных, таких как ImageNet [12], COCO [34] и CUB200 [58].
Из-за крайне несбалансированного количества изображений по категориям в наборе данных iNaturalist [55] мы обнаружили низкую производительность на недопредставленных хвостовых категориях. Мы считаем, что это в основном вызвано двумя причинами: 1) отсутствие данных для обучения. В обучающем наборе iNat содержится менее 30 изображений примерно из 1500 подробных категорий. 2) Чрезвычайный дисбаланс, обнаруженный во время обучения: соотношение между количеством изображений в самом большом и самом маленьком классах составляет около 435. Без какой-либо потери передискретизации или повторного взвешивания на обучающих изображениях глава класса с большим количеством изображений будет доминировать над этими хвостами. Поскольку мы мало что сделали в связи с отсутствием обучающих данных на первом этапе, мы предлагаем простой и эффективный метод решения проблемы дисбаланса второго типа.
Обучение разделено на два этапа. На первом этапе мы, как обычно, обучаем сеть на исходном несбалансированном наборе данных. С большим количеством обучающих данных из всех классов сеть может получить хорошее представление функций. Затем, на втором этапе, мы настраиваем подмножество, содержащее более сбалансированные данные с меньшим объемом обучения. Ставка. Идея состоит в том, чтобы медленно передавать изученные функции, позволяя сети перебалансировать все классы. На рис. 2 показаны распределения частоты изображений в нашем обучающем наборе iNat, обученном на первом этапе, и подмножестве, обученном на втором этапе, соответственно. Эксперимент 5.2 в разделе II подтверждает, что предлагаемая стратегия может улучшить общую производительность, особенно для недопредставленных хвостовых категорий.
передача обучения
В этом разделе описывается перенос обучения из сетей, обученных на больших наборах данных, в небольшие детализированные наборы данных. Мы представляем метод измерения визуального сходства между двумя доменами и показываем, как выбрать подмножество из исходного домена с учетом целевого домена.
Сходство доменов
Предположим, у нас есть исходный домен S и целевой домен T. Мы определяем расстояния s ∈ S и t ∈ T между двумя изображениями как евклидово расстояние между их представлениями признаков:
d(s, t) = ||g(s) − g(t)|| (1)
где g( ) представляет экстрактор признаков изображения. Чтобы лучше фиксировать сходство изображений, экстрактор признаков g() должен иметь возможность извлекать высокоуровневую информацию из изображений общим, непредвзятым образом. Поэтому в наших экспериментах мы g( ) используем признаки из предпоследнего слоя Resnet-101, обученного на крупномасштабном наборе данных JFT.
В общем, использование большего количества изображений приводит к лучшему трансферному обучению. Для простоты в этом исследовании мы игнорируем влияние размера домена (количества изображений). В частности, мы нормализуем количество изображений в исходном и целевом доменах. Исследование Чена и соавт. [49], эффективность трансферного обучения увеличивается логарифмически с увеличением количества обучающих данных. Это говорит о том, что, когда у нас уже есть достаточно большой набор данных (например, ImageNet), прирост производительности в трансферном обучении за счет использования большего количества обучающих данных будет незначительным. Таким образом, игнорирование размера домена является разумным предположением для упрощения задачи. Наше определение подобия домена можно обобщить для учета масштаба домена, добавив коэффициент масштабирования, но мы обнаружили, что игнорирование масштаба домена на практике работает хорошо.
В соответствии с этим предположением трансферное обучение можно рассматривать как перемещение набора изображений из исходной области S в целевую область T. Работа, которую необходимо выполнить, перемещая изображение в другое изображение, может быть определена так, как они представлены в уравнении 1. расстояние. Тогда расстояние между двумя областями можно определить как минимальное значение общего требуемого усилия. Это определение подобия доменов может быть вычислено с помощью расстояния движения Земли (EMD).
Чтобы сделать вычисления более удобными, мы делаем дополнительное упрощение для представления всех признаков изображения в классе посредством их признаков. Формально мы обозначаем исходный домен каки целевой домен
,в
i-й класс в S,
— количество нормализованных изображений в классе, аналогично для количества изображений в T
и
. m и n — общее количество категорий в исходном домене S и целевом домене T соответственно. Нормируем общее количество изображений, получаем
.
представляет собой среднее значение функций изображения в классе i из исходного домена, аналогичное тому, что в целевом
площадь. Расстояние между S и T определяется как их расстояние движения по суше (EMD), выраженное как:
в, оптимальный поток
Соответствует минимальному значению суммарных усилий при решении задачи оптимизации EMD. Наконец, сходство доменов определяется как
где γ было установлено равным 0,01 во всех экспериментах. На рис. 3 показано предполагаемое сходство доменов, рассчитанное с помощью EMD.
выбор исходного домена
Мы определяем сходство доменов в уравнении 2, чтобы можно было выбрать подмножество из исходного домена, более похожее на целевой домен. Мы используем стратегию жадного выбора, чтобы постепенно включать наиболее похожие классы в исходный домен. То есть для исходного доменаКаждая категория в
, мы вычисляем сходство его домена с целевым доменом по следующей формуле:
, как определено в уравнении 3. Затем выбираются лучшие K классов с наибольшим сходством доменов. Обратите внимание, что хотя этот жадный выбор не гарантирует оптимальности для выбора подмножеств размера K с точки зрения подобия доменов, мы находим, что эта простая стратегия хорошо работает на практике.
эксперимент
Экспериментальная установка
набор данных
-
iNaturalist 2017.
-
ImageNet.
-
Fine-Grained Visual Categorization.
сетевая структура
Мы используем 3 типа сети: ResNet, Inception, SENet
-
Residual Network (ResNet).
Первоначально представленные Хе и др. Сети с остаточной связью значительно сокращают трудности оптимизации и позволяют обучать более глубокие сети. Восстановленная сеть позже была улучшена. Используя карту идентичности в качестве связи между предварительно активированными остаточными модулями skip con. Мы используем последнюю версию Resnet с 50, 101 и 152 слоями. -
Inception.
Начальный модуль был впервые предложен Szegedy et al. В Googlenet он спроектирован так, чтобы быть очень эффективным с точки зрения параметров и вычислений, обеспечивая при этом самую современную производительность. Затем исходный модуль дополнительно оптимизируется с использованием пакетной нормализации, факторизованной свертки и остаточных соединений. Мы используем Inception- v3, Inception-v4 и Inception-ResNet-v2. -
Squeeze-and-Excitation (SE)
Недавно предложенный Hu et al. Модуль S продемонстрировал наилучшие результаты в ILSVRC2017. Модуль SE сжимает ответы из карты объектов посредством объединения пространственных средних значений, а затем учится масштабировать каждый канал карты объектов. Благодаря простой конструкции модуля SE его можно использовать практически в любой современной сети для повышения производительности без дополнительных накладных расходов. Мы используем начальную версию v3 SE и начальную версию resnet-v2 SE в качестве базовых показателей.
Для всех сетевых архитектур мы строго следуем их исходным проектам, но заменяем последний слой линейной классификации, чтобы он соответствовал количеству классов в наборе данных.
выполнить
Мы внедряем и обучаем все модели асинхронно на нескольких графических процессорах Nvidia Tesla K80, используя TensorFlow с открытым исходным кодом [2]. Во время обучения входное изображение случайным образом обрезается из исходного изображения и масштабируется до целевого входного размера за счет увеличения масштаба и соотношения сторон. Мы обучили все сети с помощью оптимизатора rmsprop с импульсом 0,9 и размером пакета 32. Скорость обучения была установлена на 0,045 для 9 эпох с экспоненциальным спадом 0,94 после каждых 2 эпох, для тонкой настройки трансферного обучения, после каждых 4 эпох скорость обучения снижается на 0,94, а начальная скорость обучения снижается до 0,0045. Мы также использовали сглаживание меток. Во время вывода исходное изображение обрезается по центру и масштабируется до целевого входного размера.
Крупномасштабная мелкозернистая классификация
Чтобы проверить предлагаемую схему обучения крупномасштабной мелкозернистой классификации, мы проводим обширные эксперименты с набором данных iNaturalist 2017. Для повышения производительности мы используем предварительно обученные сети ImageNet. Если INAT обучается с нуля, частота ошибок первых 5 ≈ 1% хуже. Мы обучили Inception-v3 с тремя разными входными разрешениями (299, 448 и 560). Влияние разрешения изображения показано в таблице 3. Как видно из таблицы, использование более высокого входного разрешения приводит к лучшей производительности на INAT. Оценка предложенной нами схемы тонкой настройки для обработки распределений с длинными хвостами показана на рисунке 4. Лучшей производительности можно добиться путем дальнейшей точной настройки более сбалансированного подмножества с меньшей скоростью обучения (10-6 в наших экспериментах). В таблице 4 показано улучшение производительности по категориям «голова» и «хвост» за счет тонкой настройки. Показатели улучшения категории головы с тренировочными изображениями больше или равными 100 составляют 1,95 % от лучших 1 и 0,92 % от первых 5 соответственно; в то время как показатели улучшения хвостовой категории с тренировочными изображениями менее 100 составляют 5,74 %. из топ-1 и 5,74% из топ-5 соответственно 2,71% из топ-5. Эти результаты подтверждают, что предложенная схема тонкой настройки значительно улучшает производительность неэффективного хвостового класса.
В таблице 5 представлена подробная классификация результатов нашего конкурса iiNaturalist в 2017 году. Использование изображений с более высоким разрешением и дальнейшая точная настройка более сбалансированного подмножества стали ключом к нашему успеху.
Сходство доменов и трансферное обучение
Мы оцениваем предлагаемый метод трансферного обучения для мелкозернистой визуальной классификации путем предварительного обучения сети с нуля в исходном домене, а затем ее точной настройки в целевом домене. Помимо обучения на Imagenet и INAT по отдельности, мы обучаем сеть на комбинированном наборе данных Imagenet+INAT, содержащем 1946640 обучающих изображений из 6089 категорий (т. е. 1000 из Imagenet и 1000 из INAT из 5089). Все сети используют входной размер 299 × 299. В таблице 6 показаны результаты предварительной подготовки, оцененные на IMAGENET VAL и INAT MiniVAL. Примечательно, что одна сеть, обученная на комбинированном наборе данных IMAGENET+INAT, имеет конкурентоспособную производительность по сравнению с двумя моделями, обученными по отдельности. В целом, совместная тренировка превосходит индивидуальную тренировку в случае запуска и запуска SE и хуже в случае реснета. На основе предложенной политики выбора домена, определенной в SEC. 4.2, мы выбираем следующие два подмножества из объединенного набора данных IMAGENET+INAT: Подмножество A выбирается, содержа 200 лучших категорий IMAGENET+INAT из 7 наборов данных FGVC. Удаление повторяющихся категорий приводит к тому, что исходный домен содержит 832 категории. Подмножество B было выбрано путем увеличения 100 лучших категорий CUB200, Nabirds, Stanford Dogs и 400 наиболее похожих категорий из 50 лучших категорий Stanford Cars and Aircraft, что дало нам в общей сложности 585 категорий. На рисунке 6 показаны 10 наиболее похожих классов в imagenet+inat для всех наборов данных fgvc, рассчитанных в соответствии с предложенным нами сходством доменов. Очевидно, что для cub200, flowers-102 и nabirds наиболее похожие классификации взяты из inat, в то время как для стэнфордских собак, стэнфордских машин, самолетов и еды101 наиболее схожие классификации взяты из imagenet. Это показывает, что наборы данных в IMAGENET и INAT сильно искажены.
В Таблице 7 показана производительность трансфертного обучения, достигнутая путем точной настройки начального уровня v3 на детализированном наборе данных. Мы видим, что и IMAGENET, и INAT сильно предвзяты, достигая значительно разных показателей передачи обучения в целевом наборе данных. Интересно, что когда мы переносим сеть, обученную на комбинированном наборе данных imagenet+inat, производительность находится между imagenet и предварительным обучением inat, что говорит о том, что мы не можем просто использовать комбинированный исходный домен большего масштаба в целевом домене для достижения хорошей производительности.
Кроме того, на рисунке 5 мы показываем взаимосвязь между эффективностью трансферного обучения и предлагаемым сходством предметной области. Мы наблюдаем лучшую производительность трансферного обучения при точной настройке из более похожего исходного домена, за исключением food101, где эффективность трансферного обучения почти соответствует изменениям подобия домена. Мы думаем, что это, вероятно, связано с большим количеством обучающих изображений в Food101 (750 обучающих изображений на класс). Следовательно, целевой домен содержит достаточно данных, поэтому трансферное обучение мало чем поможет. В этом случае наше предположение об игнорировании размера домена больше не действует.
Как видно из таблицы 7 и рисунка 5, выбранное подмножество B обеспечивает хорошую производительность на всех наборах данных fgvc, значительно превосходя предварительное обучение imagenet на cub200 и nabirds. В таблице 8 мы сравниваем наш метод с существующими методами fgvc. Результаты показывают, что предлагаемый метод трансферного обучения обладает самой современной производительностью на обычно используемом наборе данных fgvc. Обратите внимание, что, поскольку наше определение подобия доменов является быстрым в вычислительном отношении, мы можем легко исследовать различные способы выбора исходного домена. Эффективность трансферного обучения можно оценить непосредственно по сходству предметной области без какой-либо предварительной подготовки и тонкой настройки. До нашей работы единственными вариантами получения хорошей производительности в задаче fgvc были разработка более качественных моделей на основе тонкой настройки ImageNet или улучшение набора данных путем сбора большего количества изображений. Однако наша работа дает новое направление для предварительной подготовки сети с более похожими исходными доменами. Мы показываем, что этот прирост производительности может быть сравним или превышен простой тонкой настройкой готовых сетей после выбора подходящего подмножества в исходном домене.
в заключении
В этой работе мы предлагаем схему обучения, которая обеспечивает оптимальную производительность на крупномасштабных неестественных наборах данных за счет использования входных изображений с высоким разрешением и точной настройки для обработки распределений с длинными хвостами. Кроме того, мы предлагаем новый метод получения сходства с областью расстояний движения Земли, демонстрируя, что точная настройка из более похожей области может привести к повышению эффективности обучения переносу. В будущем мы планируем изучить другие важные факторы помимо сходства доменов.
Спасибо. Эта работа была частично поддержана премией Google Focused Research Award. Мы хотели бы поблагодарить наших коллег из Google за полезные обсуждения.