Обобщенная линейная регрессия (GeoAnalytics Desktop)

Сводка

Строит Обобщенную линейную регрессию (ОЛР) для вычисления прогнозов или моделирования взаимосвязи между независимыми переменными и зависимой переменной. Инструмент используется для подгонки различных моделей, в частности, непрерывных (МНК), бинарных (логистических) и числовых (Пуассона).

Использование

  • Этот инструмент можно использовать в двух режимах. Вы можете оценивать производительность разных моделей при изучении различных независимых переменных и настроек инструментов. Как только найдена хорошая модель, вы можете настроить её для нового набора данных.

  • В параметре Входные объекты укажите поле, представляющее явление, которое вы моделируете (параметр Зависимая переменная), а также укажите одно или несколько полей, представляющих независимые переменные.

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

  • Для получения точных результатов регрессионного анализа очень важно использовать правильный тип модели анализа (Непрерывная, Бинарная или Количественная).

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

    • Используйте тип модели Непрерывная (Гауссова), если зависимая переменная представлена широким диапазоном значений, например, измерения температуры воздуха или объемы продаж. В идеале зависимая переменная должна подчиняться принципу нормального распределения.
    • Используйте тип модели Бинарная (логистическая), если зависимая переменная представлена двумя возможными значениями, скажем удалось или не удалось или наличие - отсутствие. Поле, в котором содержится зависимая переменная, должно быть числовым или текстовым. Если поле числовое, в нем могут содержаться только нули и единицы. Если поле текстовое, оно может содержать два разных значения. Если вы используете текстовое поле, вы должны использовать параметр Зависимые от карт переменные, чтобы сопоставить отдельные текстовые значения с единицами и нулями. В ваших данных должна присутствовать вариабельность нуля и единицы.

    • Рекомендуется использовать тип модели Количественная (Пуассона), если зависимая переменная содержит дискретные значения, и представляет явление с количественным измерением, скажем число преступлений. Количественные модели также можно использовать с зависимой переменной, представляющий соотношение, где в знаменателе фиксированное значение, по которому можно нормировать, например объем продаж в месяц или число онкобольных на 10000 населения. Количественная модель предполагает, что среднее и вариабельность зависимой переменной равны, а значения зависимой переменной не могут быть отрицательными или содержать десятичные значения.

    Параметры Зависимая переменная и Описательная переменная должны быть заданы числовыми полями, содержащими диапазоны значений. Инструмент не может работать, когда все переменные имеют одинаковые значения (например, все значения для поля равны 9.0).

  • Пространственные объекты, имеющие одно или более значений null или пустые строковые значения в полях прогноза или в описательных полях, будут исключены из результатов. Если требуется, значения можно изменить с помощью инструмента Вычислить поле.

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

  • Вы можете использовать созданную модель регрессии для выполнения прогнозирования для остальных объектов. Для вычисления прогнозируемых значений необходимо, чтобы в каждом прогнозируемом местоположении были значения для каждой независимой переменной. Если имена полей во входных объектах и прогнозируемых местоположениях не совпадают, предоставляется параметр сопоставления переменных. При сопоставлении независимых переменных поля во Входных объектах и Прогнозируемых местоположениях должны быть одного типа (например, поля типа double сопоставляются с double).

  • Можно повысить скорость работы инструмента Обобщенная линейная регрессия одним из следующих методов:

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

  • Этот инструмент геообработки работает от Spark. Анализ выполняется на настольном компьютере с использованием нескольких ядер параллельно. См. Информация по инструментами GeoAnalytics Desktop, чтобы узнать больше о выполнении анализа.

  • При запуске инструментов GeoAnalytics Desktop анализ выполняется на настольном компьютере. Для оптимальной производительности данные должны быть доступны на настольном компьютере. Если вы используете размещенный векторный слой, рекомендуется использовать ArcGIS GeoAnalytics Server. Если данные находятся не на жестком диске, для запуска инструмента потребуется больше времени. Для использования ArcGIS GeoAnalytics Server в целях выполнения анализа см. раздел Инструменты GeoAnalytics.

  • Обобщенная линейная регрессия в GeoAnalytics имеет следующие ограничения:

    • Это глобальная модель регрессии, которая не учитывает пространственное распределение данных.
    • При анализе к невязке не применяется тест Moran's I.
    • В качестве входных данных поддерживаются наборы данных объектов (точечные, линейные, полигональные или таблицы), растры не поддерживаются.
    • Классифицировать значения по нескольким классам нельзя.

Синтаксис

arcpy.gapro.GeneralizedLinearRegression(input_features, dependent_variable, model_type, explanatory_variables, output_features, {input_features_to_predict}, {explanatory_variables_to_match}, {dependent_variable_mapping}, {output_predicted_features}, {coefficient_table})
ParameterОбъяснениеТип данных
input_features

Слой , содержащий зависимые и независимые переменные.

Table View
dependent_variable

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

Field
model_type

Указывает тип моделируемых данных.

  • CONTINUOUS dependent_variable представлена непрерывными данными. Будет использована модель Гаусса и инструмент вычислит регрессию по методу наименьших квадратов. Это значение по умолчанию.
  • BINARY dependent_variable указывает наличие или отсутствие. Это могут быть как обычные 1 и 0, так и строковые значения, сопоставленные с 0 или 1 в параметре Сопоставить независимые переменные. Используется логистическая модель регрессии.
  • COUNTdependent_variable дискретна и представляет события, например, число преступлений, заболеваний или дорожных происшествий. Используется модель регрессии Пуассона.
String
explanatory_variables
[explanatory_variables,...]

Перечень полей, представляющих независимые переменные в вашей регрессионной модели.

Field
output_features

Имя класса объектов, который будет создан, содержащий оценки зависимых переменных и невязки.

Table; Feature Class
input_features_to_predict
(Дополнительный)

Будет вычислен слой с объектами, которые соответствуют местоположениям, в которых будут вычислены оценки. Каждый объект в этом наборе данных должен содержать значения для всех указанных независимых переменных. Зависимая переменная для этих объектов будет оценена на основании модели, калиброванной для данных во входном слое данных.

Table View
explanatory_variables_to_match
[[Field from Prediction Locations, Field from Input Features],...]
(Дополнительный)

Сопоставляет независимые переменные в параметре input_features_to_predict с соответствующими независимыми переменными в параметре input_features, например, [["LandCover2000", "LandCover2010"], ["Income", "PerCapitaIncome"]].

Value Table
dependent_variable_mapping
[dependent_variable_mapping,...]
(Дополнительный)

Две строки, представляющие значения, используемые для сопоставления с 0 (отсутствие) и 1 (наличие) для бинарной регрессии. По умолчанию будут использоваться 0 и 1. Например, если вы хотите спрогнозировать арест, и у вас есть поля со значениями Арест и Без ареста, вы будете вводить Без ареста для Ложного значения (0) и Арест для Истинного значения (1).

Value Table
output_predicted_features
(Дополнительный)

Выходной класс объектов с оценками зависимых переменных для каждого значения input_features_to_predict.

Выходной класс объектов с оценками зависимых переменных для каждого значения Входных объектов прогнозирования.

Table; Feature Class
coefficient_table
(Дополнительный)

Выходной класс объектов с оценками зависимых переменных для каждого значения input_features_to_predict.

Выходной класс объектов с оценками зависимых переменных для каждого значения Входных объектов прогнозирования.

Table

Пример кода

GeneralizedLinearRegression пример (автономный скрипт)

В следующем автономном скрипте показано, как использовать инструмент GeneralizeLinearRegression.

В этом скрипте создается модель и прогнозируется, был ли произведен арест за преступление.

# Name: GeneralizedLinearRegression.py
# Description: Run GLR on crime data and predict if an arrest was made for a crime reporting.
#
# Requirements: Advanced License
# Import system modules
import arcpy
arcpy.env.workspace = "c:/data/city.gdb"
# Set local variables
trainingDataset = "old_crimes"
predictionDataset = "new_crimes"
outputTrainingName = "training"
outputPredictedName = "predicted"
# Execute Generalize Linear Regression
arcpy.geoanalytics.GeneralizedLinearRegression(
    trainingData, "ArrestMade", "BINARY", "CRIME_TYPE; WARD; DAY_OF_MONTH", 
    outputTrainingName, None, outputPredictedName, 
    "CRIME_TYPE CRIME_TYPE;WARD WARD;DAY_OF_MONTH DAY_OF_MON", 
    "Arrest NoArrest")

Информация о лицензиях

  • Basic: Нет
  • Standard: Нет
  • Advanced: Да

Связанные разделы