Учебное пособие по анализу оболочки данных PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Учебник по анализу данных

Анализ охвата данных, также известный как DEA, является непараметрическим методом для проведения граничного анализа. Он использует линейное программирование для оценки эффективности нескольких подразделений, принимающих решения, и обычно используется в производстве, управлении и экономике. Метод был впервые предложен Чарнес, Купер и Родос в 1978 году и с тех пор он стал ценным инструментом для оценки производственных границ.

Обновление: среда машинного обучения Datumbox теперь с открытым исходным кодом и бесплатна для скачать, Проверьте пакет com.datumbox.framework.algorithms.dea, чтобы увидеть реализацию анализа данных в Java.

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

Чем интересен анализ данных?

Анализ охвата данных - это метод, который позволяет нам сравнивать и ранжировать записи (магазины, сотрудники, фабрики, веб-страницы, маркетинговые кампании и т. Д.) На основе их функций (вес, размер, стоимость, доходы и другие показатели или KPI) без каких-либо предварительных предположений о важность или вес функций. Самая интересная часть этого метода заключается в том, что он позволяет нам сравнивать записи, состоящие из нескольких элементов, которые имеют совершенно разные единицы измерения. Это означает, что мы можем иметь записи с характеристиками, измеряемыми в километрах, килограммах или денежных единицах, и при этом иметь возможность сравнивать, ранжировать их и находить лучшие / худшие и средние показатели производительности. Звучит интересно? Продолжай читать.

Описание и допущения анализа охвата данных

Данные-обволакивание-анализ-граф
Как мы уже говорили ранее, DEA - это метод, который был изобретен для измерения производительности в бизнесе. Таким образом, некоторые из его идей исходят из способа измерения производительности в этом контексте. Одной из основных характеристик метода является разделение элементов записи на две категории: вход и выход. Например, если мы измерим эффективность автомобиля, мы можем сказать, что на входе это литры бензина, а на выходе - количество километров, которые он проезжает.

В DEA все характеристики должны быть положительными, и предполагается, что чем выше их значение, тем больше их ввод / вывод. Кроме того, анализ охвата данных предполагает, что функции могут быть линейно объединены в виде взвешенной суммы неотрицательных весов и образуют соотношение между входом и выходом, которое будет измерять эффективность каждой записи. Чтобы запись была эффективной, она должна давать нам «хороший» вывод относительно предоставленного ввода. Эффективность измеряется соотношением между выходом и входом, а затем сравнивается с соотношением других записей.

Гениальная идея DEA

То, что мы рассмотрели до сих пор, это здравый смысл / практика. Мы используем входные и выходные данные, взвешенные суммы и соотношения для ранжирования наших записей. Умная идея DEA заключается в способе расчета весов функций. Вместо того, чтобы задавать веса функций и определять их важность перед тем, как приступить к анализу, анализ окружения данных рассчитывает их на основе данных. Более того, веса НЕ одинаковы для каждой записи!

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

Идея звучит немного странно в начале. Не приведет ли это к расчету по-разному взвешенных отношений? Ответ - да. Не означает ли это, что мы на самом деле по-разному рассчитываем коэффициенты для каждой записи? Ответ снова да. Так как же это работает? Ответ прост: для каждой записи, учитывая ее характеристики, мы пытаемся найти «идеальную ситуацию» (веса), в которой ее отношение было бы как можно выше, и, таким образом, сделать ее максимально эффективной. НО в то же время, учитывая эту «идеальную ситуацию», ни одно из отношений вывода / ввода других записей не должно быть больше 1, что означает, что они не могут быть более эффективными, чем 100%! Как только мы вычислим соотношения всех записей в каждой «идеальной ситуации», мы используем их соотношения для их ранжирования.

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

Давайте посмотрим пример

Давайте посмотрим пример, где мы могли бы использовать DEA.

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

Чтобы применить DEA, мы должны определить, что является нашим входом и выходом. В этом случае результатом является сумма продаж и количество клиентов, которых они обслуживают. На входе указывается количество сотрудников и размер магазина. Если мы запустим DEA, мы оценим отношение производства к входу для каждого магазина под идеальными весами (как обсуждалось выше). Как только мы получим их соотношения, мы оценим их в соответствии с их эффективностью.

Это математическое время!

Теперь, когда мы получили представление о том, как работает DEA, пришло время копаться в математике.

Коэффициент эффективности конкретной записи i с входом x и выходом y (оба вектора признаков с положительными значениями) оценивается по следующей формуле:

dea2

Где u и v - веса каждого вывода и ввода записи, s - количество выходных объектов, а m - количество входных объектов.

Проблема нахождения наилучшего / идеального веса для конкретной записи я могу сформулировать следующим образом:

dea4
dea6
dea8

Опять же, приведенное выше - это всего лишь математический способ определения весов u и v, которые максимизируют эффективность записи i, при условии, что эти веса не сделают ни одну из других записей более эффективной, чем 100%.

Чтобы решить эту проблему, мы должны использовать линейное программирование. К сожалению, линейное программирование не позволяет нам использовать дроби, и поэтому нам нужно преобразовать формулировку проблемы следующим образом:

dea10
dea12
dea14
dea8

Следует подчеркнуть, что приведенная выше задача линейного программирования даст нам лучшие веса для записи i и вычислит ее эффективность при этих оптимальных весах. То же самое должно повторяться для каждой записи в нашем наборе данных. Поэтому, если у нас есть n записей, мы должны решить n отдельных линейных задач. Вот псевдокод того, как работает DEA:

ratio_scores = [];
for every record i {
    i_ratio = get_maximum_effectiveness();
    ratio_scores[i] = i_ratio;
}

Ограничения анализа данных

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

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

Еще одна проблема, с которой сталкивается DEA, заключается в том, что она плохо работает с данными большого размера. Чтобы использовать DEA, количество измерений d = m + s должно быть значительно меньше количества наблюдений. Запуск DEA, когда d очень близко или больше n, не дает полезных результатов, поскольку, скорее всего, все записи будут найдены оптимальными. Обратите внимание, что при добавлении новой выходной переменной (измерения) все записи с максимальным значением в этом измерении будут найдены оптимальными.

Наконец, мы должны отметить, что в общем виде алгоритма веса функций в DEA оцениваются на основе данных, и поэтому они не используют никакой предварительной информации о важности функций, которые мы могли бы иметь в нашей задаче (конечно, эту информацию можно включить как ограничения в нашу линейную задачу). Кроме того, рассчитанные показатели эффективности являются фактически верхним пределом коэффициентов эффективности каждой записи, поскольку они рассчитываются в «идеальных ситуациях». Это означает, что DEA может быть хорошим решением, когда невозможно сделать какие-либо предположения о важности функций, но если у нас есть какая-либо предварительная информация или мы можем количественно оценить их важность, то рекомендуется использовать альтернативные методы.

В следующей статье я покажу вам, как разработать реализацию Анализ Обработки Данных в JAVA и мы будем использовать этот метод для оценки популярности веб-страниц и статей в социальных сетях.

Если вам понравилась статья, найдите время, чтобы поделиться ею в Twitter или Facebook. 🙂

Отметка времени:

Больше от Датумбокс