WO2021242073A1 - 전자 장치 및 이의 제어 방법 - Google Patents

전자 장치 및 이의 제어 방법 Download PDF

Info

Publication number
WO2021242073A1
WO2021242073A1 PCT/KR2021/095039 KR2021095039W WO2021242073A1 WO 2021242073 A1 WO2021242073 A1 WO 2021242073A1 KR 2021095039 W KR2021095039 W KR 2021095039W WO 2021242073 A1 WO2021242073 A1 WO 2021242073A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
topic
electronic device
importance
frequency
Prior art date
Application number
PCT/KR2021/095039
Other languages
English (en)
French (fr)
Inventor
러셀 제라시제임스
페나프란시스코
로울러에이온거스
스미스배리
트라고스일리아스
헐리닐
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020210041217A external-priority patent/KR20210148877A/ko
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US17/296,821 priority Critical patent/US20230259703A1/en
Publication of WO2021242073A1 publication Critical patent/WO2021242073A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions

Definitions

  • the present disclosure relates to an electronic device and a method for controlling the same, and more particularly, to provide an electronic device for providing item recommendation information to a user using an artificial intelligence system and a method for controlling the same.
  • the artificial intelligence system refers to a system that performs learning and inference based on a neural network model, unlike the existing rule-based system, and is used in various fields such as speech recognition, image recognition, and future prediction.
  • an artificial intelligence system for solving a given problem through a deep neural network based on deep learning has been developed.
  • an artificial intelligence system for recommending a specific item to a user based on numerical ratings or implicit interaction given by a user for various types of items has been developed and utilized.
  • the present disclosure has been made to solve the above-described problems, and an object of the present disclosure is to provide an electronic device that provides item recommendation information to a user based on review text data for an item, and a method for controlling the same.
  • the electronic device acquires importance data indicating importance for each of a plurality of words included in the text data using a memory and text data related to a plurality of items written by a plurality of users, and uses the obtained importance data to model a topic modeling) algorithm to obtain a topic model representing a relationship between a topic and a word, and based on the obtained topic model, preference data and A recommendation model is obtained to obtain relationship data indicating a relationship between an item of and the topic, and to output result data including predicted preferences of the plurality of users for the plurality of items based on the preference data and the relationship data. It may include a processor that makes
  • a method of controlling an electronic device includes a plurality of text data included in the text data using text data related to a plurality of items created by a plurality of users. obtaining importance data indicating the importance of each word, applying a topic modeling algorithm to the obtained importance data to obtain a topic model indicating a relationship between topics and words, based on the obtained topic model, obtaining preference data indicating a preference of each of the plurality of users and relation data indicating a relationship between the plurality of items and the topic; and the plurality of items of the plurality of users based on the preference data and the relationship data It may include training the recommendation model to output the result data including the predicted preference for .
  • FIG. 1 is a block diagram schematically illustrating a configuration of an electronic device according to an embodiment of the present disclosure
  • FIG. 2 is a flowchart for explaining a method of controlling an electronic device according to an embodiment of the present disclosure
  • FIG. 3 is a view for explaining a process in which an electronic device acquires a topic model according to an embodiment of the present disclosure
  • FIG. 4 is a view for explaining a process in which an electronic device acquires preference data according to an embodiment of the present disclosure
  • FIG. 5 is a diagram for describing a process in which an electronic device acquires relationship data, according to an embodiment of the present disclosure.
  • ordinal number such as “first” and “second” may be used to distinguish between elements. This ordinal number is used to distinguish the same or similar elements from each other, and the meaning of the term should not be construed as limited due to the use of the ordinal number. As an example, the use order or arrangement order of components combined with such an ordinal number should not be limited by the number. If necessary, each ordinal number may be used interchangeably.
  • the expression “a device configured to” may mean that the device is “capable of” with other devices or parts.
  • a coprocessor configured (or configured to perform) A, B, and C may refer to a dedicated processor (eg, an embedded processor), or one or more software programs stored on a memory device, to perform the corresponding operations. By doing so, it may refer to a generic-purpose processor (eg, a CPU or an application processor) capable of performing corresponding operations.
  • modules are terms for designating a component that performs at least one function or operation, and such component is hardware or software. It may be implemented or implemented as a combination of hardware and software.
  • a plurality of "modules”, “units”, “parts”, etc. are integrated into at least one module or chip, except when each needs to be implemented in individual specific hardware, and thus at least one processor. can be implemented as
  • a component eg, a first component is "coupled with/to (operatively or communicatively)" to another component (eg, a second component)
  • another component eg, a second component
  • the certain element may be directly connected to the other element or may be connected through another element (eg, a third element).
  • a component eg, a first component
  • another component eg, a second component
  • the term user may refer to a person who uses an electronic device or a device (eg, an artificial intelligence electronic device) using the electronic device.
  • a device eg, an artificial intelligence electronic device
  • the electronic device 100 may include a memory 110 , a communication unit 120 , a processor 130 , a display 140 , and an input unit 150 .
  • FIG. 1 is for implementing the embodiments of the present disclosure, and appropriate hardware and software configurations that are obvious to those skilled in the art may be additionally included in the electronic device 100 .
  • the electronic device 100 may include, for example, at least one of a smart phone, a tablet PC, a desktop PC, a laptop PC, a netbook computer, a workstation, a medical device, a camera, and a wearable device.
  • the present invention is not limited thereto, and the electronic device 100 may be implemented as various types of devices such as a display device, a refrigerator, an air conditioner, and a vacuum cleaner.
  • the memory 110 may store data related to at least one other component of the electronic device 100 or at least one instruction.
  • the command means one action statement that can be directly executed by the processor 130 in a programming language, and is a minimum unit for program execution or operation.
  • the memory 110 is accessed by the processor 130 , and reading/writing/modification/deletion/update of data by the processor 130 may be performed.
  • the term memory may be implemented as a memory 110 , a ROM (not shown), a RAM (not shown) in the processor 130 , or a memory separate from the processor 130 .
  • the memory 110 may be implemented in the form of a memory embedded in the electronic device 100 or may be implemented in the form of a memory detachable from the electronic device 100 depending on the purpose of data storage. For example, data for driving the electronic device 100 is stored in a memory embedded in the electronic device 100 , and data for an extension function of the electronic device 100 is detachable from the electronic device 100 . It can be stored in any available memory.
  • the recommendation model (or matrix factorization model) refers to an artificial intelligence model trained to output a user's predicted preference for each of a plurality of items.
  • the recommendation model may output a user's expected preference for a specific item by using a previously learned matrix decomposition algorithm.
  • the predicted preference may mean a preference value predicted to be given to the item by the user based on at least one of a user-related feature or an item-related feature.
  • the matrix decomposition algorithm decomposes a sparse matrix including a part of the user's preference for each of a plurality of items into a first latent factor and a second latent factor, and the decomposed first latent factor and the second latent factor It refers to an algorithm that trains the operation result value to be the same as the matrix including the actual user's preference.
  • the memory 110 may store result data including predicted preferences for a plurality of items of a plurality of users output through the recommendation model.
  • the communication unit 120 may communicate with an external device.
  • the communication connection of the communication unit 120 with an external device may include communicating through a third device (eg, a repeater, a hub, an access point, a server, or a gateway).
  • a third device eg, a repeater, a hub, an access point, a server, or a gateway.
  • the communication unit 120 may include various communication modules to communicate with an external device.
  • the communication unit 120 may include a wireless communication module, for example, LTE, LTE Advance (LTE-A), CDMA (code division multiple access), WCDMA (wideband CDMA), UMTS (universal mobile telecommunications) system), a cellular communication module using at least one of Wireless Broadband (WiBro), Global System for Mobile Communications (GSM), and 5th generation (5G).
  • LTE Long Term Evolution
  • LTE-A LTE Advance
  • CDMA code division multiple access
  • WCDMA wideband CDMA
  • UMTS universal mobile telecommunications
  • WiBro Wireless Broadband
  • GSM Global System for Mobile Communications
  • 5G 5th generation
  • the wireless communication module may include, for example, at least one of wireless fidelity (WiFi), Bluetooth, Bluetooth low energy (BLE), and Zigbee.
  • WiFi wireless fidelity
  • BLE Bluetooth low energy
  • Zigbee Zigbee
  • the communication unit 120 may receive a preference value (eg, an evaluation score, etc.) for an item input by a user from an external device.
  • a preference value e.g. an evaluation score, etc.
  • the communication unit 120 may receive text data (eg, review text data for the item, etc.) related to the item written by the user.
  • the processor 130 may be electrically connected to the memory 110 to control overall operations and functions of the electronic device 100 .
  • one or more processors are general-purpose processors such as CPU (Central Processing Unit), AP (Application Processor), DSP (Digital Signal Processor), etc., and dedicated graphics such as GPU (Graphic Processing Unit) and VPU (Vision Processing Unit). It can be a processor or a processor dedicated to artificial intelligence, such as a Neural Processing Unit (NPU).
  • NPU Neural Processing Unit
  • the AI-only processor may be designed with a hardware structure specialized for processing a specific AI model.
  • the processor 130 may be implemented as a system on chip (SoC), large scale integration (LSI), or a field programmable gate array (FPGA) having a built-in processing algorithm.
  • SoC system on chip
  • LSI large scale integration
  • FPGA field programmable gate array
  • the processor 130 may perform various functions by executing computer executable instructions stored in a memory.
  • the processor 130 may receive, from at least one external device, text data related to an item (or review text data for a plurality of items) or an evaluation score by the user through the communication unit 120 .
  • the processor 130 may use text data related to a plurality of items written by a plurality of users to obtain importance data indicating importance for a plurality of words included in the text data.
  • the processor 130 may identify a word that is a noun included in text data related to a plurality of items. That is, the processor 130 may identify only a word whose part-of-speech is a noun among a plurality of words included in the text data.
  • the processor 130 may generate a Bag of Words (BOW) including words that are identified nouns.
  • BOW Bag of Words
  • the word bag refers to a word expression model that considers only the frequency of occurrence of words without considering the arrangement order.
  • the processor 130 may acquire importance data based on the generated word bag.
  • the processor 130 may acquire importance data by applying a Term Frequency - Inverse Document Frequency (TF-IDF) algorithm to the generated word bag.
  • TF-IDF Term Frequency - Inverse Document Frequency
  • the TF-IDF algorithm refers to a statistical algorithm that identifies how important a specific word is in text data. That is, the importance data may indicate the importance of each word included in the text data, and may be expressed as a term-frequency matrix.
  • the importance data may be expressed as in Equation 1 below.
  • Equation 1 w denotes the number of words (or terms), and R denotes the number of text data.
  • the processor 130 may obtain a topic model representing a relationship between a topic and a word by applying a topic modeling algorithm to the obtained importance data.
  • the topic modeling algorithm refers to a statistical algorithm for discovering an abstract topic (or topic) included in text data.
  • the processor 130 may obtain a topic model by applying a latent dirichlet allocation (LDA) algorithm among topic modeling algorithms to importance data.
  • LDA latent dirichlet allocation
  • the present invention is not limited thereto, and the processor 130 may obtain a topic model by applying various types of topic modeling algorithms to the importance data.
  • the topic model is data that can represent the relationship between words and topics, and may be implemented as a matrix or the like.
  • the topic model may be expressed as Equation 2 below.
  • Equation 2 w denotes the number of words (or terms), and k denotes the number of topics.
  • the processor 130 may obtain, based on the obtained topic model, preference data representing each of a plurality of users' preferences for a topic and relationship data representing a relationship between a plurality of items and topics.
  • the processor 130 may group a plurality of text data for each user. Specifically, the processor 130 may group text data written by the first user among the plurality of text data into one document, and group text data written by the second user into one document. That is, the processor 130 may group text data written for each user into one document.
  • the processor 130 may obtain first frequency data indicating the frequency of words used by each of the plurality of users by using the grouped text data.
  • the first frequency data may include information on the frequency with which the user uses a specific word.
  • the processor 130 may obtain the first frequency data by applying the TF-IDF algorithm to the grouped text data.
  • the first frequency data may be expressed as in Equation 3 below.
  • Equation 3 w denotes the number of words (or terms), and U denotes the number of users.
  • the processor 130 may obtain preference data by performing an operation between the first frequency data and the topic model.
  • the operation between the first frequency data and the topic model may be expressed as Equation 4 below.
  • A denotes preference data
  • Tu and H denote first frequency data and topic model, respectively.
  • the processor 130 may group a plurality of text data for each item item. Specifically, the processor 130 may group text data for a first item among a plurality of text data into one document and group text data for a second item into one document. That is, the processor 130 may group text data into one document for each item item.
  • the processor 130 may obtain second frequency data corresponding to the item by using the frequency of words included in the grouped text data.
  • the second frequency data corresponding to the item may include data related to the frequency of use of a specific word in text related to the specific item.
  • the processor 130 may obtain second frequency data corresponding to the item by applying the TF-IDF algorithm to the grouped text data.
  • the second frequency data may be expressed as in Equation 5 below.
  • Equation 5 w denotes the number of words (or terms), and I denotes the number of items.
  • the processor 130 may obtain relationship data by performing an operation between the second frequency data and the topic model.
  • An operation between the second frequency data and the topic model may be expressed as in Equation 6 below.
  • Equation 6 B denotes relational data
  • T 1 and H denote second frequency data and topic model, respectively.
  • the processor 130 may train a recommendation model to output result data including predicted preferences for a plurality of items of a plurality of users based on the preference data and the relationship data.
  • the processor 130 may set the numerical value included in the preference data as an initial value of the first latent factor included in the recommendation model.
  • the processor 130 may set a numerical value included in the preference data as an initial value of the second latent factor. Accordingly, the dimension of each potential argument may mean a topic.
  • the processor 130 may train the recommendation model to minimize a difference between an operation value between the initial value of the first latent factor and the initial value of the second latent factor and a predefined learning value.
  • the predefined learning value may include a preference value given to each item by an actual user.
  • the learned recommendation model may perform an operation between the first latent factor and the second latent factor to output result data including the user's expected preference for the item.
  • the recommendation model may be trained to perform all or part of operations performed by the processor 130 .
  • the recommendation model may be trained to identify a word whose part-of-speech is a noun among text data in order to obtain importance data.
  • the initial values of the first latent factor and the second latent factor are set at random.
  • Each of the initial values of the first latent factor and the second latent factor of the present disclosure is set as preference data representing a preference of each of a plurality of users for a topic and relationship data representing a relationship between a plurality of items and topics, thereby indicating the user's expected preference. accuracy can be increased.
  • the function related to artificial intelligence according to the present disclosure is operated through the processor 130 and the memory 110 .
  • One or more processors 130 control to process input data according to a predefined operation rule or artificial intelligence model stored in the memory 110 .
  • a predefined action rule or artificial intelligence model is characterized in that it is created through learning.
  • being made through learning means that a basic artificial intelligence model is learned using a plurality of learning data by a learning algorithm, so that a predefined action rule or artificial intelligence model set to perform a desired characteristic (or purpose) is created means burden.
  • Such learning may be performed in the device itself on which artificial intelligence according to the present disclosure is performed, or may be performed through a separate server and/or system.
  • Examples of the learning algorithm include, but are not limited to, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning.
  • the artificial intelligence model includes a plurality of artificial neural networks, and the artificial neural network may be composed of a plurality of layers.
  • Each of the plurality of neural network layers has a plurality of weight values, and a neural network operation is performed through an operation between the operation result of a previous layer and the plurality of weights.
  • the plurality of weights of the plurality of neural network layers may be optimized by the learning result of the artificial intelligence model. For example, a plurality of weights may be updated so that a loss value or a cost value obtained from the artificial intelligence model during the learning process is reduced or minimized.
  • the artificial neural network may include a deep neural network (DNN), for example, a Convolutional Neural Network (CNN), a Deep Neural Network (DNN), a Recurrent Neural Network (RNN), a Restricted Boltzmann Machine (RBM), There may be a Deep Belief Network (DBN), a Bidirectional Recurrent Deep Neural Network (BRDNN), or a Deep Q-Networks, but is not limited thereto.
  • DNN Deep Neural Network
  • DNN Deep Belief Network
  • BBDNN Bidirectional Recurrent Deep Neural Network
  • Deep Q-Networks Deep Q-Networks
  • the display 140 may display various information under the control of the processor 130 .
  • the display 140 may display result data output by the recommendation model.
  • the display 140 may display a preference value given to a specific item by a first user among a plurality of users.
  • the display 140 may be implemented as a touch screen together with a touch panel, or may be implemented as a flexible display.
  • the input unit 150 may receive a user input for controlling the electronic device 100 .
  • the input unit 150 may include a touch panel for receiving a user touch input using a user's hand or a stylus pen, a button for receiving a user manipulation, and the like.
  • the input unit 150 may be implemented as another input device (eg, a keyboard, a mouse, a motion input unit, etc.).
  • FIG. 2 is a flowchart illustrating a method of controlling the electronic device 100 according to an embodiment of the present disclosure.
  • the electronic device 100 may use text data related to a plurality of items written by a plurality of users to obtain importance data indicating the importance of each word included in the text data ( S210 ). .
  • the electronic device 100 may identify a word that is a noun among a plurality of words included in a plurality of text data, and may generate a word bag including the identified word. Then, the electronic device 100 may acquire importance data by applying the TF-IDF algorithm to the generated word bag.
  • the importance data may be implemented in a matrix format, but is not limited thereto and may be implemented in various data formats.
  • the electronic device 100 may obtain a topic model representing a relationship between a topic and a word by applying a topic modeling algorithm to the acquired importance data ( S220 ).
  • the electronic device 100 may acquire preference data representing each of a plurality of users' preferences for a topic and relationship data representing a relationship between a plurality of items and topics ( S230 ).
  • the electronic device 100 may group a plurality of text data for each user. That is, the electronic device 100 may group a plurality of text data into a single document for each user.
  • the electronic device 100 may obtain first frequency data indicating the frequency of words used by each of a plurality of users by using the grouped text data.
  • the electronic device 100 may obtain preference data by performing an operation between the first frequency data and the topic model.
  • the electronic device 100 may group a plurality of text data for each item item, and obtain second frequency data corresponding to the item by using the frequency of words included in the grouped text data. Specifically, the electronic device 100 may obtain the second frequency data corresponding to the item by applying the TF-IDF algorithm to the grouped text data. In addition, the electronic device 100 may obtain relationship data by performing an operation between the second frequency data and the topic model.
  • the electronic device 100 may train a recommendation model to output result data including predicted preferences for a plurality of items of a plurality of users based on the preference data and the relationship data (S240).
  • the electronic device 100 may set a numerical value included in the preference data as an initial value of the first latent factor.
  • the electronic device 100 may set a numerical value included in the relationship data as an initial value of the second latent factor. Since the initial value of each latent argument is set to a value included in the preference data and the relationship data, the dimension of the latent argument may mean a topic.
  • the electronic device 100 may train the recommendation model to minimize the difference between the operation value between the initial value of the first latent factor and the initial value of the second latent factor and the predefined learning value.
  • the predefined learning value may include a preference value given to each item by an actual user.
  • 3 to 5 are diagrams for explaining a process in which the electronic device 100 trains a recommendation model, according to various embodiments of the present disclosure.
  • the electronic device 100 uses text data (or review data) 10 related to a plurality of items written by a plurality of users to indicate importance for each of a plurality of words included in the text data.
  • Data 20 may be obtained.
  • the electronic device 100 may identify a word whose part-of-speech is a noun among a plurality of words included in the text data 10 . Then, the electronic device 100 may obtain the importance data 20 by generating a word bag including the identified word and applying the TF-IDF algorithm to the generated word bag. As shown in FIG. 3 , the importance data 20 may be implemented in a matrix form, and a row of the importance data 20 may mean each review data, and a column may mean a word.
  • the electronic device 100 may obtain the topic model 30 by applying the topic modeling algorithm to the importance data 20 .
  • the topic model 30 may represent a relationship between words and topics.
  • the electronic device 100 may obtain preference data 60 and relationship data 90 (refer to FIG. 5 ) based on the topic model 30 .
  • the electronic device 100 groups a plurality of text data for each user, and uses the grouped text data 40 to obtain first frequency data 50 indicating the frequency of words used by each of the plurality of users.
  • the electronic device 100 may obtain preference data (or user-topic matrix) 60 by performing an operation between the first frequency data 50 and the topic model 30 .
  • the electronic device 100 groups a plurality of text data for each item item, and obtains second frequency data 80 corresponding to the item by using the grouped text data 70 .
  • the electronic device 100 may obtain relation data (or item-topic matrix) 90 by performing an operation between the second frequency data 80 and the topic model 30 .
  • various embodiments of the present disclosure may be implemented as software including instructions stored in a machine-readable storage medium readable by a machine (eg, a computer).
  • a device that calls an instruction and can operate according to the called instruction and may include the server cloud according to the disclosed embodiments.
  • the processor directly or other configuration under the control of the processor A function corresponding to the command may be performed using the elements.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • the 'non-transitory storage medium' does not include a signal and only means that it is tangible and does not distinguish that data is semi-permanently or temporarily stored in the storage medium.
  • the 'non-transitory storage medium' may include a buffer in which data is temporarily stored.
  • the method according to various embodiments disclosed in the present disclosure may be included and provided in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • the computer program product may be distributed in the form of a machine-readable storage medium (eg, compact disc read only memory (CD-ROM)) or online through an application store (eg, Play StoreTM).
  • an application store eg, Play StoreTM
  • at least a portion of a computer program product eg, a downloadable app
  • a storage medium such as a memory of a server of a manufacturer, a server of an application store, or a relay server, or is temporarily stored can be created with
  • Each of the components may be composed of a singular or a plurality of entities, and some sub-components of the aforementioned sub-components may be omitted, or other sub-components may be various. It may be further included in the embodiment.
  • some components eg, a module or a program
  • operations performed by a module, program, or other component may be sequentially, parallel, repetitively or heuristically executed, or at least some operations may be executed in a different order, omitted, or other operations may be added.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Business, Economics & Management (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Software Systems (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Economics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Game Theory and Decision Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

전자 장치 및 이의 제어 방법이 제공된다. 본 개시의 전자 장치는 메모리 및 복수의 사용자에 의해 작성된 복수의 아이템과 관련된 텍스트 데이터를 이용하여 텍스트 데이터에 포함된 복수의 단어 별 중요도를 나타내는 중요도 데이터를 획득하고, 획득된 중요도 데이터에 토픽 모델링 알고리즘을 적용하여 토픽 및 단어 간의 관계를 나타내는 토픽 모델을 획득하고, 획득된 토픽 모델에 기초하여, 토픽에 대한 복수의 사용자 각각의 선호도를 나타내는 선호도 데이터 및 복수의 아이템과 토픽 간의 관계를 나타내는 관계 데이터를 획득하고, 선호도 데이터 및 관계 데이터에 기초하여 복수의 사용자의 복수의 아이템에 대한 예상 선호도가 포함된 결과 데이터를 출력하도록 추천 모델을 학습시키는 프로세서를 포함할 수 있다.

Description

전자 장치 및 이의 제어 방법
본 개시는 전자 장치 및 이의 제어 방법에 관한 것으로서, 더욱 상세하게는 본 개시는 인공지능 시스템을 이용하여 사용자에게 아이템 추천 정보를 제공하는 전자 장치 및 이의 제어 방법을 제공함에 있다.
최근에는 인공 지능 시스템 기반으로 음성의 음질을 향상시키는 알고리즘이 개발되고 있다. 인공 지능 시스템이란 기존의 룰(rule) 기반 시스템과 달리 신경망 모델에 기반하여 학습 및 추론을 수행하는 시스템을 의미하며, 음성 인식, 이미지 인식 및 미래 예측 등과 같은 다양한 범위에서 활용되고 있다.
특히, 최근에는 딥 러닝(deep learning)에 기반한 딥 뉴럴 네트워크(deep neural network)를 통해 주어진 문제를 해결하는 인공 지능 시스템이 개발되고 있다. 예를 들어, 다양한 유형의 아이템에 대해 사용자가 부여한 평가 점수(numerical ratings) 또는 암시적인 상호 작용(implicit interaction)에 기초하여 사용자에게 특정 아이템을 추천하는 인공 지능 시스템이 개발 및 활용되고 있다.
다만, 다양한 유형의 아이템에 부여된 평가 점수 및 암시적인 상호 작용 모두를 이용하여 인공 지능 시스템을 학습시키기 위해서는 많은 양의 학습 데이터 및 학습 시간이 소요되며, 학습을 위한 복잡도 역시 기하 급수적으로 증가된다는 한계가 존재하였다.
상술한 내용은 본 개시의 이해를 돕기 위한 배경으로만 제공된다. 상술한 내용 중 어떠한 것이 본 개시와 관련되어 선행 기술로 적용되는지 여부에 대해서는 결정되지 않았다.
본 개시는 상술된 문제점을 해결하기 위해 안출된 것으로서, 본 개시의 목적은 아이템에 대한 리뷰 텍스트 데이터에 기초하여 사용자에게 아이템 추천 정보를 제공하는 전자 장치 및 이의 제어 방법을 제공함에 있다.
본 개시의 추가적인 부분에 대해서는 하기에서 부분적으로 설명될 것이며 하기에 기재된 실시 예들에 의해 설명될 수 있다.
본 개시의 일 측면에 따른 전자 장치가 제공된다. 전자 장치는 메모리 및 복수의 사용자에 의해 작성된 복수의 아이템과 관련된 텍스트 데이터를 이용하여 상기 텍스트 데이터에 포함된 복수의 단어 별 중요도를 나타내는 중요도 데이터를 획득하고, 상기 획득된 중요도 데이터에 토픽 모델링(topic modelling) 알고리즘을 적용하여 토픽 및 단어 간의 관계를 나타내는 토픽 모델(topic model)을 획득하고, 상기 획득된 토픽 모델에 기초하여, 상기 토픽에 대한 상기 복수의 사용자 각각의 선호도를 나타내는 선호도 데이터 및 상기 복수의 아이템과 상기 토픽 간의 관계를 나타내는 관계 데이터를 획득하고, 상기 선호도 데이터 및 상기 관계 데이터에 기초하여 상기 복수의 사용자의 상기 복수의 아이템에 대한 예상 선호도가 포함된 결과 데이터를 출력하도록 추천 모델을 학습시키는 프로세서를 포함할 수 있다.
본 개시의 또 다른 실시예에 따라 전자 장치의 제어 방법이 개시된다., 전자 장치의 제어 방법은, 복수의 사용자에 의해 작성된 복수의 아이템과 관련된 텍스트 데이터를 이용하여 상기 텍스트 데이터에 포함된 복수의 단어 별 중요도를 나타내는 중요도 데이터를 획득하는 단계, 상기 획득된 중요도 데이터에 토픽 모델링 알고리즘을 적용하여 토픽 및 단어 간의 관계를 나타내는 토픽 모델을 획득하는 단계, 상기 획득된 토픽 모델에 기초하여, 상기 토픽에 대한 상기 복수의 사용자 각각의 선호도를 나타내는 선호도 데이터 및 상기 복수의 아이템과 상기 토픽 간의 관계를 나타내는 관계 데이터를 획득하는 단계 및 상기 선호도 데이터 및 상기 관계 데이터에 기초하여 상기 복수의 사용자의 상기 복수의 아이템에 대한 예상 선호도가 포함된 결과 데이터를 출력하도록 추천 모델을 학습시키는 단계를 포함할 수 있다.
본 개시의 다른 측면, 효과 및 두드러진 특징은 첨부된 도면과 함께 본 개시의 다양한 실시 예를 개시하는 다음의 상세한 설명으로부터 당업자에게 명백해질 것이다.
본 개시의 특정 실시 예의 다른 측면, 효과 및 두드러진 특징은 첨부 도면과 함께 후술할 설명으로부터 더 명백해질 것이다.
도 1은 본 개시의 일 실시예에 따른, 전자 장치의 구성을 간략히 도시한 블록도,
도 2는 본 개시의 일 실시예에 따른, 전자 장치의 제어 방법을 설명하기 위한 순서도,
도 3은 본 개시의 일 실시예에 따른, 전자 장치가 토픽 모델을 획득하는 과정을 설명하기 위한 도면,
도 4는 본 개시의 일 실시예에 따른, 전자 장치가 선호도 데이터를 획득하는 과정을 설명하기 위한 도면,
도 5는 본 개시의 일 실시예에 따른, 전자 장치가 관계 데이터를 획득하는 과정을 설명하기 위한 도면이다.
상술한 도면들에서 동일하거나 유사한 요소, 특징 및 구조를 묘사하기 위해 유사한 도면 부호가 사용되는 점을 유의해야한다.
첨부 된 도면을 참조하여 다음의 설명은 청구 범위 및 그 균등 물에 의해 정의 된 본 개시의 다양한 실시 예의 포괄적 인 이해를 돕기 위해 제공된다. 그 이해를 돕기 위해 다양한 특정 세부 사항을 포함하지만 이는 단지 예시적인 것으로 간주되어야 한다. 따라서, 당업자는 본 개시에 설명 된 다양한 실시 예의 다양한 변경 및 수정이 본 개시의 범위 및 사상을 벗어나지 않고 이루어질 수 있음을 인식 할 것이다. 또한, 잘 알려진 기능 및 구성에 대한 설명은 명확성과 간결성을 위해 생략 될 수 있다.
이하의 설명 및 청구 범위에서 사용되는 용어 및 단어는 서지적 의미에 국한되지 않고, 본 개시 내용의 명확하고 일관된 이해를 가능하게하기 위해 발명자에 의해 사용될 뿐이다. 따라서, 본 개시의 다양한 실시 예에 대한 다음의 설명은 첨부 된 청구 범위 및 그 균등 물에 의해 정의 된 개시를 제한 할 목적이 아니라 단지 예시 목적으로 제공된다는 것이 당업자에게 명백해야한다.
단수 형태 "a", "an"및 "the"는 문맥 상 명백하게 달리 지시하지 않는 한 복수의 지시 대상을 포함하는 것으로 이해되어야한다. 따라서, 예를 들어, "a component surface"에 대한 언급은 이러한 표면 중 하나 이상에 대한 참조를 포함할 수 있다.
또한, 본 명세서에 첨부된 각 도면에 기재된 동일한 참조번호 또는 부호는 실질적으로 동일한 기능을 수행하는 부품 또는 구성요소를 나타낸다. 설명 및 이해의 편의를 위해서 서로 다른 실시 예들에서도 동일한 참조번호 또는 부호를 사용하여 설명한다. 즉, 복수의 도면에서 동일한 참조 번호를 가지는 구성요소를 모두 도시되어 있다고 하더라도, 복수의 도면들이 하나의 실시 예를 의미하는 것은 아니다.
도면에서의 다양한 요소와 영역은 개략적으로 그려진 것이다. 따라서, 본 발명의 기술적 사상은 첨부한 도면에 그려진 상대적인 크기나 간격에 의해 제한되지 않는다.
또한, 본 명세서 및 청구범위에서는 구성요소들 간의 구별을 위하여 "제1", "제2" 등과 같이 서수를 포함하는 용어가 사용될 수 있다. 이러한 서수는 동일 또는 유사한 구성요소들을 서로 구별하기 위하여 사용하는 것이며 이러한 서수 사용으로 인하여 용어의 의미가 한정 해석되어서는 안 된다. 일 예로, 이러한 서수와 결합된 구성요소는 그 숫자에 의해 사용 순서나 배치 순서 등이 제한되어서는 안 된다. 필요에 따라서는, 각 서수들은 서로 교체되어 사용될 수도 있다.
본 명세서에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다.
대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 부프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 개시의 실시 예에서 "모듈", "유닛", "부(part)" 등과 같은 용어는 적어도 하나의 기능이나 동작을 수행하는 구성요소를 지칭하기 위한 용어이며, 이러한 구성요소는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈", "유닛", "부(part)" 등은 각각이 개별적인 특정한 하드웨어로 구현될 필요가 있는 경우를 제외하고는, 적어도 하나의 모듈이나 칩으로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 개시를 설명함에 있어서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
이하에서는 도면을 참조하여 본 개시에 대해 구체적으로 설명하도록 한다.
도 1은 본 개시의 일 실시예에 따른, 전자 장치의 구성을 간략히 도시한 블록도이다. 도 1을 참조하면, 전자 장치(100)는 메모리(110), 통신부(120), 프로세서(130), 디스플레이(140) 및 입력부(150)가 포함될 수 있다.
다만, 도 1에 도시된 구성은 본 개시의 실시 예들을 구현하기 위한 것이며, 통상의 기술자에게 자명한 수준의 적절한 하드웨어 및 소프트웨어 구성들이 전자 장치(100)에 추가로 포함될 수 있다.
그리고, 전자 장치(100)는, 예를 들면, 스마트폰, 태블릿 PC, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 워크스테이션, 의료기기, 카메라, 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 다만, 이에 국한되는 것은 아니며, 전자 장치(100)는 디스플레이 장치, 냉장고, 에어컨, 청소기 등 다양한 유형의 장치로 구현될 수 있음은 물론이다.
메모리(110)는 전자 장치(100)의 적어도 하나의 다른 구성요소에 관계된 데이터 또는 적어도 하나의 명령어(instruction)를 저장할 수 있다. 명령어는 프로그래밍 작성 언어에서 프로세서(130)가 직접 실행할 수 있는 하나의 동작 문장(action statement)를 의미하며, 프로그램의 실행 또는 동작에 대한 최소 단위이다. 메모리(110)는 프로세서(130)에 의해 액세스되며, 프로세서(130)에 의한 데이터의 독취/기록/수정/삭제/갱신 등이 수행될 수 있다.
본 개시에서 메모리라는 용어는 메모리(110), 프로세서(130) 내 롬(미도시), 램(미도시)으로 구현되거나 프로세서(130)와 별도의 메모리로 구현될 수 있다. 이 경우, 메모리(110)는 데이터 저장 용도에 따라 전자 장치(100)에 임베디드된 메모리 형태로 구현되거나, 전자 장치(100)에 탈부착이 가능한 메모리 형태로 구현될 수도 있다. 예를 들어, 전자 장치(100)의 구동을 위한 데이터의 경우 전자 장치(100)에 임베디드된 메모리에 저장되고, 전자 장치(100)의 확장 기능을 위한 데이터의 경우 전자 장치(100)에 탈부착이 가능한 메모리에 저장될 수 있다.
메모리(110)에는 추천 모델이 각종 동작을 수행하기 위해 필요한 데이터가 저장될 수 있다. 추천 모델(또는, 행렬 분해(Matrix Factorization) 모델)은 사용자의 복수의 아이템 각각에 대한 예상 선호도를 출력하도록 학습된 인공 지능 모델을 의미한다.
추천 모델은 기 학습된 행렬 분해 알고리즘을 이용하여 사용자의 특정 아이템에 대한 예상 선호도를 출력할 수 있다. 예상 선호도는 사용자와 관련된 특징 또는 아이템과 관련된 특징 중 적어도 하나에 기초하여 사용자가 아이템에 부여할 것으로 예측되는 선호도 값을 의미할 수 있다.
한편, 행렬 분해 알고리즘은 사용자의 복수의 아이템 각각에 대한 선호도가 일부 포함된 희소 행렬(sparse matrix)을 제1 잠재 인수 및 제2 잠재 인수로 분해하고, 분해된 제1 잠재 인수 및 제2 잠재 인수 간의 연산 결과 값이 실제 사용자의 선호도가 포함된 행렬과 같아지도록 학습시키는 알고리즘을 의미한다.
메모리(110)는 추천 모델을 통해 출력된 복수의 사용자의 복수의 아이템에 대한 예상 선호도가 포함된 결과 데이터를 저장할 수 있다.
통신부(120)는 외부 장치와 통신을 수행할 수 있다. 통신부(120)가 외부 장치와 통신 연결되는 것은 제3 기기(예로, 중계기, 허브, 엑세스 포인트, 서버 또는 게이트웨이 등)를 거쳐서 통신하는 것을 포함할 수 있다.
통신부(120)는 외부 장치와 통신을 수행하기 위해 다양한 통신 모듈을 포함할 수 있다. 일 예로, 통신부(120)는 무선 통신 모듈을 포함할 수 있으며, 예를 들면, LTE, LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications), 5G(5th generation) 등 중 적어도 하나를 사용하는 셀룰러 통신 모듈을 포함할 수 있다.
또 다른 예로, 무선 통신 모듈은, 예를 들면, WiFi(wireless fidelity), 블루투스, 블루투스 저전력(BLE) 및 지그비(Zigbee) 중 적어도 하나를 포함할 수 있다.
통신부(120)는 사용자가 입력한 아이템에 대한 선호도 값(예로, 평가 점수 등)을 외부 장치로부터 수신할 수 있다. 또 다른 예로, 통신부(120)는 사용자가 작성한 아이템과 관련된 텍스트 데이터(예를 들어, 아이템에 대한 리뷰 텍스트 데이터 등)를 수신할 수 있다.
프로세서(130)는 메모리(110)와 전기적으로 연결되어 전자 장치(100)의 전반적인 동작 및 기능을 제어할 수 있다. 이 때, 하나 또는 복수의 프로세서는 CPU(Central Processing Unit), AP(Application Processor), DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU(Graphic Processing Unit), VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU(Neural Processing Unit)와 같은 인공지능 전용 프로세서일 수 있다. 하나 또는 복수의 프로세서가 인공지능 전용 프로세서인 경우, 인공지능 전용 프로세서는, 특정 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.
또한, 프로세서(130)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, FPGA(Field Programmable gate array) 형태로 구현될 수도 있다. 또한, 프로세서(130)는 메모리에 저장된 컴퓨터 실행가능 명령어(computer executable instructions)를 실행함으로써 다양한 기능을 수행할 수 있다.
프로세서(130)는 적어도 하나의 외부 장치로부터 사용자가 아이템과 관련된 텍스트 데이터(또는, 복수의 아이템에 대한 리뷰 텍스트 데이터) 또는 평가 점수를 통신부(120)를 통해 수신할 수 있다.
프로세서(130)는 복수의 사용자에 의해 작성된 복수의 아이템과 관련된 텍스트 데이터를 이용하여 텍스트 데이터에 포함된 복수의 단어 별 중요도를 나타내는 중요도 데이터를 획득할 수 있다.
구체적으로, 프로세서(130)는 복수의 아이템과 관련된 텍스트 데이터에 포함된 명사(noun)인 단어를 식별할 수 있다. 즉, 프로세서(130)는 텍스트 데이터에 포함된 복수의 단어 중 품사가 명사인 단어만을 식별할 수 있다.
프로세서(130)는 식별된 명사인 단어가 포함된 단어 가방(Bag of Words, BOW)을 생성할 수 있다. 단어 가방은 배열 순서를 고려하지 않고 단어의 출현 빈도만을 고려하는 단어 표현 모델을 의미한다.
프로세서(130)는 생성된 단어 가방에 기초하여 중요도 데이터를 획득할 수 있다. 예를 들어, 프로세서(130)는 생성된 단어 가방에 TF-IDF(Term Frequency - Inverse Document Frequency) 알고리즘을 적용하여 중요도 데이터를 획득할 수 있다. TF-IDF 알고리즘은 특정 단어가 텍스트 데이터 내에서 얼마나 중요한 것인지를 식별하는 통계적 알고리즘을 의미한다. 즉, 중요도 데이터는 텍스트 데이터에 포함된 각 단어의 중요도를 나타낼 수 있으며, 용어-빈도 행렬(Term-Frequency Matrix)이라고 표현될 수 있다. 중요도 데이터는 하기 수학식 1과 같이 표현될 수 있다.
Figure PCTKR2021095039-appb-img-000001
수학식 1에서 w는 단어(또는, 용어)의 개수를 의미하며, R은 텍스트 데이터의 개수를 의미한다.
프로세서(130)는 획득된 중요도 데이터에 토픽 모델링(topic modelling) 알고리즘을 적용하여 토픽 및 단어 간의 관계를 나타내는 토픽 모델(topic model)을 획득할 수 있다.
토픽 모델링 알고리즘은 텍스트 데이터에 포함된 추상적인 토픽(또는, 주제)를 발견하기 위한 통계적인 알고리즘을 의미한다. 예를 들어, 프로세서(130)는 토픽 모델링 알고리즘 중 LDA(Latent Dirichlet Allocation) 알고리즘을 중요도 데이터에 적용하여 토픽 모델을 획득할 수 있다. 다만, 이에 국한되는 것은 아니며, 프로세서(130)는 다양한 유형의 토픽 모델링 알고리즘을 중요도 데이터에 적용하여 토픽 모델을 획득할 수 있다.
토픽 모델은 단어와 토픽 간의 관계성을 나타낼 수 있는 데이터이며, 행렬 등으로 구현될 수 있다. 토픽 모델은 하기 수학식 2와 같이 표현될 수 있다. 수학식 2에서 w는 단어(또는, 용어)의 개수를 의미하며, k는 토픽의 개수를 의미한다.
Figure PCTKR2021095039-appb-img-000002
프로세서(130)는, 획득된 토픽 모델에 기초하여, 토픽에 대한 복수의 사용자 각각의 선호도를 나타내는 선호도 데이터 및 복수의 아이템과 토픽 간의 관계를 나타내는 관계 데이터를 획득할 수 있다.
일 실시예로, 프로세서(130)는 복수의 텍스트 데이터를 사용자 별로 그룹핑(grouping)할 수 있다. 구체적으로, 프로세서(130)는 복수의 텍스트 데이터 중 제1 사용자가 작성한 텍스트 데이터를 하나의 문서(document)로 그룹핑하고, 제2 사용자가 작성한 텍스트 데이터를 하나의 문서로 그룹핑할 수 있다. 즉, 프로세서(130)는 사용자 별로 작성한 텍스트 데이터를 하나의 문서로 그룹핑할 수 있다.
그리고, 프로세서(130)는 그룹핑된 텍스트 데이터를 이용하여 복수의 사용자 각각이 사용한 단어의 빈도를 나타내는 제1 빈도 데이터를 획득할 수 있다. 제1 빈도 데이터에는 사용자가 특정 단어를 사용한 빈도에 대한 정보가 포함될 수 있다.
예로, 프로세서(130)는 그룹핑된 텍스트 데이터에 TF-IDF 알고리즘을 적용하여 제1 빈도 데이터를 획득할 수 있다. 제1 빈도 데이터는 하기 수학식 3과 같이 표현될 수 있다. 수학식 3에서 w는 단어(또는, 용어)의 개수를 의미하며, U는 사용자의 수를 의미한다.
Figure PCTKR2021095039-appb-img-000003
그리고, 프로세서(130)는 제1 빈도 데이터와 토픽 모델 간의 연산을 수행하여 선호도 데이터를 획득할 수 있다. 제1 빈도 데이터와 토픽 모델 간의 연산은 하기 수학식 4와 같이 표현될 수 있다. 수학식 4에서 A는 선호도 데이터를 의미하며, Tu 및 H는 각각 제1 빈도 데이터 및 토픽 모델을 의미한다.
Figure PCTKR2021095039-appb-img-000004
또 다른 실시예로, 프로세서(130)는 복수의 텍스트 데이터를 아이템 항목 별로 그룹핑할 수 있다. 구체적으로, 프로세서(130)는 복수의 텍스트 데이터 중 제1 아이템에 대한 텍스트 데이터를 하나의 문서(document)로 그룹핑하고, 제2 아이템에 대한 텍스트 데이터를 하나의 문서로 그룹핑할 수 있다. 즉, 프로세서(130)는 아이템 항목 별로 텍스트 데이터를 하나의 문서로 그룹핑할 수 있다.
그리고, 프로세서(130)는 그룹핑된 텍스트 데이터에 포함된 단어의 빈도를 이용하여 아이템에 대응되는 제2 빈도 데이터를 획득할 수 있다. 아이템에 대응되는 제2 빈도 데이터에는 특정 아이템과 관련된 텍스트 상에서 특정 단어의 사용 빈도와 관련된 데이타가 포함될 수 있다.
예로, 프로세서(130)는 그룹핑된 텍스트 데이터에 TF-IDF 알고리즘을 적용하여 아이템에 대응되는 제2 빈도 데이터를 획득할 수 있다. 제2 빈도 데이터는 하기 수학식 5와 같이 표현될 수 있다. 수학식 5에서 w는 단어(또는, 용어)의 개수를 의미하며, I는 아이템의 수를 의미한다.
Figure PCTKR2021095039-appb-img-000005
그리고, 프로세서(130)는 제2 빈도 데이터와 토픽 모델 간의 연산을 수행하여 관계 데이터를 획득할 수 있다. 제2 빈도 데이터와 토픽 모델 간의 연산은 하기 수학식 6와 같이 표현될 수 있다. 수학식 6에서 B는 관계 데이터를 의미하며, Tl 및 H는 각각 제2 빈도 데이터 및 토픽 모델을 의미한다.
Figure PCTKR2021095039-appb-img-000006
프로세서(130)는 선호도 데이터 및 관계 데이터에 기초하여 복수의 사용자의 복수의 아이템에 대한 예상 선호도가 포함된 결과 데이터를 출력하도록 추천 모델을 학습시킬 수 있다.
구체적으로, 프로세서(130)는 선호도 데이터에 포함된 수치를 추천 모델에 포함된 제1 잠재 인수의 초기 값으로 설정할 수 있다. 그리고, 프로세서(130)는 선호도 데이터에 포함된 수치를 제2 잠재 인수의 초기 값으로 설정할 수 있다. 이에 따라, 각 잠재 인수의 차원(dimension)은 토픽을 의미할 수 있다.
프로세서(130)는 제1 잠재 인수의 초기 값과 상기 제2 잠재 인수의 초기 값간의 연산 값 및 기 정의된 학습 값간의 차이 값이 최소화되도록 추천 모델을 학습시킬 수 있다. 기 정의된 학습 값에는 실제 사용자가 항목 별로 부여한 선호도 값이 포함될 수 있다. 학습된 추천 모델은 제1 잠재 인수 및 제2 잠재 인수 간의 연산을 수행하여 사용자의 아이템에 대한 예상 선호도가 포함된 결과 데이터를 출력할 수 있다.
한편, 추천 모델은 프로세서(130)가 수행하는 동작 중 전부 또는 일부를 수행할 수 있도록 학습될 수 있다. 예를 들어, 추천 모델은 중요도 데이터를 획득하기 위하여 텍스트 데이터 중 품사가 명사인 단어를 식별하도록 학습될 수 있다.
기존의 행렬 분해 알고리즘의 경우, 제1 잠재 인수 및 제2 잠재 인수의 초기 값은 랜덤으로 설정한다. 본 개시의 제1 잠재 인수 및 제2 잠재 인수의 초기 값 각각은 토픽에 대한 복수의 사용자 각각의 선호도를 나타내는 선호도 데이터 및 복수의 아이템과 토픽 간의 관계를 나타내는 관계 데이터로 설정함으로써 사용자의 예상 선호도의 정확도를 높일 수 있다.
한편, 본 개시에 따른 인공지능과 관련된 기능은 프로세서(130)와 메모리(110)를 통해 동작된다. 하나 또는 복수의 프로세서(130)는, 메모리(110)에 저장된 기 정의된 동작 규칙 또는 인공지능 모델에 따라, 입력 데이터를 처리하도록 제어한다.
기 정의된 동작 규칙 또는 인공지능 모델은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다.
학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
인공지능 모델은 복수의 인공 신경망을 포함하며, 인공 신경망은 복수의 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 인공지능 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 인공지능 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다.
인공 신경망은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등이 있으나, 전술한 예에 한정되지 않는다.
디스플레이(140)는 프로세서(130)의 제어에 따라 다양한 정보를 표시할 수 있다. 특히, 디스플레이(140)는 추천 모델에 의해 출력된 결과 데이터를 표시할 수 있다. 또 다른 예로, 디스플레이(140)는 복수의 사용자 중 제1 사용자가 특정 아이템에 부여한 선호도 값을 표시할 수 있다.
디스플레이(140)는 터치 패널과 함께 터치 스크린으로 구현될 수 있으며, 플렉서블 디스플레이(flexible display)로 구현될 수도 있다.
입력부(150)는 전자 장치(100)를 제어하기 위한 사용자 입력을 수신할 수 있다. 특히, 입력부(150)는 사용자 손 또는 스타일러스 펜 등을 이용한 사용자 터치를 입력받기 위한 터치 패널, 사용자 조작을 입력받기 위한 버튼 등이 포함될 수 있다. 그 밖에, 입력부(150)는 다른 입력 장치(예로, 키보드, 마우스, 모션 입력부 등)로 구현될 수 있다.
도 2는 본 개시의 일 실시예에 따른, 전자 장치(100)의 제어 방법을 설명하기 위한 순서도이다.
도 2를 참조하면, 전자 장치(100)는 복수의 사용자에 의해 작성된 복수의 아이템과 관련된 텍스트 데이터를 이용하여 텍스트 데이터에 포함된 복수의 단어 별 중요도를 나타내는 중요도 데이터를 획득할 수 있다(S210).
전자 장치(100)는 복수의 텍스트 데이터에 포함된 복수의 단어 중 명사인 단어를 식별하고, 식별된 단어가 포함된 단어 가방을 생성할 수 있다. 그리고, 전자 장치(100)는 생성된 단어 가방에 TF-IDF 알고리즘을 적용하여 중요도 데이터를 획득할 수 있다. 이 때, 중요도 데이터는 행렬 형식으로 구현될 수 있으나 이에 국한되는 것은 아니며 다양한 데이터 형태로 구현될 수 있다.
전자 장치(100)는 획득된 중요도 데이터에 토픽 모델링 알고리즘을 적용하여 토픽 및 단어 간의 관계를 나타내는 토픽 모델을 획득할 수 있다(S220).
전자 장치(100)는 획득된 토픽 모델에 기초하여, 토픽에 대한 복수의 사용자 각각의 선호도를 나타내는 선호도 데이터 및 복수의 아이템과 토픽 간의 관계를 나타내는 관계 데이터를 획득할 수 있다(S230).
예를 들어, 전자 장치(100)는 복수의 텍스트 데이터를 사용자 별로 그룹핑할 수 있다. 즉, 전자 장치(100)는 복수의 텍스트 데이터를 작성한 사용자 별로 하나의 문서로 그룹핑할 수 있다. 그리고, 전자 장치(100)는 그룹핑된 텍스트 데이터를 이용하여 복수의 사용자 각각이 사용한 단어의 빈도를 나타내는 제1 빈도 데이터를 획득할 수 있다. 그리고, 전자 장치(100)는 제1 빈도 데이터와 토픽 모델 간의 연산을 수행하여 선호도 데이터를 획득할 수 있다.
또 다른 예로, 전자 장치(100)는 복수의 텍스트 데이터를 아이템 항목 별로 그룹핑하고, 그룹핑된 텍스트 데이터에 포함된 단어의 빈도를 이용하여 아이템에 대응되는 제2 빈도 데이터를 획득할 수 있다. 구체적으로, 전자 장치(100)는 그룹핑된 텍스트 데이터에 TF-IDF 알고리즘을 적용하여 아이템에 대응되는 제2 빈도 데이터를 획득할 수 있다. 그리고, 전자 장치(100)는 제2 빈도 데이터와 토픽 모델 간의 연산을 수행하여 관계 데이터를 획득할 수 있다.
전자 장치(100)는 선호도 데이터 및 관계 데이터에 기초하여 복수의 사용자의 복수의 아이템에 대한 예상 선호도가 포함된 결과 데이터를 출력하도록 추천 모델을 학습시킬 수 있다(S240).
예로, 전자 장치(100)는 선호도 데이터에 포함된 수치를 제1 잠재 인수의 초기 값으로 설정할 수 있다. 또 다른 예로, 전자 장치(100)는 관계 데이터에 포함된 수치를 제2 잠재 인수의 초기 값으로 설정할 수 있다. 각 잠재 인수의 초기 값을 선호도 데이터 및 관계 데이터에 포함된 값으로 설정되었는 바, 잠재 인수의 차원(dimension)은 토픽을 의미할 수 있다.
전자 장치(100)는 제1 잠재 인수의 초기 값과 제2 잠재 인수의 초기 값간의 연산 값 및 기 정의된 학습 값간의 차이 값이 최소화되도록 추천 모델을 학습시킬 수 있다. 기 정의된 학습 값에는 실제 사용자가 항목 별로 부여한 선호도 값이 포함될 수 있다.
도 3 내지 도 5는 본 개시의 다양한 실시예에 따른, 전자 장치(100)가 추천 모델을 학습시키는 과정을 설명하기 위한 도면이다.
도 3을 참조하면, 전자 장치(100)는 복수의 사용자에 의해 작성된 복수의 아이템과 관련된 텍스트 데이터(또는, 리뷰 데이터)(10)를 이용하여 텍스트 데이터에 포함된 복수의 단어 별 중요도를 나타내는 중요도 데이터(20)를 획득할 수 있다.
예로, 전자 장치(100)는 텍스트 데이터(10)에 포함된 복수의 단어 중 품사가 명사인 단어를 식별할 수 있다. 그리고, 전자 장치(100)는 식별된 단어가 포함된 단어 가방을 생성하고, 생성된 단어 가방에 TF-IDF 알고리즘을 적용하여 중요도 데이터(20)를 획득할 수 있다. 도 3에 도시된 바와 같이, 중요도 데이터(20)는 행렬 형태로 구현될 수 있으며, 중요도 데이터(20)의 행은 각 리뷰 데이터를 의미하고, 열은 단어를 의미할 수 있다.
전자 장치(100)는 중요도 데이터(20)에 토픽 모델링 알고리즘을 적용하여 토픽 모델(30)을 획득할 수 있다. 토픽 모델(30)은 단어와 토픽 간의 관계를 나타낼 수 있다.
도 4를 참조하면, 전자 장치(100)는 토픽 모델(30)에 기초하여 선호도 데이터(60) 및 관계 데이터(90) (도 5 참조)를 획득할 수 있다.
구체적으로, 전자 장치(100)는 복수의 텍스트 데이터를 사용자 별로 그룹핑하고, 그룹핑된 텍스트 데이터(40)를 이용하여 복수의 사용자 각각이 사용한 단어의 빈도를 나타내는 제1 빈도 데이터(50)를 획득할 수 있다. 전자 장치(100)는 제1 빈도 데이터(50)와 토픽 모델(30) 간에 연산을 수행하여 선호도 데이터(또는, user-topic matrix)(60)을 획득할 수 있다.
도 5를 참조하면, 전자 장치(100)는 복수의 텍스트 데이터를 아이템 항목 별로 그룹핑하고, 그룹핑된 텍스트 데이터(70)를 이용하여 아이템에 대응되는 제2 빈도 데이터(80)를 획득할 수 있다. 그리고, 전자 장치(100)는 제2 빈도 데이터(80)와 토픽 모델(30) 간에 연산을 수행하여 관계 데이터(또는, item-topic matrix)(90)를 획득할 수 있다.
한편, 본 개시의 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 서버 클라우드를 포함할 수 있다. 상기 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 상기 프로세서의 제어 하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다.
명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적은 저장매체'는 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시 예에 따르면, 본 개시에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예로, 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
본 개시가 다양한 실시 예를 참조하여 도시되고 설명되었지만, 본 기술 분야의 숙련자는 다음과 같은 본 개시의 사상 및 범위를 벗어나지 않으면서 형태 및 세부 사항의 다양한 변경이 이루어질 수 있음을 이해할 것이며, 첨부 된 청구 범위 및 그 등가물에 의해 정의될 수 있다.

Claims (15)

  1. 전자 장치에 있어서,
    메모리; 및
    복수의 사용자에 의해 작성된 복수의 아이템과 관련된 텍스트 데이터를 이용하여 상기 텍스트 데이터에 포함된 복수의 단어 별 중요도를 나타내는 중요도 데이터를 획득하고,
    상기 획득된 중요도 데이터에 토픽 모델링(topic modelling) 알고리즘을 적용하여 토픽 및 단어 간의 관계를 나타내는 토픽 모델(topic model)을 획득하고,
    상기 획득된 토픽 모델에 기초하여, 상기 토픽에 대한 상기 복수의 사용자 각각의 선호도를 나타내는 선호도 데이터 및 상기 복수의 아이템과 상기 토픽 간의 관계를 나타내는 관계 데이터를 획득하고,
    상기 선호도 데이터 및 상기 관계 데이터에 기초하여 상기 복수의 사용자의 상기 복수의 아이템에 대한 예상 선호도가 포함된 결과 데이터를 출력하도록 추천 모델을 학습시키는 프로세서;를 포함하는 전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 텍스트 데이터에 포함된 상기 복수의 단어 중 명사(noun)인 단어를 식별하고,
    상기 식별된 단어가 포함된 단어 가방(Bag of Words)를 생성하고,
    상기 생성된 단어 가방에 기초하여 상기 중요도 데이터를 획득하는 전자 장치.
  3. 제2항에 있어서,
    상기 프로세서는,
    상기 생성된 단어 가방에 TF-IDF(Term Frequency - Inverse Document Frequency) 알고리즘을 적용하여 상기 중요도 데이터를 획득하는 전자 장치.
  4. 제1항에 있어서,
    상기 프로세서는,
    상기 텍스트 데이터를 상기 복수의 사용자 별로 그룹핑(grouping)하고,
    상기 그룹핑된 텍스트 데이터를 이용하여 상기 복수의 사용자 각각이 사용한 단어의 빈도를 나타내는 제1 빈도 데이터를 획득하고,
    상기 제1 빈도 데이터와 상기 토픽 모델 간의 연산을 수행하여 상기 선호도 데이터를 획득하는 전자 장치.
  5. 제1항에 있어서,
    상기 프로세서는,
    상기 텍스트 데이터를 상기 복수의 아이템 별로 그룹핑(grouping)하고,
    상기 그룹핑된 텍스트 데이터에 포함된 단어의 빈도를 이용하여 상기 아이템에 대응되는 제2 빈도 데이터를 획득하고,
    상기 제2 빈도 데이터와 상기 토픽 모델 간의 연산을 수행하여 상기 관계 데이터를 획득하는 전자 장치.
  6. 제1항에 있어서,
    상기 추천 모델은 제1 잠재 인수(latent factor) 및 제2 잠재 인수를 포함하고,
    상기 프로세서는,
    상기 선호도 데이터에 포함된 수치를 상기 제1 잠재 인수의 초기 값으로 설정하고,
    상기 관계 데이터에 포함된 수치를 상기 제2 잠재 인수의 초기 값으로 설정하는 전자 장치.
  7. 제6항에 있어서,
    상기 프로세서는,
    상기 제1 잠재 인수의 초기 값과 상기 제2 잠재 인수의 초기 값간의 연산 값 및 기 정의된 학습 값간의 차이 값이 최소화되도록 상기 추천 모델을 학습시키는 전자 장치.
  8. 제7항에 있어서,
    상기 추천 모델은,
    상기 차이 값이 최소화되도록 학습되면, 상기 제1 잠재 인수 및 상기 제2 잠재 인수 간의 연산을 수행하여 상기 결과 데이터를 출력하는 것을 특징으로 하는 전자 장치.
  9. 전자 장치의 제어 방법에 있어서,
    복수의 사용자에 의해 작성된 복수의 아이템과 관련된 텍스트 데이터를 이용하여 텍스트 데이터에 포함된 복수의 단어 별 중요도를 나타내는 중요도 데이터를 획득하는 단계;
    상기 획득된 중요도 데이터에 토픽 모델링 알고리즘을 적용하여 토픽 및 단어 간의 관계를 나타내는 토픽 모델을 획득하는 단계;
    상기 획득된 토픽 모델에 기초하여, 상기 토픽에 대한 상기 복수의 사용자 각각의 선호도를 나타내는 선호도 데이터 및 상기 복수의 아이템과 상기 토픽 간의 관계를 나타내는 관계 데이터를 획득하는 단계; 및
    상기 선호도 데이터 및 상기 관계 데이터에 기초하여 상기 복수의 사용자의 상기 복수의 아이템에 대한 예상 선호도가 포함된 결과 데이터를 출력하도록 추천 모델을 학습시키는 단계;를 포함하는 제어 방법.
  10. 제9항에 있어서,
    상기 중요도 데이터를 획득하는 단계는,
    상기 텍스트 데이터에 포함된 상기 복수의 단어 중 명사(noun)인 단어를 식별하는 단계;
    상기 식별된 단어가 포함된 단어 가방(Bag of Words)를 생성하는 단계; 및
    상기 생성된 단어 가방에 기초하여 상기 중요도 데이터를 획득하는 단계;를 포함하는 제어 방법.
  11. 제10항에 있어서,
    상기 중요도 데이터를 획득하는 단계는,
    상기 생성된 단어 가방에 TF-IDF 알고리즘을 적용하여 상기 중요도 데이터를 획득하는 단계;를 포함하는 제어 방법.
  12. 제9항에 있어서,
    상기 선호도 데이터를 획득하는 단계는,
    상기 텍스트 데이터를 상기 복수의 사용자 별로 그룹핑하는 단계;
    상기 그룹핑된 텍스트 데이터를 이용하여 상기 복수의 사용자 각각이 사용한 단어의 빈도를 나타내는 제1 빈도 데이터를 획득하는 단계; 및
    상기 제1 빈도 데이터와 상기 토픽 모델 간의 연산을 수행하여 상기 선호도 데이터를 획득하는 단계;를 포함하는 제어 방법.
  13. 제9항에 있어서,
    상기 관계 데이터를 획득하는 단계는,
    상기 텍스트 데이터를 상기 복수의 아이템 별로 그룹핑하는 단계;
    상기 그룹핑된 텍스트 데이터에 포함된 단어의 빈도를 이용하여 상기 아이템에 대응되는 제2 빈도 데이터를 획득하는 단계; 및
    상기 제2 빈도 데이터와 상기 토픽 모델 간의 연산을 수행하여 상기 관계 데이터를 획득하는 단계;를 포함하는 제어 방법.
  14. 제9항에 있어서,
    상기 추천 모델은 제1 잠재 인수(latent factor) 및 제2 잠재 인수를 포함하고,
    상기 학습시키는 단계는,
    상기 선호도 데이터에 포함된 수치를 상기 제1 잠재 인수의 초기 값으로 설정하고,
    상기 관계 데이터에 포함된 수치를 상기 제2 잠재 인수의 초기 값으로 설정하는 단계;를 포함하는 제어 방법.
  15. 제14항에 있어서,
    상기 학습시키는 단계는,
    상기 제1 잠재 인수의 초기 값과 상기 제2 잠재 인수의 초기 값간의 연산 값 및 기 정의된 학습 값간의 차이 값이 최소화되도록 상기 추천 모델을 학습시키는 단계;를 포함하는 제어 방법.
PCT/KR2021/095039 2020-05-29 2021-05-20 전자 장치 및 이의 제어 방법 WO2021242073A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/296,821 US20230259703A1 (en) 2020-05-29 2021-05-20 Electronic device and method for controlling the electronic device

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20200065387 2020-05-29
KR10-2020-0065387 2020-05-29
KR10-2021-0041217 2021-03-30
KR1020210041217A KR20210148877A (ko) 2020-05-29 2021-03-30 전자 장치 및 이의 제어 방법

Publications (1)

Publication Number Publication Date
WO2021242073A1 true WO2021242073A1 (ko) 2021-12-02

Family

ID=78723370

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/095039 WO2021242073A1 (ko) 2020-05-29 2021-05-20 전자 장치 및 이의 제어 방법

Country Status (2)

Country Link
US (1) US20230259703A1 (ko)
WO (1) WO2021242073A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130092310A (ko) * 2012-02-10 2013-08-20 (주)워터빈 상품 추천 시스템
JP5683758B1 (ja) * 2013-07-19 2015-03-11 楽天株式会社 レコメンド情報提示装置、レコメンド情報提示方法及びレコメンド情報提示プログラム
JP2019049980A (ja) * 2017-09-08 2019-03-28 エヌイーシー ラボラトリーズ ヨーロッパ ゲーエムベーハー レコメンダシステム用にユーザ、アイテム、及びレビューの表現を組み合せる方法及びシステム
KR20190103505A (ko) * 2018-02-12 2019-09-05 한양대학교 산학협력단 딥러닝 기반의 아이템 추천 방법 및 장치
KR20200027089A (ko) * 2018-08-30 2020-03-12 한양대학교 산학협력단 하이브리드 아이템 추천 방법 및 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130092310A (ko) * 2012-02-10 2013-08-20 (주)워터빈 상품 추천 시스템
JP5683758B1 (ja) * 2013-07-19 2015-03-11 楽天株式会社 レコメンド情報提示装置、レコメンド情報提示方法及びレコメンド情報提示プログラム
JP2019049980A (ja) * 2017-09-08 2019-03-28 エヌイーシー ラボラトリーズ ヨーロッパ ゲーエムベーハー レコメンダシステム用にユーザ、アイテム、及びレビューの表現を組み合せる方法及びシステム
KR20190103505A (ko) * 2018-02-12 2019-09-05 한양대학교 산학협력단 딥러닝 기반의 아이템 추천 방법 및 장치
KR20200027089A (ko) * 2018-08-30 2020-03-12 한양대학교 산학협력단 하이브리드 아이템 추천 방법 및 장치

Also Published As

Publication number Publication date
US20230259703A1 (en) 2023-08-17

Similar Documents

Publication Publication Date Title
US20220188840A1 (en) Target account detection method and apparatus, electronic device, and storage medium
WO2020248841A1 (zh) 图像的au检测方法、装置、电子设备及存储介质
WO2019001418A1 (zh) 数据共享系统及其数据共享方法
CN111144124B (zh) 机器学习模型的训练方法、意图识别方法及相关装置、设备
US11822568B2 (en) Data processing method, electronic equipment and storage medium
WO2021020810A1 (en) Learning method of ai model and electronic apparatus
WO2022001724A1 (zh) 一种数据处理方法及装置
WO2022131497A1 (ko) 이미지 생성을 위한 학습 장치 및 방법과 이미지 생성 장치 및 방법
WO2019098418A1 (ko) 뉴럴 네트워크 학습 방법 및 디바이스
WO2021259205A1 (zh) 一种文本序列生成方法、装置、设备和介质
WO2020096255A1 (en) Electronic apparatus and control method thereof
CN115168592B (zh) 基于方面类别的语句情感分析方法、装置以及设备
WO2018212584A2 (ko) 딥 뉴럴 네트워크를 이용하여 문장이 속하는 클래스를 분류하는 방법 및 장치
WO2015099264A1 (ko) 생물학적 네트워크 분석 장치 및 방법
WO2019039659A1 (ko) 감성 기반의 사용자 관리 방법 및 이를 수행하는 장치들
WO2022116444A1 (zh) 文本分类方法、装置、计算机设备和介质
WO2020192523A1 (zh) 译文质量检测方法、装置、机器翻译系统和存储介质
WO2021242073A1 (ko) 전자 장치 및 이의 제어 방법
WO2023125000A1 (zh) 内容输出方法、装置、计算机可读介质及电子设备
WO2023136417A1 (ko) 비디오 스토리 질의 응답을 위한 트랜스포머 모델을 구축하는 장치 및 방법
WO2021045434A1 (ko) 전자 장치 및 이의 제어 방법
KR20210148877A (ko) 전자 장치 및 이의 제어 방법
WO2019198900A1 (en) Electronic apparatus and control method thereof
US20220406217A1 (en) Deep learning-based pedagogical word recommendation system for predicting and improving vocabulary skills of foreign language learners
WO2022154376A1 (ko) Sns 텍스트 기반의 사용자의 인테리어 스타일 분석 모델 제공 장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21813494

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21813494

Country of ref document: EP

Kind code of ref document: A1