KR102417046B1 - Device and method for providing recommended words for character input from user - Google Patents

Device and method for providing recommended words for character input from user Download PDF

Info

Publication number
KR102417046B1
KR102417046B1 KR1020170110349A KR20170110349A KR102417046B1 KR 102417046 B1 KR102417046 B1 KR 102417046B1 KR 1020170110349 A KR1020170110349 A KR 1020170110349A KR 20170110349 A KR20170110349 A KR 20170110349A KR 102417046 B1 KR102417046 B1 KR 102417046B1
Authority
KR
South Korea
Prior art keywords
word
input
user
pseudo
morpheme
Prior art date
Application number
KR1020170110349A
Other languages
Korean (ko)
Other versions
KR20180044187A (en
Inventor
송희준
김정욱
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to EP17862947.3A priority Critical patent/EP3482306A4/en
Priority to US15/789,106 priority patent/US10540441B2/en
Priority to CN201780063064.8A priority patent/CN109804373A/en
Priority to PCT/KR2017/011680 priority patent/WO2018074895A1/en
Publication of KR20180044187A publication Critical patent/KR20180044187A/en
Priority to US16/724,641 priority patent/US11481551B2/en
Application granted granted Critical
Publication of KR102417046B1 publication Critical patent/KR102417046B1/en
Priority to US17/967,924 priority patent/US20230036080A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis

Abstract

사용자로부터 입력된 문자에 대한 추천 단어를 제공하는 디바이스 및 방법에 제공된다. 디바이스가 추천 단어를 제공하는 방법은, 사용자로부터 문자 입력을 수신하는 동작, 문자 입력을 분석함으로써, 수신된 문자 입력을 포함하는 적어도 하나의 의사 형태소(pseudo-morpheme)를 추천하는 동작, 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력에 응답하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천하는 동작, 및 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 선택된 어절을 디스플레이하는 동작을 포함한다.Provided are a device and a method for providing a recommended word for a character input by a user. A method for a device to provide a recommended word includes an operation of receiving a text input from a user, an operation of recommending at least one pseudo-morpheme including the received text input by analyzing the text input, and at least one an operation of recommending at least one word including the selected pseudo morpheme in response to an input of selecting one of the pseudo morphemes, and an operation of displaying the selected word in response to an input of selecting one of the at least one word do.

Description

사용자로부터 입력된 문자에 대한 추천 단어를 제공하는 디바이스 및 방법 {DEVICE AND METHOD FOR PROVIDING RECOMMENDED WORDS FOR CHARACTER INPUT FROM USER}DEVICE AND METHOD FOR PROVIDING RECOMMENDED WORDS FOR CHARACTER INPUT FROM USER}

본 개시는 추천 단어를 제공하는 디바이스 및 방법에 관한 것으로서, 보다 상세하게는, 사용자로부터 입력된 문자에 대한 추천 단어를 제공하는 디바이스 및 방법에 관한 것이다.The present disclosure relates to a device and method for providing a recommended word, and more particularly, to a device and method for providing a recommended word for a character input from a user.

또한, 본 개시는 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 인공 지능(Artificial Intelligence, AI) 시스템 및 그 응용에 관한 것이다.In addition, the present disclosure relates to an artificial intelligence (AI) system for simulating functions such as cognition and judgment of a human brain by using a machine learning algorithm and an application thereof.

멀티미디어 기술 및 네트워크 기술이 발전함에 따라, 사용자는 디바이스를 이용하여 다양한 서비스를 제공받을 수 있게 되었다. 특히, 사용자가 입력 중인 단어에 기초하여, 추천 단어를 제공하는 다양한 방법이 제공되었다. 그러나, 추천 단어를 제공하기 위해, 데이터베이스에 저장해야 하는 데이터의 양이 많고, 사용자가 의도한 단어를 정확하게 추천하기 어려운 문제가 있었다. 따라서, 데이터베이스에 저장해야 하는 데이터의 양을 줄이면서도, 사용자가 의도한 단어를 보다 정확하게 예측하여 추천할 수 있는 방법이 요구되고 있다.As multimedia technology and network technology develop, a user can receive various services using a device. In particular, various methods for providing a recommended word based on a word being input by a user have been provided. However, in order to provide a recommended word, there is a problem in that the amount of data that needs to be stored in the database is large, and it is difficult to accurately recommend a word intended by the user. Accordingly, there is a need for a method capable of more accurately predicting and recommending a word intended by a user while reducing the amount of data to be stored in the database.

또한, 근래에는 인간 수준의 지능을 구현하는 인공 지능 시스템이 다양한 분야에서 이용되고 있다. 인공 지능 시스템은 기존의 룰(rule) 기반 스마트 시스템과 달리 기계가 스스로 학습하고 판단하며 똑똑해지는 시스템이다. 인공 지능 시스템은 사용할수록 인식률이 향상되고 사용자 취향을 보다 정확하게 이해할 수 있게 되어, 기존 룰 기반 스마트 시스템은 점차 딥러닝 기반 인공 지능 시스템으로 대체되고 있다.Also, in recent years, artificial intelligence systems that implement human-level intelligence have been used in various fields. Unlike the existing rule-based smart system, an artificial intelligence system is a system in which a machine learns, judges, and becomes smarter by itself. The more the artificial intelligence system is used, the better the recognition rate and the more accurate understanding of user preferences, and the existing rule-based smart systems are gradually being replaced by deep learning-based artificial intelligence systems.

인공 지능 기술은 기계학습(예로, 딥러닝) 및 기계학습을 활용한 요소 기술들로 구성된다.Artificial intelligence technology consists of machine learning (eg, deep learning) and element technologies using machine learning.

기계학습은 입력 데이터들의 특징을 스스로 분류/학습하는 알고리즘 기술이며, 요소기술은 딥러닝 등의 기계학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술로서, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야로 구성된다.Machine learning is an algorithm technology that categorizes/learns the characteristics of input data by itself, and element technology uses machine learning algorithms such as deep learning to simulate functions such as cognition and judgment of the human brain. It consists of technical fields such as understanding, reasoning/prediction, knowledge expression, and motion control.

인공 지능 기술이 응용되는 다양한 분야는 다음과 같다. 언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리, 기계 번역, 대화시스템, 질의 응답, 음성 인식/합성 등을 포함한다. 시각적 이해는 사물을 인간의 시각처럼 인식하여 처리하는 기술로서, 객체 인식, 객체 추적, 영상 검색, 사람 인식, 장면 이해, 공간 이해, 영상 개선 등을 포함한다. 추론 예측은 정보를 판단하여 논리적으로 추론하고 예측하는 기술로서, 지식/확률 기반 추론, 최적화 예측, 선호 기반 계획, 추천 등을 포함한다. 지식 표현은 인간의 경험정보를 지식데이터로 자동화 처리하는 기술로서, 지식 구축(데이터 생성/분류), 지식 관리(데이터 활용) 등을 포함한다. 동작 제어는 차량의 자율 주행, 로봇의 움직임을 제어하는 기술로서, 움직임 제어(항법, 충돌, 주행), 조작 제어(행동 제어) 등을 포함한다.The various fields where artificial intelligence technology is applied are as follows. Linguistic understanding is a technology for recognizing and applying/processing human language/text, and includes natural language processing, machine translation, dialogue system, question and answer, and speech recognition/synthesis. Visual understanding is a technology for recognizing and processing objects like human vision, and includes object recognition, object tracking, image search, human recognition, scene understanding, spatial understanding, image improvement, and the like. Inferential prediction is a technology for logically reasoning and predicting by judging information, and includes knowledge/probability-based reasoning, optimization prediction, preference-based planning, and recommendation. Knowledge expression is a technology that automatically processes human experience information into knowledge data, and includes knowledge construction (data generation/classification) and knowledge management (data utilization). Motion control is a technology for controlling autonomous driving of a vehicle and movement of a robot, and includes motion control (navigation, collision, driving), manipulation control (action control), and the like.

일부 실시예들은, 사용자로부터 입력된 문자를 포함하는 의사 형태소 단위로 추천 단어를 제공함으로써, 데이터베이스에 저장해야 하는 데이터의 양을 줄일 수 있는, 추천 단어를 제공하는 디바이스 및 방법을 제공할 수 있다.Some embodiments may provide a device and method for providing a recommended word, which can reduce the amount of data to be stored in a database by providing the recommended word in units of pseudo morphemes including characters input by the user.

또한, 일부 실시예들은, 어절 단위보다 작은 의사 형태소 단위로 추천 단어를 제공하고, 추천된 의사 형태소 중에서 선택된 의사 형태소에 기초하여 어절 단위로 추천 단어를 제공함으로써, 사용자가 의도에 부합하는 추천 단어를 보다 효과적으로 제공하는 디바이스 및 방법을 제공할 수 있다.In addition, some embodiments provide a recommended word in units of a pseudo morpheme smaller than a unit of a word, and provide a recommended word in units of words based on a pseudo morpheme selected from among the recommended pseudo morphemes, so that the user can select a recommended word that matches the intention. It is possible to provide a device and method for providing more effectively.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제1 측면은 적어도 하나의 프로그램이 저장되는 메모리, 문자 입력 창 내에 문자를 입력하는 사용자 입력을 수신하는 사용자 입력부, 및 적어도 하나의 프로그램을 실행함으로써 입력된 문자에 대한 추천 단어를 제공하도록 하는 적어도 하나의 프로세서를 포함하고, 적어도 하나의 프로그램은, 입력된 문자를 분석함으로써, 입력된 문자를 포함하는 적어도 하나의 의사 형태소(pseudo-morpheme)를 추천하는 동작, 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력에 응답하여 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천하는 동작, 및 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 선택된 어절을 문자 입력 창 내에 디스플레이하는 동작을 포함하는, 디바이스를 제공할 수 있다.As a technical means for achieving the above-described technical problem, a first aspect of the present disclosure includes a memory in which at least one program is stored, a user input unit for receiving a user input for inputting characters in a character input window, and at least one program. and at least one processor configured to provide a recommended word for the inputted character by executing, wherein the at least one program analyzes the inputted character to obtain at least one pseudo-morpheme including the inputted character. , recommending at least one word including a pseudo morpheme selected in response to an input of selecting one from among at least one pseudo morpheme, and in response to an input of selecting one from among at least one pseudo morpheme, A device may be provided, including an operation of displaying a word in a text input window.

또한, 본 개시의 제2 측면은, 사용자로부터 문자 입력을 수신하는 동작, 문자 입력을 분석함으로써, 수신된 문자 입력을 포함하는 적어도 하나의 의사 형태소(pseudo-morpheme)를 추천하는 동작, 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력에 응답하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천하는 동작, 및 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 선택된 어절을 디스플레이하는 동작을 포함하는, 디바이스가 사용자로부터 입력된 문자에 대한 추천 단어를 제공하는 방법을 제공할 수 있다.In addition, a second aspect of the present disclosure provides an operation of receiving a text input from a user, an operation of recommending at least one pseudo-morpheme including the received text input by analyzing the text input, and at least one an operation of recommending at least one word including the selected pseudo morpheme in response to an input of selecting one of the pseudo morphemes, and an operation of displaying the selected word in response to an input of selecting one of the at least one word , it is possible to provide a method for the device to provide a recommended word for a character input by the user.

또한, 본 개시의 제3 측면은, 제2 측면의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.In addition, a third aspect of the present disclosure may provide a computer-readable recording medium in which a program for executing the method of the second aspect is recorded on a computer.

도 1은 일부 실시예에 따른 디바이스가 사용자로부터 입력된 문자에 대한 추천 단어를 제공하는 예시를 나타내는 도면이다.
도 2는 일부 실시예에 따른 디바이스가 추천 단어를 제공하는 방법을 나타내는 흐름도이다.
도 3은 일부 실시예에 따른 디바이스가 추천할 적어도 하나의 의사 형태소를 결정하는 방법을 나타내는 흐름도이다.
도 4는 일부 실시예에 따른 디바이스가 추천 단어를 결정하는 방법을 설명하기 위한 도면이다.
도 5a 및 도 5b는 일부 실시예에 따른 디바이스가 적어도 하나의 의사 형태소를 추천하는 예시를 나타내는 도면이다.
도 6a 및 도 6b는 일부 실시예에 따른 디바이스가 적어도 하나의 의사 형태소를 추천하는 예시를 나타내는 도면이다.
도 7은 일부 실시예에 따른 디바이스가 공백 문자를 디스플레이하는 방법을 나타내는 흐름도이다.
도 8은 일부 실시예에 따른 디바이스가 공백 문자를 디스플레이하고, 디스플레이된 공백 문자의 다음에 위치할 적어도 하나의 의사 형태소를 추천하는 예시를 나타내는 도면이다.
도 9는 일부 실시예에 따른 신경망의 예시를 나타내는 도면이다.
도 10은 일부 실시예에 따른 디바이스가 추천할 어절이 있는지 여부가 나타나도록, 디스플레이된 의사 형태소를 구별되게 표시하는 예시를 나타내는 도면이다.
도 11은 일부 실시예에 따른 디바이스가 의사 형태소 각각에 대한 사용자의 사용 빈도를 고려하여 의사 형태소를 추천하는 예시를 나타내는 도면이다.
도 12은 일부 실시예에 따른 디바이스가 기 디스플레이된 적어도 하나의 어절의 종류 및 순서를 고려하여 의사 형태소를 추천하는 예시를 나타내는 도면이다.
도 13는 일부 실시예에 따른 디바이스가 사용자의 문자 입력 특성을 고려하여 적어도 하나의 어절을 추천하는 예시를 나타내는 도면이다.
도 14는 일부 실시예에 따른 디바이스의 블록도이다.
도 15는 다른 실시예에 따른 디바이스의 블록도이다.
도 16은 일부 실시예에 따른 프로세서의 블록도이다.
도 17은 일부 실시예에 따른 데이터 학습부의 블록도이다.
도 18는 일부 실시예에 따른 데이터 인식부의 블록도이다.
도 19은 일부 실시예에 따른 디바이스 및 서버가 서로 연동함으로써 데이터를 학습하고 인식하는 예시를 나타내는 도면이다.
도 20은 일부 실시예에 따른 데이터 인식 모델을 이용하는 디바이스의 흐름도이다.
도 21 내지 도 23은 일부 실시예에 따른 데이터 분석 모델을 이용하는 네트워크 시스템의 흐름도들이다.
1 is a diagram illustrating an example in which a device provides a recommended word for a character input by a user, according to some embodiments.
2 is a flowchart illustrating a method for a device to provide a recommended word, according to some embodiments.
3 is a flowchart illustrating a method for a device to determine at least one pseudo morpheme to be recommended, according to some embodiments.
4 is a diagram for describing a method of determining, by a device, a recommended word, according to some embodiments.
5A and 5B are diagrams illustrating an example in which a device recommends at least one pseudo morpheme, according to some embodiments.
6A and 6B are diagrams illustrating an example in which a device recommends at least one pseudo morpheme, according to some embodiments.
7 is a flowchart illustrating a method for a device to display a space character, according to some embodiments.
8 is a diagram illustrating an example in which a device displays a blank character and recommends at least one pseudo morpheme to be positioned next to the displayed blank character, according to some embodiments.
9 is a diagram illustrating an example of a neural network according to some embodiments.
10 is a diagram illustrating an example in which displayed pseudo morphemes are distinguished to indicate whether there is a word to be recommended by the device according to some embodiments.
11 is a diagram illustrating an example in which a device recommends a pseudo morpheme in consideration of a user's frequency of use for each of the pseudo morphemes, according to some embodiments.
12 is a diagram illustrating an example in which a device recommends a pseudo morpheme in consideration of the type and order of at least one previously displayed word, according to some embodiments.
13 is a diagram illustrating an example in which a device recommends at least one word in consideration of a character input characteristic of a user, according to some embodiments.
14 is a block diagram of a device in accordance with some embodiments.
15 is a block diagram of a device according to another embodiment.
16 is a block diagram of a processor in accordance with some embodiments.
17 is a block diagram of a data learning unit according to some exemplary embodiments.
18 is a block diagram of a data recognition unit according to some exemplary embodiments.
19 is a diagram illustrating an example of learning and recognizing data by interworking with a device and a server according to some embodiments.
20 is a flow diagram of a device using a data recognition model in accordance with some embodiments.
21 to 23 are flowcharts of a network system using a data analysis model in accordance with some embodiments.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement them. However, the present invention may be embodied in several different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "electrically connected" with another element interposed therebetween. . In addition, when a part "includes" a certain component, this means that other components may be further included rather than excluding other components unless otherwise stated.

이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

도 1은 일부 실시예에 따른 디바이스가 사용자로부터 입력된 문자에 기초하여 추천 단어를 제공하는 예시를 나타내는 도면이다.1 is a diagram illustrating an example in which a device provides a recommended word based on a character input by a user, according to an exemplary embodiment.

도 1을 참조하면, 디바이스(1000)는 문자 입력 창 내에 문자를 입력하는 사용자 입력을 수신할 수 있으며, 입력된 문자에 기초하여 추천 단어를 제공할 수 있다. Referring to FIG. 1 , the device 1000 may receive a user input for inputting text in a text input window, and may provide a recommended word based on the input text.

디바이스(1000)가 입력된 문자에 기초하여 어절 단위로 추천 단어를 제공하는 경우, 디바이스(1000)는, 데이터베이스에 저장된 각 어절들의 사용 빈도수에 기초하여, 사용자로부터 입력된 문자를 포함하는 어절들을 추천할 수 있다. 이 경우, 각 어절 단위로 사용 빈도를 산출하기 때문에, 예를 들어, "사랑이", "사랑과", 및 "사랑만이"는 서로 다른 어절이므로, 세 어절 모두 "사랑"이라는 명사를 포함하더라도, "사랑이", "사랑과", 및 "사랑만이" 각각에 대한 사용 빈도는 낮게 산출될 수 있다. 이에 따라, 사용자가 "사랑"를 포함하는 표현을 빈번하게 사용하는 경우에도, "사랑"을 포함하는 어절이 우선적으로 추천되지 않을 수 있다. 예를 들어, "사과가"가 1000번, "사랑이"가 800번, "사과를"이 30번, "사랑과"가 700번, "사과는"이 20번, "사랑만이"가 500번 사용된 경우, 사용자는 "사랑"을 "사과"보다 더 빈번하게 사용하지만, 어절 단위로 산출되는 사용 빈도에 따라, "사과가", "사랑과", "사랑만이" 순으로 추천될 수 있다. 따라서, 디바이스(1000)가 사용자로부터 입력된 문자에 대한 추천 단어를 제공할 때, 어절보다 작은 단위로 추천 단어를 제공하는 방법이 필요하다.When the device 1000 provides the recommended word in word unit based on the input text, the device 1000 recommends the word including the text input by the user based on the frequency of use of each word stored in the database. can do. In this case, since the frequency of use is calculated for each word unit, for example, "love", "with love", and "only love" are different words, so even if all three words contain the noun "love" , "with love", "with love", and "only with love" can be calculated to have a low frequency of use. Accordingly, even when the user frequently uses an expression including “love”, a word including “love” may not be preferentially recommended. For example, "apple" is 1000 times, "love" is 800 times, "apple" is 30 times, "love" is 700 times, "apple" is 20 times, "love only" is 500 times. When used once, users use "love" more frequently than "apple", but depending on the frequency of use calculated in word units, "apple", "love", and "only love" may be recommended in that order. have. Accordingly, when the device 1000 provides a recommended word for a character input from a user, a method for providing the recommended word in units smaller than a word is needed.

일부 실시예에 따른 디바이스(1000)는, 사용자로부터 입력된 문자에 대하여 의사 형태소 단위로 먼저 추천함으로써, 서로 다른 뜻을 가지는 다양한 추천 단어들을 사용자에게 제공할 수 있다. 의사 형태소는, 뜻을 가지는 가장 작은 말의 단위를 의미할 수 있다. 예를 들어, 의사 형태소는, 뜻을 가지는 최소 단위의 명사를 포함할 수 있으며, 실시예에 따라 뜻을 가지는 복합명사도 하나의 의사 형태소로 분류될 수 있다. 예를 들어, "사랑", "사과", 및 "사람"은 서로 다른 뜻을 가지는 명사로서, 각각 하나의 의사 형태소가 될 수 있다. 또한, 단어는, 의사 형태소 및 어절을 포함하는 의미로 사용될 수 있다.The device 1000 according to some exemplary embodiments may provide various recommended words having different meanings to the user by first recommending the characters input by the user in units of pseudo morphemes. A pseudo morpheme may mean the smallest unit of speech having a meaning. For example, the pseudo morpheme may include a noun of a minimum unit having a meaning, and according to an embodiment, a compound noun having a meaning may also be classified as one pseudo morpheme. For example, "love", "apple", and "person" are nouns with different meanings, and each may be a pseudo-morpheme. Also, a word may be used in a meaning including a pseudo morpheme and a word word.

일부 실시예에 따른 디바이스(1000)는, 추천된 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력이 수신되면, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천함으로써, 사용자의 의도에 부합하는 추천 단어를 보다 용이하게 제공할 수 있다. When an input for selecting one from among at least one recommended pseudo morpheme is received, the device 1000 according to some embodiments recommends at least one word including the selected pseudo morpheme, and thus a recommended word matching the user's intention can be provided more easily.

또한, 일부 실시예에 따른 디바이스(1000)는, 문자 입력에 관한 다양한 컨텍스트 정보들을 활용하여, 추천할 적어도 하나의 의사 형태소 및 추천할 적어도 하나의 어절을 결정할 수 있으며, 공백 문자가 디스플레이되는 위치를 판단할 수 있다.In addition, the device 1000 according to some embodiments may determine at least one pseudo morpheme to be recommended and at least one word to be recommended by using various context information regarding character input, and may determine a position where a blank character is displayed. can judge

컨텍스트 정보는, 사용자가 과거에 입력한 문자에 관한 정보, 문자 입력 창 내에 기 디스플레이된 적어도 하나의 어절에 관한 정보, 및 사용자가 과거에 입력한 음성 데이터에 관한 정보 등을 포함할 수 있다. 사용자가 과거에 입력한 문자에 관한 정보는, 사용자가 과거에 빈번하게 사용한 의사 형태소, 어절에 관한 정보, 및 디바이스(1000)에 의해 추천된 의사 형태소들 중에서 사용자가 선택한 의사 형태소에 관한 정보를 포함할 수 있다. 기 디스플레이된 적어도 하나의 어절에 대한 정보는, 문자 입력 창 내에 기 디스플레이된 적어도 하나의 어절의 품사 및 문장 성분에 관련된 정보를 포함할 수 있다. 예를 들어, 기 디스플레이된 적어도 하나의 어절에 대한 정보는, 문자 입력 창에 기 디스플레이된 어절이 주어에 해당하는 어절인지, 주어와 동사에 해당하는 어절인지 나타내는 정보를 포함할 수 있으나, 이에 한정되지 않는다. The context information may include information on text input by the user in the past, information on at least one word previously displayed in the text input window, information on voice data input by the user in the past, and the like. Information on characters input by the user in the past includes information on pseudo morphemes and word words frequently used by the user in the past, and information on pseudo morphemes selected by the user from among pseudo morphemes recommended by the device 1000 . can do. The previously displayed information on the at least one word may include information related to the part-of-speech and sentence component of the at least one pre-displayed word in the text input window. For example, the information on at least one previously displayed word may include information indicating whether the previously displayed word in the text input window is a word corresponding to a subject or a word corresponding to a subject and a verb, but is limited thereto. doesn't happen

디바이스(1000)는, 스마트폰, 태블릿 PC, PC, 스마트 TV, 휴대폰, PDA(personal digital assistant), 랩톱, 미디어 플레이어, 마이크로 서버, GPS(global positioning system) 장치, 전자책 단말기, 디지털 방송용 단말기, 내비게이션, 키오스크, MP3 플레이어, 디지털 카메라, 가전기기 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수 있으나, 이에 제한되지 않는다. 또한, 디바이스(1000)는 통신 기능 및 데이터 프로세싱 기능을 구비한 시계, 안경, 헤어 밴드 및 반지 등의 웨어러블 디바이스일 수 있다. 그러나, 이에 제한되지 않으며, 디바이스(1000)는 사용자의 음성 입력을 수신하고, 사용자에게 답변 메시지를 제공할 수 있는 모든 종류의 기기를 포함할 수 있다.The device 1000 is a smart phone, a tablet PC, a PC, a smart TV, a mobile phone, a personal digital assistant (PDA), a laptop, a media player, a micro server, a global positioning system (GPS) device, an e-book terminal, a digital broadcasting terminal, It can be, but is not limited to, navigation, kiosks, MP3 players, digital cameras, consumer electronics and other mobile or non-mobile computing devices. Also, the device 1000 may be a wearable device such as a watch, glasses, a hair band, and a ring having a communication function and a data processing function. However, the present invention is not limited thereto, and the device 1000 may include any type of device capable of receiving a user's voice input and providing an answer message to the user.

또한, 디바이스(1000)는, 사용자가 과거에 입력한 문자에 관한 정보, 문자 입력 창 내에 기 디스플레이된 적어도 하나의 어절에 관한 정보, 및 사용자가 과거에 입력한 음성 데이터에 관한 정보 등을 포함하는 컨텍스트 정보를 이용하기 위하여, 소정의 네트워크를 통하여 서버 및 다른 장치와 통신할 수 있다. 이 경우, 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 이동 통신망(mobile radio communication network), 위성 통신망 및 이들의 상호 조합을 포함하며, 각 네트워크 구성 주체가 서로 원활하게 통신을 할 수 있도록 하는 포괄적인 의미의 데이터 통신망이며, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망을 포함할 수 있다. 무선 통신은 예를 들어, 무선 랜(Wi-Fi), 블루투스, 블루투스 저 에너지(Bluetooth low energy), 지그비, WFD(Wi-Fi Direct), UWB(ultra wideband), 적외선 통신(IrDA, infrared Data Association), NFC(Near Field Communication) 등이 있을 수 있으나, 이에 한정되는 것은 아니다.In addition, the device 1000 includes information on characters input by the user in the past, information on at least one word previously displayed in the text input window, and information on voice data input by the user in the past. In order to use the context information, it may communicate with a server and other devices through a predetermined network. In this case, the network includes a local area network (LAN), a wide area network (WAN), a value added network (VAN), a mobile radio communication network, a satellite communication network, and their mutual It is a data communication network in a comprehensive sense that includes a combination and enables each network constituent entity to communicate smoothly with each other, and may include a wired Internet, a wireless Internet, and a mobile wireless communication network. Wireless communication is, for example, wireless LAN (Wi-Fi), Bluetooth, Bluetooth low energy, Zigbee, WFD (Wi-Fi Direct), UWB (ultra wideband), infrared communication (IrDA, infrared Data Association) ), NFC (Near Field Communication), etc. may be there, but is not limited thereto.

도 2는 일부 실시예에 따른 디바이스(1000)가 추천 단어를 제공하는 방법을 나타내는 흐름도이다.2 is a flowchart illustrating a method for the device 1000 to provide a recommended word, according to some embodiments.

동작 S200 동작에서, 디바이스(1000)는 문자 입력 창 내에 문자를 입력하는 사용자 입력을 수신한다. 이때, 디바이스(1000)의 문자 입력 창은, 문자 메시지, 또는 SNS 메시지 등을 입력할 때 사용되는 창을 포함할 수 있으며, 입력되는 문자는 적어도 하나의 알파벳 또는 적어도 하나의 음절을 포함할 수 있다. In operation S200 , the device 1000 receives a user input for inputting text in the text input window. In this case, the text input window of the device 1000 may include a window used to input a text message or SNS message, and the input text may include at least one alphabet or at least one syllable. .

동작 S210 동작에서, 디바이스(1000)는 입력된 문자를 분석함으로써, 입력된 문자를 포함하는 적어도 하나의 의사 형태소(pseudo-morpheme)를 추천한다. 일부 실시예에 따른 디바이스(1000)는, 문자 입력에 관한 컨텍스트 정보를 이용하여, 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추천할 수 있다. 예를 들어, 디바이스(1000)는, 의사 형태소 각각에 대한 통상적인 사용 빈도에 관한 통계 데이터, 사용자가 과거에 입력한 문자들에 관한 정보, 디바이스(1000)에 의해 추천된 의사 형태소들 중에서 사용자가 선택한 의사 형태소에 관한 정보, 사용자가 과거에 입력한 음성 데이터에 관한 정보 등을 고려하여, 적어도 하나의 의사 형태소를 추천할 수 있다. In operation S210 , the device 1000 recommends at least one pseudo-morpheme including the input character by analyzing the input character. The device 1000 according to some embodiments may recommend at least one pseudo morpheme including the input text by using context information regarding text input. For example, the device 1000 may include statistical data on a typical frequency of use for each pseudo morpheme, information about characters input by the user in the past, and a user from among the pseudo morphemes recommended by the device 1000 . At least one pseudo morpheme may be recommended in consideration of information on the selected pseudo morpheme, information on voice data input by the user in the past, and the like.

동작 S220 동작에서, 디바이스(1000)는 추천된 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력에 응답하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천한다. In operation S220 , the device 1000 recommends at least one word including the selected pseudo morpheme in response to an input for selecting one from among the recommended at least one pseudo morpheme.

사용자는, 추천된 적어도 하나의 의사 형태소 중에서, 사용자가 문자 입력 창 내에 입력하려고 의도한 의사 형태소를 선택할 수 있다. 의사 형태소를 선택하는 입력이 수신됨에 따라, 디바이스(1000)는, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 이때, 디바이스(1000)는, 문자 입력에 관한 컨텍스트 정보를 이용하여 적어도 하나의 어절을 추천할 수 있다. 예를 들어, 디바이스(1000)는, 사용자가 과거에 입력한 문자에 관한 정보, 문자 입력 창 내에 기 디스플레이된 적어도 하나의 어절에 관한 정보, 및 사용자가 과거에 입력한 음성 데이터에 관한 정보 등을 고려하여, 적어도 하나의 어절을 추천할 수 있다. 선택된 의사 형태소가 명사인 경우, 의사 형태소를 포함하는 적어도 하나의 어절은, 명사에 조사가 결합된 형태일 수 있으나, 이에 한정되지 않는다. The user may select a pseudo morpheme that the user intends to input in the text input window from among the at least one recommended pseudo morpheme. As an input for selecting a pseudo morpheme is received, the device 1000 may recommend at least one word including the selected pseudo morpheme. In this case, the device 1000 may recommend at least one word by using context information regarding text input. For example, the device 1000 may store information on text input by the user in the past, information on at least one word previously displayed in the text input window, and information on voice data input by the user in the past. Taking this into account, at least one word word may be recommended. When the selected pseudo morpheme is a noun, at least one word including the pseudo morpheme may be a form in which a noun is combined with a proposition, but is not limited thereto.

또한, 디바이스(1000)는, 사용자의 문자 입력 특성에 기초하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 예를 들어, 디바이스(1000)는, 사용자가 빈번하게 사용하는 표현을 고려하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. Also, the device 1000 may recommend at least one word including the selected pseudo morpheme based on the character input characteristic of the user. For example, the device 1000 may recommend at least one word including the selected pseudo morpheme in consideration of an expression frequently used by the user.

또한, 디바이스(1000)는, 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 선택된 어절을 포함하는 적어도 하나의 다른 어절을 추천할 수 있다. 예를 들어, 디바이스(1000)는, 사용자가 과거에 입력한 문자에 관한 정보, 문자 입력 창 내에 기 디스플레이된 적어도 하나의 어절에 관한 정보, 및 사용자가 과거에 입력한 음성 데이터에 관한 정보 등을 고려하여, 적어도 하나의 다른 어절을 추천할 수 있다. 이때, 선택된 어절을 포함하는 적어도 하나의 다른 어절은, 선택된 어절에 다른 조사가 추가된 어절을 포함할 수 있으나, 이에 한정되지 않는다.Also, the device 1000 may recommend at least one other word including the selected word in response to an input for selecting one from among the at least one recommended word. For example, the device 1000 may store information on text input by the user in the past, information on at least one word previously displayed in the text input window, and information on voice data input by the user in the past. Taking this into account, at least one other word may be recommended. In this case, the at least one other word including the selected word may include a word in which another proposition is added to the selected word, but is not limited thereto.

S230 동작에서, 디바이스(1000)는, 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 선택된 어절을 문자 입력 창 내에 디스플레이한다.In operation S230 , the device 1000 displays the selected word in the text input window in response to an input for selecting one from among at least one word.

또한, 일부 실시예에 따른 디바이스(1000)는, 선택된 어절 다음에 공백 문자가 위치할 것인지 여부를 예측하고, 예측된 결과에 기초하여 선택된 어절과 공백 문자를 문자 입력 창 내에 함께 디스플레이할 수 있다. Also, the device 1000 according to some embodiments may predict whether a blank character will be positioned after the selected word, and display the selected word and blank character together in the text input window based on the predicted result.

상기에서는, 추천할 의사 형태소의 결정, 추천할 어절의 결정, 및 공백 문자가 디스플레이되는 위치의 결정이 각각 별개의 학습에 기초하여 수행되는 것으로 설명하였지만, 이에 제한되지 않는다. 추천할 의사 형태소의 결정, 추천할 어절의 결정, 및 공백 문자가 디스플레이되는 위치의 결정 중 적어도 둘 이상이 하나의 학습 모델에 의해 수행될 수 있다.In the above, it has been described that the determination of the pseudo morpheme to be recommended, the determination of the word to be recommended, and the determination of the position where the blank character is displayed are performed based on separate learning, but is not limited thereto. At least two or more of the determination of the pseudo morpheme to be recommended, the determination of the word to be recommended, and the determination of the position where the blank character is displayed may be performed by one learning model.

또한, 일부 실시예에 따른 디바이스(1000)는, 심층 신경망(Deep Neural Network)을 이용하여, 추천할 적어도 하나의 의사 형태소, 추천할 적어도 하나의 어절, 및 공백 문자가 디스플레이되는 위치에 대한 기준을 학습할 수 있다. In addition, the device 1000 according to some embodiments may use a deep neural network to determine at least one pseudo morpheme to be recommended, at least one word to be recommended, and a reference for a position where a blank character is displayed. can learn

도 3은 일부 실시예에 따른 디바이스가 추천할 적어도 하나의 의사 형태소를 결정하는 방법을 나타내는 흐름도이다.3 is a flowchart illustrating a method for a device to determine at least one pseudo morpheme to be recommended, according to some embodiments.

S300 동작에서, 디바이스(1000)는 문자 입력 창 내에 문자를 입력하는 사용자 입력을 수신할 수 있다. 예를 들어, 디바이스(1000)는, 문자 메시지 또는 SNS 메시지 등을 입력하는 창 내에 문자를 입력하는 사용자 입력을 수신할 수 있다. 이때, 입력되는 문자는, 적어도 하나의 알파벳 또는 적어도 하나의 음절을 포함할 수 있다. In operation S300 , the device 1000 may receive a user input for inputting text in the text input window. For example, the device 1000 may receive a user input for inputting a text in a window for inputting a text message or an SNS message. In this case, the input character may include at least one alphabet or at least one syllable.

S310 동작에서, 디바이스(1000)는, 사용자가 과거에 입력한 문자에 관한 정보를 수집할 수 있다. 예를 들어, 디바이스(1000)는, 사용자가 과거에 빈번하게 사용된 의사 형태소 및 어절 등에 대한 정보를 고려하여, 추천할 의사 형태소를 결정할 수 있다. In operation S310 , the device 1000 may collect information about characters input by the user in the past. For example, the device 1000 may determine a pseudo morpheme to be recommended in consideration of information on pseudo morphemes and words frequently used by the user in the past.

S320 동작에서, 디바이스(1000)는, 데이터베이스에 저장된 의사 형태소 각각의 사용 빈도에 관한 일반적인 통계 데이터를 수집할 수 있다. 디바이스(1000)는, 의사 형태소 각각의 사용 빈도에 관한 일반적인 통계 데이터를 고려하여, 사용 빈도가 높은 의사 형태소를 추천할 의사 형태소로 결정할 수 있다. In operation S320 , the device 1000 may collect general statistical data regarding the frequency of use of each pseudo morpheme stored in the database. The device 1000 may determine a pseudo morpheme with a high frequency of use as a pseudo morpheme to be recommended in consideration of general statistical data regarding the frequency of use of each pseudo morpheme.

S330 동작에서, 디바이스(1000)는, 사용자가 과거에 입력한 음성 데이터에 관한 정보를 수집할 수 있다. 디바이스(1000)는, 다양한 자연어 해석 기법을 이용하여, 마이크를 통해 입력된 사용자의 음성 데이터를 해석할 수 있으며, 해석된 음성 데이터에 대한 정보를 고려하여 추천 단어를 결정할 수 있다.In operation S330 , the device 1000 may collect information about voice data input by the user in the past. The device 1000 may interpret the user's voice data input through the microphone using various natural language interpretation techniques, and may determine a recommended word in consideration of information on the analyzed voice data.

도 3에서는, 편의상, 디바이스(1000)가 사용자가 과거에 입력한 문자에 관한 정보, 의사 형태소 각각의 사용 빈도에 관한 일반적인 통계 데이터, 사용자가 과거에 입력한 음성 데이터에 관한 정보들을 순차적으로 수집하는 것으로 설명하였으나, 디바이스(1000)는 상술한 정보들을 병렬적으로 수집하고, 수집된 정보들을 이용하여, 추천할 의사 형태소를 결정하는 방법을 학습할 수 있다. In FIG. 3 , for convenience, the device 1000 sequentially collects information on characters input by the user, general statistical data on the frequency of use of each pseudo morpheme, and information on voice data input by the user in the past. However, the device 1000 may learn a method of collecting the above-described information in parallel and determining a pseudo morpheme to be recommended by using the collected information.

S340 동작에서, 디바이스(1000)는, 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추천할 수 있다.In operation S340 , the device 1000 may recommend at least one pseudo morpheme including the input character.

도 4는 일부 실시예에 따른 디바이스가 추천 단어를 결정하는 방법을 설명하기 위한 도면이다.4 is a diagram for describing a method of determining, by a device, a recommended word, according to some embodiments.

일부 실시예에 따른 디바이스(1000)는, 사용자로부터 입력된 문자를 분석함으로써, 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추천할 수 있다. 디바이스(1000)는, 의사 형태소들을 포함하는 데이터베이스에서, 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추출할 수 있다. 디바이스(1000)는, 문자 입력에 관한 다양한 컨텍스트 정보들을 고려하여, 데이터베이스로부터 추출된 적어도 하나의 의사 형태소 중에서 추천할 적어도 하나의 의사 형태소를 결정할 수 있다. 예를 들어, 도 4를 참조하면, 디바이스(1000)는, 사용자가 과거에 입력한 문자에 관한 정보(410), 의사 형태소 각각의 사용 빈도에 관한 일반적인 통계 데이터(411), 사용자가 과거에 입력한 음성 데이터에 관한 정보(412) 등을 고려하여, 추천할 적어도 하나의 의사 형태소를 결정할 수 있다. The device 1000 according to some embodiments may recommend at least one pseudo morpheme including the input character by analyzing the character input by the user. The device 1000 may extract at least one pseudo morpheme including an input character from a database including the pseudo morphemes. The device 1000 may determine at least one pseudo morpheme to be recommended from among at least one pseudo morpheme extracted from the database in consideration of various context information regarding text input. For example, referring to FIG. 4 , the device 1000 includes information 410 on characters input by the user in the past, general statistical data 411 on the frequency of use of each pseudo morpheme, and information on characters input by the user in the past. At least one pseudo morpheme to be recommended may be determined in consideration of the information 412 on one piece of voice data.

디바이스(1000)는, 사용자가 과거에 입력한 문자에 관한 정보(410), 의사 형태소 각각의 사용 빈도에 관한 일반적인 통계 데이터(411), 사용자가 과거에 입력한 음성 데이터에 관한 정보(412) 등을 이용하여, 추천할 의사 형태소를 결정하는 기준, 추천할 적어도 하나의 어절을 결정하는 기준, 및 공백 문자가 디스플레이되는 위치를 결정하는 기준을 학습할 수 있다. 예를 들어, 어떠한 의사 형태소를 추천할 것인지, 어떠한 어절을 추천할 것인지, 및 공백 문자가 어느 위치에 디스플레이되어야 하는지에 대한 판단은, 순환형 신경망(RNN, Recurrent Neural Network)을 포함하는 심층 신경망(Deep Neural Network) 기술에 따른 학습에 기초하여 수행될 수 있다. The device 1000 includes information 410 on characters input by the user in the past, general statistical data 411 on the frequency of use of each pseudo morpheme, information 412 on voice data input by the user in the past, and the like. It is possible to learn a criterion for determining a pseudo morpheme to be recommended, a criterion for determining at least one word to be recommended, and a criterion for determining a position at which a blank character is displayed. For example, the determination of which pseudo morpheme to recommend, which word to recommend, and at which position the blank character should be displayed, is performed by a deep neural network including a Recurrent Neural Network (RNN) ( Deep Neural Network) may be performed based on learning according to the technology.

도 5a 및 도 5b는 일부 실시예에 따른 디바이스가 의사 형태소를 추천하는 예시를 나타내는 도면이다.5A and 5B are diagrams illustrating examples in which a device recommends a pseudo morpheme according to some embodiments.

도 5a를 참조하면, 예를 들어, 사용자가 디바이스(1000)의 문자 입력 창(500) 내에 "사"라는 문자를 입력한 경우에, 디바이스(1000)는 "사"를 포함하는 의사 형태소로서 "사랑", "사과", 및 "사장"을 추천(501)할 수 있다. 이때, 추천되는 적어도 하나의 의사 형태소는, 사용자로부터 입력된 문자가 순환형 신경망(RNN, Recurrent Neural Network)에 입력될 때 출력되는 결과일 수 있다. 예를 들어, 디바이스(1000)는, 사용자가 과거에 입력한 문자에 관한 정보, 각 의사 형태소의 사용 빈도에 대한 통상적인 통계 데이터, 및 사용자가 과거에 입력한 음성 데이터에 관한 정보 등을 고려하여, "사"를 포함하는 적어도 하나의 의사 형태소를 추천할 수 있다. "사"를 포함하는 다양한 의사 형태소들 중에서 어떤 의사 형태소가 추천될 것인지는, 기 설정된 기준에 따른 학습에 기초하여 결정될 수 있다. Referring to FIG. 5A , for example, when the user inputs the character “four” into the character input window 500 of the device 1000, the device 1000 displays “four” as a pseudo morpheme including “four”. Love", "apology", and "the boss" may be recommended 501 . In this case, the recommended at least one pseudo morpheme may be a result output when a character input from the user is input to a recurrent neural network (RNN). For example, the device 1000 considers information on characters input by the user in the past, general statistical data on the frequency of use of each pseudo morpheme, information on voice data input by the user in the past, and the like. , at least one pseudo morpheme including "four" may be recommended. Which pseudo morpheme is to be recommended among various pseudo morphemes including "four" may be determined based on learning according to a preset criterion.

일부 실시예에 따른 디바이스(1000)는, 추천된 적어도 하나의 의사 형태소를 문자 입력 창(500) 외부에 디스플레이할 수 있다. 사용자는, 추천된 적어도 하나의 의사 형태소 중에서 사용자가 의도한 하나의 의사 형태소를 선택할 수 있다. 예를 들어, 도 5a에 도시된 바와 같이, 사용자는 추천된 3개의 의사 형태소 중에서 "사람"을 선택(502)할 수 있다. The device 1000 according to some embodiments may display at least one recommended pseudo morpheme outside the text input window 500 . The user may select one pseudo morpheme intended by the user from among the at least one recommended pseudo morpheme. For example, as shown in FIG. 5A , the user may select 502 “person” from among the three recommended pseudo morphemes.

일부 실시예에 따른 디바이스(1000)는, 적어도 하나의 의사 형태소 중에서 하나를 선택하는 사용자 입력에 응답하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 이때, 추천되는 적어도 하나의 어절은, 선택된 의사 형태소가 순환형 신경망(RNN, Recurrent Neural Network)에 입력될 때 출력되는 결과일 수 있다. 예를 들어, 디바이스(1000)는, 사용자가 과거에 입력한 문자에 관한 정보, 선택된 의사 형태소를 포함하는 각 어절에 대한 통상적인 통계 데이터, 및 사용자가 과거에 입력한 음성 데이터에 관한 정보 등을 고려하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 의사 형태소가 소정의 뜻을 가지는 명사인 경우, 의사 형태소를 포함하는 어절은, 명사에 조사가 추가된 형태일 수 있다. The device 1000 according to some embodiments may recommend at least one word including the selected pseudo morpheme in response to a user input for selecting one from among at least one pseudo morpheme. In this case, the recommended at least one word may be a result output when the selected pseudo morpheme is input to a recurrent neural network (RNN). For example, the device 1000 may store information on characters input by the user in the past, general statistical data for each word including the selected pseudo morpheme, and information on voice data input by the user in the past. In consideration of this, at least one word including the selected pseudo morpheme may be recommended. When the pseudo morpheme is a noun having a predetermined meaning, a word including the pseudo morpheme may have a form in which a proposition is added to the noun.

예를 들어, 도 5a를 참조하면, "사람"을 선택하는 입력에 응답하여, 디바이스(1000)는 "사람"을 포함하는 적어도 하나의 어절을 추천할 수 있다. 이때, 추천되는 어절은, "사람이", "사람을", "사람과"와 같이 "사람"에 조사가 추가된 형태일 수 있으나, 이에 한정되지 않는다.For example, referring to FIG. 5A , in response to an input of selecting “person”, the device 1000 may recommend at least one word including “person”. In this case, the recommended word may be a form in which a proposition is added to “person” such as “a person”, “a person”, and “with a person”, but is not limited thereto.

또한, 일부 실시예에 따른 디바이스(1000)는, 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 선택된 어절을 포함하는 적어도 하나의 다른 어절을 추천할 수 있다. 예를 들어, 명사에 둘 이상의 조사가 연결되어 하나의 어절을 구성할 수 있다. 한글의 경우, 명사(예를 들어, "사랑")와 조사(예를 들어, "만")가 연결되어 형성된 하나의 어절(예를 들어,"사랑만")에 다른 연결 어미(예를 들어, "큼")가 추가적으로 연결되어, 다른 어절(예를 들어, "사랑만큼")이 형성될 수 있다. 이에 따라, 디바이스(1000)에 의해 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력이 수신되면, 디바이스(1000)는, 선택된 어절을 포함하는 적어도 하나의 다른 어절을 추천할 수 있다. 예를 들어, 도 5b를 참조하면, 사용자는, 디바이스(1000)에 의해 추천된 어절인 "사람이", "사람을", 및 "사람과" 중에서, "사람과"를 선택(512)할 수 있다. 이때, 디바이스(1000)는, "사람과"를 포함하는 적어도 하나의 다른 어절로서, "사람과의" 및 "사람과는"을 추천(521)할 수 있다. 디바이스(1000)는, 추천된 "사람과의" 및 "사람과는"을 문자 입력 창(500) 외부에 표시할 수 있다. Also, the device 1000 according to some embodiments may recommend at least one other word including the selected word in response to an input for selecting one from among the at least one recommended word. For example, two or more prepositions may be connected to a noun to form one word. In the case of Hangul, one word formed by connecting a noun (eg, "love") and a proposition (eg, "only") is added to another connecting ending (eg, "only love"). , "great") may be additionally connected to form another word (eg, "as much as love"). Accordingly, when an input for selecting one word from among at least one word recommended by the device 1000 is received, the device 1000 may recommend at least one other word including the selected word. For example, referring to FIG. 5B , the user may select ( 512 ) “with a person” from among the words “a person”, “a person”, and “with a person” recommended by the device 1000 . can In this case, the device 1000 may recommend ( 521 ) “with a person” and “with a person” as at least one other word including “with a person”. The device 1000 may display the recommended “with a person” and “with a person” outside the text input window 500 .

일 실시예에 따른 디바이스(1000)는, 문자 입력 창(500) 내에 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 먼저 추천하고, 추천된 적어도 하나의 의사 형태소 중에서 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 이에 따라, 디바이스(1000)는, 어절 단위로 추천 단어를 제공하는 경우보다, 데이터베이스에 저장해야 하는 데이터의 양을 줄일 수 있다. 또한, 디바이스(1000)는, 의사 형태소 단위로 추천 단어를 제공한 다음에 어절 단위로 추천 단어를 제공함으로써, 사용자의 의도에 부합하는 추천 단어를 보다 효과적으로 제공할 수 있다.The device 1000 according to an embodiment first recommends at least one pseudo morpheme including a character input into the text input window 500 , and at least one pseudo morpheme including a selected pseudo morpheme from among the recommended at least one pseudo morpheme. I can recommend the word of . Accordingly, the device 1000 may reduce the amount of data to be stored in the database compared to the case where the recommended word is provided in units of words. In addition, the device 1000 may more effectively provide the recommended word meeting the user's intention by providing the recommended word in units of pseudo morphemes and then in units of words.

도 6a 및 도 6b는 일부 실시예에 따른 디바이스가 적어도 하나의 의사 형태소를 추천하는 예시를 나타내는 도면이다.6A and 6B are diagrams illustrating an example in which a device recommends at least one pseudo morpheme, according to some embodiments.

영어는, 한글과 달리, 일반적으로 단어 단위로 띄어 쓴다. 따라서, 영어의 경우, 더 이상 나누어질 수 없는 단위의 명사, 형용사, 부사, 및 동사 원형 등이 하나의 의사 형태소가 될 수 있다. 예를 들어, 의사 형태소가 동사 원형(예를 들어, "say")인 경우, 의사 형태소를 포함하는 하나의 어절은, 동사의 변형된 형태(예를 들어, "said", "says", "saying" 등)를 의미할 수 있으나, 이에 한정되지 않는다. Unlike Hangul, English is usually written with a space between words. Accordingly, in the case of English, a noun, an adjective, an adverb, and a verb prototype of a unit that cannot be further divided may be one pseudo morpheme. For example, if the pseudo-morpheme is a verb prototype (eg, "say"), one word containing the pseudo-morpheme is a modified form of the verb (eg, "said", "says", " saying", etc.), but is not limited thereto.

도 6a를 참조하면, 예를 들어, 사용자가 디바이스(1000)의 문자 입력 창(600)에 "wa"를 입력한 경우에, 디바이스(1000)는 "wa"를 포함하는 적어도 하나의 의사 형태소로서, "wait", "want", 및 "water"를 추천(601)할 수 있다. Referring to FIG. 6A , for example, when the user inputs “wa” into the character input window 600 of the device 1000 , the device 1000 is configured as at least one pseudo morpheme including “wa”. , “wait”, “want”, and “water” may be recommended 601 .

디바이스(1000)는, 추천된 적어도 하나의 의사 형태소를 문자 입력 창 외부에 디스플레이할 수 있다. 사용자는, 추천된 적어도 하나의 의사 형태소 중에서 사용자가 의도한 하나의 의사 형태소를 선택할 수 있다. 하나의 의사 형태소를 선택하는 입력에 응답하여, 디바이스(1000)는 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 예를 들어, 도 6a에 도시된 바와 같이, 사용자는 추천된 3개의 의사 형태소 "wait", "want", 및 "water" 중에서 "wait"를 선택할 수 있다. 디바이스(1000)는, "wait"를 선택하는 입력에 응답하여, "wait"를 포함하는 적어도 하나의 어절을 추천(611)할 수 있다. 이때, 추천되는 어절은, 도 6a에 도시된 바와 같이, "wait", "waiting", "waited"와 같이, 동사 원형인 "wait"가 변형된 형태일 수 있으나, 이에 한정되지 않는다. 예를 들어, 의사 형태소가 명사(예를 들어, "child")일 때, 추천되는 어절은 의사 형태소로부터 파생된 명사들(예를 들어, "child", "children", "childhood")을 포함할 수 있다.The device 1000 may display at least one recommended pseudo morpheme outside the text input window. The user may select one pseudo morpheme intended by the user from among the at least one recommended pseudo morpheme. In response to an input of selecting one pseudo morpheme, the device 1000 may recommend at least one word including the selected pseudo morpheme. For example, as shown in FIG. 6A , the user may select “wait” from among the three recommended pseudo morphemes “wait”, “want”, and “water”. The device 1000 may recommend ( 611 ) at least one word including “wait” in response to an input of selecting “wait”. In this case, as shown in FIG. 6A , the recommended word may be a modified form of “wait,” which is the original verb, such as “wait,” “waiting,” and “waited,” but is not limited thereto. For example, when the pseudo morpheme is a noun (eg "child"), the recommended word includes nouns derived from the pseudo morpheme (eg, "child", "children", "childhood") can do.

또한, 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 디바이스(1000)는, 선택된 어절을 포함하는 적어도 하나의 다른 어절을 추천할 수 있다. 예를 들어, 도 6b를 참조하면, 사용자가 문자 입력 창 내에 "mea"를 입력한 경우, 디바이스(1000)는 "mea"를 포함하는 의사 형태소로서 "meaning", "meager", "meadow"를 추천할 수 있다.Also, in response to an input of selecting one of the at least one recommended word, the device 1000 may recommend at least one other word including the selected word. For example, referring to FIG. 6B , when the user inputs “mea” into the text input window, the device 1000 selects “meaning”, “meager”, and “meadow” as pseudo morphemes including “mea”. can recommend

또한, 추천된 의사 형태소 중에서, "meaning"을 선택하는 입력에 응답하여, 디바이스(1000)는, "meaning"을 포함하는 어절로서, "meaningless" 및 "meaningful"을 추천(631)할 수 있다. 그리고, 사용자가 추천된 어절 중에서 "meaningless"를 선택함에 따라, 디바이스(1000)는 "meaningless"를 포함하는 "meaninglessness" 및 "meaninglessly"를 더 추천(641)할 수 있다. 이에 따라, 디바이스(1000)는, 사용자로부터 입력된 문자에 기초하여, 적어도 하나의 의사 형태소를 추천함으로써, 사용자의 의도에 부합하는 의사 형태소를 제공할 가능성을 높일 수 있다. Also, in response to an input of selecting “meaning” from among the recommended pseudo morphemes, the device 1000 may recommend 631 “meaningless” and “meaningful” as words including “meaning”. And, as the user selects “meaningless” from among the recommended words, the device 1000 may further recommend 641 “meaninglessness” and “meaninglessly” including “meaningless”. Accordingly, the device 1000 may recommend at least one pseudo morpheme based on a character input by the user, thereby increasing the possibility of providing a pseudo morpheme that meets the user's intention.

도 7은 일부 실시예에 따른 디바이스(1000)가 공백 문자를 디스플레이하는 방법을 나타내는 흐름도이다.7 is a flowchart illustrating a method of displaying a space character by the device 1000 according to some exemplary embodiments.

일부 실시예에 따른 디바이스(1000)는, 문자 입력에 관한 컨텍스트 정보에 기초하여, 추천된 적어도 하나의 어절 중에서 선택된 어절의 다음에 공백 문자가 위치할 것인지 여부를 예측할 수 있다. 디바이스(1000)는, 예를 들어, 디바이스(1000)는, 사용자가 과거에 입력한 문자에 관한 정보, 각 의사 형태소에 대한 일반적인 사용 빈도를 나타내는 통계 데이터, 및 사용자가 과거에 입력한 음성 데이터에 관한 정보 등을 이용하여, 추천된 적어도 하나의 어절 중에서 선택된 어절의 다음에 공백 문자가 위치할 것인지 여부를 예측할 수 있다.The device 1000 according to some embodiments may predict whether a blank character will be positioned next to a word selected from among at least one recommended word based on context information regarding text input. The device 1000 may, for example, store information on characters input by the user in the past, statistical data indicating the general frequency of use for each pseudo morpheme, and voice data input by the user in the past. It is possible to predict whether a blank character will be positioned next to a word selected from among at least one recommended word by using the information about the word.

S700 동작에서, 디바이스(1000)는 문자를 입력하는 사용자 입력을 수신할 수 있다. 이때, 입력되는 문자는, 적어도 하나의 알파벳 또는 적어도 하나의 음절을 포함할 수 있다.In operation S700 , the device 1000 may receive a user input for inputting text. In this case, the input character may include at least one alphabet or at least one syllable.

S710 동작에서, 디바이스(1000)는 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추천할 수 있다. S700 동작 및 S710 동작에 대해서는, 도 2의 S200 동작 및 S210 동작에 대응되므로, 자세한 설명은 생략한다.In operation S710 , the device 1000 may recommend at least one pseudo morpheme including the input character. Operations S700 and S710 correspond to operations S200 and S210 of FIG. 2 , and thus detailed descriptions thereof will be omitted.

S720 동작에서, 디바이스(1000)는 추천된 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력에 응답하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 사용자는, 디바이스(1000)로부터 추천된 적어도 하나의 의사 형태소 중에서, 사용자가 의도한 의사 형태소를 선택할 수 있다. 이에 따라, 디바이스(1000)는, 사용자에 의해 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 이때, 의사 형태소가 명사일 때, 의사 형태소를 포함하는 적어도 하나의 어절은, 명사에 조사가 연결된 형태일 수 있다.In operation S720 , the device 1000 may recommend at least one word including the selected pseudo morpheme in response to an input for selecting one from among the at least one recommended pseudo morpheme. The user may select a pseudo morpheme intended by the user from among at least one pseudo morpheme recommended by the device 1000 . Accordingly, the device 1000 may recommend at least one word including the pseudo morpheme selected by the user. In this case, when the pseudo morpheme is a noun, at least one word including the pseudo morpheme may have a form in which a proposition is connected to the noun.

S730 동작에서, 디바이스(1000)는, 추천된 적어도 하나의 어절 중에서 하나를 선택하는 사용자 입력을 수신할 수 있다. 사용자는, 추천된 적어도 하나의 어절 중에서, 사용자가 디바이스(1000)의 문자 입력 창에 입력하고자 의도한 어절을 선택할 수 있다.In operation S730, the device 1000 may receive a user input for selecting one from among at least one recommended word. The user may select a word that the user intends to input into the text input window of the device 1000 from among at least one recommended word.

S740 동작에서, 디바이스(1000)는, 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 선택된 어절 다음에 공백 문자가 위치할 것인지 여부를 예측할 수 있다. 예를 들어, 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력이 수신되고, 선택된 어절 다음에 공백 문자가 나올 가능성이 높을 때, 디바이스(1000)는 선택된 어절 다음에 공백 문자가 위치할 것이라고 예측할 수 있다. 예를 들어, 추천된 적어도 하나의 어절 중에서 "올림픽에"라는 어절이 사용자에 의해 선택된 경우, 사용자가 의도한 표현은 "올림픽에서" 또는 "올림픽에서는" 등과 같이, "올림픽에"를 포함하는 다른 어절일 수 있다. 그러나, "사과가"라는 어절이 사용자에 의해 선택되면, "사과가"를 포함하는 다른 어절보다 공백 문자가 위치할 가능성이 높을 수 있다. 따라서, 디바이스(1000)는, 사용자가 과거에 입력한 문자 데이터들에 관한 정보, 일반적으로 사용 빈도가 높은 어절들에 대한 통계 데이터 등에 기초하여, 선택된 어절 다음에 공백 문자가 위치할 것인지 여부를 예측할 수 있다. 이때, 선택된 어절 다음에 공백 문자가 위치할 것인지 여부에 관한 예측은, 심층 신경망(Deep Neural Network) 기술에 따른 학습에 기초하여 수행될 수 있다.In operation S740 , the device 1000 may predict whether a blank character will be positioned after the selected word in response to an input for selecting one from among at least one recommended word. For example, when an input for selecting one from among at least one recommended word is received and a space character is highly likely to appear after the selected word, the device 1000 may predict that a space character will be positioned after the selected word. have. For example, when the word "to the Olympics" is selected by the user from among the at least one recommended word, the user's intended expression is another word including "at the Olympics", such as "at the Olympics" or "at the Olympics". it can be idiotic However, if the word "apology" is selected by the user, there may be a higher probability that a space character is positioned than other words including "apology". Accordingly, the device 1000 may predict whether or not a blank character will be positioned after the selected word based on information on text data input by the user in the past, statistical data on words with high frequency of use in general, and the like. can In this case, the prediction regarding whether a blank character will be positioned after the selected word may be performed based on learning according to a deep neural network technique.

S750 동작에서, 디바이스(1000)는, 예측 결과에 기초하여, 선택된 어절 및 공백 문자를 문자 입력 창 내에 디스플레이할 수 있다. 예를 들어, 선택된 어절 다음에 공백 문자가 위치할 가능성이 높다고 판단된 경우, 디바이스(1000)는 선택된 어절과 공백 문자를 문자 입력 창 내에 순차적으로 디스플레이할 수 있다. In operation S750 , the device 1000 may display the selected word and blank character in the text input window based on the prediction result. For example, when it is determined that a blank character is highly likely to be positioned after the selected word, the device 1000 may sequentially display the selected word and the blank character in the text input window.

또한, 일부 실시예에 따른 디바이스(1000)는, 공백 문자가 문자 입력 창 내에 디스플레이됨에 따라, 문자 입력 창 내에 디스플레이된 적어도 하나의 어절에 기초하여, 공백 문자 다음에 위치할 적어도 하나의 의사 형태소를 추천할 수 있다.Also, as the blank character is displayed in the character input window, the device 1000 according to some embodiments may select at least one pseudo morpheme to be positioned after the blank character based on at least one word displayed in the character input window. can recommend

도 8은 일부 실시예에 따라, 공백 문자를 디스플레이하고, 디스플레이된 공백 문자 다음에 위치할 적어도 하나의 의사 형태소를 추천하는 예시를 나타내는 도면이다.8 is a diagram illustrating an example of displaying a blank character and recommending at least one pseudo morpheme to be positioned after the displayed blank character, according to some embodiments.

일부 실시예에 따른 디바이스(1000)는 사용자로부터 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추천하고, 추천된 적어도 하나의 의사 형태소 중에서 하나를 선택하는 사용자 입력에 응답하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 이때, 사용자가 추천된 적어도 하나의 어절 중에서 하나를 선택한 경우, 디바이스(1000)는 선택된 어절 다음에 공백 문자가 위치하는지 여부를 예측할 수 있다. 디바이스(1000)가 선택된 어절 다음에 공백 문자가 위치할 것이라고 예측한 경우, 디바이스(1000)는 선택된 어절과 공백 문자를 문자 입력 창에 순차적으로 디스플레이할 수 있다. 또한, 공백 문자가 문자 입력 창에 디스플레이됨에 따라, 디바이스(1000)는 공백 문자 다음에 위치할 적어도 하나의 의사 형태소를 추천할 수 있다.The device 1000 according to some embodiments recommends at least one pseudo morpheme including a character input by the user, and includes the selected pseudo morpheme in response to a user input for selecting one from among the recommended at least one pseudo morpheme At least one word can be recommended. In this case, when the user selects one of at least one recommended word, the device 1000 may predict whether a blank character is positioned after the selected word. When the device 1000 predicts that a blank character will be located after the selected word, the device 1000 may sequentially display the selected word and the blank character on the character input window. Also, as the blank character is displayed on the character input window, the device 1000 may recommend at least one pseudo morpheme to be positioned after the blank character.

예를 들어, 도 8을 참조하면, 문자 입력 창 내에 "사ㄹ"를 입력하는 사용자 입력을 수신함에 따라, 디바이스(1000)는, "사랑", "사람", 및 "사려"를 추천(801)할 수 있다. 그리고, "사랑"을 선택하는 사용자 입력이 수신됨에 따라, 디바이스(1000)는 "사랑"을 포함하는 적어도 하나의 어절로서, "사랑은", "사랑이", 및 "사랑과"를 추천할 수 있다. 이때, "사랑은"을 선택하는 사용자 입력이 수신될 때, 디바이스(1000)는, "사랑은" 다음에 공백 문자가 위치할 것인지 여부를 예측할 수 있다. 디바이스(1000)는, "사랑은"이라는 어절을 포함하는 다른 어절이 있는지 여부, "사랑은"을 포함하는 다른 어절의 사용 빈도, 사용자의 문자 입력 특성, "사랑은" 다음에 공백 문자가 위치하는 경우에 대한 통계 데이터에 관한 정보들을 수집할 수 있다. 디바이스(1000)는, 수집된 정보들에 기초하여, 공백 문자를 디스플레이할 위치를 학습할 수 있다. 예를 들어, 도 8을 참조하면, 디바이스(1000)가 "사랑은" 다음에 공백 문자가 위치할 것이라고 예측한 경우, 디바이스(1000)는 "사랑은" 및 공백 문자를 문자 입력 창에 순차적으로 디스플레이(811)할 수 있다. For example, referring to FIG. 8 , upon receiving a user input for inputting “saree” in the text input window, the device 1000 recommends “love”, “person”, and “consideration 801” (801 ). )can do. And, as a user input for selecting “love” is received, the device 1000 may recommend “love”, “love”, and “with love” as at least one word including “love”. have. In this case, when a user input for selecting “I love you” is received, the device 1000 may predict whether a blank character will be positioned after “I love you”. The device 1000 determines whether there is another word including the word "love", the frequency of use of another word including "love", the user's character input characteristics, and a space character after "love" It is possible to collect information about statistical data about the case. The device 1000 may learn a position to display a blank character based on the collected information. For example, referring to FIG. 8 , when the device 1000 predicts that a blank character will be located after “I love you”, the device 1000 sequentially displays “I love you” and a blank character in the character input window. Display 811 may be performed.

일부 실시예에 따른 디바이스(1000)는, 공백 문자가 문자 입력 창에 디스플레이됨에 따라, 공백 문자 다음에 위치할 적어도 하나의 의사 형태소를 추천할 수 있다. 도 8을 참조하면, 공백 문자가 문자 입력 창에 디스플레이된 경우, 디바이스(1000)는 "사랑은" 다음에 위치할 적어도 하나의 의사 형태소로서, "아프다", "행복하다", "설레다" 등을 추천(821)할 수 있다. The device 1000 according to some embodiments may recommend at least one pseudo morpheme to be positioned after the blank character as the blank character is displayed on the character input window. Referring to FIG. 8 , when a blank character is displayed on the character input window, the device 1000 indicates that at least one pseudo morpheme to be positioned next to “love”, such as “sick”, “happy”, “excited”, etc. can be recommended (821).

도 9는 일부 실시예에 따른 신경망의 예시를 나타내는 도면이다.9 is a diagram illustrating an example of a neural network according to some embodiments.

일부 실시예에 따른 디바이스(1000)는, 신경망(Neural Network)을 이용하여, 기 추천된 어절(Wt-1)의 다음에 추천할 어절(Wt)을 결정하고, 공백 문자가 디스플레이될 것인지 여부를 결정할 수 있다. The device 1000 according to some embodiments determines, using a neural network, a word (W t ) to be recommended next to a previously recommended word (W t -1 ), and determines whether a blank character is to be displayed can decide whether

도 9를 참조하면, 디바이스(1000)에 의해 기 추천된 제1 어절(Wt-1)(910)이 신경망(Neural Network)(900)에 입력될 때, 신경망(Neural Network) 기술에 따른 학습에 기초하여, 제1 어절(Wt-1)의 다음에 위치할 제2 어절(Wt)에 관한 확률 분포(920) 및 제2 어절(Wt)의 다음에 위치할 공백 문자에 관한 확률 분포(921)가 출력될 수 있다. 예를 들어, 제2 어절(Wt)에 관한 확률 분포(920)는, 제1 어절(Wt-1)을 포함하는 각 어절에 대하여, 제1 어절(Wt-1)의 다음에 위치할 확률을 나타내는 확률 분포를 의미할 수 있다. 또한, 제2 어절(Wt)의 다음에 위치할 공백 문자에 관한 확률 분포(921)는, 제2 어절(Wt) 다음에 공백 문자가 위치할 확률을 나타내는 분포를 의미할 수 있다. 디바이스(1000)는, 신경망(900)의 출력 결과에 기초하여, 제1 어절(Wt-1)을 포함하는 어절들 중에서 확률 분포가 높은 어절을 제1 어절(Wt-1) 다음에 위치할 제2 어절(Wt)로 결정할 수 있다. Referring to FIG. 9 , when a first word (W t-1 ) 910 previously recommended by the device 1000 is input to a neural network 900 , learning according to a neural network technology Based on , the probability distribution 920 for the second word W t to be positioned next to the first word W t-1 and the probability to the blank character to be positioned next to the second word W t . A distribution 921 may be output. For example, the probability distribution 920 for the second word W t is located next to the first word W t- 1 for each word including the first word W t-1 . It may mean a probability distribution indicating the probability of doing so. Also, the probability distribution 921 regarding the blank character to be positioned next to the second word W t may mean a distribution indicating the probability that the blank character will be positioned after the second word W t . Based on the output result of the neural network 900 , the device 1000 places a word having a high probability distribution among words including the first word W t - 1 after the first word W t-1 It can be determined as the second word (W t ) to be performed.

신경망(900)은 하나의 어절이 입력될 때마다, 학습 결과를 업데이트할 수 있다. 예를 들어, 신경망(900)의 제2 어절(Wt)에 관한 확률 분포(920) 및 공백 문자에 관한 확률 분포(921)는, 신경망(900)의 학습 결과를 업데이트하는데 다시 이용될 수 있다.The neural network 900 may update a learning result whenever one word is input. For example, the probability distribution 920 for the second word W t of the neural network 900 and the probability distribution 921 for the blank character may be used again to update the learning result of the neural network 900 . .

도 10은 일부 실시예에 따른 디바이스가 추천할 어절이 있는지 여부가 나타나도록, 디스플레이된 의사 형태소를 구별되게 표시하는 예시를 나타내는 도면이다.10 is a diagram illustrating an example in which displayed pseudo morphemes are distinguished to indicate whether there is a word to be recommended by the device according to some embodiments.

일부 실시예에 따른 디바이스(1000)는, 사용자로부터 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추천할 때, 의사 형태소를 포함하는 추천할 어절이 있는지 여부가 나타나도록, 추천된 의사 형태소를 구별되게 표시할 수 있다. 예를 들어, 도 10을 참조하면, 디바이스(1000)는, "사"라는 문자를 입력한 사용자 입력에 응답하여, "사"를 포함하는 의사 형태소로서, "사랑", "사과", 및 "사장"을 추천할 수 있다. 이때, 디바이스(1000)는, "사랑", "사과", 및 "사장"에 대하여, 각 의사 형태소를 포함하는 적어도 하나의 추천할 어절이 있는지 여부를 사용자가 용이하게 식별하도록 할 수 있다. 예를 들어, 도 10에 도시된 바와 같이, 디바이스(1000)는, 의사 형태소 옆에 소정의 도형(예를 들어, 삼각형)(1002)을 이용하여 구별되게 표시할 수 있다. 또는, 실시예에 따라, 디바이스(1000)는, 의사 형태소를 소정의 색상을 이용하여 하이라이트로 표시함으로써 구별되게 표시할 수 있으나, 이에 한정되지 않는다. When recommending at least one pseudo morpheme including a character input by the user, the device 1000 according to some embodiments may distinguish the recommended pseudo morpheme to indicate whether there is a word to recommend including the pseudo morpheme. can be displayed as For example, referring to FIG. 10 , the device 1000 responds to a user input of inputting the character “four”, as pseudo morphemes including “sa”, “love”, “apple”, and “ You can recommend "the boss." In this case, the device 1000 may allow the user to easily identify whether there is at least one recommended word including each pseudo morpheme for "love", "apple", and "boss". For example, as shown in FIG. 10 , the device 1000 may distinguishly display a predetermined figure (eg, a triangle) 1002 next to a pseudo morpheme. Alternatively, according to an embodiment, the device 1000 may distinguishly display the pseudo morpheme by highlighting the pseudo morpheme using a predetermined color, but is not limited thereto.

도 11은, 일부 실시예에 따른 디바이스가 의사 형태소 각각에 대한 사용자의 사용 빈도를 고려하여, 의사 형태소를 추천하는 예시를 나타내는 도면이다.11 is a diagram illustrating an example in which a device recommends a pseudo morpheme in consideration of a user's frequency of use for each pseudo morpheme, according to some embodiments.

일부 실시예에 따른 디바이스(1000)는, 사용자로부터 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추천할 때, 의사 형태소 각각에 대한 사용자의 사용 빈도를 고려하여 추천할 수 있다. 디바이스(1000)는, 각 의사 형태소 일반적인 사용 빈도 대한 정보뿐만 아니라, 사용자가 과거에 입력한 문자들에 대한 통상적인 사용 빈도에 관한 통계 데이터, 디바이스(1000)에 의해 추천된 적어도 하나의 의사 형태소 중에서 사용자가 선택한 의사 형태소에 대한 정보, 사용자가 과거에 입력한 음성 데이터에 대한 정보 등을 고려하여, 적어도 하나의 의사 형태소를 추천할 수 있다. 예를 들어, 디바이스(1000)는, 사용자가 과거에 입력한 문자들에 대한 정보, 디바이스(1000)에 의해 추천된 적어도 하나의 의사 형태소 중에서 사용자가 과거에 선택한 의사 형태소에 대한 정보, 사용자가 과거에 입력한 음성 데이터에 대한 정보 등을 수집할 수 있다. 디바이스(1000)는, 수집된 정보들을 이용하여 사용자가 빈번하게 사용하는 의사 형태소를 학습하고, 학습된 결과에 기초하여 사용자가 빈번하게 사용하는 의사 형태소에 대하여 상대적으로 더 큰 가중치를 설정할 수 있다. 디바이스(1000)는, 사용자로부터 새로운 문자가 입력되거나 추천된 의사 형태소들 중에서 하나를 선택하는 입력에 수신될 때, 의사 형태소 각각에 대한 사용자의 사용 빈도에 대한 정보를 업데이트할 수 있다. 디바이스(1000)는, 의사 형태소에 대하여 설정된 가중치를 고려하여, 적어도 하나의 의사 형태소를 추천할 수 있다.When recommending at least one pseudo morpheme including a character input by the user, the device 1000 according to some exemplary embodiments may make the recommendation in consideration of the user's frequency of use of each of the pseudo morphemes. The device 1000 includes not only information on the general frequency of use of each pseudo morpheme, but also statistical data about the typical frequency of use of characters input by the user in the past, and at least one pseudo morpheme recommended by the device 1000 . At least one pseudo morpheme may be recommended in consideration of information on the pseudo morpheme selected by the user, information on voice data input by the user in the past, and the like. For example, the device 1000 may provide information about characters input by the user in the past, information on a pseudo morpheme selected by the user in the past from among at least one pseudo morpheme recommended by the device 1000 , and information about a pseudo morpheme selected by the user in the past. It is possible to collect information about the voice data entered in the . The device 1000 may learn a pseudo morpheme frequently used by the user by using the collected information, and may set a relatively larger weight for the pseudo morpheme frequently used by the user based on the learned result. The device 1000 may update information on the user's frequency of use for each of the pseudo morphemes when a new character is input from the user or an input for selecting one of the recommended pseudo morphemes is received. The device 1000 may recommend at least one pseudo morpheme in consideration of a weight set for the pseudo morpheme.

예를 들어, 도 11을 참조하면, 표 1(1101)은 사용자 A가 빈번하게 사용하는 의사 형태소들의 리스트를 나타낸다. 예를 들어, 사용자 A가 디바이스(1000)의 문자 입력 창(1110) 내에 "wa"라는 문자를 입력할 때, 디바이스(1000)는, "wa"를 포함하는 의사 형태소들 중에서, 사용자 A가 빈번하게 사용하는 의사 형태소들을 우선적으로 추천할 수 있다. 예를 들어, 사용자 A가 "wa"를 포함하는 의사 형태소들 중에서, "want", "wait", 및 "walk" 순으로 빈번하게 사용하는 경우, 디바이스(1000)는 "want", "wait", 및 "walk"를 우선적으로 추천(1120)할 수 있다. 이에 따라, 디바이스(1000)는, 사용자 A의 의도에 부합하는 의사 형태소를 효과적으로 추천할 수 있다.For example, referring to FIG. 11 , Table 1 1101 shows a list of pseudo morphemes that user A frequently uses. For example, when the user A inputs the character “wa” into the character input window 1110 of the device 1000 , the device 1000 determines that the user A frequently Pseudo morphemes that are frequently used can be recommended preferentially. For example, when user A frequently uses "want", "wait", and "walk" among pseudo morphemes including "wa" in the order, the device 1000 may display "want", "wait" , and “walk” may be preferentially recommended 1120 . Accordingly, the device 1000 may effectively recommend a pseudo morpheme that meets the intention of the user A.

도 12는 일부 실시예에 따른 디바이스가 기 디스플레이된 적어도 하나의 어절의 종류 및 순서를 고려하여 의사 형태소를 추천하는 예시를 나타내는 도면이다.12 is a diagram illustrating an example in which a device recommends a pseudo morpheme in consideration of the type and order of at least one previously displayed word, according to some embodiments.

적어도 두 어절을 포함하는 언어 표현에서, 앞에 위치하는 어절의 종류에 따라 다음에 위치할 어절의 종류가 달라질 수 있다. 이때, 어절의 종류는, 명사, 형용사, 동사 등을 포함하는 품사, 또는 주어, 동사, 목적어, 보어 등을 포함하는 문장 성분의 종류를 포함할 수 있으나, 이에 한정되지 않는다. 예를 들어, 주어에 해당하는 어절 다음에는 동사가 위치할 확률이 상대적으로 높으며, 형용사 다음에는 명사가 위치할 확률이 상대적으로 높다. 따라서, 디바이스(1000)는, 문자 입력 창 내에 기 디스플레이된 적어도 하나의 어절의 종류 및 순서를 고려하여, 적어도 하나의 의사 형태소를 추천함으로써, 문맥에 맞는 의사 형태소 및 어절을 추천할 수 있다. In a language expression including at least two word phrases, the type of the word to be positioned next may vary depending on the kind of the word positioned before it. In this case, the type of word may include a part-of-speech including a noun, an adjective, a verb, or a type of a sentence component including a subject, a verb, an object, and a complement, but is not limited thereto. For example, the probability that a verb is located after a word corresponding to a subject is relatively high, and a probability that a noun is located after an adjective is relatively high. Accordingly, the device 1000 may recommend at least one pseudo morpheme in consideration of the type and order of at least one word previously displayed in the text input window, thereby recommending the pseudo morpheme and word appropriate to the context.

예를 들어, 도 12를 참조하면, 디바이스(1000)의 문자 입력 창(1201) 내에 기 디스플레이된 어절이 "He"이고, "He" 다음에 위치할 어절의 일부로서 사용자가 "wa"라는 문자를 입력한 경우, 주어에 해당하는 "He" 다음에 동사가 나올 확률이 상대적으로 높다. 따라서, 디바이스(1000)는, "wa"를 포함하는 의사 형태소들 중에서 동사인 "wait", "want", 및 "watch"를 추천(1202)할 수 있다. For example, referring to FIG. 12 , the word previously displayed in the character input window 1201 of the device 1000 is “He”, and as a part of the word to be positioned after “He”, the user uses the character “wa” If you input , the probability of a verb appearing after "He" corresponding to the subject is relatively high. Accordingly, the device 1000 may recommend 1202 verbs “wait”, “want”, and “watch” among pseudo morphemes including “wa”.

다른 예로서, 디바이스(1000)의 문자 입력 창(1203) 내에 기 디스플레이된 어절이 "Clean"이고, "Clean" 다음에 위치할 어절의 일부로서 사용자가 "wa"라는 문자를 입력한 경우, 형용사에 속하는 "Clean" 다음에 명사가 나올 확률이 상대적으로 높다. 따라서, 디바이스(1000)는, "wa"를 포함하는 의사 형태소들 중에서 명사인 "water", "wave", "way"를 추천(1204)할 수 있다.As another example, when a word previously displayed in the character input window 1203 of the device 1000 is “Clean” and the user inputs the character “wa” as a part of a word to be positioned after “Clean”, the adjective The probability of a noun appearing after "Clean" belonging to Accordingly, the device 1000 may recommend ( 1204 ) “water,” “wave,” and “way,” which are nouns, among pseudo morphemes including “wa”.

도 13은 일부 실시예에 따른 디바이스가 사용자의 문자 입력 특성을 고려하여 적어도 하나의 어절을 추천하는 예시를 나타내는 도면이다. 13 is a diagram illustrating an example in which a device recommends at least one word in consideration of a character input characteristic of a user, according to some embodiments.

사용자의 문자 입력 특성은, 사용자가 빈번하게 사용하는 표현들을 지칭할 수 있다. 예를 들어, 사용자는 "--했다" 라는 표현 대신 "--했어" 또는 "-했음"이라는 표현을 보다 빈번하게 사용할 수 있다. 디바이스(1000)는, 사용자에 의해 과거에 입력된 문자에 관한 정보, 디바이스(1000)에 의해 추천된 적어도 하나의 어절 중에서 사용자가 과거에 선택했던 어절에 관한 정보, 사용자로부터 과거에 입력된 음성 데이터에 관한 정보 등을 수집할 수 있다. 디바이스(1000)는, 수집된 정보들을 이용하여, 사용자의 문자 입력 특성을 파악할 수 있다. 예를 들어, 디바이스(1000)는, 신경망 기술에 따른 학습을 수행함으로써, 사용자의 문자 입력 특성을 파악할 수 있다. 사용자의 문자 입력 특성을 파악함에 있어, 어떠한 정보가 사용될 지는 기 설정된 기준에 의한 학습에 따라 결정될 수 있다. Character input characteristics of the user may refer to expressions frequently used by the user. For example, the user may more frequently use the expression "--did" or "-did" instead of the expression "--did". The device 1000 may include information about text input by the user in the past, information on a word selected by the user in the past among at least one word recommended by the device 1000 , and voice data input in the past from the user. You can collect information about The device 1000 may determine the character input characteristics of the user by using the collected information. For example, the device 1000 may determine the character input characteristics of the user by performing learning according to the neural network technology. In recognizing the user's character input characteristics, what kind of information will be used may be determined according to learning based on a preset standard.

예를 들어, 도 13을 참조하면, 사용자가 디바이스(1000)의 문자 입력 창(1301) 내에 "식"이라는 문자를 입력한 경우에, 디바이스(1000)는 "식"을 포함하는 의사 형태소로서 "식단", "식품", 및 "식사"를 추천할 수 있다(1310). 추천된 "식단", "식품", 및 "식사"는, 디바이스(1000)의 문자 입력 창(1301) 외부에 디스플레이될 수 있다. 디스플레이된 3개의 의사 형태소들 중에서 "식사"를 선택하는 사용자 입력이 수신되면, 디바이스(1000)는 "식사"를 포함하는 적어도 하나의 어절을 추천할 수 있다. 이때, 디바이스(1000)는, 사용자의 문자 입력 특성을 고려하여, "식사"를 포함하는 적어도 하나의 어절을 추천할 수 있다. 예를 들어, 사용자가 "--하다"라는 표현보다 "--했어"라는 표현을 빈번하게 사용하는 경우, 디바이스(1000)는 "식사했어"를 "식사했다"보다 우선적으로 추천(1330)할 수 있다.For example, referring to FIG. 13 , when the user inputs the character “expression” into the character input window 1301 of the device 1000, the device 1000 displays “expression” as a pseudo morpheme including “expression”. Diet”, “food”, and “meal” may be recommended ( 1310 ). The recommended “meal”, “food”, and “meal” may be displayed outside the text input window 1301 of the device 1000 . When a user input for selecting “meal” from among the displayed three pseudo morphemes is received, the device 1000 may recommend at least one word including “meal”. In this case, the device 1000 may recommend at least one word including “meal” in consideration of the user's character input characteristics. For example, when the user frequently uses the expression “--I did” rather than the expression “--I did”, the device 1000 may preferentially recommend “I ate” to “I ate” ( 1330 ). can

도 14 및 도 15은 일부 실시예에 따른 디바이스의 구성을 나타내는 블록도이다.14 and 15 are block diagrams illustrating a configuration of a device according to some embodiments.

도 14에 도시된 바와 같이, 일부 실시예에 따른 디바이스(1000)는, 사용자 입력부(1100), 디스플레이부(1210), 프로세서(1300), 및 메모리(1700)를 포함할 수 있다. 그러나, 도 14에 도시된 구성 요소 모두가 디바이스(1000)의 필수 구성 요소인 것은 아니다. 도 14에 도시된 구성 요소보다 많은 구성 요소에 의해 디바이스(1000)가 구현될 수도 있고, 도 14에 도시된 구성 요소보다 적은 구성 요소에 의해 디바이스(1000)가 구현될 수도 있다.14 , the device 1000 according to some embodiments may include a user input unit 1100 , a display unit 1210 , a processor 1300 , and a memory 1700 . However, not all of the components shown in FIG. 14 are essential components of the device 1000 . The device 1000 may be implemented by more components than the components shown in FIG. 14 , or the device 1000 may be implemented by fewer components than the components shown in FIG. 14 .

예를 들어, 도 15에 도시된 바와 같이, 일부 실시예에 따른 디바이스(1000)는, 사용자 입력부(1100), 디스플레이부(1210), 프로세서(1300), 및 메모리(1700) 이외에 센싱부(1400), A/V 입력부(1600), 통신부(1500)를 더 포함할 수도 있다. For example, as shown in FIG. 15 , the device 1000 according to some embodiments includes a sensing unit 1400 in addition to the user input unit 1100 , the display unit 1210 , the processor 1300 , and the memory 1700 . ), an A/V input unit 1600 , and a communication unit 1500 may be further included.

사용자 입력부(1100)는, 사용자가 디바이스(1000)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력부(1100)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다.The user input unit 1100 means a means for a user to input data for controlling the device 1000 . For example, the user input unit 1100 includes a key pad, a dome switch, and a touch pad (contact capacitive method, pressure resistance film method, infrared sensing method, surface ultrasonic conduction method, integral type). There may be a tension measurement method, a piezo effect method, etc.), a jog wheel, a jog switch, and the like, but is not limited thereto.

일부 실시예에 따른 사용자 입력부(1100)는, 디바이스(1000)의 문자 입력 창 내에 문자를 입력하는 사용자 입력을 수신할 수 있다. 사용자 입력부(1100)는, 추천된 적어도 하나의 의사 형태소 중에서 하나를 선택하는 사용자 입력, 또는 추천된 적어도 하나의 어절 중에서 하나를 선택하는 사용자 입력을 수신할 수 있다. 또한, 사용자 입력부(1100)는, 디바이스(1000)의 문자 입력 창 내에 공백 문자를 입력하는 사용자 입력을 수신할 수 있으나, 전술한 예에 한정되지 않는다.The user input unit 1100 according to some embodiments may receive a user input for inputting a character into the character input window of the device 1000 . The user input unit 1100 may receive a user input for selecting one from among at least one recommended pseudo morpheme or a user input for selecting one from at least one recommended word. Also, the user input unit 1100 may receive a user input for inputting a blank character in the character input window of the device 1000 , but is not limited to the above-described example.

출력부(1200)는, 오디오 신호 또는 비디오 신호 또는 진동 신호를 출력할 수 있으며, 출력부(1200)는 디스플레이부(1210), 음향 출력부(1220), 및 진동 모터(1230)를 포함할 수 있다.The output unit 1200 may output an audio signal, a video signal, or a vibration signal, and the output unit 1200 may include a display unit 1210 , a sound output unit 1220 , and a vibration motor 1230 . have.

디스플레이부(1210)는 디바이스(1000)에서 처리되는 정보를 표시 출력한다. 예를 들어, 일부 실시예에 따른 디스플레이부(1210)는, 사용자로부터 입력된 문자에 기초하여 추천 단어를 제공하기 위한 사용자 인터페이스를 디스플레이할 수 있다. 또한, 디스플레이부(1210)는, 사용자로부터 입력된 문자에 기초하여 추천되는 적어도 하나의 의사 형태소, 추천된 적어도 하나의 의사 형태소 중에서 하나가 선택됨에 따라 추천되는 적어도 하나의 어절을 표시할 수 있다.The display unit 1210 displays and outputs information processed by the device 1000 . For example, the display unit 1210 according to some embodiments may display a user interface for providing a recommended word based on a character input by the user. Also, the display unit 1210 may display at least one recommended pseudo morpheme based on a character input by the user and at least one recommended word when one of the recommended at least one pseudo morpheme is selected.

음향 출력부(1220)는 통신부(1500)로부터 수신되거나 메모리(1700)에 저장된 오디오 데이터를 출력한다. 또한, 음향 출력부(1220)는 디바이스(1000)에서 수행되는 기능(예를 들어, 호신호 수신음, 메시지 수신음, 알림음)과 관련된 음향 신호를 출력한다.The sound output unit 1220 outputs audio data received from the communication unit 1500 or stored in the memory 1700 . Also, the sound output unit 1220 outputs a sound signal related to a function (eg, a call signal reception sound, a message reception sound, and a notification sound) performed by the device 1000 .

프로세서(1300)는, 통상적으로 디바이스(1000)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1300)는, 메모리(1700)에 저장된 프로그램들을 실행함으로써, 사용자 입력부(1100), 출력부(1200), 센싱부(1400), 통신부(1500), A/V 입력부(1600) 등을 전반적으로 제어할 수 있다. 또한, 프로세서(1300)는 메모리(1700)에 저장된 프로그램들을 실행함으로써, 도 1 내지 도 14에 기재된 디바이스(1000)의 기능을 수행할 수 있다.The processor 1300 typically controls the overall operation of the device 1000 . For example, the processor 1300 executes programs stored in the memory 1700 , and thus the user input unit 1100 , the output unit 1200 , the sensing unit 1400 , the communication unit 1500 , and the A/V input unit 1600 . ) can be controlled in general. Also, the processor 1300 may execute the programs stored in the memory 1700 to perform the functions of the device 1000 described in FIGS. 1 to 14 .

일부 실시예에 따른 프로세서(1300)는, 입력된 문자를 분석함으로써, 입력된 문자를 포함하는 적어도 하나의 의사 형태소(pseudo-morpheme)를 추천한다. 프로세서(1300)는, 입력되는 문자에 관한 컨텍스트 정보 및 사용자의 컨텍스트 정보를 이용하여, 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추천할 수 있다. 예를 들어, 프로세서(1300)는, 의사 형태소 각각에 대한 통상적인 사용 빈도에 관한 정보, 사용자가 과거에 입력한 문자들에 관한 정보, 디바이스(1000)에 의해 추천된 의사 형태소들 중에서 사용자가 선택한 의사 형태소에 관한 정보, 사용자가 과거에 입력한 음성 데이터에 관한 정보 등을 고려하여, 적어도 하나의 의사 형태소를 추천할 수 있다. The processor 1300 according to some embodiments recommends at least one pseudo-morpheme including the input character by analyzing the input character. The processor 1300 may recommend at least one pseudo morpheme including the input text by using context information about the input text and context information of the user. For example, the processor 1300 may be configured to generate information about a typical frequency of use of each pseudo morpheme, information about characters input by the user in the past, and a pseudo morpheme selected by the user from among the pseudo morphemes recommended by the device 1000 . At least one pseudo morpheme may be recommended in consideration of information on the pseudo morpheme, information on voice data input by the user in the past, and the like.

일부 실시예에 따른 프로세서(1300)는, 추천된 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력에 응답하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천한다. 사용자는, 추천된 적어도 하나의 의사 형태소 중에서, 사용자가 문자 입력 창 내에 입력하고자 했던 의사 형태소를 선택할 수 있다. 의사 형태소를 선택하는 입력이 수신됨에 따라, 프로세서(1300)는, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 이때, 선택된 의사 형태소가 뜻을 가지는 명사일 때, 의사 형태소를 포함하는 적어도 하나의 어절은, 명사에 조사가 결합된 형태일 수 있으나, 이에 한정되지 않는다. The processor 1300 according to some embodiments recommends at least one word including the selected pseudo morpheme in response to an input for selecting one from among the at least one recommended pseudo morpheme. The user may select a pseudo morpheme that the user intends to input in the text input window from among at least one recommended pseudo morpheme. As an input for selecting a pseudo morpheme is received, the processor 1300 may recommend at least one word including the selected pseudo morpheme. In this case, when the selected pseudo morpheme is a noun having a meaning, at least one word including the pseudo morpheme may be a form in which a noun is combined with a proposition, but is not limited thereto.

또한, 프로세서(1300), 사용자의 문자 입력 특성에 기초하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. 예를 들어, 디바이스(1000)는, 사용자가 빈번하게 사용하는 표현을 고려하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다. Also, the processor 1300 may recommend at least one word including the selected pseudo morpheme based on the character input characteristic of the user. For example, the device 1000 may recommend at least one word including the selected pseudo morpheme in consideration of an expression frequently used by the user.

또한, 프로세서(1300)는, 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 선택된 어절을 포함하는 적어도 하나의 다른 어절을 추천할 수 있다. 이때, 선택된 어절을 포함하는 적어도 하나의 다른 어절은, 선택된 어절에 다른 조사가 추가된 어절을 포함할 수 있으나, 이에 한정되지 않는다.Also, the processor 1300 may recommend at least one other word including the selected word in response to an input for selecting one from among the at least one recommended word. In this case, the at least one other word including the selected word may include a word in which another proposition is added to the selected word, but is not limited thereto.

또한, 프로세서(1300)는 메모리(1700) 또는 서버(2000)에 저장된 데이터 인식 모델을 이용하여, 추천 단어를 제공할 수 있으며, 이에 관하여는, 도 16 내지 도 19에서 보다 상세히 설명하기로 한다.In addition, the processor 1300 may use a data recognition model stored in the memory 1700 or the server 2000 to provide a recommended word, which will be described in more detail with reference to FIGS. 16 to 19 .

또한, 프로세서(1300)는, 메모리(1700) 또는 서버(2000)에 저장된 데이터 인식 모델을 이용함으로써, 추천할 의사 형태소 결정하기 위한 기준을 효율적으로 학습할 수 있으며, 학습된 결과에 따라 사용자의 의도에 부합하는 추천 단어를 사용자에게 제공할 수 있게 된다.In addition, the processor 1300 can efficiently learn a criterion for determining a pseudo morpheme to be recommended by using the data recognition model stored in the memory 1700 or the server 2000, and according to the learned result, the user's intention It is possible to provide a user with a recommended word matching the .

센싱부(1400)는, 디바이스(1000)의 상태 또는 디바이스(1000) 주변의 상태를 감지하고, 감지된 정보를 프로세서(1300)로 전달할 수 있다. 센싱부(1400)는 사용자 또는 디바이스(1000)의 주변 상황을 나타내는 컨텍스트 정보 중 일부를 생성하는데 이용될 수 있다. The sensing unit 1400 may detect a state of the device 1000 or a state around the device 1000 , and transmit the sensed information to the processor 1300 . The sensing unit 1400 may be used to generate some of the context information indicating the surrounding situation of the user or the device 1000 .

센싱부(1400)는, 지자기 센서(Magnetic sensor)(1410), 가속도 센서(Acceleration sensor)(1420), 온/습도 센서(1430), 적외선 센서(1440), 자이로스코프 센서(1450), 위치 센서(예컨대, GPS)(1460), 기압 센서(1470), 근접 센서(1480), 및 RGB 센서(illuminance sensor)(1490) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다.The sensing unit 1400 includes a magnetic sensor 1410 , an acceleration sensor 1420 , a temperature/humidity sensor 1430 , an infrared sensor 1440 , a gyroscope sensor 1450 , and a position sensor. (eg, GPS) 1460 , a barometric pressure sensor 1470 , a proximity sensor 1480 , and at least one of an illuminance sensor 1490 , but is not limited thereto. Since a function of each sensor can be intuitively inferred from a person skilled in the art from the name, a detailed description thereof will be omitted.

통신부(1500)는, 디바이스(1000)가 다른 장치(미도시) 및 서버(2000)와 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 다른 장치(미도시)는 디바이스(1000)와 같은 컴퓨팅 장치이거나, 센싱 장치일 수 있으나, 이에 제한되지 않는다. 예를 들어, 통신부(1500)는, 근거리 통신부(1510), 이동 통신부(1520), 방송 수신부(1530)를 포함할 수 있다. The communication unit 1500 may include one or more components that allow the device 1000 to communicate with another apparatus (not shown) and the server 2000 . The other device (not shown) may be a computing device such as the device 1000 or a sensing device, but is not limited thereto. For example, the communication unit 1500 may include a short-distance communication unit 1510 , a mobile communication unit 1520 , and a broadcast receiving unit 1530 .

근거리 통신부(short-range wireless communication unit)(1510)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), 와이파이(WLAN) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. Short-range wireless communication unit 1510, Bluetooth communication unit, BLE (Bluetooth Low Energy) communication unit, short-range wireless communication unit (Near Field Communication unit), Wi-Fi (WLAN) communication unit, Zigbee (Zigbee) communication unit, infrared ( It may include an IrDA, infrared Data Association) communication unit, a Wi-Fi Direct (WFD) communication unit, an ultra wideband (UWB) communication unit, an Ant+ communication unit, and the like, but is not limited thereto.

이동 통신부(1520)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.The mobile communication unit 1520 transmits/receives a radio signal to and from at least one of a base station, an external terminal, and a server on a mobile communication network. Here, the wireless signal may include various types of data according to transmission and reception of a voice call signal, a video call signal, or a text/multimedia message.

방송 수신부(1530)는, 방송 채널을 통하여 외부로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 구현 예에 따라서 디바이스(1000)가 방송 수신부(1530)를 포함하지 않을 수도 있다.The broadcast receiver 1530 receives a broadcast signal and/or broadcast-related information from the outside through a broadcast channel. The broadcast channel may include a satellite channel and a terrestrial channel. According to an implementation example, the device 1000 may not include the broadcast receiver 1530 .

또한, 통신부(1500)는, 사용자의 음성 입력에 대한 답변 메시지를 요청하고 답변 메시지에 관련된 동작을 실행하기 위한 필요한 정보를, 다른 장치(미도시) 및 서버(2000)와 송수신할 수 있다.Also, the communication unit 1500 may transmit and receive information necessary for requesting a response message to the user's voice input and executing an operation related to the response message, with another device (not shown) and the server 2000 .

A/V(Audio/Video) 입력부(1600)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(1610)와 마이크로폰(1620) 등이 포함될 수 있다. 카메라(1610)은 화상 통화모드 또는 촬영 모드에서 이미지 센서를 통해 정지영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 이미지 센서를 통해 캡쳐된 이미지는 프로세서(1300) 또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다. 카메라(1610)에 의해 촬영된 이미지는 사용자의 컨텍스트 정보로 활용될 수 있다.The A/V (Audio/Video) input unit 1600 is for inputting an audio signal or a video signal, and may include a camera 1610 , a microphone 1620 , and the like. The camera 1610 may obtain an image frame such as a still image or a moving image through an image sensor in a video call mode or a shooting mode. The image captured through the image sensor may be processed through the processor 1300 or a separate image processing unit (not shown). The image captured by the camera 1610 may be used as context information of the user.

마이크로폰(1620)은, 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리한다. 예를 들어, 마이크로폰(1620)은 외부 디바이스 또는 사용자로부터 음향 신호를 수신할 수 있다. 마이크로폰(1620)은 사용자의 음성 입력을 수신할 수 있다. 마이크로폰(1620)는 외부의 음향 신호를 입력 받는 과정에서 발생 되는 잡음(noise)를 제거하기 위한 다양한 잡음 제거 알고리즘을 이용할 수 있다. The microphone 1620 receives an external sound signal and processes it as electrical voice data. For example, the microphone 1620 may receive an acoustic signal from an external device or a user. The microphone 1620 may receive a user's voice input. The microphone 1620 may use various noise removal algorithms for removing noise generated in the process of receiving an external sound signal.

메모리(1700)는, 프로세서(1300)의 처리 및 제어를 위한 프로그램을 저장할 수 있고, 디바이스(1000)로 입력되거나 디바이스(1000)로부터 출력되는 데이터를 저장할 수도 있다. The memory 1700 may store a program for processing and controlling the processor 1300 , and may store data input to or output from the device 1000 .

메모리(1700)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. The memory 1700 may include a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (eg, SD or XD memory), and a RAM. (RAM, Random Access Memory) SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, magnetic disk , may include at least one type of storage medium among optical disks.

메모리(1700)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, UI 모듈(1710), 터치 스크린 모듈(1720), 알림 모듈(1730) 등으로 분류될 수 있다. Programs stored in the memory 1700 may be classified into a plurality of modules according to their functions, for example, may be classified into a UI module 1710 , a touch screen module 1720 , a notification module 1730 , and the like. .

UI 모듈(1710)은, 애플리케이션 별로 디바이스(1000)와 연동되는 특화된 UI, GUI 등을 제공할 수 있다. 터치 스크린 모듈(1720)은 사용자의 터치 스크린 상의 터치 제스처를 감지하고, 터치 제스처에 관한 정보를 프로세서(1300)로 전달할 수 있다. 일부 실시예에 따른 터치 스크린 모듈(1720)은 터치 코드를 인식하고 분석할 수 있다. 터치 스크린 모듈(1720)은 컨트롤러를 포함하는 별도의 하드웨어로 구성될 수도 있다.The UI module 1710 may provide a specialized UI, GUI, or the like that interworks with the device 1000 for each application. The touch screen module 1720 may detect a touch gesture on the user's touch screen and transmit information about the touch gesture to the processor 1300 . The touch screen module 1720 according to some embodiments may recognize and analyze a touch code. The touch screen module 1720 may be configured as separate hardware including a controller.

알림 모듈(1730)은 디바이스(1000)의 이벤트 발생을 알리기 위한 신호를 발생할 수 있다. 디바이스(1000)에서 발생되는 이벤트의 예로는 호 신호 수신, 메시지 수신, 키 신호 입력, 일정 알림 등이 있다. 알림 모듈(1730)은 디스플레이부(1210)를 통해 비디오 신호 형태로 알림 신호를 출력할 수도 있고, 음향 출력부(1220)를 통해 오디오 신호 형태로 알림 신호를 출력할 수도 있고, 진동 모터(1230)를 통해 진동 신호 형태로 알림 신호를 출력할 수도 있다.The notification module 1730 may generate a signal for notifying the occurrence of an event in the device 1000 . Examples of the event generated in the device 1000 include call signal reception, message reception, key signal input, schedule notification, and the like. The notification module 1730 may output a notification signal in the form of a video signal through the display unit 1210 , may output a notification signal in the form of an audio signal through the sound output unit 1220 , and the vibration motor 1230 . It is also possible to output a notification signal in the form of a vibration signal through

도 16은 일부 실시예에 따른 프로세서(1300)의 블록도이다.16 is a block diagram of a processor 1300 in accordance with some embodiments.

도 16을 참조하면, 일부 실시예에 따른 프로세서(1300)는 데이터 학습부(1310) 및 데이터 인식부(1320)를 포함할 수 있다.Referring to FIG. 16 , the processor 1300 according to some embodiments may include a data learning unit 1310 and a data recognition unit 1320 .

데이터 학습부(1310)는, 사용자로부터 입력된 문자에 대한 추천 단어를 결정하기 위한 기준을 학습할 수 있다. 예를 들어, 데이터 학습부(1310)는, 사용자로부터 입력된 문자에 따른 추천할 의사 형태소 및 추천할 어절을 결정하기 위한 기준을 학습할 수 있다. 또한, 데이터 학습부(1310)는, 추천된 어절의 다음에 공백 문자를 디스플레이할 것인지 여부를 결정하기 위한 기준을 학습할 수 있다. 또한, 데이터 학습부(1310)는, 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정하기 위하여 어떤 데이터를 이용할 것인지에 관한 기준을 학습할 수 있다. 데이터 학습부(1310)는 학습에 이용될 학습 데이터를 획득하고, 획득된 학습 데이터를 후술할 데이터 인식 모델에 적용함으로써, 사용자로부터 입력된 문자에 대한 추천 단어를 결정하기 위한 기준을 학습할 수 있다.The data learning unit 1310 may learn a criterion for determining a recommended word for a character input by the user. For example, the data learning unit 1310 may learn a criterion for determining a pseudo morpheme to be recommended and a word to be recommended according to a character input by the user. Also, the data learning unit 1310 may learn a criterion for determining whether to display a blank character after the recommended word. Also, the data learning unit 1310 may learn a criterion regarding which data to use to determine a pseudo morpheme to be recommended and a word to be recommended, and to determine whether to display a blank character. The data learning unit 1310 may learn a criterion for determining a recommended word for a character input from a user by acquiring learning data to be used for learning, and applying the acquired learning data to a data recognition model to be described later. .

구체적으로, 데이터 학습부(1310)는 상기 기준들을 학습하기 위한 학습 데이터로서, 사용자가 과거에 입력한 문자들 또는 음성 데이터들에 대한 정보, 디바이스(1000)에 의해 추천된 적어도 하나의 의사 형태소 중에서 사용자가 선택한 의사 형태소에 관한 정보, 디바이스(1000)에 의해 추천된 적어도 하나의 어절들 중에서 사용자가 선택한 어절에 관한 정보, 의사 형태소들 또는 어절들 각각에 대한 통상적인 사용자의 사용 빈도에 관한 통계 데이터를 이용할 수 있다. Specifically, the data learning unit 1310 is training data for learning the criteria, from among information on characters or voice data input by the user in the past, and at least one pseudo morpheme recommended by the device 1000 . Information on the pseudo morpheme selected by the user, information on the word selected by the user from among at least one word recommended by the device 1000 , and statistical data on the frequency of common user use of each of the pseudo morphemes or words is available.

데이터 학습부(1310)는 비지도 학습(unsupervised learning)을 통하여 상기 학습 데이터들에 기반하여 데이터 인식 모델을 학습시킬 수 있다. 예를 들어, 데이터 학습부(1310)는 사용자의 사용 빈도가 높은 의사 형태소 또는 어절에 대하여 상대적으로 더 높은 확률 또는 더 큰 가중치가 설정되도록 데이터 인식 모델을 학습시킬 수 있다. The data learning unit 1310 may learn a data recognition model based on the learning data through unsupervised learning. For example, the data learning unit 1310 may train the data recognition model so that a relatively higher probability or a greater weight is set for a pseudo morpheme or word that is frequently used by the user.

또는, 데이터 학습부(1310)는 학습 데이터(예를 들어, 특정 어절 다음에 공백 문자가 위치하는 경우에 대한 통계 데이터)을 이용하여 특정 어절 별로 특정 어절 다음에 공백 문자가 위치할 확률 또는 가중치가 설정되도록 데이터 인식 모델을 학습시킬 수 있다.Alternatively, the data learning unit 1310 calculates the probability or weight of the position of the blank character after the specific word for each specific word by using the learning data (eg, statistical data on the case where the blank character is positioned after the specific word). You can train a data recognition model to be set up.

또는, 데이터 학습부(1310)는 인식 결과에 따른 사용자의 피드백을 이용하여 데이터 인식 모델을 학습 또는 갱신시킬 수 있다. 예를 들어, 데이터 학습부(1310)는 디바이스(1000)에 의해 추천된 적어도 의사 형태소 또는 어절 중에서 사용자가 선택한 의사 형태소 또는 어절에 대하여 더 큰 가중치가 설정되도록 데이터 인식 모델을 학습시킬 수 있다.Alternatively, the data learning unit 1310 may learn or update the data recognition model by using the user's feedback according to the recognition result. For example, the data learning unit 1310 may train the data recognition model to set a greater weight for the pseudo morpheme or word selected by the user from among at least the pseudo morpheme or word recommended by the device 1000 .

데이터 인식부(1320)는 데이터에 기초하여 사용자로부터 입력된 문자에 대한 추천 단어를 결정할 수 있다. 예를 들어, 데이터 인식부(1320)는, 추천할 의사 형태소에 관한 학습 결과를 이용하여, 사용자로부터 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 결정할 수 있다. 또한, 데이터 인식부(1320)는, 추천할 어절에 관한 학습 결과를 이용하여, 사용자에 의해 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 결정할 수 있다. 다른 예에 따르면, 데이터 인식부(1320)는, 공백 문자의 위치에 관한 학습 결과를 이용하여, 사용자에 의해 선택된 어절 다음에 공백 문자를 디스플레이할 것인지 여부를 결정할 수 있다. 데이터 인식부(1320)는 학습된 데이터 인식 모델을 이용하여, 추천할 적어도 하나의 의사 형태소 및 추천할 적어도 하나의 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정할 수 있다. 데이터 인식부(1320)는 학습에 의한 기 설정된 기준에 따라 소정의 데이터를 획득하고, 획득된 데이터를 입력 값으로 하여 데이터 인식 모델을 이용할 수 있다. 또한, 데이터 인식부(1320)는 이를 이용함으로써, 소정의 데이터에 기초하여 추천할 적어도 하나의 의사 형태소, 및 추천할 적어도 하나의 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정할 수 있다. 또한, 획득된 데이터를 입력 값으로 하여 데이터 인식 모델에 의해 출력된 결과 값은, 데이터 인식 모델을 갱신하는데 이용될 수 있다.The data recognition unit 1320 may determine a recommended word for a character input from the user based on the data. For example, the data recognizer 1320 may determine at least one pseudo morpheme including a character input by the user by using a learning result regarding the pseudo morpheme to be recommended. Also, the data recognition unit 1320 may determine at least one word including the pseudo morpheme selected by the user by using the learning result on the word to be recommended. According to another example, the data recognition unit 1320 may determine whether to display the blank character after the word selected by the user, using the learning result regarding the position of the blank character. The data recognition unit 1320 may determine at least one pseudo morpheme to be recommended and at least one word to be recommended by using the learned data recognition model, and determine whether to display a blank character. The data recognition unit 1320 may acquire predetermined data according to a preset criterion by learning, and use the acquired data as an input value to use a data recognition model. Also, the data recognition unit 1320 may determine, based on predetermined data, at least one pseudo morpheme to be recommended and at least one word to be recommended, and determine whether to display a blank character by using the data recognition unit 1320 . In addition, a result value output by the data recognition model using the obtained data as an input value may be used to update the data recognition model.

구체적으로, 데이터 인식부(1320)는 인식 데이터로서 사용자로부터 입력된 문자를 획득할 수 있다. 데이터 인식부(1320)은 획득된 문자를 데이터 인식 모델에 적용하여, 적어도 하나의 의사 형태소를 획득할 수 있다. 예를 들어, 데이터 인식부(1320)는 획득된 문자를 데이터 인식 모델에 적용하여 사용자의 사용 확률이 높은 순서 또는 가중치가 높은 순서에 따라 일정 개수의 의사 형태소를 획득할 수 있다.Specifically, the data recognition unit 1320 may obtain a character input from the user as recognition data. The data recognition unit 1320 may obtain at least one pseudo morpheme by applying the obtained character to the data recognition model. For example, the data recognition unit 1320 may obtain a predetermined number of pseudo morphemes according to the order in which the user's use probability is high or the weight is high by applying the obtained character to the data recognition model.

또는, 데이터 인식부(1320)는 인식 데이터로서, 사용자에 의하여 입력되거나 또는 복수의 의사 형태소들 중에서 선택된 의사 형태소를 획득할 수 있다. 데이터 인식부(1320)는 획득된 의사 형태소를 데이터 인식 모델에 적용하여, 적어도 하나의 어절을 결정할 수 있다. 예를 들어, 데이터 인식부(1320)는 획득된 의사 형태소를 데이터 인식 모델에 적용하여 사용자의 사용 확률이 높은 순서 또는 가중치가 높은 순서에 따라 일정 개수의 의사 형태소를 획득할 수 있다.Alternatively, the data recognition unit 1320 may acquire a pseudo morpheme input by a user or selected from among a plurality of pseudo morphemes as recognition data. The data recognition unit 1320 may determine at least one word by applying the acquired pseudo morpheme to the data recognition model. For example, the data recognizer 1320 may apply the obtained pseudo morpheme to the data recognition model to obtain a predetermined number of pseudo morphemes according to an order in which a user's use probability is high or an order in which a weight is high.

또는, 데이터 인식부(1320)는 인식 데이터로서 사용자에 의하여 입력되거나 또는 복수의 어절들 중에서 사용자에 의하여 선택된 어절을 획득할 수 있다. 데이터 인식부(1320)는 획득된 어절을 데이터 인식 모델에 적용하여, 적어도 하나의 다른 어절을 결정할 수 있다. 예를 들어, 데이터 인식부(1320)는 획득된 어절을 데이터 인식 모델에 적용하여 사용자의 사용자의 사용 확률이 높은 순서 또는 가중치가 높은 순서에 따라 일정 개수의 어절을 획득할 수 있다.Alternatively, the data recognition unit 1320 may acquire a word input by the user or selected by the user from among a plurality of words as recognition data. The data recognition unit 1320 may determine at least one other word by applying the obtained word to the data recognition model. For example, the data recognition unit 1320 may obtain a certain number of words according to the order in which the user's use probability is high or the weight is high by applying the obtained word words to the data recognition model.

또는, 데이터 인식부(1320)는 획득된 어절을 데이터 인식 모델에 적용하여, 공백 문자를 디스플레이할 것인지 여부에 대한 정보를 획득할 수 있다. 예를 들어, 데이터 인식부(1320)는 획득된 어절을 데이터 인식 모델에 적용하여, 특정 어절 다음에 공백 문자가 위치할 확률 또는 가중치가 일정 기준 이상 또는 이하인지 판단함에 따라 공백 문자를 디스플레이할 것인지 여부에 대한 정보를 획득할 수 있다.Alternatively, the data recognition unit 1320 may obtain information on whether to display a blank character by applying the obtained word to the data recognition model. For example, the data recognition unit 1320 applies the obtained word to the data recognition model to determine whether to display the blank character according to whether the probability or weight of the position of the blank character after the specific word is above or below a certain standard. information can be obtained whether or not

또는, 데이터 인식부(1320)는 획득된 어절을 데이터 인식 모델에 적용하여, 공백 문자를 디스플레이할 것인지 여부에 대한 정보를 획득하고, 상기 정보가 공백 문자를 디스플레이하는 것을 나타내는 정보인 경우, 상기 공백 문자 다음에 위치할 적어도 하나의 의사 형태소 또는 어절을 획득할 수 있다. 이때, 데이터 인식부(1320)는 사용자의 사용 확률이 높은 순서 또는 가중치가 높은 순서에 따라 일정 개수의 의사 형태소 또는 어절을 획득할 수 있다. 데이터 학습부(1310)의 적어도 일부 및 데이터 인식부(1320)의 적어도 일부는, 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 학습부(1310) 및 데이터 인식부(1320) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 전자 장치에 탑재될 수도 있다. 이때, 인공 지능을 위한 전용 하드웨어 칩은 확률 연산에 특화된 전용 프로세서로서, 기존의 범용 프로세서보다 병렬처리 성능이 높아 기계 학습과 같은 인공 지능 분야의 연산 작업을 빠르게 처리할 수 있다.Alternatively, the data recognition unit 1320 applies the obtained word to the data recognition model to obtain information on whether to display a blank character, and when the information is information indicating displaying a blank character, the blank At least one pseudo morpheme or word to be positioned after the character may be acquired. In this case, the data recognition unit 1320 may acquire a certain number of pseudo morphemes or words according to the order in which the user's use probability is high or the weight is high. At least a portion of the data learning unit 1310 and at least a portion of the data recognition unit 1320 may be manufactured in the form of at least one hardware chip and mounted in an electronic device. For example, at least one of the data learning unit 1310 and the data recognition unit 1320 may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or a conventional general-purpose processor (eg, CPU) Alternatively, it may be manufactured as a part of an application processor) or a graphics-only processor (eg, GPU) and mounted in the various electronic devices described above. In this case, the dedicated hardware chip for artificial intelligence is a dedicated processor specialized in probability calculation, and has higher parallel processing performance than conventional general-purpose processors, so that it can quickly process computational tasks in artificial intelligence fields, such as machine learning.

데이터 학습부(1310) 및 데이터 인식부(1320)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 학습부(1310) 및 데이터 인식부(1320) 중 하나는 디바이스(1000)에 포함되고, 나머지 하나는 서버에 포함될 수 있다. 또한, 데이터 학습부(1310) 및 데이터 인식부(1320)는 유선 또는 무선으로 통하여, 데이터 학습부(1310)가 구축한 모델 정보를 데이터 인식부(1320)로 제공할 수도 있고, 데이터 인식부(1320)로 입력된 데이터가 추가 학습 데이터로서 데이터 학습부(1310)로 제공될 수도 있다.The data learning unit 1310 and the data recognition unit 1320 may be mounted on one electronic device, or may be mounted on separate electronic devices, respectively. For example, one of the data learning unit 1310 and the data recognition unit 1320 may be included in the device 1000 , and the other may be included in the server. In addition, the data learning unit 1310 and the data recognition unit 1320 may provide the model information constructed by the data learning unit 1310 to the data recognition unit 1320 through wired or wireless communication, and the data recognition unit ( Data input to 1320 may be provided to the data learning unit 1310 as additional learning data.

한편, 데이터 학습부(1310)의 적어도 일부 및 데이터 인식부(1320)의 적어도 일부는 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 학습부(1310) 및 데이터 인식부(1320) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다. Meanwhile, at least a portion of the data learning unit 1310 and at least a portion of the data recognition unit 1320 may be implemented as a software module. When at least one of the data learning unit 1310 and the data recognition unit 1320 is implemented as a software module (or a program module including instructions), the software module is a computer-readable, non-transitory readable It may be stored in a recording medium (non-transitory computer readable media). Also, in this case, at least one software module may be provided by an operating system (OS) or may be provided by a predetermined application. Alternatively, a part of the at least one software module may be provided by an operating system (OS), and the other part may be provided by a predetermined application.

도 17은 일부 실시예에 따른 데이터 학습부(1310)의 블록도이다.17 is a block diagram of a data learning unit 1310 according to some exemplary embodiments.

도 17을 참조하면, 일부 실시예에 따른 데이터 학습부(1310)는 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5)를 포함할 수 있다. 다양한 실시예로, 데이터 학습부(1310)는 데이터 획득부(1310-1) 및 모델 학습부(1310-4)를 필수적으로 포함하고, 전처리부(1310-2), 학습 데이터 선택부(1310-3) 및 모델 평가부(1310-5) 중 적어도 하나를 선택적으로 더 포함할 수 있다.데이터 획득부(1310-1)는 사용자로부터 입력된 문자에 대한 추천 단어를 결정하는데, 필요한 학습 데이터를 획득할 수 있다. 데이터 획득부(1310-1)는 추천할 의사 형태소 및 추천할 어절을 결정하고, 추천된 어절의 다음에 공백 문자를 디스플레이할 것인지 여부를 결정하기 위한 학습을 위하여 필요한 학습 데이터를 획득할 수 있다.Referring to FIG. 17 , the data learning unit 1310 according to some exemplary embodiments includes a data acquiring unit 1310-1, a preprocessing unit 1310-2, a training data selection unit 1310-3, and a model learning unit 1310. -4) and a model evaluation unit 1310-5. According to various embodiments, the data learning unit 1310 essentially includes a data acquiring unit 1310 - 1 and a model learning unit 1310 - 4 , a preprocessing unit 1310 - 2 , and a training data selection unit 1310 - 3) and at least one of the model evaluator 1310-5 may be optionally further included. The data obtaining unit 1310-1 obtains learning data necessary to determine a recommended word for a character input from the user. can do. The data acquisition unit 1310-1 may acquire learning data necessary for learning to determine a pseudo morpheme to be recommended and a word to be recommended, and to determine whether to display a blank character after the recommended word.

데이터 획득부(1310-1)는, 예를 들어, 소정의 사용자 음성, 소정의 컨텍스트 정보를 획득할 수 있다. 또한, 데이터 획득부(1310-1)는 디바이스(1000)에 의해 추천된 적어도 하나의 의사 형태소 또는 어절 중에서 사용자가 선택한 의사 형태소 또는 어절에 대한 정보를 획득할 수 있다.The data acquisition unit 1310-1 may acquire, for example, a predetermined user voice and predetermined context information. Also, the data acquisition unit 1310-1 may acquire information on the pseudo morpheme or word selected by the user from among at least one pseudo morpheme or word recommended by the device 1000 .

전처리부(1310-2)는 추천할 의사 형태소 및 추천할 어절을 결정하고, 추천된 어절의 다음에 공백 문자를 디스플레이할 것인지 여부를 결정하기 위한 학습에 획득된 데이터가 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(1310-2)는 후술할 모델 학습부(1310-4)가 사용자의 의도 판단, 연관 정보의 제공 또는 대체 동작의 추천을 위한 학습을 위하여 획득된 데이터를 이용할 수 있도록, 획득된 데이터를 기 설정된 포맷으로 가공할 수 있다.The preprocessor 1310-2 determines a pseudo morpheme to be recommended and a word to recommend, and uses the obtained data for learning to determine whether to display a blank character next to the recommended word. Data can be preprocessed. The pre-processing unit 1310-2 uses the acquired data so that the model learning unit 1310-4, which will be described later, uses the acquired data for learning for determining the user's intention, providing related information, or recommending an alternative operation. It can be processed in a preset format.

학습 데이터 선택부(1310-3)는 전처리된 데이터 중에서 학습에 필요한 학습 데이터를 선택할 수 있다. 선택된 학습 데이터는 모델 학습부(1310-4)에 제공될 수 있다. 학습 데이터 선택부(1310-3)는 추천할 의사 형태소 및 추천할 어절을 결정하고, 추천된 어절의 다음에 공백 문자를 디스플레이할 것인지 여부를 결정하기 위한 기 설정된 기준에 따라, 전처리된 데이터 중에서 학습에 필요한 학습 데이터를 선택할 수 있다. 또한, 학습 데이터 선택부(1310-3)는 후술할 모델 학습부(1310-4)에 의한 학습에 의해 기 설정된 기준에 따라 학습 데이터를 선택할 수도 있다.The learning data selection unit 1310 - 3 may select learning data necessary for learning from among the pre-processed data. The selected training data may be provided to the model learning unit 1310 - 4 . The learning data selection unit 1310-3 determines a pseudo morpheme to be recommended and a word to be recommended, and learns from the preprocessed data according to a preset criterion for determining whether to display a blank character after the recommended word. You can select the training data you need. Also, the training data selection unit 1310-3 may select training data according to a preset criterion by learning by the model learning unit 1310-4, which will be described later.

모델 학습부(1310-4)는 데이터 획득부(1310-1)를 통하여 획득되거나 또는 학습 데이터 선택부(1310-3)에서 선택된 학습 데이터에 기초하여 추천할 의사 형태소 및 추천할 어절을 결정하고, 추천된 어절의 다음에 공백 문자를 디스플레이할 것인지 여부를 결정하기 위한 기준을 학습할 수 있다. 또한, 모델 학습부(1310-4)는 추천할 의사 형태소 및 추천할 어절을 결정하고, 추천된 어절의 다음에 공백 문자를 디스플레이할 것인지 여부를 결정하기 위하여 어떤 학습 데이터를 이용해야 하는지에 대한 기준을 학습할 수도 있다.The model learning unit 1310-4 determines a pseudo morpheme to be recommended and a word to be recommended based on the training data acquired through the data acquisition unit 1310 - 1 or selected by the training data selection unit 1310 - 3 , A criterion for determining whether to display a space character after a suggested word can be learned. In addition, the model learning unit 1310 - 4 determines a pseudo morpheme to be recommended and a word to be recommended, and a criterion for which training data should be used to determine whether to display a blank character after the recommended word. can also learn

또한, 모델 학습부(1310-4)는 추천할 의사 형태소 및 추천할 어절을 결정하고, 추천된 어절의 다음에 공백 문자를 디스플레이할 것인지 여부를 결정하는데 이용되는 데이터 인식 모델을 학습 데이터를 이용하여 학습시킬 수 있다. 이 경우, 데이터 인식 모델은 미리 구축된 모델일 수 있다. 예를 들어, 데이터 인식 모델은 기본 학습 데이터(예를 들어, 샘플 데이터 등)을 입력받아 미리 구축된 모델일 수 있다.In addition, the model learning unit 1310-4 determines a pseudo morpheme to be recommended and a word to be recommended, and uses the training data to apply a data recognition model used to determine whether to display a blank character after the recommended word. can learn In this case, the data recognition model may be a pre-built model. For example, the data recognition model may be a model built in advance by receiving basic training data (eg, sample data, etc.).

데이터 인식 모델은, 데이터 인식 모델의 적용 분야, 학습의 목적 또는 장치의 컴퓨터 성능 등을 고려하여 구축될 수 있다. 데이터 인식 모델은 인간의 뇌 구조를 컴퓨터 상에서 모의하도록 설계될 수 있다. 데이터 인식 모델은 인간의 신경망의 뉴런(neuron)을 모의하는, 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드들은 시냅스(synapse)를 통하여 신호를 주고 받는 뉴런의 시냅틱(synaptic) 활동을 모의하도록 각각 연결 관계를 형성할 수 있다. 예를 들어, 데이터 인식 모델은 신경망 모델, 또는 신경망 모델에서 발전한 딥 러닝 모델을 포함할 수 있다. 딥 러닝 모델에서 복수의 네트워크 노드들은 서로 다른 깊이(또는, 레이어)에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고 받을 수 있다.. 예컨대, DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델이 데이터 인식 모델로서 사용될 수 있으나, 이에 한정되지 않는다.The data recognition model may be constructed in consideration of the field of application of the data recognition model, the purpose of learning, or the computer performance of the device. Data recognition models can be designed to simulate human brain structures on a computer. The data recognition model may include a plurality of network nodes having weights that simulate neurons of a human neural network. A plurality of network nodes may each form a connection relationship to simulate a synaptic activity of a neuron that transmits and receives a signal through a synapse. For example, a data recognition model may include a neural network model, or a deep learning model developed from a neural network model. In a deep learning model, a plurality of network nodes may exchange data according to a convolutional connection relationship while being located at different depths (or layers). For example, Deep Neural Network (DNN), Recurrent Neural (RNN) Network) and a model such as a Bidirectional Recurrent Deep Neural Network (BRDNN) may be used as the data recognition model, but is not limited thereto.

다양한 실시예에 따르면, 모델 학습부(1310-4)는 미리 구축된 데이터 인식 모델이 복수 개가 존재하는 경우, 입력된 학습 데이터와 기본 학습 데이터의 관련성이 큰 데이터 인식 모델을 학습할 데이터 인식 모델로 결정할 수 있다. 이 경우, 기본 학습 데이터는 데이터의 타입별로 기 분류되어 있을 수 있으며, 데이터 인식 모델은 데이터의 타입별로 미리 구축되어 있을 수 있다. 예를 들어, 기본 학습 데이터는 학습 데이터가 생성된 지역, 학습 데이터가 생성된 시간, 학습 데이터의 크기, 학습 데이터의 장르, 학습 데이터의 생성자, 학습 데이터 내의 오브젝트의 종류 등과 같은 다양한 기준으로 기 분류되어 있을 수 있다. According to various embodiments, when a plurality of pre-built data recognition models exist, the model learning unit 1310 - 4 uses a data recognition model that has a high correlation between the input training data and the basic learning data as a data recognition model to learn. can decide In this case, the basic learning data may be pre-classified for each type of data, and the data recognition model may be previously built for each type of data. For example, the basic training data is pre-classified by various criteria such as the region where the training data is generated, the time when the training data is generated, the size of the training data, the genre of the training data, the creator of the training data, the type of object in the training data, etc. may have been

또한, 모델 학습부(1310-4)는, 예를 들어, 오류 역전파법(error back-propagation) 또는 경사 하강법(gradient descent)을 포함하는 학습 알고리즘 등을 이용하여 데이터 인식 모델을 학습시킬 수 있다.Also, the model learning unit 1310 - 4 may train the data recognition model using, for example, a learning algorithm including error back-propagation or gradient descent. .

또한, 모델 학습부(1310-4)는, 예를 들어, 학습 데이터 중 적어도 일부를 판단 기준으로 이용하는 지도 학습(supervised learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다.Also, the model learning unit 1310 - 4 may train the data recognition model through, for example, supervised learning using at least a portion of the learning data as a criterion for determination.

또한, 모델 학습부(1310-4)는, 예를 들어, 별다른 지도없이 학습 데이터를 이용하여 사용자의 의도 판단, 연관 정보의 제공 및 대체 동작의 추천을 위해 필요한 데이터의 종류를 스스로 학습함으로써, 사용자의 의도 판단, 연관 정보의 제공 및 대체 동작의 추천을 위한 기준을 발견하는 비지도 학습(unsupervised learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다. 예를 들어, 모델 학습부(1310-4)는 어절 또는 의사 형태소에 대한 사용자의 사용 빈도를 고려하여 데이터 인식 모델을 학습시킬 수 있다. 또는, 모델 학습부(1310-4)는 사용자가 선택한 어절 또는 의사 형태소에 대한 정보인 피드백 정보를 이용하여 데이터 인식 모델을 학습시킬 수 있다. In addition, the model learning unit 1310 - 4, for example, by learning the type of data required for determining the user's intention, providing related information, and recommending an alternative operation by using the training data without any guidance, by itself, The data recognition model can be trained through unsupervised learning to discover criteria for determining the intention of , providing related information, and recommending an alternative action. For example, the model learning unit 1310 - 4 may train the data recognition model in consideration of a user's frequency of use of a word or pseudo morpheme. Alternatively, the model learning unit 1310 - 4 may train the data recognition model by using feedback information that is information on a word or pseudo morpheme selected by the user.

또한, 모델 학습부(1310-4)는, 예를 들어, 학습에 따른 사용자의 의도 판단, 연관 정보의 제공 및 대체 동작의 추천의 결과가 올바른 지에 대한 피드백을 이용하는 강화 학습(reinforcement learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다. In addition, the model learning unit 1310 - 4 is, for example, through reinforcement learning using feedback on whether a result of determining the user's intention according to learning, providing related information, and recommending an alternative operation is correct. , it is possible to train a data recognition model.

또한, 데이터 인식 모델이 학습되면, 모델 학습부(1310-4)는 학습된 데이터 인식 모델을 저장할 수 있다. 이 경우, 모델 학습부(1310-4)는 학습된 데이터 인식 모델을 데이터 인식부(1320)를 포함하는 전자 장치(예를 들어, 디바이스(1000))의 메모리에 저장할 수 있다. 또는, 모델 학습부(1310-4)는 학습된 데이터 인식 모델을 후술할 데이터 인식부(1320)를 포함하는 전자 장치의 메모리(예를 들어, 디바이스(1000))에 저장할 수 있다. 또는, 모델 학습부(1310-4)는 학습된 데이터 인식 모델을 전자 장치(예를 들어, 디바이스(1000))와 유선 또는 무선 네트워크로 연결되는 서버의 메모리에 저장할 수도 있다.Also, when the data recognition model is learned, the model learning unit 1310 - 4 may store the learned data recognition model. In this case, the model learning unit 1310 - 4 may store the learned data recognition model in the memory of the electronic device (eg, the device 1000 ) including the data recognition unit 1320 . Alternatively, the model learning unit 1310 - 4 may store the learned data recognition model in a memory (eg, the device 1000 ) of the electronic device including the data recognition unit 1320 to be described later. Alternatively, the model learning unit 1310 - 4 may store the learned data recognition model in a memory of a server connected to the electronic apparatus (eg, the device 1000 ) through a wired or wireless network.

이 경우, 학습된 데이터 인식 모델이 저장되는 메모리는, 예를 들면, 전자 장치의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 함께 저장할 수도 있다. 또한, 메모리는 소프트웨어 및/또는 프로그램을 저장할 수도 있다. 프로그램은, 예를 들면, 커널, 미들웨어, 어플리케이션 프로그래밍 인터페이스(API) 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 등을 포함할 수 있다.In this case, the memory in which the learned data recognition model is stored may also store, for example, commands or data related to at least one other component of the electronic device. The memory may also store software and/or programs. A program may include, for example, a kernel, middleware, an application programming interface (API) and/or an application program (or "application"), and the like.

모델 평가부(1310-5)는 데이터 인식 모델에 평가 데이터를 입력하고, 평가 데이터로부터 출력되는 인식 결과가 소정 기준을 만족하지 못하는 경우, 모델 학습부(1310-4)로 하여금 다시 학습하도록 할 수 있다. 이 경우, 평가 데이터는 데이터 인식 모델을 평가하기 위한 기 설정된 데이터일 수 있다. The model evaluation unit 1310-5 may input evaluation data into the data recognition model, and when the recognition result output from the evaluation data does not satisfy a predetermined criterion, the model learning unit 1310-4 may be trained again. have. In this case, the evaluation data may be preset data for evaluating the data recognition model.

예를 들어, 모델 평가부(1310-5)는 평가 데이터에 대한 학습된 데이터 인식 모델의 인식 결과 중에서, 인식 결과가 정확하지 않은 평가 데이터의 개수 또는 비율이 미리 설정된 임계치를 초과하는 경우 소정 기준을 만족하지 못한 것으로 평가할 수 있다. 예컨대, 소정 기준이 비율 2%로 정의되는 경우, 학습된 데이터 인식 모델이 총 1000개의 평가 데이터 중의 20개를 초과하는 평가 데이터에 대하여 잘못된 인식 결과를 출력하는 경우, 모델 평가부(1310-5)는 학습된 데이터 인식 모델이 적합하지 않은 것으로 평가할 수 있다.For example, the model evaluator 1310-5 sets a predetermined criterion when the number or ratio of evaluation data for which the recognition result is not accurate among the recognition results of the learned data recognition model for the evaluation data exceeds a preset threshold. It can be evaluated as unsatisfactory. For example, when the predetermined criterion is defined as a ratio of 2%, when the learned data recognition model outputs an erroneous recognition result for more than 20 evaluation data out of a total of 1000 evaluation data, the model evaluation unit 1310-5 can be evaluated that the trained data recognition model is not suitable.

한편, 학습된 데이터 인식 모델이 복수 개가 존재하는 경우, 모델 평가부(1310-5)는 각각의 학습된 데이터 인식 모델에 대하여 소정 기준을 만족하는지를 평가하고, 소정 기준을 만족하는 모델을 최종 데이터 인식 모델로서 결정할 수 있다. 이 경우, 소정 기준을 만족하는 모델이 복수 개인 경우, 모델 평가부(1310-5)는 평가 점수가 높은 순으로 미리 설정된 어느 하나 또는 소정 개수의 모델을 최종 데이터 인식 모델로서 결정할 수 있다.On the other hand, when there are a plurality of learned data recognition models, the model evaluation unit 1310 - 5 evaluates whether each learned data recognition model satisfies a predetermined criterion, and recognizes a model that satisfies the predetermined criterion as final data It can be determined as a model. In this case, when there are a plurality of models that satisfy the predetermined criteria, the model evaluator 1310 - 5 may determine any one or a predetermined number of models preset in the order of the highest evaluation score as the final data recognition model.

한편, 데이터 학습부(1310) 내의 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 전자 장치에 탑재될 수도 있다.On the other hand, in the data learning unit 1310, the data acquisition unit 1310-1, the preprocessor 1310-2, the training data selection unit 1310-3, the model learning unit 1310-4, and the model evaluation unit 1310 At least one of -5) may be manufactured in the form of at least one hardware chip and mounted in an electronic device. For example, at least one of the data acquisition unit 1310-1, the preprocessor 1310-2, the training data selection unit 1310-3, the model learning unit 1310-4, and the model evaluation unit 1310-5 One may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or may be manufactured as part of an existing general-purpose processor (eg, CPU or application processor) or graphics-only processor (eg, GPU) as described above. It may be mounted on various electronic devices.

또한, 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 일부는 디바이스(1000)에 포함되고, 나머지 일부는 서버에 포함될 수 있다.In addition, the data acquisition unit 1310-1, the preprocessor 1310-2, the training data selection unit 1310-3, the model learning unit 1310-4, and the model evaluation unit 1310-5 are one electronic unit. It may be mounted on the device, or may be respectively mounted on separate electronic devices. For example, some of the data acquisition unit 1310-1, the preprocessor 1310-2, the training data selection unit 1310-3, the model learning unit 1310-4, and the model evaluation unit 1310-5 may be included in the device 1000, and the remaining part may be included in the server.

또한, 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.In addition, at least one of the data acquisition unit 1310-1, the preprocessor 1310-2, the training data selection unit 1310-3, the model learning unit 1310-4, and the model evaluation unit 1310-5 is It may be implemented as a software module. At least one of the data acquisition unit 1310-1, the preprocessor 1310-2, the training data selection unit 1310-3, the model learning unit 1310-4, and the model evaluation unit 1310-5 is a software module When implemented as (or, a program module including instructions), the software module may be stored in a computer-readable non-transitory computer readable medium. Also, in this case, at least one software module may be provided by an operating system (OS) or may be provided by a predetermined application. Alternatively, a part of the at least one software module may be provided by an operating system (OS), and the other part may be provided by a predetermined application.

프로세서(1300)(또는, 제어부)는 다양한 데이터 인식 모델을 이용할 수 있으며, 데이터 인식 모델을 통해 다양한 방법으로 사용자의 의도를 판단하고 연관 정보를 제공하고 대체 동작을 추천을 위한 기준을 효율적으로 학습할 수 있다. The processor 1300 (or control unit) may use various data recognition models, and through the data recognition model, it is possible to determine the user's intention in various ways, provide related information, and efficiently learn criteria for recommending alternative actions. can

도 18은 일부 실시예에 따른 데이터 인식부(1320)의 블록도이다.18 is a block diagram of a data recognition unit 1320 according to some exemplary embodiments.

도 18을 참조하면, 일부 실시예에 따른 데이터 인식부(1320)는 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5)를 포함할 수 있다. 다양한 실시예로, 데이터 인식부(1320)는 데이터 획득부(1320-1) 및 인식 결과 제공부(1320-4)를 필수적으로 포함하고, 전처리부(1320-2), 인식 데이터 선택부(1320-3) 및 모델 갱신부(1320-5) 중 적어도 하나를 선택적으로 더 포함할 수 있다.Referring to FIG. 18 , the data recognition unit 1320 according to some embodiments includes a data acquisition unit 1320-1, a pre-processing unit 1320-2, a recognition data selection unit 1320-3, and a recognition result providing unit ( 1320-4) and a model update unit 1320-5. In various embodiments, the data recognition unit 1320 essentially includes a data acquisition unit 1320-1 and a recognition result providing unit 1320-4, a pre-processing unit 1320-2, and a recognition data selection unit 1320 -3) and at least one of the model updater 1320-5 may be selectively further included.

데이터 획득부(1320-1)는 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정하는데 필요한 데이터를 획득할 수 있다. 예로, 데이터 획득부(1320-1)는 인식 데이터로서 사용자로부터 입력된 문자, 의사 형태소 또는 어절을 획득할 수 있다. 또는, 데이터 획득부(1320-1)는 사용자에 의하여 선택된 문자, 의사 형태소 또는 어절을 획득할 수 있다. The data acquisition unit 1320-1 may acquire data necessary to determine a pseudo morpheme to be recommended and a word to be recommended, and to determine whether to display a blank character. For example, the data acquisition unit 1320 - 1 may acquire a character, pseudo morpheme, or word input from a user as recognition data. Alternatively, the data acquisition unit 1320-1 may acquire a character, pseudo morpheme, or word selected by the user.

전처리부(1320-2)는 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정하기 위해 획득된 인식 데이터가 이용될 수 있도록, 데이터 획득부(1320-1)로부터 획득된 인식 데이터를 전처리할 수 있다. 전처리부(1320-2)는 후술할 인식 결과 제공부(1320-4)가 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정하기 위하여 획득된 데이터를 이용할 수 있도록, 획득된 데이터를 기 설정된 포맷으로 가공할 수 있다. 예를 들어, 데이터 획득부(1320-1)는 디바이스(1000)에 입력되는 문자를 획득할 수 있다. 또한, 데이터 획득부(1320-1)는 사용자 또는 디바이스(1000)에 관련된 컨텍스트 정보를 획득할 수 있다. 또한, 예를 들어, 컨텍스트 정보는 디바이스(1000)에서 생성된 정보 또는 외부 장치로부터 수신된 정보일 수 있다.The pre-processing unit 1320 - 2 determines a pseudo morpheme to be recommended and a recommended word, and receives the recognition data obtained from the data obtaining unit 1320 - 1 so that the obtained recognition data can be used to determine whether to display a blank character. The acquired recognition data may be pre-processed. The preprocessing unit 1320-2 determines a pseudo morpheme and a recommended word to be recommended by the recognition result providing unit 1320-4, which will be described later, and uses the acquired data to determine whether to display a blank character. , the obtained data can be processed into a preset format. For example, the data acquisition unit 132 - 1 may acquire a character input to the device 1000 . Also, the data acquisition unit 132 - 1 may acquire context information related to the user or the device 1000 . Also, for example, the context information may be information generated by the device 1000 or information received from an external device.

인식 데이터 선택부(1320-3)는 전처리된 인식 데이터 중에서 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정하는데 필요한 인식 데이터를 선택할 수 있다. 선택된 인식 데이터는 인식 결과 제공부(1320-4)에게 제공될 수 있다. 인식 데이터 선택부(1320-3)는, 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정하기 위한 기 설정된 기준에 따라, 전처리된 인식 데이터 중에서 일부 또는 전부를 선택할 수 있다. 또한, 인식 데이터 선택부(1320-3)는 후술할 모델 학습부(1310-4)에 의한 학습에 의해 기 설정된 기준에 따라 인식 데이터를 선택할 수도 있다.The recognition data selection unit 1320 - 3 may determine a pseudo morpheme to be recommended and a recommended word from among the preprocessed recognition data, and may select recognition data necessary to determine whether to display a blank character. The selected recognition data may be provided to the recognition result providing unit 1320 - 4 . The recognition data selection unit 1320-3 is configured to select some or all of the preprocessed recognition data according to a preset criterion for determining a pseudo morpheme to be recommended and a word to be recommended, and determining whether to display a blank character. can Also, the recognition data selection unit 1320 - 3 may select recognition data according to a preset criterion by learning by the model learning unit 1310 - 4 to be described later.

인식 결과 제공부(1320-4)는 선택된 인식 데이터를 데이터 인식 모델에 적용하여 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정할 수 있다. 인식 결과 제공부(1320-4)는 데이터의 인식 목적에 따른 인식 결과를 제공할 수 있다. 인식 결과 제공부(1320-4)는 데이터 획득부(1320-1)를 통하여 획득된 인식 데이터 또는 인식 데이터 선택부(1320-3)에 의해 선택된 인식 데이터를 입력 값으로 데이터 인식 모델에 적용할 수 있다. 인식 결과 제공부(1320-4)는 데이터 인식 모델의 적용 결과로서, 적어도 하나의 의사 형태소, 적어도 하나의 어절 또는 공백 문자를 디스플레이할 것인지 여부에 대한 정보를 획득할 수 있다.The recognition result providing unit 1320 - 4 may apply the selected recognition data to the data recognition model to determine a pseudo morpheme to recommend and a recommended word, and determine whether to display a blank character. The recognition result providing unit 1320 - 4 may provide a recognition result according to the purpose of data recognition. The recognition result providing unit 1320-4 may apply the recognition data acquired through the data acquiring unit 1320-1 or the recognition data selected by the recognition data selection unit 1320-3 as an input value to the data recognition model. have. The recognition result providing unit 1320 - 4 may obtain information on whether to display at least one pseudo morpheme, at least one word, or a blank character as a result of applying the data recognition model.

모델 갱신부(1320-5)는 인식 결과 제공부(1320-4)에 의해 제공되는 인식 결과에 대한 평가에 기초하여, 데이터 인식 모델이 갱신되도록 할 수 있다. 예를 들어, 모델 갱신부(1320-5)는 인식 결과 제공부(1320-4)에 의해 제공되는 인식 결과를 모델 학습부(1310-4)에게 제공함으로써, 모델 학습부(1310-4)가 데이터 인식 모델을 갱신하도록 할 수 있다. The model updater 1320 - 5 may update the data recognition model based on the evaluation of the recognition result provided by the recognition result providing unit 1320 - 4 . For example, the model updating unit 1320-5 provides the recognition result provided by the recognition result providing unit 1320-4 to the model learning unit 1310-4, so that the model learning unit 1310-4 is The data recognition model can be updated.

구체적으로, 인식 결과에 대한 평가는, 디바이스(1000)가 사용자에게 추천한 의사 형태소, 적어도 하나의 어절 또는 공백 문자의 디스플레이 여부에 따른 사용자 피드백 정보가 될 수 있다. 예로, 디바이스(1000)가 추천한 적어도 하나의 의사 형태소 또는 적어도 하나의 어절 중에 사용자가 선택한 의사 형태소 또는 어절은 사용자 피드백 정보로서 데이터 인식 모델을 갱신하기 위한 학습 데이터로서 이용될 수 있다. 또는, 디바이스(1000)가 공백 문자를 디스플레이한 경우, 상기 공백 문자를 수용하여 다음 문자를 입력하거나 또는 상기 공백 문자를 제거하는 사용자 입력은 사용자 피드백 정보로서 데이터 인식 모델을 갱신하기 위한 학습 데이터로서 이용될 수 있다. 또는, 디바이스(1000)가 공백 문자를 디스플레이하지 않은 경우, 공백 문자를 입력하는 사용자 입력은 사용자 피드백 정보로서 데이터 인식 모델을 갱신하기 위한 학습 데이터로서 이용될 수 있다. Specifically, the evaluation of the recognition result may be user feedback information according to whether a pseudo morpheme recommended by the device 1000 to the user, at least one word, or a blank character is displayed. For example, the pseudo morpheme or word selected by the user from among at least one pseudo morpheme or at least one word recommended by the device 1000 may be used as user feedback information as training data for updating the data recognition model. Alternatively, when the device 1000 displays a blank character, the user input for inputting the next character by accommodating the blank character or removing the blank character is used as learning data for updating the data recognition model as user feedback information can be Alternatively, when the device 1000 does not display a blank character, a user input for inputting a blank character may be used as user feedback information as learning data for updating the data recognition model.

한편, 데이터 인식부(1320) 내의 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 전자 장치에 탑재될 수도 있다.On the other hand, in the data recognition unit 1320, the data acquisition unit 1320-1, the preprocessor 1320-2, the recognition data selection unit 1320-3, the recognition result providing unit 1320-4, and the model update unit ( 1320-5) may be manufactured in the form of at least one hardware chip and mounted in an electronic device. For example, among the data acquisition unit 1320-1, the preprocessor 1320-2, the recognition data selection unit 1320-3, the recognition result provision unit 1320-4, and the model update unit 1320-5 At least one may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or may be manufactured as part of an existing general-purpose processor (eg, CPU or application processor) or graphics-only processor (eg, GPU). It may be mounted on one various electronic devices.

또한, 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 일부는 디바이스(1000)에 포함되고, 나머지 일부는 서버에 포함될 수 있다.In addition, the data acquisition unit 1320-1, the preprocessor 1320-2, the recognition data selection unit 1320-3, the recognition result providing unit 1320-4, and the model update unit 1320-5 are one It may be mounted on an electronic device, or may be respectively mounted on separate electronic devices. For example, among the data acquisition unit 1320-1, the preprocessor 1320-2, the recognition data selection unit 1320-3, the recognition result provision unit 1320-4, and the model update unit 1320-5 Some may be included in the device 1000 , and some may be included in the server.

또한, 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.In addition, at least one of the data acquisition unit 1320-1, the preprocessor 1320-2, the recognition data selection unit 1320-3, the recognition result providing unit 1320-4, and the model update unit 1320-5 may be implemented as a software module. At least one of the data acquisition unit 1320-1, the preprocessor 1320-2, the recognition data selection unit 1320-3, the recognition result providing unit 1320-4, and the model update unit 1320-5 is software. When implemented as a module (or a program module including instructions), the software module may be stored in a computer-readable non-transitory computer readable medium. Also, in this case, at least one software module may be provided by an operating system (OS) or may be provided by a predetermined application. Alternatively, a part of the at least one software module may be provided by an operating system (OS), and the other part may be provided by a predetermined application.

또한, 디바이스(1000)는 학습된 결과가 적용된 데이터 인식 모델을 이용하여 사용자의 의도에 부합하는 서비스를 사용자에게 제공할 수 있게 된다.In addition, the device 1000 may provide a service meeting the user's intention to the user by using the data recognition model to which the learned result is applied.

도 19는 일부 실시예에 따른 디바이스(1000) 및 서버(2000)가 서로 연동함으로써 데이터를 학습하고 인식하는 예시를 나타내는 도면이다.19 is a diagram illustrating an example of learning and recognizing data by interworking with the device 1000 and the server 2000 according to some embodiments.

도 19를 참조하면, 서버(2000)는 사용자로부터 입력된 문자에 대한 추천 단어를 결정하기 위한 기준을 학습할 수 있으며, 디바이스(1000)는 서버(2000)에 의한 학습 결과에 기초하여 사용자로부터 입력된 문자에 대한 추천 단어를 결정할 수 있다.Referring to FIG. 19 , the server 2000 may learn a criterion for determining a recommended word for a character inputted by the user, and the device 1000 may learn a criterion for determining a recommendation word for a character inputted by the user, and the device 1000 may be inputted from the user based on the learning result by the server 2000 . It is possible to determine a recommended word for the written character.

이 경우, 서버(2000)의 모델 학습부(2340)는 도 16에 도시된 데이터 학습부(1310)의 기능을 수행할 수 있다. 서버(2000)의 모델 학습부(2340)는 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정하기 위하여 어떤 데이터를 이용할 지에 관한 기준을 학습할 수 있다. 또한, 서버의 모델 학습부(2340)는, 데이터를 이용하여 추천할 의사 형태소 및 추천할 어절의 결정, 공백 문자를 디스플레이할 것인지 여부에 대한 결정을 어떻게 할지에 관한 기준을 학습할 수 있다. 모델 학습부(2340)는 학습에 이용될 데이터를 획득하고, 획득된 데이터를 후술할 데이터 인식 모델에 적용함으로써, 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정하기 위한 기준을 학습할 수 있다.In this case, the model learning unit 2340 of the server 2000 may perform the function of the data learning unit 1310 illustrated in FIG. 16 . The model learning unit 2340 of the server 2000 may determine a pseudo morpheme to be recommended and a recommended word, and learn a criterion regarding which data to use to determine whether to display a blank character. In addition, the model learning unit 2340 of the server may learn a criterion regarding how to determine a pseudo morpheme to be recommended and a word to be recommended, and a determination as to whether to display a blank character by using the data. The model learning unit 2340 acquires data to be used for learning, and applies the acquired data to a data recognition model to be described later, thereby determining a pseudo morpheme to be recommended and a word to be recommended, and determining whether to display a blank character. standards can be learned.

또한, 디바이스(1000)의 인식 결과 제공부(1320-4)는, 인식 데이터 선택부(1320-3)에 의해 선택된 데이터를 서버(2000)에 의해 생성된 데이터 인식 모델에 적용하여, 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정할 수 있다. 예를 들어, 인식 결과 제공부(1320-4)는, 인식 데이터 선택부(1320-3)에 의해 선택된 데이터를 서버(2000)에게 전송하고, 서버(2000)가 인식 데이터 선택부(1320-3)에 의해 선택된 데이터를 인식 모델에 적용하여, 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정할 것을 요청할 수 있다. 또한, 인식 결과 제공부(1320-4)는 서버(2000)에 의해 판단된 추천할 의사 형태소 및 추천할 어절의 결정, 공백 문자를 디스플레이할 것인지 여부의 결정에 관한 정보를 서버(2000)로부터 수신할 수 있다. In addition, the recognition result providing unit 1320 - 4 of the device 1000 applies the data selected by the recognition data selection unit 1320 - 3 to the data recognition model generated by the server 2000 to make recommendations It is possible to determine a morpheme and a recommended word, and determine whether to display a blank character. For example, the recognition result providing unit 1320-4 transmits the data selected by the recognition data selection unit 1320-3 to the server 2000, and the server 2000 causes the recognition data selection unit 1320-3 ) may be applied to the recognition model to determine a pseudo morpheme to be recommended and a word to be recommended, and to determine whether to display a blank character or not. In addition, the recognition result providing unit 1320 - 4 receives from the server 2000 information regarding the determination of the pseudo morpheme to be recommended and the recommended word determined by the server 2000 , and the determination of whether to display the blank character. can do.

또는, 디바이스(1000)의 인식 결과 제공부(1320-4)는 서버(2000)에 의해 생성된 인식 모델을 서버(2000)로부터 수신하고, 수신된 인식 모델을 이용하여 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정할 수 있다. 이 경우, 디바이스(1000)의 인식 결과 제공부(1320-4)는 인식 데이터 선택부(1320-3)에 의해 선택된 데이터를 서버(2000)로부터 수신된 데이터 인식 모델에 적용하여 추천할 의사 형태소 및 추천할 어절을 결정하고, 공백 문자를 디스플레이할 것인지 여부를 결정할 수 있다. Alternatively, the recognition result providing unit 1320 - 4 of the device 1000 receives the recognition model generated by the server 2000 from the server 2000, and uses the received recognition model to recommend a pseudo morpheme to be recommended. You can determine a word and decide whether to display a space character or not. In this case, the recognition result providing unit 1320 - 4 of the device 1000 applies the data selected by the recognition data selection unit 1320 - 3 to the data recognition model received from the server 2000 to recommend a pseudo morpheme and It is possible to determine a word to be recommended, and determine whether to display a blank character.

또한, 디바이스(1000) 및 서버(2000)는 데이터 인식 모델의 학습 및 데이터 인식을 위한 작업을 효과적으로 분배하여 수행할 수 있으며, 이를 통하여, 사용자의 의도에 부합하는 서비스를 제공하기 위하여 데이터 처리를 효율적으로 수행하고, 사용자의 프라이버시를 효과적으로 보호할 수 있다.In addition, the device 1000 and the server 2000 can effectively distribute and perform tasks for learning and data recognition of the data recognition model, and through this, data processing can be efficiently performed in order to provide a service that meets the user's intention. and can effectively protect the user's privacy.

도 20은 일부 실시예에 따른 데이터 인식 모델을 이용하는 디바이스(1000)의 흐름도이다.20 is a flow diagram of a device 1000 using a data recognition model in accordance with some embodiments.

디바이스(1000)는 문자 입력 창 내에 문자를 입력하는 사용자 입력이 수신되는지를 판단할 수 있다(S2011).The device 1000 may determine whether a user input for inputting text in the text input window is received (S2011).

사용자 입력이 수신되는 경우(S2011-Y), 디바이스(1000)는 입력된 문자를 학습된 데이터 인식 모델에 적용하여, 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 획득할 수 있다(S2013). 예로, 디바이스(1000)는 입력된 문자를 디바이스(1000)의 메모리(1700)에 저장된 학습된 데이터 인식 모델에 적용하여, 적어도 하나의 의사 형태소를 획득할 수 있다. 메모리(1700)는 디바이스(1000)의 내부에 마련된 메모리 또는 디바이스(1000)에 장착되는 메모리 카드 등을 포함할 수 있다. 또한, 데이터 인식 모델은 사용자가 과거에 입력한 문자 또는 음성 데이터에 관한 정보, 의사 형태소들 각각에 대한 통상적인 사용 빈도에 관한 통계 데이터, 상기 디바이스에 의해 추천된 적어도 하나의 의사 형태소 중에서 사용자가 선택한 의사 형태소에 관한 정보 중 적어도 하나를 이용하여 학습된 모델일 수 있다.When a user input is received (S2011-Y), the device 1000 may obtain at least one pseudo morpheme including the inputted character by applying the inputted character to the learned data recognition model (S2013). For example, the device 1000 may acquire at least one pseudo morpheme by applying the input character to the learned data recognition model stored in the memory 1700 of the device 1000 . The memory 1700 may include a memory provided inside the device 1000 or a memory card mounted in the device 1000 . In addition, the data recognition model includes information on text or voice data input by the user in the past, statistical data on typical frequency of use for each of the pseudo morphemes, and at least one pseudo morpheme recommended by the user selected by the user. It may be a model learned using at least one of information about pseudo morphemes.

디바이스(1000)는 획득된 적어도 하나의 의사 형태소를 사용자에게 추천할 수 있다(S2015). 예로, 디바이스(1000)는 획득된 적어도 하나의 의사 형태소를 디스플레이할 수 있다. 이 경우, 디바이스(1000)는 의사 형태소들 각각의 우선 순위를 고려하여 획득된 적어도 하나의 의사 형태소들 중 일부만 디스플레이할 수 있다.The device 1000 may recommend the obtained at least one pseudo morpheme to the user (S2015). For example, the device 1000 may display the acquired at least one pseudo morpheme. In this case, the device 1000 may display only some of the at least one pseudo morpheme obtained by considering the priority of each of the pseudo morphemes.

다음으로, 디바이스(1000)는 적어도 하나의 의사 형태소 중에서 하나를 선택하는 사용자 입력이 수신되는지를 판단할 수 있다(S2017).Next, the device 1000 may determine whether a user input for selecting one of at least one pseudo morpheme is received ( S2017 ).

사용자 입력이 수신되는 경우(S2017-Y), 디바이스(1000)는 선택된 의사 형태소를 학습된 데이터 인식 모델에 적용하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 획득할 수 있다(S2019). 예로, 디바이스(1000)는 디바이스(1000)의 메모리(1700)에 저장된 학습된 데이터 인식 모델에 적용하여, 적어도 하나의 의사 형태소를 획득할 수 있다. 메모리(1700)는 디바이스(1000)의 내부에 마련된 메모리 또는 디바이스(1000)에 장착되는 메모리 카드 등을 포함할 수 있다. 또한, 데이터 인식 모델은 사용자가 과거에 입력한 문자 또는 음성 데이터에 관한 정보, 어절들 각각에 대한 통상적인 사용 빈도에 관한 통계 데이터, 상기 디바이스에 의해 추천된 적어도 하나의 어절 중에서 사용자가 선택한 어절에 관한 정보 중 적어도 하나를 이용하여 학습된 모델일 수 있다.When a user input is received (S2017-Y), the device 1000 may apply the selected pseudo morpheme to the learned data recognition model to obtain at least one word including the selected pseudo morpheme (S2019). For example, the device 1000 may acquire at least one pseudo morpheme by applying the learned data recognition model stored in the memory 1700 of the device 1000 . The memory 1700 may include a memory provided inside the device 1000 or a memory card mounted in the device 1000 . In addition, the data recognition model is based on information on text or voice data input by the user in the past, statistical data on the typical frequency of use for each word, and a word selected by the user from among at least one word recommended by the device. It may be a model learned using at least one of the related information.

디바이스(1000)는 획득된 적어도 하나의 어절을 사용자에게 추천할 수 있다(S2021). 예로, 디바이스(1000)는 획득된 적어도 하나의 어절을 디스플레이할 수 있다. 이 경우, 디바이스(1000)는 어절들 각각의 우선 순위를 고려하여 획득된 적어도 하나의 의사 형태소들 중 일부만 디스플레이할 수도 있다.The device 1000 may recommend the obtained at least one word to the user ( S2021 ). For example, the device 1000 may display at least one acquired word. In this case, the device 1000 may display only some of the at least one pseudo morpheme obtained by considering the priority of each word.

디바이스(1000)는 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 선택된 어절을 문자 입력 창 내에 디스플레이할 수 있다(S2023).The device 1000 may display the selected word in the text input window in response to an input for selecting one from among at least one word (S2023).

한편, 도 20에서, 의사 형태소 및 어절을 제공하는 데이터 인식 모델은 동일한 데이터 인식 모델일 수도 있고, 또는 서로 다른 데이터 인식 모델일 수도 있다.Meanwhile, in FIG. 20 , data recognition models providing pseudo morphemes and words may be the same data recognition model or different data recognition models.

또한, 도 20에서는 디바이스(1000)가 사용자에게 추천할 의사 형태소 및 추천할 어절 모두를 학습된 데이터 인식 모델을 이용하여 획득하는 실시 예를 기술하였으나, 다양한 변형 예에 따라 디바이스(1000)는 의사 형태소를 제공하도록 설정된 학습된 데이터 인식 모델 및 어절을 제공하도록 설정된 학습된 데이터 인식 모델 중 하나만 선택적으로 이용할 수도 있다.Also, in FIG. 20 , an embodiment in which the device 1000 acquires both a pseudo morpheme to be recommended to a user and a word to be recommended to the user has been described using the learned data recognition model. Only one of the trained data recognition model set to provide , and the trained data recognition model set to provide the word may be selectively used.

도 21 내지 도 23은 일부 실시예에 따른 데이터 분석 모델을 이용하는 네트워크 시스템의 흐름도들이다.21 to 23 are flowcharts of a network system using a data analysis model in accordance with some embodiments.

도 21 내지 도 23에서, 네트워크 시스템은 제1 구성 요소(2101,2201,2301) 및 제2 구성 요소(2102, 2202, 2302)를 포함할 수 있다. 여기서, 제1 구성 요소(2101,2201,2301)는 디바이스(1000)이고, 제2 구성 요소(2102, 2202, 2302)는 데이터 분석 모델이 저장된 서버(2000)가 될 수 있다. 또는, 제1 구성 요소(2101,2201,2301)는 범용 프로세서이고, 제2 구성 요소(2102, 2202, 2302)는 인공 지능 전용 프로세서가 될 수 있다. 또는, 제1 구성 요소(2101,2201,2301)는 적어도 하나의 어플리케이션이 될 수 있고, 제2 구성 요소(2102, 2202, 2302)는 운영 체제(operating system, OS)가 될 수 있다. 즉, 제2 구성 요소(2102, 2202, 2302)는 제1 구성 요소(2101,2201,2301)보다 더 집적화되거나, 전용화되거나, 딜레이(delay)가 작거나, 성능이 우세하거나 또는 많은 리소스를 가진 구성 요소로서, 데이터 인식 모델의 생성, 갱신 또는 적용 시에 요구되는 많은 연산을 제1 구성 요소(2101,2201,2301)보다 신속하고 효과적으로 처리할 수 있다.21 to 23 , the network system may include first components 2101,2201,2301 and second components 2102, 2202, 2302. Here, the first components 2101,2201,2301 may be the device 1000, and the second components 2102, 2202, 2302 may be the server 2000 in which the data analysis model is stored. Alternatively, the first components 2101,2201,2301 may be general-purpose processors, and the second components 2102, 2202, and 2302 may be artificial intelligence-only processors. Alternatively, the first component 2101,2201,2301 may be at least one application, and the second component 2102, 2202, 2302 may be an operating system (OS). That is, the second component 2102, 2202, 2302 is more integrated, dedicated, has a smaller delay, has superior performance, or uses more resources than the first component 2101,2201,2301. As a component having a data recognition model, many operations required when generating, updating, or applying a data recognition model can be processed more quickly and effectively than the first components 2101,2201,2301.

이 경우, 제1 구성 요소(2101,2201,2301) 및 제2 구성 요소(2102, 2202, 2302) 간에 데이터를 송/수신하기 위한 인터페이스가 정의될 수 있다. In this case, an interface for transmitting/receiving data between the first components 2101,2201,2301 and the second components 2102, 2202, and 2302 may be defined.

예로, 데이터 인식 모델에 적용할 학습 데이터를 인자 값(또는, 매개 값 또는 전달 값)으로 갖는 API(application program interface)가 정의될 수 있다. API는 어느 하나의 프로토콜(예로, 디바이스(1000)에서 정의된 프로토콜)에서 다른 프로토콜(예로, 서버(2000)에서 정의된 프로토콜)의 어떤 처리를 위해 호출할 수 있는 서브 루틴 또는 함수의 집합으로 정의될 수 있다. 즉, API를 통하여 어느 하나의 프로토콜에서 다른 프로토콜의 동작이 수행될 수 있는 환경이 제공될 수 있다.For example, an API (application program interface) having training data to be applied to the data recognition model as a factor value (or a parameter value or a transfer value) may be defined. An API is defined as a set of subroutines or functions that can be called for any processing of one protocol (eg, the protocol defined in the device 1000) to another protocol (eg, the protocol defined in the server 2000). can be That is, an environment in which an operation of another protocol can be performed in one protocol can be provided through the API.

먼저, 제1 구성 요소(2101)는 문자 입력 창 내에 문자를 입력하는 사용자 입력을 수신할 수 있다(S2111).First, the first component 2101 may receive a user input for inputting a character in the character input window (S2111).

제1 구성 요소(2101)는 입력된 문자에 대한 정보를 제2 구성 요소(2102)에게 전송할 수 있다(S2113). 예로, 제1 구성 요소(2101)는 데이터 인식 모델의 이용을 위하여 제공되는 API 함수의 인자 값으로 입력된 문자를 적용할 수 있다. 이 경우, API 함수는 입력된 문자를 데이터 인식 모델에 적용할 인식 데이터로서 제2 구성 요소(2102)에게 전송할 수 있다. 이 때, 입력된 문자에 대한 정보는 상기 문자를 통신 포맷에 따라 변경 또는 보완한 통신 데이터를 포함할 수 있다.The first component 2101 may transmit information on the input character to the second component 2102 ( S2113 ). For example, the first component 2101 may apply an input character as an argument value of an API function provided for use of the data recognition model. In this case, the API function may transmit the input text to the second component 2102 as recognition data to be applied to the data recognition model. In this case, the information on the input text may include communication data in which the text is changed or supplemented according to a communication format.

제2 구성 요소(2102)는 입력된 문자를 학습된 데이터 인식 모델에 적용할 수 있다(S2115). 적용 결과로서, 제2 구성 요소(2102)는 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 획득할 수 있다(S2117). 그리고, 제2 구성 요소(2102)는 획득된 적어도 하나의 의사 형태소에 대한 정보를 제1 구성 요소(2101)로 전송할 수 있다(S2119). 여기서, 의사 형태소에 대한 정보는 상기 의사 형태소를 통신 포맷으로 변경 또는 보완한 통신 데이터를 포함할 수 있다.The second component 2102 may apply the input character to the learned data recognition model (S2115). As a result of the application, the second component 2102 may acquire at least one pseudo morpheme including the input character (S2117). In addition, the second component 2102 may transmit the acquired information on at least one pseudo morpheme to the first component 2101 ( S2119 ). Here, the information on the pseudo morpheme may include communication data obtained by changing or supplementing the pseudo morpheme into a communication format.

제1 구성 요소(2101)는 수신된 적어도 하나의 의사 형태소를 사용자에게 추천할 수 있다(S2121). 예로, 제1 구성 요소(2101)는 수신된 적어도 하나의 의사 형태소를 디스플레이할 수 있다.The first component 2101 may recommend the received at least one pseudo morpheme to the user (S2121). For example, the first component 2101 may display the received at least one pseudo morpheme.

제1 구성 요소(2101)는 추천된 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력에 응답하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천할 수 있다(S2123). The first component 2101 may recommend at least one word including the selected pseudo morpheme in response to an input for selecting one from among the at least one recommended pseudo morpheme ( S2123 ).

제1 구성 요소(2101)는 적어도 하나의 어절 중에서 하나를 선택하는 사용자 입력에 응답하여, 선택된 어절을 문자 입력 창 내에 디스플레이할 수 있다(S2125).The first component 2101 may display the selected word in the text input window in response to a user input for selecting one of the at least one word (S2125).

다른 실시예로, 도 22에서, 제1 구성 요소(2201)는 문자 입력 창 내에 문자를 입력하는 사용자 입력에 응답하여, 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 추천할 수 있다(S2211). 예로, 제1 구성 요소(2201)는 입력된 문자를 분석하여, 추천할 적어도 하나의 의사 형태소를 디스플레이할 수 있다.As another embodiment, in FIG. 22 , the first component 2201 may recommend at least one pseudo morpheme including the input character in response to a user input of inputting a character into the character input window ( S2211 ). . For example, the first component 2201 may analyze the input character and display at least one pseudo morpheme to be recommended.

제1 구성 요소(2201)는 추천된 적어도 하나의 의사 형태소 중에서 하나를 선택하는 사용자 입력을 수신할 수 있다(S2213).The first component 2201 may receive a user input for selecting one from among at least one recommended pseudo morpheme ( S2213 ).

제1 구성 요소(2201)는 선택된 의사 형태소에 대한 정보를 제2 구성 요소(2202)로 전송할 수 있다(S2215). 예로, 제1 구성 요소(2201)는 데이터 인식 모델의 이용을 위하여 제공되는 API 함수의 인자 값으로 선택된 의사 형태소를 적용할 수 있다. 이 경우, API 함수는 선택된 의사 형태소를 데이터 인식 모델에 적용할 인식 데이터로서 제2 구성 요소(2202)로 전송할 수 있다. 이 때, 입력된 문자에 대한 정보는 상기 의사 형태소를 통신 포맷에 따라 변경 또는 보완한 통신 데이터를 포함할 수 있다.The first component 2201 may transmit information on the selected pseudo morpheme to the second component 2202 ( S2215 ). For example, the first component 2201 may apply the selected pseudo morpheme as an argument value of an API function provided for use of the data recognition model. In this case, the API function may transmit the selected pseudo morpheme to the second component 2202 as recognition data to be applied to the data recognition model. In this case, the information about the input text may include communication data in which the pseudo morpheme is changed or supplemented according to a communication format.

제2 구성 요소(2202)는 선택된 의사 형태소를 학습된 데이터 인식 모델에 적용할 수 있다(S2117). 적용 결과로서, 제2 구성 요소(2202)는 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 획득할 수 있다(S2219). 그리고, 제2 구성 요소(2202)는 획득된 적어도 하나의 어절에 대한 정보를 제1 구성 요소(2201)로 전송할 수 있다(S2221). 여기서, 어절에 대한 정보는 상기 어절을 통신 포맷으로 변경 또는 보완한 통신 데이터를 포함할 수 있다.The second component 2202 may apply the selected pseudo morpheme to the learned data recognition model ( S2117 ). As a result of the application, the second component 2202 may acquire at least one word including the selected pseudo morpheme ( S2219 ). In addition, the second component 2202 may transmit the acquired information on at least one word to the first component 2201 ( S2221 ). Here, the information on the word may include communication data obtained by changing or supplementing the word into a communication format.

제1 구성 요소(2201)는 수신된 적어도 하나의 어절을 사용자에게 추천할 수 있다(S2223). 예로, 제1 구성 요소(2201)는 수신된 적어도 하나의 어절을 디스플레이할 수 있다.The first component 2201 may recommend the received at least one word to the user (S2223). For example, the first component 2201 may display at least one received word.

제1 구성 요소(2201)는 적어도 하나의 어절 중에서 하나를 선택하는 사용자 입력에 응답하여, 선택된 어절을 문자 입력 창 내에 디스플레이할 수 있다(S2225).The first component 2201 may display the selected word in the text input window in response to a user input for selecting one from among at least one word (S2225).

또 다른 실시예로, 도 23에서, 제1 구성 요소(2301)는 문자 입력 창 내에 문자를 입력하는 사용자 입력을 수신할 수 있다(S2311). 제1 구성 요소(2301)는 입력된 문자에 대한 정보를 제2 구성 요소(2302)로 전송할 수 있다(S2313). As another embodiment, in FIG. 23 , the first component 2301 may receive a user input for inputting text in the text input window ( S2311 ). The first component 2301 may transmit information on the input character to the second component 2302 (S2313).

제2 구성 요소(2302)는 입력된 문자를 학습된 데이터 인식 모델에 적용하여, 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 획득할 수 있다(S2315, S2317).The second component 2302 may obtain at least one pseudo morpheme including the input character by applying the input character to the learned data recognition model (S2315 and S2317).

제2 구성 요소(2302)는 획득된 적어도 하나의 의사 형태소에 대한 정보를 제1 구성 요소(2301)로 전송할 수 있다(S2319).The second component 2302 may transmit the acquired information on at least one pseudo morpheme to the first component 2301 ( S2319 ).

제1 구성 요소(2301)는 수신된 적어도 하나의 의사 형태소 중에서 하나를 선택하는 사용자 입력을 수신할 수 있다(S2321).The first component 2301 may receive a user input for selecting one of the received at least one pseudo morpheme ( S2321 ).

제1 구성 요소(2301)는 선택된 의사 형태소에 대한 정보를 제2 구성 요소(2302)로 전송할 수 있다(S2323). The first component 2301 may transmit information on the selected pseudo morpheme to the second component 2302 ( S2323 ).

제2 구성 요소(2302)는 선택된 의사 형태소를 학습된 데이터 인식 모델에 적용하여, 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 획득할 수 있다(S2325, S2327).The second component 2302 may obtain at least one word including the selected pseudo morpheme by applying the selected pseudo morpheme to the learned data recognition model ( S2325 and S2327 ).

제2 구성 요소(2302)는 획득된 적어도 하나의 어절에 대한 정보를 제1 구성 요소(2301)로 전송할 수 있다(S2329).The second component 2302 may transmit the acquired information on at least one word to the first component 2301 ( S2329 ).

제1 구성 요소(2301)는 수신된 적어도 하나의 어절을 사용자에게 추천할 수 있다(S2331). 그리고, 적어도 하나의 어절 중에서 하나를 선택하는 사용자 입력에 응답하여, 제1 구성 요소(2301)는 선택된 어절을 문자 입력 창 내에 디스플레이할 수 있다(S2333).The first component 2301 may recommend at least one received word to the user (S2331). In response to a user input of selecting one of the at least one word, the first component 2301 may display the selected word in the text input window ( S2333 ).

다양한 실시예에 따르면, 도 23에서, 입력된 문자를 포함하는 적어도 하나의 의사 형태소를 제공하도록 설정된 데이터 인식 모델 및 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 제공하도록 설정된 데이터 인식 모델은 하나의 데이터 인식 모델로 구현될 수 있다.According to various embodiments, in FIG. 23 , the data recognition model set to provide at least one pseudo morpheme including the input character and the data recognition model set to provide at least one word including the selected pseudo morpheme include one data It can be implemented as a recognition model.

예를 들어, 도 23의 2340에 포함되는 동작들(S2315, S2317, S2325, S2327)은 하나의 데이터 인식 모델을 통하여 수행될 수 있다.For example, operations S2315 , S2317 , S2325 , and S2327 included in 2340 of FIG. 23 may be performed through one data recognition model.

구체적으로, 도 23에서, 제2 구성 요소(2302)는 입력된 문자에 대한 정보를 수신할 수 있다(S2313). 이 경우, 제2 구성 요소(2302)는 입력된 문자에 대한 정보를 학습된 데이터 인식 모델에 적용하여, 입력된 문자를 포함하는 적어도 하나의 어절을 획득할 수 있다.Specifically, in FIG. 23 , the second component 2302 may receive information about the input character ( S2313 ). In this case, the second component 2302 may obtain at least one word including the input character by applying the information on the input character to the learned data recognition model.

예를 들어, 문자 입력 창 내에 “사”를 입력하는 사용자 입력을 수신하는 경우, 제1 구성 요소(2301)는 상기 “사” 문자를 제2 구성 요소(2302)로 전송할 수 있다. 제2 구성 요소(2302)는 “사” 문자를 학습된 데이터 인식 모델에 적용하여, “사랑은”, “사랑이” 및 “사랑과”와 같은 적어도 하나의 어절을 획득할 수 있다. 제2 구성 요소(2302)가 획득된 적어도 하나의 어절에 대한 정보를 제1 구성 요소(2301)로 전달하면, 제1 구성 요소(2301)는 입력된 문자와 관련된 적어도 하나의 어절을 추천할 수 있다.For example, when receiving a user input of inputting “four” in the text input window, the first component 2301 may transmit the letter “four” to the second component 2302 . The second component 2302 may obtain at least one word such as “love”, “love”, and “with love” by applying the letter “four” to the learned data recognition model. When the second component 2302 transmits the obtained information on at least one word to the first component 2301, the first component 2301 can recommend at least one word related to the input character. have.

본 문서의 일부 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. Some embodiments of this document may also be implemented in the form of a recording medium including instructions executable by a computer, such as a program module executed by a computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, computer-readable media may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transport mechanism, and includes any information delivery media.

또한, 개시된 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)으로 제공될 수 있다. In addition, the method according to the disclosed embodiments may be provided as a computer program product (computer program product).

컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체 또는 판매자 및 구매자 간에 거래되는 상품을 포함할 수 있다. The computer program product may include a S/W program, a computer-readable storage medium in which the S/W program is stored, or a product traded between a seller and a buyer.

예를 들어, 컴퓨터 프로그램 제품은 디바이스(1000) 또는 디바이스(1000)의 제조사 또는 전자 마켓(예를 들어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사 또는 전자 마켓의 서버, 또는 중계 서버의 저장매체가 될 수 있다.For example, the computer program product is a product (eg, a downloadable app) in the form of a S/W program distributed electronically through the device 1000 or the manufacturer of the device 1000 or an electronic market (eg, an app store). ) may be included. For electronic distribution, at least a portion of the S/W program may be stored in a storage medium or may be temporarily generated. In this case, the storage medium may be a server of a manufacturer or an electronic market, or a storage medium of a relay server.

또한, 본 명세서에서, “부” 또는 “모듈”은 프로세서 또는 회로와 같은 하드웨어 구성(hardware component), 및/또는 프로세서와 같은 하드웨어 구성에 의해 실행되는 소프트웨어 구성(software component)일 수 있다.Also, in this specification, “unit” or “module” may be a hardware component such as a processor or circuit, and/or a software component executed by a hardware component such as a processor.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.

Claims (20)

적어도 하나의 프로그램이 저장되는 메모리;
문자 입력 창 내에 문자를 입력하는 사용자 입력을 수신하는 사용자 입력부; 및
상기 적어도 하나의 프로그램을 실행함으로써 상기 입력된 문자에 대한 추천 단어를 제공하도록 하는 적어도 하나의 프로세서를 포함하고,
상기 적어도 하나의 프로그램은,
상기 입력된 문자를 분석함으로써, 상기 입력된 문자를 포함하는 적어도 하나의 의사 형태소(pseudo-morpheme)를 추천하는 동작;
상기 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력 및 상기 사용자의 문자 입력 특성에 기초하여, 상기 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천하는 동작; 및
상기 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 상기 선택된 어절을 상기 문자 입력 창 내에 디스플레이하는 동작을 실행하기 위한 적어도 하나의 명령어를 포함하고,
상기 문자 입력 특성은, 상기 사용자로부터 입력된 음성 데이터에 관한 정보에 기초하여 신경망 기술에 따른 학습의 수행에 따라 획득되는 것인, 디바이스.
a memory in which at least one program is stored;
a user input unit for receiving a user input for inputting text in the text input window; and
at least one processor configured to provide a recommended word for the inputted character by executing the at least one program;
the at least one program,
recommending at least one pseudo-morpheme including the input character by analyzing the input character;
recommending at least one word including the selected pseudo morpheme based on an input of selecting one of the at least one pseudo morpheme and a character input characteristic of the user; and
and at least one command for executing an operation of displaying the selected word in the text input window in response to an input of selecting one from among the at least one word;
The device of claim 1, wherein the character input characteristic is obtained by performing learning according to a neural network technique based on information about voice data input from the user.
제 1항에 있어서, 상기 적어도 하나의 의사 형태소는,
서로 다른 의미를 갖는 적어도 하나의 명사를 포함하는 것인, 디바이스.
According to claim 1, wherein the at least one pseudo morpheme,
A device that includes at least one noun having a different meaning.
제 1항에 있어서,
상기 적어도 하나의 의사 형태소를 추천하는 동작은, 상기 입력된 문자를 분석한 결과 및 의사 형태소 각각에 대한 상기 사용자의 사용 빈도에 기초하여, 의사 형태소를 추천하는 것인, 디바이스.
The method of claim 1,
The operation of recommending the at least one pseudo morpheme may include recommending a pseudo morpheme based on a result of analyzing the input character and a frequency of use of the user for each of the pseudo morphemes.
제 1항에 있어서,
상기 적어도 하나의 어절을 추천하는 동작은, 상기 사용자의 문자 입력 특성에 기초하여, 상기 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천하는, 디바이스.
The method of claim 1,
The operation of recommending the at least one word may include recommending at least one word including the selected pseudo morpheme based on the text input characteristic of the user.
제 1항에 있어서,
상기 적어도 하나의 어절을 추천하는 동작은,
상기 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 상기 선택된 어절을 포함하는 적어도 하나의 다른 어절을 추천하는 동작;
을 더 포함하고,
상기 선택된 어절을 상기 문자 입력 창 내에 디스플레이하는 동작은,
상기 추천된 적어도 하나의 다른 어절 중에서 하나를 선택하는 입력에 응답하여, 상기 선택된 다른 어절을 상기 문자 입력 창 내에 디스플레이하는 동작;
을 포함하는, 디바이스.
The method of claim 1,
The operation of recommending the at least one word is,
recommending at least one other word including the selected word in response to an input for selecting one of the at least one recommended word;
further comprising,
The operation of displaying the selected word in the text input window comprises:
displaying the selected other word in the text input window in response to an input of selecting one of the recommended at least one other word;
A device comprising a.
제 5항에 있어서, 상기 선택된 어절을 디스플레이하는 동작은,
상기 선택된 어절의 다음에 공백 문자가 위치할 것인지 여부를 상기 사용자로부터 입력된 음성 데이터에 관한 정보에 기초하여 신경망 기술에 따른 학습의 수행에 따라 예측하는 동작; 및
상기 예측된 결과에 기초하여 상기 선택된 어절을 포함하는 상기 다른 어절 및 상기 선택된 어절을 포함하지 않는 다른 어절을 추천하는 동작;
을 실행하는 명령어들을 더 포함하는, 디바이스.
The method of claim 5, wherein the displaying of the selected word comprises:
predicting whether or not a blank character will be positioned next to the selected word based on information on voice data input from the user according to the execution of learning according to a neural network technique; and
recommending the other word including the selected word and other word not including the selected word based on the predicted result;
The device further comprising instructions to execute
제 1항에 있어서,
상기 적어도 하나의 의사 형태소를 추천하는 동작은,
상기 문자 입력 창에 기 디스플레이된 적어도 하나의 어절의 종류 및 순서에 기초하여, 다음에 위치할 어절의 종류를 예측하는 동작; 및
상기 예측 결과에 기초하여, 상기 입력된 문자를 포함하는 상기 적어도 하나의 의사 형태소를 추천하는 동작;
을 더 포함하는, 디바이스.
The method of claim 1,
The operation of recommending the at least one pseudo morpheme is,
predicting the type of a word to be positioned next based on the type and order of at least one word previously displayed on the text input window; and
recommending the at least one pseudo morpheme including the input character based on the prediction result;
A device further comprising a.
제 6항에 있어서,
상기 선택된 어절을 포함하지 않는 다른 어절은, 상기 문자 입력 창에 기 디스플레이된 적어도 하나의 어절, 상기 선택된 어절 및 공백 문자에 기초하여, 결정되는 것인, 디바이스.
7. The method of claim 6,
Another word that does not include the selected word is determined based on at least one word previously displayed in the text input window, the selected word, and a blank character.
제 1항에 있어서,
상기 적어도 하나의 의사 형태소를 추천하는 동작은,
상기 적어도 하나의 의사 형태소를 상기 문자 입력창 외부에 디스플레이하는 동작; 및
상기 적어도 하나의 의사 형태소 각각에 대하여 추천할 어절이 있는지 여부가 나타나도록, 상기 디스플레이된 적어도 하나의 의사 형태소를 구별되게 표시하는 동작;
을 더 포함하는, 디바이스.
The method of claim 1,
The operation of recommending the at least one pseudo morpheme is,
displaying the at least one pseudo morpheme outside the text input window; and
distinguishingly displaying the displayed at least one pseudo morpheme to indicate whether there is a word to recommend for each of the at least one pseudo morpheme;
A device further comprising a.
제 1항에 있어서,
상기 적어도 하나의 의사 형태소를 추천하는 동작은,
상기 입력된 문자를 학습된 데이터 인식 모델에 적용하여 획득된 상기 적어도 하나의 의사 형태소를 추천하는 동작을 포함하고,
상기 데이터 인식 모델은, 사용자가 과거에 입력한 문자들 또는 음성 데이터들에 관한 정보, 의사 형태소들 각각에 대한 통상적인 사용 빈도에 관한 통계 데이터, 상기 디바이스에 의해 추천된 적어도 하나의 의사 형태소 중에서 사용자가 선택한 의사 형태소에 관한 정보 중 적어도 하나를 이용하여 학습된 것인, 디바이스.
The method of claim 1,
The operation of recommending the at least one pseudo morpheme is,
and recommending the at least one pseudo morpheme obtained by applying the input character to a learned data recognition model,
The data recognition model includes information on characters or voice data input by the user in the past, statistical data on a typical frequency of use for each of the pseudo morphemes, and a user among at least one pseudo morpheme recommended by the device. The device, which is learned using at least one of information about the selected pseudo morpheme.
디바이스가 사용자로부터 입력된 문자에 대한 추천 단어를 제공하는 방법에 있어서,
문자 입력 창 내에 문자를 입력하는 사용자 입력을 수신하는 동작;
상기 입력된 문자를 분석함으로써, 상기 입력된 문자를 포함하는 적어도 하나의 의사 형태소(pseudo-morpheme)를 추천하는 동작;
상기 적어도 하나의 의사 형태소 중에서 하나를 선택하는 입력 및 상기 사용자의 문자 입력 특성에 기초하여, 상기 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천하는 동작; 및
상기 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 상기 선택된 어절을 디스플레이하는 동작;
을 포함하고,
상기 문자 입력 특성은, 상기 사용자로부터 입력된 음성 데이터에 관한 정보에 기초하여 신경망 기술에 따른 학습의 수행에 따라 획득되는 것인, 방법.
In a method for a device to provide a recommended word for a character input from a user,
receiving a user input for inputting text in a text input window;
recommending at least one pseudo-morpheme including the input character by analyzing the input character;
recommending at least one word including the selected pseudo morpheme based on an input of selecting one of the at least one pseudo morpheme and a character input characteristic of the user; and
displaying the selected word in response to an input for selecting one of the at least one word;
including,
The method of claim 1, wherein the character input characteristic is acquired according to learning according to a neural network technique based on information about voice data input from the user.
제 11항에 있어서, 상기 적어도 하나의 의사 형태소는,
서로 다른 의미를 갖는 적어도 하나의 명사를 포함하는 것인, 방법.
12. The method of claim 11, wherein the at least one pseudo morpheme comprises:
A method comprising at least one noun having a different meaning.
제 11항에 있어서,
상기 적어도 하나의 의사 형태소를 추천하는 동작은, 상기 입력된 문자를 분석한 결과 및 의사 형태소 각각에 대한 상기 사용자의 사용 빈도에 기초하여, 의사 형태소를 추천하는 것인, 방법.
12. The method of claim 11,
The method of recommending the at least one pseudo morpheme may include recommending a pseudo morpheme based on a result of analyzing the input character and a frequency of use of the user for each of the pseudo morphemes.
제 11항에 있어서,
상기 적어도 하나의 어절을 추천하는 동작은,
상기 사용자의 문자 입력 특성에 기초하여, 상기 선택된 의사 형태소를 포함하는 적어도 하나의 어절을 추천하는 동작;
을 더 포함하는, 방법.
12. The method of claim 11,
The operation of recommending the at least one word is,
recommending at least one word including the selected pseudo morpheme based on the character input characteristic of the user;
A method further comprising:
제 11항에 있어서,
상기 적어도 하나의 어절을 추천하는 동작은,
상기 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 상기 선택된 어절을 포함하는 적어도 하나의 다른 어절을 추천하는 동작;
를 더 포함하고,
상기 선택된 어절을 상기 문자 입력 창 내에 디스플레이하는 동작은,
상기 추천된 적어도 하나의 어절 중에서 하나를 선택하는 입력에 응답하여, 상기 선택된 다른 어절을 상기 문자 입력 창 내에 디스플레이하는 동작;
을 포함하는, 방법.
12. The method of claim 11,
The operation of recommending the at least one word is,
recommending at least one other word including the selected word in response to an input for selecting one of the at least one recommended word;
further comprising,
The operation of displaying the selected word in the text input window comprises:
displaying the other selected word in the text input window in response to an input of selecting one of the recommended at least one word;
A method comprising
제 15항에 있어서, 상기 선택된 어절을 디스플레이하는 동작은,
상기 선택된 어절의 다음에 공백 문자가 위치할 것인지 여부를 상기 사용자로부터 입력된 음성 데이터에 관한 정보에 기초하여 신경망 기술에 따른 학습의 수행에 따라 예측하는 동작; 및
상기 예측된 결과에 기초하여 상기 선택된 어절을 포함하는 상기 다른 어절 및 상기 선택된 어절을 포함하지 않는 다른 어절을 추천하는 동작;
을 더 포함하는, 방법.
The method of claim 15, wherein the displaying of the selected word comprises:
predicting whether or not a blank character will be positioned next to the selected word based on information on voice data input from the user according to the execution of learning according to a neural network technique; and
recommending the other word including the selected word and other word not including the selected word based on the predicted result;
A method further comprising:
제 11항에 있어서,
상기 적어도 하나의 의사 형태소를 추천하는 동작은,
상기 문자 입력 창에 기 디스플레이된 적어도 하나의 어절의 종류 및 순서에 기초하여, 다음에 위치할 어절의 종류를 예측하는 동작; 및
상기 예측 결과에 기초하여, 상기 입력된 문자를 포함하는 상기 적어도 하나의 의사 형태소를 추천하는 동작;
을 더 포함하는, 방법.
12. The method of claim 11,
The operation of recommending the at least one pseudo morpheme is,
predicting the type of a word to be positioned next based on the type and order of at least one word previously displayed on the text input window; and
recommending the at least one pseudo morpheme including the input character based on the prediction result;
A method further comprising:
제 16항에 있어서,
상기 선택된 어절을 포함하지 않는 다른 어절은, 상기 문자 입력 창에 기 디스플레이된 적어도 하나의 어절, 상기 선택된 어절 및 공백 문자에 기초하여, 결정되는 것인, 방법.
17. The method of claim 16,
Another word that does not include the selected word is determined based on at least one word previously displayed in the text input window, the selected word, and a blank character.
제 11항에 있어서,
상기 적어도 하나의 의사 형태소를 추천하는 동작은,
상기 적어도 하나의 의사 형태소를 상기 문자 입력창 외부에 디스플레이하는 동작; 및
상기 적어도 하나의 의사 형태소 각각에 대하여, 추천할 어절이 있는지 여부가 나타나도록, 상기 디스플레이된 적어도 하나의 의사 형태소를 구별되게 표시하는 동작;
를 더 포함하는, 방법.
12. The method of claim 11,
The operation of recommending the at least one pseudo morpheme is,
displaying the at least one pseudo morpheme outside the text input window; and
distinguishingly displaying the displayed at least one pseudo morpheme to indicate whether there is a word to recommend for each of the at least one pseudo morpheme;
A method further comprising:
제11항의 동작을 디바이스가 수행 가능하도록 설정된 적어도 하나의 명령어를 포함하는 컴퓨터로 읽을 수 있는 프로그램이 저장된 기록매체.A recording medium storing a computer-readable program including at least one command set to enable a device to perform the operation of claim 11 .
KR1020170110349A 2016-10-21 2017-08-30 Device and method for providing recommended words for character input from user KR102417046B1 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
EP17862947.3A EP3482306A4 (en) 2016-10-21 2017-10-20 Device and method for providing recommended words for character input
US15/789,106 US10540441B2 (en) 2016-10-21 2017-10-20 Device and method for providing recommended words for character input
CN201780063064.8A CN109804373A (en) 2016-10-21 2017-10-20 For providing the device and method of the recommendation word of character input
PCT/KR2017/011680 WO2018074895A1 (en) 2016-10-21 2017-10-20 Device and method for providing recommended words for character input
US16/724,641 US11481551B2 (en) 2016-10-21 2019-12-23 Device and method for providing recommended words for character input
US17/967,924 US20230036080A1 (en) 2016-10-21 2022-10-18 Device and method for providing recommended words for character input

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662411056P 2016-10-21 2016-10-21
US62/411,056 2016-10-21
KR20160177389 2016-12-23
KR1020160177389 2016-12-23

Publications (2)

Publication Number Publication Date
KR20180044187A KR20180044187A (en) 2018-05-02
KR102417046B1 true KR102417046B1 (en) 2022-07-06

Family

ID=62183817

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170110349A KR102417046B1 (en) 2016-10-21 2017-08-30 Device and method for providing recommended words for character input from user

Country Status (1)

Country Link
KR (1) KR102417046B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102567003B1 (en) 2018-05-08 2023-08-16 삼성전자주식회사 Electronic device and operating method for the same
CN111125344B (en) * 2019-12-23 2023-09-05 新方正控股发展有限责任公司 Related word recommendation method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100838818B1 (en) * 2007-08-13 2008-06-17 홍성찬 Character input device
US20130159337A1 (en) * 2011-09-27 2013-06-20 Nhn Business Platform Corporation Method, apparatus and computer readable recording medium for a search using extension keywords

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105493180B (en) * 2013-08-26 2019-08-30 三星电子株式会社 Electronic device and method for speech recognition
KR102325724B1 (en) * 2015-02-28 2021-11-15 삼성전자주식회사 Synchronization of Text Data among a plurality of Devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100838818B1 (en) * 2007-08-13 2008-06-17 홍성찬 Character input device
US20130159337A1 (en) * 2011-09-27 2013-06-20 Nhn Business Platform Corporation Method, apparatus and computer readable recording medium for a search using extension keywords

Also Published As

Publication number Publication date
KR20180044187A (en) 2018-05-02

Similar Documents

Publication Publication Date Title
KR102501714B1 (en) Device and method for providing response message to user’s voice input
KR20200042739A (en) System and method for providing content based on knowledge graph
US11507851B2 (en) System and method of integrating databases based on knowledge graph
US11481551B2 (en) Device and method for providing recommended words for character input
US20210012766A1 (en) Voice conversation analysis method and apparatus using artificial intelligence
KR102628037B1 (en) Method and apparatus for providing sales information of goods
US11508364B2 (en) Electronic device for outputting response to speech input by using application and operation method thereof
US11721333B2 (en) Electronic apparatus and control method thereof
US10521723B2 (en) Electronic apparatus, method of providing guide and non-transitory computer readable recording medium
CN114391143A (en) Electronic device and method for providing conversation service
KR102531654B1 (en) Method and device for authentication in voice input
KR20200036084A (en) Device and method for providing translation information of application
KR20200036680A (en) An electronic device and method for obtaining emotional information
KR20190117837A (en) Device and method for providing response message to user input
KR102384878B1 (en) Method and apparatus for filtering video
KR102417046B1 (en) Device and method for providing recommended words for character input from user
KR102458343B1 (en) Device and method for transreceiving audio data
KR102423754B1 (en) Device and method for providing response to question about device usage
KR102544250B1 (en) Method and device for outputting sound
KR20210079061A (en) Information processing method and apparatus therefor
US11961512B2 (en) System and method for providing voice assistance service
KR20200016174A (en) Method and system for providing an user interface
EP3916721A1 (en) System and method for providing voice assistance service
CN109804373A (en) For providing the device and method of the recommendation word of character input
US20210097235A1 (en) Method and system simplifying the input of symbols used as a pair within a user interface

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right