• 제목/요약/키워드: QUERY

검색결과 3,232건 처리시간 0.022초

지능형 검색엔진을 위한 색상 질의 처리 방안 (Color-related Query Processing for Intelligent E-Commerce Search)

  • 홍정아;구교정;차지원;서아정;여운영;김종우
    • 지능정보연구
    • /
    • 제25권1호
    • /
    • pp.109-125
    • /
    • 2019
  • 지능형 전자상거래 검색 엔진에 대한 관심이 커지면서, 검색 상품의 특징을 지능적으로 추출하고 활용하기 위한 연구들이 수행되고 있다. 특히 전자상거래 지능형 검색 엔진에서 상품을 검색 할 때, 제품의 색상은 상품을 묘사하는 중요한 특징 중에 하나이다. 따라서 사용자의 질의에 정확한 응답을 위해서는 사용자가 검색하려는 색상과 그 색상의 동의어 및 유의어에 대한 처리가 필요하다. 기존의 연구들은 색상 특징에 대한 동의어 처리를 주로 사전 방식으로 다뤄왔다. 하지만 이러한 사전방식으로는 사전에 등록되지 않은 색상 용어가 질의에 포함된 경우 처리하지 못하는 한계점을 가지고 있다. 본 연구에서는 기존에 사용하던 방식의 한계점을 극복하기 위하여, 실시간으로 인터넷 검색 엔진을 통해 해당 색상의 RGB 값을 추출한 후 추출된 색상정보를 기반으로 유사한 색상명들을 출력하는 모델을 제안한다. 본 모델은 우선적으로 기본적인 색상 검색을 위해 671개의 색상명과 각 RGB값이 저장된 색상 사전을 구축하였다. 본 연구에서 제시한 모델은 특정 색상을 검색하는 것으로 시작하며, 검색된 색상이 색상 사전 내 존재하는 지 유무를 확인한다. 사전 내에 검색한 색상이 존재한다면, 해당 색상의 RGB 값이 기준 값으로 사용된다. 만일 색상사전 내에 존재하지 않는다면, Google 이미지 검색 결과를 크롤링하여 각 이미지의 특정 영역 내 RGB값들을 군집화하여 구한 평균 RGB값을 검색한 색상의 기준 값으로 한다. 기준 RGB값을 앞서 구축한 색상 사전 내의 모든 색상의 RGB 값들과 비교하여 각 R, G, B 값에 있어서 ${\pm}50$ 내의 색상 목록을 정렬하고, RGB값 간의 유클리디안 거리 유사도를 활용하여 최종적으로 유사한 색 상명들을 출력한다. 제안 방안의 유용성을 평가하기 위해 실험을 진행하였다. 피설문자들이 생각하는 300 개의 색상 이름과 해당 색상 값을 얻어, 본 연구에서 제안한 방안을 포함한 총 네가지 방법을 통해 얻은 RGB 값들과 피설문자가 지정한 RGB값에 대한 비교를 진행했다. 인간의 눈을 반영하는 측정 기준인 CIELAB의 유클리드안거리는 평균 13.85로 색상사전만을 활용한 방안의 30.88, 한글 동의어사전 사이트인 워드넷을 추가로 활용한 방안의 30.38에 비해 비교적 낮은 색상 간의 거리 값을 보였다. 연구에서 제시하는 방안에서 군집화 과정을 제외한 방안의 색 차는 13.88로 군집화 과정이 색 차를 줄여준다는 것을 확인할 수 있었다. 본 연구에서는 기존 동의어 처리 방식인 사전 방식이 지닌 한계에서 벗어나기 위해, 사전 방식에 새로운 색상명에 대한 실시간 동의어 처리 방식을 결합한 RGB값 기반의 새로운 색상 동의어 처리 방안을 제안한다. 본 연구의 결과를 활용하여 전자상거래 검색 시스템의 지능화에 크게 기여할 수 있을 것이다.

클라우드 환경에서 MongoDB 기반의 비정형 로그 처리 시스템 설계 및 구현 (Design and Implementation of MongoDB-based Unstructured Log Processing System over Cloud Computing Environment)

  • 김명진;한승호;최운;이한구
    • 인터넷정보학회논문지
    • /
    • 제14권6호
    • /
    • pp.71-84
    • /
    • 2013
  • 컴퓨터 시스템 운용 간에 발생하는 많은 정보들이 기록되는 로그데이터는 컴퓨터 시스템 운용 점검, 프로세스의 최적화, 사용자 최적화 맞춤형 제공 등 다방면으로 활용되고 있다. 본 논문에서는 다양한 종류의 로그데이터들 중에서 은행에서 발생하는 대용량의 로그데이터를 처리하기 위한 클라우드 환경 하에서의 MongoDB 기반 비정형 로그 처리시스템을 제안한다. 은행업무간 발생하는 대부분의 로그데이터는 고객의 업무처리 프로세스 간에 발생하며, 고객 업무 프로세스 처리에 따른 로그데이터를 수집, 저장, 분류, 분석하기 위해서는 별도로 로그데이터를 처리하는 시스템을 구축해야만 한다. 하지만 기존 컴퓨팅환경 하에서는 폭발적으로 증가하는 대용량 비정형 로그데이터 처리를 위한 유연한 스토리지 확장성 기능, 저장된 비정형 로그데이터를 분류, 분석 처리할 수 있는 기능을 구현하기가 매우 어렵다. 이에 따라 본 논문에서는 클라우드 컴퓨팅 기술을 도입하여 기존 컴퓨팅 인프라 환경의 분석 도구 및 관리체계에서 처리하기 어려웠던 비정형 로그데이터를 처리하기 위한 클라우드 환경기반의 로그데이터 처리시스템을 제안하고 구현하였다. 제안한 본 시스템은 IaaS(Infrastructure as a Service) 클라우드 환경을 도입하여 컴퓨팅 자원의 유연한 확장성을 제공하며 실제로, 로그데이터가 장기간 축적되거나 급격하게 증가하는 상황에서 스토리지, 메모리 등의 자원을 신속성 있고 유연하게 확장을 할 수 있는 기능을 포함한다. 또한, 축적된 비정형 로그데이터의 실시간 분석이 요구되어질 때 기존의 분석도구의 처리한계를 극복하기 위해 본 시스템은 하둡 (Hadoop) 기반의 분석모듈을 도입함으로써 대용량의 로그데이터를 빠르고 신뢰성 있게 병렬 분산 처리할 수 있는 기능을 제공한다. 게다가, HDFS(Hadoop Distributed File System)을 도입함으로써 축적된 로그데이터를 블록단위로 복제본을 생성하여 저장관리하기 때문에 본 시스템은 시스템 장애와 같은 상황에서 시스템이 멈추지 않고 작동할 수 있는 자동복구 기능을 제공한다. 마지막으로, 본 시스템은 NoSQL 기반의 MongoDB를 이용하여 분산 데이터베이스를 구축함으로써 효율적으로 비정형로그데이터를 처리하는 기능을 제공한다. MySQL과 같은 관계형 데이터베이스는 복잡한 스키마 구조를 가지고 있기 때문에 비정형 로그데이터를 처리하기에 적합하지 않은 구조를 가지고 있다. 또한, 관계형 데이터베이스의 엄격한 스키마 구조는 장기간 데이터가 축적되거나, 데이터가 급격하게 증가할 때 저장된 데이터를 분할하여 여러 노드에 분산시키는 노드 확장이 어렵다는 문제점을 가지고 있다. NoSQL은 관계형 데이터베이스에서 제공하는 복잡한 연산을 지원하지는 않지만 데이터가 빠르게 증가할 때 노드 분산을 통한 데이터베이스 확장이 매우 용이하며 비정형 데이터를 처리하는데 매우 적합한 구조를 가지고 있는 비관계형 데이터베이스이다. NoSQL의 데이터 모델은 주로 키-값(Key-Value), 컬럼지향(Column-oriented), 문서지향(Document-Oriented)형태로 구분되며, 제안한 시스템은 스키마 구조가 자유로운 문서지향(Document-Oriented) 데이터 모델의 대표 격인 MongoDB를 도입하였다. 본 시스템에 MongoDB를 도입한 이유는 유연한 스키마 구조에 따른 비정형 로그데이터 처리의 용이성뿐만 아니라, 급격한 데이터 증가에 따른 유연한 노드 확장, 스토리지 확장을 자동적으로 수행하는 오토샤딩 (AutoSharding) 기능을 제공하기 때문이다. 본 논문에서 제안하는 시스템은 크게 로그 수집기 모듈, 로그 그래프생성 모듈, MongoDB 모듈, Hadoop기반 분석 모듈, MySQL 모듈로 구성되어져 있다. 로그 수집기 모듈은 각 은행에서 고객의 업무 프로세스 시작부터 종료 시점까지 발생하는 로그데이터가 클라우드 서버로 전송될 때 로그데이터 종류에 따라 데이터를 수집하고 분류하여 MongoDB 모듈과 MySQL 모듈로 분배하는 기능을 수행한다. 로그 그래프생성 모듈은 수집된 로그데이터를 분석시점, 분석종류에 따라 MongoDB 모듈, Hadoop기반 분석 모듈, MySQL 모듈에 의해서 분석되어진 결과를 사용자에게 웹 인터페이스 형태로 제공하는 역할을 한다. 실시간적 로그데이터분석이 필요한 로그데이터는 MySQL 모듈로 저장이 되어 로그 그래프생성 모듈을 통하여 실시간 로그데이터 정보를 제공한다. 실시간 분석이 아닌 단위시간당 누적된 로그데이터의 경우 MongoDB 모듈에 저장이 되고, 다양한 분석사항에 따라 사용자에게 그래프화해서 제공된다. MongoDB 모듈에 누적된 로그데이터는 Hadoop기반 분석모듈을 통해서 병렬 분산 처리 작업이 수행된다. 성능 평가를 위하여 로그데이터 삽입, 쿼리 성능에 대해서 MySQL만을 적용한 로그데이터 처리시스템과 제안한 시스템을 비교 평가하였으며 그 성능의 우수성을 검증하였다. 또한, MongoDB의 청크 크기별 로그데이터 삽입 성능평가를 통해 최적화된 청크 크기를 확인하였다.