- 24 февраля 2014
- Василис Вриниотис
- , 3 комментария
Анализ охвата данных, также известный как 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 (оба вектора признаков с положительными значениями) оценивается по следующей формуле:
Где u и v - веса каждого вывода и ввода записи, s - количество выходных объектов, а m - количество входных объектов.
Проблема нахождения наилучшего / идеального веса для конкретной записи я могу сформулировать следующим образом:
Опять же, приведенное выше - это всего лишь математический способ определения весов u и v, которые максимизируют эффективность записи i, при условии, что эти веса не сделают ни одну из других записей более эффективной, чем 100%.
Чтобы решить эту проблему, мы должны использовать линейное программирование. К сожалению, линейное программирование не позволяет нам использовать дроби, и поэтому нам нужно преобразовать формулировку проблемы следующим образом:
Следует подчеркнуть, что приведенная выше задача линейного программирования даст нам лучшие веса для записи 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. 🙂
- AI
- ай искусство
- генератор искусств ай
- искусственный интеллект
- искусственный интеллект
- сертификация искусственного интеллекта
- робот с искусственным интеллектом
- роботы с искусственным интеллектом
- программное обеспечение искусственного интеллекта
- блокчейн
- конференция по блокчейну
- Coingenius
- разговорный искусственный интеллект
- криптоконференция ИИ
- дал-и
- Датумбокс
- глубокое обучение
- google ai
- обучение с помощью машины
- Машинное обучение и статистика
- Платон
- Платон Ай
- Платон Интеллектуальные данные
- Платон игра
- ПлатонДанные
- платогейминг
- масштаб ай
- синтаксис
- зефирнет