Microsoft Naive Bayes 알고리즘Microsoft Naive Bayes Algorithm

MicrosoftMicrosoft Naive Bayes 알고리즘은 Bayes 정리를 기반으로 하는 분류 알고리즘으로, 설명 및 예측 모델링 둘 다에 사용할 수 있습니다.The MicrosoftMicrosoft Naive Bayes algorithm is a classification algorithm based on Bayes’ theorems, and can be used for both exploratory and predictive modeling. Naïve Bayes라는 이름의 naïve는 이 알고리즘이 Bayes 기술을 사용하지만 있을 수 있는 종속성을 고려하지 않는다는 사실에서 비롯된 것입니다.The word naïve in the name Naïve Bayes derives from the fact that the algorithm uses Bayesian techniques but does not take into account dependencies that may exist.

이 알고리즘은 다른 MicrosoftMicrosoft 알고리즘보다 계산 과정이 단순하여 입력 열과 예측 가능한 열 간의 관계를 검색하는 마이닝 모델을 신속하게 생성하는 데 유용합니다.This algorithm is less computationally intense than other MicrosoftMicrosoft algorithms, and therefore is useful for quickly generating mining models to discover relationships between input columns and predictable columns. 이 알고리즘을 사용하여 초기 데이터 탐색을 수행한 후 나중에 그 결과를 적용하여 보다 복잡하고 정확한 다른 알고리즘으로 추가 마이닝 모델을 만들 수 있습니다.You can use this algorithm to do initial exploration of data, and then later you can apply the results to create additional mining models with other algorithms that are more computationally intense and more accurate.

예제Example

진행 중인 홍보 행사 전략의 하나로 Adventure Works Cycle사의 마케팅 부서는 우편으로 전단지를 보내 잠재 고객을 공략하기로 결정했습니다.As an ongoing promotional strategy, the marketing department for the Adventure Works Cycle company has decided to target potential customers by mailing out fliers. 비용을 줄이기 위해 응답 가능성이 큰 고객에게만 전단지를 보내려고 합니다.To reduce costs, they want to send fliers only to those customers who are likely to respond. 회사는 인구 통계 및 이전 우편물에 대한 응답 정보를 데이터베이스에 저장합니다.The company stores information in a database about demographics and response to a previous mailing. 이 데이터를 사용하여 특징이 유사하고 과거에 회사 제품을 구매한 고객과 잠재 고객을 비교하여 연령 및 위치와 같은 인구 통계가 홍보 행사에 대한 응답을 예측하는 데 얼마나 도움이 되는지 확인하려고 합니다.They want to use this data to see how demographics such as age and location can help predict response to a promotion, by comparing potential customers to customers who have similar characteristics and who have purchased from the company in the past. 특히 자전거를 구입한 고객과 구입하지 않은 고객의 차이점을 찾으려고 합니다.Specifically, they want to see the differences between those customers who bought a bicycle and those customers who did not.

마케팅 부서는 MicrosoftMicrosoft Naive Bayes 알고리즘을 사용하여 특정 고객 프로필에 대한 결과를 신속하게 예측할 수 있으므로 전단지에 응답할 가능성이 큰 고객을 결정할 수 있습니다.By using the MicrosoftMicrosoft Naive Bayes algorithm, the marketing department can quickly predict an outcome for a particular customer profile, and can therefore determine which customers are most likely to respond to the fliers. MicrosoftMicrosoftSQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT)Naive Bayes 뷰어를 사용하면 특히 전단지에 대한 긍정적인 응답에 기여한 입력 열을 시각적으로 조사할 수도 있습니다.By using the MicrosoftMicrosoft Naive Bayes Viewer in SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT), they can also visually investigate specifically which input columns contribute to positive responses to fliers.

알고리즘 작동 방법How the Algorithm Works

MicrosoftMicrosoft Naive Bayes 알고리즘은 예측 가능한 열에 가능한 각 상태가 지정되면 각 입력 열의 모든 상태에 대한 확률을 계산합니다.The MicrosoftMicrosoft Naive Bayes algorithm calculates the probability of every state of each input column, given each possible state of the predictable column.

다음 그래픽에 표시된 것처럼 MicrosoftMicrosoftSQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT) Naive Bayes 뷰어를 사용하여 알고리즘의 상태 분포를 시각적으로 탐색함으로써 이 알고리즘의 작동 방식을 이해할 수 있습니다.To understand how this works, use the MicrosoftMicrosoft Naive Bayes Viewer in SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT) (as shown in the following graphic) to visually explore how the algorithm distributes states.

Naive bayes 상태 분포Naive bayes distribution of states

여기에서 MicrosoftMicrosoft Naive Bayes 뷰어는 데이터 집합의 각 입력 열을 나열하고 예측 가능한 열의 각 상태가 지정되면 각 열의 상태 분포를 보여 줍니다.Here, the MicrosoftMicrosoft Naive Bayes Viewer lists each input column in the dataset, and shows how the states of each column are distributed, given each state of the predictable column.

모델의 이 뷰를 사용하여 예측 가능한 열의 상태를 차별화하는 데 중요한 입력 열을 식별할 수 있습니다.You would use this view of the model to identify the input columns that are important for differentiating between states of the predictable column.

예를 들어 여기에 표시된 Commute Distance에 대한 행에서 입력 값의 분포는 구매자와 비구매자가 다릅니다.For example, in the row for Commute Distance shown here, the distribution of input values is visibly different for buyers vs. non-buyers. 이를 통해 Commute Distance = 0-1마일이라는 입력은 잠재적인 예측 요인이라는 사실을 알 수 있습니다.What this tells you is that the input, Commute Distance = 0-1 miles, is a potential predictor.

뷰어에서는 분포에 대한 값도 제공하므로 1-2마일 거리를 통근하는 고객의 경우 자전거를 구입할 확률이 0.387인 반면 자전거를 구입하지 않을 확률은 0.287이라는 것도 확인할 수 있습니다.The viewer also provides values for the distributions, so you can see that for customers who commute from one to two miles to work, the probability of them buying a bike is 0.387, and the probability that they will not buy a bike is 0.287. 이 예에서 알고리즘은 통근 거리와 같은 고객 특징에서 파생된 숫자 정보를 사용하여 고객의 자전거 구입 여부를 예측합니다.In this example, the algorithm uses the numeric information, derived from customer characteristics (such as commute distance), to predict whether a customer will buy a bike.

MicrosoftMicrosoft Naive Bayes 뷰어를 사용하는 방법에 대한 자세한 내용은 Microsoft Naive Bayes 뷰어를 사용하여 모델 찾아보기를 참조하세요.For more information about using the MicrosoftMicrosoft Naive Bayes Viewer, see Browse a Model Using the Microsoft Naive Bayes Viewer.

Naive Bayes 모델에 필요한 데이터Data Required for Naive Bayes Models

Naive Bayes 모델을 학습하는 데 사용할 데이터를 준비할 때는 필요한 데이터의 양과 사용법을 비롯하여 해당 알고리즘의 요구 사항을 알고 있어야 합니다.When you prepare data for use in training a Naive Bayes model, you should understand the requirements for the algorithm, including how much data is needed, and how the data is used.

Naive Bayes 모델의 요구 사항은 다음과 같습니다.The requirements for a Naive Bayes model are as follows:

  • 단일 키 열 각 모델은 각 레코드를 고유하게 식별하는 숫자 또는 텍스트 열을 하나 포함해야 합니다.A single key column Each model must contain one numeric or text column that uniquely identifies each record. 복합 키는 사용할 수 없습니다.Compound keys are not allowed.

  • 입력 열 Naive Bayes 모델에서는 모든 열이 불연속이거나 값이 범주화된 상태여야 합니다.Input columns In a Naive Bayes model, all columns must be either discrete, or the values must have been binned. 열을 불연속화(범주화)하는 방법에 대한 자세한 내용은 분할 메서드(데이터 마이닝)를 참조하세요.For information about how to discretize (bin) columns, see Discretization Methods (Data Mining).

  • 변수는 독립적이어야 합니다.Variables must be independent. Naive Bayes 모델의 경우 입력 특성이 서로 독립적인지도 확인해야 합니다.For a Naive Bayes model, it is also important to ensure that the input attributes are independent of each other. 이는 예측을 위해 이 모델을 사용하는 경우에 특히 중요합니다.This is particularly important when you use the model for prediction. 이미 밀접하게 관련된 두 열의 데이터를 사용하는 경우 두 열의 영향이 확대되므로 결과에 영향을 미치는 다른 요인이 불명확해질 수 있습니다.If you use two columns of data that are already closely related, the effect would be to multiply the influence of those columns, which can obscure other factors that influence the outcome.

    반대로 이 알고리즘에서 변수 간의 상관 관계를 식별하는 기능은 입력 간의 관계를 식별하기 위해 모델이나 데이터 집합을 탐색하는 경우에 유용합니다.Conversely, the ability of the algorithm to identify correlations among variables is useful when you are exploring a model or dataset, to identify relationships among inputs.

  • 하나 이상의 예측 가능한 열 예측 가능한 특성에는 불연속 값 또는 불연속화된 값이 포함되어야 합니다.At least one predictable column The predictable attribute must contain discrete or discretized values.

    예측 가능한 열의 값은 입력으로 처리할 수 있습니다.The values of the predictable column can be treated as inputs. 이 방법은 열 간의 관계를 찾기 위해 새 데이터 집합을 탐색하는 경우에 유용할 수 있습니다.This practice can be useful when you are exploring a new dataset, to find relationships among the columns.

모델 보기Viewing the Model

Microsoft Naive Bayes 뷰어를 사용하여 모델을 탐색할 수 있습니다.To explore the model, you can use the Microsoft Naive Bayes Viewer. 이 뷰어에서는 입력 특성과 예측 가능한 특성의 관계를 보여 줍니다.The viewer shows you how the input attributes relate to the predictable attribute. 또한 뷰어에서는 각 클러스터에 대한 자세한 프로필, 각 클러스터를 다른 클러스터와 구별하게 해 주는 특성 목록 및 전체 학습 데이터 집합의 특성도 제공합니다.The viewer also provides a detailed profile of each cluster, a list of the attributes that distinguish each cluster from the others, and the characteristics of the entire training data set. 자세한 내용은 Microsoft Naive Bayes 뷰어를 사용하여 모델 찾아보기를 참조하세요.For more information, see Browse a Model Using the Microsoft Naive Bayes Viewer.

자세한 내용을 보려면 Microsoft 일반 콘텐츠 트리 뷰어(데이터 마이닝)에서 모델을 살펴보세요.If you want to know more detail, you can browse the model in the Microsoft Generic Content Tree Viewer (Data Mining). 모델에 저장된 정보 유형에 대한 자세한 내용은 Naive Bayes 모델에 대한 마이닝 모델 콘텐츠(Analysis Services - 데이터 마이닝)을 참조하세요.For more information about the type of information stored in the model, see Mining Model Content for Naive Bayes Models (Analysis Services - Data Mining).

예측Making Predictions

모델을 학습한 후에는 그 결과가 일련의 패턴으로 저장되며 이러한 패턴을 탐색하거나 사용하여 예측을 만들 수 있습니다.After the model has been trained, the results are stored as a set of patterns, which you can explore or use to make predictions.

새 데이터와 예측 가능한 특성의 관계에 대한 예측을 반환하는 쿼리를 만들거나 모델에서 발견된 상관 관계를 설명하는 통계를 검색할 수 있습니다.You can create queries to return predictions about how new data relates to the predictable attribute, or you can retrieve statistics that describe the correlations found by the model.

데이터 마이닝 모델에 대한 쿼리를 만드는 방법에 대한 자세한 내용은 데이터 마이닝 쿼리를 참조하세요.For information about how to create queries against a data mining model, see Data Mining Queries. Naive Bayes 모델에서 쿼리를 사용하는 방법의 예는 Naive Bayes 모델 쿼리 예제를 참조하세요.For examples of how to use queries with a Naive Bayes model, see Naive Bayes Model Query Examples.

주의Remarks

  • PMML(Predictive Model Markup Language)을 사용하여 마이닝 모델을 만들 수 있습니다.Supports the use of Predictive Model Markup Language (PMML) to create mining models.

  • 드릴스루를 지원합니다.Supports drillthrough.

  • 데이터 마이닝 차원의 생성은 지원하지 않습니다.Does not support the creation of data mining dimensions.

  • OLAP 마이닝 모델의 사용을 지원합니다.Supports the use of OLAP mining models.

관련 항목:See Also

데이터 마이닝 알고리즘(Analysis Services - 데이터 마이닝) Data Mining Algorithms (Analysis Services - Data Mining)
기능 선택 ( 데이터 마이닝 ) Feature Selection (Data Mining)
Naive Bayes 모델 쿼리 예제 Naive Bayes Model Query Examples
Naive Bayes 모델 (에 대 한 마이닝 모델 콘텐츠 Analysis Services-데이터 마이닝 ) Mining Model Content for Naive Bayes Models (Analysis Services - Data Mining)
Microsoft Naive Bayes 알고리즘 기술 참조Microsoft Naive Bayes Algorithm Technical Reference