KR102670688B1 - 인공 신경망을 이용한 클라이언트 세분화를 위한 방법, 장치 및 명령어들을 저장한 기록 매체 - Google Patents
인공 신경망을 이용한 클라이언트 세분화를 위한 방법, 장치 및 명령어들을 저장한 기록 매체 Download PDFInfo
- Publication number
- KR102670688B1 KR102670688B1 KR1020230141102A KR20230141102A KR102670688B1 KR 102670688 B1 KR102670688 B1 KR 102670688B1 KR 1020230141102 A KR1020230141102 A KR 1020230141102A KR 20230141102 A KR20230141102 A KR 20230141102A KR 102670688 B1 KR102670688 B1 KR 102670688B1
- Authority
- KR
- South Korea
- Prior art keywords
- client
- data set
- segmentation result
- type
- neural network
- Prior art date
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 91
- 238000000034 method Methods 0.000 title claims description 32
- 230000011218 segmentation Effects 0.000 claims abstract description 236
- 238000012549 training Methods 0.000 claims abstract description 30
- 230000015654 memory Effects 0.000 claims description 18
- 238000005516 engineering process Methods 0.000 abstract description 8
- 235000013305 food Nutrition 0.000 description 29
- 238000004891 communication Methods 0.000 description 14
- 230000014509 gene expression Effects 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000010801 machine learning Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000010411 cooking Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 208000025721 COVID-19 Diseases 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000007865 diluting Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 개시는 인공 신경망을 이용하여 클라이언트를 세분화하는 기술을 제안한다. 본 개시에 따르면, 제1 유형의 제1 데이터 세트를 기초로 생성된 기존 클라이언트 세분화 결과를 획득하고, 제1 유형의 제2 데이터 세트에 기초하여 제1 클라이언트 세분화 결과를 생성하고, 제2 유형의 제1 데이터 세트 및 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제1 인공 신경망을 학습시키고, 제2 유형의 제2 데이터 세트를 학습된 제1 인공 신경망에 인가하고, 제2 유형의 제2 데이터 세트에 대응하는 학습된 제1 인공 신경망의 출력 데이터 세트에 기초하여, 제2 클라이언트 세분화 결과를 생성하고, 제2 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정할 수 있다.
Description
본 개시는 클라이언트를 세분화하는 기술에 관한 것으로, 더 구체적으로는 인공 신경망을 이용하여 클라이언트를 세분화하는 기술에 관한 것이다.
전자상거래 서비스는 데이터에 기반을 둔 마케팅을 수반할 수 있다. 예를 들어, 성별, 연령, 주소 등과 같이 사용자들로부터 회원가입 과정에서 입력 받는 데이터, 전자상거래 서비스 내에서의 사용자들의 행동 데이터(예: 클릭/구매하거나 장바구니에 담은 상품 등) 등에 기초하여, 특정 주제(예: 요리)에 따라 사용자들을 세분화하고, 세분화 결과에 기초하여 다양한 마케팅 활동(예: 이메일 발송, 푸시 메시지 발송, 웹 페이지 내에 메시지 출력 등)이 이루어질 수 있다.
전자상거래 서비스의 사용자들을 세분화하는 데에는, 사람이 정한 규칙(예: 최근 한 달간 등산용품을 1회 이상 구입하였는가)에 따라 세분화하는 규칙 기반 알고리즘이나, 정답 레이블을 필요로 하지 않는 머신러닝 기법인 비지도 학습(unsupervised learning) 알고리즘이 일반적으로 이용되어 왔다. 그러나 규칙 기반 알고리즘이나 비지도 학습 알고리즘을 이용할 경우, 특정 집단에 속한 사용자의 수가 너무 적게 세분화되거나, 데이터 패턴상 특정 집단에 속한 사용자들과 유사함에도 불구하고 그 집단에서 누락되는 사용자들이 발생할 수 있다. 규칙을 수정하거나 비지도 학습 알고리즘의 파라미터(예: 클러스터 개수, 거리 계산법 등)를 수정하는 등의 방식으로 집단을 확장할 수 있으나, 오히려 여러 집단이 부적절하게 병합되어 원래 집단의 의미가 희석되어버리거나, 데이터 패턴이 유사하지 않은 사용자들까지도 집단에 포함되어버리는 등의 또 다른 문제가 발생할 수 있다. 더구나 이러한 방식의 집단 확장을 위해서는, 특정 주제로 세분화를 할 때마다 사람이 세분화 결과와 데이터를 분석하고 규칙이나 파라미터를 일일이 수정하면서 세분화를 반복하는 과정을 거쳐야만 하는데, 이러한 사람의 개입은 데이터 기반 세분화의 효율성과 객관성을 해칠 수 있다. 한편, 세분화에는 정답이 존재하지 않기 때문에 지도 학습(supervised learning) 알고리즘을 이용하기도 어렵다.
본 개시는, 상술한 종래 기술의 문제점을 해결하기 위한 것으로, 인공 신경망을 이용하여 클라이언트를 세분화하는 기술을 제공한다.
일 실시예에 따른 하나 이상의 프로세서 및 하나 이상의 프로세서에 의해 실행되기 위한 명령어들이 저장된 하나 이상의 메모리를 포함하는 장치에서 수행되는 클라이언트 세분화 방법은, 제1 유형의 제1 데이터 세트를 기초로 생성된 기존 클라이언트 세분화 결과를 획득하는 단계; 제1 유형의 제2 데이터 세트에 기초하여 제1 클라이언트 세분화 결과를 생성하는 단계; 제2 유형의 제1 데이터 세트 및 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제1 인공 신경망을 학습시키는 단계; 제2 유형의 제2 데이터 세트를 학습된 제1 인공 신경망에 인가하는 단계; 제2 유형의 제2 데이터 세트에 대응하는 학습된 제1 인공 신경망의 출력 데이터 세트에 기초하여, 제2 클라이언트 세분화 결과를 생성하는 단계; 및 제2 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하는 단계를 포함할 수 있다.
일 실시예에 따른 제1 유형의 제1 데이터 세트 및 제2 유형의 제1 데이터 세트 각각은 제1 시간 기간에 대한 데이터 세트이고, 제1 유형의 제2 데이터 세트 및 제2 유형의 제2 데이터 세트 각각은 제1 시간 기간 이후인 제2 시간 기간에 대한 데이터 세트일 수 있다.
일 실시예에 따른 기존 클라이언트 세분화 결과의 생성은 규칙 기반 알고리즘(rule-based algorithm) 또는 비지도 학습(unsupervised learning) 알고리즘 중 적어도 하나를 사용하여 수행된 것일 수 있다.
일 실시예에 따른 제1 유형의 제2 데이터 세트에 기초하여 제1 클라이언트 세분화 결과를 생성하는 단계는, 제1 조건에 기초하여 제1 클라이언트 서브세트를 식별하는 단계; 및 제1 클라이언트 서브세트에 대한 제1 유형의 제2 데이터 세트에 기초하여, 규칙 기반 알고리즘 또는 비지도 학습 알고리즘 중 적어도 하나를 사용하여 제1 클라이언트 세분화 결과를 생성하는 단계를 포함할 수 있다.
일 실시예에 따른 제1 조건과 상이한 제2 조건에 기초하여 제2 클라이언트 서브세트를 식별하는 단계를 더 포함하고, 제2 유형의 제1 데이터 세트 및 제2 유형의 제2 데이터 세트 각각은 제2 클라이언트 서브세트에 대한 데이터 세트일 수 있다.
일 실시예에 따른 제2 클라이언트 서브세트는 제1 클라이언트 서브세트와 적어도 부분적으로 중복될 수 있다.
일 실시예에 따른 제2 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하는 단계는, 제1 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속하지 않음을 표시하고, 제2 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하는 경우, 제1 클라이언트 세분화 결과를 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하도록 수정하는 단계를 포함할 수 있다.
일 실시예에 따른 제3 유형의 제1 데이터 세트 및 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제2 인공 신경망을 학습시키는 단계; 제3 유형의 제2 데이터 세트를 학습된 제2 인공 신경망에 인가하는 단계; 및 제3 유형의 제2 데이터 세트에 대응하는 학습된 제2 인공 신경망의 출력 데이터 세트에 기초하여, 제3 클라이언트 세분화 결과를 생성하는 단계를 더 포함하고, 제1 클라이언트 세분화 결과를 수정하는 단계는, 제2 클라이언트 세분화 결과 및 제3 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하는 단계를 포함할 수 있다.
일 실시예에 따른 제2 클라이언트 세분화 결과 및 제3 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하는 단계는, 제1 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속하지 않음을 표시하고, 제2 클라이언트 세분화 결과 또는 제3 클라이언트 세분화 결과 중 적어도 하나는 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하는 경우, 제1 클라이언트 세분화 결과를 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하도록 수정하는 단계를 포함할 수 있다.
일 실시예에 따른 제2 유형의 제1 데이터 세트 및 제2 유형의 제2 데이터 세트 각각은 전자상거래 서비스 내에서의 클릭에 대한 데이터 세트이고, 제3 유형의 제1 데이터 세트 및 제3 유형의 제2 데이터 세트 각각은 전자상거래 서비스 내에서의 구매에 대한 데이터 세트일 수 있다.
다른 실시예에 따른 장치로서, 하나 이상의 프로세서; 및 하나 이상의 프로세서에 의한 실행 시, 하나 이상의 프로세서가 연산을 수행하도록 하는 명령어들이 저장된 하나 이상의 메모리를 포함하고, 하나 이상의 프로세서는, 제1 유형의 제1 데이터 세트를 기초로 생성된 기존 클라이언트 세분화 결과를 획득하고, 제1 유형의 제2 데이터 세트에 기초하여 제1 클라이언트 세분화 결과를 생성하고, 제2 유형의 제1 데이터 세트 및 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제1 인공 신경망을 학습시키고, 제2 유형의 제2 데이터 세트를 학습된 제1 인공 신경망에 인가하고, 제2 유형의 제2 데이터 세트에 대응하는 학습된 제1 인공 신경망의 출력 데이터 세트에 기초하여, 제2 클라이언트 세분화 결과를 생성하고, 제2 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정할 수 있다.
다른 실시예에 따른 하나 이상의 프로세서가 제2 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하는 것은, 제1 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속하지 않음을 표시하고, 제2 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하는 경우, 제1 클라이언트 세분화 결과를 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하도록 수정하는 것을 포함할 수 있다.
다른 실시예에 따른 하나 이상의 프로세서가, 제3 유형의 제1 데이터 세트 및 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제2 인공 신경망을 학습시키고, 제3 유형의 제2 데이터 세트를 학습된 제2 인공 신경망에 인가하고, 제3 유형의 제2 데이터 세트에 대응하는 학습된 제2 인공 신경망의 출력 데이터 세트에 기초하여, 제3 클라이언트 세분화 결과를 생성하는 것을 더 포함하고, 제1 클라이언트 세분화 결과를 수정하는 것은, 제2 클라이언트 세분화 결과 및 제3 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하는 것을 포함할 수 있다.
다른 실시예에 따른 하나 이상의 프로세서가 제2 클라이언트 세분화 결과 및 제3 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하는 것은, 제1 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속하지 않음을 표시하고, 제2 클라이언트 세분화 결과 또는 제3 클라이언트 세분화 결과 중 적어도 하나는 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하는 경우, 제1 클라이언트 세분화 결과를 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하도록 수정하는 것을 포함할 수 있다.
또 다른 실시예에 따른 하나 이상의 프로세서에 의한 실행 시, 하나 이상의 프로세서가 연산을 수행하도록 하는 명령어들을 기록한 비일시적 컴퓨터 판독 가능 기록 매체에 있어서, 명령어들은, 하나 이상의 프로세서가, 제1 유형의 제1 데이터 세트를 기초로 생성된 기존 클라이언트 세분화 결과를 획득하게 하고, 제1 유형의 제2 데이터 세트에 기초하여 제1 클라이언트 세분화 결과를 생성하게 하고, 제2 유형의 제1 데이터 세트 및 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제1 인공 신경망을 학습시키게 하고, 제2 유형의 제2 데이터 세트를 학습된 제1 인공 신경망에 인가하게 하고, 제2 유형의 제2 데이터 세트에 대응하는 학습된 제1 인공 신경망의 출력 데이터 세트에 기초하여, 제2 클라이언트 세분화 결과를 생성하게 하고, 제2 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하게 할 수 있다.
본 개시의 다양한 실시예들에 의하면, 프로세서는 딥러닝 기반의 지도 학습 모델을 통해 패턴이 비슷한 클라이언트들을 집단에 정밀하게 포함시킴으로써 집단의 의미가 희석되거나, 욕구가 비슷하지 않은 클라이언트들이 그 집단에 포함되는 경우를 방지할 수 있다.
본 개시의 다양한 실시예들에 의하면, 프로세서는 딥러닝 기반의 지도 학습 모델을 통해 집단에 속하지 않은 클라이언트이지만 비슷한 패턴을 가지고 있는 클라이언트(예를 들어, 집단과 다른 집단 경계선에 있는 고객들)를 확률적으로 추가하여, 클라이언트 집단의 모수를 정밀하게 확장시킬 수 있고, 클라이언트 세분화를 수행하는 특정 주제마다 사람의 개입이 필요하지 않아 클라이언트를 객관적으로 세분화할 수 있다.
도 1은 본 개시의 일 실시예에 따른 전자 장치가 적용될 수 있는 환경을 도시한 도면이다.
도 2는 본 개시의 일 실시예에 따른 전자 장치의 블록도를 나타낸 도면이다.
도 3은 비지도 학습 알고리즘을 이용한 세분화 결과를 예시하는 도면이다.
도 4는 본 개시의 일 실시예에 따른 인공 신경망의 학습 및 추론 과정을 예시하는 도면이다.
도 5는 본 개시의 일 실시예에 따른 복수의 인공 신경망을 이용하여 클라이언트의 세분화 결과를 수정하는 과정을 예시하는 도면이다.
도 6은 본 개시의 일 실시예에 따른 인공 신경망을 이용한 클라이언트 세분화 방법을 설명하기 위한 순서도이다.
도 2는 본 개시의 일 실시예에 따른 전자 장치의 블록도를 나타낸 도면이다.
도 3은 비지도 학습 알고리즘을 이용한 세분화 결과를 예시하는 도면이다.
도 4는 본 개시의 일 실시예에 따른 인공 신경망의 학습 및 추론 과정을 예시하는 도면이다.
도 5는 본 개시의 일 실시예에 따른 복수의 인공 신경망을 이용하여 클라이언트의 세분화 결과를 수정하는 과정을 예시하는 도면이다.
도 6은 본 개시의 일 실시예에 따른 인공 신경망을 이용한 클라이언트 세분화 방법을 설명하기 위한 순서도이다.
본 문서에 기재된 다양한 실시예들은, 본 개시의 기술적 사상을 명확히 설명하기 위한 목적으로 예시된 것이며, 이를 특정한 실시 형태로 한정하려는 것이 아니다. 본 개시의 기술적 사상은, 본 문서에 기재된 각 실시예의 다양한 변경(modifications), 균등물(equivalents), 대체물(alternatives) 및 각 실시예의 전부 또는 일부로부터 선택적으로 조합된 실시예를 포함한다. 또한 본 개시의 기술적 사상의 권리 범위는 이하에 제시되는 다양한 실시예들이나 이에 대한 구체적 설명으로 한정되지 않는다.
기술적이거나 과학적인 용어를 포함해서, 본 문서에서 사용되는 용어들은, 달리 정의되지 않는 한, 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 일반적으로 이해되는 의미를 가질 수 있다.
본 문서에서 사용되는 "포함한다", "포함할 수 있다", "구비한다", "구비할 수 있다", "가진다", "가질 수 있다" 등과 같은 표현들은, 대상이 되는 특징(예: 기능, 동작 또는 구성요소 등)이 존재함을 의미하며, 다른 추가적인 특징의 존재를 배제하지 않는다. 즉, 이와 같은 표현들은 다른 실시예를 포함할 가능성을 내포하는 개방형 용어(open-ended terms)로 이해되어야 한다.
본 문서에서 사용되는 단수형의 표현은, 문맥상 다르게 뜻하지 않는 한 복수형의 의미를 포함할 수 있으며, 이는 청구항에 기재된 단수형의 표현에도 마찬가지로 적용된다.
본 문서에서 사용되는 "제1", "제2", 또는 "첫째", "둘째" 등의 표현은, 문맥상 다르게 뜻하지 않는 한, 복수의 동종 대상들을 지칭함에 있어 한 대상을 다른 대상과 구분하기 위해 사용되며, 해당 대상들간의 순서 또는 중요도를 한정하는 것은 아니다.
본 문서에서 사용되는 "A, B, 및 C," "A, B, 또는 C," "A, B, 및/또는 C" 또는 "A, B, 및 C 중 적어도 하나," "A, B, 또는 C 중 적어도 하나," "A, B, 및/또는 C 중 적어도 하나," "A, B, 및 C 중에서 선택된 적어도 하나," "A, B, 또는 C 중에서 선택된 적어도 하나," "A, B, 및/또는 C 중에서 선택된 적어도 하나" 등의 표현은, 각각의 나열된 항목 또는 나열된 항목들의 가능한 모든 조합들을 의미할 수 있다. 예를 들어, "A 및 B 중에서 선택된 적어도 하나"는, (1) A, (2) A 중 적어도 하나, (3) B, (4) B 중 적어도 하나, (5) A 중 적어도 하나 및 B 중 적어도 하나, (6) A 중 적어도 하나 및 B, (7) B 중 적어도 하나 및 A, (8) A 및 B를 모두 지칭할 수 있다.
본 문서에서 사용되는 "~에 기초하여"라는 표현은, 해당 표현이 포함되는 어구 또는 문장에서 기술되는, 결정, 판단의 행위 또는 동작에 영향을 주는 하나 이상의 인자를 기술하는데 사용되고, 이 표현은 해당 결정, 판단의 행위 또는 동작에 영향을 주는 추가적인 인자를 배제하지 않는다.
본 문서에서 사용된 표현 "~하도록 구성된(configured to)"은 문맥에 따라, "~하도록 설정된", "~하는 능력을 가지는", "~하도록 변경된", "~하도록 만들어진", "~를 할 수 있는" 등의 의미를 가질 수 있다. 해당 표현은, "하드웨어적으로 특별히 설계된"의 의미로 제한되지 않으며, 예를 들어 특정 동작을 수행하도록 구성된 프로세서란, 해당 특정 동작을 수행하도록, 프로그래밍을 통해 구조화된 특수 목적 컴퓨터(special purpose computer)를 의미할 수 있다.
본 개시에서 사용되는 용어 "인공지능(artificial intelligence, AI)"은, 인간의 학습능력, 추론능력, 지각능력을 모방하고, 이를 컴퓨터로 구현하는 기술을 의미하고, 기계 학습, 심볼릭 로직의 개념을 포함할 수 있다. 여기서, "기계 학습(machine learning, ML)"은 입력 데이터들의 특징을 스스로 분류 또는 학습하는 알고리즘 기술일 수 있다. 구체적으로, 기계 학습은 인공지능을 구현하기 위한 하나의 알고리즘으로써 입력 데이터들을 분석하고, 그 분석의 결과를 학습하며, 그 학습의 결과에 기초한 판단이나 예측을 할 수 있다. 또한, 기계 학습의 알고리즘을 활용하여 인간 두뇌의 인지, 판단의 기능을 모사하는 기술들 역시 인공지능의 범주로 이해될 수 있다. 예를 들어, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어의 기술 분야가 포함될 수 있다.
본 개시에서 사용되는 용어 "학습" 또는 "트레이닝"은 데이터를 처리한 경험을 이용해 신경망 모델을 훈련시키는 처리를 의미할 수 있다. 이러한 학습을 통해 컴퓨터 소프트웨어는 스스로 데이터 처리 능력을 향상시키는 것을 의미할 수 있다. 본 개시에서 사용되는 용어, "인공 신경망 모델", "신경망 모델", "인공 신경망", "신경망", "모델"은, 동일한 의미를 지시하는 용어로서, 데이터 사이의 상관 관계를 모델링하여 구축된 것을 의미할 수 있다. 그리고 상관 관계는 복수의 가중치들에 의해 표현될 수 있다. 이러한 신경망은 주어진 데이터로부터 특징들을 추출하고 분석하여 데이터 간의 상관 관계를 도출하는데, 이러한 과정을 반복하여 신경망의 가중치를 최적화 해나가는 것이 학습이라고 할 수 있다. 예를 들어, 신경망은 입출력 쌍으로 주어지는 데이터에 대하여, 입력 데이터와 출력 데이터 사이의 매핑(상관 관계)을 학습할 수 있다. 또는, 신경망은 입력 데이터만 주어지는 경우에도 주어진 데이터 사이의 규칙성을 도출하여 그 관계를 학습할 수도 있다.
본 개시에서 사용되는 용어 "클라이언트"는 다양한 전자상거래 서비스, 검색 엔진 기반의 서비스 또는 소셜 네트워크 서비스(SNS) 등의 다양한 온라인 서비스를 이용하는 사람 뿐만 아니라, 각종 컴퓨팅 장치나 사물인터넷 환경에서 통신하는 각종 사물과 같이, 서버로부터 서비스를 제공 받을 수 있는 임의의 장치를 포함할 수 있다.
이하, 첨부된 도면들을 참조하여, 본 개시의 다양한 실시예들을 설명한다. 첨부된 도면 및 도면에 대한 설명에서, 동일하거나 실질적으로 동등한(substantially equivalent) 구성요소에는 동일한 참조부호가 부여될 수 있다. 또한, 이하 다양한 실시예들의 설명에 있어서, 동일하거나 대응하는 구성요소를 중복하여 기술하는 것이 생략될 수 있으나, 이는 해당 구성요소가 그 실시예에 포함되지 않는 것을 의미하지는 않는다.
도 1은 본 개시의 일 실시예에 따른 전자 장치가 적용될 수 있는 환경을 도시한다. 전자 장치(110)와 사용자 단말(120, 이하 '단말'이라 함)은 네트워크를 통해 연결되어, 서로 통신할 수 있다. 전자 장치(110)는 서버일 수도 있고, 단말(120)과 구분되는 다른 단말일 수도 있다.
일 실시예에서, 전자 장치(110)는 전자 상거래 서비스를 제공하는 서버 장치일 수 있다. 즉, 전자 장치(110)는 전자 상거래 서비스의 운영 주체의 관리 하에 운영되는 서버 장치일 수 있다. 이하, 이해의 편의를 돕기 위하여 전자 장치(110)가 사람인 사용자를 대상으로 전자 상거래 서비스를 제공하는 서버 장치인 경우를 예로 들어 설명하지만, 전자 장치(110)는 사람인 사용자를 대상으로 다양한 온라인 서비스 중 하나 이상을 제공하는 서버 장치이거나, 사물 인터넷 환경에서 다수의 사물을 대상으로 다양한 온라인 서비스 중 하나 이상을 제공하는 장치일 수도 있음에 유의하여야 한다. 달리 말하면, 본 개시의 다양한 실시예들은 사람 또는 장치 대상의 임의의 온라인 서비스의 클라이언트를 세분화하는 데에 적용될 수 있다.
전자 장치(110)는 전자 상거래 서비스를 이용하는 사용자에 관한 정보를 관리할 수 있다. 이처럼 전자 장치(110)에 의해 관리되는 사용자에 관한 정보는, 예를 들어, 사용자의 이름 정보, 나이 정보, 주소 정보 또는 연락처 정보 등을 포함할 수 있다. 사용자에 관한 정보의 관리란, 그 정보에 대한 통제 권한을 갖고 가공하는 일련의 모든 행위를 총칭할 수 있다. 예를 들어, 사용자에 관한 정보의 관리는, 그 정보에 대한 저장, 갱신 또는 수정 등을 포함할 수 있다.
전자 장치(110)의 관리 방식에 관하여, 일 실시예에서, 전자 장치(110)는 사용자의 입력에 기초하여, 사용자에 관한 정보를 관리할 수 있다. 다른 일 실시예에서, 전자 장치(110)는 전자 상거래 서비스를 이용하는 사용자의 로그(log)에 대한 분석에 기초하여, 사용자에 관한 정보를 관리할 수도 있다. 여기서, 사용자의 로그에 대한 분석 동작은 사용자가 전자 상거래 서비스를 이용하는 과정에서 생성되는 모든 데이터 중 적어도 일부를 분석하는 동작을 포함할 수 있다. 예를 들어, 사용자의 로그에 대한 분석 동작은, 사용자의 주문을 분석하는 동작, 사용자가 체류하는 페이지를 분석하는 동작 또는 사용자의 입력(예: 클릭)의 패턴을 분석하는 동작 등을 포함할 수 있다.
또한, 전자 장치(110)는 사용자에게 제공되는 전자 상거래 서비스에 관한 거래, 즉, 온라인상의 상품(예: 재화 또는 서비스)에 관한 거래를 관리할 수 있다. 즉, 전자 장치(110)는 사용자가 상품을 검색, 선택, 구매 및 결제하고 배송 요청을 할 수 있게 하는 등의 일련의 처리를 관리할 수 있다. 이외에도 전자 장치(110)가 수행할 수 있는 동작에 관하여 본 개시에서 언급되지 않은 동작이라도, 공지된 전자 상거래 서비스를 제공하는 서버 장치가 수행할 수 있는 일반적인 동작이라면, 그 동작을 참조하여 본 개시의 기술적 사상을 적용하는 것은 본 개시의 범위에서 배제되지 않음을 유의해야 한다.
전술한 전자 장치(110)는 하나 이상의 컴퓨팅 장치로 구현될 수 있다. 예를 들어, 전자 장치(110)의 모든 기능은 단일 컴퓨팅 장치에서 구현될 수 있다. 다른 예를 들어, 전자 장치(110)의 제1 기능은 제1 컴퓨팅 장치에서 구현되고, 제2 기능은 제2 컴퓨팅 장치에서 구현될 수 있다. 또 다른 예로서, 전자 장치(110)의 모든 기능 또는 특정 기능을 각자 구현하는 복수의 컴퓨팅 장치가 사용될 수 있다. 전술한 컴퓨팅 장치는 데스크톱 컴퓨터(Desktop Computer), 랩톱 컴퓨터(Laptop Computer), 애플리케이션 서버(Application Server), 프록시 서버(Proxy Server) 또는 클라우드 서버(Cloud Server) 등일 수 있으나, 이에 국한되는 것은 아니며 컴퓨팅 기능이 구비된 모든 종류의 장치가 컴퓨팅 장치일 수 있다.
단말(120)은 네트워크를 통해 다양한 정보를 전자 장치(110)와 송수신할 수 있는 단말로 구현될 수 있다. 예를 들어, 단말(120)은 컴퓨터, 랩탑(laptop), 휴대용 통신 단말(스마트폰 등), 휴대용 멀티미디어 장치, 웨어러블 장치 또는 HMD 중 하나일 수 있다. 단, 단말(120)의 종류는 이에 한정되지 않으며, 단말(120)은 사용자로부터 정보를 입력받거나, 사용자에게 정보를 출력할 수 있는 입출력 인터페이스를 포함하고, 네트워크를 통해 전자 장치(110) 또는 다른 기타 장치와 통신을 수행할 수 있는 임의의 장치일 수 있다. 단말(120)은 전자 장치(110)로부터 수신한 정보를 사용자에게 제공할 수 있고, 사용자로부터 입력을 수신하여 전자 장치(110)로 전송할 수 있다. 사용자로부터 획득되는 입력은 마우스를 이용한 클릭, 터치 패드나 터치 스크린을 이용한 터치, 음성 인식, 기타 전자적 입력 등 다양한 형태의 입력을 포함할 수 있다.
네트워크는 전자 장치(110)와 단말(120) 또는 기타 외부 장치를 연결하는 역할을 수행할 수 있다. 예를 들어, 네트워크는 단말(120)이 전자 장치(110)와 연결되어 전자 장치(110)와 패킷 데이터를 송수신할 수 있도록 접속 경로를 제공할 수 있다. 네트워크는 예를 들어, 근거리 통신망(Local Area Network, LAN), 광역 통신망(Wide Area Network, WAN), 이동 통신망(Mobile Radio Communication Network), Wibro(Wireless Broadband Internet) 등과 같은 모든 종류의 유선 또는 무선 네트워크로 구현될 수 있다.
도 2는 본 개시의 일 실시예에 따른 전자 장치(200)의 블록도를 나타낸 도면이다. 전자 장치(200)는 도 1의 전자 장치(110)일 수 있다. 일 실시예에서, 전자 장치(200)는 하나 이상의 프로세서(210) 및/또는 하나 이상의 메모리(220)를 구성요소로서 포함할 수 있다. 일 실시예에서, 전자 장치(200)의 구성요소들 중 적어도 하나가 생략되거나, 다른 구성요소가 전자 장치(200)에 추가될 수 있다. 일 실시예에서, 추가적으로(additionally) 또는 대체적으로(alternatively), 일부의 구성요소들이 통합되어 구현되거나, 단수 또는 복수의 개체로 구현될 수 있다. 본 개시에서, 하나 이상의 프로세서(210)는 프로세서(210)라고 표현될 수 있다. 프로세서(210)라는 표현은, 문맥상 명백히 다르게 표현하지 않는 이상, 하나 또는 그 이상의 프로세서의 집합을 의미할 수 있다. 본 개시에서, 하나 이상의 메모리(220)는 메모리(220)라고 표현될 수 있다. 메모리(220)라는 표현은, 문맥상 명백히 다르게 표현하지 않는 이상, 하나 또는 그 이상의 메모리의 집합을 의미할 수 있다. 일 실시예에서, 전자 장치(200) 내/외부의 구성요소들 중 적어도 일부의 구성요소들은 버스, GPIO(general purpose input/output), SPI(serial peripheral interface) 또는 MIPI(mobile industry processor interface) 등을 통해 서로 연결되어, 정보(데이터, 신호 등)를 주고 받을 수 있다.
프로세서(210)는 소프트웨어(예: 명령어, 프로그램 등)를 구동하여 프로세서(210)에 연결된 전자 장치(200)의 적어도 한 구성요소를 제어할 수 있다. 또한 프로세서(210)는 본 개시와 관련된 다양한 연산, 처리, 데이터 생성, 가공 등의 동작을 수행할 수 있다. 또한 프로세서(210)는 데이터 등을 메모리(220)로부터 로드하거나, 메모리(220)에 저장할 수 있다.
메모리(220)는 다양한 데이터를 저장할 수 있다. 메모리(220)에 저장되는 데이터는, 전자 장치(200)의 적어도 한 구성요소에 의해 획득되거나, 처리되거나, 사용되는 데이터로서, 소프트웨어(예: 명령어, 프로그램 등)를 포함할 수 있다. 메모리(220)는 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 본 개시에서, 명령어 내지 프로그램은 메모리(220)에 저장되는 소프트웨어로서, 전자 장치(200)의 리소스를 제어하기 위한 운영체제, 어플리케이션 및/또는 어플리케이션이 전자 장치(200)의 리소스들을 활용할 수 있도록 다양한 기능을 어플리케이션에 제공하는 미들 웨어 등을 포함할 수 있다. 일 실시예에서, 메모리(220)는 프로세서(210)에 의한 실행 시 프로세서(210)가 연산을 수행하도록 하는 명령어들을 저장할 수 있다.
일 실시예에서, 전자 장치(200)는 통신 회로(communication circuit, 230)를 더 포함할 수 있다. 통신 회로(230)는 실시예에 따라 전자 장치(200)에서 생략될 수 있다. 통신 회로(230)는, 전자 장치(200)와 다른 장치(예: 사용자 단말, 별도의 서버 등) 간의 무선 또는 유선 통신을 수행할 수 있다. 예를 들어, 통신 회로(230)는 eMBB(enhanced Mobile Broadband), URLLC(Ultra Reliable Low-Latency Communications), MMTC(Massive Machine Type Communications), LTE(Long-Term Evolution), LTE-A(LTE Advance), NR(New Radio), UMTS(Universal Mobile Telecommunications System), GSM(Global System for Mobile communications), CDMA(Code Division Multiple Access), WCDMA(Wideband CDMA), WiBro(Wireless Broadband), WiFi(Wireless Fidelity), 블루투스(Bluetooth), NFC(Near Field Communication), GPS(Global Positioning System) 또는 GNSS(Global Navigation Satellite System) 등의 방식에 따른 무선 통신을 수행할 수 있다. 예를 들어, 통신 회로(230)는 USB(Universal Serial Bus), HDMI(High Definition Multimedia Interface), RS-232(Recommended Standard-232) 또는 POTS(Plain Old Telephone Service) 등의 방식에 따른 유선 통신을 수행할 수 있다. 실시예에 따라, 통신 회로(230)는 전자 장치(200)와 다른 전자 장치를 연결하는 접속 회로 내지 인터페이스로서 기능할 수도 있다.
도 3은 비지도 학습 알고리즘을 이용한 세분화 결과를 예시하는 도면이다. 예컨대, 도 3은, X축을 전자상거래 서비스에서의 일 유형의 사용자 행동 데이터(예: 한 달 동안 구입한 신선식품의 총 개수)로, Y축을 전자상거래 서비스에서 다른 일 유형의 행동 데이터(예: 한 달 동안 구입한 신선식품의 총 가격)로 정한 뒤, 전자상거래 서비스의 개별 사용자들을 그 행동 데이터에 기초하여 각각의 점들로 나타내고, 비지도 학습 알고리즘에 의해 복수의 집단(310, 320, 330)으로 세분화한 것일 수 있다. 세분화를 위한 비지도 학습 알고리즘은 K-평균(K-means), 평균-이동(Mean-Shift), DBSCAN(Density-Based Special Clustering of Applications with Noise) 등 다양한 클러스터링 알고리즘을 포함할 수 있지만, 이로 제한되지 않는다.
비지도 학습 알고리즘에 의한 세분화 결과는 수가 적은 집단(320) 및/또는 어느 집단으로도 분류되지 않은 사용자들(340)을 포함할 수 있다. 이를 개선하기 위하여 비지도 학습 알고리즘의 파라미터(예: 클러스터 개수, 거리 계산법 등)를 수정할 경우, 여러 집단이 부적절하게 병합되어 원래 집단의 의미가 희석되어버리거나, 데이터 패턴이 유사하지 않은 사용자들까지도 집단에 포함되어버리는 등의 또 다른 문제가 발생할 수 있다. 달리 말하면, 세밀한 수준의 개선이 불가능할 수 있다. 또한, 파라미터를 수정하면서 세분화 결과를 개선하기 위해서는, 사람이 직접 세분화 결과와 데이터를 분석하면서 파라미터를 수정해 세분화를 반복하는 과정을 거쳐야만 한다. 특히, 전자상거래 서비스에서의 사용자들의 행동 패턴은 매우 빠른 주기로 변화할 수 있기 때문에(예: 코로나 19의 팬데믹 전후로 신선식품의 구입 패턴이 크게 바뀌는 경우), 같은 주제라도 매 주기 세분화할 때마다 파라미터 수정 작업을 반복해야만 할 수 있다. 이러한 사람의 개입은 비효율적일 뿐만 아니라, 객관적인 데이터에 기반하여 세분화를 하려는 원래의 의도를 오히려 해칠 수도 있다. 이와 같은 문제점은 규칙 기반 알고리즘에도 마찬가지로 상존한다.
본 개시의 다양한 실시예에 따르면, 지도 학습(supervised learning) 알고리즘을 이용하여 규칙 기반 또는 비지도 학습 알고리즘의 세분화 결과를 보완하기 위한 기술이 제공될 수 있다.
도 4는 본 개시의 일 실시예에 따른 인공 신경망의 학습 및 추론 과정을 예시하기 위한 도면이다. 도 4의 인공 신경망(410)은 규칙 기반 또는 비지도 학습 알고리즘의 세분화 결과를 보완하기 위하여 이용될 수 있다. 예를 들어, 인공 신경망은 입력층과 출력층 사이에 다수의 은닉층을 포함하는 심층신경망(DNN; Deep Neural Network)으로 구성될 수 있으나, 본 개시의 다양한 실시예들은 이로 제한되지 않는다.
일 실시예에서, 전자 장치(110)는 특정 주제에 관한 클라이언트 세분화를 주기적으로 수행할 수 있다. 예를 들어, 전자 장치(200)는 전자상거래 서비스의 사용자들을 "요리"라는 주제로 "요리를 직접 하는 집단" 등으로 세분화하는 과정을 매주 수행할 수 있다. 클라이언트 세분화 주기는 주제의 특성에 따라(예: 트렌드에 따라 사용자의 구매 패턴이 얼마나 빠르게 바뀔 수 있는지) 수 주, 수 개월, 수 년 등 다양하게 결정될 수 있다.
일 실시예에서, 전자 장치(110)는 특정 주제에 관한 클라이언트 세분화를 규칙 기반 알고리즘, 비지도 학습 알고리즘 또는 그 조합을 이용하여 수행할 수 있다. 예를 들어, 전자 장치(200)는 주제의 특성이나 데이터 패턴 등에 따라 규칙 기반 알고리즘만을 이용하거나, 비지도 학습 알고리즘만을 이용하거나, 규칙 기반 알고리즘과 비지도 학습 알고리즘을 임의의 순서로 차례로 이용하여 클라이언트 세분화를 수행할 수 있다. 또한, 본 개시의 다양한 실시예는 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘의 임의의 다양한 이용에 적용될 수 있음에 유의하여야 한다.
일 실시예에서, 전자 장치(110)는 규칙 기반 또는 비지도 학습 알고리즘의 세분화 결과를 보완하기 위한 인공 신경망(410)을 학습시킬 수 있다. 인공 신경망(410)은 학습 데이터 세트(420)에 기초하여, 입력된 데이터 세트(430)에 대응되는 출력 데이터 세트(440)를 출력하도록 학습될 수 있다. 인공 신경망(410)의 학습은 특정 주제에 관한 세분화가 주기적으로 수행될 때마다, 즉 매 주기마다 수행될 수 있다. 또한, 인공 신경망(410)의 학습은 매 주기의 학습 데이터 세트(420)만으로 새롭게 수행될 수 있다. 달리 말하면, 인공 신경망(410)의 학습은 이전 주기들의 학습 데이터 세트들과는 무관하게 수행될 수 있다. 이를 통해, 매 주기마다 변하는 데이터 패턴을 더 정확하게 반영할 수 있다.
학습 데이터 세트(420)는 하나 이상의 피처(feature)와 정답 라벨의 쌍들을 포함할 수 있다. 학습 데이터 세트(420)의 하나 이상의 피처는 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘에 이용된 피처와 상이할 수 있다. 달리 말하면, 학습 데이터의 하나 이상의 피처와 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘에 이용된 피처는 동일한 데이터(예: 전자상거래 서비스에서의 사용자의 행동 데이터)에 기초하지만 해당 데이터를 분석하는 관점이 달라 데이터의 유형이 상이할 수 있다. 예를 들어, 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘에 전자상거래 서비스에서 한 달 동안 구입한 신선식품의 총 개수가 각각 피처로 사용된 경우, 학습 데이터 세트(420)의 하나 이상의 피처는 전자상거래 서비스에서 한 달 동안 신선식품의 주문 당 평균 구매 개수 또는 전자상거래 서비스에서 한 달 동안 신선식품 관련 클릭을 한 횟수를 포함할 수 있다.
학습 데이터 세트(420)의 정답 라벨은 이전 주기의 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘을 이용한 세분화 결과에 기초한 것일 수 있다. 예를 들어, 학습 데이터 세트(420)의 정답 라벨은 직전 주기의 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘을 이용한 세분화 결과와 동일할 수 있다. 이 경우, 학습 데이터 세트(420)는 직전 주기의 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘을 이용한 세분화 결과에서 집단에 속한다고 판단된 이용자들에 대하여 생성된 것일 수 있다. 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘을 이용한 세분화 결과가 복수의 집단에 대한 세분화 결과를 포함하는 경우, 학습 데이터 세트(420)의 정답 라벨은 각 집단에 속하는지 여부를 나타낼 수 있다(예: 4개의 집단 중 3번째 집단에 속하는 경우 {0, 0, 1, 0}로 나타냄).
구체적인 예로서, 전자상거래 서비스에서 한 달 동안 구입한 신선식품이 10개 이상일 경우 "요리를 직접 하는 집단"으로 매월 세분화하는 규칙 기반 알고리즘을 이용하는 경우, 2023년 7월에 대한 학습 데이터 세트(420)는, 전자상거래 서비스에서 2023년 7월 한 달 동안 구입한 신선식품의 주문 당 평균 개수를 피처로, 2023년 6월에 대한 규칙 기반 알고리즘의 세분화 결과를 정답 라벨로 포함할 수 있다. 또 다른 예로서, 전자상거래 서비스에서 한 달 동안 구입한 신선식품의 총 개수와 총 가격을 기초로 매월 세분화하는 비지도 학습 알고리즘을 이용하는 경우, 2023년 7월에 대한 학습 데이터 세트(420)는, 전자상거래 서비스에서 2023년 7월 한 달 동안 구입한 신선식품의 주문 당 평균 개수를 피처로, 2023년 6월에 대한 비지도 학습 알고리즘의 세분화 결과를 정답 라벨로 포함할 수 있다.
일 실시예에서, 전자 장치(110)는 해당 주기에 대한 입력 데이터 세트(430)를 학습된 인공 신경망(410)에 인가할 수 있다. 입력 데이터 세트(430)는 학습 데이터 세트(420)의 하나 이상의 피처와 동일한 하나 이상의 피처로 구성된다. 전체 클라이언트 중에서, 입력 데이터 세트(430)의 대상이 되는 클라이언트들을 식별하기 위한 조건은 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘의 세분화 대상이 되는 클라이언트들을 식별하기 위한 조건과 상이할 수 있다. 예를 들어, 입력 데이터 세트(430)는 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘에 대한 동일 주기의 입력 데이터 세트보다 더 넓은 범위의 클라이언트를 대상으로 생성된 것일 수 있다. 구체적인 예로서, 전자상거래 서비스에서 한 달 동안 구입한 신선식품의 총 개수와 총 가격을 기초로 매월 세분화하는 비지도 학습 알고리즘은 2023년 7월 한 달 동안 구입한 신선식품의 총 개수가 3개 이상인 사용자들만을 대상으로 세분화를 수행하게 하는 데 반하여, 이러한 비지도 학습 알고리즘의 세분화 결과를 보완하기 위한 인공 신경망은 2023년 7월 한 달 동안 구입한 신선식품의 총 개수가 1개 이상인 사용자들에 대상으로 추론을 수행하도록 할 수 있다.
일 실시예에서, 전자 장치(110)는 입력 데이터 세트(430)에 대응하는 인공 신경망(410)의 출력 데이터 세트(430)에 기초하여, 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘을 이용한 세분화 결과를 보완하기 위한 추가적인 세분화 결과를 생성할 수 있다. 인공 신경망(410)의 출력 데이터 세트(430)의 각 출력 데이터는 세분화 대상인 집단들 각각에 속할 확률을 포함할 수 있다. 예를 들어, 세분화 대상이 3개의 집단인 경우, 출력 데이터는 첫 번째 집단에 속할 확률이 0.5, 두 번째 집단에 속할 확률이 0.3, 세 번째 집단에 속할 확률이 0.2임을 나타낼 수 있다(예: {0.5, 0.3, 0.2}). 이때 모든 확률의 합은 1이 될 수 있다. 특정 집단에 속할 확률이 소정의 임계치 이상인 경우, 그 집단에 속한다고 결정될 수 있다.
일 실시예에서, 전자 장치(110)는 인공 신경망(410)의 추가적인 세분화 결과에 기초하여 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘의 세분화 결과를 수정할 수 있다. 인공 신경망(410)의 추가적인 세분화 결과는 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘의 세분화 결과와 상이할 수 있다. 예를 들어, 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘의 세분화 결과에서는 어느 집단에도 속하지 않는 사용자가 인공 신경망(410)의 추가적인 세분화 결과에서는 특정 집단에 속할 수 있다. 위와 같은 경우, 해당 사용자가 특정 집단에 속함을 표시하도록 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘의 세분화 결과가 수정될 수 있다.
도 5는 본 개시의 일 실시예에 따른 복수의 인공 신경망을 이용하여 클라이언트의 세분화 결과를 수정하는 과정을 예시하는 도면이다.
도 5를 참조하면, 제1 인공 신경망(510)은 제1 학습 데이터 세트(530)에 기초하여, 입력된 데이터 세트(550)에 대응되는 출력 데이터 세트(570)를 출력하도록 학습될 수 있고, 제2 인공 신경망(520)은 제2 학습 데이터 세트(540)에 기초하여 입력된 데이터 세트(560)에 대응되는 출력 데이터 세트(580)를 출력하도록 학습될 수 있다. 이하에서는, 도 5의 제1 인공 신경망(510) 및 제2 인공 신경망(520)이 도 4의 인공 신경망(410)과 상이할 수 있는 부분에 대하여 주로 설명한다.
일 실시예에서, 제1 인공 신경망(510)의 제1 학습 데이터 세트(530) 및 제1 입력 데이터 세트(550)의 하나 이상의 피처와 제2 인공 신경망(520)의 제2 학습 데이터 세트(540) 및 제2 입력 데이터 세트(560)의 하나 이상의 피처는 서로 상이할 수 있다. 예를 들어, 제1 인공 신경망(510)의 제1 학습 데이터 세트(530) 및 제1 입력 데이터 세트(550)의 하나 이상의 피처는 전자상거래 서비스에서의 구매에 대한 데이터에 기초한 것(예: 신선식품의 구매 건수, 구매 개수, 구매 금액 등)인 반면, 제2 인공 신경망(520)의 제2 학습 데이터 세트(540) 및 제2 입력 데이터 세트(560)의 하나 이상의 피처는 전자상거래 서비스에서의 클릭에 대한 데이터에 기초한 것(예: 신선식품의 클릭 건수, 클릭 개수 등)일 수 있다.
일 실시예에서, 제1 인공 신경망(510)의 제1 입력 데이터 세트(550)의 대상이 되는 클라이언트들은 제2 인공 신경망(520)의 제2 입력 데이터 세트(560)의 대상이 되는 클라이언트들과 상이할 수 있다. 예를 들어, 제1 인공 신경망(510)의 제1 입력 데이터 세트(550)의 대상이 되는 클라이언트들은 전자상거래 서비스에서의 한 달 동안 신선식품을 한 번 이상 구매한 사용자들인 반면, 제2 인공 신경망(520)의 제2 입력 데이터 세트(560)의 대상이 되는 클라이언트들은 전자상거래 서비스에서의 한 달 동안 신선식품 관련 클릭을 한 번 이상 한 사용자들일 수 있다.
일 실시예에서, 전자 장치(110)는 제1 인공 신경망(510)의 추가적인 세분화 결과 및 제2 인공 신경망(520)의 추가적인 세분화 결과에 기초하여 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘의 세분화 결과를 수정할 수 있다. 예를 들어, 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘의 세분화 결과에서는 어느 집단에도 속하지 않는 사용자가 제1 인공 신경망(510)의 추가적인 세분화 결과 또는 제2 인공 신경망(520)의 추가적인 세분화 결과 중 어느 하나에서는 특정 집단에 속하는 경우, 해당 사용자가 특정 집단에 속함을 표시하도록 규칙 기반 알고리즘 및/또는 비지도 학습 알고리즘의 세분화 결과가 수정될 수 있다.
도 6는 본 개시의 일 실시예에 따른 인공 신경망을 이용한 클라이언트 세분화 방법을 설명하기 위한 순서도이다. 도 6의 방법(600)은 전자 장치(110)에 의해 수행될 수 있다.
단계 S610에서, 전자 장치(110)는 제1 유형의 제1 데이터 세트를 기초로 생성된 기존 클라이언트 세분화 결과를 획득할 수 있다. 일 실시예에서, 기존 클라이언트 세분화 결과는 규칙 기반 알고리즘 또는 비지도 학습 알고리즘 중 적어도 하나를 사용하여 전자 장치(110)에 의해 생성된 것일 수 있다. 예를 들어, 기존 클라이언트 세분화 결과는 규칙 기반 알고리즘 또는 비지도 학습 알고리즘 중 적어도 하나를 사용하여 직전 주기에 전자 장치(110)에 의해 생성된 것일 수 있다. 구체적인 예로서, 기존 클라이언트 세분화 결과는 전자상거래 서비스에서 2023년 8월 한 달 동안 구입한 신선식품의 총 개수를 기초로, 2023년 8월 한 달 동안 구입한 신선제품의 총 개수가 5개보다 많을 경우 요리를 직접 하는 집단에 속한다고 판단하고, 5개 이하일 경우에는 요리를 직접 하는 집단에 속하지 아니한다고 판단하는 규칙 기반 알고리즘으로부터 얻어진 결과일 수 있다.
단계 S620에서, 전자 장치(110)는 제1 유형의 제2 데이터 세트에 기초하여 제1 클라이언트 세분화 결과를 생성할 수 있다. 일 실시예에서, 전자 장치(110)는 규칙 기반 알고리즘 또는 비지도 학습 알고리즘 중 적어도 하나를 사용하여 제1 클라이언트 세분화 결과를 생성할 수 있다. 일 실시예에서, 제1 유형의 제1 데이터 세트는 제1 시간 기간에 대한 데이터 세트인 반면, 제1 유형의 제2 데이터 세트는 제1 시간 기간 이후인 제2 시간 기간에 대한 데이터 세트일 수 있다. 예를 들어, 제1 유형의 제1 데이터 세트는 직전 주기에 대한 것인 반면, 제1 유형의 제2 데이터 세트는 해당 주기에 대한 것일 수 있다. 구체적인 예로서, 제1 유형의 제1 데이터 세트는 전자상거래 서비스에서 2023년 8월 한 달 동안 구입한 신선식품의 총 개수에 관한 것인 반면, 제1 유형의 제2 데이터 세트는 2023년 9월 한 달 동안 구입한 신선식품의 총 개수에 관한 것일 수 있다.
일 실시예에서, 단계 S620은 제1 조건에 기초하여 제1 클라이언트 서브세트를 식별하는 것과 제1 클라이언트 서브세트에 대한 제1 유형의 제2 데이터 세트에 기초하여, 규칙 기반 알고리즘 또는 비지도 학습 알고리즘 중 적어도 하나를 사용하여 제1 클라이언트 세분화 결과를 생성하는 것을 포함할 수 있다. 예를 들어, 전자상거래 서비스에서 2023년 9월 한 달 동안 구입한 신선식품의 총 개수를 기초로 제1 클라이언트 세분화 결과를 생성하는 경우, 전자상거래 서비스의 전체 사용자들 중 2023년 9월 한 달 동안 신선식품을 적어도 3개 이상 구입한 사용자들만을 제1 클라이언트 서브세트로 식별하여, 제1 클라이언트 세분화 결과를 생성할 수 있다.
단계 S630에서, 전자 장치(110)는 제2 유형의 제1 데이터 세트 및 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제1 인공 신경망을 학습시킬 수 있다. 일 실시예에서, 제1 유형과 제2 유형은 상이할 수 있다. 제1 유형의 데이터 세트와 제2 유형의 데이터 세트는 동일한 데이터(예: 전자상거래 서비스에서의 사용자의 행동 데이터)에 기초하지만 해당 데이터를 분석하는 관점이 달라 유형이 상이할 수 있다. 일 실시예에서, 제1 유형의 제1 데이터 세트 및 제2 유형의 제1 데이터 세트는 모두 동일한 제1 시간 기간에 대한 데이터 세트일 수 있다. 예를 들어, 제1 유형의 제1 데이터 세트는 전자상거래 서비스에서 2023년 8월 한 달 동안 구입한 신선식품의 총 개수에 관한 것이고, 제2 유형의 제1 데이터 세트는 전자상거래 서비스에서 2023년 8월 한 달 동안 구입한 신선식품의 주문 당 평균 개수에 관한 것일 수 있다.
단계 S640에서, 전자 장치(110)는 제2 유형의 제2 데이터 세트를 단계 S630에서 학습된 제1 인공 신경망에 인가할 수 있다. 일 실시예에서, 제2 유형의 제1 데이터 세트는 제1 시간 기간에 대한 데이터 세트인 반면, 제2 유형의 제2 데이터 세트는 제1 시간 기간 이후인 제2 시간 기간에 대한 데이터 세트일 수 있다. 예를 들어, 제2 유형의 제1 데이터 세트는 직전 주기에 대한 것인 반면, 제2 유형의 제2 데이터 세트는 해당 주기에 대한 것일 수 있다. 구체적인 예로서, 제2 유형의 제1 데이터 세트는 전자상거래 서비스에서 2023년 8월 한 달 동안 구입한 신선식품의 주문 당 평균 개수에 관한 것인 반면, 제2 유형의 제2 데이터 세트는 2023년 9월 한 달 동안 구입한 신선식품의 주문 당 평균 개수에 관한 것일 수 있다.
일 실시예에서, 전자 장치(110)는 규칙 기반 알고리즘 또는 비지도 학습 알고리즘을 위한 제1 클라이언트 서브세트를 식별하기 위한 제1 조건과 상이한 제2 조건에 기초하여 제2 클라이언트 서브세트를 추가로 식별할 수 있다. 이때, 제2 유형의 제2 데이터 세트는 제2 클라이언트 서브세트에 대한 데이터 세트일 수 있다. 일 실시예에서, 제2 클라이언트 서브세트는 제 클라이언트 서브세트와 적어도 부분적으로 중복될 수 있다. 구체적인 예로서, 규칙 기반 알고리즘 또는 비지도 학습 알고리즘에 의한 세분화를 위한 제1 클라이언트 서브세트는 2023년 9월 한 달 동안 구입한 신선식품의 총 개수가 3개 이상인 사용자들을 포함하고, 인공 신경망에 의한 세분화를 위한 제2 클라이언트 서브세트는 2023년 9월 한 달 동안 구입한 신선식품의 총 개수가 1개 이상인 사용자들을 포함할 수 있다.
단계 S650에서, 전자 장치(110)는 제2 유형의 제2 데이터 세트에 대응하는 학습된 제1 인공 신경망의 출력 데이터 세트에 기초하여, 제2 클라이언트 세분화 결과를 생성할 수 있다.
단계 S660에서, 전자 장치(110)는 단계 S650에서 얻어진 제2 클라이언트 세분화 결과에 기초하여, 단계 S620에서 생성된 제1 클라이언트 세분화 결과를 수정할 수 있다.
일 실시예에서, 단계 S660에서의 제2 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하는 것은, 제1 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속하지 않음을 표시하고, 제2 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하는 경우, 제1 클라이언트 세분화 결과를 제1 클라이언트가 제1 세분화 그룹에 속함을 표시하도록 수정하는 것을 포함할 수 있다.
일 실시예에서, 전자 장치(110)는 추가로, 제3 유형의 제1 데이터 세트 및 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제2 인공 신경망을 학습시키고, 제3 유형의 제2 데이터 세트를 학습된 제2 인공 신경망에 인가하고, 제3 유형의 제2 데이터 세트에 대응하는 학습된 제2 인공 신경망의 출력 데이터 세트에 기초하여, 제3 클라이언트 세분화 결과를 생성할 수 있다. 이때, 단계 S660에서 제1 클라이언트 세분화 결과를 수정하는 것은, 제2 클라이언트 세분화 결과 및 제3 클라이언트 세분화 결과에 기초하여 제1 클라이언트 세분화 결과를 수정하는 것을 포함할 수 있다. 일 실시예에서, 제3 유형은 제1 유형 및 제2 유형 각각과 상이할 수 있다. 제1 유형 또는 제2 유형의 데이터 세트와 제3 유형의 데이터 세트는 동일한 데이터(예: 전자상거래 서비스에서의 사용자의 행동 데이터)에 기초하지만 해당 데이터를 분석하는 관점이 달라 유형이 상이할 수 있다. 예를 들어, 제3 유형의 데이터 세트는 전자상거래 서비스 내에서의 구매에 대한 데이터 세트일 수 있고, 제2 유형의 데이터 세트는 전자상거래 서비스 내에서의 클릭에 대한 데이트 세트일 수 있다.
본 개시에 따른 방법들은 컴퓨터로 구현된 방법들일 수 있다. 본 개시에서, 해당 방법들의 각 단계가 소정의 순서대로 도시되고 설명되었지만, 각 단계들은 순차적으로 수행되는 것 이외에, 본 개시에 따라 임의로 조합될 수 있는 순서로 수행될 수도 있다. 일 실시예에서, 적어도 일부의 단계가 병렬적, 반복적 또는 휴리스틱하게 수행될 수 있다. 본 개시는 해당 방법들에 변화 또는 수정을 가하는 것을 제외하지 않는다. 일 실시예에서, 적어도 일부의 단계가 생략되거나, 다른 단계가 추가될 수 있다.
본 개시의 다양한 실시예들은 기기(machine)가 읽을 수 있는 기록 매체(machine-readable recording medium)에 기록된 소프트웨어로 구현될 수 있다. 소프트웨어는 상술한 본 개시의 다양한 실시예들을 구현하기 위한 소프트웨어일 수 있다. 소프트웨어는 본 개시가 속하는 기술분야의 프로그래머들에 의해 본 개시의 다양한 실시예들로부터 추론될 수 있다. 예를 들어 소프트웨어는 기기가 읽을 수 있는 명령어(예: 코드 또는 코드 세그먼트) 또는 프로그램일 수 있다. 기기는 기록 매체로부터 호출된 명령어에 따라 동작이 가능한 장치로서, 예를 들어 컴퓨터일 수 있다. 일 실시예에서, 기기는 본 개시의 실시예들에 따른 전자 장치(200)일 수 있다. 일 실시예에서, 기기의 프로세서는 호출된 명령어를 실행하여, 기기의 구성요소들이 해당 명령어에 해당하는 기능을 수행하게 할 수 있다. 일 실시예에서, 프로세서는 본 개시의 실시예들에 따른 프로세서(210)일 수 있다. 기록 매체는 기기에 의해 읽혀질 수 있는, 데이터가 저장되는 모든 종류의 기록 매체(recording medium)를 의미할 수 있다. 기록 매체는, 예를 들어 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등을 포함할 수 있다. 일 실시예에서, 기록 매체는 메모리(220)일 수 있다. 일 실시예에서, 기록 매체는 네트워크로 연결된 컴퓨터 시스템 등에 분산된 형태로서 구현될 수도 있다. 소프트웨어는 컴퓨터 시스템 등에 분산되어 저장되고, 실행될 수 있다. 기록 매체는 비일시적(non-transitory) 기록 매체일 수 있다. 비일시적 기록 매체는, 데이터가 반영구적 또는 임시적으로 저장되는 것과 무관하게 실재하는 매체(tangible medium)를 의미하며, 일시적(transitory)으로 전파되는 신호(signal)를 포함하지 않는다.
이상 다양한 실시예들에 의해 본 개시의 기술적 사상이 설명되었지만, 본 개시의 기술적 사상은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 이해할 수 있는 범위에서 이루어질 수 있는 다양한 치환, 변형 및 변경을 포함한다. 또한, 그러한 치환, 변형 및 변경은 첨부된 청구범위 내에 포함될 수 있는 것으로 이해되어야 한다. 본 개시에 따른 실시예들은 서로 조합될 수 있다. 각 실시예들은 경우의 수에 따라 다양하게 조합될 수 있으며, 조합되어 만들어진 실시예 역시 본 개시의 범위에 속한다.
Claims (15)
- 하나 이상의 프로세서 및 상기 하나 이상의 프로세서에 의해 실행되기 위한 명령어들이 저장된 하나 이상의 메모리를 포함하는 장치에서 수행되는 클라이언트 세분화 방법으로서,
제1 유형의 제1 데이터 세트를 기초로 생성된 기존 클라이언트 세분화 결과를 획득하는 단계;
제1 유형의 제2 데이터 세트에 기초하여 제1 클라이언트 세분화 결과를 생성하는 단계;
제2 유형의 제1 데이터 세트 및 상기 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제1 인공 신경망을 학습시키는 단계;
제2 유형의 제2 데이터 세트를 상기 학습된 제1 인공 신경망에 인가하는 단계;
상기 제2 유형의 제2 데이터 세트에 대응하는 상기 학습된 제1 인공 신경망의 출력 데이터 세트에 기초하여, 제2 클라이언트 세분화 결과를 생성하는 단계; 및
상기 제2 클라이언트 세분화 결과에 기초하여 상기 제1 클라이언트 세분화 결과를 수정하는 단계를 포함하는 방법. - 제1항에 있어서,
상기 제1 유형의 제1 데이터 세트 및 상기 제2 유형의 제1 데이터 세트 각각은 제1 시간 기간에 대한 데이터 세트이고, 상기 제1 유형의 제2 데이터 세트 및 상기 제2 유형의 제2 데이터 세트 각각은 상기 제1 시간 기간 이후인 제2 시간 기간에 대한 데이터 세트인, 방법. - 제1항에 있어서,
상기 기존 클라이언트 세분화 결과의 생성은 규칙 기반 알고리즘(rule-based algorithm) 또는 비지도 학습(unsupervised learning) 알고리즘 중 적어도 하나를 사용하여 수행된 것인, 방법. - 제1항에 있어서,
상기 제1 유형의 제2 데이터 세트에 기초하여 상기 제1 클라이언트 세분화 결과를 생성하는 단계는,
제1 조건에 기초하여 제1 클라이언트 서브세트를 식별하는 단계; 및
상기 제1 클라이언트 서브세트에 대한 상기 제1 유형의 제2 데이터 세트에 기초하여, 규칙 기반 알고리즘 또는 비지도 학습 알고리즘 중 적어도 하나를 사용하여 상기 제1 클라이언트 세분화 결과를 생성하는 단계를 포함하는, 방법. - 제4항에 있어서,
상기 제1 조건과 상이한 제2 조건에 기초하여 제2 클라이언트 서브세트를 식별하는 단계를 더 포함하고,
상기 제2 유형의 제2 데이터 세트는 상기 제2 클라이언트 서브세트에 대한 데이터 세트인, 방법. - 제5항에 있어서,
상기 제2 클라이언트 서브세트는 상기 제1 클라이언트 서브세트와 적어도 부분적으로 중복되는, 방법. - 제1항에 있어서,
상기 제2 클라이언트 세분화 결과에 기초하여 상기 제1 클라이언트 세분화 결과를 수정하는 단계는,
상기 제1 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속하지 않음을 표시하고, 상기 제2 클라이언트 세분화 결과는 상기 제1 클라이언트가 상기 제1 세분화 그룹에 속함을 표시하는 경우, 상기 제1 클라이언트 세분화 결과를 상기 제1 클라이언트가 상기 제1 세분화 그룹에 속함을 표시하도록 수정하는 단계를 포함하는, 방법. - 제1항에 있어서,
제3 유형의 제1 데이터 세트 및 상기 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제2 인공 신경망을 학습시키는 단계;
제3 유형의 제2 데이터 세트를 상기 학습된 제2 인공 신경망에 인가하는 단계; 및
상기 제3 유형의 제2 데이터 세트에 대응하는 상기 학습된 제2 인공 신경망의 출력 데이터 세트에 기초하여, 제3 클라이언트 세분화 결과를 생성하는 단계를 더 포함하고,
상기 제1 클라이언트 세분화 결과를 수정하는 단계는, 상기 제2 클라이언트 세분화 결과 및 상기 제3 클라이언트 세분화 결과에 기초하여 상기 제1 클라이언트 세분화 결과를 수정하는 단계를 포함하는, 방법. - 제8항에 있어서,
상기 제2 클라이언트 세분화 결과 및 상기 제3 클라이언트 세분화 결과에 기초하여 상기 제1 클라이언트 세분화 결과를 수정하는 단계는,
상기 제1 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속하지 않음을 표시하고, 상기 제2 클라이언트 세분화 결과 또는 상기 제3 클라이언트 세분화 결과 중 적어도 하나는 상기 제1 클라이언트가 상기 제1 세분화 그룹에 속함을 표시하는 경우, 상기 제1 클라이언트 세분화 결과를 상기 제1 클라이언트가 상기 제1 세분화 그룹에 속함을 표시하도록 수정하는 단계를 포함하는, 방법. - 제8항에 있어서,
상기 제2 유형의 제1 데이터 세트 및 상기 제2 유형의 제2 데이터 세트 각각은 전자상거래 서비스 내에서의 클릭에 대한 데이터 세트이고,
상기 제3 유형의 제1 데이터 세트 및 상기 제3 유형의 제2 데이터 세트 각각은 상기 전자상거래 서비스 내에서의 구매에 대한 데이터 세트인, 방법. - 장치로서,
하나 이상의 프로세서; 및
상기 하나 이상의 프로세서에 의한 실행 시, 상기 하나 이상의 프로세서가 연산을 수행하도록 하는 명령어들이 저장된 하나 이상의 메모리를 포함하고,
상기 하나 이상의 프로세서는,
제1 유형의 제1 데이터 세트를 기초로 생성된 기존 클라이언트 세분화 결과를 획득하고,
제1 유형의 제2 데이터 세트에 기초하여 제1 클라이언트 세분화 결과를 생성하고,
제2 유형의 제1 데이터 세트 및 상기 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제1 인공 신경망을 학습시키고,
제2 유형의 제2 데이터 세트를 상기 학습된 제1 인공 신경망에 인가하고,
상기 제2 유형의 제2 데이터 세트에 대응하는 상기 학습된 제1 인공 신경망의 출력 데이터 세트에 기초하여, 제2 클라이언트 세분화 결과를 생성하고,
상기 제2 클라이언트 세분화 결과에 기초하여 상기 제1 클라이언트 세분화 결과를 수정하는, 장치. - 제11항에 있어서,
상기 하나 이상의 프로세서가 상기 제2 클라이언트 세분화 결과에 기초하여 상기 제1 클라이언트 세분화 결과를 수정하는 것은,
상기 제1 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속하지 않음을 표시하고, 상기 제2 클라이언트 세분화 결과는 상기 제1 클라이언트가 상기 제1 세분화 그룹에 속함을 표시하는 경우, 상기 제1 클라이언트 세분화 결과를 상기 제1 클라이언트가 상기 제1 세분화 그룹에 속함을 표시하도록 수정하는 것을 포함하는, 장치. - 제11항에 있어서, 상기 하나 이상의 프로세서가,
제3 유형의 제1 데이터 세트 및 상기 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제2 인공 신경망을 학습시키고,
제3 유형의 제2 데이터 세트를 상기 학습된 제2 인공 신경망에 인가하고,
상기 제3 유형의 제2 데이터 세트에 대응하는 상기 학습된 제2 인공 신경망의 출력 데이터 세트에 기초하여, 제3 클라이언트 세분화 결과를 생성하는 것을 더 포함하고,
상기 제1 클라이언트 세분화 결과를 수정하는 것은, 상기 제2 클라이언트 세분화 결과 및 상기 제3 클라이언트 세분화 결과에 기초하여 상기 제1 클라이언트 세분화 결과를 수정하는 것을 포함하는, 장치. - 제13항에 있어서,
상기 하나 이상의 프로세서가 상기 제2 클라이언트 세분화 결과 및 상기 제3 클라이언트 세분화 결과에 기초하여 상기 제1 클라이언트 세분화 결과를 수정하는 것은,
상기 제1 클라이언트 세분화 결과는 제1 클라이언트가 제1 세분화 그룹에 속하지 않음을 표시하고, 상기 제2 클라이언트 세분화 결과 또는 상기 제3 클라이언트 세분화 결과 중 적어도 하나는 상기 제1 클라이언트가 상기 제1 세분화 그룹에 속함을 표시하는 경우, 상기 제1 클라이언트 세분화 결과를 상기 제1 클라이언트가 상기 제1 세분화 그룹에 속함을 표시하도록 수정하는 것을 포함하는, 장치. - 하나 이상의 프로세서에 의한 실행 시, 상기 하나 이상의 프로세서가 연산을 수행하도록 하는 명령어들을 기록한 비일시적 컴퓨터 판독 가능 기록 매체에 있어서,
상기 명령어들은, 상기 하나 이상의 프로세서가,
제1 유형의 제1 데이터 세트를 기초로 생성된 기존 클라이언트 세분화 결과를 획득하게 하고,
제1 유형의 제2 데이터 세트에 기초하여 제1 클라이언트 세분화 결과를 생성하게 하고,
제2 유형의 제1 데이터 세트 및 상기 기존 클라이언트 세분화 결과를 포함하는 학습 데이터 세트에 기초하여 제1 인공 신경망을 학습시키게 하고,
제2 유형의 제2 데이터 세트를 상기 학습된 제1 인공 신경망에 인가하게 하고,
상기 제2 유형의 제2 데이터 세트에 대응하는 상기 학습된 제1 인공 신경망의 출력 데이터 세트에 기초하여, 제2 클라이언트 세분화 결과를 생성하게 하고,
상기 제2 클라이언트 세분화 결과에 기초하여 상기 제1 클라이언트 세분화 결과를 수정하게 하는, 컴퓨터 판독 가능 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230141102A KR102670688B1 (ko) | 2023-10-20 | 2023-10-20 | 인공 신경망을 이용한 클라이언트 세분화를 위한 방법, 장치 및 명령어들을 저장한 기록 매체 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230141102A KR102670688B1 (ko) | 2023-10-20 | 2023-10-20 | 인공 신경망을 이용한 클라이언트 세분화를 위한 방법, 장치 및 명령어들을 저장한 기록 매체 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102670688B1 true KR102670688B1 (ko) | 2024-06-03 |
Family
ID=91496580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230141102A KR102670688B1 (ko) | 2023-10-20 | 2023-10-20 | 인공 신경망을 이용한 클라이언트 세분화를 위한 방법, 장치 및 명령어들을 저장한 기록 매체 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102670688B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220001616A (ko) * | 2020-06-30 | 2022-01-06 | 카페24 주식회사 | 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축 방법, 장치 및 시스템 |
KR102434342B1 (ko) * | 2022-04-07 | 2022-08-19 | 양혁준 | 뉴럴 네트워크를 이용하여 서버가 추천 상품과 관련된 데이터를 제공하는 방법 및 장치 |
KR20230092278A (ko) * | 2021-12-17 | 2023-06-26 | 씨제이올리브네트웍스 주식회사 | 딥러닝 기반의 사용자 세분화를 이용한 식자재 추천 방법 및 이를 위한 연산장치 |
-
2023
- 2023-10-20 KR KR1020230141102A patent/KR102670688B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220001616A (ko) * | 2020-06-30 | 2022-01-06 | 카페24 주식회사 | 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축 방법, 장치 및 시스템 |
KR20230092278A (ko) * | 2021-12-17 | 2023-06-26 | 씨제이올리브네트웍스 주식회사 | 딥러닝 기반의 사용자 세분화를 이용한 식자재 추천 방법 및 이를 위한 연산장치 |
KR102434342B1 (ko) * | 2022-04-07 | 2022-08-19 | 양혁준 | 뉴럴 네트워크를 이용하여 서버가 추천 상품과 관련된 데이터를 제공하는 방법 및 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220027359A1 (en) | Online hyperparameter tuning in distributed machine learning | |
WO2020108605A1 (zh) | 一种推荐方法、装置及存储介质 | |
US20230130567A1 (en) | Explainable artificial intelligence-based sales maximization decision models | |
US11501161B2 (en) | Method to explain factors influencing AI predictions with deep neural networks | |
US12118317B2 (en) | Techniques to add smart device information to machine learning for increased context | |
Zheng et al. | Federated machine learning for privacy preserving, collective supply chain risk prediction | |
KR102047385B1 (ko) | 챗봇 구동 방법, 장치 및 컴퓨터 판독가능 매체 | |
Pandey et al. | Car’s selling price prediction using random forest machine learning algorithm | |
CN112819024B (zh) | 模型处理方法、用户数据处理方法及装置、计算机设备 | |
US20240249299A1 (en) | Explainable artificial intelligence-based sales maximization decision models | |
Khaksari et al. | TP-TA: a comparative analytical framework for trust prediction models in online social networks based on trust aspects | |
Shadroo et al. | Survey on the application of deep learning in the Internet of Things | |
WO2021096564A1 (en) | Explainable artificial intelligence-based sales maximization decision models | |
KR102670688B1 (ko) | 인공 신경망을 이용한 클라이언트 세분화를 위한 방법, 장치 및 명령어들을 저장한 기록 매체 | |
US11983743B2 (en) | Training an artificial intelligence engine for generating models to provide targeted actions | |
Singh et al. | Introduction to Machine Learning | |
Pei et al. | Kernel method based human model for enhancing interactive evolutionary optimization | |
KR102537900B1 (ko) | 사용자 특징을 지시하는 태그를 생성하기 위한 장치, 방법 및 명령을 기록한 기록 매체 | |
Kolla et al. | diabetic retinopathy classification using binary CNN and data augmentation | |
Arghir | Web-Based Machine Learning System for Assessing Consumer Behavior | |
Rudd et al. | Predicting Financial Literacy via Semi-supervised Learning | |
US20230342617A1 (en) | Using machine learning to predict appropriate actions | |
US20230342597A1 (en) | Using machine learning to extract subsets of interaction data for triggering development actions | |
US20240338532A1 (en) | Discovering and applying descriptive labels to unstructured data | |
US20230401416A1 (en) | Leveraging multiple disparate machine learning model data outputs to generate recommendations for the next best action |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |