선형 회귀 모델 쿼리 예제Linear Regression Model Query Examples

적용 대상:예SQL Server Analysis Services아니요Azure Analysis ServicesAPPLIES TO:yesSQL Server Analysis ServicesnoAzure Analysis Services데이터 마이닝 모델에 대 한 쿼리를 만들 때 분석 중에 발견 된 패턴에 대 한 세부 정보를 제공 하는 내용 쿼리를 만들 수 있습니다 또는 패턴을 사용 하는 모델에 새 데이터에 대 한 예측을 만드는 예측 쿼리를 만들 수 있습니다. When you create a query against a data mining model, you can create a content query, which provides details about the patterns discovered in analysis, or you can create a prediction query, which uses the patterns in the model to make predictions for new data. 예를 들어 내용 쿼리는 회귀 수식에 대한 추가 정보를 제공하지만 예측 쿼리는 새 데이터 요소가 모델에 맞는지 여부를 알려 줍니다.For example, a content query might provide additional details about the regression formula, while a prediction query might tell you if a new data point fits the model. 쿼리를 사용하여 모델에 대한 메타데이터를 검색할 수도 있습니다.You can also retrieve metadata about the model by using a query.

이 섹션에서는 Microsoft 선형 회귀 알고리즘을 기반으로 하는 모델에 대해 쿼리를 만드는 방법을 설명합니다.This section explains how to create queries for models that are based on the Microsoft Linear Regression algorithm.

참고

선형 회귀는 Microsoft 의사 결정 트리 알고리즘의 특수한 사례를 기반으로 하므로 비슷한 점이 많으며, 예측 가능한 연속 특성을 사용하는 일부 의사 결정 트리 모델에는 회귀 수식이 포함될 수 있습니다.Because linear regression is based on a special case of the Microsoft Decision Trees algorithm, there are many similarities, and some decision tree models that use continuous predictable attributes can contain regression formulas. 자세한 내용은 Microsoft 의사 결정 트리 알고리즘 기술 참조를 참조하세요.For more information, see Microsoft Decision Trees Algorithm Technical Reference.

내용 쿼리Content queries

데이터 마이닝 스키마 행 집합을 사용하여 모델에 사용되는 매개 변수 확인Using the Data Mining Schema Rowset to determine parameters used for a model

DMX를 사용하여 모델의 회귀 수식 반환Using DMX to return the regression formula for the model

모델의 계수만 반환Returning only the coefficient for the model

예측 쿼리Prediction queries

단일 쿼리를 사용하여 수입 예측Predicting income using a singleton query

회귀 모델에 예측 함수 사용Using prediction functions with a regression model

선형 회귀 모델에 대한 정보 찾기Finding Information about the Linear Regression Model

선형 회귀 모델의 구조는 매우 단순하여 마이닝 모델은 데이터를 단일 노드로 나타내고 이 노드는 회귀 수식을 정의합니다.The structure of a linear regression model is extremely simple: the mining model represents the data as a single node, which defines the regression formula. 자세한 내용은 로지스틱 회귀 분석 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)를 참조하세요.For more information, see Mining Model Content for Logistic Regression Models (Analysis Services - Data Mining).

맨 위로 이동Return to Top

예제 쿼리 1: 데이터 마이닝 스키마 행 집합을 사용하여 모델에 사용된 매개 변수 확인Sample Query 1: Using the Data Mining Schema Rowset to Determine Parameters Used for a Model

데이터 마이닝 스키마 행 집합을 쿼리하면 모델에 대한 메타데이터를 찾을 수 있습니다.By querying the data mining schema rowset, you can find metadata about the model. 이러한 메타데이터로는 모델이 만들어진 시기, 모델이 마지막으로 처리된 시기, 모델의 기반이 되는 마이닝 구조의 이름, 예측 가능한 특성으로 지정된 열 이름 등이 포함됩니다.This might include when the model was created, when the model was last processed, the name of the mining structure that the model is based on, and the name of the column designated as the predictable attribute. 모델을 처음으로 만들 때 사용한 매개 변수를 반환할 수도 있습니다.You can also return the parameters that were used when the model was first created.

SELECT MINING_PARAMETERS   
FROM $system.DMSCHEMA_MINING_MODELS  
WHERE MODEL_NAME = 'TM_PredictIncome'  

예제 결과:Sample results:

MINING_PARAMETERSMINING_PARAMETERS
COMPLEXITY_PENALTY=0.9,COMPLEXITY_PENALTY=0.9,

MAXIMUM_INPUT_ATTRIBUTES=255,MAXIMUM_INPUT_ATTRIBUTES=255,

MAXIMUM_OUTPUT_ATTRIBUTES=255,MAXIMUM_OUTPUT_ATTRIBUTES=255,

MINIMUM_SUPPORT=10,MINIMUM_SUPPORT=10,

SCORE_METHOD=4,SCORE_METHOD=4,

SPLIT_METHOD=3,SPLIT_METHOD=3,

FORCE_REGRESSOR=FORCE_REGRESSOR=

참고

매개 변수 설정 "FORCE_REGRESSOR = "는 FORCE_REGRESSOR 매개 변수의 현재 값이 Null임을 나타냅니다.The parameter setting, "FORCE_REGRESSOR = ", indicates that the current value for the FORCE_REGRESSOR parameter is null.

맨 위로 이동Return to Top

예제 쿼리 2: 모델의 회귀 수식 검색Sample Query 2: Retrieving the Regression Formula for the Model

다음 쿼리는 Basic Data Mining Tutorial에서 사용한 타겟 메일링 데이터 원본을 사용하여 작성한 선형 회귀 모델의 마이닝 모델 콘텐츠를 반환합니다.The following query returns the mining model content for a linear regression model that was built by using the same Targeted Mailing data source that was used in the Basic Data Mining Tutorial. 이 모델은 나이에 따른 고객 수입을 예측합니다.This model predicts customer income based on age.

이 쿼리는 회귀 수식이 들어 있는 노드의 콘텐츠를 반환합니다.The query returns the contents of the node that contains the regression formula. 각 변수 및 계수는 NODE_DISTRIBUTION 중첩 테이블의 개별 행에 저장되어 있습니다.Each variable and coefficient is stored in a separate row of the nested NODE_DISTRIBUTION table. 전체 회귀 수식을 보려면 Microsoft 트리 뷰어에서 (All) 노드를 클릭하고 마이닝 범례를 엽니다.If you want to view the complete regression formula, use the Microsoft Tree Viewer, click the (All) node, and open the Mining Legend.

SELECT FLATTENED NODE_DISTRIBUTION as t  
FROM LR_PredictIncome.CONTENT  

참고

SELECT <column name> from NODE_DISTRIBUTION과 같은 쿼리를 사용하여 중첩 테이블의 개별 열을 참조하는 경우 SUPPORT 또는 PROBABILITY등의 일부 열은 대괄호로 묶어 동일한 이름의 예약 키워드와 구별해야 합니다.If you reference individual columns of the nested table by using a query such as SELECT <column name> from NODE_DISTRIBUTION, some columns, such as SUPPORT or PROBABILITY, must be enclosed in brackets to distinguish them from reserved keywords of the same name.

예상 결과:Expected results:

T.ATTRIBUTE_NAMEt.ATTRIBUTE_NAME t.ATTRIBUTE_VALUEt.ATTRIBUTE_VALUE t.SUPPORTt.SUPPORT t.PROBABILITYt.PROBABILITY t.VARIANCEt.VARIANCE t.VALUETYPEt.VALUETYPE
Yearly IncomeYearly Income MissingMissing 00 0.0004571428571428570.000457142857142857 00 11
Yearly IncomeYearly Income 57220.887668725757220.8876687257 1748417484 0.9995428571428570.999542857142857 1041275619.527761041275619.52776 33
AgeAge 471.687717702463471.687717702463 00 00 126.969442359327126.969442359327 77
AgeAge 234.680904692439234.680904692439 00 00 00 88
AgeAge 45.426961793639945.4269617936399 00 00 126.969442359327126.969442359327 99
35793.547738126735793.5477381267 00 00 1012968919.283721012968919.28372 1111

반면 마이닝 범례에서 회귀 수식은 다음과 같이 나타납니다.In comparison, in the Mining Legend, the regression formula appears as follows:

Yearly Income = 57,220.919 + 471.688 * (Age - 45.427)

마이닝 범례에서는 일부 숫자가 반올림되는 것을 알 수 있지만 NODE_DISTRIBUTION 테이블과 마이닝 범례 에 들어 있는 값은 기본적으로 동일합니다.You can see that in the Mining Legend, some numbers are rounded; however, the NODE_DISTRIBUTION table and the Mining Legend essentially contain the same values.

VALUETYPE 열의 값은 각 행에 들어 있는 정보의 종류를 나타내며 이는 결과를 프로그래밍 방식으로 처리할 경우에 유용합니다.The values in the VALUETYPE column tell you what kind of information is contained in each row, which is useful if you are processing the results programmatically. 다음 표에서는 선형 회귀 수식에 대해 출력되는 값 유형을 보여 줍니다.The following table shows the value types that are output for a linear regression formula.

VALUETYPEVALUETYPE
1(누락)1 (Missing)
3(연속)3 (Continuous)
7(계수)7 (Coefficient)
8(득점)8 (Score Gain)
9(통계)9 (Statistics)
7(계수)7 (Coefficient)
8(득점)8 (Score Gain)
9(통계)9 (Statistics)
11(절편)11 (Intercept)

회귀 모델에 대한 각각의 값 형식의 의미는 선형 회귀 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)를 참조하세요.For more information about the meaning of each value type for regression models, see Mining Model Content for Linear Regression Models (Analysis Services - Data Mining).

맨 위로 이동Return to Top

예제 쿼리 3: 모델의 계수만 반환Sample Query 3: Returning Only the Coefficient for the Model

다음 쿼리와 같이 VALUETYPE 열거형을 사용하면 회귀 수식의 계수만 반환할 수 있습니다.By using the VALUETYPE enumeration, you can return only the coefficient for the regression equation, as shown in the following query:

SELECT FLATTENED MODEL_NAME,  
    (SELECT ATTRIBUTE_VALUE, VALUETYPE  
     FROM NODE_DISTRIBUTION  
     WHERE VALUETYPE = 11)   
AS t  
FROM LR_PredictIncome.CONTENT  

이 쿼리는 두 개의 행을 반환합니다. 하나는 마이닝 모델 콘텐츠에서 가져온 것이고 다른 하나는 계수가 들어 있는 중첩 테이블의 행에서 가져온 것입니다.This query returns two rows, one from the mining model content, and the row from the nested table that contains the coefficient. 계수의 경우 ATTRIBUTE_NAME 열은 항상 비어 있으므로 이 열은 여기에 포함되지 않습니다.The ATTRIBUTE_NAME column is not included here because it is always blank for the coefficient.

MODEL_NAMEMODEL_NAME t.ATTRIBUTE_VALUEt.ATTRIBUTE_VALUE t.VALUETYPEt.VALUETYPE
LR_PredictIncomeLR_PredictIncome
LR_PredictIncomeLR_PredictIncome 35793.547738126735793.5477381267 1111

맨 위로 이동Return to Top

선형 회귀 모델을 사용하여 예측 만들기Making Predictions from a Linear Regression Model

데이터 마이닝 디자이너의 마이닝 모델 예측 탭에서 선형 회귀 모델에 대한 예측 쿼리를 작성할 수 있습니다.You can build prediction queries on linear regression models by using the Mining Model Prediction tab in Data Mining Designer. 예측 쿼리 작성기는 SQL Server Management StudioSQL Server Management StudioSQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT)에서 사용할 수 있습니다.The prediction query builder is available in both SQL Server Management StudioSQL Server Management Studio and SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT).

참고

Excel용 SQL Server 2005SQL Server 2005 데이터 마이닝 추가 기능이나 Excel용 SQL Server 2008SQL Server 2008 데이터 마이닝 추가 기능을 사용하여 회귀 모델에 대한 쿼리를 만들 수도 있습니다.You can also create queries on regression models by using the SQL Server 2005SQL Server 2005 Data Mining Add-ins for Excel or the SQL Server 2008SQL Server 2008 Data Mining Add-ins for Excel. Excel용 데이터 마이닝 추가 기능은 회귀 모델을 만들지 않지만 Analysis ServicesAnalysis Services의 인스턴스에 저장된 마이닝 모델을 찾아보고 쿼리할 수 있습니다.Even though the Data Mining Add-ins for Excel do not create regression models, you can browse and query any mining model that is stored on an instance of Analysis ServicesAnalysis Services.

맨 위로 이동Return to Top

예제 쿼리 4: 단일 쿼리를 사용하여 수입 예측Sample Query 4: Predicting Income using a Singleton Query

회귀 모델에서 단일 쿼리를 만드는 가장 쉬운 방법은 단일 쿼리 입력 대화 상자를 사용하는 것입니다.The easiest way to create a single query on a regression model is by using the Singleton Query Input dialog box. 예를 들어 적절한 회귀 모델을 선택하고 단일 쿼리를 선택한 다음 Age 값으로 20을 입력하여 다음과 같은 DMX 쿼리를 작성할 수 있습니다.For example, you can build the following DMX query by selecting the appropriate regression model, choosing Singleton Query, and then typing 20 as the value for Age.

SELECT [LR_PredictIncome].[Yearly Income]  
From   [LR_PredictIncome]  
NATURAL PREDICTION JOIN  
(SELECT 20 AS [Age]) AS t  

예제 결과:Sample results:

Yearly IncomeYearly Income
45227.30209217645227.302092176

맨 위로 이동Return to Top

예제 쿼리 5: 회귀 모델에 예측 함수 사용Sample Query 5: Using Prediction Functions with a Regression Model

선형 회귀 모델에 여러 표준 예측 함수를 사용할 수 있습니다.You can use many of the standard prediction functions with linear regression models. 다음 예에서는 예측 쿼리 결과에 기술 통계를 추가하는 방법을 보여 줍니다.The following example illustrates how to add some descriptive statistics to the prediction query results. 이러한 결과에서 이 모델의 평균과 상당한 편차가 있다는 것을 알 수 있습니다.From these results, you can see that there is considerable deviation from the mean for this model.

SELECT  
  ([LR_PredictIncome].[Yearly Income]) as [PredIncome],  
  (PredictStdev([LR_PredictIncome].[Yearly Income])) as [StDev1]  
From  
  [LR_PredictIncome]  
NATURAL PREDICTION JOIN  
(SELECT 20 AS [Age]) AS t  

예제 결과:Sample results:

Yearly IncomeYearly Income StDev1StDev1
45227.30209217645227.302092176 31827.172656139631827.1726561396

맨 위로 이동Return to Top

예측 함수 목록List of Prediction Functions

모든 MicrosoftMicrosoft 알고리즘은 공통 함수 집합을 지원합니다.All MicrosoftMicrosoft algorithms support a common set of functions. 그러나 MicrosoftMicrosoft 선형 회귀 알고리즘은 다음 표에 나열된 추가 함수도 지원합니다.However, the MicrosoftMicrosoft Linear Regression algorithm supports the additional functions listed in the following table.

예측 함수Prediction Function 사용법Usage
IsDescendant(DMX)IsDescendant (DMX) 한 노드가 모델에서 다른 노드의 자식인지 여부를 확인합니다.Determines whether one node is a child of another node in the model.
IsInNode(DMX)IsInNode (DMX) 지정한 노드에 현재 사례가 포함되었는지 여부를 나타냅니다.Indicates whether the specified node contains the current case.
PredictHistogram(DMX)PredictHistogram (DMX) 지정한 열에 대한 예측 값을 반환합니다.Returns a predicted value, or set of values, for a specified column.
PredictNodeId(DMX)PredictNodeId (DMX) 각 사례에 대한 Node_ID를 반환합니다.Returns the Node_ID for each case.
PredictStdev(DMX)PredictStdev (DMX) 예측 값의 표준 편차를 반환합니다.Returns standard deviation for the predicted value.
PredictSupport(DMX)PredictSupport (DMX) 지정한 상태에 대한 지원 값을 반환합니다.Returns the support value for a specified state.
PredictVariance(DMX)PredictVariance (DMX) 지정한 열의 분산을 반환합니다.Returns the variance of a specified column.

모든 MicrosoftMicrosoft 알고리즘에 공통적인 함수 목록에 대해서는 데이터 마이닝 알고리즘(Analysis Services - 데이터 마이닝)을 참조하세요.For a list of the functions that are common to all MicrosoftMicrosoft algorithms, see Data Mining Algorithms (Analysis Services - Data Mining). 이러한 함수를 사용하는 방법은 DMX(Data Mining Extensions) 함수 참조를 참조하세요.For more information about how to use these functions, see Data Mining Extensions (DMX) Function Reference.

관련 항목:See Also

Microsoft 선형 회귀 알고리즘 Microsoft Linear Regression Algorithm
데이터 마이닝 쿼리 Data Mining Queries
Microsoft 선형 회귀 알고리즘 기술 참조 Microsoft Linear Regression Algorithm Technical Reference
선형 회귀 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)Mining Model Content for Linear Regression Models (Analysis Services - Data Mining)