KR102653187B1 - 웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법 - Google Patents

웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법 Download PDF

Info

Publication number
KR102653187B1
KR102653187B1 KR1020230179941A KR20230179941A KR102653187B1 KR 102653187 B1 KR102653187 B1 KR 102653187B1 KR 1020230179941 A KR1020230179941 A KR 1020230179941A KR 20230179941 A KR20230179941 A KR 20230179941A KR 102653187 B1 KR102653187 B1 KR 102653187B1
Authority
KR
South Korea
Prior art keywords
information
product
product name
value
item
Prior art date
Application number
KR1020230179941A
Other languages
English (en)
Inventor
이대성
Original Assignee
주식회사 쇼퍼하우스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 쇼퍼하우스 filed Critical 주식회사 쇼퍼하우스
Application granted granted Critical
Publication of KR102653187B1 publication Critical patent/KR102653187B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/10Pre-processing; Data cleansing
    • G06F18/15Statistical pre-processing, e.g. techniques for normalisation or restoring missing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Medical Informatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

학습용 데이터 전처리 전자 장치에 있어서, 서버로부터 웹페이지 데이터를 수신하는 통신부 및 상기 웹페이지 데이터를 처리하는 프로세서 및 적어도 하나의 상품명 및 상기 상품명에 대응되는 제1 항목 정보를 포함하는 상품 정보를 저장하는 메모리를 포함하는 제어부를 포함하되, 상기 프로세서는, 상기 웹페이지 데이터를 처리한 것에 기초하여, 적어도 하나의 상품명과 상기 상품명에 대응되는 제2 항목 정보를 포함하는 수집 정보를 식별하고, 상기 기저장된 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보 및 상기 수집 정보 간의 동일 상품 여부를 판단하고, 상기 상품 정보 및 상기 수집 정보가 동일 상품으로 판단된 것에 응답하여, 상기 상품 정보를 업데이트할 수 있다.

Description

웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법{web crawling-based learning data preprocessing electronic device and method thereof}
본 개시는 웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법에 관한 것으로서, 더욱 상세하게는, 비정형 데이터를 일정한 기준에 따른 정형 데이터로 수집하고, 인공지능 모델이 학습할 수 있도록 데이터를 정제할 수 있는 웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법에 관한 것이다.
브랜드 애그리게이터(Brand Agggregator)란 온라인 내 시장성과 상품성을 갖고 있는 중소상공인들 의 브랜드를 지속적으로 인수하여(or 모으거나 협력하여) 규모의 경제를 통해 성장하는 사업 모델을 갖고 있는 기업을 지칭한다. 이러한 기업은 일반적으로 인터넷을 통해 다양한 제품을 한 플랫폼에서 판매하거나 마케팅하게 된다. 이러한 플랫폼은 종종 소비자에게 편리한 쇼핑 경험을 제공하며, 다양한 제품을 비교하고 선택할 수 있는 장점을 가지고 있을 뿐만 아니라, 온/오프라인의 자체 브랜드를 가지고 있는 중소형(SME, Small and Medium Enterprise) 브랜드에게 해외 진출 및 브랜드의 성장에 대한 협력을 수행할 수 있다. 따라서, 브랜드 어그리게이터는, 중소형 브랜드들에 대한 다양한 관점의 분석이 필수적인 요소이므로 이러한 중소형(SME) 브랜드들을 다양한 관점에서 분석하기 위한 데이터가 필요한 실정이다.
최근, 웹(Web)의 빠른 성장과 더불어 엄청난 양의 정보들이 웹을 통해 제공되고 있다. 웹이 처음 등장하였을 때에는 웹이 갖고 있는 정보의 양이 상대적으로 매우 적었기 때문에 이러한 초기의 웹은 정적 페이지(static page) 형태로 표현되었다. 이러한 정적 페이지의 URL(Uniform Resource Locator)은 대개 지속적으로 존재함으로 하이퍼링크(hyperlink)를 따라 방문이 가능했다. 이러한 특징을 갖는 웹을 서피스웹(Surface Web)이라 부른다.
이러한 서피스웹을 검색하기 위해 많은 검색 엔진들이 개발되었다. 이러한 검색 엔진들은 크롤러(crawler)라 불리는 프로그램을 이용하여 하이퍼링크를 따라 웹 페이지를 방문하고 방문한 웹 페이지의 인덱스를 생성한다. 이때, 생성된 인덱스는 사용자의 질의를 만족하는 페이지를 찾는데 사용된다.
그러나 현재의 웹은 초기의 웹보다 훨씬 많은 정보들을 갖고 있다. 이러한 정보들을 효율적으로 관리하고 검색하기 위해 현재 웹은 자신의 후단(back-end) 데이터베이스(database)에 정보들을 저장한다. 일반적으로 웹 후단의 데이터베이스로부터 정보를 가져오기 위해 사용자들은 웹 사이트의 검색 기능을 이용한다. 여기서, 웹사이트들은 이러한 검색 기능을 HTML(Hypertext Markup Language)의 <FORM> 태그를 사용하여 제공한다. HTML의 <FORM> 태그는 사용자의 입력을 웹 서버에 전달하는 역할을 한다. 즉, 사용자가 검색 폼(search form)에 찾고자하는 질의를 입력하면 웹 사이트는 이러한 질의와 연관된 정보들을 자신의 후단 데이터베이스에서 검색한다. 웹사이트는 검색된 결과들을 포함한 페이지를 동적으로 생성하고, 이 페이지를 사용자에게 보여준다.
현재 웹크롤링을 위해 많은 검색 엔진 기업들은 엄청난 양의 분산된 컴퓨팅 자원을 사용하고 있다. 예를 들어, 구글(Google, http://www.google.com)은 수십만 대의 컴퓨터들을 전 세계에 직접 설치하여 웹크롤링에 이용하고 있다.
따라서, 브랜드 어그리게이터는 중소형(SME) 브랜드들을 다양한 관점에서 분석하기 위한 데이터를 획득하기 위하여 이러한 웹크롤링을 이용하여 데이터를 확보하고자 노력하고 있다. 다만, 상술한 웹크롤링을 이용하여 데이터를 확보하는 것은 통일되고 일정한 기준이 없는 비정형 데이터로, 다양한 관점에서 분석하기 위한 변별력이 없는 문제가 있다. 특히, 동일한 상품이나, 다양한 상품명을 가지고 온라인(이커머스(e-commerce)) 상에서 거래가 되고 있는 상황에서, 웹 크롤링을 통해 데이터를 획득하더라도 동일한 상품이 다른 상품으로 취급되어 데이터로 저장되는 문제점이 존재한다.
한편, 상품에 대한 리뷰와 상기 상품에 대한 평점은, 사람들의 다양한 감정과 그에 따른 주관적인 평점을 포함한다. 이에 따라서, 일부 사람이 서비스를 중시하는 경우, 해당하는 사람은 상품에 대한 만족도가 낮더라도 서비스의 품질을 높게 제공 받으면 높은 점수를 부여하는 경우가 발생한다. 즉, 이렇게 부여 받은 평점은, 상품에 대한 만족도를 우선시하는 사람이 제공받을 경우 변별력이 없는 무의미한 평점이 될 수 있다.
따라서, 상품에 대한 리뷰는, 해당 하는 리뷰에 대한 분석을 통해 제품, 서비스 등과 같은 특정된 영역에 대하여 일괄적인 기준을 적용하여 객관화시킬 필요가 존재한다.
한편, 중소형(SME) 브랜드의 가치를 평가하는 것은 다양한 지표(index)를 고려할 필요가 존재한다. 이러한 브랜드의 가치를 평가하는 전자 장치의 다른 예로는 예를 들면, 한국 등록특허공보 제10-2488653호에 따르면, 분석기업의 기 설정된 분석기간 동안의 재무제표를 저장한 재무제표DB; 상기 재무제표를 기반으로 상기 분석기업의 각 년도별 순이익, 순자산, 매출액 및 영업이익을 포함하는 재무정보를 파악하는 재무 파악 모듈; 상기 재무정보를 기반으로, 상기 분석기업의 각 년도별 주식 가치의 고점인 고평가 가치와, 주식 가치의 저점인 저평가 가치를 산출하는 가치 산출 모듈; 복수의 기업을 업종, 업태 및 기업 규모를 포함하는 기업정보에 따라 기업그룹으로 분류하는 기업 분류 모듈; 순이익, 순자산, 매출액 및 영업이익 각각의 시간에 따른 변동 상황을 그래프로 파악하는 변동 파악부와, 상기 순이익, 순자산, 매출액 및 영업이익의 변동 상황에 따라 미래의 특정 시점에 대한 예상 순이익, 예상 순자산, 예상 매출액, 예상 영업이익을 포함하는 예상재무정보를 산출하는 재무 예상부 및, 상기 예상재무정보를 기반으로 상기 분석기업의 미래의 특정 시점에 대한 고평가 가치와 저평가 가치를 산출하는 가치 예상부와, 상기 순이익, 매출액 및 영업이익 각각에 대한 그래프의 상승, 횡보, 하강을 포함하는 변동 추세를 비교하는 추세 비교부 및, 상기 추세 비교부의 비교 결과에 따라 상기 미래의 특정 시점에 대한 예상 순이익을 보정 처리하는 예상 순이익 보정부를 포함하는 가치 예상 모듈; 시간에 따른 상기 고평가 가치 및 저평가 가치의 변화는 물론 분석기업의 미래의 특정 시점에 대한 고평가 가치와 저평가 가치를 차트로 표시하는 차트 표시 모듈;을 포함하고, 상기 예상 순이익 보정부는, 상기 추세 비교부의 비교 결과에 상기 분석기업이 속한 기업그룹별로 차등 설정된 기업 가중치를 더 반영하여 상기 미래의 특정 시점에 대한 예상 순이익을 다음의 수학식 1을 통해 산출된 보정수치의 고저에 따라 보정 처리하는 것을 특징으로 하는 시스템이 제시된 바 있다.
즉, 상기한 바와 같이, 종래의 브랜드의 가치를 평가하는 여러가지 기술내용들이 제시된 바 있으나, 상기의 종래 기술들은 다음과 같은 문제점이 있는 것이었다.
단순히 중소형(SME) 브랜드의 재무제표만을 기초로 가치를 평가하는 것은, 재무제표를 제대로 관리하는 중소형(SME) 브랜드만이 가능하며, 제대로 재무제표를 관리하지 않은 브랜드의 경우, 정확한 브랜드의 가치를 평가하기에 매우 어려운 문제점이 있으며, 단순히 재무적 기준만으로는 브랜드의 가치를 대표할 수 없으므로, 정확한 브랜드의 가치를 판단할 수 없는 문제점이 있다.
또한, 기존의 가치 평가는, 증소형 기업에 집중하여, 기업이 가지고 있는 자산, 부채, 인적자원, 브랜드 매출 등등 재무적, 물적 및 인적 자원만을 고려하고 있는 반면 브랜드 애그리게이터는 기업의 가지고 있는 브랜드의 가치만을 고려하고 있었다.
이에 따라, 브랜드의 금융 데이터뿐만 아니라, 비금융 빅데이터를 기반으로 브랜드가 가지고 있는 가치를 평가하는 기술에 대한 개발이 필요한 실정이다.
이러한 비금융 데이터를 기반으로 브랜드의 가치를 평가하는 것은, 이커머스의 판매 상품의 세부 카테고리는 대략 2만 여개로써, 각각의 세부 카테고리 별 상품의 갖는 속성이 다르며, 다양한 고객들의 상품에 대한 평가를 객관적으로 분리하는 것은 현실적으로 어려운 문제점이 있다.
또한, 각각의 상품에 대한 일관적 기준 및 고객들의 개인적인 평가를 기반으로 작성된 평점으로 평가하는 것은, 변별력이 없는 문제점이 있다.
개시된 발명의 일 측면은 통일되고 일정한 기준이 존재하는 정형적 데이터를 획득하여 인공지능 모델을 학습시키기에 적합한 웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법을 제공하고자 한다.
또한, 개시된 발명의 일 측면은 상품의 리뷰에 대한 분석을 통해 제품, 서비스 등과 같은 특정 영역에 대한 감정 분석을 통해 평점을 객관화시킬 수 있는 웹크롤링 기반 리뷰 분석 전자 장치 및 그 방법을 제공하고자 한다.
또한, 개시된 발명의 일 측면은 재무적 기준 외의 평가와 인지도, 예상 매출액 등을 고려하여 브랜드의 종합적인 가치를 평가할 수 있는 인공지능 기반 브랜드 가치 평가 전자 장치 및 그 방법을 제공하고자 한다.
개시된 발명의 일 측면에 따른 학습용 데이터 전처리 전자 장치에 있어서, 전자 장치는, 서버로부터 웹페이지 데이터를 수신하는 통신부 및 상기 웹페이지 데이터를 처리하는 프로세서 및 적어도 하나의 상품명 및 상기 상품명에 대응되는 제1 항목 정보를 포함하는 상품 정보를 저장하는 메모리를 포함하는 제어부를 포함하되, 상기 프로세서는, 상기 웹페이지 데이터를 처리한 것에 기초하여, 적어도 하나의 상품명과 상기 상품명에 대응되는 제2 항목 정보를 포함하는 수집 정보를 식별하고, 상기 기저장된 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보 및 상기 수집 정보 간의 동일 상품 여부를 판단하고, 상기 상품 정보 및 상기 수집 정보가 동일 상품으로 판단된 것에 응답하여, 상기 상품 정보를 업데이트할 수 있다.
또한, 상기 프로세서는, 상기 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보에 포함된 상품명 및 상기 수집 정보에 포함된 상품명 간의 유사도를 식별하고, 상기 유사도를 기초로, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명 간의 동일 상품 여부를 판단할 수 있다.
또한, 상기 프로세서는, 상기 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보에 포함된 상품명 및 상기 수집 정보에 포함된 상품명 각각의 문장 임베딩(Sentence embedding)을 계산하고, 상기 계산된 문장 임베딩 간의 코사인 유사도(Cosine similarity)를 식별함으로써, 상기 유사도를 식별할 수 있다.
또한, 상기 프로세서는, 상기 식별된 유사도가 미리 정해진 값보다 큰 것에 응답하여, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명이 동일한 상품으로 판단할 수 있다.
또한, 상기 프로세서는, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명이 동일한 상품으로 판단된 것에 응답하여, 상기 제2 항목 정보를 기초로 상기 제1 항목 정보를 업데이트할 수 있다.
또한, 상기 프로세서는, 상기 식별된 유사도가 미리 정해진 값보다 작은 것에 응답하여, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명이 다른 상품으로 판단할 수 있다.
또한, 상기 프로세서는, 상기 수집 정보를 처리한 것에 기초하여, 제2 항목 정보 중 적어도 하나의 결측값이 식별된 것에 응답하여, 결측값 보정 프로세스를 수행할 수 있다.
또한, 상기 결측값 보정 프로세스는, 상기 결측값에 대응되는 상기 제1 항목 정보를 처리한 것에 기초하여, 보정값을 식별하고, 상기 식별된 보정값을 기초로 상기 제2 항목 정보의 결측값을 보정할 수 있다.
또한, 상기 결측값 보정 프로세스는, 상기 식별된 결측값이 판매량인 것에 응답하여, 상기 상품명에 대응되는 제1 항목 정보를 판매량 예측 모델에 입력하여 출력된 예측 판매량을 기초로 상기 제2 항목 정보를 보정할 수 있다.
또한, 상기 상품 정보는 적어도 하나의 카테고리에 따른 그룹 및 상기 그룹에 대응되는 복수의 상품명과 상기 상품명 각각에 대응되는 제1 항목 정보를 포함할 수 있다.
또한, 상기 결측값을 보정하는 것은, 상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 평균 값을 기초로 보정하고, 상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 값이 없는 것에 응답하여, 상기 상품 정보를 처리한 것에 기초하여, 상기 상품명이 포함된 그룹의 상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 평균값을 기초로 보정할 수 있다.
또한, 제1 항목 정보 또는 제2 항목 정보는 판매 옵션, 판매량, 누적 리뷰수, 순위(Rank), 가격, 링크, 평점, 배송비, 찜하기 수, 카테고리, 출시일, 브랜드명 또는 제조사명 중 적어도 하나를 포함할 수 있다.
한편, 개시된 발명의 일 측면에 따른 학습용 데이터 전처리 방법에 있어서, 방법은, 서버로부터 웹페이지 데이터를 수신하는 단계, 상기 웹페이지 데이터를 처리한 것에 기초하여, 적어도 하나의 상품명과 상기 상품명에 대응되는 제2 항목 정보를 포함하는 수집 정보를 식별하는 단계, 적어도 하나의 상품명 및 상기 상품명에 대응되는 제1 항목 정보를 포함하는 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보 및 상기 수집 정보 간의 동일 상품 여부를 판단하는 단계 및 상기 상품 정보 및 상기 수집 정보가 동일 상품으로 판단된 것에 응답하여, 상기 상품 정보를 업데이트하는 단계를 포함할 수 있다.
개시된 발명의 일 측면에 따르면 통일되고 일정한 기준이 존재하는 정형적 데이터를 획득하여 인공지능 모델을 학습시키기에 적합한 웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법을 제공할 수 있다.
또한, 개시된 발명의 일 측면에 따르면 상품의 리뷰에 대한 분석을 통해 제품, 서비스, 카테고리별 속성 등과 같은 특정 영역을 통해 평점을 객관화하여 미래 매출 예측에 영향도를 도출해 낼 수 있는 웹크롤링 기반 리뷰 분석 전자 장치 및 그 방법을 제공할 수 있다.
또한, 개시된 발명의 일 측면에 따르면, 비금융 빅데이터를 활용하여 재무적 기준 외의 평가와 인지도, 예상 매출액 등을 고려하여 브랜드의 종합적인 가치를 평가할 수 있는 인공지능 기반 브랜드 가치 평가 전자 장치 및 그 방법을 제공할 수 있다.
도 1은 일 실시예에 의한 인공지능 기반 브랜드 가치평가 시스템을 설명하기 위한 개념도이다.
도 2는 일 실시예에 의한 전자 장치의 구성을 나타낸 블록도이다.
도 3은 일 실시예에 의한 전자 장치가 기저장한 상품 정보를 설명하기 위한 도면이다.
도 4는 일 실시예에 의한 전자 장치가 저장하는 상품 정보의 시계열적 데이터를 설명하기 위한 개념도이다.
도 5는 일 실시예에 의한 전자 장치가 수집하는 수집 정보를 설명하기 위한 도면이다.
도 6은 일 실시예에 의한 전자 장치가 수집하는 수집 정보를 설명하기 위한 도면이다.
도 7은 일 실시예에 의한 전자 장치가 수집하는 수집 정보의 결측값을 설명하기 위한 도면이다.
도 8은 일 실시예에 의한 전자 장치의 판매량 예측 모델을 설명하기 위한 도면이다.
도 9는 일 실시예에 의한 전자 장치가 수집하는 리뷰 정보를 설명하기 위한 도면이다.
도 10은 일 실시예에 의한 전자 장치의 리뷰 정보의 대표 문장을 식별하는 것을 설명하기 위한 도면이다.
도 11은 일 실시예에 의한 전자 장치의 평점 추출 모델을 학습시키기 위한 학습 데이터를 설명하기 위한 도면이다.
도 12는 일 실시예에 의한 전자 장치의 평점 추출에 관한 실시예를 설명하기 위한 도면이다.
도 13은 일 실시예에 의한 학습용 데이터 전처리 방법을 설명하기 위한 순서도이다.
도 14는 일 실시예에 의한 학습용 데이터 전처리 방법을 설명하기 위한 순서도이다.
도 15는 일 실시예에 의한 리뷰 분석 방법을 설명하기 위한 순서도이다.
도 16은 일 실시예에 의한 브랜드 가치 평가 방법을 설명하기 위한 순서도이다.
도 17은 일 실시예에 의한 브랜드 가치 평가 방법을 설명하기 위한 순서도이다.
명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 명세서가 실시예들의 모든 요소들을 설명하는 것은 아니며, 개시된 발명이 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하 첨부된 도면들을 참고하여 개시된 발명의 작용 원리 및 실시예들에 대해 설명한다.
브랜드 어그리게이터는 중소형(SME) 브랜드들을 다양한 관점에서 분석하기 위한 데이터를 획득하기 위하여 이러한 웹크롤링을 이용하여 데이터를 확보하고자 노력하고 있다. 다만, 상술한 웹크롤링을 이용하여 데이터를 확보하는 것은 통일되고 일정한 기준이 없는 비정형 데이터로, 다양한 관점에서 분석하기 위한 변별력이 없는 문제가 있다. 특히, 동일한 상품이나, 다양한 상품명을 가지고 온라인(이커머스(e-commerce)) 상에서 거래가 되고 있는 상황에서, 웹 크롤링을 통해 데이터를 획득하더라도 동일한 상품이 다른 상품으로 취급되어 데이터로 저장되는 문제점이 존재한다.
본 발명은, 웹크롤링을 통해 웹페이지로부터 인공지능 모델을 학습시키기에 적합한 형태로 전처리를 수행함으로써, 다양한 관점에서의 데이터를 분석할 수 있도록 정형 데이터를 획득함으로써, 비정형 데이터로부터 변별력이 없는 데이터 분석이 수행되는 문제점을 해결하기 위한 것일 수 있다.
또한, 상품에 대한 리뷰와 상기 상품에 대한 평점은, 사람들의 다양한 감정과 그에 따른 주관적인 평점을 포함한다. 이에 따라서, 일부 사람이 서비스를 중시하는 경우, 해당하는 사람은 상품에 대한 만족도가 낮더라도 서비스의 품질을 높게 제공 받으면 높은 점수를 부여하는 경우가 발생한다. 즉, 이렇게 부여 받은 평점은, 상품에 대한 만족도를 우선시하는 사람이 제공받을 경우 변별력이 없는 무의미한 평점이 될 수 있다.
본 발명은, 웹크롤링을 통해 웹페이지로부터 획득한 리뷰에 관한 정보를 분석하여, 상기 리뷰에 포함된 제품에 대한 감정, 서비스에 대한 감정, 전체적인 감정 등으로 추출함으로써, 특정 사람에게만 유효하거나 무용한 평점을 보다 객관화시킨 기준을 통해 평점을 수정하여 보다 객관적인 평점 데이터를 획득하여 변별력이 없는 무의미한 평점에 대한 문제점을 해소하기 위한 것일 수 있다.
또한, 단순히 중소형(SME) 브랜드의 재무제표만을 기초로 브랜드의 가치를 평가하는 것은, 재무제표를 제대로 관리하는 중소형(SME) 브랜드만이 가능하며, 제대로 재무제표를 관리하지 않은 브랜드의 경우, 정확한 브랜드의 가치를 평가하기에 매우 어려운 문제점이 있으며, 단순히 재무적 기준만으로는 브랜드의 가치를 대표할 수 없으므로, 정확한 브랜드의 가치를 판단할 수 없는 문제점이 있다.
본 발명은 보다 객관화된 리뷰 데이터 및 시계열적 판매량 데이터를 통해 예측한 예측 판매량 등 다양한 지표들을 통해 다방면에 대한 브랜드의 가치 평가를 수행하여 상술한 문제점을 해결하기 위한 것일 수 있다.
도 1은, 일 실시예에 의한 인공지능 기반 브랜드 가치평가 시스템(1000)(이하, 설명의 편의상 '본 시스템'이라 명명함)을 설명하기 위한 개념도이다.
도 1을 참조하면, 본 개시의 일 실시예에 따른 본 시스템(1000)은 서버(200)로부터 웹페이지 데이터를 수신하고, 상기 웹페이지 데이터를 처리하는 전자 장치(100)(이하 설명의 편의상 '본 장치'라 명명함), 웹페이지 데이터를 상기 본 전자 장치(100)로 송신하는 서버(200) 및 서버(200) 및/또는 본 장치(100)로부터 데이터를 송/수신할 수 있는 사용자 단말(300)를 포함할 수 있다.
본 개시의 일 실시예에 의한 본 시스템(1000)은, 서버(200)에 존재하는 데이터를 획득하고 처리할 수 있다. 즉, 본 시스템(1000)은 서버(200) 내에 계속적으로 및/또는 주기적으로 업데이트되는 데이터를 획득할 수 있도록, 서버(200)에 데이터를 요청하고, 요청한 데이터를 획득하여 처리할 수 있다.
한편, 본 시스템(1000)은 적어도 하나의 상품명 및 상기 상품명에 대응되는 제1 항목 정보를 포함하는 상품 정보를 저장할 수 있다. 즉, 상품 정보는 상품명에 대응되는 데이터들로 이루어지는 메타 데이터 형식으로 이루어질 수 있으며, 시계열적 데이터로써, 시스템(1000)이 서버(200)로부터 획득된 데이터가 업데이트되는 시간에 따라 누적된 데이터 형식을 가질 수 있다. 한편, 여기에서 상품명은, 예시적으로, 상품 ID로 명명될 수 있다. 즉, 상품명은 특정 상품에 대한 고유 식별 코드로 이해할 수 있다.
한편, 상품 정보는, 이하에서 자세히 서술하겠지만, 적어도 하나의 상품명과 상기 상품명에 대응되는 제1 항목 정보를 포함할 수 있다. 보다 상세하게, 상품 정보는 복수의 카테고리에 따라 그룹이 나누어져 적어도 하나의 그룹에 관한 정보를 가질 수 있다. 예시적으로, 상품 정보는 견과류라는 카테고리에 땅콩, 밤, 호두, 아몬드, 잣, 은행, 피스타치오, 케슈넛 등과 같은 복수의 상품을 포함할 수 있다. 즉, 상품 정보는 적어도 하나의 카테고리에 대한 그룹과 상기 그룹에 속하는 상품들에 대한 상품명과 상기 상품명에 대응되는 제1 항목 정보를 포함할 수 있다.
예시적으로, 제1 항목 정보는 유통되고 있는 상품명에 대한 판매량(Revenure), 누적 리뷰수, 순위(Rank), 가격, 링크(link), 평점, 배송비, 카테고리, 브랜드명 또는 제조사명, 찜하기 수, 출시일 등 중 적어도 하나를 포함할 수 있다. 한편, 여기에서, 상품명에 대응되는 제1 항목 정보 또는 제2 항목 정보에 포함된 카테고리는, 예를 들어, 상기 상품명이 속하는 카테고리에 관한 식별값을 의미할 수 있다. 예시적으로, 제1 상품이 제1 카테고리에 속하는 경우, 상기 제1 상품에 대한 제1 항목 정보는 제1 카테고리라는 속성(식별값 또는 그룹)을 포함할 수 있음을 이해할 수 있다. 이에 따라서, 상품명 및 상기 상품명에 대응되는 제1 항목 정보 또는 제2 항목 정보에 포함된 카테고리 속성(식별값 또는 구룹)을 통해 상기 상품명이 속하는 카테고리 그룹을 식별할 수 있다.
본 개시의 일 실시예에 의한 본 시스템(1000)은 획득된 데이터를 처리한 것에 기초하여, 적어도 하나의 상품명과 상기 상품명에 대응되는 제2 항목 정보를 포함하는 수집 정보를 식별할 수 있다. 한편, 제2 항목 정보는 예를 들어, 상기 상품 정보의 제1 항목 정보와 구분되기 위하여 명명한 것일 뿐, 이에 한정되는 것은 아니고 제1 항목 정보와 동일한 정보들에 대한 항목을 포함할 수 있다. 즉, 제1 항목 정보 및 제2 항목 정보는 항목 정보로 명명될 수 있다.
예시적으로, 제1 항목 정보가 판매량, 누적 리뷰수, 가격에 대한 항목을 포함하고 있는 경우, 제2 항목 정보는 상기 제1 항모 정보와 동일하게 판매량, 누적 리뷰수, 가격에 대한 항목을 포함할 수 있다. 한편, 보다 상세하게, 상품 정보는 예를 들어, 수집 정보가 누적된 시계열적 데이터일 수 있다. 즉, 수집 정보가 수집된 시기에 따라 누적되어 저장된 정보가 상품 정보일 수 있다.
본 개시의 일 실시예에 의한 본 시스템(1000)은, 식별된 수집 정보를 처리한 것에 기초하여, 중복되는 상품명에 대한 데이터를 삭제할 수 있다. 즉, 이는 웹페이지 데이터 내의 중복되는 상품명에 대한 데이터를 필터링을 통해, 중복되는 데이터의 누적 데이터 생성을 방지하기 위함일 수 있다.
보다 상세하게, 웹페이지 데이터 내에는, 복수의 상품명과 상기 상품명에 대응되는 항목 정보를 포함할 수 있다. 다만, 웹페이지 데이터 내에 판매자의 광고 등록 등 다양한 이유로 인해 동일한 상품명에 대한 항목 정보가 복수개 포함될 수 있다. 이에 따라서, 본 시스템(1000)은, 웹페이지 데이터를 처리한 것에 기초하여 식별한 수집 정보를 처리한 것에 기초하여, 수집 정보 내의 동일한 상품명에 대한 항목 정보를 삭제하여, 중복되는 상품명과 상기 상품명에 대응되는 항목 정보를 삭제함으로써, 중복 데이터를 처리할 수 있다.
예시적으로, 웹페이지 데이터 중 제1 페이지 내에 제1 상품과 상기 제1 상품에 대응되는 항목 정보를 포함하고, 상기 웹페이지 데이터 중 제2 페이지 내에 제1 상품과 상기 제1 상품에 대응되는 항목 정보를 포함하는 경우에 있어서, 본 시스템(1000)은 웹페이지 데이터를 처리한 것에 기초하여, 두 개의 제1 상품 및 상기 제1 상품에 대응되는 항목 정보를 포함하는 수집 정보를 식별할 수 있다. 이에 따라서, 본 시스템(1000)은, 두 개의 제1 상품명과 상기 상품명에 대응되는 항목 정보 중 하나의 제1 상품명과 상기 상품명에 대응되는 항목 정보를 삭제할 수 있다. 이에 따라서, 중복되는 데이터를 필터링 및/또는 삭제할 수 있다.
또한, 본 시스템(1000)은, 수집 정보에 포함된 리뷰 정보 중 작성자 ID를 기초로 중복된 데이터를 삭제하여, 중복 리뷰 정보를 정리할 수 있음을 상술한 설명에 기초하여 이해할 수 있다. 예시적으로, 본 시스템(1000)은, 특정 상품명에 대응되어 항목 정보 및 리뷰 정보를 포함하는 상품 정보를 처리한 것에 기초하여, 상기 리뷰 정보에 포함된 복수의 작성자 ID 중 중복되는 작성자 ID에 대응되는 리뷰 데이터를 삭제할 수 있다. 다만, 이에 한정되는 것은 아니다.
본 개시의 일 실시예에 의한 본 시스템(1000)은 기저장된 상품 정보 및 수집 정보를 처리한 것에 기초하여, 상품 정보 및 수집 정보 간의 동일 상품 여부를 판단할 수 있다. 보다 상세하게, 상품 정보 및 수집 정보 간의 동일 상품 여부를 판단한다는 것은, 상품 정보에 포함된 적어도 하나의 상품명과 상기 수집 정보에 포함된 적어도 하나의 상품명을 처리한 것에 기초하여, 동일 상품 여부를 판단하는 것일 수 있다.
예시적으로, 상품 정보에 포함된 제1 제품이라는 상품명과 상기 제1 제품에 대응되는 제1 항목 정보를 포함하는 경우, 본 시스템(1000)은, 서버(200)로부터 수신한 웹페이지 데이터를 처리한 것에 기초하여, 제2 제품이라는 상품명과 상기 제2 제품에 대응되는 제2 항목 정보를 포함하는 수집 정보를 식별하고, 상기 제1 제품과 상기 제1 제품 간의 동일 상품 여부를 판단할 수 있다. 한편, 상품 정보 및 수집 정보는 각각 적어도 하나의 상품명과 그에 대응되는 항목 정보를 포함할 수 있으므로, 복수의 상품명과 그에 대응되는 항목 정보를 포함할 수 있다.
상술한 실시예의 경우, 본 시스템(1000)은, 상품 정보에 포함된 복수의 상품명과 웹페이지 데이터를 처리한 것을 기초로 식별한 수집 정보에 포함된 복수의 상품명을 각각 개별적으로 동일 상품 여부를 판단할 수 있다.
이에 따라, 본 시스템(1000)은, 상품 정보 및 수집 정보가 동일 상품으로 판단된 것에 응답하여, 상품 정보를 업데이트할 수 있다. 보다 상세하게, 상품 정보에 포함된 상품명과 수집 정보에 포함된 상품명이 동일한 상품으로 판단된 것에 응답하여, 상기 상품명에 대응되는 상품 정보에 상기 수집 정보를 기초로 (시계열적으로) 업데이트하여 저장할 수 있다.
한편, 본 시스템(1000)이 동일 상품 여부를 판단하는 것은, 예를 들어, 동일한 상품인 경우에도,공급처(또는 공급자)에 따라 상이한 상품명(추가적인 미사여구를 사용하는 등)을 사용하는 경우를 방지하여 비정형 데이터가 생성되는 것을 방지하는 것일 수 있다.
본 개시의 일 실시예에 의한 본 시스템(1000)은, 획득된 데이터를 처리한 것에 기초하여, 적어도 하나의 상품명과 상기 상품명에 대응되는 적어도 하나의 리뷰 정보를 포함하는 수집 정보를 식별할 수 있다. 보다 상세하게, 본 시스템(1000)은, 서버(200)로부터 수신된 웹페이지 데이터를 처리한 것에 기초하여, 상기 웹페이지 데이터에 포함된, 적어도 하나의 상품명과 상기 상품명에 대응되는 제2 항목 정보를 포함하는 수집 정보를 식별할 수 있다. 즉, 항목 정보는 각각의 상품명에 대응되는 메타 데이터의 형식으로 이루어진 데이터로서, 제2 항목 정보는 예를 들어, 상품명에 대응되는 상품의 사용자가 작성한 리뷰에 관한 정보를 포함하는 리뷰 정보를 포함할 수 있다.
따라서, 시스템(1000)이 획득하는 수집 정보에 포함된 제2 항목 정보는, 리뷰 정보를 더 포함할 수 있다. 보다 상세하게, 리뷰 정보는 예를 들어, 특정 상품명에 대응된 복수의 작성자 ID 및 상기 ID에 대응되는 고객 리뷰 텍스트, 제품 사진, 평점, 찜수, 좋아요수, 게시일, 카테고리, 판매 옵션, 기준 평점 등을 포함할 수 있다. 한편, 여기에서, 기준 평점은, 본 시스템(1000)이 기준 평점을 제외한 리뷰 정보를 평점 추출 모델에 입력하여 출력된 평점으로서, 상기 출력된 평점을 기준 평점으로 상기 리뷰 정보에 업데이트된 것일 수 있다.
보다 상세하게, 본 시스템(1000)은, 수집 정보를 처리한 것에 기초하여, 리뷰 정보의 적어도 하나의 대표 문장을 식별하고, 상기 대표 문장을 이하에서 자세히 서술할 평점 추출 모델에 입력하여, 상기 리뷰 정보의 평점(기준 평점)을 추출할 수 있다.
한편, 본 개시의 일 실시예에 의한 시스템(1000)은, 기저장된 상품 정보 및 브랜드 정보를 처리한 것에 기초하여, 상품 정보를 이하에서 자세히 서술할 판매량 예측 모델에 입력하여, 예측 판매량을 출력할 수 있다. 이에 본 시스템(1000)은 출력(추출)된 예측 판매량 및 브랜드 정보를 이하에서 자세히 서술할 브랜드 가치 평가 모델에 입력하여, 브랜드의 적어도 하나의 가치 지표를 출력(추출)할 수 있다.
본 개시의 일 실시예에 의한 본 시스템(1000)의 본 장치(100), 서버(200), 사용자 단말(300)은 네트워크(1)로 연결될 수 있다. 여기서 네트워크(1)로 연결될 수 있다는 의미는 전기적으로, 또는 통신적으로 연결될 수 있는 것으로 이해할 수 있다.
네트워크(1)의 일 예에는 3GPP(3rd Generation Partnership Project) 네트워크(3G 네트워크, 4G 또는 LTE(Long Term Evolution) 네트워크, 5G 또는 NR(New Radio) 네트워크, 또는 6G 네트워크 등), WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.
본 장치(100)는, 서버(200)로 데이터를 송신 및/또는 수신할 수 있다. 보다 상세하게, 본 장치(100)는 서버(200)로 데이터 송신을 요청하는 요청 메시지를 송신하고, 상기 서버(200)로부터 요청 메시지에 대응되는 데이터를 수신할 수 있다. 이에 본 장치(100)는 수신된 데이터를 처리한 것에 기초하여, 수집 정보를 식별할 수 있다. 보다 상세하게, 본 장치(100)는 수신된 웹페이지 데이터를 처리한 것에 기초하여, 적어도 하나의 상품명 및 상기 상품명 대응되는 항목 정보인 제2 항목 정보를 포함하는 수집 정보를 식별할 수 있다.
한편, 본 장치(100)가 서버(200)로 요청하는 데이터는 예를 들어, 웹 페이지 데이터 및/또는 이미지 데이터 및/또는 텍스트 데이터 등을 포함할 수 있다. 다른 실시예로, 데이터는 예를 들어, 특정 키워드에 대응되는 검색 결과를 포함하는 메타 데이터일 수 있다. 다만, 이에 한정되는 것은 아니다.
한편, 본 장치(100)가 서버(200)로부터 획득하는 웹페이지 데이터를 포함하는 요청 데이터는, 예를 들어, 복수의 스레드를 사용하여 여러 웹페이지에 관한 웹페이지 데이터를 수집하는 멀티 스레딩 방식, 적어도 두 개의 프로세스를 이용하여, 각각의 프로세서가 별도의 웹 페이지에 관한 웹페이지 데이터를 수집하는 멀티 프로세싱 방식 또는 복수의 본 장치(100)를 구비하여, 각각 독립적으로 웹페이지에 관한 웹페이지 데이터를 수집하는 분산 크롤링 방식 등을 이용하여 획득할 수 있다. 다만, 이에 한정되는 것은 아니다. 즉, 본 장치(100)가 서버(200)로부터 획득하는 웹페이지 데이터는 기공지된 웹크롤링 방식 및/또는 향후 개발될 웹크롤링 방식이 이용될 수 있음을 이해할 수 있다.
본 개시의 일 실시예에 의한 서버(200)는, 각종 데이터를 처리하고 저장하며, 처리한 데이터를 송신 및/또는 수신할 수 있다. 보다 구체적으로, 서버(200)는 네트워크(1)로 본 장치(100), 사용자 단말(300)과 상호간 연결될 수 있다. 이에 따라서, 서버(2000)는 상호간 데이터를 연동하기 위한 데이터를 상기 네트워크(1)를 기초로 송신 및/또는 수신할 수 있다. 서버(200)는 예시적으로, 플랫폼(Platform) 및/또는 웹페이지 클라우드 서버 등 일 수 있으나, 이에 한정되는 것은 아니다.
서버(200)는 예를 들어, 데이터베이스와 일체로 구성될 수 있으며 본 장치(100)의 요청에 따라 요청에 대응되는 데이터를 검색하고, 검색된 정보에 기초하여 요청된 특정 정보를 생성하고, 생성된 특정 정보를 본 장치(100) 에 다시 송신할 수 있다.
서버(200)는 단일 서버로 존재할 수 있으며, 복수의 서버로 구성될 수 있다. 또한, 서버(200)는 각종 데이터를 처리하는 적어도 하나의 프로세서를 포함할 수 있다.
본 개시의 일 실시예에 의한 사용자 단말(300)은, 예를 들어, PCS(Personal Communication System), GSM(Global System for Mobile communication), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(WCode Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smartphone), 스마트패드(SmartPad), 태블릿 PC, 노트북, 웨어러블 디바이스, 디지털 사이니지(Digital Signage) 등과 같은 모든 종류의 입출력 가능한 유무선 통신 장치를 포함할 수 있으며, 이에 한정되는 것은 아니다.
이상에서는, 본 시스템(1000)을 구성하는, 본 장치(100), 서버(200) 및 사용자 단말(300)에 대하여 간략하게 설명하였다. 이하에서는, 도면을 참조하여, 본 시스템(1000)의 구성에 대하여 자세히 설명하도록 한다. 한편, 이하에서 서술하는 본 장치(100)가 수행하는 실시예들은 본 장치(100)를 포함하는 본 시스템(1000)이 수행하는 실시예로도 이해될 수 있다.
도 2는 일 실시예에 의한 전자 장치의 구성을 나타낸 블록도이다.
도 2를 참조하면, 본 개시의 일 실시예에 의한 본 장치(100)는, 통신부(110)와 프로세서(121) 및 메모리(122)를 포함하는 제어부(120)를 포함할 수 있다.
본 개시의 일 실시예에 따른 통신부(110)는 네트워크(1)를 통해 서버(200)와 통신을 수행할 수 있으며, 서버(200)로 웹페이지 데이터를 포함하는 데이터를 요청할 수 있으며, 서버(200)로부터 요청한 데이터를 수신할 수 있다. 또한, 본 개시의 일 실시예에 의한 통신부(110)는 기 공지된 유형의 무선 통신 모듈로 구성될 수 있다.
제어부(120)는 프로세서(121) 및 메모리(122)를 포함할 수 있다.
프로세서(121)는 통신부(110)로부터 획득한 웹페이지 데이터를 포함하는 데이터 및 메모리(122)에 기저장된 상품 정보를 처리할 수 있다. 예를 들어, 프로세서(121)는 디지털 시그널 프로세서(DSP, Digital Signal Processor) 및/또는 마이크로 컨트롤 유닛(MCU, Micro Control Unit)을 포함할 수 있다.
도 3은 일 실시예에 의한 전자 장치가 기저장한 상품 정보를 설명하기 위한 도면이다. 도 4는 일 실시예에 의한 전자 장치가 저장하는 상품 정보의 시계열적 데이터를 설명하기 위한 개념도이다.
도 3을 참조하면, 본 개시의 일 실시예에 의한 프로세서(121)는 메모리(122)에 기저장된 상품 정보(21)를 처리할 수 있다. 보다 구체적으로 상품 정보(21)는 적어도 하나의 상품명과 상기 상품명에 대응되는 항목 정보(31)를 포함할 수 있다. 항목 정보(31)는 예를 들어, 상품명에 대응되는 메타 데이터의 형식으로, 상기 상품명에 대한 상품의 세부 정보를 의미할 수 있다.
예시적으로, 상품 정보(21)는 상품명과 상기 상품명에 대응되는 카테고리, 순위, 판매량, 가격(41), 링크, 평점, 배송비, 브랜드명, 제조사, 누적 리뷰수, 획득 시점(웹페이지 데이터 획득 시점), 리뷰 정보(51) 등을 포함하는 항목 정보(31)를 포함할 수 있다.
상품 정보(21)는, 프로세서(121)가 서버(200)로부터 획득한 웹페이지 데이터를 처리한 것에 기초하여, 식별한 적어도 하나의 상품명과 상기 상품명에 대응되는 제2 항목 정보를 포함하는 수집 정보의 누적된 메타데이터 형식의 빅데이터일 수 있다. 즉, 상품 정보(21)는, 프로세서(121)가 수집 정보를 획득한 시점에 따라 시계열적으로 누적된 데이터일 수 있다.
도 4를 참조하면, 도 4는, 상품 정보에 포함된 적어도 하나의 상품명에 대한 제1 항목 정보의 시계열적 데이터를 설명하기 위한 도면이다. 본 개시의 일 실시예에 따른 메모리(122)에 기저장된 상품 정보 중 가격(41)에 관한 정보는, 프로세서(121)가 서버(200)로부터 웹페이지 데이터를 획득한 시점에 따라 누적된 정보일 수 있다. 다만, 이에 한정되는 것은 아니고 다른 실시예로, 항목 정보(31)에 포함된 순위, 판매량, 평점, 누적 리뷰수에 관한 정보는 상술한 가격(41)에 관한 정보와 같이 획득한 시점에 따라 누적된 정보일 수 있다. 즉, 도 4에 한정되는 것은 아니다.
도 5는 일 실시예에 의한 전자 장치가 수집하는 수집 정보를 설명하기 위한 도면이다.
도 5를 참조하면, 본 개시의 일 실시예에 따른 프로세서(121)는 서버(200)로부터 통신부(110)를 통해 웹페이지 데이터(61)를 수신한 것에 응답하여, 상기 웹페이지 데이터(61)를 처리할 수 있다. 이에 따라, 프로세서(121)는 웹페이지 데이터(61)를 처리한 것에 기초하여, 적어도 하나의 상품명 및 상기 상품명에 대응되는 제2 항목 정보를 포함하는 수집 정보를 식별할 수 있다.
한편, 수집 정보는 예를 들어, 적어도 하나의 서버(200)로부터 수신된 웹페이지 데이터를 처리한 것에 기초하여 획득한 정보로서, 서로 다른 서버(200)로부터 획득한 웹페이지 데이터 및/또는 동일한 서버(200)로부터 획득한 웹페이지 데이터를 수신한 경우, 동일한 상품에 대하여 다른 상품명과 상기 상품명 각각에 대응되는 항목 정보를 포함할 수 있다.
예시적으로, 도 5의 (a)를 참조하면, 본 개시의 일 실시예에 따른 프로세서(121)는 웹페에지 데이터(61)를 처리한 것에 기초하여, '락토핏 골드 2gX50'라는 제1 상품명을 식별할 수 있다. 또한, 도 5의 (b)를 참조하면, 프로세서(121)는 웹페이지 데이터(61)를 처리한 것에 기초하여, '락토핏골드프로바이오틱스 2gX50'라는 제2 상품명을 식별할 수 있다. 이 경우, 제1 상품명과 제2 상품명은 서로 상이한 상품명을 가지나, 서로 동일한 상품이다. 즉, 웹페이지 데이터(61) 내에는 동일한 상품에 대한 다른 상품명을 갖는 수집 정보를 포함할 수 있다.
이에 따라서, 프로세서(121)는, 기저장된 상품 정보 및 식별된 수집 정보를 처리한 것에 기초하여, 상품 정보 및 및 수집 정보 간의 동일 상품 여부를 판단할 수 있다. 보다 구체적으로, 프로세서(121)는 상품 정보에 포함된 적어도 하나의 상품명 및 수집 정보에 포함된 적어도 상품명 간의 유사도를 식별하고, 상기 유사도를 기초로 상품 정보에 포함된 상품명과 수집 정보에 포함된 상품명 간의 동일 상품 여부를 판단할 수 있다. 즉, 도 5에 도시된 바에 따르면, 프로세서(121)는, 상품 정보에 포함된 적어도 하나의 상품명과 식별된 수집 정보에 포함된 상품명(예를 들어, 제1 상품명 또는 제2 상품명) 간의 유사도를 식별할 수 있다.
보다 상세하게, 프로세서(121)는, 상품 정보 또는 수집 정보에 포함된 상품명의 문장 임베딩(Sentence embedding)을 계산할 수 있다.
문장 임베딩은, 자연어 처리(Natural Language Processing NLP) 기술 분야에서 텍스트를 숫자 벡터로 변환하는 것을 의미한다. 예시적으로, 프로세서(121)는 문장에 포함된 모든 단어 벡터의 평균을 계산하여 문장 벡터를 생성하는 평균화(Average Pooling) 방식, 문장에 포함된 모든 단어 벡터 중 가장 큰 값을 가지는 벡터를 문장 벡터로 생성하는 최대 풀링(Max Pooling) 방식, 순환 신경망(RNN) 또는 장단기 메모리(LSTM)과 같은 순환형 신경망 아키텍처를 사용하여 문장 내 단어 순서를 고려하는 방식, 트랜스포머 기반의 모델인 BERT, GPT 등의 알고리즘을 활용한 방식 등 중 적어도 하나를 이용하여 문장 임베딩을 계산할 수 있다. 다만, 이에 한정되는 것은 아니고, 기공지된 문장 임베딩 계산 방식 또는 향후 개발될 문장 임베딩 계산 방식이 적용될 수 있다.
본 개시의 일 실시예에 의한 프로세서(121)는 상품 정보를 처리한 것에 기초하여, 상기 상품 정보에 포함된 적어도 하나의 상품명의 문장 임베딩(Sentence embedding)을 계산할 수 있다. 즉, 프로세서(121)는 기저장된 복수의 상품명에 대한 문장 임베딩(Sentence embedding)을 각각 계산하고 메모리(122)에 저장할 수 있다.
또한, 프로세서(121)는 수집 정보를 처리한 것에 기초하여, 상기 수집 정보에 포함된 적어도 하나의 상품명의 문장 임베딩을 계산할 수 있다.
이에 따라서, 프로세서(121)는 상품 정보에 포함된 적어도 하나의 상품명에 대한 계산된 문장 임베딩과 수집 정보에 포함된 적어도 하나의 상품명에 대해 계산된 문장 임베딩 간의 코사인 유사도(Cosine Similarity)를 계산할 수 있다.
코사인 유사도(cosine similarity)는, 두 벡터 사이의 각도를 기반으로, 벡터 간의 유사성을 측정하는 방식 중 하나로, 0에 가까울수록 벡터 간의 각이 크며, 1에 가까울수록 벡터 간의 각이 작다는 의미다. 즉, 프로세서(121)는, 상품 정보에 포함된 적어도 하나의 상품명과 수집 정보에 포함된 적어도 하나의 상품명 각각의 문장 임베딩 간의 코사인 유사도를 계산하여, 두 상품명 간의 유사도를 식별할 수 있다.
프로세서(121)는, 식별된 유사도(예를 들어, 코사인 유사도 값)가 미리 정해진 값보다 큰 것에 응답하여, 상품 정보에 포함된 상품명과 수집 정보에 포함된 상품명이 동일한 상품인 것으로 판단할 수 있다. 이와 반대로, 프로세서(121)는, 식별된 유사도가 미리 정해진 값보다 작은 것에 응답하여, 상품 정보에 포함된 상품명과 수집 정보에 포함된 상품명이 다른 상품인 것으로 판단할 수 있다.
한편, 상기 미리 정해진 값은, 실험적 또는 경험적으로 산출된 값으로서, 상품 또는 상품의 카테고리에 따라서 다른 미리 정해진 값을 가질 수 있다. 이에 따라서, 상기 미리 정해진 값은 유사한 상품명을 가진 동일 상품에 대하여 동일한 상품으로 판단하도록 설정될 수 있다.
이에 따라, 프로세서(121)는, 상품 정보에 포함된 적어도 하나의 상품명과 수집 정보에 포함된 적어도 하나의 상품명에 대한 문장 임베딩을 계산하고, 상품 정보에 포함된 상품명의 문장 임베딩과 수집 정보에 포함된 상품명의 문자 임베딩 간의 코사인 유사도를 계산한 것에 응답하여, 동일 상품 여부를 판단할 수 있다.
본 개시의 일 실시예에 의한 프로세서(121)는, 상품 정보에 포함된 적어도 하나의 상품명과 수집 정보에 포함된 적어도 하나의 상품명 각각의 문장 임베딩 간의 코사인 유사도가 미리 정해진 값보다 큰 것으로 판단된 것에 응답하여, 수집 정보에 포함된 상기 상품명에 대응되는 제2 항목 정보를 기초로 상기 상품 정보에 포함된 상기 상품명에 대응되는 제1 항목 정보를 업데이트할 수 있다.
예시적으로, 프로세서(121)는, 상품 정보에 포함된 제1 상품에 대응되는 제1 항목 정보인 가격에 대한 정보를 수집 정보에 포함된 제1 상품에 대응되는 제2 항목 정보인 가격에 대한 정보로 업데이트할 수 있다. 즉, 프로세서(121)는, 상품이 동일하다고 판단된 상품명과 관련된 상품 정보에 포함된 제1 항목 정보의 가격에 관한 정보를 수집 정보에 포함된 제2 항목 정보의 가격에 관한 정보로 변경(업데이트)할 수 있다.
다른 실시예로, 프로세서(121)는, 상품 정보에 수집 정보에 포함된 제1 상품에 대응되는 제2 항목 정보인 가격에 대한 정보를 누적적으로 저장할 수 있다. 즉, 도 4에 도시된 바와 같이 프로세서(121)는, 수집 정보의 획득 시점에 따라, 상품이 동일하다고 판단된 상품명에 대한 상품 정보에 대하여 수집 정보를 누적적으로 저장할 수 있다. 다만, 이에 한정되는 것은 아니다.
도 6은 일 실시예에 의한 전자 장치가 수집하는 수집 정보를 설명하기 위한 도면이다. 또한, 도 7은 일 실시예에 의한 전자 장치가 수집하는 수집 정보의 결측값을 설명하기 위한 도면이다. 또한, 도 8은 일 실시예에 의한 전자 장치의 판매량 예측 모델을 설명하기 위한 도면이다.
본 개시의 일 실시예에 의한 프로세서(121)는, 서버(200)로부터 수신한 웹페이지 데이터를 처리한 것에 기초하여, 수집 정보를 식별할 수 있다. 이에 따라, 프로세서(121)는 수집 정보를 처리한 것에 기초하여, 수집 정보에 포함된 제2 항목 정보 중 적어도 하나의 결측값을 식별할 수 있다. 즉, 웹페이지 데이터 내에는 적어도 하나의 상품명 및 상기 상품명에 대응되는 수집 정보가 포함되어 있을 수 있으나, 웹페이지 데이터 내에 특정 정보가 누락된 경우, 프로세서(121)는 식별된 수집 정보를 처리한 것에 기초하여, 수집 정보 내에 결측값(null)을 식별할 수 있다.
결측값 보정 프로세스는 예를 들어, 결측값이 존재하는 수집 정보를 기초로 인공지능 모델을 학습시키는 경우, 인공지능 모델의 신뢰도가 하락할 수 있으므로, 이를 방지하기 위한 프로세스일 수 있다. 따라서, 결측값 보정 프로세스는 결측값에 대한 신뢰도 높은 보정값을 산출하고, 상기 보정값을 기초로 결측값을 보정하여 부존재하는 데이터에 대한 보완(보충)할 수 있다.
한편, 프로세서(121)는, 수집 정보를 처리하여 수집 정보의 제2 항목 중 적어도 하나의 결측값이 식별된 것에 응답하여, 결측값 보정 프로세스를 수행하여 상기 결측값에 대응되는 제1 항목 정보를 처리한 것에 기초하여, 보정값을 식별할 수 있다. 보다 상세하게, 프로세서(121)는, 수집 정보를 처리한 것에 기초하여, 특정 상품명에 대한 제2 항목 정보 중 결측값을 식별한 것에 응답하여, 상기 특정 상품명에 대한 제1 항목 정보 중 상기 결측값에 대응되는 값을 처리한 것에 기초하여 보정값을 식별할 수 있다. 즉, 프로세서(121)는, 수집 정보에 포함된 제2 항목 정보 중 결측값이 식별된 항목에 대응되도록 상품이 동일하다고 판단된 상품 정보의 상품명에 관한 상품 정보의 제1 항목 정보를 처리한 것에 기초하여, 보정값을 식별할 수 있다.
일 실시예에 의한 프로세서(121)는, 수집 정보를 처리한 것에 기초하여, 식별된 결측값에 대응되는 상품 정보의 제1 항목 정보를 식별할 수 있다. 즉, 식별된 결측값에 대응되는 상품 정보의 제1 항목 정보는 수집 정보 중 특정 상품명에 대응되는 제2 항목 정보 중 결측값이 식별된 경우, 상기 결측값이 발생한 항목에 대하여 (동일한 상품이라고 판단된) 상기 특정 상품명에 대응되는 상품 정보의 제1 항목 정보의 항목의 값을 식별하는 것일 수 있다.
이 경우, 프로세서(121)는, 제1 항목 정보 중, 수집 정보의 결측값에 대응되는 가장 최근 항목의 값을 보정값으로 식별할 수 있다. 예시적으로, 프로세서(121)는, 수집 정보를 처리한 것에 기초하여, 평점(항모 정보 중 하나)에 대한 결측값을 식별한 경우에 응답하여, 가장 최근의 획득 시점에 대응되는 제1 항목 정보 중 평점에 관한 값을 보정값으로 식별하고, 상기 수집 정보의 결측값을 상기 보정값으로 보정할 수 있다. 이에 따라서, 수집 정보의 결측값은, 상기 결측값에 대응되는 항목의 최근 제1 항목 정보를 보정값으로 보정될 수 있다.
다른 실시예로, 프로세서(121)는, 결측값에 대응되는 제1 항목 정보 중 미리 정해진 기간의 평균 값을 보정 값으로 식별할 수 있다. 보다 상세하게, 프로세서(121)는, 수집 정보의 제2 항목 정보 중 배송비에 관한 결측값을 식별한 것에 응답하여, 획득 시점에 따라 누적된 상품 정보의 제1 항목 정보 중 미리 정해진 기간 동안의 배송비에 관한 값들의 평균 값을 보정값으로 식별할 수 있다. 이에 따라, 프로세서(121)는, 누적된 상품 정보 중 결측값에 대응되는 항목에 대한 미리 정해진 기간의 평균 값을 보정값으로 상기 수집 정보의 결측값을 보정할 수 있다.
한편, 일 실시예에 따른 프로세서(121)는, 수집 정보의 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간 동안의 값이 없는 경우에 응답하여, 상품 정보를 처리한 것에 기초하여, 상품명에 포함된 카테고리의 상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 평균값을 보정값으로 식별하여 상기 결측값을 보정할 수 있다.
보다 상세하게, 예시적으로 최근에 출시된 상품의 경우, 기저장되어 수집 정보가 누적된 상품 정보가 미비한 경우가 발생할 수 있다. 이에 따른 결측값이 발생하는 것을 방지하기 위하여, 일 실시예에 의한 프로세서(121)는, 상품 정보를 처리한 것에 기초하여 상품명이 속해 있는 카테고리의 식별된 수집 정보의 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 평균값을 보정값으로 식별할 수 있다.
보다 상세하게, 상품 정보는 적어도 하나의 카테고리에 따른 그룹 및 상기 그룹에 대응되는 복수의 상품명과 상기 상품명 각각에 대응되는 제1 항목 정보를 포함할 수 있다. 예를 들어, 상품 정보는 견과류 카테고리에 포함된 복수의 상품명은 예를 들어, 하루 견과, 닥터넛츠, 투데이넛 등을 포함할 수 있다.
즉, 본 개시의 일 실시예에 따른 프로세서(121)는, 수집 정보의 특정 상품명에 대한 결측값을 식별한 것에 응답하여, 상기 결측값에 대응되는 상품 정보의 제1 항목 정보를 기초로 보정값을 식별하되, 상기 결측값에 대응되는 상품 정보의 제1 항목 정보가 부존재하는 것에 응답하여, 상기 특정 상품명이 속해 있는 카테고리의 그룹의 상기 결측값에 대응되는 제1 항목 정보를 기초로 보정값을 식별할 수 있다.
예시적으로, 수집 정보 중 제1 상품명에 대한 가격이 결측값으로 식별된 것에 응답하여, 프로세서(121)는, 상품 정보를 처리한 것에 기초하여, 상기 제1 상품명이 속해있는 그룹의 제2 상품, 제3 상품 또는 제4 상품 등 중 적어도 하나의 미리 정해진 기간 동안의 가격에 대한 평균값을 보정값으로 식별하고, 상기 결측값을 상기 보정값으로 보정할 수 있다.
다른 실시예로, 수집 정보 중 제1 상품명에 대한 가격이 결측값으로 식별된 것에 응답하여, 프로세서(121)는, 상품 정보를 처리한 것에 기초하여, 상기 제1 상품명이 속해있는 그룹의 제2 상품명, 제3 상품명 또는 제4 상품명 등 적어도 하나의 가장 최근의 획득 시점에 대응되는 제1 항목 정보 중 가격에 관한 값을 보정값으로 식별하고, 상기 수집 정보의 결측값을 상기 보정값으로 보정할 수 있다
도 6 및 도 7을 참조하면, 본 개시의 일 실시예에 의한 프로세서(121)는, 수집 정보를 처리 한 것에 기초하여, 판매량(71)에 대한 항목이 결측값으로 식별된 것에 응답하여, 상기 수집 정보에 대응되는 상품명과 동일한 상품으로 판단된 상품 정보의 제1 항목 정보의 판매량에 대한 데이터를 기초로 보정값을 산출할 수 있다.
예시적으로, 프로세서(121)가 웹페이지 데이터를 처리한 것에 기초하여, 식별된 수집 정보 중 판매량에 관한 데이터가 결측값으로 식별된 경우, 상술한 결측값 보정 프로세스와 상이한 결측값 보정 프로세스가 적용될 수 있다. 다만, 이에 한정되는 것은 아니고, 상술한 결측값 보정 프로세스가 적용될 수 있음을 이해할 수 있다.
한편, 본 개시의 일 실시예에 의한 프로세서(121)는 웹페이지 데이터를 처리한 것에 기초하여, 식별된 수집 정보 중 결측값을 식별하는 것뿐만 아니라, 중복값을 식별하고, 상기 중복값(중복 데이터)를 삭제할 수 있다. 예시적으로, 웹페이지 데이터 내에는 특정 상품명 및 상기 상품명에 대응되는 항목 정보가 중복되어(예를 들어, 동일한 상품명에 대한 데이터가 복수 개 식별된 경우 등) 식별되는 경우, 데이터의 중복적인 저장을 방지하기 위함 일 수 있다.
보다 상세하게, 웹페이지 데이터 중 제1 페이지 내에 제1 상품과 상기 제1 상품에 대응되는 항목 정보를 포함하고, 상기 웹페이지 데이터 중 제2 페이지 내에 제1 상품과 상기 제1 상품에 대응되는 항목 정보를 포함하는 경우에 있어서, 프로세서(121)는, 웹페이지 데이터를 처리한 것에 기초하여, 두 개의 제1 상품 및 상기 제1 상품에 대응되는 항목 정보를 포함하는 수집 정보를 식별할 수 있다. 이에 따라서, 프로세서(121)는 두 개의 제1 상품명과 상기 상품명에 대응되는 항목 정보 중 하나의 제1 상품명과 상기 상품명에 대응되는 항목 정보를 삭제할 수 있다. 즉,프로세서(121)는, 중복되는 데이터를 필터링 및/또는 삭제할 수 있다.
한편, 본 개시의 일 실시예에 의한 프로세서(121)는, 웹페이지 데이터를 처리한 것에 기초하여 식별된 수집 정보를 기초로 이상값(outlier)을 식별할 수 있다.
여기에서, 이상값(outlier)은, 예를 들어, 수집 정보에 포함된 상품명 및 상기 상품명에 대응되는 항목 정보 중 순위(rank), 가격(price), 리뷰 정보(예를 들어, 리뷰 수/day 등) 등의 값이 평균과의 편차가 일반적이지 않는 경우의 값을 의미하며, 이하에서 설명하는 판매량 예측 모델에 입력되는 데이터 중 예측 판매량과 상관 관계가 높은 데이터에 대하여 높은 신뢰도를 가지고 오류가 존재하는 데이터를 의미할 수 있다. 다만, 이에 한정되는 것은 아니다.
예시적으로, 프로세서(121)는, 기저장된 상품명 및 상기 상품명에 대응되는 항목 정보를 포함하는 상품 정보 및 웹페이지 데이터를 처리한 것에 기초하여 식별된 수집 정보를 처리한 것에 기초하여, 이상값을 식별할 수 있다. 보다 구체적으로, 프로세서(121)는, 상품 정보를 처리한 것에 기초하여, 각각의 상품명에 대응되는 항목 정보의 항목들 각각의 IQR(interquartile Range)을 추출(식별 또는 출력)할 수 있다. 즉, 프로세서(121)는, 상품 정보를 처리한 것에 기초하여, 시계열적 데이터인 상품 정보의 상품명 및 상기 상품명에 대응되는 항목 정보 중 각각의 항목에 대응되는 데이터(값)의 크기순으로 25% 지점(Q1)과 75% 지점(Q3)를 식별하고, 식별된 Q1 및 Q3를 기초로 (예를 들어, Q3 - Q1 = IQR 수식을 통해) IQR을 식별할 수 있다.
예시적으로, 프로세서(121)가, 상품 정보 중 제1 상품(특정 상품)의 항목 정보 중 가격에 대한 IQR을 식별하는 경우에 있어서, 일자 별 가격에 대한 크기 순서대로 25% 지점(Q1)과 75% 지점(Q3)의 가격을 기초로 IQR을 식별할 수 있다. 다만, 이에 한정되는 것은 아니고, 항목 정보에 포함된 각 항목에 대한 IQR을 식별할 수 있다.
이에 따라, 프로세서(121)는, 식별된 IQR을 기초로, 웹페이지 데이터를 처리한 것을 기초로 식별된 수집 정보의 이상값을 식별할 수 있다.
보다 상세하게, 프로세서(121)는, 상품 정보에 포함된 항목 정보의 각 항목에 대한 상한 값(예를 들어, Q3 + 1.5*IQR = 상한값) 및 하한 값(예를 들어, Q1 - 1.5*IQR = 하한값)을 식별할 수 있다. 상술한 식은 예시적인 것으로서, IQR에 대한 미리 정해진 가중치에 기초하여, 상한값 및 하한값이 결정될 수 있음을 이해할 수 있다.
상술한 실시예에서, 프로세서(121)는, 웹페이지 데이터를 처리한 것에 기초하여 식별된 수집 정보에 포함된 복수의 상품명과 그에 대응되는 항목 정보 중, 특정 상품명에 대응되는 항목 정보와 상품 정보를 처리한 것에 기초하여 미리 식별된 상기 특정 상품명에 대응되는 항목 정보의 각 항목에 대한 상한값 및/또는 하한값에 기초하여 항목에 대한 이상값을 식별할 수 있다.
예시적으로, 프로세서(121)는, 상품 정보를 처리한 것에 기초하여, 제1 상품에 대한 항목 정보 중 제1 항목에 대한 상한값이 제1 상한 및 하한값이 제1 하한으로 식별된 것에 응답하여, 수집 정보를 처리한 것에 기초하여, 상기 수집 정보에 포함된 제1 상품에 대한 제1 항목의 데이터가 상기 제1 상한 보다 크거나 또는, 상기 제1 하한보다 작은 것에 응답하여, 상기 제1 항목의 이상값을 식별할 수 있다. 이와 반대로, 프로세서(121)는, 수집 정보에 포함된 상기 제1 항목의 데이터가 상기 제1 상한과 상기 제1 하한 내에 인 것에 응답하여, 정상값으로 식별할 수 있다.
한편, 본 개시의 일 실시예에 의한 프로세서(121)는, 웹페이지 데이터를 처리한 것에 기초하여 식별(획득)한 수집 정보 중 특정 상품에 대응되는 특정 항목의 데이터가 이상값으로 식별된 것에 응답하여, 상기 특정 항목의 데이터를 보정할 수 있다.
보다 상세하게, 프로세서(121)는, 특정 상품에 대응되는 이상값으로 식별된 값들을 대상으로 K-평균 클러스터링(K-means clustering)을 수행할 수 있다. 예시적으로 K=2(2개의 클러스터로 나눔)로 이상값으로 식별된 값들을 대상으로 k-means clustering을 수행할 수 있다. 이 경우, k=2로 고정되므로, 두 clutser의 평균값이 높은 cluster를 메이저 클러스터(major cluster)로, 나머지 cluster를 마이너 클러스터(minor cluster)로 명명할 수 있다.
이에 따라, 프로세서(121)는, 메이저 클러스터에 속하는 이상값을 메이저 클러스터의 최대값(max)으로 나눈 후 Q3를 곱하여 보정값을 식별하여, 상기 이상값이 식별된 특정 상품에 대응되는 항목의 데이터를 상기 보정값으로 보정할 수 있다. 또한, 프로세서(121)는, 마이너 클러스터에 속하는 이상값을 마이너 클러스터의 최대값(max)으로 나눈 후 Q3를 곱하여 보정값을 식별하여, 상기 이상값이 식별된 특정 상품에 대응되는 항목의 데이터를 상기 보정값으로 보정할 수 있다. 다만, 이에 한정되는 것은 아니다.
다른 실시예로, 프로세서(121)는, 수집 정보에 포함된 특정 상품의 이상값으로 식별된 항목의 데이터를, 특정 값(예를 들어, Q3, Q2(50% 지점), Q1)으로 보정할 수 있다. 또 다른 실시예로, 프로세서(121)는, 수집 정보에 포함된 특정 상품의 이상값으로 식별된 항목의 데이터를 Q1 내지 Q3의 범위 중 랜덤 변수 생성을 통해 생성된 값을 기초로 보정할 수 있다. 다만, 이에 한정되는 것은 아니다.
도 8은 일 실시예에 의한 전자 장치의 판매량 예측 모델을 설명하기 위한 도면이다.
도 8을 참조하면, 본 개시의 일 실시예에 의한 프로세서(121)는, 웹페이지 데이터를 처리한 것에 기초하여 식별된 수집 정보의 제2 항목 정보 중 적어도 하나의 결측값을 식별한 것에 응답하여, 결측값 보정 프로세스를 수행할 수 있다. 보다 구체적으로, 프로세서(121)는, 식별된 수집 결측값이 판매량에 관한 항목인 것에 응답하여, 상기 결측값이 식별된 상품명에 대응되는 상품 정보(21) 중 제1 항목 정보를 판매량 예측 모델(81, 82)에 입력하여, 예측 판매량을 출력할 수 있다. 이에 따라서, 출력된 예측 판매량(83)을 기초로 보정값을 식별하고, 상기 보정값을 기초로 상기 제2 항목 정보의 결측값을 보정할 수 있다.
즉, 프로세서(121)는, 결측값이 발생한 수집 정보에 대응되는 상품명에 관한 획득 시점에 따른 시게열적 데이터인 상품 정보를 판매량 예측 모델에 입력으로, 상기 결측값이 포함된 수집 정보를 획득한 획득 시점의 판매량을 예측하여 상기 예측된 판매량을 보정값으로 식별하고, 상기 보정값을 기초로 결측값을 보정할 수 있다.
보다 상세하게, 프로세서(121),는, 결측값이 발생한 수집 정보에 대응되는 상품명에 관한 획득 시점에 따른 시계열적 데이터인 상품 정보에 포함된 항목 정보 및 리뷰 정보를 판매량 예측 모델에 입력으로, 상기 결측값이 포함된 수집 정보를 획득한 획득 시점의 판매량을 예측하여 상기 예측된 판매량을 보정값으로 식별하여 상기 보정 값을 기초로 상기 결측값을 보정할 수 있다.
프로세서(121)는, 각종 데이터를 처리하는 적어도 하나의 프로세서, 예를 들어, 복수 개의 프로세서를 포함할 수 있다. 예시적으로, 프로세서(121)는, 예를 들어, 머신러닝을 위한 러닝 프로세서를 포함하여, 학습 데이터를 이용하여 인공 신경망으로 구성된 모델을 학습시킬 수 있다. 여기서 학습된 인공 신경망을 학습 모델이라 칭할 수 있다.학습 모델은 학습 데이터가 아닌 새로운 입력 데이터에 대하여 결과 값을 추론해 내는데 사용될 수 있고, 추론된 값은 어떠한 동작을 수행하기 위한 판단의 기초로 이용될 수 있다.
일 실시예에 의한 프로세서(121)는 딥 러닝 (deep learning) 알고리즘을 통해 학습 모델을 학습시킬 수 있다. 보다 구체적으로 프로세서(121)는, TCN(Temporally Convolutional Network) 또는 LSTM(Long Short-Term Memory) 알고리즘 또는 XGBoost 알고리즘을 통해 학습 모델을 학습시킬 수 있다.
딥 러닝 (deep learning) 알고리즘은 머신 러닝(Machine learning) 알고리즘의 하나로 인간의 신경망을 본뜬 인공 신경망에서 발전된 모델링 기법을 의미한다. 인공 신경망은 다층 계층 구조로 구성될 수 있다.
인공 신경망(Artifical Neural Network; ANN)은 입력 층, 출력 층, 그리고 상기 입력 층과 출력 층 사이에 적어도 하나 이상의 중간 층 (또는 은닉 층, Hidden layer)(예를 들어 커널(Kernel))을 포함하는 계층 구조로 구성될 수 있다. 딥러닝 알고리즘은, 이와 같은 다중 계층 구조에 기반하여, 층간 활성화 함수(Activation function)의 가중치를 최적화(Optimization)하는 학습을 통해 결과적으로 신뢰성 높은 결과를 도출할 수 있다.
본 개시의 일 실시예에 의한 프로세서(121)에 적용 가능한 딥러닝 알고리즘은 예를 들어, 합성곱 신경망(Convolutional Neural Network; CNN) 또는 순환 신경망(Recurrent Neural Network; RNN) 등을 포함할 수 있으나 이에 한정되는 것은 아니다. 실시예에 따라 다른 딥러닝 알고리즘이 적용될 수 있음을 이해할 수 있다.
합성곱 신경망(Convolutional Neural Network; CNN)은 기존의 데이터에서 지식을 추출하여 학습 과정이 수행되는 기법과 달리, 데이터의 특징을 추출하여 특징들의 패턴을 파악하는 구조를 갖는 것을 특징으로 한다. 상기 합성곱 신경망(Convolutional Neural Network; CNN)은 콘볼루션(Convolution) 과정과 풀링(Pooling) 과정을 통해 수행될 수 있다. 다시 말해, 상기 합성곱 신경망(Convolutional Neural Network; CNN)은 콘볼루션 층과 풀링 층이 복합적으로 구성된 알고리즘을 포함할 수 있다. 여기서, 콘볼루션 층에서는 데이터의 특징을 추출하는 과정(에를 들어, 합성곱 과정(콘볼루션 과정))이 수행된다. 상기 콘볼루션 과정은 데이터에 각 성분의 인접 성분들을 조사해 특징을 파악하고 파악한 특징을 한장으로 도출하는 과정으로써, 하나의 압축 과정으로써 파라미터의 개수를 효과적으로 줄일 수 있다. 풀링 층에서는 콘볼루션 과정을 거친 레이어의 사이즈를 줄여주는 과정(예를 들어, 풀링 과정)이 수행된다. 상기 풀링 과정은 데이터의 사이즈를 줄이고 노이즈를 상쇄시키고 미세한 부분에서 일관적인 특징을 제공할 수 있다. 일 예로, 상기 합성곱 신경망(Convolutional Neural Network; CNN)은 정보 추출, 문장 분류, 얼굴 인식 등 여러 분야에 활용될 수 있다. 한편, 합성곱 신경망(Convolutional Neural Network; CNN)은 기공지된 기술이므로, 자세한 설명은 이하 생략한다.
이에 따라서, 프로세서(121)는, 제2 항목 정보 중 결측값이 발생한 상품명에 대응한 상품 정보를 판매량 예측 모델에 입력으로, 상기 결측값이 포함된 수집 정보를 획득한 획득 시점의 예측 판매량을 출력하고, 상기 출력된 예측 판매량을 보정값으로 식별할 수 있다.
일 실시예에 따른, 판매량 예측 모델은, 예를 들어, 카테고리에 따른 그룹 별로 학습된 인공지능 모델일 수 있다. 즉, 판매량 예측 모델은, 카테고리에 따른 복수의 그룹 별로 학습된 인공지능 모델로서, 각각의 카테고리의 그룹에 포함된 복수의 상품명과 상기 상품명에 대응하는 제1 항목 정보를 기초로 학습될 수 있다. 즉, 판매량 예측 모델은, 카테고리에 대응되는 복수의 상품명과 상기 상품명 각각에 대응되는 제1 항목 정보를 입력으로, 카테고리에 특화된 예측 판매량을 출력하도록 학습된 모델일 수 있다.
다른 실시예로, 판매량 예측 모델은, 상품명 별로 학습된 인공지능 모델일 수 있다. 즉, 각각의 상품명과 상기 상품명에 대응하는 제1 항목 정보를 기초로 학습되어 특정 상품(상품명)에 따라 특징적 상관관계를 학습하여, 특정 상품에 특화된 판매량을 예측할 수 있다.
보다 상세하게, 판매량 예측 모델은, 각각의 상품명과 상기 상품명에 대응하는 특정 기간에 따른 제1 항목 정보를 기초로 학습되어, 특정 상품(상품명, 상품)ID)에 따라 특징적 상관 관계를 학습하여, 특정 상품과 특정 기간에 특화된 판매량을 예측할 수 있다. 예시적으로, 특정 기간은 예를 들어, 28일 간의 상품 정보를 의미할 수 있으나, 이에 한정되는 것은 아니다.
한편, 본 개시의 일 실시예에 따른 판매량 예측 모델은, 리뷰 정보를 포함하는 상품 정보 및 이하에서 자세히 서술할 브랜드 정보를 입력으로, 예측 판매량을 출력하도록 학습된 모델일 수 있다.
한편, 본 개시의 일 실시예에 따른 판매량 예측 모델은, 특정 상품의 속성에 따라 다른 트렌드를 구별하여 학습하기 위하여 임베딩 레이더(embedding layer)를 더 포함할 수 있다. 즉, 판매량 예측 모델은, 특정 상품에 대한 상품 정보 및/또는 특정 상품에 대한 재고 정보를 포함하는 브랜드 정보를 기초로 학습하여 특정 상품에 대한 높은 예측 정확도를 갖도록 하는 것 외에, 임베딩 레이어를 더 포함시킴으로써, 특정 상품에 대한 상품 정보 및/또는 브랜드 정보를 구분하여 학습함으로써, 단일 판매량 예측 모델에 특정 상품에 대한 상품 정보 및/또는 브랜드 정보를 입력하는 경우, 다른 상품들의 트랜드(속성)과 구별하여 결과값을 출력할 수 있다. 이에 따라서, 판매량 예측 모델은 임베딩 레이어를 포함하여, 특정 상품에 대한 데이터적 의미적 유사성을 잘 캡처(capture)하여 의미를 학습할 수 있다.
즉, 판매량 예측 모델은, 특정 상품의 특징 또는 기간에 따른 특성을 학습함으로써, 특정 상품에 대한 상품 정보 및/또는 브랜드 정보가 입력되는 경우, 해당 특정 상품에 대한 예측 판매량을 보다 정확도 높게 출력할 수 있다. 다만, 이에 한정되는 것은 아니다.
한편, 본 개시의 일 실시예에 의한 판매량 예측 모델은, 앙상블 모델로서, 복수의 모델의 출력값을 입력으로 예측 판매량을 출력하도록 학습된 모델일 수 있다. 즉, 판매량 예측 모델은, 각기 다른 알고리즘을 활용하는 모델을 동일한 입력과 출력을 갖도록 학습 데이터(로우 데이터)를 입력하여 학습시킨 적어도 두 개의 판매량 예측 모델들로 구성될 수 있다. 이에 따라서, 판매량 예측 모델은 예시적으로, 제1 판매량 예측 모델 및 제2 판매량 예측 모델의 출력을 입력으로 예측 판매량을 출력하도록 학습된 제3 판매량 예측 모델을 포함할 수 있다. 다만, 이에 한정되는 것은 아니다.
다른 실시예로, 제1 판매량 예측 모델, 제2 판매량 예측 모델 및 제3 판매량 예측 모델의 출력을 입력으로, 예측 판매량을 출력하도록 학습된 제4 판매량 예측 모델을 포함할 수 있다.
다른 실시예로, 도 8을 참조하면, 본 개시의 일 실시예에 의한 프로세서(121)는, 상품 정보(21)를 제1 판매량 예측 모델(81)에 입력하여 제1 예측 판매량을 출력하고, 상기 상품 정보(21)를 제2 판매량 예측 모델(82)에 입력하여 제2 예측 판매량을 출력할 수 있다.
이에 따라, 프로세서(121)는, 출력된 제1 예측 판매량 및 제2 예측 판매량에 기초하여 예측 판매량을 식별(출력)할 수 있다.
일 실시예에 의한 제1 판매량 예측 모델(81)은, TCN(Temporal convolutional Network) 알고리즘을 기초로 학습된 모델이며, 제2 판매량 예측 모델(82)는 LSTM(Long Short Term Memory) 알고리즘을 기초로 학습된 모델이다. 다만, 이에 한정되는 것은 아니다. 한편, 다른 실시예로, 제1 내지 제3 판매량 예측 모델 중 어느 하나는 예를 들어, XGBoost(Extreme Gradient Boosting) 알고리즘을 기초로 학습된 모델 일 수 있다.본 개시의 일 실시예에 의한 TCN 알고리즘에 및 LSTM 알고리즘은 연속적인(시계열적인) 데이터를 처리하기 위한 딥러닝 모델이다. 보다 상세하게, TCN은 컨볼루션 신경망(CNN)을 시퀀스 데이터에 적용한 모델로, 시간적 의존성을 학습하기 위해 설계된 알고리즘이다. TCN은 임의의 길이의 시퀀스를 처리하고, 긴 시간적 의존성을 효과적으로 학습할 수 있으며, 일반적으로 LSTM보다 더 빠른 학습과 병렬 처리를 제공할 수 있다. TCN의 주요 특징은 컨볼루션 레이어를 사용하여 입력 시퀀스의 패턴을 학습하며, 깊이를 높이는 것을 통해 긴 시퀀스 의존성 즉, 시간과 데이터 간의 상관 관계를 확인할 수 있다.
또한, LSTM은 순환형 신경망(RNN)의 한 종류로, 시퀀스 데이터와 시계열 데이터를 처리하는 데 주로 사용된다. 보다 구체적으로, LSTM은 "단기 기억"과 "장기 기억"을 관리하는 내부 상태를 가지고 있어, 긴 시간 동안의 의존성 즉, 시간과 데이터 간의 상관 관계를 쉽게 학습할 수 있다.
본 개시의 일 실시예에 의한 프로세서(121)는, 제1 판매량 예측 모델(81), 제2 판매량 예측 모델(82) 및 제3 판매량 예측 모델(미도시)을 상술한 판매량 예측 모델과 같이 동일한 입력(input)과 출력(output)을 갖도록 학습시킬 수 있다. 다른 실시예로, XGBoost 알고리즘을 기초로 학습된 제3 판매량 예측 모델은, 제1 및 제2 판매량 예측 모델과 상이하게, 특정 상품의 시간(기간)에 따른 판매량만을 입력으로 학습된 것일 수 있다.
또 다른 실시예로, XGBoost 알고리즘을 기초로 학습된 판매량 예측 모델은, 특정 상품의 상품 정보에 포함된 가격, 평균 평점(또는 기준 평점의 평균), 누적 리뷰수, 찜하기, 랭킹 및 판매량을 기초로 학습되어, 특정 상품의 가격, 평균 평점(또는 기준 평점의 평균), 누적 리뷰수 및 찜하기 수를 입력으로 예측 판매량을 출력할 수 있다.
보다 구체적으로, 프로세서(121)는 상품 정보의 제1 항목 정보에 관한 로우 데이터(여기에서 로우 데이터는 학습 데이터로 이해할 수 있음)을 기반으로 데이터를 분석 및 처리하여 제1 판매량 예측 모델, 제2 판매량 예측 모델 및 제3 판매량 예측 모델을 구축할 수 있다. 즉, 프로세서(121)는, 제1 판매량 예측 모델 또는 제2 판매량 예측 모델 또는 제3 판매량 예측 모델을 상품 정보의 제1 항목 정보를 입력하는 경우 예측 일자 별 예측 판매량에 관한 시계열 데이터를 출력하도록 학습시킬 수 있다.한편, TCN을 통해 학습된 제1 판매량 예측 모델은 예측 일자 별 정밀한 예측이 가능하며, LSTM의 경우, 정밀한 일자별 예측보다는 트랜드(trent)(예를 들어, 상승, 유지, 하락) 예측에 중점적으로 예측하게 된다. XGBoost를 통해 학습된 제3 판매량 예측 모델은, 적은 로우 데이터(학습 데이터)로도 높은 정확도를 갖고 예측하게 된다.
이러한 특성에 기초하여, 본 개시의 일 실시예에 의한 프로세서(121)는, 특정 상품에 관한 상품 정보를 제1 판매량 예측 모델 및 제2 판매량 예측 모델에 입력하여 출력된 제1 예측 판매량 및 제2 예측 판매량에 가중치를 부여하고, 상기 가중치가 부여된 제1 예측 판매량 및 제2 예측 판매량을 기초로 (최종) 예측 판매량(83)을 출력(식별)할 수 있다.
보다 상세하게, 프로세서(121)는, 예측하고자 하는 예측 일과 현재 날짜 간의 기간인 예측 기간에 반비례하여, 상술한 제1 예측 판매량의 가중치를 부여하고, 상기 예측 기간에 비례하여, 상술한 제2 예측 판매량의 가중치를 부여할 수 있다. 이에 따라, 프로세서(121)는 상기 가중치가 부여된 제1 예측 판매량 및 제2 예측 판매량을 기초로 (최종) 예측 판매량(83)을 출력(식별)할 수 있다.
다른 실시예로, 프로세서(121)는, 판매량 예측 모델이, 제3 판매량 예측 모델을 더 포함하는 경우, 특정 상품에 관한 상품 정보를 제1 판매량 예측 모델, 제2 판매량 예측 모델 및 제3 판매량 예측 모델에 입력하여 출력된 제1 예측 판매량, 제2 예측 판매량 및 제3 예측 판매량에 가중치를 부여하고, 상기 가중치가 부여된 제1 내지 제3 예측 판매량을 기초로 (최종적인) 예측 판매량을 출력(식별)할 수 있다.
한편, 본 개시의 일 실시예에 의한 프로세서(121)는, 상품 정보(21) 및/또는 브랜드 정보를 입력으로, 예측 판매량을 출력하도록 판매량 예측 모델을 학습시킬 수 있다. 즉, 프로세서(121)는, 특정 상품명에 관한 상품 정보와 브랜드 정보에 포함된, 재고 정보를 입력으로, 예측 판매량이 출력되도록, 제1 항목 정보에 포함된 항목들과 재고 정보 간 상관 관계(예를 들어, 항목 정보, 리뷰 정보에 포함된 기준 평점과 재고 정보 간의 관계) 및 시간과 판매량 간의 상관 관계를 학습시킬 수 있다.
보다 상세하게, 프로세서(121)는, 재고 정보를 처리한 것에 기초하여, 일정 기간 동안 재고가 없는 경우, 그 기간 동안 일자별 재고가 있었으면 판매될 수 있는 수량을 기초로 실제 재고가 있었다면 판매되었을 손실된 매출을 일자별로 계산(산출)할 수 있다. 이 경우, 프로세서(121)는, 항목 정보와 리뷰 정보를 포함하는 상품 정보와 실제 재고가 있었다면 판매되었을 손실된 매출을 입력으로 예측 판매량이 출력되도록, 제1 항목 정보에 포함된 항목들과 재고 정보 간 상관 관계(예를 들어, 항목 정보, 리뷰 정보에 포함된 기준 평점과 재고 정보 간의 관계) 및 시간과 판매량 간의 상관 관계를 학습시킬 수 있다. 다만, 이에 한정되는 것은 아니다.한편, 본 개시의 일 실시예에 의한 프로세서(121)는, 통합 그라디언트(integrated Gradient)를 통해 판매량 예측 모델에 입력되는 상품 정보에 포함된 데이터의 기여도를 식별할 수 있다. 즉, 프로세서(121)는, 통합 그라디언트를 통해 상품 정보에 포함된 제1 항목 정보의 각각의 데이터 값들이 상기 판매량 예측 모델에 어느정도 기여하는지 정도(기여도)를 식별할 수 있다.
여기에서, 통합 그라디언트는, 기계학습 모델에서 입력 특성의 기여도를 해석하기 위한 방법 중 하나로, 인공지능 모델의 예측에 어떤 입력이 출력에 대하여 얼마나 중요한 역할을 하는지 판단하기 위한 방법이다. 보다 상세하게, 통합 그라디언트는, 입력 데이터와 모델의 입력 구성을 결정하고, 베이스라인 값은 입력 데이터의 출발점으로 설정하는 모델 입력 데이터 설정 및 베이스라인 값 설정 단계, 베이스라인에서부터 실제 입력까지의 경로를 등분하여 중요 지점을 결정하는 베이스라인 값에서 입력 데이터까지의 경로를 등분 구간으로 나누는 단계, 각 구간의 중간 지점에서 모델의 그라디언트를 계산하는 단계 및 계산된 그라디언트를 통합하여 입력 데이터의 중요도를 나타내는 중요도 점수를 생성하는 단계를 포함할 수 있다.
즉, 본 개시의 일 실시예에 의한 프로세서(121)는, 판매량 예측 모델에 대한 통합 그라디언트를 통해, 상품 정보에 포함된 제1 항목 정보 데이터들 중 예측 판매량에 대한 기여도(중요도)를 식별할 수 있다. 이에 따라서, 상품 정보 중 어떠한 데이터(리뷰수, 평점 등)에 따라 예측 판매량에 기여하는지 판단할 수 있다.
한편, 본 개시의 일 실시예에 의한 프로세서(121)는, 판매량 예측 모델의 통합 그라디언트를 통해 획득한 상품 정보에 포함된 제1 항목 정보 각각의 기여도를 획득하고, 상기 기여도가 미리 정해진 값보다 큰 항목과 상기 항목의 값을 사용자 단말(300)로 송신하도록 통신부(110)를 제어할 수 있다. 이에 따라, 사용자는 특정 상품 또는 특정 카테고리의 특정 요소(제1 항목 정보 중 어느 하나)가 판매량(매출)에 큰 영향을 미치는지 식별할 수 있다. 다만, 이에 한정되는 것은 아니다.
도 9는 일 실시예에 의한 전자 장치가 수집하는 리뷰 정보를 설명하기 위한 도면이다. 또한, 도 10은 일 실시예에 의한 전자 장치의 리뷰 정보의 대표 문장을 식별하는 것을 설명하기 위한 도면이다.
도 6 및 도 9를 참조하면, 본 개시의 일 실시예에 의한 프로세서(121)는, 서버(200)로부터 획득한 웹페이지 데이터를 처리한 것에 기초하여, 적어도 하나의 상품명과 상기 상품명에 대응되는 적어도 하나의 리뷰 정보(51)를 포함하는 수집 정보를 식별할 수 있다. 리뷰 정보(51)는 예를 들어, 상품명에 대응되어 상기 상품명에 대한 작성자 ID 및 상기 ID에 대응되는 평점과 고객리뷰 텍스트, 제품 사진, 찜수, 좋아요수, 게시일, 카테고리, 판매 옵션 등를 포함하는 메타데이터일 수 있다. 다만, 이는 예시적인 것으로서, 다른 실시예로, 리뷰 정보(51)는 상품명에 대한 복수의 작성자 ID 및 상기 ID에 대응되는 평점과 리뷰를 포함할 수 있다. 다만, 설명의 편의상, 이하에서는, 도 9에 도시된 바와 같이, 프로세서(121)는 웹페이지 데이터를 처리한 것에 기초하여, 하나의 상품명 및 상기 상품명에 대응되는 하나의 리뷰 정보를 포함하는 수집 정보를 식별하는 것으로 가정하고 설명하도록 한다.
본 개시의 일 실시예에 의한 프로세서(121)는, 수집 정보를 식별한 것에 응답하여, 상기 수집 정보를 처리한 것에 기초하여 리뷰 정보의 적어도 하나의 대표 문장을 식별할 수 있다. 예시적으로, 프로세서(121)는 리뷰 정보가 복수의 리뷰를 포함하는 경우, 각각의 리뷰에 대한 적어도 하나의 대표 문장을 식별할 수 있다.
보다 상세하게, 프로세서(121)는, 리뷰 정보를 n-gram을 통해 복수의 문장으로 분해하고, 상기 분해된 복수의 문장 각각과 상기 리뷰 정보 간의 유사도를 식별하여, 상기 복수의 문장 중 상기 식별된 유사도가 높은 미리 정해진 개수의 문장을 식별함으로써, 적어도 하나의 대표 문장을 식별하는 것일 수 있다.
도 10을 참조하면, 일 실시예에 의한 n-gram은 텍스트를 n개의 연속된 단어나 문자로 나누는 방법으로서, n은 n-gram의 크기를 결정하는 매개 변수로서, 미리 정해진 값일 수 있다. 이에 따라, 일 실시예에 따른 프로세서(121)는 리뷰 정보를 처리한 것에 기초하여, n-gram을 통해 n개의 연속된 단어로 복수의 문장으로 분해할 수 있다.
이후, 프로세서(121)는 분해된 복수의 문장 각각과 리뷰 정보(51) 전체의 리뷰 간의 유사도를 식별할 수 있다. 여기에서, 유사도를 식별하는 것은, 상술한 문장 임베딩(sentence embedding)을 통해 구현될 수 있다. 보다 구체적으로, 일 실시예에 의한 프로세서(121)는, 분해된 복수의 문장 각각과 리뷰 정보(51)의 리뷰에 대하여 문장 임베딩을 계산할 수 있다. 이에 따라, 프로세서(121)는 복수의 문장 각각과 리뷰 정보(51) 간의 코사인 유사도를 식별할 수 있다.
예시적으로, 도 10에 도시된 바에 따르면, 프로세서(121)는, 리뷰 정보(51)를 n-gram을 통해 제1 문장 내지 제5 문장으로 분해할 수 있다. 이 경우, 프로세서(121)는 제1 내지 제5 문장 및 리뷰 정보(51)에 포함된 리뷰의 문장 임베딩을 계산할 수 있다. 이후 프로세서(121)는 제1 내지 제5 문장의 문장 임베딩과 리뷰 정보(51)의 문장 임베딩 간의 코사인 유사도(cosine simirarity)를 식별할 수 있다. 이에 따라, 프로세서(121)는, 분해된 제1 내지 제5 문장 각각과 상기 리뷰 정보(51) 간의 유사도를 식별하여, 상기 복수의 문장 중 상기 식별된 유사도가 높은 순서대로 미리 정해진 개수의 문장을 식별함으로써, 적어도 하나의 대표 문장을 식별할 수 있다. 도시된 바에 따르면, 상기 미리 정해진 개수는 3 개로 설정된 것을 이해할 수 있다.
한편, 본 개시의 일 실시예에 의한 프로세서(121)는, 식별된 적어도 하나의 대표 문장을 평점 추출 모델에 입력하여, 리뷰 정보의 평점을 추출(출력)할 수 있다. 즉, 리뷰와 상기 리뷰에 대응되는 평점은, 사람들의 다양한 감정과 그에 따른 주관적인 평점을 포함하므로, 일부 사람이 특정 영역(예를 들어, 상품의 질 또는 서비스의 질)을 중시하는 경우, 해당하는 사람은 특정 영역 외의 영역에 대한 만족도가 낮더라도 특정 영역을 높게 제공 받으면 높은 점수를 부여하는 경우가 발생한다. 즉, 이렇게 부여 받은 평점은 변별력이 없는 무의미한 평점이 될 수 있으므로, 이러한 문제를 해결하기 위하여 프로세서(121)는, 리뷰 정보(51)에 대한 평점을 새로 추출(출력)하는 것일 수 있다. 이렇게 새로 출력된 평점을, 기준 평점으로 명명하도록 한다. 즉, 기준 평점은, 평점 추출 모델에 리뷰 정보를 입력으로 출력된 평점을 의미할 수 있다.
도 11은 일 실시예에 의한 전자 장치의 평점 추출 모델을 학습시키기 위한 학습 데이터를 설명하기 위한 도면이다. 또한, 도 12는 일 실시예에 의한 전자 장치의 평점 추출에 관한 실시예를 설명하기 위한 도면이다.
도 11 내지 도 12를 참조하면, 본 개시의 일 실시예에 의한 프로세서(121)는, 복수의 리뷰 정보(51) 및 상기 리뷰 정보(51) 각각에 대응되는 리뷰 전체 감정(전체 감정), 상품에 대한 감정(제품 감정), 서비스에 대한 감정(서비스 감정), 리뷰 타입, 평점을 입력하여 평점 추출 모델(52)을 학습시킬 수 있다. 즉, 평점 추출 모델(52)은, 리뷰 정보(51) 및 상기 리뷰 정보에 대한 사람이 직접 평가를 통해 라벨링함으로써 획득된 로우 데이터(학습 데이터)를 기초로 학습되어, 리뷰에 관한 문장을 포함하는 리뷰 정보가 입력되는 경우, 상기 문장(리뷰)에 대응되는 전체 감정, 제품 감정, 서비스 감정, 리뷰 타입 또는 평점 중 적어도 하나를 출력할 수 있다. 한편, 전체 감정, 제품 감정 및 서비스 감정은 예를 들어, 긍정적, 부정적 또는 중립적인 감정 중 어느 하나에 대한 평가로 라벨링될 수 있다. 또한, 리뷰 타입의 경우, 리뷰의 길이에 따른 단순 리뷰와 진정성 리뷰 또는 중복적인 내용을 포함하는 인위적 리뷰 중 어느 하나에 대한 평가로 라벨링될 수 있다.
이 경우, 프로세서(121)는, 상술한 바와 같이, 리뷰 정보(51)를 포함하는 수집 정보를 처리 한 것에 기초하여 리뷰 정보의 적어도 하나의 대표 문장을 식별하고, 상기 적어도 하나의 대표 문장을 평점 추출 모델(52)에 입력하여, 전체 감정, 제품 감정, 서비스에 대한 감정, 리뷰 타입 또는 평점 중 적어도 하나를 출력할 수 있다.
일 실시예에 의한 프로세서(121)는, 대표 문장이 예를 들어, 제1 문장 및 제2 문장을 포함하는 경우, 제1 문장을 평점 추출 모델(52)에 입력하여 출력된 제1 점수 및 상기 제2 문장을 평점 추출 모델에 입력하여 출력된 제2 점수를 기초로 리뷰 정보의 평점을 추출할 수 있다. 보다 상세하게, 프로세서(121)는, 제1 점수 및 제2 점수의 평균을 리뷰 점수의 평점으로 추출(출력)할 수 있다.
예시적으로, 평점 추출 모델(52)은 복수의 평점 추출 모델을 포함한 앙상블 모델일 수 있다. 일 실시예에 의한 평점 추출 모델(52)은, 제1 모델 및 제2 모델을 포함할 수 있다. 보다 구체적으로, 평점 추출 모델은, 리뷰에 관한 문장을 포함하는 리뷰 정보(51)가 입력되면 상기 문장에 대응되는 평점이 출력되도록 리뷰에 관한 문장 및 상기 문장에 대응되는 평점을 포함하는 학습 데이터셋을 입력으로 학습된 제1 모델 또는 제2 모델 중 적어도 하나를 포함할 수 있다.
제1 모델 및 제2 모델은 서로 다른 알고리즘을 기초로 학습된 인공지능 모델로서, 예시적으로, 제1 모델 또는 제2 모델은, KeyBERT 알고리즘, KoBERT 알고리즘, DeBERTa 알고리즘 또는 XLNet 알고리즘 중 하나일 수 있다.
상술한 예시에서, 프로세서(121)은 수집 정보를 처리한 것에 기초하여, 리뷰 정보를 식별하고, 상기 리뷰 정보를 처리한 것에 기초하여 식별된 적어도 하나의 대표 문장을 상기 제1 모델 및 제2 모델에 입력하여 각각 제1 출력 및 제2 출력을 획득(추출 또는 출력)할 수 있다. 이 경우, 프로세서(121)는, 제1 출력 및 제2 출력을 기초로 리뷰 정보의 평점을 추출할 수 있다.
보다 상세하게, 프로세서(121)는 적어도 하나의 대표 문장을 제1 모델에 입력하여 평점에 관한 제1 출력을 출력(획득)할 수 있다. 또한, 프로세서(121)는 적어도 하나의 대표 문장을 제2 모델에 입력하여 평점에 관한 제2 출력을 출력(획득)할 수 있다. 이에 따라, 일 실시예에 의한 프로세서(121)는 상기 제1 출력 및 상기 제2 출력의 평균값을 평점으로 식별(추출)할 수 있다.
한편, 다른 실시예로, 프로세서(121)는, 적어도 하나의 대표 문장을 제1 모델, 제2 모델 및 상기 제1 모델 및 제2 모델과 상이한 알고리즘을 통해 학습된 제3 모델에 입력하여, 각기 상기 적어도 하나의 대표 문장에 대한 전체 감정, 제품 감정, 서비스 감정, 리뷰 타입 또는 평점 중 적어도 하나를 포함하는 제1 출력, 제2 출력 및 제3 출력을 획득할 수 있다. 이 경우, 프로세서(121)는, 전체 감정에 대응되는 제1 출력, 제2 출력 및 제3 출력에 기초하여, 최종 전체 감정을 추출(출력)할 수 있다. 이와 마찬가지로, 프로세서(121)는, 제품 감정, 서비스 감정, 리뷰 타입 또는 평점에 대하여, 상술한 제1 모델 내지 제3 모델에 기초하여 최종 제품 감정, 최종 서비스 감정, 최종 리뷰 타입 또는 최종 평점을 출력할 수 있다.
즉, 상술한 제1 출력 내지 제3 출력에 기초하여, 최종 전체 감정을 출력한다는 것은 예시적으로, 제1 출력, 제2 출력 및 제3 출력이 전체 감정에 대하여 각각 긍정, 긍정 및 부정인 것에 응답하여, 절대 다수인 감정으로 출력되어, 최종 전체 감정은 긍정으로 출력될 수 있다. 이와 마찬가지로, 제1 출력 내지 제3 출력의 절대 다수의 감정 또는 값(데이터)에 따라, 최종 제품 감정, 최종 서비스 감정 또는 최종 리뷰 타입이 추출될 수 있다. 다만, 이에 한정되는 것은 아니고, 평점의 경우는, 제1 출력 내지 제3 출력의 평균 값에 따라 최종 평점이 출력될 수 있다.
한편, 상술한 실시예에서, 절대 다수가 없는 것에 응답하여, 프로세서(121)는, 제1 출력의 결과를 최종 결과로 추출(출력)할 수 있다. 예시적으로, 대표 문장이 입력되어 전체 감정에 관한 제1 출력, 제2 출력 및 제3 출력의 이 각각 긍정, 중립 및 부정인 것에 응답하여, 프로세서(121)는 제1 모델의 출력인 제1 출력의 결과인 긍정을 상기 입력된 대표 문장의 전체 감정으로 추출(출력)할 수 있다.
또 다른 실시예로, 프로세서(121)는, 대표 문장이 예를 들어, 제1 문장, 제2 문장 및 제3 문장을 포함하는 경우에 있어서, 제1 문장을 상술한 제1 모델, 제2 모델 및 상기 제1 모델 및 제2 모델과 상이한 알고리즘을 통해 학습된 제3 모델에 입력하여, 획득된 제1 출력 내지 제3 출력을 획득할 수 있다. 또한, 프로세서(121)는, 제2 문장을 상술한 제1 모델, 제2 모델 및 상기 제1 모델 및 제2 모델과 상이한 알고리즘을 통해 학습된 제3 모델에 입력하여, 획득된 제1 출력 내지 제3 출력을 획득할 수 있다. 또한, 프로세서(121)는, 제3 문장을 상술한 제1 모델, 제2 모델 및 상기 제1 모델 및 제2 모델과 상이한 알고리즘을 통해 학습된 제3 모델에 입력하여, 획득된 제1 출력 내지 제3 출력을 획득할 수 있다.
이 경우, 프로세서(121)는, 제1 문장을 제1 모델 내지 제3 모델에 입력하여 획득한 제1 출력 내지 제3 출력에 기초하여, 최종 전체 감정, 최종 제품 감정, 최종 서비스 감정, 최종 리뷰 타입 또는 최종 평점을 추출(출력)할 수 있다. 또한, 프로세서(121)는, 제2 문장을 제1 모델 내지 제3 모델에 입력하여 획득한 제1 출력 내지 제3 출력에 기초하여, 최종 전체 감정, 최종 제품 감정, 최종 서비스 감정, 최종 리뷰 타입 또는 최종 평점을 추출(출력)할 수 있다. 즉, 프로세서(121)는 리뷰 정보에 포함된 리뷰의 식별된 적어도 하나의 대표문장 각각에 대하여, 제1 모델 내지 제3 모델에 입력하여 출력된 제1 출력 내지 제3 출력을 기초로 최종 전체 감정, 최종 제품 감정, 최종 서비스 감정, 최종 리뷰 타입 또는 최종 평점을 추출(출력할 수 있다.
이에 따라, 프로세서(121)는, 각각의 대표 문장에 대한 최종 전체 감정, 최종 제품 감정, 최종 서비스 감정 또는 최종 리뷰 타입의 절대 다수의 감정 또는 데이터를 상기 리뷰 정보의 전체 감정, 제품 감정, 서비스 감정 또는 리뷰 타입으로 추출(출력)할 수 있다. 다만, 이에 한정되는 것은 아니고, 평점의 경우는, 각각의 대표 문장에 대한 최종 평점의 평균 값에 따라 평점이 출력될 수 있다.
한편, 상술한 평점 추출 모델(52)은, KeyBERT 알고리즘, KoBERT 알고리즘, DeBERTa 알고리즘 또는 XLNet 알고리즘 외에도 기공지된 자연어 처리 알고리즘 또는 향후 개발될 자연어 처리 알고리즘이 적용될 수 있음을 이해할 수 있으며, 제1 모델 내지 제3 모델 외에도 복수 개의 모델이 적용되어 각 모델의 출력을 기초로 리뷰 정보의 전체 감정, 제품 감정, 서비스 감정, 리뷰 타입 또는 평점을 출력할 수 있음을 이해할 수 있다.
본 개시의 일 실시예에 의한 프로세서(121)는 상술한 실시예서 설명한 바와 같이, 수집 정보에 포함된 상품명, 상기 상품명에 대응되는 적어도 하나의 리뷰 정보를 식별하고, 상기 리뷰 정보를 처리한 것에 기초하여, 상기 리뷰 정보의 평점을 추출할 수 있다. 즉, 프로세서(121)는, 리뷰 정보에 포함된 리뷰에 관한 텍스트를 기초로 리뷰 정보에 포함된 고객들의 평점과 별개로 객관화된 기준 평점을 추출할 수 있다.
보다 상세하게, 프로세서(121)는, 웹페이지 데이터를 처리한 것에 기초하여, 식별된 수집 정보에 포함된, 상품명에 대응되어 상기 상품명에 대한 작성자 ID 및 상기 ID에 대응되는 평점과 고객리뷰 텍스트, 제품 사진, 찜수, 좋아요수, 게시일, 카테고리, 판매 옵션 등을 포함하는 리뷰 정보를, 평점 추출 모델에 입력하여, 기준 평점을 추출하고, 상기 리뷰 정보에 기준 평점 항목을 추가함으로써, 상기 리뷰 정보에 대한 기준 평점을 업데이트 할 수 있다. 즉, 프로세서(121)는, 수집 정보에 포함된 리뷰 정보를 처리한 것에 기초하여, 리뷰 정보에 기준 평점 항목을 추가함으로써, 리뷰 정보를 업데이트할 수 있다.본 개시의 일 실시예에 의한 프로세서(121)는 웹페이지 데이터를 처리한 것에 기초하여, 획득된 상품명과 상기 상품명에 대응되는 제1 항목 정보를 포함하는 수집 정보에서, 제1 항목 정보는, 리뷰 정보를 포함할 수 있다. 다만, 여기 리뷰 정보에서는, 고객들이 부여한 평점 정보를 포함할 뿐, 평점 추출 모델을 통해 획득된 기준 평점은 포함되어 있지 않다. 이 경우, 프로세서(121)는, 기저장된 상품 정보를 업데이트하는 경우, 예를 들어, 특정 상품명에 관한 리뷰 정보를 입력으로 획득한 기준 평점을 상기 특정 상품명에 관한 제1 항목 정보에 추가적인 항목인 기준 평점 항목을 신설하여 메타 데이터 형식으로 업데이트할 수 있다.
한편, 본 개시의 일 실시예에 의한 프로세서(121)는, 특정 브랜드에 관한 적어도 하나의 상품명에 대한 상품 정보를 상술한 판매량 예측 모델에 입력하여 출력된 예측 판매량, 상기 적어도 하나의 상품명에 대응되는 리뷰 정보 및 메모리(122)에 기저장되거나 통신부(110)를 통해 획득한 브랜드 정보를 브랜드 가치 평가 모델에 입력하여, 브랜드의 적어도 하나의 가치 지표를 출력할 수 있다. 보다 상세하게, 프로세서(121)는, 특정 브랜드에 관한 적어도 하나의 상품명에 대한 상품 정보를 상술한 판매량 예측 모델에 입력하여 출력된 예측 판매량, 상기 적어도 하나의 상품명에 대응되는 리뷰 정보를 상술한 평점 추출 모델에 입력하여 출력된 전체 감정, 제품 감정, 서비스 감정, 리뷰 타입 또는 기준 평점 및 브랜드 정보를 브랜드 가치 평가 모델에 입력하여, 브랜드의 적어도 하나의 가치 지표를 출력할 수 있다.
여기에서, 브랜드 정보는 예를 들어, 거래 기간을 포함하는 거래 정보, 주간 평균 매출액, 주간 매출액 변동성과 년간 매출액 대비 주간 매출액 비율 변동성을 포함하는 매출액 정보, 판매채널수와 판매채널 별 매출액 분포도를 포함하는 판매 채널 정보, 일별 거래 고객수, 충성 고객수와 신규 고객수를 포함하는 고객 정보, 반품율과 클레임(claim) 수를 포함하는 평판 정보, 매출원가율, 광고비용율,물류비용율, 서비스비용율, 매출액 대비 재고금액과 매출채권 회수 리드 타임을 포함하는 재무 정보, 고객 평점, 총 고객 리뷰수, 고객 리뷰 타입 별 개수, 리뷰 별 전체 감정, SNS 리뷰 수, SNS 리뷰 타입 별 개수, SNS 리뷰 별 전체 감정과 해당 카테고리 판매자 순위를 포함하는 eWOM 정보, Lost GMV, 품절율, 재고일수, 회전율과 주문 납품율을 포함하는 재고 정보, SKU 수, SKU 당 매출, 신규 SKU 출시 수, SKU 라이프 사이클, SKU 클릭 수, SKU 상세페이지 체류시간, SKU 별 주문 취소율과 SKU 별 배송 리드 타임을 포함하는 제품 정보,주간 평균 가격, 주간 평균 가격 변동성과 프로모션 행사를 포함하는 가격 정보 및 계절성을 포함하는 기타 정보 중 적어도 하나를 포함할 수 있다.
한편, 본 개시의 일 실시예에 의한 프로세서(121)는, 특정 브랜드의 적어도 하나의 상품명에 관한 예측 판매량, 특정 브랜드의 적어도 하나의 상품명에 대응하는 리뷰 정보의 전체 감정, 제품 감정, 서비스 감정, 리뷰 타입 또는 평점 및 브랜드 정보와 상기 특정 브랜드에 대한 사람이 직접 평가를 통해 라벨링함으로써 획득된 학습 데이터를 기초로 브랜드 가치 평가 모델을 학습시킬 수 있다. 한편, 상기 학습 데이터는 예를 들어, 리뷰 지표(index) 점수, 평점 지표 점수, 순위 지표 점수 및 수익 지표 점수를 포함할 수 있다. 즉, 브랜드 가치 평가 모델은, 상기 예측 판매량, 상기 리뷰 정보 및 브랜드 정보를 입력으로 리뷰 지표(index) 점수, 평점 지표 점수, 순위 지표 점수 및 수익 지표 점수를 출력하도록 학습된 인공지능 모델일 수 있다. 한편, 상술한 지표 점수는 각각 0 내지 10에 대응되는 점수로 라벨링될 수 있다.
한편, 본 개시의 일 실시예에 의한 프로세서(121)는, 브랜드 가치 평가 모델에 대한 통합 그라디언트를 통해, 특정 브랜드의 적어도 하나의 상품명에 관한 예측 판매량, 특정 브랜드의 적어도 하나의 상품명에 대응하는 리뷰 정보의 전체 감정, 제품 감정, 서비스 감정, 리뷰 타입 또는 평점 및 브랜드 정보 중 각각의 지표(리뷰 지표, 평점 지표, 순위 지표, 수익 지표)에 대한 기여도(중요도)를 식별할 수 있다. 이에 따라서, 사용자는 어떠한 개선점에 따라 브랜드의 가치가 올라갈 수 있는지 식별할 수 있다. 다만, 이에 한정되는 것은 아니다.
다르 실시예로, 프로세서(121)는, 브랜드 가치 평가 모델의 통합 그라디언트를 통해 입력 정보 각각의 기여도를 획득하고, 상기 기여도가 미리 정해진 값보다 큰 항목과 상기 항목의 값을 사용자 단말(300)로 송신하도록 통신부(110)를 제어할 수 있다.
메모리(122)는 전술한 동작 및 후술하는 동작을 수행하는 프로그램을 저장할 수 있으며, 프로세서(121)는 저장된 프로그램을 실행시킬 수 있다. 메모리(562)와 프로세서(121)가 복수인 경우에, 이들이 하나의 칩에 집적되는 것도 가능하고, 물리적으로 분리된 위치에 마련되는 것도 가능하다. 메모리(562)는 데이터를 일시적으로 기억하기 위한 S램(Static Random Access Memory, S-RAM), D램(Dynamic Random Access Memory) 등의 휘발성 메모리를 포함할 수 있다. 또한, 메모리(562)는 제어 프로그램 및 제어 데이터를 장기간 저장하기 위한 롬(Read Only Memory), 이피롬(Erasable Programmable Read Only Memory: EPROM), 이이피롬(Electrically Erasable Programmable Read Only Memory: EEPROM) 등의 비휘발성 메모리를 포함할 수 있다. 프로세서(121)는 각종 논리 회로와 연산 회로를 포함할 수 있으며, 메모리(562)로부터 제공된 프로그램에 따라 데이터를 처리하고, 처리 결과에 따라 제어 신호를 생성할 수 있다.
본 개시의 일 실시예에 의한 메모리(122)는, 상술한 상품 정보, 수집 정보, 리뷰 정보 및 브랜드 정보를 저장할 수 있다.
도 13 내지 도 14는 일 실시예에 의한 학습용 데이터 전처리 방법을 설명하기 위한 순서도이다. 또한, 도 15는, 일 실시예에 의한 리뷰 분석 방법을 설명하기 위한 순서도이다. 도 16 내지 도 17은 일 실시예에 의한 브랜드 가치 평가 방법을 설명하기 위한 순서도이다.
도 13 내지 도 17에 도시된 방법은 앞서 설명된 본 시스템(1000) 또는 본 장치(100)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도, 시스템(1000) 및 본 장치(100)에 대하여 설명된 내용은 이하 설명하는 방법에도 동일하게 적용될 수 있다.
도 13을 참조하면, 본 장치(100)는 웹페이지 데이터를 수신할 수 있다(S110).
또한, 본 장치(100)는 웹페이지 데이터를 처리한 것에 기초하여 수집 정보를 식별할 수 있다(S120).
또한, 본 장치(100)는 상품 정보 및 수집 정보를 처리한 것에 기초하여, 상품 정보 및 수집 정보 간의 동일 상품 여부를 판단할 수 있다(S130).
또한, 본 장치(100)는 동일 상품으로 판단된 것에 응답하여, 상품 정보를 업데이트할 수 있다(S140).
도 14를 참조하면, 본 장치(100)는 상품 정보 및 수집 정보를 처리한 것에 기초하여, 상품 정보 및 수집 정보에 포함된 상품명 각각의 문장 임베딩(Sentence embedding)을 계산할 수 있다(S210).
또한, 본 장치(100)는 각각의 문장 임베딩 간의 코사인 유사도(cosine similarity)를 식별할 수 있다(S220).
또한, 본 장치(100)는 식별된 코사인 유사도가 미리 정해진 값보다 큰지 여부를 판단할 수 있다(S230).
이 경우, 본 장치(100)는, 식별된 코사인 유사도가 미리 정해진 값보다 큰 것에 응답하여, 동일한 상품으로 판단할 수 있다(S240).
한편, 본 장치(100)는, 식별된 코사인 유사도가 미리 정해진 값보다 작은 것에 응답하여, 다른 상품으로 판단할 수 있다(S250).
도 15를 참조하면, 본 장치(100)는 웹페이지 데이터를 수신할 수 있다(S310).
또한, 본 장치(100)는 웹페이지 데이터를 처리한 것에 기초하여, 리뷰 정보를 포함하는 수집 정보를 식별할 수 있다(S320).
또한, 본 장치(100)는 수집 정보를 처리한 것에 기초하여 리뷰 정보의 적어도 하나의 대표 문장을 식별할 수 있다(S330).
또한, 본 장치(100)는 식별된 적어도 하나의 대표 문장을 평점 추출 모델에 입력하여 리뷰 정보의 평점을 추출할 수 있다(S340).
도 16을 참조하면, 본 장치(100)는 상품 정보, 리뷰 정보 및 브랜드 정보를 저장할 수 있다(S410).
또한, 본 장치(100)는 상품 정보를 처리한 것에 기초하여, 상기 상품 정보를 판매량 예측 모델에 입력하여 예측 판매량을 출력할 수 있다(S420).
또한, 본 장치(100)는 예측 판매량, 리뷰 정보 및 브랜드 정보를 브랜드 가치 평가 모델에 입력하여 브랜드의 적어도 하나의 가치 지표를 출력할 수 있다(S430).
도 17을 참조하면, 본 장치(100)는 상품 정보를 저장할 수 있다(S510).
또한, 본 장치(100)는 상품 정보를 제1 판매량 예측 모델에 입력하여 제1 예측 판매량을 출력할 수 있다(S520).
이 경우, 본 장치(100)는 예측 기간에 반비례하여 제1 예측 판매량에 가중치를 부여할 수 있다(S530).
한편, 본 장치(100)는 상품 정보를 제2 판매량 예측 모델에 입력하여 제2 예측 판매량을 출력할 수 있다(S540).
이 경우, 본 장치(100)는 예측 기간에 비례하여 제2 예측 판매량에 가중치를 부여할 수 있다(S550).
또한, 본 장치(100)는 가중치가 부여된 제1 예측 판매량 및 제2 예측 판매량을 기초로 예측 판매량을 출력할 수 있다(S560).
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래시 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 발명이 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.
1000: 본 시스템
100: 전자 장치
110: 통신부
120: 제어부
200: 서버 300: 사용자 단말

Claims (24)

  1. 학습용 데이터 전처리 전자 장치에 있어서,
    서버로부터 웹페이지 데이터를 수신하는 통신부; 및
    상기 웹페이지 데이터를 처리하는 프로세서 및 적어도 하나의 상품명 및 상기 상품명에 대응되는 제1 항목 정보를 포함하는 상품 정보를 저장하는 메모리를 포함하는 제어부;를 포함하되,
    상기 프로세서는,
    상기 웹페이지 데이터를 처리한 것에 기초하여, 적어도 하나의 상품명과 상기 상품명에 대응되는 제2 항목 정보를 포함하는 수집 정보를 식별하고,
    기저장된 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보 및 상기 수집 정보 간의 동일 상품 여부를 판단하고,
    상기 상품 정보 및 상기 수집 정보가 동일 상품으로 판단된 것에 응답하여, 상기 상품 정보를 업데이트하되,
    상기 수집 정보를 처리한 것에 기초하여, 제2 항목 정보 중 적어도 하나의 결측값이 식별된 것에 응답하여, 결측값 보정 프로세스를 수행하고,
    상기 결측값 보정 프로세스는,
    상기 결측값에 대응되는 상기 제1 항목 정보를 처리한 것에 기초하여, 보정값을 식별하고, 상기 식별된 보정값을 기초로 상기 제2 항목 정보의 결측값을 보정하고,
    상기 결측값을 보정하는 것은,
    상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 평균 값을 기초로 보정하고,
    상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 값이 없는 것에 응답하여, 상기 상품 정보를 처리한 것에 기초하여, 상기 상품명이 포함된 그룹의 상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 평균값을 기초로 보정하는,
    전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보에 포함된 상품명 및 상기 수집 정보에 포함된 상품명 간의 유사도를 식별하고,
    상기 유사도를 기초로, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명 간의 동일 상품 여부를 판단하는,
    전자 장치.
  3. 제2항에 있어서,
    상기 프로세서는,
    상기 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보에 포함된 상품명 및 상기 수집 정보에 포함된 상품명 각각의 문장 임베딩(Sentence embedding)을 계산하고,
    상기 계산된 문장 임베딩 간의 코사인 유사도(Cosine similarity)를 식별함으로써, 상기 유사도를 식별하는,
    전자 장치.
  4. 제3항에 있어서,
    상기 프로세서는,
    상기 식별된 유사도가 미리 정해진 값보다 큰 것에 응답하여, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명이 동일한 상품으로 판단하는,
    전자 장치.
  5. 제4항에 있어서,
    상기 프로세서는,
    상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명이 동일한 상품으로 판단된 것에 응답하여, 상기 제2 항목 정보를 기초로 상기 제1 항목 정보를 업데이트하는,
    전자 장치.
  6. 제5항에 있어서,
    상기 프로세서는,
    상기 식별된 유사도가 미리 정해진 값보다 작은 것에 응답하여, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명이 다른 상품으로 판단하는,
    전자 장치.

  7. 삭제
  8. 삭제
  9. 제1항에 있어서,
    상기 결측값 보정 프로세스는,
    상기 식별된 결측값이 판매량인 것에 응답하여, 상기 상품명에 대응되는 제1 항목 정보를 판매량 예측 모델에 입력하여 출력된 예측 판매량을 기초로 상기 제2 항목 정보를 보정하는,
    전자 장치.
  10. 제1항에 있어서,
    상기 상품 정보는
    적어도 하나의 카테고리에 따른 그룹 및 상기 그룹에 대응되는 복수의 상품명과 상기 상품명 각각에 대응되는 제1 항목 정보를 포함하는,
    전자 장치.
  11. 삭제
  12. 제1항에 있어서,
    상기 제1 항목 정보 또는 제2 항목 정보는
    판매 옵션, 판매량, 누적 리뷰수, 순위(Rank), 가격, 링크, 평점, 배송비, 찜하기 수, 카테고리, 출시일, 브랜드명 또는 제조사명 중 적어도 하나를 포함하는,
    전자 장치.
  13. 학습용 데이터 전처리 방법에 있어서,
    서버로부터 웹페이지 데이터를 수신하는 단계;
    적어도 하나의 상품명 및 상기 상품명에 대응되는 제1 항목 정보를 포함하는 상품 정보를 저장하는 단계;
    상기 웹페이지 데이터를 처리한 것에 기초하여, 적어도 하나의 상품명과 상기 상품명에 대응되는 제2 항목 정보를 포함하는 수집 정보를 식별하는 단계;
    상기 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보 및 상기 수집 정보 간의 동일 상품 여부를 판단하는 단계;
    상기 상품 정보 및 상기 수집 정보가 동일 상품으로 판단된 것에 응답하여, 상기 상품 정보를 업데이트하는 단계; 및
    상기 수집 정보를 처리한 것에 기초하여, 제2 항목 정보 중 적어도 하나의 결측값이 식별된 것에 응답하여, 결측값 보정 프로세스를 수행하는 단계;를 포함하고,
    상기 결측값 보정 프로세스는,
    상기 결측값에 대응되는 상기 제1 항목 정보를 처리한 것에 기초하여, 보정값을 식별하고, 상기 식별된 보정값을 기초로 상기 제2 항목 정보의 결측값을 보정하고,
    상기 결측값을 보정하는 것은,
    상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 평균 값을 기초로 보정하고,
    상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 값이 없는 것에 응답하여, 상기 상품 정보를 처리한 것에 기초하여, 상기 상품명이 포함된 그룹의 상기 결측값에 대응되는 제1 항목 정보의 미리 정해진 기간의 평균값을 기초로 보정하는,
    방법.
  14. 제13항에 있어서,
    상기 동일 상품 여부를 판단하는 것은,
    상기 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보에 포함된 상품명 및 상기 수집 정보에 포함된 상품명 간의 유사도를 식별하고,
    상기 유사도를 기초로, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명 간의 동일 상품 여부를 판단하는,
    방법.
  15. 제14항에 있어서,
    상기 유사도를 식별하는 것은,
    상기 상품 정보 및 상기 수집 정보를 처리한 것에 기초하여, 상기 상품 정보에 포함된 상품명 및 상기 수집 정보에 포함된 상품명 각각의 문장 임베딩(Sentence embedding)을 계산하고,
    상기 계산된 문장 임베딩 간의 코사인 유사도(Cosine similarity)를 식별함으로써, 상기 유사도를 식별하는,
    방법.
  16. 제 15항에 있어서,
    상기 동일 상품 여부를 판단하는 것은,
    상기 식별된 유사도가 미리 정해진 값보다 큰 것에 응답하여, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명이 동일한 상품으로 판단하는,
    방법.
  17. 제16항에 있어서,
    상기 업데이트하는 것은,
    상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명이 동일한 상품으로 판단된 것에 응답하여, 상기 제2 항목 정보를 기초로 상기 제1 항목 정보를 업데이트하는,
    방법.
  18. 제17항에 있어서,
    상기 동일 상품 여부를 판단하는 것은,
    상기 식별된 유사도가 미리 정해진 값보다 작은 것에 응답하여, 상기 상품 정보에 포함된 상품명과 상기 수집 정보에 포함된 상품명이 다른 상품으로 판단하는,
    방법.

  19. 삭제
  20. 삭제
  21. 제13항에 있어서,
    상기 결측값 보정 프로세스는,
    상기 식별된 결측값이 판매량인 것에 응답하여, 상기 상품명에 대응되는 제1 항목 정보를 판매량 예측 모델에 입력하여 출력된 예측 판매량을 기초로 상기 제2 항목 정보를 보정하는,
    방법.
  22. 제13항에 있어서,
    상기 상품 정보는
    적어도 하나의 카테고리에 따른 그룹 및 상기 그룹에 대응되는 복수의 상품명과 상기 상품명 각각에 대응되는 제1 항목 정보를 포함하는,
    방법.
  23. 삭제
  24. 제13항의 학습용 데이터 전처리 방법을 실행시킬 수 있는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
KR1020230179941A 2023-02-23 2023-12-12 웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법 KR102653187B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20230024420 2023-02-23
KR1020230024420 2023-02-23

Publications (1)

Publication Number Publication Date
KR102653187B1 true KR102653187B1 (ko) 2024-04-01

Family

ID=90666894

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230179941A KR102653187B1 (ko) 2023-02-23 2023-12-12 웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR102653187B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021532501A (ja) * 2019-08-19 2021-11-25 平安科技(深▲せん▼)有限公司Ping An Technology (Shenzhen) Co., Ltd. データのインテリジェント分析方法、装置、コンピュータ機器及び記憶媒体
KR20220026709A (ko) * 2020-08-26 2022-03-07 오스템임플란트 주식회사 구매자 의사결정을 위한 상품 관련 정보 자동 제공 방법 및 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021532501A (ja) * 2019-08-19 2021-11-25 平安科技(深▲せん▼)有限公司Ping An Technology (Shenzhen) Co., Ltd. データのインテリジェント分析方法、装置、コンピュータ機器及び記憶媒体
KR20220026709A (ko) * 2020-08-26 2022-03-07 오스템임플란트 주식회사 구매자 의사결정을 위한 상품 관련 정보 자동 제공 방법 및 장치

Similar Documents

Publication Publication Date Title
US20210117757A1 (en) Systems and methods for constructing and applying synaptic networks
CN107908740B (zh) 信息输出方法和装置
US11157926B2 (en) Digital content prioritization to accelerate hyper-targeting
CN104268292B (zh) 画像系统的标签词库更新方法
Zhang et al. Enabling kernel-based attribute-aware matrix factorization for rating prediction
CN112785397A (zh) 一种产品推荐方法、装置及存储介质
US11449553B2 (en) Systems and methods for generating real-time recommendations
US20180181667A1 (en) System and method to model recognition statistics of data objects in a business database
US20190220902A1 (en) Information analysis apparatus, information analysis method, and information analysis program
JP2023533475A (ja) キーワード推薦のための人工知能
US20220107980A1 (en) Providing an object-based response to a natural language query
CN111429161A (zh) 特征提取方法、特征提取装置、存储介质及电子设备
US11544331B2 (en) Artificial intelligence for product data extraction
Kao et al. Prediction of remaining time on site for e‐commerce users: A SOM and long short‐term memory study
CN114693409A (zh) 产品匹配方法、装置、计算机设备、存储介质和程序产品
Sharma et al. Intelligent data analysis using optimized support vector machine based data mining approach for tourism industry
Zeng et al. Using latent features for building an interpretable recommendation system
KR102653187B1 (ko) 웹크롤링 기반 학습용 데이터 전처리 전자 장치 및 그 방법
CN114169418B (zh) 标签推荐模型训练方法及装置、标签获取方法及装置
US11727249B2 (en) Methods for constructing and applying synaptic networks
CN115409579A (zh) 一种基于元学习的响应式推荐方法、系统及设备
Sun [Retracted] Machine Learning‐Driven Enterprise Human Resource Management Optimization and Its Application
Liu et al. User-generated content analysis for customer needs elicitation
KR20200029647A (ko) 사용자 개인화에 의한 큐레이터 전자상거래 시스템의 일반화 방법
Kamble et al. Data Extraction Techniques for Data on different Environment: A Review