고객의 행동을 예측할 수 있는 방법론에 대해 알아보자

본 포스팅은 LG Aimers 수업 내용을 정리한 글로 모든 내용의 출처는 LG Aimers에 있습니다

B2B(Business-to-Business)란?

B2B(Business-to-Business) 또는 기업 대 기업은 기업과 기업 사이의 거래를 기반으로 한 비즈니스 모델을 의미한다. 이와 같은 시장 즉, B2B 시장 혹은 Busuness Market에서는 각각이 다 다른 목적과 생각을 갖고 있을 수 있기에 의사결정에 참여하는 참여자들이 누군지를 파악하고 이들에게 적절한 Marketing과 Sales 전략을 펼쳐나가기 위해 집단 의사결정(Multiple Buying Decision-making process)을 하게 된다.

또한 원자재를 제공하고 있는 혹은 원자재 부분품을 제공하고 있는 Business Market의 Seller의 경우 본인 상품을 직접적으로 구매하는 고객사(LG나 삼성 같이 소비자에게 물품을 파는 기업)뿐 아니라 고객사의 고객까지도 생각해야 하는 파생 수요(Derived demand)를 고려해야 한다.

B2B 고객 행동 예측 방법론

위의 그림에서 볼 수 있듯이 4가지 요소들을 고려해서 고객의 행동을 예측해볼 수 있다.

첫 번째는 Who 즉, 누구를 Target으로 할 것인지에 대한 것이다. 이러한 Targeting 전에는 목적을 먼저 정해야 한다. 예를 들어, 신제품이 나왔을 때 누가 살 것인지를 보기 위한 것인지, 아니면 원래 꾸준히 때가 되면 판대되던 건데 지금 살 때가 된 사람을 찾기를 원하는 건지 등의 목적으로 Scoring 점수가 높아지거나 낮아진다. 따라서 이러한 다양한 목적을 가진 고객들 중에서 누구(어떠한 잠재 고객이 있는지, 어떤 고객이 이탈에 가까운지)를 찾을 것인지가 중요하다.

두 번째는 What에 관련된 것으로, Targeting한 고객에게 무언가를 제공해야 하는데 우리 회사가 보유하고 있는 수많은 제품과 Service 중에서 무엇이 돼야 되는지를 거꾸로 찾아서 고객에게 제공해야 한다.

세 번째는 When 으로 똑같은 상품을 똑같은 고객에게 팔더라도 Timing을 고려하여 우리가 언제 저 고객한테 더 높은 Score를 배정하고 아니면 낮게 해야하는지에 대해 생각해야 한다.

네 번째는 How much로 해당 고객에게 무엇을 팔고, 언제 팔지까지 정의가 됐어도 시점에 맞게 얼마만큼의 물량(매출)을 제안하는 것이 맞냐에 대한 항목이다.

각 Box 하단을 보면 해당 박스 항목들을 잘 수행하는 데에 있어서 유리한 방법론들이 List-Up 되어 있다.

특히 Who 박스, 다시 말해서 누가 구매를 하고, 구매하지 않았는지 혹은 누가 이탈을 했었고, 하지 않았는지에 대한 Y값 정보가 주어졌을 때 누가 Score가 높고 누구는 Score가 낮아서 Score가 높은 사람한테는 Offer를 주고, 낮은 사람한테는 안 줘야겠다와 같이 분류 문제로 정의할 수 있는데, 이러한 예측 문제는 지도학습 중에서도 Binary Classification 문제로 일반화 시킬 수 있다. 따라서 해당 문제는 이번 포스팅에서 소개할 Logistic regression이나 ANN 등의 알고리즘(방법론)을 통해 해결 가능하다.

또한, What 박스, 다시 말해서 어떠한 제품을 Scoring해서 주는 것이 중요한지에 대한 문제를 해결하는 알고리즘은 대표적으로 2가지가 있으며 둘 다 Recommendation을 수행하는 걸로 알려져 있는 알고리즘이다. 이러한 2개의 알고리즘은 비슷한 사용자를 탐색한 다음에 이 사람은 특정 물건을 사봤기 때문에 비슷한 사람들한테는 아직 경험하지 못한 다른 제품도 추천할 수 있는 Scoring에 높은 배점을 부여할 수 있는 근거가 된다.

고객 행동을 예측하는 Scoring 방법

고객 행동을 예측하는 Scoring을 하려면 Data Analytics를 수행해야 한다. 이러한 Data Analytics는 아래의 세 가지로 구성이 된다.

  • Descriptive Analytics : 과거랑 최근까지 있었던 Data를 관찰하고 분석해서 특정 Pattern을 찾아낸다. 따라서 과거 Data에 대한 이해에 집중이 되어 있어 Reporting하고, Data에서 insight를 얻을 수 있도록 Data visuallization하고 그런 것들을 담아서 Dashboard를 만들고 Scorecard방식으로 정보를 공유한다.

  • Predicive Analytics : 과거에 대한 이해를 바탕으로 미래에 어떤 일이 벌어질지를 미리 예측해서 정량지표로 Scoring을 하고 정성지표로 Memo를 남겨서 미래에 있을 범직한 Event를 예측한다. Predicive Analytics를 하기 위해 본 포스팅에서 다루는 방법론을 쓰고 분석을 하는 것이다.

  • Presciptive Analytics : 예측치를 기반으로 누구한테 어떻게 Marketing Budget Portfolio를 짜서 최적의 Promotion을 하는 등의 자원 배분을 최적화하기 위해 Simulation과 Optimization까지 하는 궁극의 경지라고 생각해볼 수 있다.

Scoring을 수행할 때 아래 3단계의 Data Analytics 관련된 알고리즘의 고도화 측면을 Y축, 사용되어 지는 Data의 Source에 대한 고도화 측면을 X축으로 한 Roadmap을 참고하면 좋다.

동일한 방법론을 쓰면서 Data를 확장하면 더 고도화 된 Scoring을 할 수 있으며, 마찬가지로 동일한 Data를 쓰면서 알고리즘을 고도화 시키면 정확도가 올라갈 수 있다.

고객에게 최적의 상품을 제시하는 추천 알고리즘

고객에게 최적의 상품을 제시하는 추천 알고리즘에는 앞서 설명한 4가지 Box중 What Box에서도 보았듯이 크게 두 가지가 있다.

첫 번째 알고리즘은 Conten-based Recommendation(Filtering)이다. 이 방법론은 어떤 Target User가 원하는 상품이 있을 때, 이와 비슷한 상품을 찾아내어 추천해주는 방법이다. 아래 그림의 수식에서 볼 수 있듯이 Target 고객이 상품에 대한 지속적인 수요가 있다는 것들을 해당 고객(회사)의 Content-based Profile이라 할 수 있는데 이러한 Content-based 정보를 기반으로 통계로 만들어서 해당 고객의 Preference라고 할 수 있다. 이 Preference와 비슷한 속성을 가진 Contents들을 Similarity 함수를 사용해 Score를 만들어내고 1등부터 하위까지 점수를 매긴 다음에 Best 상품들을 발굴하는 것이 Top10 추천 결과이다.

두 번째 알고리즘은 Collaborative Recommendation(Filtering)으로 비슷한 고객의 선호 Pattern, 다시 말해서 뭘 구매했고, 뭘 관심 있어 했는지의 패턴을 통해 상품에 대한 속성 정보가 없이도 유사 사용자를 찾음으로써 특정 개인에게 맞춤형 상품을 추천해주는 방법이다. 이 알고리즘은 아래 그림의 수식에서 볼 수 있듯이 어떤 고객들의 Selection(c)이 있고 또 다른 고객들의 Selection(c’)이 있으면 특정 Target Customer에 대해서 전체 set에서 다른 사용자들이 얼마나 비슷하고 얼마나 안 비슷한지를 공간상에서 Similarity Matrix를 써서 유사 사용자를 탐색 한다. 이는 우리가 어떤 영상을 봤을 때 그런 영상을 비슷하게 봤던 사람들이 그 다음에 뭘 봤는지를 학습해서 추천해주는 유튜브 알고리즘에서 사용하는 방법이다.

아래 그림에서 마지막 행에 있는 Hybrid Approach는 최근에 사용하는 방법으로 한쪽 방법론만 선택해서 Data가 부족하거나 추천 결과가 포화할 수 있는 문제를 방지하기 위해 Conten-based Recommendation과 Collaborative Recommendation을 적절히 혼용하는 방법이다.

B2B환경에서는 사용자 Pool이 일반적인 상황과는 반대로 Traffic이 약하기 때문에 Conten-based Recommendation(Filtering) 중심으로 Scoring을 하는 게 더 유리하다.

Logistic Regression과 ANN

앞서 Who 박스에서 언급한 것과 같이 Binary Classificaiton 문제를 풀기 위해서 전통적인 기계학습 알고리즘(Logistic Regression)도 사용되고 딥러닝 알고리즘(ANN)도 사용된다.

로지스틱 회귀분석(Logistic Regression)은 목적변수가 0과 1 로 주어지는 Binary Classificaiton 문제를 푸는데에 최적화 되어 있다. 여기서 목적변수가 0과 1이라는 것은 B2B 환경에서 고객을 예측하는 것과 비슷하다. 예를 들어 고객들 중 누가 이탈할 것인가, 누가 신제품을 구매할 것 인가, 아니면 누가 이번 시즌에 새롭게 거래를 추가할 것인가 등이 목적 변수 Y가 1에 해당하는 사항이고 그렇지 않은 고객들은 Y가 0인 상황이다. 이런 Data들이 우리 Panel에 존재하고 어떤 고객들이 1에 더 가까운 Pattern을 보이는지를 찾아서 Scoring할 때 로지스틱 회귀분석을 통해 예시로 든 사항에 최적화된 Curve Fitting과 Scoring결과를 만들 수 있다.

위와 같은 예시 상황과 같이 독립 변수가 비선형적으로 영향을 미칠 때 Logistic Regression이 제일 잘 Capture하는 방법론이다.이러한 로지스틱 회귀분석에서 주요 수식의 유도 과정은 아래 그림과 같다.

위 그림에서 i는 허수가 아닌 index이며, Deep Neural Network(DNN)에서 Active Function 중 Sigmoid 함수가 여기서 뿌리를 두고 있음을 알 수 있다.

또한, Binary Classificaiton 문제를 풀기 위해서 딥러닝 알고리즘(ANN)이 사용된다. 참고로 이러한 인공신경망(ANN)의 종류에는 DNN,CNN,RNN가 있다.

Universal Approximation Theorem에 의하면 Deep Learning 알고리즘은 특정 함수가 주어졌을 때 Layer를 통해 거의 그 함수와 비슷하게 작동하는 함수를 복구 가능하다. 예를 들어, 아래 그림과 같이 3차 방정식이 주어져 있을 때 ReLU 함수를 통해 하나의 Layer를 가지는 기본적인 Neural Network 상에서도 Data를 학습시키면 함수를 구간별로 쪼개가면서 구간별로 ReLU 함수를 적용해 3차함수의 패턴을 추정 가능하다.

다시 말해서 Input 텀에 대해서 Output을 주는 방식으로 통합 함수를 변환해서 만들어 놓고 Active Function(Sigmoid, tanh, ReLU, Softmax 등)을 잘 선택해서 함수 간의 관계를 Nueral에다가 학습을 시키면 어떠한 패턴이든 학습이 가능하다.

정리하자면 Binary Classifiction 문제에 특화된 것이 Logistic Regression이고 Multi Classification의 경우 ANN을 사용해야 한다. 만약 Binary Classification 문제에서 Data가 충분할 경우, ANN(Articial Neural Network)이 더 높은 정확도를 줄 것이고, Data가 충분하지 않지만 Data들의 분포가 누운 S자와 같은 상황일 경우 로지스틱 회귀분석(Logistic Regression)이 더 높은 정확도를 가질 것이다.

태그:

카테고리:

업데이트:

댓글남기기