KR102460293B1 - Handling of transaction feedback - Google Patents
Handling of transaction feedback Download PDFInfo
- Publication number
- KR102460293B1 KR102460293B1 KR1020207036229A KR20207036229A KR102460293B1 KR 102460293 B1 KR102460293 B1 KR 102460293B1 KR 1020207036229 A KR1020207036229 A KR 1020207036229A KR 20207036229 A KR20207036229 A KR 20207036229A KR 102460293 B1 KR102460293 B1 KR 102460293B1
- Authority
- KR
- South Korea
- Prior art keywords
- category
- comments
- categories
- sub
- comment
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/169—Annotation, e.g. comment data or footnotes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/212—Monitoring or handling of messages using filtering or selective blocking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Probability & Statistics with Applications (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
시스템 및 방법이 개시되는데, 네트워크 시스템의 멤버와의 거래의 특정 단계에서 복수의 코멘트를 수신하고, 복수의 코멘트 중 하나 이상을 한 세트의 미리 결정된 감정 분류 중 하나로 분류하며, 하나 이상의 코멘트 각각에 대해 한 세트의 미리 정의된 카테고리 중에서 하나의 카테고리를 선택하기 위해 트레이닝된 머신 학습 시스템을 적용하고, 자연어 처리 모듈을 적용하여 하나 이상의 코멘트 각각에 대한 하위-카테고리를 생성하며, 생성된 하위-카테고리와 하나 이상의 코멘트에 대한 각각의 카테고리를 연관시키고, 생성된 하위-카테고리를 이용하여 특정 거래에 대해 결정된 카테고리의 디스플레이를 생성하되, 각각의 생성된 하위-카테고리는 각각의 카테고리에 그래픽으로 연결된다.A system and method are disclosed for receiving a plurality of comments at a particular stage of a transaction with a member of a network system, classifying one or more of the plurality of comments into one of a set of predetermined sentiment classifications, and for each of the one or more comments Apply a trained machine learning system to select a category from a set of predefined categories, apply a natural language processing module to generate a sub-category for each of the one or more comments, and create a sub-category and one Associating each category for the above comments and using the generated sub-categories to generate a display of the categories determined for a particular transaction, each generated sub-category is graphically linked to a respective category.
Description
본 개시물의 실시예는 거래 피드백(transactional feedback)을 처리하는 것에 관한 것이며, 더 상세하게는, 효율적인 사용자 액세스, 자동화된 트렌드 식별(automated trend identification) 및 사용자 통지를 위한 거래 피드백을 처리하는 것에 관한 것이다.Embodiments of the present disclosure relate to processing transactional feedback, and more particularly, to processing transactional feedback for efficient user access, automated trend identification, and user notification. .
종래에는 네트워크 시스템의 사용자가 거래에 대한 피드백을 제공할 때, 피드백이 전형적으로 선형적으로 배열된다는 구성상의 제한이 존재한다. 다른 예에서, 피드백은 피드백이 긍정, 부정 또는 중립인 것에 따라 배열 또는 필터링된다. 사용자가 피드백을 상이한 방식으로 배열할 수 있지만, 거래 시스템의 상태에 관한 부가적인 결정은 보통 사용자(예를 들어, 피드백의 수신자)에 의해 이루어진다. Conventionally, when a user of a network system provides feedback on a transaction, there is a configuration limitation in that the feedback is typically arranged linearly. In another example, the feedback is arranged or filtered according to whether the feedback is positive, negative, or neutral. Although the user may arrange the feedback in different ways, additional decisions regarding the state of the trading system are usually made by the user (eg, the recipient of the feedback).
첨부된 도면 중 다양한 도면은 단지 본 개시물의 예시적인 실시예를 예시하는 것일 뿐 본 개시물의 범위를 제한하는 것으로 여겨져서는 안 된다.
도 1은 일부 예시적인 실시예에 따른 시스템을 도시하는 블록도이다.
도 2는 일부 예시적인 실시예에 따른 피드백 시스템을 도시하는 블록도이다.
도 3은 다른 예시적인 실시예에 따른 피드백 시스템을 도시하는 블록도이다.
도 4는 하나의 예시적인 실시예에 따른 피드백 시스템에 의해 생성된 사용자 인터페이스를 도시하는 블록도이다.
도 5는 하나의 예시적인 실시예에 따른 데이터 흐름을 도시하는 데이터 흐름도이다.
도 6은 하나의 예시적인 실시예에 따른 피드백을 처리하기 위한 방법을 도시하는 흐름도이다.
도 7은 다른 예시적인 실시예에 따른 피드백을 처리하기 위한 방법을 도시하는 흐름도이다.
도 8은 하나의 예시적인 실시예에 따른 피드백을 처리하기 위한 방법을 도시하는 다른 흐름도이다.
도 9는 일부 예시적인 실시예에 따른, 머신 상에 설치될 수 있는 소프트웨어 아키텍처의 예를 도시하는 블록도이다.
도 10은 예시적인 실시예에 따라, 머신으로 하여금 본 명세서에 논의되는 방법 중 임의의 하나 이상의 방법을 수행하게 하기 위해 명령어 세트가 실행될 수 있는 컴퓨터 시스템 형태의 머신의 개략도를 도시한다.
본 명세서에 제공된 머리글은 단지 편의를 위한 것이며, 사용된 용어의 범위 또는 의미에 반드시 영향을 미치는 것은 아니다.Various drawings in the accompanying drawings merely illustrate exemplary embodiments of the present disclosure and should not be construed as limiting the scope of the present disclosure.
1 is a block diagram illustrating a system in accordance with some example embodiments.
2 is a block diagram illustrating a feedback system in accordance with some demonstrative embodiments.
Fig. 3 is a block diagram illustrating a feedback system according to another exemplary embodiment.
Fig. 4 is a block diagram illustrating a user interface generated by a feedback system according to an exemplary embodiment.
Fig. 5 is a data flow diagram illustrating a data flow according to an exemplary embodiment.
6 is a flowchart illustrating a method for processing feedback according to one exemplary embodiment.
7 is a flowchart illustrating a method for processing feedback according to another exemplary embodiment.
Fig. 8 is another flowchart illustrating a method for processing feedback according to one exemplary embodiment.
9 is a block diagram illustrating an example of a software architecture that may be installed on a machine, in accordance with some demonstrative embodiments.
10 depicts a schematic diagram of a machine in the form of a computer system upon which a set of instructions may be executed to cause the machine to perform any one or more of the methods discussed herein, in accordance with an exemplary embodiment.
The headings provided herein are for convenience only and do not necessarily affect the scope or meaning of the terms used.
이하의 설명은 본 개시물의 예시적인 실시예들을 구현하는 시스템, 방법, 기법, 명령어 시퀀스, 및 컴퓨팅 머신 프로그램 제품을 포함한다. 이하의 설명에서, 설명을 위해, 본 발명의 청구 대상의 다양한 실시예들에 대한 이해를 제공하기 위해 다수의 특정 세부사항이 설명된다. 그러나, 당업자에게는 본 발명의 청구 대상의 실시예들이 그러한 특정 세부사항 없이 실시될 수 있음이 명백할 것이다. 일반적으로, 잘 알려진 명령어 인스턴스, 프로토콜, 구조 및 기법은 반드시 상세히 도시되지는 않는다.The description that follows includes systems, methods, techniques, instruction sequences, and computing machine program products that implement example embodiments of the present disclosure. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide an understanding of various embodiments of the presently claimed subject matter. It will be apparent, however, to one skilled in the art, that embodiments of the presently claimed subject matter may be practiced without such specific details. In general, well-known instruction instances, protocols, structures, and techniques are not necessarily shown in detail.
특정 실시예에서, 본 명세서에 설명된 바와 같이, 시스템은 온라인 마켓플레이스(marketplace)의 멤버와의 거래의 특정 단계에서 복수의 코멘트(comment)를 수신하도록 특별히 구성된다. 예를 들어, 특정 단계는 거래의 구매 단계일 수 있다.In a particular embodiment, as described herein, the system is specifically configured to receive a plurality of comments at a particular stage of a transaction with a member of an online marketplace. For example, a particular phase may be a purchase phase of a transaction.
그후, 시스템은 각각의 코멘트에 포함된 용어에 따라 코멘트를 감정 분류(sentiment classification)로 분류한다. 그후, 시스템은, 자연어 처리 모듈(natural language processing module)을 적용함으로써 코멘트에 대한 하위-카테고리(sub-category)를 생성한다. 어떤 실시예에서는, 생성된 하위-카테고리가 한 세트의 미리 결정된 하위-카테고리로부터 선택되는 것이 아니라, 각각의 코멘트에 포함된 언어에 따라 생성된다.The system then classifies the comments into sentiment classification according to the terms included in each comment. The system then creates a sub-category for the comment by applying a natural language processing module. In some embodiments, the generated sub-categories are not selected from a set of predetermined sub-categories, but are generated according to the language included in each comment.
다른 예시적인 실시예에서, 시스템은 사용자가 카테고리 또는 하위-카테고리를 선택하고 선택된 카테고리(새롭게 생성된 하위-카테고리를 포함함)에 따라 메시지를 필터링하도록 허용하는 사용자 인터페이스를 제공하도록 구성된다.In another exemplary embodiment, the system is configured to provide a user interface that allows a user to select a category or sub-category and filter messages according to the selected category (including newly created sub-categories).
하나의 특정 예시적인 실시예에서, 시스템은 특정 카테고리에 대한 트렌드의 변화에 응답하여 사용자에게 통지한다. 예를 들어, 구매할 아이템의 선택에 관한 불만(complaint)이 증가하면, 시스템은 선택 메커니즘에서 에러 또는 결함의 가능성이 증가한 것으로 판단하고 사용자에게 이를 통지할 수 있다. 이 특별한 이점은 시스템이 가능한 에러를 식별하여, 사용자가 코멘트를 검토하지 않고도 사용자에게 통지하는 것을 포함한다. 다른 기술적 이점이 본 명세서에 설명된다.In one particular example embodiment, the system notifies the user in response to a change in trend for a particular category. For example, if complaints about the selection of an item to purchase increase, the system may determine that there is an increased likelihood of an error or defect in the selection mechanism and notify the user. This particular advantage includes the system identifying possible errors and notifying the user without the user reviewing the comments. Other technical advantages are described herein.
도 1을 참조하면, 고레벨의 클라이언트-서버 기반 네트워크 아키텍처(100)의 예시적인 실시예가 도시된다. 네트워크 시스템(102)은 네트워크(104)(예를 들어, 인터넷 또는 광역 네트워크(WAN))를 통해 서버 측 기능을 하나 이상의 클라이언트 디바이스(110)에 제공한다. 도 1은, 예를 들어, 웹 클라이언트(112)(예를 들어, 웹 브라우저), 클라이언트 디바이스(110) 상에서 실행되는 클라이언트 애플리케이션(들)(114)을 도시한다.1 , an exemplary embodiment of a high-level client-server based
클라이언트 디바이스(110)는 이동 전화, 데스크톱 컴퓨터, 랩탑, 휴대용 디지털 보조 디바이스(PDA), 스마트폰, 태블릿, 울트라북, 넷북, 랩탑, 멀티 프로세서 시스템, 마이크로프로세서 기반 또는 프로그래밍 가능 소비자 전자기기, 게임 콘솔, 셋톱 박스, 또는 사용자가 네트워크 시스템(102)에 액세스하기 위해 이용할 수 있는 임의의 다른 통신 디바이스를 포함할 수 있으나, 이에 국한되지는 않는다. 일부 실시예에서, 클라이언트 디바이스(110)는 정보를 디스플레이하기 위한 (예를 들어, 사용자 인터페이스의 형태를 갖는) 디스플레이 모듈(도시되지 않음)을 포함할 수 있다. 다른 실시예에서, 클라이언트 디바이스(110)는 터치 스크린, 가속도계, 자이로스코프, 카메라, 마이크로폰, GPS(Global Positioning System) 디바이스 등 중 하나 이상을 포함할 수 있다. 클라이언트 디바이스(110)는, 네트워크 시스템(102) 내에서 디지털 아이템을 수반하는 거래를 수행하는 데 사용되는 사용자의 디바이스일 수 있다. 일 실시예에서, 네트워크 시스템(102)은 제품 목록에 대한 요청에 응답하고, 네트워크 기반 마켓플레이스에서 이용 가능한 제품의 아이템 목록을 포함하는 게시물을 게시하고, 이러한 마켓플레이스 거래에 대한 지불을 관리하는 네트워크 기반 마켓플레이스이다.Client device 110 may be a mobile phone, desktop computer, laptop, portable digital assistant (PDA), smartphone, tablet, ultrabook, netbook, laptop, multiprocessor system, microprocessor-based or programmable consumer electronics, game console. , a set top box, or any other communication device that a user may use to access the
한 명 이상의 사용자(106)는 사람, 머신 또는 클라이언트 디바이스(110)와 상호작용하는 다른 수단일 수 있다. 실시예에서, 사용자(106)는 네트워크 아키텍처(100)의 부분이 아니라, 클라이언트 디바이스(110) 또는 다른 수단을 통해 네트워크 아키텍처(100)와 상호작용할 수 있다. 예를 들어, 네트워크(104)의 하나 이상의 부분은 애드혹 네트워크, 인트라넷, 엑스트라넷, VPN(virtual private network), LAN(local area network), WLAN(wireless LAN), WWAN(wireless WAN), MAN(metropolitan area network), 인터넷의 일부분, PSTN(Public Switched Telephone Network)의 일부분, 셀룰러 텔레폰 네트워크, 무선 네트워크, WiFi 네트워크, WiMax 네트워크, 다른 유형의 네트워크, 또는 둘 이상의 이러한 네트워크의 조합일 수 있다.One or
각각의 클라이언트 디바이스(110)는 웹 브라우저, 메시징 애플리케이션, 전자 메일(이메일) 애플리케이션, 전자 상거래 사이트 애플리케이션(또한 마켓플레이스 애플리케이션으로 지칭됨) 등과 같은, 그러나 이에 국한되지 않는 하나 이상의 애플리케이션(또한 "앱"으로 지칭됨)을 포함할 수 있다. 일부 실시예에서, 클라이언트 디바이스(110)는, 사용자 인터페이스, 및 기능들 중 적어도 일부를 로컬로 제공하도록 구성된 애플리케이션을 포함할 수 있고, 애플리케이션은 로컬로 이용가능하지 않은 데이터 및/또는 프로세싱 능력(예를 들어, 판매 가능한 아이템의 데이터베이스에 액세스, 사용자(106)의 인증, 지불 방법의 검증 등)을 위해 필요에 따라 네트워크 시스템(102)과 통신하도록 구성된다. 반대로, 다른 실시예에서, 클라이언트 디바이스(110)는, 네트워크 시스템(102) 상에서 호스팅되는 사이트(또는 그의 변형예)에 액세스하기 위해 자신의 웹 브라우저를 사용할 수 있다.Each client device 110 may have one or more applications (also referred to as “apps”), such as, but not limited to, web browsers, messaging applications, electronic mail (email) applications, e-commerce site applications (also referred to as marketplace applications), and the like. referred to as ) may be included. In some embodiments, client device 110 may include a user interface, and an application configured to locally provide at least some of the functions, the application may include data and/or processing capabilities that are not locally available (eg, and communicate with the
예시적인 실시예에서, 사용자(106)는 네트워크 아키텍처(100)의 부분이 아니라, 클라이언트 디바이스(110) 또는 다른 수단을 통해 네트워크 아키텍처(100)와 상호작용할 수 있다. 예를 들어, 사용자(106)는 클라이언트 디바이스(110)에 입력(예를 들어, 터치 스크린 입력 또는 문자 숫자 입력)을 제공하고, 그후 입력은 네트워크(104)를 통해 네트워크 시스템(102)에 전달된다. 이 예에서, 네트워크 시스템(102)은, 사용자(106)로부터의 입력을 수신한 것에 응답하여 사용자(106)에게 제공될 정보를 네트워크(104)를 통해 클라이언트 디바이스(110)에 전달한다. 이러한 방식으로, 사용자(106)는 클라이언트 디바이스(110)를 사용하여 네트워크 시스템(102)과 상호작용할 수 있다.In an exemplary embodiment, the
API(application program interface) 서버(120) 및 웹 서버(122)는 프로그래밍 방식 및 웹 인터페이스에 결합되고, 이들을 하나 이상의 애플리케이션 서버(들)(140)에 각각 제공한다. 애플리케이션 서버(들)(140)는 하나 이상의 게시 시스템(142)을 호스팅하고, 이들 각각은 하나 이상의 모듈 또는 애플리케이션을 포함할 수 있고, 이들 각각은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합으로 구현될 수 있다. 애플리케이션 서버(들)(140)는, 차례로, 하나 이상의 정보 저장 저장소 또는 데이터베이스(들)(126)에 대한 액세스를 가능하게 하는 하나 이상의 데이터베이스 서버(124)에 결합되는 것으로 도시된다. 예시적인 실시예에서, 데이터베이스(들)(126)는 게시 시스템(들)(142)으로 포스팅될 정보(예를 들어, 게시물 또는 목록)를 저장하는 저장 디바이스이다. 데이터베이스(들)(126)는 또한 예시적인 실시예에 따라 디지털 아이템 정보를 저장할 수 있다.An application program interface (API)
제3자 서버(들)(130) 상에서 실행되는 제3자 애플리케이션(132)은 API 서버(120)에 의해 제공되는 프로그래매틱 인터페이스(programmatic interface)를 통해 네트워크 시스템(102)에 대한 프로그래매틱 액세스를 갖는 것으로 도시되어 있다. 예를 들어, 네트워크 시스템(102)으로부터 검색된 정보를 이용하는 제3자 애플리케이션(132)은 제3자에 의해 호스팅되는 웹 사이트상의 하나 이상의 특징 또는 기능을 지원한다. Third-party applications 132 running on third-party server(s) 130 may be programmatically connected to
게시 시스템(들)(142)은, 네트워크 시스템(102)을 액세스하는 사용자(106)에게 다수의 게시 기능 및 서비스를 제공할 수 있다. 게시 시스템(142)이 네트워크 시스템(102)의 부분을 형성하는 것으로 도 1에 도시되지만, 대안적인 실시예에서, 게시 시스템(142)은 네트워크 시스템(102)과 별개이고 구별되는 서비스의 일부를 형성할 수 있다는 것을 인지될 것이다.The publishing system(s) 142 may provide a number of publishing functions and services to
또한, 도 1에 도시된 클라이언트-서버 기반 네트워크 아키텍처(100)는 클라이언트-서버 아키텍처를 사용하지만, 본 발명의 청구 대상은 당연히 그러한 아키텍처에 국한되지 않으며, 예를 들어 분산 또는 피어 투 피어(peer-to-peer) 아키텍처 시스템에서도 동일하게 잘 적용될 수 있다. 게시 시스템(142) 및 피드백 시스템(150)은 독립형 소프트웨어 프로그램들로서 구현될 수도 있는데, 이들이 반드시 네트워킹 성능을 가질 필요는 없다.Also, although the client-server based
웹 클라이언트(112)는 웹 서버(122)에 의해 지원되는 웹 인터페이스를 통해 게시 시스템(142)에 액세스할 수 있다. 프로그래매틱 클라이언트는, API 서버(120)에 의해 제공되는 프로그래매틱 인터페이스를 통해 게시 시스템(142)에 의해 제공되는 다양한 서비스 및 기능에 액세스한다. 프로그래매틱 클라이언트는, 예를 들어, 사용자(106)가 오프-라인 방식으로 네트워크 시스템(102) 상에서 게시물을 작성 및 관리하고, 프로그래매틱 클라이언트와 네트워크 시스템(102) 사이의 배치-모드 통신(batch-mode communication)을 수행하는 것을 가능하게 하기 위한 게시 애플리케이션일 수 있다. The web client 112 may access the
특정한 예시적인 실시예에서, 3D 집적 시스템(146)은 웹 클라이언트(112)를 사용하여 디스플레이될 3D 모델을 생성한다. 일 예에서, 3D 집적 시스템(146)은 모델을 생성하고, 모델을 원격 서버에 저장하고, 웹 클라이언트(112)를 사용하여 모델을 액세스하기 위해 URL(universal resource locator)을 리턴한다. In certain example embodiments, the 3D aggregation system 146 generates a 3D model to be displayed using the web client 112 . In one example, the 3D aggregation system 146 generates a model, stores the model on a remote server, and returns a universal resource locator (URL) to access the model using the web client 112 .
부가적으로, 제3자 서버(들)(130) 상에서 실행되는 제3자 애플리케이션(들)(132)은 API 서버(120)에 의해 제공되는 프로그래매틱 인터페이스를 통해 네트워크 시스템(102)에 대한 프로그래매틱 액세스를 갖는 것으로 도시되어 있다. 예를 들어, 네트워크 시스템(102)으로부터 검색된 정보를 이용하는 제3자 애플리케이션(132)은 제3자에 의해 호스팅되는 웹 사이트상의 하나 이상의 특징들 또는 기능들을 지원할 수 있다.Additionally, third-party application(s) 132 executing on third-party server(s) 130 may provide access to
하나의 예시적인 실시예에서, 피드백 시스템(150)은 네트워크 시스템(102)의 멤버와의 거래의 특정 단계에 대한 코멘트를 수신하고, 코멘트의 감정 및 카테고리를 결정하며 ― 여기서 카테고리는 한 세트의 미리 정의된 카테고리로부터 선택됨 ― , 자연어 처리 모듈을 적용함으로써 하위-카테고리를 생성하고, 사용자(106)가 카테고리 또는 하위-카테고리를 선택하도록 허용하는 디스플레이를 생성하며, 사용자(106)에 의한 선택에 따라 코멘트를 필터링하도록 구성된다. 이러한 방식으로, 피드백 시스템(150)은, 선택된 카테고리에 관련된 피드백 코멘트에 대한 빠른 액세스를 제공한다.In one exemplary embodiment, the
도 2는 하나의 예시적인 실시예에 따른 피드백 시스템(150)을 도시하는 블록도이다. 이러한 예시적인 실시예에서, 피드백 시스템(150)은 수집 모듈(220), 감정 모듈(230), 디스플레이 모듈(250) 및 카테고리 모듈(240)을 포함한다.2 is a block diagram illustrating a
하나의 예시적인 실시예에서, 수집 모듈(220)은 온라인 마켓플레이스의 멤버와의 거래의 특정 단계에서 복수의 코멘트를 수신하도록 구성된다. 특정 실시예에서, 수집 모듈(220)은 데이터베이스(126)에 코멘트를 질의함으로써 코멘트를 검색한다. 예를 들어, 네트워크 시스템(102)은, 네트워크 시스템(102)을 사용하여 사용자(106)로부터 코멘트를 요청하고 데이터베이스(126)에 코멘트를 저장하도록 구성된 애플리케이션 서버(140)로부터 코멘트를 수신할 수 있다.In one exemplary embodiment, the
당업자가 인지할 수 있는 바와 같이, 수집 모듈(220)은 또한 많은 다른 방식으로 코멘트를 수신할 수 있다. 예를 들어, 수집 모듈(220)은 저장소부터 코멘트를 로딩하거나, 전자 네트워크 인터페이스를 통해 또는 임의의 다른 방식으로 코멘트를 수신할 수 있다.As one of ordinary skill in the art will appreciate, the
하나의 예시적인 실시예에서, 거래의 특정 단계는 네트워크 시스템(102)의 2명의 사용자(106) 사이의 거래를 완료하는 특정 단계를 포함한다. 예는 아이템 선택, 디스플레이, 신원 확인, 아이템 옵션 선택, 쇼핑 카트 관리, 체크아웃, 결제, 배송 옵션 선택, 반품 관리 또는 기타 등을 포함하지만, 이에 제한되지는 않는다.In one exemplary embodiment, the specific step of the transaction includes the specific step of completing the transaction between two
하나의 예시적인 실시예에서, 감정 모듈(230)은, 코멘트에 포함된 텍스트에 따라 코멘트 중 하나를 분류하도록 구성된다. 예를 들어, 코멘트 텍스트는 "~해서 나는 이것이 싫다(I hate it when...)", "이 사이트는 평판이 나쁘다(this site stinks)" 등을 포함할 수 있으며, 이에 응답하여, 감정 모듈(230)은 코멘트에 대한 감정이 부정적이라고 판정한다. 다른 예에서, 감정 모듈(230)은 코멘트에 포함된 특정 용어에 따라 감정을 식별한다. 예를 들어, 코멘트의 텍스트는 "굉장한(awesome)", "훌륭한(wonderful)", "완벽한(perfect)", "사랑(love)"과 같은 용어, 또는 즐거움(pleasure), 수용(acceptance), 만족(satisfaction) 등을 나타내는 기타 용어를 포함하며, 감정 모듈(230)은 코멘트의 감정이 긍정적이라고 판정한다. 다른 예에서, 감정 모듈(230)은, 코멘트 내의 용어 중 어느 것도 "긍정" 분류 또는 "부정" 분류 중 어느 하나와 연관된 용어에 매칭되지 않는 경우, 이 코멘트를 "중립"으로 분류한다. 하나의 특정 예시적인 실시예에서, 감정은 "긍정", "부정" 및 "중립"과 같은(이에 제한되지 않음) 한 세트의 미리 정의된 감정으로부터 선택된다.In one exemplary embodiment, the
다른 예시적인 실시예에서, 감정 모듈(230)은, 코멘트 또는 코멘트의 텍스트를 수신한 것에 응답하여, 감정 분류를 출력하는 머신 학습 시스템(도 3의 270)을 적용한다. 머신 학습 시스템(270)의 추가 예시적인 실시예가 도 3과 관련하여 설명된다. 비제한적인 하나의 예에서, 감정 모듈(230)은, 코멘트의 텍스트를 수신한 것에 응답하여, 감정 분류를 출력하기 위해 트레이닝된 머신 학습 시스템을 사용한다.In another exemplary embodiment, the
예를 들어, 피드백 시스템(150)의 관리자는, 인간에 의해 감정 분류로 수동으로 분류된 코멘트의 대규모 데이터베이스에 대해 머신 학습 시스템(270)을 트레이닝시킬 수 있다. 머신 학습 시스템(270)은 이 데이터에 대해 트레이닝하고, 그후 메시지의 텍스트 또는 메시지에 포함된 한 세트의 용어를 수신한 것에 응답하여 감정 분류를 출력하도록 구성된다.For example, the administrator of the
다른 예시적인 실시예에서, 카테고리 모듈(240)은, 한 세트의 미리 정의된 카테고리로부터 선택된 코멘트에 대한 카테고리를 결정하도록 구성된다. 특정 실시예에서, 이러한 카테고리는 버그(bug), 정확하게 동작하는 것, 칭찬(compliment), 특징 요청(feature request), 불만, 관련 코멘트, 분류되지 않음, 추천 등을 포함하지만, 이에 제한되지 않는다.In another exemplary embodiment, the
하나의 예시적인 실시예에서, 카테고리 모듈(240)은, 코멘트에 포함된 특정 용어에 따라 코멘트에 대한 카테고리를 결정한다. 하나의 예에서, 코멘트는 "~해서 나는 이것이 싫다(I hate it when...)"를 포함한다. 이에 응답하여, 카테고리 모듈(240)은 코멘트를 불만으로 분류한다. 다른 예에서는, 코멘트가 "고장(broken)"을 포함하고, 카테고리 모듈(240)은 그 코멘트를 버그의 선언이라고 판정한다. 다른 예에서는, 코멘트가 "나는 이것을 사랑한다(I love it)"를 포함하고, 카테고리 모듈(240)은 그 코멘트를 칭찬이라고 판정한다. 다른 예에서는, 코멘트가 "추가 필요(need to add)"를 포함하고, 카테고리 모듈(240)은 그 코멘트가 특징 요청이라고 판정한다.In one exemplary embodiment, the
하나의 예시적인 실시예에서, 카테고리 모듈(240)은 코멘트의 각각의 용어를 토큰화(tokenize)하고, 용어 및/또는 문구의 데이터베이스에서 용어를 룩업한다. 예를 들어, 코멘트가 "지불 불가(can't pay)"라는 문구를 포함하면, 문구 "지불 불가"가 불만과 연관된 문구의 데이터베이스에서 발견되었기 때문에, 카테고리 모듈(240)은 그 코멘트를 불만이라고 판정한다.In one exemplary embodiment, the
하나의 예시적인 실시예에서, 카테고리 모듈(240)은, 메시지 내의 용어들의 수가 특정 카테고리와 연관된 용어의 데이터베이스에서 가장 많은 수의 용어에 매칭되는 것에 응답하여, 코멘트에 대한 카테고리를 결정한다.In one exemplary embodiment, the
예를 들어, 4 개의 용어가 "버그" 카테고리와 연관되고 3 개의 용어가 "불만" 카테고리와 연관되는 경우, 다른 카테고리들에 비해 더 많은 용어가 카테고리 "버그"에 매칭되기 때문에, 카테고리 모듈(240)은 그 코멘트를 "버그"라고 판정한다.For example, if 4 terms are associated with the category “bugs” and 3 terms are associated with the “complaints” category, the category module 240 ) judges the comment as a "bug".
다른 예시적인 실시예에서, 카테고리 모듈(240)은 특정 용어와 카테고리 간의 연관의 원격 데이터베이스로부터 한 세트의 연관을 로딩한다. 이 예시적인 실시예에서, 카테고리 모듈(240)은 데이터베이스(126)로부터 연관을 로딩하고, 하나 이상의 연관에 따라 코멘트에 대한 카테고리를 결정한다. 또한, 이 예시적인 실시예에서, 피드백 시스템(150)의 관리자는 데이터베이스(126)에 연관을 추가할 수 있고, 카테고리 모듈(240)은 새롭게 추가된 연관에 따라 코멘트에 대한 카테고리를 자동으로 결정한다.In another exemplary embodiment,
다른 예시적인 실시예에서, 카테고리 모듈(240)은, 입력으로서 코멘트를 수신한 것에 응답하여, 카테고리를 출력하는 트레이닝된 머신 학습 시스템(도 2의 270)을 적용한다. 예를 들어, 피드백 시스템(150)의 관리자는 코멘트에서 발견된 용어 및 선택된 카테고리에 대해 머신 학습 시스템(270)을 트레이닝시킬 수 있다. 이러한 방식으로, 머신 학습 시스템(270)은, 코멘트에서 발견된 한 세트의 용어를 수신한 것에 응답하여, 카테고리를 출력하도록 구성된다. 머신 학습 시스템(270)을 포함하는 추가 예시적인 실시예가 도 3과 관련하여 설명된다.In another exemplary embodiment, the
하나의 예시적인 실시예에서, 카테고리 모듈(240)은 자연어 처리 모듈을 적용하여 코멘트에 대한 하위-카테고리를 생성한다. 한 세트의 미리 결정된 카테고리로부터 하나의 카테고리를 선택하는 경우와 달리, 한 세트의 미리 정의된 하위 카테고리에 관계없이 하위-카테고리가 생성된다. 일 예에서, 카테고리 모듈(240)은 "이미지에 대한 기술적 문제"의 하위-카테고리를 생성한다.In one exemplary embodiment, the
이 예시적인 실시예에서, 카테고리는 "버그"이고, 생성된 하위-카테고리는 "이미지에 대한 기술적 문제"이다. 따라서, "이미지에 대한 기술적 문제"의 하위-카테고리는 "버그" 카테고리와 연관되는데, 왜냐하면 적어도 하나의 코멘트가 '버그'로 분류되었고, 추가로 "이미지에 대한 기술적 문제'로 하위 분류되었기 때문이다. 따라서, 부가적인 하위-카테고리가 생성되면, 그들은 그에 따라 분류되고 하위-분류된 코멘트에 기초하여 각각의 카테고리와 연관된다.In this exemplary embodiment, the category is "Bugs" and the generated sub-category is "Technical Problems with Images". Thus, a sub-category of "technical issues with images" is associated with a "bugs" category because at least one comment was classified as 'bugs' and further subcategorized as "technical issues with images" Thus, as additional sub-categories are created, they are categorized accordingly and associated with each category based on the sub-categorized comments.
하나의 예시적인 실시예에서, 디스플레이 모듈(250)은, 이전에 설명된 바와 같이, 거래의 특정 단계와 연관된 카테고리의 디스플레이를 생성하도록 구성된다. 이 예시적인 실시예에서, 생성된 디스플레이는 카테고리 각각뿐 아니라, 생성된 하위-카테고리 각각을 나타내는 한 세트의 그래픽 요소도 포함한다. 이러한 디스플레이의 특정 예가 도 4에 도시된다.In one exemplary embodiment, the display module 250 is configured to generate a display of categories associated with a particular stage of the transaction, as previously described. In this exemplary embodiment, the generated display includes a set of graphical elements representing each of the categories as well as each of the generated sub-categories. A specific example of such a display is shown in FIG. 4 .
다른 예시적인 실시예에서, 카테고리와 연관된 하위-카테고리는 생성된 디스플레이에서 연결된다. 일 예에서, 하위-카테고리는 연관된 카테고리 바로 옆에 배치된다. 다른 예에서, 하위-카테고리를 나타내는 그래픽 요소는, 그래픽 라인 또는 다른 연결하는 그래픽 요소를 통해, 카테고리를 나타내는 그래픽 요소에 연결된다.In another exemplary embodiment, sub-categories associated with categories are linked in the generated display. In one example, a sub-category is placed immediately next to the associated category. In another example, the graphic element representing the sub-category is connected to the graphic element representing the category, via a graphic line or other connecting graphic element.
따라서, 네트워크 시스템(102)의 사용자(106)가 거래의 특정 단계와 연관된 코멘트를 검토하기를 원하는 경우 그 단계를 선택할 수 있고, 이에 응답하여, 디스플레이 모듈(250)은 코멘트에 기초하여 생성된 카테고리 및 연관된 하위-카테고리를 보여주는 디스플레이를 생성한다. Thus, if a
하나의 예시적인 실시예에서, 디스플레이 모듈(250)은 카테고리의 선택을 수신하고, 이에 응답하여, 코멘트를 필터링하여 카테고리 선택과 연관된 그러한 코멘트를 디스플레이한다. 예를 들어, 선택된 카테고리에 할당된 코멘트가 디스플레이되는 반면에, 선택된 카테고리에 할당되지 않은 코멘트는 디스플레이되지 않는다.In one example embodiment, the display module 250 receives a selection of a category and, in response, filters the comments to display those comments associated with the category selection. For example, comments assigned to the selected category are displayed, while comments not assigned to the selected category are not displayed.
하나의 예시적인 실시예에서, 디스플레이 모듈(250)은, 선택에 응답하여, 선택된 카테고리의 그래픽 크기를 증가시킨다. 이는, 어떤 카테고리가 선택되었는지를 사용자(106)에게 더 명확하게 할 수 있고, 디스플레이된 코멘트가 어떻게 필터링되는지를 사용자(106)에게 상기시키는 역할을 할 수 있다.In one exemplary embodiment, the display module 250, in response to the selection, increases the graphic size of the selected category. This may make it clearer to the
다른 예시적인 실시예에서, 디스플레이 모듈(250)은 하위-카테고리의 선택을 수신하고, 이에 응답하여, 선택된 하위-카테고리를 강조하고, 선택된 하위-카테고리를 설명하는 제목을 디스플레이하고, 그리고 하위-카테고리와 연관된 디스플레이된 코멘트를 필터링한다.In another example embodiment, the display module 250 receives a selection of a sub-category and, in response, highlights the selected sub-category, displays a title descriptive of the selected sub-category, and in response to the sub-category Filters the displayed comments associated with
도 3은 다른 예시적인 실시예에 따른 피드백 시스템을 도시하는 블록도(300)이다. 이 예시적인 실시예는 수집 모듈(220), 감정 모듈(230), 디스플레이 모듈(250), 카테고리 모듈(240), 통지 모듈(260), 머신 학습 시스템(270) 및 가중치 모듈(280)을 포함한다. 수집 모듈(220), 감정 모듈(230), 디스플레이 모듈(250) 및 카테고리 모듈(240)은 도 2에 도시된 모듈과 실질적으로 유사할 수 있거나 유사하지 않을 수 있다.3 is a block diagram 300 illustrating a feedback system according to another exemplary embodiment. This exemplary embodiment includes a
하나의 예시적인 실시예에서, 통지 모듈(260)은, 카테고리 중 하나의 트렌드 변화에 응답하여, 사용자(106)에게 경고하도록 구성된다. 하나의 예시적인 실시예에서, 카테고리에 대한 트렌드는 하루에 5 개 미만의 코멘트를 포함한다. 예를 들어, 특정 사용자(106)는 지불에 관한 불만과 관련된 코멘트를, 지난 달 동안 매일 하루에 5 개 미만 수신하였을 수 있다. 따라서, 지불에 관한 불만에 대한 트렌드는 하루에 5 개 미만일 수 있다.In one exemplary embodiment, the
하나의 예시적인 실시예에서, 어떤 날에 지불에 관한 10 개 이상의 불만을 수신한 것에 응답하여, 또는 연속하는 임계 일수 동안 지불에 관한 10 개 이상의 불만을 수신한 것에 응답하여, 통지 모듈(260)은 특정 카테고리와 연관된 코멘트의 트렌드에서 상당한 변화가 있다고 판정한다. 물론, 당업자가 인지할 수 있는 바와 같이, 트렌드의 다른 변화는 통지 모듈(260)에 의해 결정될 수 있으며, 본 개시물은 이러한 모든 트렌드 변화를 포함하는 것으로 여겨진다. In one exemplary embodiment, in response to receiving 10 or more complaints regarding payment on a single day, or in response to receiving 10 or more complaints regarding payment for a consecutive threshold number of days,
정해진 카테고리에 대한 트렌드의 다른 예는 관련된 월별 코멘트, 시간당 코멘트 등을 포함한다. 트렌드 변화는 트렌드의 200 %, 300 %를 초과하는 코멘트 또는 임의의 다른 트렌드 변화를 포함하지만, 이에 제한되지 않는다.Other examples of trends for a given category include related monthly comments, hourly comments, and the like. A trend change includes, but is not limited to, 200% of a trend, more than 300% of a comment, or any other trend change.
하나의 예시적인 실시예에서, 사용자(106)에게 경고하는 것은, 당업자가 인지할 수 있는 바와 같이, 사용자(106)에게 이메일을 전송하는 것, 사용자(106)에게 SMS 텍스트 메시지를 전송하는 것, 전자 그래픽 사용자 인터페이스를 통해 사용자(106)에게 통지를 디스플레이하는 것, 또는 임의의 다른 전자 또는 디지털 통신을 포함한다.In one exemplary embodiment, alerting the
다른 예시적인 실시예에서, 머신 학습 시스템(270)은, 코멘트의 텍스트 수신한 것에 응답하여 코멘트에 대한 카테고리를 출력하도록 구성된다. 일 예에서, 머신 학습 시스템(270)은, 카테고리에 한 세트의 코멘트를 제공함으로써 시스템의 관리자에 의해 트레이닝된다. 이에 응답하여, 머신 학습 시스템(270)은 한 세트의 코멘트에 대해 트레이닝하고, 코멘트의 텍스트에 기초하여 카테고리를 출력하도록 학습한다.In another example embodiment, the machine learning system 270 is configured to output a category for the comment in response to receiving the text of the comment. In one example, machine learning system 270 is trained by an administrator of the system by providing a set of comments to a category. In response, machine learning system 270 trains on a set of comments and learns to output categories based on the text of the comments.
하나의 예시적인 실시예에서, 가중치 모듈(280)은, 코멘트를 제공하는 사용자(106)에 대한 사용자 피드백 스코어에 따라 각각의 코멘트에 대한 가중치를 적용한다. In one exemplary embodiment, the
당업자가 인지할 수 있는 바와 같이, 사용자(106)에 의해 피드백의 품질을 결정하기 위한 많은 상이한 메트릭이 존재한다. 일부 예는 피드백의 길이, 코멘트에 사용된 용어의 정교함(sophistication), 코멘트의 문법의 질(grammar quality), 사용자(106)가 코멘트한 제품을 구매했는지 여부, 사용자(106)가 실제 거래에 참여했는지 여부, 비즈니스 금액 또는 코멘트를 제공하는 사용자(106)의 다른 애스팩트(aspect)를 포함한다. 하나의 예시적인 실시예에서, 디스플레이 모듈(250)은 코멘트를, 특정 임계 사용자 가중치를 초과하는 사용자(106)로부터의 그러한 코멘트로 필터링한다.As one of ordinary skill in the art will appreciate, there are many different metrics for determining the quality of feedback by the
다른 예시적인 실시예에서, 피드백 시스템(150)은 결정된 카테고리에 따라 자연어 처리 모듈을 선택한다. 예를 들어, 피드백 시스템(150)의 관리자는 각각의 카테고리에 대한 자연어 처리 모듈을 맞춤화할 수 있고, 피드백 시스템(150)은 선택된 카테고리에 따라 하위-카테고리를 생성하는데 사용할 자연어 처리 모듈을 선택할 수 있다.In another exemplary embodiment, the
도 4는 하나의 예시적인 실시예에 따른 피드백 시스템(150)에 의해 생성된 사용자 인터페이스(400)를 도시하는 예시이다. 하나의 예시적인 실시예에서, 사용자 인터페이스(400)는 범례(420), 카테고리 및 하위-카테고리에 대한 해시계형(sundial) 디스플레이(421), 및 카테고리와 연관된 코멘트에 대한 디스플레이(430)를 포함한다.4 is an illustration illustrating a
하나의 예시적인 실시예에서, 범례(420)는 특정 카테고리와 컬러 또는 패턴 간의 매핑을 제공한다. 이 예시적인 실시예에서, 해시계형 디스플레이(421)는 외부 링(422) 및 내부 링(423)을 포함한다. 내부 링(423)은 미리 결정된 카테고리 각각에 대한 그래픽 섹션을 포함한다. 외부 링(422)은 외부 링(422) 내의 각각의 카테고리에 대해 생성된 카테고리 각각에 대한 그래픽 섹션을 포함한다.In one exemplary embodiment,
하나의 예시적인 실시예에서, 디스플레이 모듈(250)은, 섹션으로 표현된 카테고리에 매핑된 코멘트의 퍼센티지에 따라 내부 링(423)의 그래픽 섹션(410)의 크기를 조정한다. 예를 들어, 코멘트의 50 %가 그래픽 섹션(410)으로 표현된 카테고리에 매핑되는 것에 응답하여, 디스플레이 모듈(250)은 내부 링(423)의 50 %를 포함하도록 그래픽 섹션(410)의 크기를 조정한다. 이에 따라, 디스플레이 모듈(250)은, 각각의 카테고리에 매핑된 코멘트의 개개의 퍼센티지를 정확하게 나타내는 내부 링(423)을 디스플레이한다.In one exemplary embodiment, the display module 250 resizes the
다른 예시적인 실시예에서, 내부 링(423)과 같이, 디스플레이 모듈(250)은 또한, 특정 그래픽 세그먼트(412)에 매핑된 코멘트의 퍼센티지에 따라 그래픽 세그먼트(412)의 크기를 조정한다. 또한, 이 예시적인 실시예에서, 디스플레이 모듈(250)은, 그래픽 세그먼트(412)가 그래픽 섹션(410)으로 표현된 카테고리와 연관된 하위-카테고리를 나타내는 것에 응답하여, 그래픽 세그먼트(412A, 412B)를 내부 링(423)의 그래픽 섹션(410)과 접촉하도록 외부 링(422)에 배치한다.In another example embodiment, like
하나의 예시적인 실시예에서, 디스플레이 모듈(250)은, 필터링된 코멘트를 디스플레이하는 디스플레이(430)의 일부에서 코멘트를 필터링한다. 예를 들어, 사용자(106)가 그래픽 요소(423)를 선택하는 것에 응답하여, 디스플레이 모듈(250)은, 선택된 그래픽 세그먼트(423)로 표현된 카테고리에 매핑된 코멘트만을 디스플레이하도록 코멘트를 필터링한다. 또한, 사용자(106)가 그래픽 세그먼트(412A)를 선택하는 것에 응답하여, 디스플레이 모듈(250)은, 선택된 그래픽 세그먼트(412A)로 표현된 하위-카테고리에 매핑된 코멘트만을 디스플레이하도록 코멘트를 필터링한다.In one exemplary embodiment, the display module 250 filters the comments in the portion of the
다른 예시적인 실시예에서, 디스플레이 모듈(250)은 한 세트의 코멘트로부터 선택된 카테고리의 행을 생성하고, 카테고리 각각에 대한 그래픽 요소는 각각의 카테고리와 연관된 코멘트의 퍼센티지에 따라 크기가 조정된다. 이 예시적인 실시예에서, 생성된 하위-카테고리의 또 다른 행이 카테고리의 행에 첨부되고, 여기서 하위-카테고리를 나타내는 각각의 그래픽 요소는 하위-카테고리와 연관된 카테고리에 대한 그래픽 요소를 터치한다. 예를 들어, "터치"는, 연관된 카테고리에 대한 그래픽 요소의 적어도 하나의 픽셀에 이웃하는 적어도 하나의 픽셀을 사용하여 디스플레이되도록 렌더링되는 하위-카테고리에 대한 그래픽 요소를 적어도 포함할 수 있다.In another example embodiment, the display module 250 generates rows of categories selected from a set of comments, and the graphical elements for each category are sized according to the percentage of comments associated with each category. In this exemplary embodiment, another row of generated sub-categories is appended to the row of categories, where each graphical element representing a sub-category touches a graphical element for the category associated with the sub-category. For example, “touch” may include at least a graphic element for a sub-category that is rendered to be displayed using at least one pixel neighboring at least one pixel of the graphic element for the associated category.
도 5는 하나의 예시적인 실시예에 따른 데이터 흐름을 도시하는 데이터 흐름도이다. 이러한 데이터 흐름도(500)에서, 수집 모듈(220)은 사용자 피드백(510)을 수신한다. Fig. 5 is a data flow diagram illustrating a data flow according to an exemplary embodiment. In this data flow diagram 500 , the
먼저, 피드백 시스템(150)은, 피드백으로부터 키워드를 추출하기 위해, 이를테면, 단어 임베딩(word embedding)을 사용함으로써 피드백에 대한 테마 또는 토픽을 식별하기 위한 준지도 카테고리 검출(semi-supervised category detection)(512)을 수행한다. 이 카테고리 검출은 계층적 방식(hierarchal manner)으로 수행되어, 카테고리의 심층 계층구조에서 카테고리를 선택할 수 있게 한다. 그후, 피드백 시스템(150)은, 이를테면, 나이브 베이즈 분류기(Naive Bayes classifier)를 사용함으로써 514에서 카테고리(또는 토픽)를 추론한다. 그후, 피드백(예를 들어, 개별 코멘트 또는 진술(submission))은 하나 이상의 추론된 카테고리로 분류될 수 있다. 단어 임베딩 및 나이브 베이즈가 논의되지만, 다른 데이터 마이닝(data mining), 머신 학습 또는 심층 학습 기술이 사용될 수 있다. First, the
하나의 예시적인 실시예에서, 동시에 또는 상이한 시점에서, 피드백 시스템(150)은, 하나 이상의 감정 분류, 이를테면, 긍정, 부정 또는 중립(그러나 이에 제한되지 않음)을 식별하기 위해, 피드백에 대해 감정 분석(520)을 수행한다. 그후, 피드백 시스템(150)은, 피드백에 포함된 코멘트에 기초하여, 피드백을 하나 이상의 추론된 감정 분류로 분류(522)한다.In one exemplary embodiment, at the same time or at different points in time, the
피드백 시스템(150)은, 피드백의 이해(530)를 생성하기 위해, 이를테면, 하나 이상의 하위-카테고리(532)를 추출 또는 생성하기 위해, 고객 피드백의 자연어 분석 또는 처리를 수행하기 위한 하드웨어 또는 소프트웨어 구성요소를 포함할 수 있다. 이러한 소프트웨어 또는 하드웨어 모듈은, 세분화(segmentation) 및 품사 태깅(part-of-speech tagging)을 포함한 구문 분석, 의도 검출을 포함한 의미론 분석, 자동 요약 및 엔티티/속성 추출을 포함한 담화 분석(discourse analysis), 및 음성 인식과 같은 자연어 처리 작업을 수행하기 위한 인공 지능 또는 머신 학습 기술의 선택의 구현을 포함할 수 있다. 하나 이상의 하위-카테고리(532)는 피드백의 핵심 또는 가장 중요한 정보의 요약과 같은 피드백의 하나 이상의 속성을 포함할 수 있다. The
다른 예시적인 실시예에서, 그후, 피드백 시스템(150)은 결정된 카테고리, 감정 및 생성된 하위-카테고리를 시각 디스플레이와 같은 순위 및 시각화 단계(524)에서 결합한다. 이 단계(524)에서, 디스플레이 모듈(250)은 (예를 들어, 코멘트의 카테고리, 감정 및 생성된 하위-카테고리에 기초하여) 본 명세서에 설명된 바와 같이 다양한 상이한 방식으로 코멘트의 순위를 매기거나 코멘트를 디스플레이할 수 있다. 또한, 통지 모듈(260)은, 사용자 피드백 또는 코멘트에서 트렌드를 식별하는 것에 응답하여, 이상 검출 및/또는 경고(540)를 수행할 수 있다.In another exemplary embodiment, the
도 6은 하나의 예시적인 실시예에 따른 피드백을 처리하기 위한 방법(600)을 도시하는 흐름도이다. 방법(600)의 동작은 도 2과 관련하여 전술된 모듈들을 사용하여 피드백 시스템(150)에 의해 수행될 수 있다.6 is a flow diagram illustrating a
하나의 예시적인 실시예에서, 방법(600)이 시작되고, 동작(612)에서, 수집 모듈(220)은 온라인 마켓플레이스의 멤버와의 거래의 특정 단계에서 복수의 코멘트를 수신한다. 예를 들어, 수집 모듈(220)은, 네트워크 시스템(102)의 일부로서 동작하는 애플리케이션 서버(140)를 통해 전송되는 코멘트를 웹 페이지를 통해 수신할 수 있다.In one illustrative embodiment,
방법(600)은 동작(614)에서 계속되고, 감정 모듈(230)은 복수의 코멘트 중 하나 이상을 감정 분류로 분류한다. 예를 들어, 감정 모듈(230)은 트레이닝된 머신 학습 시스템(270)을 코멘트에 적용하고, 트레이닝된 머신 학습 시스템(270)의 출력(예를 들어, 표시된 감정 분류)을 수용할 수 있다.The
방법(600)은 동작(616)에서 계속되고, 카테고리 모듈(240)은 복수의 코멘트 내의 하나 이상의 코멘트 각각에 대한 카테고리를 결정하고, 카테고리는 한 세트의 미리 정의된 카테고리로부터 선택된다. 방법(600)은 동작(618)에서 계속되고, 카테고리 모듈(240)은 선택된 카테고리와 연관된 하위-카테고리를 생성하기 위해 코멘트에 자연어 처리 모듈을 적용한다. 특정 실시예에서, 자연어 처리 모듈이 임의의 수의 하위-카테고리를 생성할 수 있으므로, 생성되는 하위-카테고리의 수에는 어떠한 제한도 없다.
방법(600)은 동작(619)에서 계속되고, 카테고리 모듈(240)은 생성된 하위-카테고리와 하나 이상의 코멘트에 대한 그들 각각의 카테고리를 연관시킨다. 방법(600)은 동작(620)에서 계속되고, 디스플레이 모듈(250)은 특정 거래에 대한 결정된 카테고리 및 연관된 생성된 하위-카테고리의 디스플레이를 생성하고, 각각의 하위-카테고리는 그들 각각의 카테고리에 연결된다. 예를 들어, 도 5에 도시된 바와 같이, 디스플레이 모듈(250)은, 코멘트로부터 선택된 카테고리를 내부 링(423)에 디스플레이하고, 생성된 하위-카테고리를 내부 링(423) 상의 코멘트에 대해 선택된 카테고리에 연결된 외부 링(422)에 디스플레이하는 링 도면을 생성할 수 있다.
도 7은 다른 예시적인 실시예에 따른 피드백을 처리하기 위한 방법을 도시하는 흐름도이다. 방법(700)의 동작은 도 3과 관련하여 전술된 모듈들을 사용하여 피드백 시스템(150)에 의해 수행될 수 있다.7 is a flowchart illustrating a method for processing feedback according to another exemplary embodiment. Operations of
하나의 예시적인 실시예에서, 방법(700)이 시작되고, 동작(712)에서, 피드백 시스템(150)은, 코멘트의 텍스트를 수신한 것에 응답하여, 카테고리를 출력하도록 머신 학습 시스템(270)을 트레이닝시킨다. 일 예에서, 피드백 시스템(150)은, 당업자가 인식할 수 있는 바와 같이, 데이터 저장 디바이스로부터 한 세트의 트레이닝 데이터를 로딩하고, 트레이닝 데이터에 대해 머신 학습 시스템(270)을 트레이닝시킨다.In one illustrative embodiment,
방법(700)은 계속되고, 동작(714)에서, 수집 모듈(220)은 온라인 마켓플레이스의 멤버와의 거래의 특정 단계에 대한 코멘트의 원격 데이터베이스로부터 코멘트를 검색한다. 예를 들어, 수집 모듈(220)은 SQL 질의를 구성하여 데이터베이스(126)에 제출하고, SQL 질의의 조건을 만족시키는 코멘트를 수신할 수 있다.
방법(700)은 동작(716)에서 계속되고, 감정 모듈(230)은 코멘트를 감정 분류로 분류한다. 예를 들어, 감정 모듈(230)은 (예를 들어, 사용자(106)가 전자 사용자 인터페이스를 사용하여 감정을 구체적으로 나타내는 예에서) 전자 사용자 인터페이스에서 하나 이상의 선택에 따라 코멘트를 분류할 수 있다.The
방법(700)은 동작(718)에서 계속되고, 카테고리 모듈(240)은 복수의 코멘트 내의 하나 이상의 코멘트 각각에 대한 카테고리를 결정하고, 카테고리는 한 세트의 미리 정의된 카테고리로부터 선택된다. 방법(700)은 계속되고 동작(720)에서, 카테고리 모듈(240)은, 선택된 카테고리와 연관된 하위-카테고리를 생성하기 위해 자연어 처리 모듈을 코멘트에 적용한다. 특정 실시예에서, 당업자가 인식할 수 있는 바와 같이, 자연어 처리 모듈이 임의의 수의 하위-카테고리를 생성할 수 있으므로, 생성되는 하위-카테고리의 수에는 어떠한 제한도 없다.
방법(700)은 동작(722)에서 계속되고, 디스플레이 모듈(250)은 특정 거래에 대한 결정된 카테고리 및 연관된 생성된 하위-카테고리의 디스플레이를 생성하고, 각각의 하위-카테고리는 그들 각각의 카테고리에 연결된다. 예를 들어, 디스플레이 모듈(250)은 카테고리의 최상부 행 및 하위-카테고리의 제2 행을 생성할 수 있고, 여기서 각각의 하위-카테고리는 그들 각각의 카테고리에 연결된다. 이 예시적인 실시예에서, 디스플레이 모듈(250)은, 하위-카테고리를 수용하기 위해 카테고리에 대한 그래픽 요소의 크기를 조정한다.
방법(700)은 동작(724)에서 계속되고, 통지 모듈(260)은, 카테고리 중 하나의 트렌드 변화에 응답하여 사용자(106)에게 경고한다. 하나의 예시적인 실시예에서, 사용자(106)에게 경고하는 것은, 당업자가 인지할 수 있는 바와 같이, 사용자(106)에게 이메일을 전송하는 것, 사용자(106)에게 SMS 텍스트 메시지를 전송하는 것, 전자 그래픽 사용자 인터페이스를 통해 사용자(106)에게 통지를 디스플레이하는 것, 또는 임의의 다른 전자 또는 디지털 통신을 포함한다. The
도 8은 하나의 예시적인 실시예에 따라 피드백을 처리하기 위한 방법(800)을 도시하는 다른 흐름도이다. 방법(800)에서의 동작은, 도 2-5와 관련하여 위에서 설명된 모듈을 사용하여 피드백 시스템(150)에 의해 수행될 수 있다. 하나의 예시적인 실시예에서, 피드백 시스템(150)은, 본 명세서에 설명된 바와 같이, 온라인 마켓플레이스의 멤버와의 거래의 특정 단계에서 복수의 코멘트를 수신함으로써 동작(812)에서 방법(800)을 시작한다. 동작(814)에서, 피드백 시스템(150)은 하나 이상의 수신된 코멘트의 감정을 결정할 수 있다. 동작(816)에서, 피드백 시스템은, 예를 들어, 피드백 시스템(150)에 의해 결정 또는 식별된 카테고리에 기초하여, 수신된 코멘트 중 하나 이상에 대한 분류를 결정할 수 있다. 동작(818)에서, 피드백 시스템은 하나 이상의 하위-분류 또는 하위-카테고리를 생성할 수 있다. 동작(820)에서, 피드백 시스템은 결정된 분류 및 분류와 연관된 하위-분류 간의 연결을 도시하는 그래픽 디스플레이를 생성할 수 있다. 동작(822)에서, 피드백 시스템은 디스플레이를 통해 피드백 코멘트의 카테고리, 하위-카테고리의 선택을 수신할 수 있다. 동작(824)에서, 피드백 시스템은 수신된 선택에 따라 피드백 코멘트를 필터링할 수 있다. 일 예에서, 카테고리가 선택될 때, 피드백 시스템은, 선택된 카테고리에 매칭되는 분류를 갖는 필터링된 피드백 코멘트를 보여주기 위해 그래픽 디스플레이를 수정할 수 있다.8 is another flow diagram illustrating a
머신 및 소프트웨어 아키텍처Machine and software architecture
도 1 내지 도 8과 관련하여 기술된 모듈, 방법, 애플리케이션 등은, 머신 및 연관 소프트웨어 아키텍처의 맥락에서 일부 실시예들로 구현된다. 이하의 섹션은 개시된 실시예들과 함께 사용하기에 적합한 대표적인 소프트웨어 아키텍처(들) 및 머신(예를 들어, 하드웨어) 아키텍처를 설명한다.The modules, methods, applications, etc. described in connection with FIGS. 1-8 are implemented in some embodiments in the context of a machine and associated software architecture. The following sections describe representative software architecture(s) and machine (eg, hardware) architectures suitable for use with the disclosed embodiments.
소프트웨어 아키텍처는 특정 목적에 맞춰진 디바이스 및 머신을 생성하기 위해 하드웨어 아키텍처와 함께 사용된다. 예를 들어, 특정 소프트웨어 아키텍처와 연결된 특정 하드웨어 아키텍처는 휴대 전화, 태블릿 디바이스 등과 같은 모바일 디바이스를 생성할 것이다. 약간 상이한 하드웨어 및 소프트웨어 아키텍처는 "사물 인터넷(internet of things)"에서 사용하기 위한 스마트 디바이스를 생산할 수 있다. 한편 또 다른 조합은 클라우드 컴퓨팅 아키텍처 내에서의 사용을 위한 서버 컴퓨터를 생산한다. 당업자가 본 명세서에 포함된 개시물과 상이한 상황에서 본 발명의 청구 대상을 구현하는 방법을 용이하게 이해할 수 있으므로, 그러한 소프트웨어 및 하드웨어 아키텍처의 모든 조합이 본 명세서에 제시되지는 않는다.Software architectures are used in conjunction with hardware architectures to create devices and machines that are tailored for a specific purpose. For example, a particular hardware architecture coupled with a particular software architecture will create mobile devices such as cell phones, tablet devices, and the like. Slightly different hardware and software architectures may produce smart devices for use in the "internet of things." Another combination, meanwhile, produces server computers for use within cloud computing architectures. Not all combinations of such software and hardware architectures are presented herein, as those skilled in the art may readily understand how to implement the claimed subject matter in circumstances other than the disclosure contained herein.
모듈, 구성요소, 및 로직Modules, Components, and Logic
본 명세서에서 특정 실시예는 로직 또는 다수의 구성요소, 모듈 또는 메커니즘을 포함하는 것으로 설명된다. 모듈은 소프트웨어 모듈(예를 들어, 머신 판독 가능 매체 상에 구현된 코드) 또는 하드웨어 모듈 중 하나를 구성할 수 있다. "하드웨어 모듈"은 특정 동작을 수행할 수 있는 유형의 유닛이고 특정 물리적 방식으로 구성 또는 배치될 수 있다. 다양한 예시적인 실시예들에서, 하나 이상의 컴퓨터 시스템(예를 들어, 독립형 컴퓨터 시스템, 클라이언트 컴퓨터 시스템, 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템(예를 들어, 프로세서 또는 프로세서 그룹)의 하나 이상의 하드웨어 모듈은, 소프트웨어(예를 들어, 애플리케이션 또는 애플리케이션 부분)에 의해 본 명세서에 설명된 바와 같은 특정 동작을 수행하도록 동작하는 하드웨어 모듈로서 구성될 수 있다. Certain embodiments are described herein as including logic or a number of components, modules, or mechanisms. A module may constitute either a software module (eg, code embodied on a machine-readable medium) or a hardware module. A “hardware module” is a tangible unit capable of performing specific operations and may be configured or disposed in a specific physical manner. In various demonstrative embodiments, one or more hardware modules of one or more computer systems (eg, stand-alone computer systems, client computer systems, or server computer systems) or computer systems (eg, processors or groups of processors) include: It may be configured by software (eg, an application or application portion) as a hardware module that operates to perform specific operations as described herein.
일부 실시예에서, 하드웨어 모듈은 기계적으로, 전자적으로, 또는 이들의 임의의 적절한 조합으로 구현될 수 있다. 예를 들어, 하드웨어 모듈은 특정 동작을 수행하도록 영구적으로 구성된 전용 회로 또는 로직을 포함할 수 있다. 예를 들어, 하드웨어 모듈은 FPGA(field-programmable gate array) 또는 ASIC(application specific integrated circuit)와 같은 특수 목적 프로세서일 수 있다. 하드웨어 모듈은 또한 특정 동작을 수행하기 위해 소프트웨어에 의해 일시적으로 구성되는 프로그램 가능 로직 또는 회로를 포함할 수 있다. 예를 들어, 하드웨어 모듈은 범용 프로세서 또는 다른 프로그램 가능 프로세서에 의해 실행되는 소프트웨어를 포함할 수 있다. 이러한 소프트웨어에 의해 일단 구성되면, 하드웨어 모듈은 구성된 기능을 수행하도록 고유하게 맞춰진 특정 머신(또는 머신의 특정 구성요소)이 되어 더 이상 범용 프로세서가 아니다. 전용이고 영구적으로 구성된 회로에서, 또는 일시적으로 구성된 회로(예를 들어, 소프트웨어에 의해 구성됨)에서 하드웨어 모듈을 기계적으로 구현하기 위한 결정은 비용 및 시간 고려사항에 의해 추진될 수 있다는 점을 이해할 것이다.In some embodiments, hardware modules may be implemented mechanically, electronically, or any suitable combination thereof. For example, a hardware module may include dedicated circuitry or logic permanently configured to perform certain operations. For example, the hardware module may be a special purpose processor such as a field-programmable gate array (FPGA) or an application specific integrated circuit (ASIC). Hardware modules may also include programmable logic or circuitry that is temporarily configured by software to perform specific operations. For example, a hardware module may include software executed by a general purpose processor or other programmable processor. Once configured by such software, a hardware module becomes a specific machine (or specific component of a machine) uniquely tailored to perform the functions for which it is configured and is no longer a general purpose processor. It will be appreciated that the decision to mechanically implement a hardware module in a dedicated and permanently configured circuit, or in a temporarily configured circuit (eg, configured by software) may be driven by cost and time considerations.
따라서, "하드웨어 모듈"이라는 문구는 물리적으로 구성되거나, 영구적으로 구성되거나(예를 들어, 하드와이어드(hardwired)) 일시적으로 구성되어(예를 들어, 프로그램되어) 특정 방식으로 동작하거나 본 명세서에 설명된 특정 동작을 수행하는 엔티티인 유형의 엔티티를 포괄하는 것으로 이해되어야 한다. 본 명세서에 사용되는 바와 같이, "하드웨어 구현 모듈"은 하드웨어 모듈을 지칭한다. 하드웨어 모듈들이 일시적으로 구성되는(예를 들어, 프로그램되는) 실시예들을 고려하면, 하드웨어 모듈들의 각각은 어느 한 시점에 구성되거나 인스턴스화될 필요가 없다. 예를 들어, 하드웨어 모듈이 특수 목적 프로세서가 되도록 소프트웨어에 의해 구성된 범용 프로세서를 포함하는 경우, 범용 프로세서는 상이한 시간에 (예를 들어, 상이한 하드웨어 모듈을 포함하는) 상이한 특수 목적 프로세서로 각각 구성될 수 있다. 이에 따라, 소프트웨어는, 예를 들어, 특정 프로세서 또는 프로세서들을 구성하여, 예를 들어, 하나의 시간 인스턴스에서 특정 하드웨어 모듈을 구성하고 다른 시간 인스턴스에서 다른 하드웨어 모듈을 구성한다.Accordingly, the phrase "hardware module" means that it is physically configured, permanently configured (eg, hardwired), or temporarily configured (eg, programmed) to operate in a particular manner or as described herein. It should be understood to encompass entities of a type, which are entities that perform specific operations. As used herein, “hardware implemented module” refers to a hardware module. Considering embodiments in which hardware modules are temporarily configured (eg, programmed), each of the hardware modules need not be configured or instantiated at any one time. For example, if the hardware modules include a general purpose processor configured by software to be a special purpose processor, the general purpose processor may each be configured with different special purpose processors (eg, containing different hardware modules) at different times. have. Accordingly, the software configures, for example, a particular processor or processors, eg, to configure a particular hardware module in one time instance and configure another hardware module in another time instance.
하드웨어 모듈은 다른 하드웨어 모듈에 정보를 제공하고 다른 하드웨어 모듈로부터 정보를 수신할 수 있다. 따라서, 설명된 하드웨어 모듈들은 통신 가능하게 연결된 것으로 고려될 수 있다. 동시에 다수의 하드웨어 모듈이 존재하는 경우, 통신은 2개 이상의 하드웨어 모듈들 사이의 또는 중의 신호 송신(예를 들어, 적절한 회로 및 버스를 통해)을 통해 달성될 수 있다. 복수의 하드웨어 모듈이 상이한 시간에 구성되거나 인스턴스화되는 실시예들에서, 그러한 하드웨어 모듈들 사이의 통신은, 예를 들어, 복수의 하드웨어 모듈이 액세스하는 메모리 구조 내의 정보의 저장 및 검색을 통해 달성될 수 있다. 예를 들어, 하나의 하드웨어 모듈은 동작을 수행하고 해당 동작의 출력을 통신 가능하게 연결된 메모리 디바이스에 저장할 수 있다. 그후, 추가 하드웨어 모듈은, 추후 시간에, 저장된 출력을 검색하고 처리하기 위해 메모리 디바이스에 액세스할 수 있다. 하드웨어 모듈은 또한 입력 또는 출력 디바이스와의 통신을 개시할 수도 있고, 리소스(예를 들어, 정보의 집합)에 대해 동작할 수 있다.A hardware module may provide information to, and receive information from, other hardware modules. Accordingly, the described hardware modules may be considered communicatively coupled. Where multiple hardware modules are present at the same time, communication may be accomplished via signal transmission (eg, via appropriate circuitry and busses) between or during two or more hardware modules. In embodiments in which a plurality of hardware modules are configured or instantiated at different times, communication between such hardware modules may be achieved, for example, through storage and retrieval of information in a memory structure accessed by the plurality of hardware modules. have. For example, one hardware module may perform an operation and store an output of the operation in a communicatively coupled memory device. The additional hardware module may then access the memory device to retrieve and process the stored output at a later time. A hardware module may also initiate communication with an input or output device, and may operate on a resource (eg, a set of information).
본 명세서에 설명된 예시적인 방법의 다양한 동작은 관련 동작을 수행하도록 (예를 들어, 소프트웨어에 의해) 일시적으로 구성되거나 영구적으로 구성된 하나 이상의 프로세서에 의해 적어도 부분적으로 수행될 수 있다. 일시적으로 또는 영구적으로 구성되더라도, 그러한 프로세서는 본 명세서에 설명된 하나 이상의 동작 또는 기능을 수행하도록 동작하는 프로세서로 구현된 모듈을 구성할 수 있다. 본 명세서에서 사용되는 "프로세서로 구현된 모듈"은 하나 이상의 프로세서를 사용하여 구현된 하드웨어 모듈을 지칭한다.The various operations of the example methods described herein may be performed at least in part by one or more processors temporarily configured (eg, by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such a processor may constitute a processor-implemented module that operates to perform one or more operations or functions described herein. As used herein, a “processor-implemented module” refers to a hardware module implemented using one or more processors.
유사하게, 본 명세서에 설명된 방법들은 적어도 부분적으로 프로세서로 구현될 수 있고, 특정 프로세서 또는 프로세서들은 하드웨어의 일례이다. 예를 들어, 방법의 동작들 중 적어도 일부는 하나 이상의 프로세서 또는 프로세서로 구현된 모듈에 의해 수행될 수 있다. 더욱이, 하나 이상의 프로세서는 또한 "클라우드 컴퓨팅" 환경에서 또는 "서비스로서의 소프트웨어(SaaS)"로서 관련 동작의 성능을 지원하도록 동작할 수 있다. 예를 들어, 동작들 중 적어도 일부는 컴퓨터의 그룹(프로세서들을 포함하는 머신의 예로서)에 의해 수행될 수 있고, 이러한 동작들은 네트워크(예를 들어, 인터넷) 및 하나 이상의 적절한 인터페이스(예를 들어, 애플리케이션 프로그램 인터페이스(API))를 통해 액세스 가능하다.Similarly, the methods described herein may be implemented, at least in part, with a processor, with the particular processor or processors being an example of hardware. For example, at least some of the operations of the method may be performed by one or more processors or processor-implemented modules. Moreover, the one or more processors may also operate to support the performance of related operations in a “cloud computing” environment or as a “software as a service” (SaaS). For example, at least some of the operations may be performed by a group of computers (eg, a machine comprising processors), and such operations may be performed by a network (eg, the Internet) and one or more suitable interfaces (eg, , accessible through an application program interface (API).
특정 동작들의 성능은 단일 머신 내에 상주할 뿐만 아니라 다수의 머신들에 걸쳐 배치되는 프로세서들 사이에서 분산될 수 있다. 일부 예시적인 실시예들에서, 프로세서 또는 프로세서로 구현된 모듈은 단일 지리적 위치(예를 들어, 가정 환경, 사무실 환경 또는 서버 팜 내)에 위치할 수 있다. 다른 예시적인 실시예들에서, 프로세서 또는 프로세서로 구현된 모듈은 다수의 지리적 위치에 걸쳐 분산될 수도 있다.The performance of certain operations may be distributed among processors that not only reside within a single machine, but are deployed across multiple machines. In some demonstrative embodiments, a processor or processor-implemented module may be located in a single geographic location (eg, within a home environment, office environment, or server farm). In other example embodiments, a processor or processor-implemented module may be distributed across multiple geographic locations.
도 9는 일부 예시적인 실시예에 따른, 머신 상에 설치될 수 있는 소프트웨어 아키텍처(900)의 예를 도시하는 블록도이다. 소프트웨어 아키텍처(900)는 본 명세서에 설명된 다양한 하드웨어 아키텍처와 함께 사용될 수 있다. 도 9는 단지 소프트웨어 아키텍처의 비제한적 예일 뿐이고 본 명세서에 설명된 기능을 용이하게 하기 위해 많은 다른 아키텍처가 구현될 수 있다는 점이 이해될 것이다. 소프트웨어 아키텍처(900)는, 무엇보다도, 프로세서(1010), 메모리(1030), 및 I/O 구성요소(1050)를 포함하는 도 10의 머신(1000)과 같은 하드웨어 상에서 실행될 수 있다. 대표적인 하드웨어 계층(904)이 도시되고, 예를 들어, 도 10의 머신(1000)을 나타낼 수 있다. 대표적인 하드웨어 계층(904)은 연관된 실행 가능 명령어(908)를 갖는 하나 이상의 프로세싱 유닛(906)을 포함한다. 실행 가능 명령어(908)는 도 1 내지 도 8의 방법, 모듈 등의 구현예를 포함하는 소프트웨어 아키텍처(902)의 실행 가능 명령어를 나타낸다. 하드웨어 계층(904)은, 실행 가능 명령어(908)를 또한 갖는 메모리 및/또는 저장 모듈(910)을 또한 포함한다. 하드웨어 계층(904)은 또한, 하드웨어 계층(904)의 임의의 다른 하드웨어, 예를 들어, 머신(1000)의 일부로서 도시된 다른 하드웨어를 나타내는, 912로 표시된 기타 하드웨어(912)를 포함할 수 있다. 9 is a block diagram illustrating an example of a
도 9의 예시적인 아키텍처에서, 소프트웨어 아키텍처(902)는 각각의 계층이 특정 기능을 제공하는 계층들의 스택으로서 개념화될 수 있다. 예를 들어, 소프트웨어 아키텍처(902)는 운영 체제(914), 라이브러리(916), 프레임워크/미들웨어(918), 애플리케이션(920) 및 프레젠테이션 계층(944)과 같은 계층을 포함할 수 있다. 동작 가능하게, 애플리케이션(920) 및/또는 계층 내의 다른 구성요소는 소프트웨어 스택을 통해 애플리케이션 프로그래밍 인터페이스(API) 호출(924)을 호출하고, API 호출(924)에 응답하여 메시지(926)로 도시된 응답, 반환 값 등을 수신할 수 있다. 예시된 계층은 사실상 대표적인 것으로 모든 소프트웨어 아키텍처가 모든 계층을 갖는 것은 아니다. 예를 들어, 일부 모바일 또는 특수 목적 운영 체제는 프레임워크/미들웨어 계층(918)을 제공하지 않을 수도 있지만, 다른 것들은 그러한 계층을 제공할 수도 있다. 다른 소프트웨어 아키텍처는 추가 또는 다른 계층을 포함할 수도 있다.In the example architecture of FIG. 9 , the software architecture 902 may be conceptualized as a stack of layers, each layer providing a specific function. For example, the software architecture 902 may include layers such as an operating system 914 , a library 916 , a framework/middleware 918 , an application 920 , and a presentation layer 944 . Operably, the application 920 and/or other components within the layer make application programming interface (API) calls 924 through the software stack, and in response to the API calls 924 , shown as message 926 . It can receive responses, return values, etc. The illustrated layers are representative in nature and not all software architectures have all layers. For example, some mobile or special purpose operating systems may not provide a framework/middleware layer 918, while others may provide such a layer. Other software architectures may include additional or different layers.
운영 체제(914)는 하드웨어 리소스를 관리하고 공통 서비스를 제공할 수 있다. 운영 체제(914)는, 예를 들어, 커널(928), 서비스(930) 및 드라이버(932)를 포함할 수 있다. 커널(928)은 하드웨어와 다른 소프트웨어 계층 사이에서 추상화 계층(abstraction layer)의 역할을 할 수 있다. 예를 들어, 커널(928)은 메모리 관리, 프로세서 관리(예를 들어, 스케줄링), 구성요소 관리, 네트워킹, 보안 설정 등을 담당할 수 있다. 서비스(930)는 다른 소프트웨어 계층을 위한 다른 공통 서비스를 제공할 수 있다. 드라이버(932)는 하부 하드웨어를 제어하거나 하부 하드웨어의 인터페이싱을 담당할 수 있다. 예를 들어, 드라이버(932)는 하드웨어 구성에 따라 디스플레이 드라이버, 카메라 드라이버, 블루투스® 드라이버, 플래시 메모리 드라이버, 직렬 통신 드라이버(예를 들어, USB(Universal Serial Bus) 드라이버), Wi-Fi® 드라이버, 오디오 드라이버, 전력 관리 드라이버 등을 포함할 수 있다.The operating system 914 may manage hardware resources and provide common services. Operating system 914 may include, for example, a
라이브러리(916)는 애플리케이션(920) 및/또는 다른 구성요소 및/또는 계층에 의해 이용될 수 있는 공통 기반구조를 제공할 수 있다. 하나의 특정 실시예에서, 피드백 시스템(150)의 다양한 모듈은 애플리케이션(920)으로서 구현된다. 라이브러리(916)는 전형적으로 다른 소프트웨어 모듈이 하위 운영 체제(914) 기능(예를 들어, 커널(928), 서비스(930) 또는 드라이버(932))과 직접 인터페이싱하는 것보다 더 용이한 방식으로 작업을 수행할 수 있게 하는 기능을 제공한다. 라이브러리(916)는 메모리 할당 기능, 문자열 조작 기능, 수학 기능 등과 같은 기능을 제공할 수 있는 시스템 라이브러리(934)(예를 들어, C 표준 라이브러리)를 포함할 수 있다. 또한, 라이브러리(916)는 미디어 라이브러리(예를 들어, MPEG4, H.264, MP3, AAC, AMR, JPG, PNG와 같은 다양한 미디어 포맷의 표현 및 조작을 지원하는 라이브러리), 그래픽 라이브러리(예를 들어, 디스플레이 상에 2-차원 및/또는 3 차원 그래픽 콘텐츠를 렌더링하는 데 사용될 수 있는 OpenGL 프레임워크), 데이터베이스 라이브러리(예를 들어, 다양한 관계형 데이터베이스 기능을 제공할 수 있는 SQLite), 웹 라이브러리(예를 들어, 웹 브라우징 기능을 제공할 수 있는 WebKit) 등과 같은 API(936)를 포함할 수 있다. 라이브러리(916)는 또한 많은 다른 API를 애플리케이션(920) 및 다른 소프트웨어 구성요소/모듈에 제공하도록 매우 다양한 다른 라이브러리(938)를 포함할 수 있다.The library 916 may provide a common infrastructure that may be utilized by the application 920 and/or other components and/or layers. In one particular embodiment, various modules of
프레임워크(918)(때때로 미들웨어로도 지칭됨)는 애플리케이션(920) 및/또는 다른 소프트웨어 구성요소/모듈에 의해 이용될 수 있는 상위 레벨의 공통 기반구조를 제공할 수 있다. 예를 들어, 프레임워크(918)는 다양한 그래픽 사용자 인터페이스(GUI) 기능, 고레벨 리소스 관리, 고레벨 위치 서비스 등을 제공할 수 있다. 프레임워크(918)는 애플리케이션(920) 및/또는 다른 소프트웨어 구성요소/모듈(이들 중 일부는 특정 운영 체제 또는 플랫폼에 특정될 수 있음)에 의해 이용될 수 있는 광범위한 다른 스펙트럼의 API를 제공할 수 있다. 하나의 예시적인 실시예에서, 3D 통합 시스템(146)의 적어도 일부는 미들웨어로서 구현된다. 일 예에서, 3D 모델 모듈은 미들웨어로서 구현되고, 임의의 애플리케이션(920)에 의해 액세스 가능하다.Framework 918 (sometimes referred to as middleware) may provide a high-level common infrastructure that may be utilized by application 920 and/or other software components/modules. For example, the framework 918 may provide various graphical user interface (GUI) functions, high-level resource management, high-level location services, and the like. Framework 918 may provide a wide other spectrum of APIs that may be utilized by application 920 and/or other software components/modules, some of which may be specific to a particular operating system or platform. have. In one exemplary embodiment, at least a portion of the 3D integration system 146 is implemented as middleware. In one example, the 3D model module is implemented as middleware and is accessible by any application 920 .
애플리케이션(920)은 내장형 애플리케이션(940) 및/또는 제3자 애플리케이션(942)을 포함한다. 대표적인 내장형 애플리케이션(940)의 예는 연락처 애플리케이션, 브라우저 애플리케이션, 북 리더 애플리케이션, 위치 애플리케이션, 미디어 애플리케이션, 메시징 애플리케이션, 게임 애플리케이션 등을 포함할 수 있지만 이에 제한되지 않는다. 제3자 애플리케이션(942)은 내장형 애플리케이션뿐만 아니라 매우 여러 가지 다른 애플리케이션 중 임의의 것을 포함할 수 있다. 특정 예에서, 제3자 애플리케이션(942)(예를 들어, 특정 플랫폼의 벤더 이외의 엔티티에 의해 AndroidTM 또는 iOSTM 소프트웨어 개발 키트(SDK)를 사용하여 개발된 애플리케이션)은 모바일 운영 체제(예를 들어, iOSTM, AndroidTM, Windows® 폰 또는 기타 모바일 운영 체제) 상에서 작동하는 모바일 소프트웨어일 수 있다. 이 예에서, 제3자 애플리케이션(942)은 본 명세서에 설명된 기능을 용이하게 하기 위해 운영 체제(914)와 같은 모바일 운영 체제에 의해 제공되는 API 호출(924)를 호출할 수 있다. Applications 920 include embedded
애플리케이션(920)은 내장형 운영 체제 기능(예를 들어, 커널(928), 서비스(930) 또는 드라이버(932)), 라이브러리(예를 들어, 시스템(934), API(936) 및 다른 라이브러리(938)), 프레임워크/미들웨어(918)를 이용하여 시스템의 사용자(106)와 상호작용하기 위한 사용자 인터페이스를 생성할 수 있다. 대안적으로 또는 추가 적으로, 일부 시스템에서, 사용자(106)와의 상호작용은 표현 계층(944)과 같은 표현 계층을 통해 발생할 수 있다. 이들 시스템에서, 애플리케이션/모듈 "로직"은 사용자(106)와 상호작용하는 애플리케이션/모듈의 양태들에서 분리될 수 있다.Applications 920 include embedded operating system functions (eg,
일부 소프트웨어 아키텍처는 가상 머신을 이용한다. 도 9의 예에서, 이는 가상 머신(948)으로 예시된다. 가상 머신(948)은 마치 애플리케이션/모듈이 하드웨어 머신(예를 들어, 도 10의 머신(1000)) 상에서 실행중인 것처럼 애플리케이션/모듈을 실행할 수 있는 소프트웨어 환경을 생성한다. 가상 머신(948)은 호스트 운영 체제(예를 들어, 도 9의 운영 체제(914))에 의해 호스팅되고, 전형적으로 항상은 아니지만, 가상 머신(948)의 동작뿐만 아니라 호스트 운영 체제(즉, 운영 체제(914))와의 인터페이스를 관리하는 가상 머신 모니터(946)를 갖는다. 소프트웨어 아키텍처는 운영 체제(950), 라이브러리(952), 프레임워크/미들웨어(954), 애플리케이션(956) 또는 프레젠테이션 계층(958)과 같은 가상 머신(948) 내에서 실행된다. 가상 머신(948) 내에서 실행되는 이러한 소프트웨어 아키텍처(902)의 계층은 이전에 설명된 대응 계층과 동일할 수도 있거나 상이할 수도 있다.Some software architectures use virtual machines. In the example of FIG. 9 , this is illustrated by virtual machine 948 . Virtual machine 948 creates a software environment in which applications/modules can run as if the applications/modules were running on a hardware machine (eg,
예시적인 머신 아키텍처 및 머신 판독 가능 매체Exemplary machine architectures and machine-readable media
도 10은, 머신 판독 가능 매체(예를 들어, 머신 판독 가능 저장 매체)로부터 명령어를 판독하고 본 명세서에서 논의된 임의의 하나 이상의 방법을 수행할 수 있는, 일부 예시적인 실시예에 따른 머신(1000)의 구성요소를 도시하는 블록도이다. 구체적으로, 도 10은 컴퓨터 시스템의 예시적인 형태로 머신(1000)의 개략적 표현을 도시하고, 머신(1000)으로 하여금 본 명세서에서 논의된 임의의 하나 이상의 방법을 수행하게 하기 위한 명령어(1016)(예를 들어, 소프트웨어, 프로그램, 애플리케이션(920), 애플릿, 앱, 또는 다른 실행 가능 코드)가 머신(1000) 내부에서 실행될 수 있다. 10 illustrates a
예를 들어, 명령어(1016)는 머신(1000)으로 하여금 도 6-8의 흐름도를 실행하게 할 수 있다. 부가적으로 또는 대안적으로, 명령어(1016)는 도 2 또는 도 3에 도시된 모듈을 구현할 수 있다. 구체적으로, 명령어(1016)는 수집 모듈(220), 감정 모듈(230), 디스플레이 모듈(250), 카테고리 모듈(240), 통지 모듈(260), 머신 학습 시스템(270), 또는 가중치 모듈(280)의 다양한 기능을 구현할 수 있다.For example, the
명령어(1016)는 프로그램되지 않는 범용 머신을 설명된 방식으로 설명되고 도시된 기능을 실행하도록 프로그램된 특정 머신으로 변환한다. 대안적인 실시예들에서, 머신(1000)은 독립형 디바이스로서 동작하거나 다른 머신들에 연결(예를 들어, 네트워크화)될 수 있다. 네트워크화된 배치에서, 머신(1000)은 서버-클라이언트 네트워크 환경에서 서버 머신 또는 클라이언트 머신의 기능으로 동작할 수 있거나 피어 투 피어(또는 분산형) 네트워크 환경에서 피어 머신으로서 동작할 수 있다. 머신(1000)은 서버 컴퓨터, 클라이언트 컴퓨터, 퍼스널 컴퓨터(PC), 태블릿 컴퓨터, 랩톱 컴퓨터, 넷북, STB(set-top box), PDA(personal digital assistant), 엔터테인먼트 미디어 시스템, 셀룰러 텔레폰, 스마트 폰, 모바일 디바이스, 웨어러블 디바이스(예를 들어, 스마트 워치), 스마트 홈 디바이스(예를 들어, 스마트 어플라이언스), 다른 스마트 디바이스, 웹 어플라이언스, 네트워크 라우터, 네트워크 스위치, 네트워크 브리지 또는 머신(1000)에 의해 취해질 작업들을 순차적으로 또는 달리 명시하는 명령어(1016)를 실행할 수 있는 임의의 머신을 포함할 수 있으나, 이들로 제한되지 않는다. 또한, 단일 머신(1000)이 도시되지만, "머신"이라는 용어는 또한 본 명세서에 논의된 방법들 중 임의의 하나 이상의 방법을 수행하도록 명령어(1016)를 개별적으로 또는 공동으로 실행하는 머신(1000)의 집합을 포함하는 것으로 여겨져야 한다.
머신(1000)은, 예를 들어, 버스(1002)를 통해 서로 통신하도록 구성될 수 있는 프로세서(1010), 메모리(1030) 및 I/O 구성요소(1050)를 포함할 수 있다. 예시적인 실시예에서, 프로세서(1010)(예를 들어, CPU(central processing unit), RISC(reduced instruction set computing) 프로세서, CISC(complex instruction set computing) 프로세서, GPU(graphics processing unit), DSP(digital signal processor), ASIC, RFIC(radio-frequency integrated circuit), 다른 프로세서, 또는 이들의 임의의 적합한 조합)은, 예를 들어, 명령어(1016)를 실행할 수 있는 프로세서(1012) 및 프로세서(1014)를 포함할 수 있다. "프로세서"라는 용어는 동시에 명령어(1016)를 실행할 수 있는 둘 이상의 독립 프로세서(1012, 1014)(때때로 "코어"로 지칭됨)를 포함할 수 있는 다중 코어 프로세서(1010)를 포함하도록 의도된다. 도 10이 다수의 프로세서(1010)를 도시하지만, 머신(1000)은 단일 코어를 갖는 단일 프로세서(1012), 다수의 코어(예를 들어, 멀티 코어 프로세서)를 갖는 단일 프로세서(1012), 단일 코어를 갖는 다수의 프로세서(1012, 1014), 다수의 코어를 갖는 다수의 프로세서(1012, 1014), 또는 이들의 임의의 조합을 포함할 수 있다.
메모리/저장소(1030)는 메인 메모리 또는 다른 메모리 스토리지와 같은 메모리(1032) 및 저장 유닛(1036)을 포함할 수 있고, 이 둘 모두는, 예를 들어, 버스(1002)를 통해, 프로세서(1010)에 모두 액세스 가능하다. 저장 유닛(1036) 및 메모리(1032)는 본 명세서에 설명된 방법들 또는 기능들 중 임의의 하나 이상을 구현하는 명령어(1016)를 저장한다. 명령어(1016)는 또한 머신(1000)에 의한 실행 동안 메모리(1032) 내에, 저장 유닛(1036) 내에, 프로세서(1010) 중 적어도 하나 내에(예를 들어, 프로세서의 캐시 메모리 내에), 또는 이들의 임의의 적합한 조합 내에 완전히 또는 부분적으로 상주할 수 있다. 따라서, 메모리(1032), 저장 유닛(1036), 및 프로세서(1010)의 메모리는 머신 판독 가능 매체의 예이다.Memory/storage 1030 may include memory 1032 and storage unit 1036 , such as main memory or other memory storage, both of which may include, for example, via bus 1002 , processor 1010 . ) are all accessible. Storage unit 1036 and memory 1032
본 명세서에 사용된 바와 같이, "머신 판독 가능 매체"는 명령어(1016) 및 데이터를 일시적으로 또는 영구적으로 저장할 수 있는 디바이스를 의미하고, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 버퍼 메모리, 플래시 메모리, 광학 매체, 자기 매체, 캐시 메모리, 다른 유형의 저장소(예를 들어, 제거 가능한 프로그램 가능 판독 전용 메모리(EEPROM)) 및/또는 이들의 임의의 적절한 조합을 포함할 수 있으나, 이들에 제한되는 것은 아니다. "머신 판독 가능 매체"라는 용어는 명령어(1016)를 저장할 수 있는 단일 매체 또는 복수의 매체(예를 들어, 중앙 집중형 또는 분산형 데이터베이스, 또는 연관된 캐시 및 서버)를 포함하는 것으로 여겨져야 한다. "머신 판독 가능 매체"라는 용어는 또한 머신(예를 들어, 머신(1000))에 의한 실행을 위한 명령어(예를 들어, 명령어(1016))를 저장 또는 운반할 수 있는 임의의 매체 또는 복수의 매체의 조합을 포함하는 것으로 여겨져야 하고, 이로써 명령어(1016)는 머신(1000)의 하나 이상의 프로세서들(예를 들어, 프로세서(1010))에 의해 실행될 때, 머신(1000)으로 하여금 본 명세서에 설명된 임의의 하나 이상의 방법들 중 임의의 하나 이상을 수행하게 한다. 따라서, "머신 판독 가능 매체"는 단일 저장 장치 또는 디바이스뿐만 아니라 다수의 저장 장치 또는 디바이스를 포함하는 "클라우드 기반" 저장 시스템 또는 저장 네트워크를 지칭한다. "머신 판독 가능 매체"라는 용어는 신호 그 자체를 배제하지 않는다.As used herein, “machine-readable medium” means a device capable of temporarily or permanently storing
I/O 구성요소(1050)는 입력을 수신하고, 출력을 제공하고, 출력을 생성하고, 정보를 송신하고, 정보를 교환하고, 측정을 캡처하기 위한 매우 다양한 구성요소를 포함할 수 있다. 특정 머신(1000)에 포함되는 특정 I/O 구성요소(1050)는 머신(1000)의 유형에 의존할 것이다. 예를 들어, 모바일폰과 같은 휴대용 머신은 터치 입력 디바이스 또는 기타 입력 메커니즘을 포함할 가능성이 있지만 헤드리스 서버 머신은 그러한 터치 입력 디바이스를 포함할 가능성이 없다. I/O 구성요소(1050)는 도 10에 도시되지 않은 많은 다른 구성요소를 포함할 수 있음을 이해할 것이다. I/O 구성요소(1050)는 단지 다음의 설명을 단순화하기 위해 기능에 따라 그룹화되고, 그룹화는 결코 제한적이지 않다. 다양한 예시적인 실시예들에서, I/O 구성요소(1050)는 출력 구성요소(1052) 및 입력 구성요소(1054)를 포함할 수 있다. 출력 구성요소(1052)는 시각 구성요소(예를 들어, 플라즈마 디스플레이 패널(PDP), 발광 다이오드(LED) 디스플레이, 액정 디스플레이(LCD), 프로젝터 또는 음극선관(CRT)과 같은 디스플레이), 음향 구성요소(예를 들어, 스피커), 햅틱 구성요소(예를 들어, 진동 모터, 저항 메커니즘), 다른 신호 생성기 등을 포함할 수 있다. 입력 구성요소(1054)는 문자 숫자 입력 구성요소(예를 들어, 키보드, 문자 숫자 입력을 수신하도록 구성된 터치 스크린, 광학 키보드(photo-optical keyboard) 또는 다른 문자 숫자 입력 구성요소), 포인트 기반 입력 구성요소(예를 들어, 마우스, 터치패드, 트랙볼, 조이스틱, 모션 센서, 또는 다른 포인팅 도구), 촉각 입력 구성요소(예를 들어, 물리적인 버튼, 터치 또는 터치 제스처의 위치 및/또는 힘을 제공하는 터치 스크린, 또는 다른 촉각 입력 구성요소), 오디오 입력 구성요소(예를 들어, 마이크로폰) 등을 포함할 수 있다.I/O component 1050 may include a wide variety of components for receiving input, providing output, generating output, transmitting information, exchanging information, and capturing measurements. The particular I/O components 1050 included in a
또 다른 예시적인 실시예에서, I/O 구성요소(1050)는 다른 구성요소들의 광범위한 배열 중에서 생체 인식 구성요소(1056), 모션 구성요소(1058), 환경 구성요소(1060) 또는 위치 구성요소(1062)를 포함할 수 있다. 예를 들어, 생체 인식 구성요소(1056)는 표현(예를 들어, 손 표현, 표정, 음성 표현, 신체 제스처 또는 눈 추적)을 검출하고, 생체 신호(예를 들어, 혈압, 심박수, 체온, 땀 또는 뇌파)를 측정하고, 사람(예를 들어, 음성 식별, 망막 식별, 안면 식별, 지문 식별 또는 뇌전도 기반 식별) 등을 식별하기 위한 구성요소를 포함할 수 있다. 모션 구성요소(1058)는 가속도 센서 구성요소(예를 들어, 가속도계), 중력 센서 구성요소, 회전 센서 구성요소(예를 들어, 자이로스코프) 등을 포함할 수 있다. 환경 구성요소(1060)는, 예를 들어, 조명 센서 구성요소(예를 들어, 광도계), 온도 센서 구성요소(예를 들어, 주위 온도를 검출하는 하나 이상의 온도계), 습도 센서 구성요소, 압력 센서 구성요소(예를 들어, 기압계), 음향 센서 구성요소(예를 들어, 주변 소음을 검출하는 하나 이상의 마이크로폰), 근접도 센서 구성요소(예를 들어, 인근의 객체를 검출하는 적외선 센서), 가스 센서(예를 들어, 안전을 위해 유해 가스의 농도를 검출하거나 대기의 오염물질을 측정하기 위한 가스 검출 센서), 또는 주변 물리적 환경에 대응하는 표시, 측정값 또는 신호를 제공할 수 있는 기타 구성요소를 포함할 수 있다. 위치 구성요소(1062)는 위치 센서 구성요소(예를 들어, GPS 수신기 구성요소), 고도 센서 구성요소(예를 들어, 고도가 도출될 수 있는 공기압을 검출하는 고도계 또는 기압계), 방향 센서 구성요소(예를 들어, 자력계) 등을 포함할 수 있다.In another exemplary embodiment, the I/O component 1050 is a biometric component 1056 , a motion component 1058 , an environment component 1060 , or a location component ( 1062) may be included. For example, biometric component 1056 detects expression (eg, hand expression, facial expression, voice expression, body gesture, or eye tracking) and biometric signal (eg, blood pressure, heart rate, body temperature, sweat) or EEG) and may include a component for identifying a person (eg, voice identification, retinal identification, facial identification, fingerprint identification, or electroencephalogram-based identification), and the like. Motion component 1058 may include an acceleration sensor component (eg, an accelerometer), a gravity sensor component, a rotation sensor component (eg, a gyroscope), and the like. Environmental component 1060 may include, for example, a light sensor component (eg, a photometer), a temperature sensor component (eg, one or more thermometers to detect ambient temperature), a humidity sensor component, a pressure sensor component (eg, barometer), acoustic sensor component (eg, one or more microphones to detect ambient noise), proximity sensor component (eg, infrared sensor to detect nearby objects), gas a sensor (for example, a gas detection sensor for detecting the concentration of a hazardous gas for safety or measuring a contaminant in the atmosphere), or other component capable of providing an indication, measurement, or signal corresponding to the surrounding physical environment may include. The location component 1062 is a location sensor component (eg, a GPS receiver component), an altitude sensor component (eg, an altimeter or barometer that detects air pressure from which an altitude can be derived), a direction sensor component (eg, a magnetometer), and the like.
통신은 다양한 기술을 사용하여 구현될 수 있다. I/O 구성요소(1050)는 커플링(1082) 및 커플링(1072) 각각을 통해 머신(1000)을 네트워크(1080) 또는 디바이스(1070)에 연결하도록 동작 가능한 통신 구성요소(1064)를 포함할 수 있다. 예를 들어, 통신 구성요소(1064)는 네트워크 인터페이스 구성요소 또는 네트워크(1080)와 인터페이싱하기 위한 다른 적절한 디바이스를 포함할 수 있다. 추가 예에서, 통신 구성요소(1064)는 유선 통신 구성요소, 무선 통신 구성요소, 셀룰러 통신 구성요소, 근거리 통신(NFC) 구성요소, 블루투스® 구성요소(예를 들어, 블루투스® 저 에너지), Wi-Fi® 구성요소 및 다른 양식을 통해 통신을 제공하는 기타 통신 구성요소를 포함할 수 있다. 디바이스(1070)는 다른 머신 또는 임의의 다양한 주변 디바이스들(예를 들어, USB를 통해 연결된 주변 디바이스)일 수 있다.Communication may be implemented using a variety of technologies. I/O component 1050 includes a communication component 1064 operable to
더욱이, 통신 구성요소(1064)는 식별자를 검출하거나 식별자를 검출하도록 동작 가능한 구성요소를 포함할 수 있다. 예를 들어, 통신 구성요소(1064)는 무선 주파수 식별(RFID) 태그 판독기 구성요소, NFC 스마트 태그 검출 구성요소, 광학 판독기 구성요소(예를 들어, 유니버설 제품 코드(UPC) 바코드, QR(Quick Response) 코드, 아즈텍 코드, 데이터 매트릭스, 데이터글리프, 맥시코드, PDF417, 울트라 코드, UCC RSS-2D 바코드 및 기타 광학 코드와 같은 다차원 바코드를 검출하기 위한 광 센서) 또는 음향 검출 구성요소(예를 들어, 태그된 오디오 신호를 식별하는 마이크로폰)를 포함할 수 있다. 또한, 인터넷 프로토콜(IP) 지리적 위치, Wi-Fi® 신호 삼각측량을 통한 위치, 특정 위치를 표시할 수 있는 NFC 비콘 신호 검출을 통한 위치 등과 같이 통신 구성요소(1064)를 통해 다양한 정보가 도출될 수 있다.Moreover, communication component 1064 can detect an identifier or include a component operable to detect an identifier. For example, the communication component 1064 may be a radio frequency identification (RFID) tag reader component, an NFC smart tag detection component, an optical reader component (eg, a Universal Product Code (UPC) barcode, a Quick Response (QR) ) code, aztec code, data matrix, dataglyph, maxicode, PDF417, ultra code, UCC RSS-2D barcode, and other multidimensional barcodes such as optical codes) or acoustic detection components (e.g., microphone to identify the tagged audio signal). Additionally, various information may be derived via communication component 1064, such as Internet Protocol (IP) geographic location, location via Wi-Fi® signal triangulation, location via NFC beacon signal detection that may indicate a specific location, etc. can
송신 매체transmission medium
다양한 예시적인 실시예들에서, 네트워크(1080)의 하나 이상의 부분은 애드혹 네트워크, 인트라넷, 엑스트라넷, VPN, LAN, WLAN, WAN, WWAN, MAN, 인터넷, 인터넷의 일부분, PSTN의 일부분, POTS(plain old telephone service) 네트워크, 휴대 전화 네트워크, 무선 네트워크, Wi-Fi® 네트워크, 다른 유형의 네트워크, 또는 둘 이상의 그러한 네트워크의 조합일 수 있다. 예를 들어, 네트워크(1080) 또는 네트워크(1080)의 일부는 무선 또는 셀룰러 네트워크를 포함할 수 있고, 커플링(1082)은 코드 분할 다중 액세스(CDMA) 접속, 이동통신 글로벌 시스템(Global System for Mobile communications: GSM) 접속, 또는 다른 유형의 셀룰러 또는 무선 커플링을 포함할 수 있다. 이 예에서, 커플링(1082)은 단일 반송파 무선 송신 기술(1xRTT), 에볼루션 데이터 최적화(EVDO) 기술, 일반 패킷 무선 서비스(GPRS) 기술, EDGE(Enhanced Data rates for GSM Evolution) 기술, 3G를 포함하는 3GPP(third Generation Partnership Project), 4세대 무선(4G) 네트워크, UMTS(Universal Mobile Telecommunications System), HSPA(High Speed Packet Access), WiMAX(Worldwide Interoperability for Microwave Access), LTE(Long Term Evolution) 표준, 다양한 표준 설정 기관이 정의한 다른 표준, 기타 장거리 프로토콜 또는 기타 데이터 전달 기술과 같은 임의의 다양한 유형의 데이터 전달 기술을 구현할 수 있다. In various demonstrative embodiments, one or more portions of network 1080 are ad hoc networks, intranets, extranets, VPNs, LANs, WLANs, WANs, WWANs, MANs, the Internet, portions of the Internet, portions of the PSTN, plain old telephone service) network, a cellular phone network, a wireless network, a Wi-Fi® network, another type of network, or a combination of two or more such networks. For example, network 1080 or a portion of network 1080 may include a wireless or cellular network, and
명령어(1016)는 네트워크 인터페이스 디바이스(예를 들어, 통신 구성요소(1064)에 포함된 네트워크 인터페이스 구성요소)를 통해 송신 매체를 사용하고 다수의 잘 알려진 전송 프로토콜(예를 들어, 하이퍼텍스트 전송 프로토콜(HTTP)) 중 임의의 프로토콜을 이용하여 네트워크(1080)를 통해 송신되거나 수신될 수 있다. 유사하게, 명령어(1016)는 디바이스(1070)에 대한 커플링(1072)(예를 들어, 피어 투 피어 커플링)을 통해 송신 매체를 사용하여 송신되거나 수신될 수 있다. "송신 매체"라는 용어는 머신(1000)에 의한 실행을 위한 명령어(1016)를 저장, 인코딩, 또는 운반할 수 있는 임의의 무형 매체를 포함하는 것으로 여겨져야 하고, 그러한 소프트웨어의 통신을 용이하게 하는 디지털 또는 아날로그 통신 신호 또는 다른 무형 매체를 포함한다.
언어language
본 명세서 전체에 걸쳐, 복수의 인스턴스는 단일 인스턴스로 기술된 구성요소, 동작 또는 구조를 구현할 수 있다. 하나 이상의 방법의 개별 동작이 별도의 동작으로 도시되고 설명되지만, 개별 동작들 중 하나 이상은 동시에 수행될 수 있으며, 동작들이 반드시 도시된 순서대로 수행되어야 하는 것은 아니다. 예시적인 구성에서 별도의 구성요소로 제시된 구조 및 기능은 조합된 구조 또는 구성요소로 구현될 수 있다. 유사하게, 단일 구성요소로서 제시된 구조 및 기능은 별도의 구성요소로 구현될 수 있다. 이러한 및 다른 변형, 수정, 추가 및 개선은 본 명세서의 청구 범위 내에 있다.Throughout this specification, multiple instances may implement a component, operation, or structure described as a single instance. Although individual acts of one or more methods are shown and described as separate acts, one or more of the individual acts may be performed concurrently and the acts do not necessarily have to be performed in the order shown. Structures and functions presented as separate components in the exemplary configuration may be implemented as a combined structure or component. Similarly, structures and functions presented as a single component may be implemented as separate components. These and other variations, modifications, additions and improvements are within the scope of the claims herein.
본 발명의 청구 대상에 대한 개요가 특정 예시적인 실시예들을 참조하여 설명되었지만, 그러한 실시예들에 대한 다양한 수정 및 변경이 본 개시물의 실시예들의 더 넓은 범위를 벗어나지 않으면서 행해질 수 있다. 본 발명의 청구 대상의 이러한 실시예들은 실제로 둘 이상이 개시되면 임의의 단일 개시 또는 발명적 개념으로 본 출원의 범위를 자발적으로 제한하지 않으면서 단지 편의를 위해 본 명세서에서 용어 "발명"으로 개별적으로 또는 집합적으로 지칭될 수 있다.Although the subject matter of the present disclosure has been described with reference to specific exemplary embodiments, various modifications and changes to such embodiments may be made without departing from the broader scope of the embodiments of the present disclosure. These embodiments of the claimed subject matter are individually referred to herein as "invention" for convenience only, without voluntarily limiting the scope of the present application to any single disclosure or inventive concept if two or more are actually disclosed. or collectively.
본 명세서에 예시된 실시예들은 당업자가 개시된 교시를 실시할 수 있도록 충분히 상세하게 설명된다. 본 개시물의 범위를 벗어나지 않으면서 구조적 및 논리적 대체 및 변경이 이루어질 수 있도록 다른 실시예들이 사용될 수 있고 그로부터 도출될 수 있다. 따라서, 상세한 설명은 제한적인 의미로 여겨져서는 안 되고, 다양한 실시예들의 범위는 첨부된 청구 범위와 함께 그러한 청구 범위가 부여되는 등가물의 전체 범위에 의하아서만 정의된다.The embodiments illustrated herein are described in sufficient detail to enable any person skilled in the art to practice the disclosed teachings. Other embodiments may be used and may be derived therefrom so that structural and logical substitutions and changes may be made without departing from the scope of the present disclosure. Accordingly, the detailed description is not to be taken in a limiting sense, and the scope of various embodiments is defined only by the appended claims, along with the full scope of equivalents to which such claims are entitled.
본 명세서에 사용된 용어 "또는"은 포괄적이거나 배타적인 의미로 고려될 수 있다. 또한, 본 명세서에 단일 인스턴스로서 기술된 리소스, 동작 또는 구조에 대해 복수의 인스턴스가 제공될 수도 있다. 추가적으로, 다양한 리소스, 동작, 모듈, 엔진 및 데이터 저장소 사이의 경계는 다소 임의적이며 특정 동작은 특정 예시적인 구성의 맥락에서 예시된다. 기능의 다른 할당이 계획되고 본 개시물의 다양한 실시예들의 범위 내에 있을 수 있다. 일반적으로, 예시적인 구성에서 별도의 리소스로 제시된 구조 및 기능은 조합된 구조 또는 리소스로 구현될 수 있다. 유사하게, 단일 리소스로 제시된 구조 및 기능은 별도의 리소스로 구현될 수 있다. 이들 및 다른 변형, 수정, 추가 및 개선은 첨부된 청구 범위에 의해 제시되는 본 개시물의 실시예들의 범위 내에 있다. 따라서, 명세서 및 도면은 제한적인 의미라기보다는 예시적인 것으로 간주되어야 한다.As used herein, the term “or” may be considered in an inclusive or exclusive sense. Also, multiple instances may be provided for a resource, operation, or structure described herein as a single instance. Additionally, boundaries between various resources, operations, modules, engines, and data stores are somewhat arbitrary and certain operations are illustrated in the context of specific example configurations. Other assignments of functionality are contemplated and may be within the scope of various embodiments of the present disclosure. In general, structures and functions presented as separate resources in the example configurations may be implemented as combined structures or resources. Similarly, structures and functions presented as a single resource may be implemented as separate resources. These and other variations, modifications, additions and improvements are within the scope of the embodiments of the present disclosure as set forth by the appended claims. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
Claims (20)
명령어가 저장된 머신 판독 가능 메모리를 포함하되, 상기 명령어는, 프로세서에 의해 실행될 때, 상기 시스템을 하여금 동작을 수행하게 하고,
상기 동작은
네트워크 시스템의 멤버와의 거래의 특정 단계에서 복수의 코멘트(comment)를 수신하는 동작과,
상기 복수의 코멘트 중 하나 이상의 코멘트를 한 세트의 미리 결정된 감정 분류(sentiment classification)로 분류하는 동작 - 상기 분류하는 동작은 각각의 코멘트에 포함된 용어가 상기 감정 분류와 연관된 용어에 매칭되는 것에 따라 수행됨 - 과,
상기 복수의 코멘트 내의 상기 하나 이상의 코멘트 각각에 대해, 한 세트의 미리 정의된 카테고리 중에서 카테고리를 선택하기 위해, 트레이닝된 머신 학습 시스템을 적용하는 동작 ― 상기 트레이닝된 머신 학습 시스템은 상기 각각의 코멘트에 포함된 상기 용어를 수용하고 상기 선택된 카테고리를 출력함 ― 과,
상기 하나 이상의 코멘트 각각에 자연어 처리 모듈(natural language processing module)을 적용하여 상기 하나 이상의 코멘트 각각에 대한 하위-카테고리를 생성하는 동작과,
상기 하나 이상의 코멘트에 대한 각각의 카테고리에 상기 생성된 하위-카테고리를 연관시키는 동작과,
상기 생성된 하위-카테고리를 이용하여 특정 거래에 대해 결정된 카테고리의 디스플레이를 생성하는 동작 ― 상기 생성된 하위-카테고리 각각은 각각의 카테고리에 그래픽으로 연결됨 ―
을 포함하는 것인,
시스템.
As a system,
a machine readable memory having stored thereon instructions, the instructions, when executed by a processor, cause the system to perform operations;
the action is
receiving a plurality of comments at a specific stage of a transaction with a member of the network system;
classifying one or more comments of the plurality of comments into a set of predetermined sentiment classifications, wherein the classification is performed according to a term included in each comment matching a term associated with the sentiment classification. - class,
applying a trained machine learning system to, for each of the one or more comments in the plurality of comments, to select a category from a set of predefined categories, the trained machine learning system including in each comment accepts said term and outputs said selected category; and
applying a natural language processing module to each of the one or more comments to generate a sub-category for each of the one or more comments;
associating the created sub-categories with each category for the one or more comments;
generating a display of categories determined for a particular transaction using the generated sub-categories, each of the generated sub-categories being graphically linked to a respective category;
which includes,
system.
상기 동작은 상기 멤버로부터 카테고리의 선택을 수신하고, 상기 선택된 카테고리와 연관된 한 세트의 필터링된 코멘트를 디스플레이하는 동작을 더 포함하는 것인,
시스템.
According to claim 1,
wherein the actions further include receiving a selection of a category from the member and displaying a set of filtered comments associated with the selected category.
system.
상기 동작은 상기 멤버로부터 하위-카테고리의 선택을 수신하고, 상기 선택된 하위-카테고리와 연관된 한 세트의 필터링된 코멘트를 디스플레이하는 동작을 더 포함하는 것인,
시스템.
According to claim 1,
wherein the actions further include receiving a selection of a sub-category from the member, and displaying a set of filtered comments associated with the selected sub-category.
system.
상기 하나 이상의 코멘트를 분류하는 동작은 상기 코멘트로부터의 텍스트를 사용하여 감정 분류를 출력하기 위해 트레이닝된 머신 학습 시스템을 적용하는 동작을 포함하는 것인,
시스템.
According to claim 1,
wherein classifying the one or more comments comprises applying a trained machine learning system to output a sentiment classification using text from the comments.
system.
상기 동작은 상기 카테고리 중 하나에 대한 코멘트의 트렌드 변화에 응답하여 상기 멤버에게 경고하는 동작을 더 포함하는 것인,
시스템.
According to claim 1,
wherein the actions further include alerting the member in response to a trend change in a comment for one of the categories.
system.
상기 동작은 상기 코멘트를 제공하는 사용자에 대한 사용자 피드백 스코어(user feedback score)에 따라 각각의 코멘트에 대한 가중치(weight)를 적용하는 동작을 더 포함하는 것인,
시스템.
According to claim 1,
The operation further includes the operation of applying a weight to each comment according to a user feedback score for the user providing the comment,
system.
상기 동작은 상기 결정된 카테고리에 따라 상기 자연어 처리 모듈을 선택하는 동작을 더 포함하는 것인,
시스템.
According to claim 1,
The operation further comprises the operation of selecting the natural language processing module according to the determined category,
system.
네트워크 시스템의 멤버와의 거래의 특정 단계에서 복수의 코멘트를 수신하는 단계와,
상기 복수의 코멘트 중 하나 이상의 코멘트를 한 세트의 미리 결정된 감정 분류로 분류하는 단계 - 상기 분류하는 단계는 각각의 코멘트에 포함된 용어가 상기 감정 분류와 연관된 용어에 매칭되는 것에 따라 수행됨 - 와,
상기 복수의 코멘트 내의 상기 하나 이상의 코멘트 각각에 대해, 한 세트의 미리 정의된 카테고리 중에서 카테고리를 선택하기 위해, 트레이닝된 머신 학습 시스템을 적용하는 단계 ― 상기 트레이닝된 머신 학습 시스템은 상기 각각의 코멘트에 포함된 상기 용어를 수용하고 상기 선택된 카테고리를 출력함 ― 와,
상기 하나 이상의 코멘트 각각에 자연어 처리 모듈을 적용하여 상기 하나 이상의 코멘트 각각에 대한 하위-카테고리를 생성하는 단계와,
상기 하나 이상의 코멘트에 대한 각각의 카테고리에 상기 생성된 하위-카테고리를 연관시키는 단계와,
상기 생성된 하위-카테고리를 이용하여 특정 거래에 대해 결정된 카테고리의 디스플레이를 생성하는 단계 ― 상기 생성된 하위-카테고리 각각은 각각의 카테고리에 그래픽으로 연결됨 ―
를 포함하는 컴퓨터 구현 방법.
A computer implemented method comprising:
receiving a plurality of comments at a particular stage of a transaction with a member of the network system;
classifying one or more comments of the plurality of comments into a set of predetermined sentiment classifications, wherein the categorizing is performed according to a term included in each comment matching a term associated with the sentiment classification;
applying a trained machine learning system to, for each of the one or more comments in the plurality of comments, to select a category from a set of predefined categories, the trained machine learning system included in each comment accepts said term and outputs said selected category;
applying a natural language processing module to each of the one or more comments to generate a sub-category for each of the one or more comments;
associating the generated sub-categories with each category for the one or more comments;
generating a display of categories determined for a particular transaction using the generated sub-categories, each of the generated sub-categories graphically linked to a respective category;
A computer implemented method comprising a.
상기 멤버로부터 카테고리의 선택을 수신하고, 상기 선택된 카테고리와 연관된 한 세트의 필터링된 코멘트를 디스플레이하는 단계를 더 포함하는
컴퓨터 구현 방법.
9. The method of claim 8,
receiving a selection of a category from the member, and displaying a set of filtered comments associated with the selected category.
How to implement a computer.
상기 멤버로부터 하위-카테고리의 선택을 수신하고, 상기 선택된 하위-카테고리와 연관된 한 세트의 필터링된 코멘트를 디스플레이하는 단계를 더 포함하는
컴퓨터 구현 방법.
9. The method of claim 8,
receiving a selection of a sub-category from the member, and displaying a set of filtered comments associated with the selected sub-category
How to implement a computer.
상기 하나 이상의 코멘트를 분류하는 단계는 상기 멤버로부터 하위-카테고리의 선택을 수신하고, 상기 선택된 하위-카테고리와 연관된 한 세트의 필터링된 코멘트를 디스플레이하는 단계를 더 포함하는 것인,
컴퓨터 구현 방법.
9. The method of claim 8,
wherein classifying the one or more comments further comprises receiving a selection of a sub-category from the member and displaying a set of filtered comments associated with the selected sub-category.
How to implement a computer.
상기 카테고리 중 하나에 대한 코멘트의 트렌드 변화에 응답하여 상기 멤버에게 경고하는 단계를 더 포함하는
컴퓨터 구현 방법.
9. The method of claim 8,
alerting the member in response to a trend change in a comment for one of the categories.
How to implement a computer.
상기 코멘트를 제공하는 사용자에 대한 사용자 피드백 스코어에 따라 각각의 코멘트에 대한 가중치를 적용하는 단계를 더 포함하는
컴퓨터 구현 방법.
9. The method of claim 8,
Further comprising the step of applying a weight to each comment according to a user feedback score for the user providing the comment
How to implement a computer.
상기 결정된 카테고리에 따라 상기 자연어 처리 모듈을 선택하는 단계를 더 포함하는
컴퓨터 구현 방법.
9. The method of claim 8,
Further comprising the step of selecting the natural language processing module according to the determined category
How to implement a computer.
상기 명령어는, 머신의 하나 이상의 프로세서에 의해 실행될 때, 상기 머신으로 하여금 동작을 수행하게 하고,
상기 동작은
네트워크 시스템의 멤버와의 거래의 특정 단계에서 복수의 코멘트를 수신하는 동작과,
상기 복수의 코멘트 중 하나 이상의 코멘트를 한 세트의 미리 결정된 감정 분류로 분류하는 동작 - 상기 분류하는 동작은 각각의 코멘트에 포함된 용어가 상기 감정 분류와 연관된 용어에 매칭되는 것에 따라 수행됨 - 과,
상기 복수의 코멘트 내의 상기 하나 이상의 코멘트 각각에 대해, 한 세트의 미리 정의된 카테고리 중에서 카테고리를 선택하기 위해, 트레이닝된 머신 학습 시스템을 적용하는 동작 ― 상기 트레이닝된 머신 학습 시스템은 상기 각각의 코멘트에 포함된 상기 용어를 수용하고 상기 선택된 카테고리를 출력함 ― 과,
상기 하나 이상의 코멘트 각각에 자연어 처리 모듈을 적용하여 상기 하나 이상의 코멘트 각각에 대한 하위-카테고리를 생성하는 동작과,
상기 하나 이상의 코멘트에 대한 각각의 카테고리에 상기 생성된 하위-카테고리를 연관시키는 동작과,
상기 생성된 하위-카테고리를 이용하여 특정 거래에 대해 결정된 카테고리의 디스플레이를 생성하는 동작 ― 상기 생성된 하위-카테고리 각각은 각각의 카테고리에 그래픽으로 연결됨 ―
을 포함하는 것인,
머신 판독 가능 하드웨어 메모리.
A machine-readable hardware memory having instructions stored thereon, comprising:
the instructions, when executed by one or more processors of a machine, cause the machine to perform an operation;
the action is
receiving a plurality of comments at a specific stage of a transaction with a member of the network system;
classifying one or more comments of the plurality of comments into a set of predetermined sentiment classifications, wherein the classification is performed according to a term included in each comment matching a term associated with the sentiment classification;
applying a trained machine learning system to, for each of the one or more comments in the plurality of comments, to select a category from a set of predefined categories, the trained machine learning system including in each comment accepts said term and outputs said selected category; and
generating a sub-category for each of the one or more comments by applying a natural language processing module to each of the one or more comments;
associating the created sub-categories with each category for the one or more comments;
generating a display of categories determined for a particular transaction using the generated sub-categories, each of the generated sub-categories being graphically linked to a respective category;
which includes,
Machine-readable hardware memory.
상기 동작은 상기 멤버로부터 카테고리의 선택을 수신하고, 상기 선택된 카테고리와 연관된 한 세트의 필터링된 코멘트를 디스플레이하는 동작을 더 포함하는 것인,
머신 판독 가능 하드웨어 메모리.
16. The method of claim 15,
wherein the actions further include receiving a selection of a category from the member and displaying a set of filtered comments associated with the selected category.
Machine-readable hardware memory.
상기 동작은 상기 멤버로부터 하위-카테고리의 선택을 수신하고, 상기 선택된 하위-카테고리와 연관된 한 세트의 필터링된 코멘트를 디스플레이하는 동작을 더 포함하는 것인,
머신 판독 가능 하드웨어 메모리.
16. The method of claim 15,
wherein the actions further include receiving a selection of a sub-category from the member, and displaying a set of filtered comments associated with the selected sub-category.
Machine-readable hardware memory.
상기 하나 이상의 코멘트를 분류하는 동작은 상기 코멘트로부터의 텍스트를 사용하여 감정 분류를 출력하기 위해 트레이닝된 머신 학습 시스템을 적용하는 동작을 포함하는 것인,
머신 판독 가능 하드웨어 메모리.
16. The method of claim 15,
wherein classifying the one or more comments comprises applying a trained machine learning system to output a sentiment classification using text from the comments.
Machine-readable hardware memory.
상기 동작은 상기 카테고리 중 하나에 대한 코멘트의 트렌드 변화에 응답하여 상기 멤버에게 경고하는 동작을 더 포함하는 것인,
머신 판독 가능 하드웨어 메모리.
16. The method of claim 15,
wherein the actions further include alerting the member in response to a trend change in a comment for one of the categories.
Machine-readable hardware memory.
상기 동작은 상기 코멘트를 제공하는 사용자에 대한 사용자 피드백 스코어에 따라 각각의 코멘트에 대한 가중치를 적용하는 동작을 더 포함하는 것인,
머신 판독 가능 하드웨어 메모리.16. The method of claim 15,
The operation further includes applying a weight to each comment according to a user feedback score for a user providing the comment.
Machine-readable hardware memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020227037238A KR20220149624A (en) | 2018-05-18 | 2018-05-18 | Processing transactional feedback |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/087485 WO2019218343A1 (en) | 2018-05-18 | 2018-05-18 | Processing transactional feedback |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227037238A Division KR20220149624A (en) | 2018-05-18 | 2018-05-18 | Processing transactional feedback |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210006459A KR20210006459A (en) | 2021-01-18 |
KR102460293B1 true KR102460293B1 (en) | 2022-10-31 |
Family
ID=68539276
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227037238A KR20220149624A (en) | 2018-05-18 | 2018-05-18 | Processing transactional feedback |
KR1020207036229A KR102460293B1 (en) | 2018-05-18 | 2018-05-18 | Handling of transaction feedback |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227037238A KR20220149624A (en) | 2018-05-18 | 2018-05-18 | Processing transactional feedback |
Country Status (4)
Country | Link |
---|---|
US (3) | US10990764B2 (en) |
KR (2) | KR20220149624A (en) |
CN (1) | CN112334904B (en) |
WO (1) | WO2019218343A1 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112334904B (en) | 2018-05-18 | 2024-06-21 | 电子湾有限公司 | Processing transaction feedback |
US11620608B2 (en) | 2019-02-28 | 2023-04-04 | Walmart Apollo, Llc | System and method for providing uniform tracking information with a reliable estimated time of arrival |
US11941082B2 (en) * | 2019-04-12 | 2024-03-26 | Ul Llc | Technologies for classifying feedback using machine learning models |
US11805185B2 (en) * | 2021-03-03 | 2023-10-31 | Microsoft Technology Licensing, Llc | Offensive chat filtering using machine learning models |
US20230162230A1 (en) * | 2021-11-24 | 2023-05-25 | Capital One Services, Llc | Systems and methods for targeting content based on implicit sentiment analysis |
KR102586580B1 (en) * | 2022-04-15 | 2023-10-10 | 양재미디어 주식회사 | News editing supoort system using natural language processing artificial intelligence language model |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103493040A (en) | 2011-04-21 | 2014-01-01 | 索尼公司 | A method for determining a sentiment from a text |
CN104462132A (en) | 2013-09-23 | 2015-03-25 | 华为技术有限公司 | Comment information display method and device |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6026387A (en) * | 1996-07-15 | 2000-02-15 | Kesel; Brad | Consumer comment reporting apparatus and method |
US7073129B1 (en) | 1998-12-18 | 2006-07-04 | Tangis Corporation | Automated selection of appropriate information based on a computer user's context |
AU3438101A (en) | 1999-11-04 | 2001-05-14 | Strategic Data Corp. | Segment-based self-learning method and system |
US7370285B1 (en) | 2002-07-31 | 2008-05-06 | Opinionlab, Inc. | Receiving and reporting page-specific user feedback concerning one or more particular web pages of a website |
US7693901B2 (en) * | 2005-08-10 | 2010-04-06 | Microsoft Corporation | Consumer-focused results ordering |
EP1895459A1 (en) | 2006-08-31 | 2008-03-05 | Opinionlab, Inc. | Computer-implemented system and method for measuring and reporting business intelligence based on comments collected from web page users using software associated with accessed web pages |
US8977631B2 (en) | 2007-04-16 | 2015-03-10 | Ebay Inc. | Visualization of reputation ratings |
US8533208B2 (en) * | 2009-09-28 | 2013-09-10 | Ebay Inc. | System and method for topic extraction and opinion mining |
US9201955B1 (en) * | 2010-04-15 | 2015-12-01 | Google Inc. | Unambiguous noun identification |
CN102385579B (en) * | 2010-08-30 | 2018-06-15 | 深圳市世纪光速信息技术有限公司 | Internet information classification method and system |
US20140372248A1 (en) | 2011-04-04 | 2014-12-18 | Google Inc. | Cross-referencing comments |
WO2013024338A1 (en) | 2011-08-15 | 2013-02-21 | Equal Media Limited | System and method for managing opinion networks with interactive opinion flows |
US9916538B2 (en) * | 2012-09-15 | 2018-03-13 | Z Advanced Computing, Inc. | Method and system for feature detection |
US20130166565A1 (en) * | 2011-12-23 | 2013-06-27 | Kevin LEPSOE | Interest based social network system |
US9396490B1 (en) * | 2012-02-28 | 2016-07-19 | Bazaarvoice, Inc. | Brand response |
US10068174B2 (en) * | 2012-08-02 | 2018-09-04 | Artifical Solutions Iberia S.L. | Hybrid approach for developing, optimizing, and executing conversational interaction applications |
US9223831B2 (en) | 2013-01-02 | 2015-12-29 | Codeq Llc | System, method and computer program product for searching summaries of mobile apps reviews |
US20170011029A1 (en) * | 2013-05-09 | 2017-01-12 | Moodwire, Inc. | Hybrid human machine learning system and method |
EP2994846A4 (en) * | 2013-05-09 | 2017-01-25 | Moodwire, Inc. | Hybrid human machine learning system and method |
US20140365206A1 (en) * | 2013-06-06 | 2014-12-11 | Xerox Corporation | Method and system for idea spotting in idea-generating social media platforms |
US20150286710A1 (en) * | 2014-04-03 | 2015-10-08 | Adobe Systems Incorporated | Contextualized sentiment text analysis vocabulary generation |
CN105446727A (en) * | 2014-10-22 | 2016-03-30 | 武汉理工大学 | Ontology framework visualization method |
CN104317897A (en) * | 2014-10-24 | 2015-01-28 | 福州大学 | Visual label topic map-based pilot method of digital library |
US10354199B2 (en) * | 2015-12-07 | 2019-07-16 | Xerox Corporation | Transductive adaptation of classifiers without source data |
CA3011258A1 (en) * | 2016-01-20 | 2017-07-27 | Mezyad M. Al-Masoud | Systems and methods for managing a talent based exchange |
US10572524B2 (en) * | 2016-02-29 | 2020-02-25 | Microsoft Technology Licensing, Llc | Content categorization |
US9633007B1 (en) * | 2016-03-24 | 2017-04-25 | Xerox Corporation | Loose term-centric representation for term classification in aspect-based sentiment analysis |
US20170345079A1 (en) * | 2016-05-31 | 2017-11-30 | Accenture Global Solutions Limited | Network of smart appliances |
US20180075368A1 (en) * | 2016-09-12 | 2018-03-15 | International Business Machines Corporation | System and Method of Advising Human Verification of Often-Confused Class Predictions |
CN107818487B (en) * | 2016-09-12 | 2022-03-04 | 阿里巴巴集团控股有限公司 | Product information processing method, device, equipment and client |
US10679168B2 (en) * | 2016-11-14 | 2020-06-09 | Accenture Global Solutions Limited | Real-time method and system for assessing and improving a presence and perception of an entity |
CA2998249A1 (en) * | 2017-03-17 | 2018-09-17 | Edatanetworks Inc. | Artificial intelligence engine incenting merchant transaction with consumer affinity |
US20180308159A1 (en) * | 2017-04-24 | 2018-10-25 | Visinger LLC | Systems and methods relating to a marketplace seller future financial performance score index |
US11132541B2 (en) * | 2017-09-29 | 2021-09-28 | The Mitre Corporation | Systems and method for generating event timelines using human language technology |
CN107967260B (en) * | 2017-12-07 | 2021-09-14 | 东软集团股份有限公司 | Data processing method, device, system and computer readable medium |
US20190197433A1 (en) * | 2017-12-22 | 2019-06-27 | Wipro Limited | Methods for adaptive information extraction through adaptive learning of human annotators and devices thereof |
US10678851B2 (en) * | 2018-04-25 | 2020-06-09 | International Business Machines Corporation | Cognitive content display device |
CN112334904B (en) | 2018-05-18 | 2024-06-21 | 电子湾有限公司 | Processing transaction feedback |
-
2018
- 2018-05-18 CN CN201880093335.9A patent/CN112334904B/en active Active
- 2018-05-18 US US16/461,125 patent/US10990764B2/en active Active
- 2018-05-18 KR KR1020227037238A patent/KR20220149624A/en not_active Application Discontinuation
- 2018-05-18 KR KR1020207036229A patent/KR102460293B1/en active IP Right Grant
- 2018-05-18 WO PCT/CN2018/087485 patent/WO2019218343A1/en active Application Filing
-
2021
- 2021-03-09 US US17/195,888 patent/US11853703B2/en active Active
-
2023
- 2023-11-09 US US18/388,239 patent/US20240078388A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103493040A (en) | 2011-04-21 | 2014-01-01 | 索尼公司 | A method for determining a sentiment from a text |
CN104462132A (en) | 2013-09-23 | 2015-03-25 | 华为技术有限公司 | Comment information display method and device |
Also Published As
Publication number | Publication date |
---|---|
WO2019218343A1 (en) | 2019-11-21 |
US11853703B2 (en) | 2023-12-26 |
US20240078388A1 (en) | 2024-03-07 |
KR20220149624A (en) | 2022-11-08 |
KR20210006459A (en) | 2021-01-18 |
CN112334904A (en) | 2021-02-05 |
CN112334904B (en) | 2024-06-21 |
US10990764B2 (en) | 2021-04-27 |
US20210192145A1 (en) | 2021-06-24 |
US20210064824A1 (en) | 2021-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10866975B2 (en) | Dialog system for transitioning between state diagrams | |
CN110023982B (en) | System, method, storage device, and medium for selecting product title | |
KR102460293B1 (en) | Handling of transaction feedback | |
US11792733B2 (en) | Battery charge aware communications | |
US11379892B2 (en) | Utility-based price guidance | |
US20210264507A1 (en) | Interactive product review interface | |
KR102384626B1 (en) | Adopting data across different sites | |
US20170364967A1 (en) | Product feedback evaluation and sorting | |
CN110785755B (en) | Context identification for content generation | |
WO2020131775A1 (en) | Draft completion system | |
US20230066420A1 (en) | Listing conversion estimation and optimization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |