WO2023106607A1 - 콘텐트를 검색하는 전자 장치 및 그 방법 - Google Patents

콘텐트를 검색하는 전자 장치 및 그 방법 Download PDF

Info

Publication number
WO2023106607A1
WO2023106607A1 PCT/KR2022/015739 KR2022015739W WO2023106607A1 WO 2023106607 A1 WO2023106607 A1 WO 2023106607A1 KR 2022015739 W KR2022015739 W KR 2022015739W WO 2023106607 A1 WO2023106607 A1 WO 2023106607A1
Authority
WO
WIPO (PCT)
Prior art keywords
content
contents
electronic device
keyword
processor
Prior art date
Application number
PCT/KR2022/015739
Other languages
English (en)
French (fr)
Inventor
박재석
김민아
윤석호
Original Assignee
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020210183948A external-priority patent/KR20230085786A/ko
Application filed by 삼성전자 주식회사 filed Critical 삼성전자 주식회사
Priority to US18/150,418 priority Critical patent/US20230177098A1/en
Publication of WO2023106607A1 publication Critical patent/WO2023106607A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9038Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/904Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation

Definitions

  • the present disclosure relates to an electronic device and method for searching for content that a user wants to find among content stored in an electronic device.
  • portable terminals As the use of portable terminals has become more common due to the recent development of mobile communication technology, services or functions provided through portable terminals are gradually diversifying. For example, a user can store and manage various types of content, such as other people's contact information, images, videos, documents, or applications, in a portable terminal, and can search for and use desired content at any time as needed.
  • content such as other people's contact information, images, videos, documents, or applications
  • One aspect of the present disclosure is to provide a method of searching for content through a search word input. However, if an appropriate search word cannot be input, the desired content cannot be immediately found, and the inconvenience of having to search multiple times may occur.
  • Another aspect of the present disclosure is to provide a method of providing content selected in the past in response to a search word input when a user re-enters a previously used search word.
  • this method cannot be used and cannot be regarded as an efficient content search method.
  • Another aspect of the present disclosure is to provide a tree-structured content navigation model generated by hierarchically clustering content stored in an electronic device using related keywords.
  • a higher category and related content are sorted and displayed based on the generated content navigation model, and when the user finds desired content. It is an object of the present invention to provide an electronic device that allows a user to more easily and quickly search for desired content by sequentially presenting sub-categories of a category selected by a user and related content.
  • an electronic device includes a display, a communication module, at least one processor operatively connected to the display and the communication module, and a memory operatively connected to the at least one processor, wherein the memory When executed, the at least one processor displays one or more keywords for content search on the display, and is related to the first keyword in response to confirming selection of the first keyword from among the one or more keywords.
  • One or more first categories among subcategories and one or more first contents associated with the first keyword are sorted and displayed according to a specified criterion, and when a selection input of one of the one or more first categories is confirmed, One or more second categories among subcategories and one or more second contents related to the selected category are sorted and displayed according to the specified criteria, and when a selection input for one of the one or more first contents is confirmed, the selected content is displayed.
  • an electronic device includes a communication module, at least one processor operatively connected to the communication module, and a memory that stores a plurality of contents and is operatively connected to the at least one processor, ,
  • the at least one processor obtains a plurality of keywords associated with the plurality of contents, hierarchically classifies the plurality of contents based on the obtained plurality of keywords, and divides the plurality of contents into one Creating one or more groups, identifying a representative keyword corresponding to each of the one or more groups, combining the identified representative keyword with content included in each of the one or more groups to create a navigation model, and generating the navigation model You can store instructions that allow you to store .
  • a method of operating an electronic device includes an operation of displaying one or more keywords for content search on a display and, in response to confirming selection of a first keyword from among the one or more keywords, using a first keyword.
  • a method of operating an electronic device includes obtaining a plurality of keywords associated with a plurality of contents stored in the electronic device, and hierarchically displaying the plurality of contents based on the obtained plurality of keywords. Generating one or more groups by classifying into groups, identifying representative keywords corresponding to each of the one or more groups, and generating a navigation model by combining the identified representative keywords with content included in each of the one or more groups. and an operation of storing the generated navigation model.
  • content eg, contact information, images, videos, document files, or applications
  • an electronic device eg, a smartphone or a tablet device
  • categories and managed can do.
  • the user can access the desired content more easily and quickly, thereby improving the efficiency of the content search process.
  • FIG. 1 is a block diagram of an electronic device in a network environment according to an embodiment of the present disclosure.
  • FIG. 2 is a diagram illustrating a content search method according to an embodiment of the present disclosure.
  • FIG. 3 is a block diagram illustrating the configuration of an electronic device according to an embodiment of the present disclosure.
  • FIG. 4 is a diagram illustrating a detailed configuration of an electronic device according to an embodiment of the present disclosure.
  • FIG. 5 is a diagram illustrating a content navigation model generated according to an embodiment of the present disclosure.
  • FIG. 6 is a diagram for explaining a method of searching for content step by step in an electronic device according to an embodiment of the present disclosure.
  • FIG. 7 is a diagram illustrating a configuration of providing a content navigation model in conjunction with an external server, according to an embodiment of the present disclosure.
  • FIG. 8 is a diagram for explaining a method of generating a content navigation model differently for each context, according to an embodiment of the present disclosure.
  • FIG. 9 is a diagram explaining a process of searching for content based on category selection in an electronic device according to an embodiment of the present disclosure.
  • FIG. 10 is a diagram explaining a process of searching for content based on a search word input and category selection in an electronic device according to an embodiment of the present disclosure.
  • FIG. 11 is a flowchart illustrating a method of operating an electronic device according to an embodiment of the present disclosure.
  • FIG. 12 is a flowchart illustrating a method of operating an electronic device according to an embodiment of the present disclosure.
  • FIG. 1 is a diagram illustrating an electronic device in a network environment 100 according to an embodiment.
  • an electronic device 101 communicates with an electronic device 102 through a first network 198 (eg, a short-range wireless communication network) or through a second network 199. It may communicate with at least one of the electronic device 104 or the server 108 through (eg, a long-distance wireless communication network). According to an embodiment, the electronic device 101 may communicate with the electronic device 104 through the server 108 .
  • a first network 198 eg, a short-range wireless communication network
  • a second network 199 e.g., a second network 199. It may communicate with at least one of the electronic device 104 or the server 108 through (eg, a long-distance wireless communication network). According to an embodiment, the electronic device 101 may communicate with the electronic device 104 through the server 108 .
  • the electronic device 101 includes a processor 120, a memory 130, an input module 150, an audio output module 155, a display module 160, an audio module 170, a sensor module ( 176), interface 177, connection terminal 178, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196 , or the antenna module 197 may be included.
  • at least one of these components eg, the connection terminal 178) may be omitted or one or more other components may be added.
  • some of these components eg, sensor module 176, camera module 180, or antenna module 197) are integrated into one component (eg, display module 160). It can be.
  • the processor 120 for example, executes software (eg, the program 140) to cause at least one other component (eg, hardware or software component) of the electronic device 101 connected to the processor 120. It can control and perform various data processing or calculations. According to one embodiment, as at least part of data processing or operation, the processor 120 transfers commands or data received from other components (eg, sensor module 176 or communication module 190) to volatile memory 132. , processing commands or data stored in the volatile memory 132 , and storing resultant data in the non-volatile memory 134 .
  • software eg, the program 140
  • the processor 120 transfers commands or data received from other components (eg, sensor module 176 or communication module 190) to volatile memory 132. , processing commands or data stored in the volatile memory 132 , and storing resultant data in the non-volatile memory 134 .
  • the processor 120 may include a main processor 121 (eg, a central processing unit or an application processor) or a secondary processor 123 (eg, a graphic processing unit, a neural network processing unit ( NPU: neural processing unit (NPU), image signal processor, sensor hub processor, or communication processor).
  • a main processor 121 eg, a central processing unit or an application processor
  • a secondary processor 123 eg, a graphic processing unit, a neural network processing unit ( NPU: neural processing unit (NPU), image signal processor, sensor hub processor, or communication processor.
  • NPU neural network processing unit
  • the secondary processor 123 may be implemented separately from or as part of the main processor 121 .
  • the secondary processor 123 may, for example, take the place of the main processor 121 while the main processor 121 is in an inactive (eg, sleep) state, or the main processor 121 is active (eg, running an application). ) state, together with the main processor 121, at least one of the components of the electronic device 101 (eg, the display module 160, the sensor module 176, or the communication module 190) It is possible to control at least some of the related functions or states.
  • the auxiliary processor 123 eg, an image signal processor or a communication processor
  • the auxiliary processor 123 may include a hardware structure specialized for processing an artificial intelligence model.
  • AI models can be created through machine learning. Such learning may be performed, for example, in the electronic device 101 itself where the artificial intelligence model is performed, or may be performed through a separate server (eg, the server 108).
  • the learning algorithm may include, for example, supervised learning, unsupervised learning, semi-supervised learning or reinforcement learning, but in the above example Not limited.
  • the artificial intelligence model may include a plurality of artificial neural network layers.
  • Artificial neural networks include deep neural networks (DNNs), convolutional neural networks (CNNs), recurrent neural networks (RNNs), restricted Boltzmann machines (RBMs), deep belief networks (DBNs), bidirectional recurrent deep neural networks (BRDNNs), It may be one of deep Q-networks or a combination of two or more of the foregoing, but is not limited to the foregoing examples.
  • the artificial intelligence model may include, in addition or alternatively, software structures in addition to hardware structures.
  • the memory 130 may store various data used by at least one component (eg, the processor 120 or the sensor module 176) of the electronic device 101 .
  • the data may include, for example, input data or output data for software (eg, program 140) and commands related thereto.
  • the memory 130 may include volatile memory 132 or non-volatile memory 134 .
  • the program 140 may be stored as software in the memory 130 and may include, for example, an operating system 142 , middleware 144 , or an application 146 .
  • the input module 150 may receive a command or data to be used by a component (eg, the processor 120) of the electronic device 101 from the outside of the electronic device 101 (eg, a user).
  • the input module 150 may include, for example, a microphone, a mouse, a keyboard, a key (eg, a button), or a digital pen (eg, a stylus pen).
  • the sound output module 155 may output sound signals to the outside of the electronic device 101 .
  • the sound output module 155 may include, for example, a speaker or a receiver.
  • the speaker can be used for general purposes such as multimedia playback or recording playback.
  • a receiver may be used to receive an incoming call. According to one embodiment, the receiver may be implemented separately from the speaker or as part of it.
  • the display module 160 may visually provide information to the outside of the electronic device 101 (eg, a user).
  • the display module 160 may include, for example, a display, a hologram device, or a projector and a control circuit for controlling the device.
  • the display module 160 may include a touch sensor configured to detect a touch or a pressure sensor configured to measure the intensity of force generated by the touch.
  • the audio module 170 may convert sound into an electrical signal or vice versa. According to an embodiment, the audio module 170 acquires sound through the input module 150, the sound output module 155, or an external electronic device connected directly or wirelessly to the electronic device 101 (eg: Sound may be output through the electronic device 102 (eg, a speaker or a headphone).
  • the audio module 170 acquires sound through the input module 150, the sound output module 155, or an external electronic device connected directly or wirelessly to the electronic device 101 (eg: Sound may be output through the electronic device 102 (eg, a speaker or a headphone).
  • the sensor module 176 detects an operating state (eg, power or temperature) of the electronic device 101 or an external environmental state (eg, a user state), and generates an electrical signal or data value corresponding to the detected state. can do.
  • the sensor module 176 may include, for example, a gesture sensor, a gyro sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a bio sensor, It may include a temperature sensor, humidity sensor, or light sensor.
  • the interface 177 may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device 101 to an external electronic device (eg, the electronic device 102).
  • the interface 177 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
  • HDMI high definition multimedia interface
  • USB universal serial bus
  • SD card interface Secure Digital Card interface
  • audio interface audio interface
  • connection terminal 178 may include a connector through which the electronic device 101 may be physically connected to an external electronic device (eg, the electronic device 102).
  • the connection terminal 178 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).
  • the haptic module 179 may convert electrical signals into mechanical stimuli (eg, vibration or motion) or electrical stimuli that a user may perceive through tactile or kinesthetic senses.
  • the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
  • the camera module 180 may capture still images and moving images. According to one embodiment, the camera module 180 may include one or more lenses, image sensors, image signal processors, or flashes.
  • the power management module 188 may manage power supplied to the electronic device 101 .
  • the power management module 188 may be implemented as at least part of a power management integrated circuit (PMIC), for example.
  • PMIC power management integrated circuit
  • the battery 189 may supply power to at least one component of the electronic device 101 .
  • the battery 189 may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
  • the communication module 190 is a direct (eg, wired) communication channel or a wireless communication channel between the electronic device 101 and an external electronic device (eg, the electronic device 102, the electronic device 104, or the server 108). Establishment and communication through the established communication channel may be supported.
  • the communication module 190 may include one or more communication processors that operate independently of the processor 120 (eg, an application processor) and support direct (eg, wired) communication or wireless communication.
  • the communication module 190 is a wireless communication module 192 (eg, a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 194 (eg, : a local area network (LAN) communication module or a power line communication module).
  • a wireless communication module 192 eg, a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module
  • GNSS global navigation satellite system
  • wired communication module 194 eg, : a local area network (LAN) communication module or a power line communication module.
  • the corresponding communication module is a first network 198 (eg, a local area communication network such as Bluetooth, wireless fidelity (Wi-Fi) direct, or infrared data association (IrDA)) or a second network 199 (eg : It can communicate with the external electronic device 104 through a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a long-distance communication network such as a computer network (eg, LAN or WAN).
  • a first network 198 eg, a local area communication network such as Bluetooth, wireless fidelity (Wi-Fi) direct, or infrared data association (IrDA)
  • a second network 199 eg : It can communicate with the external electronic device 104 through a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a long-distance communication network such as a computer network (eg, LAN or WAN).
  • a computer network eg, LAN
  • the wireless communication module 192 uses subscriber information (eg, International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 196 within a communication network such as the first network 198 or the second network 199.
  • subscriber information eg, International Mobile Subscriber Identifier (IMSI)
  • IMSI International Mobile Subscriber Identifier
  • the electronic device 101 may be identified or authenticated.
  • the wireless communication module 192 may support a 5G network after a 4G network and a next-generation communication technology, for example, NR access technology (new radio access technology).
  • NR access technologies include high-speed transmission of high-capacity data (enhanced mobile broadband (eMBB)), minimization of terminal power and access of multiple terminals (massive machine type communications (mMTC)), or high reliability and low latency (ultra-reliable and low latency (URLLC)).
  • eMBB enhanced mobile broadband
  • mMTC massive machine type communications
  • URLLC ultra-reliable and low latency
  • -latency communications can be supported.
  • the wireless communication module 192 may support a high frequency band (eg, mmWave band) to achieve a high data rate, for example.
  • the wireless communication module 192 uses various technologies for securing performance in a high frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), and full-dimensional multiplexing. Technologies such as input/output (FD-MIMO: full dimensional MIMO), array antenna, analog beam-forming, or large scale antenna may be supported.
  • the wireless communication module 192 may support various requirements defined for the electronic device 101, an external electronic device (eg, the electronic device 104), or a network system (eg, the second network 199).
  • the wireless communication module 192 is a peak data rate for eMBB realization (eg, 20 Gbps or more), a loss coverage for mMTC realization (eg, 164 dB or less), or a U-plane latency for URLLC realization (eg, Example: downlink (DL) and uplink (UL) each of 0.5 ms or less, or round trip 1 ms or less) may be supported.
  • eMBB peak data rate for eMBB realization
  • a loss coverage for mMTC realization eg, 164 dB or less
  • U-plane latency for URLLC realization eg, Example: downlink (DL) and uplink (UL) each of 0.5 ms or less, or round trip 1 ms or less
  • the antenna module 197 may transmit or receive signals or power to the outside (eg, an external electronic device).
  • the antenna module 197 may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (eg, PCB).
  • the antenna module 197 may include a plurality of antennas (eg, an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network such as the first network 198 or the second network 199 is selected from the plurality of antennas by the communication module 190, for example. It can be.
  • a signal or power may be transmitted or received between the communication module 190 and an external electronic device through the selected at least one antenna.
  • other components eg, a radio frequency integrated circuit (RFIC) may be additionally formed as a part of the antenna module 197 in addition to the radiator.
  • RFIC radio frequency integrated circuit
  • the antenna module 197 may form a mmWave antenna module.
  • the mmWave antenna module includes a printed circuit board, an RFIC disposed on or adjacent to a first surface (eg, a lower surface) of the printed circuit board and capable of supporting a designated high frequency band (eg, mmWave band); and a plurality of antennas (eg, array antennas) disposed on or adjacent to a second surface (eg, a top surface or a side surface) of the printed circuit board and capable of transmitting or receiving signals of the designated high frequency band.
  • a first surface eg, a lower surface
  • a designated high frequency band eg, mmWave band
  • a plurality of antennas eg, array antennas
  • peripheral devices eg, a bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)
  • signal e.g. commands or data
  • commands or data may be transmitted or received between the electronic device 101 and the external electronic device 104 through the server 108 connected to the second network 199 .
  • Each of the external electronic devices 102 or 104 may be the same as or different from the electronic device 101 .
  • all or part of operations executed in the electronic device 101 may be executed in one or more external electronic devices among the external electronic devices 102 , 104 , or 108 .
  • the electronic device 101 when the electronic device 101 needs to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device 101 instead of executing the function or service by itself.
  • one or more external electronic devices may be requested to perform the function or at least part of the service.
  • One or more external electronic devices receiving the request may execute at least a part of the requested function or service or an additional function or service related to the request, and deliver the execution result to the electronic device 101 .
  • the electronic device 101 may provide the result as at least part of a response to the request as it is or additionally processed.
  • cloud computing distributed computing, mobile edge computing (MEC), or client-server computing technology may be used.
  • the electronic device 101 may provide an ultra-low latency service using, for example, distributed computing or mobile edge computing.
  • the external electronic device 104 may include an internet of things (IoT) device.
  • Server 108 may be an intelligent server using machine learning and/or neural networks. According to an embodiment, the external electronic device 104 or server 108 may be included in the second network 199 .
  • the electronic device 101 may be applied to intelligent services (eg, smart home, smart city, smart car, or health care) based on 5G communication technology and IoT-related technology.
  • the electronic device 200 may search for content desired by the user based on a search word input by the user.
  • the electronic device 200 may provide a content search screen 201 in response to a designated gesture input. For example, when a user reaches a page for content search while turning over pages of the home screen of the electronic device 200, or detects that a swipe motion is performed in a specified direction on the display, the content search screen ( 201) can be displayed. For another example, in response to a user's touch input to a shortcut icon on the home screen or a voice command input from the user, the electronic device 200 may call and display the content search screen 201 .
  • the content search screen 201 may include a search word input field 210 for receiving a search word for content that a user wants to find.
  • the electronic device 200 may provide related content based on a search word input in the search word input field 210 . For example, when a user inputs a search word 'map' into the search word input field 210 in the content search screen 201, the electronic device 200 checks map-related content among the contents stored in the memory, and performs the check. Results can be presented as search results.
  • the electronic device 200 may display one or more applications providing a map service, as well as images, documents, or web pages related to a map as search results at the bottom of the content search screen 201 .
  • the electronic device 200 may display map-related functions that can be provided through the electronic device 200 as search results.
  • the user In the case of providing content based on a search word as shown in FIG. 2 , the user must input an appropriate search word to receive the desired content as a search result. If the user does not properly input a search word corresponding to the content he/she wants to find, the search may fail, and the search may have to be repeated several times until an appropriate search word is input.
  • FIG. 3 is a block diagram illustrating the configuration of an electronic device according to an embodiment of the present disclosure.
  • an electronic device 300 is a device that navigates step by step so that a user can find desired content more easily and quickly, and includes a display 310, a communication module 320, a processor 330, or a memory 340. can include In FIG. 3 , the electronic device 300 may correspond to the electronic device 101 shown in FIG. 1 .
  • the display 310 may display content selected by a user from among a plurality of contents stored in the electronic device 300 .
  • the display 310 may provide categories and contents corresponding to keywords selected by the user in stages so that the user can access desired contents.
  • the display 310 may display an execution screen of an application for providing content based on a user's selection input.
  • the display 310 is a liquid crystal display (LCD), thin film transistor LCD (TFT-LCD), organic light emitting diodes (OLED), light emitting diode (LED), and active matrix organic LED (AMOLED). ), at least one of a flexible display and a 3-dimensional display. Also, some of these displays may be configured as a transparent type or a light transmission type so that the outside can be seen through them. This may be configured in the form of a transparent display including a transparent OLED (TOLED).
  • TOLED transparent OLED
  • the communication module 320 (eg, the communication module 190 of FIG. 1) is one or more external electronic devices (eg, the electronic device 102 or the electronic device 104 of FIG. 1) or A communication connection with an external server (eg, server 108 in FIG. 1 ) may be established.
  • the communication module 320 may obtain various types of content, keywords related thereto, or initial data of a content navigation model from an external server.
  • the communication module 320 may transmit data related to the content navigation model generated by the electronic device 300 to the external server.
  • the communication module 320 performs at least one of cellular communication, wireless-fidelity (Wi-Fi), Bluetooth, near field communication (NFC), or ultra-wide band (UWB) communication. method can be provided.
  • the memory 340 (eg, the memory 130 of FIG. 1 ) is directly generated by the user in the electronic device 300 or acquired from an external electronic device through the communication module 320.
  • a plurality of contents and related information of each of the contents may be stored.
  • the plurality of contents may include various types of contents such as contact information of others managed by the electronic device 300, messages exchanged with other users, e-mails, images, videos, applications, or document files.
  • the memory 340 may store instructions for controlling at least one processor 330 (eg, the processor 120 of FIG. 1 ) to perform various operations when executed. .
  • the at least one processor 330 may perform operations to sequentially present one or more categories and related content so that the user can access the content he or she is looking for among the content stored in the electronic device 300 .
  • the at least one processor 330 converts the plurality of contents into one or more related keywords to efficiently search for a specific content desired by a user among a plurality of contents stored in the memory 340. Based on the content navigation model for hierarchical grouping and management, operations for generating a content navigation model may be performed.
  • At least one processor 330 may obtain a plurality of keywords related to a plurality of contents stored in the memory 340 .
  • the plurality of keywords may be obtained using at least one of a name (eg, file name, application name) or type of each content, related information (eg, category, metadata, or tag data), or content included in the content.
  • at least one processor 330 may check information about the plurality of contents from one or more databases accessible from the memory 340 or the electronic device 300 .
  • At least one processor 330 may extract the plurality of keywords based on information about the identified plurality of contents.
  • the at least one processor 330 may obtain information about the plurality of contents from an external server through the communication module 340 or obtain a recommendation keyword related to the plurality of contents. According to various embodiments of the present disclosure, the at least one processor 330 may check the plurality of keywords in response to confirming that new content is stored in the memory 340 or according to a predetermined time period.
  • At least one processor 330 may create one or more groups by hierarchically classifying the plurality of contents based on the plurality of keywords. At least one processor 330 may classify the plurality of contents in a hierarchical tree structure using a hierarchical clustering technique, and create one or more groups based on the classification result.
  • At least one processor 330 may check representative keywords corresponding to the generated one or more groups.
  • the representative keyword for each group may correspond to a category corresponding to each of one or more groups generated according to the classification result.
  • at least one processor 330 determines a representative keyword for each group based on at least one of an average similarity between contents included in each of the one or more groups, a keyword type, or a search history. can For example, at least one processor 330 may calculate similarity between contents related to each group, and determine a keyword of content having the largest average value of the calculated similarity as a representative keyword of the corresponding group.
  • the similarity between the contents may be measured using at least one text-based similarity calculation method among cosine similarity, jaccard coefficient, correlation coefficient, or hamming distance.
  • the at least one processor 330 may set weights for each source data of keywords included in each group and calculate keyword scores based on the set weights. At least one processor 330 may determine a keyword having the highest calculated keyword score as the representative keyword. For another example, at least one processor 330 may check the frequency of use of keywords included in each group and determine a keyword with the highest frequency of use as the representative keyword.
  • At least one processor 330 may generate a navigation model by combining the representative keyword identified for each group with content associated with each group. For example, the at least one processor 330 associates the plurality of contents with a representative keyword for each group so as to correspond to one or more groups generated based on hierarchical clustering to create a hierarchical tree structure. You can create a navigation model. According to the structure of the navigation model, each content may be overlapped and connected to one or more keywords according to an association with one or more categories without being specific to one keyword, thereby increasing the probability of accessing the desired content by the user. there is.
  • At least one processor 330 generates a content navigation model in real time based on a user's profile or context information in order to provide customized search results according to circumstances at the time of content search, or various A content navigation model for each context may be created in advance.
  • at least one processor 330 may check context information related to the user and set a weight to at least one keyword related to the checked context information.
  • the context information may include at least one of location, season, date, time, and weather. For example, when a user wants to search for specific content while located in an amusement park, at least one processor 330 checks the context of 'amusement park', and the user quickly accesses an amusement park-related application or information related to nearby facilities.
  • Weights can be set for keywords related to the context of 'amusement park' or keywords related to content with a history of use in that context so that they can be accessed.
  • At least one processor 330 may determine a representative keyword for each group based on the set weight, and generate a navigation model corresponding to the context information based on the determined representative keyword for each group.
  • At least one processor 330 may automatically create a folder on the home screen (or desktop screen) of the electronic device 330 based on the navigation model. For example, when a user inputs a desired number of folders, at least one processor 330 extracts as many groups as the input folder number from the navigation model and creates folders using a representative keyword for each extracted group. can According to various embodiments of the present disclosure, at least one processor 330 may create a folder for each context based on a navigation model generated for each context. In this case, at least one processor 330 may provide a folder structure corresponding to the user's context, so that the user can more quickly find the content he/she wants.
  • At least one processor 330 may store the generated navigation model in a memory 340 or a database accessible from the electronic device 300 . According to various embodiments of the present disclosure, at least one processor 330 may update the navigation model whenever content is stored. For example, if at least one processor 330 confirms that new content is stored in the memory 340, it obtains at least one keyword associated with the new content, and uses an incremental clustering technique to obtain new content. The navigation model may be updated by applying content to the existing navigation model.
  • At least one processor 330 may perform operations of sequentially providing a path through which a user may access content desired to be found based on a content navigation model.
  • At least one processor 330 may display one or more keywords for content search on the display 310 .
  • the one or more keywords may correspond to representative keywords of groups classified as the highest category in the content navigation model.
  • At least one processor 330 may display the one or more keywords on the display 310 in response to a designated gesture input by a user. For example, if at least one processor 330 confirms that a user's touch input or voice command calling a content search screen is input, the one or more keywords may be displayed on the display 310 .
  • the at least one processor 330 may present one or more keywords through the display 310 when confirming that an action designated for content search is performed.
  • At least one processor 330 may confirm selection of a first keyword among the one or more keywords displayed on the display 310 . For example, at least one processor 330 may confirm that the first keyword is selected based on a user's touch input or voice input for the first keyword.
  • At least one processor 330 displays one or more first categories among subcategories associated with the first keyword and one or more first contents associated with the first keyword on the display 310.
  • the one or more first categories may correspond to at least some of subcategories of the first keyword, and a representative keyword for each group classified as a subcategory of the first keyword in the content navigation model corresponds to the one or more first categories.
  • the one or more first contents may include contents belonging to a group corresponding to the first keyword.
  • the at least one processor 330 selects a category of 'airline', 'map', 'food' or 'accommodation' and 'travel'.
  • One or more contents related to 'travel' may be displayed through the display 310 .
  • at least one processor 330 may check content display related setting information in response to a selection input of the first keyword. For example, the at least one processor 330 may check the displayable number based on the setting information, and limit the number of the one or more first categories and the one or more first contents according to the displayable number. there is.
  • the at least one processor 330 provides a number of first categories and first content corresponding to the displayable number according to at least one criterion of similarity with the first keyword, search frequency, and content creation time. It can be selected and displayed on the display 310 . Assuming that the displayable number is set to 4, at least one processor 330 selects the top four categories having a high similarity with the first keyword among one or more first categories belonging to the lower categories of the first keyword. , Top four contents having a high similarity to the first keyword among one or more first contents related to the first keyword may be displayed. A category or content selection criterion to be displayed on the display 310 may be differently applied according to a user's content use pattern.
  • the displayable number may be set differently for categories and contents. For example, when the number of categories that can be displayed is set to 3, at least one processor 330 selects the top three categories with high search frequency among one or more first categories belonging to subcategories of the first keyword. You can sort and display them in order of highest search frequency. As another example, when the number of displayable contents for content is set to 5, at least one processor 330 selects the most recently created five contents among one or more first contents related to the first keyword, at a content creation time. They can be displayed in sorted order.
  • At least one processor 330 may check a selection input for the one or more first categories or the one or more first contents. At least one processor 330 may determine which one of the one or more first categories or the one or more first contents is selected based on a user's touch input, voice input, or other designated gesture input. For example, when at least one processor 330 confirms a selection input for one of the one or more first contents, it may provide the selected contents through the display 310 . At least one processor 330 may identify an application or program necessary to provide the content in response to the selection of the content, and execute the application or program to provide the selected content.
  • At least one processor 330 confirms a selection input for one of the one or more first categories, one or more second categories among subcategories associated with the selected category and one or more subcategories associated with the selected category.
  • the above second content may be displayed on the display 310 .
  • the one or more second categories may correspond to at least some of the subcategories of the first category, and a representative keyword for each group classified as a subcategory of the selected category in the content navigation model is selected as the one or more second categories.
  • the one or more second contents may include contents belonging to the group of the selected category.
  • At least one processor 330 may display the one or more second categories and one or more second contents in the same way as the one or more first categories and the one or more first content display methods.
  • the at least one processor 330 confirms the selection of one of the one or more first categories, the number of items that can be displayed according to the setting information is checked, and similarity with the representative keyword of the selected category, search frequency, or content According to at least one criterion of creation time, second categories and second content corresponding to the displayable number may be selected, sorted, and displayed on the display 310 .
  • At least one processor 330 may check a selection input for the one or more second categories or the one or more second contents. At least one processor 330 may determine which one of the one or more second categories or the one or more second contents is selected based on a user's touch input, voice input, or other designated gesture input. For example, if a selection input for one of the one or more second contents is confirmed, the at least one processor 330 may provide the selected contents through the display 310 . For another example, if the selection input for one of the one or more second categories is confirmed, the at least one processor 330 displays one or more subcategories and one or more contents related to the selected category on the display 310. can At least one processor 330 identifies one or more sub-categories and one or more contents related to the selected category until a selection for any one content displayed on the display 310 is input and displays them on the display 310. can
  • At least one processor 330 may display one or more categories and one or more contents based on a user profile or context information at the time of content search. For example, when confirming that the selection of the first keyword is input, the at least one processor 330 may check context information at the time of the selection input.
  • the context information may include at least one of location, season, date, time, and weather.
  • the at least one processor 330 sets weights to keywords related to the identified context or to keywords related to content in which a search history (or use history) exists in the context, and based on the set weights, the one or more first processors 330 set weights. By determining the category and the one or more first contents, the category or contents related to the context may be exposed prior to other items.
  • FIG. 4 is a diagram illustrating a detailed configuration of an electronic device according to an embodiment of the present disclosure.
  • a function or operation described with reference to FIG. 4 may be understood as a function performed by at least one processor 330 of the electronic device 300 of FIG. 3 .
  • At least one processor 330 may execute instructions (eg, instructions) stored in the memory 340 to implement the software modules shown in FIG. 3 display 310, communication module 320 or memory 340) can be controlled.
  • the electronic device 300 is not limited to the components shown in FIG. 4, and among the components shown in FIG. 1, components corresponding to functions required by the electronic device 300 Additional elements may be included.
  • the electronic device 300 includes a content collection module 410, a keyword collection module 420, a content management module 430, a content/keyword database (database, DB) 435, a cluster analysis module ( 440), a model management module 450, a navigation model DB 455, or a content providing module 460).
  • a content collection module 410 a keyword collection module 420, a content management module 430, a content/keyword database (database, DB) 435, a cluster analysis module ( 440), a model management module 450, a navigation model DB 455, or a content providing module 460).
  • the content collection module 410 collects information related to a plurality of contents stored in the memory of the electronic device 300 (eg, the memory 130 of FIG. 1 or the memory 340 of FIG. 3 ). can be collected
  • the plurality of contents may correspond to all objects stored in the memory 340, contact information of others managed by the electronic device 300, messages exchanged with other users, e-mails, images, videos, applications, or document files. It can contain various types of content.
  • the content collection module 410 may check content-related information from the plurality of contents.
  • the content-related information may include at least one of a content name (eg, file name, application name) or type, related category, meta information, or tag information.
  • the content collection module 410 may use an external electronic device (eg, the communication module 190 of FIG. 1 or the communication module 320 of FIG. 3 ) of the electronic device 300 (eg, the communication module 190 of FIG. 1 or the communication module 320 of FIG. 3 ).
  • the content-related information may be obtained from the electronic devices 102 and 104 of FIG. 1 or an external server (eg, the server 108 of FIG. 1).
  • the content collection module 410 may acquire the content-related information according to new content being stored or a predetermined time period.
  • the keyword collection module 420 may collect keywords related to the plurality of contents. For example, the keyword collection module 420 may obtain content-related information about the plurality of contents from the content collection module 410 and extract a plurality of keywords from the content-related information. In addition to the content-related information, the plurality of keywords may be obtained from at least one of keywords used in a previous search process, keywords describing content, or content included in content. The keyword collection module 420 may collect keywords in different ways according to the type of content. In the case of content including text itself, such as contact information, messages, applications, or document files, keywords may be collected from the name (title) or description of the content.
  • keywords may be collected through additional analysis of metadata or tag data of the content.
  • the keyword collection module 420 may obtain recommended keywords associated with the plurality of contents from the external electronic device or the external server using the communication module 320 .
  • the keyword collection module 420 may acquire the keywords when new content is stored or according to a predetermined time period.
  • the content management module 430 may manage the collected keywords by associating them with a plurality of contents.
  • the content management module 430 may combine the collected keywords and contents related to each of the keywords and store them in the content/keyword DB 435 .
  • the content management module 430 may use a relational database or an ontology to expand a range of keywords and store and manage related keywords and contents.
  • the cluster analysis module 440 performs hierarchical clustering on the contents using keywords stored in the content/keyword DB 435 to obtain clusters having a hierarchical tree structure. model can be created.
  • the cluster analysis module 440 may hierarchically classify and group a plurality of contents stored in the content/keyword DB 435 .
  • the cluster analysis module 440 may generate one or more groups corresponding to the results of the hierarchical classification.
  • the cluster analysis module 440 may perform clustering on new content whenever new content is stored or according to a specified time period. In this case, the cluster analysis module 440 may perform clustering on the new contents using an incremental clustering technique, and apply the result of the execution to the existing cluster model to update it.
  • the model management module 450 may determine a representative keyword corresponding to each of the generated one or more groups.
  • the model management module 450 may determine a representative keyword for each group based on at least one of an average similarity between content related to each group, a keyword type, and a search history. For example, the model management module 450 may calculate similarity between contents included in each group, and determine a keyword of content having the largest average value of the calculated similarity as a representative keyword of the corresponding group.
  • the model management module 450 may calculate the similarity between the contents using cosine similarity as shown in Equation 1 below.
  • Equation 1 a and b represent respective contents, and S(a,b) denotes a degree of similarity between contents a and contents b.
  • a i may indicate an i-th keyword related to content a
  • b i may indicate an i-th keyword related to content b.
  • the model management module 450 may calculate the similarity between contents for each group using a text-based similarity calculation method such as jaccard coefficient, correlation coefficient, or hamming distance.
  • the model management module 450 calculates a keyword score by setting a weight for each source data for a keyword of contents included in each group, and determines a keyword having the highest calculated keyword score as the representative keyword.
  • the model management module 450 may check the frequency of use of the contents included in each group and determine a keyword associated with the content with the highest frequency of use as the representative keyword.
  • the model management module 450 may generate a navigation model by combining the determined representative keyword for each group with content included in each group.
  • the model management module 450 associates representative keywords of each of one or more groups hierarchically classified based on the cluster model generated by the cluster analysis module 440 with content belonging to each group to provide navigation in a hierarchical tree structure. model can be created.
  • the model management module 450 may store and manage the generated navigation model in a navigation model DB 455 .
  • the content providing module 460 may provide a process of accessing content that a user wants to find based on a navigation model stored in the navigation model DB 455 .
  • the content providing module 460 may present appropriate categories and content step by step so that the user can easily and quickly find desired content.
  • the content providing module 460 displays a content search screen (e.g., the display module 160 of FIG. 1 or FIG. It can be output on the display 310 of 3.
  • the content search screen may include one or more keywords in an initial state.
  • the one or more keywords may correspond to representative keywords of groups classified as the highest category in the navigation model.
  • the content providing module 460 confirms that a first keyword is selected from among the one or more keywords, one or more first categories among subcategories associated with the first keyword and one or more first contents associated with the first keyword are provided. It can be displayed on the content search screen.
  • the one or more first categories may include at least some of subcategories of the first keyword, and a representative keyword of each group classified as a subcategory of the first keyword in the navigation model may be displayed as the first category. there is.
  • the one or more first contents may be contents belonging to a group of the first keyword.
  • the content providing module 460 may limit the number of categories and contents displayed at one time based on setting information.
  • the content providing module 460 may select a designated number of first categories and a designated number of first contents according to the setting information and display them on the content search screen. For example, the content providing module 460 selects a specified number of first categories in order of high degree of similarity with the first keyword from among one or more first categories belonging to subcategories of the first keyword, and determines the degree of similarity with the first keyword. Based on the criteria, the selected first categories may be sorted and displayed. Similarly, the content providing module 460 selects a specified number of first contents in the order of high similarity to the first keyword from among one or more first contents related to the first keyword, and selects the selected contents based on the similarity. can be sorted and displayed together with the selected categories.
  • the content providing module 460 may select, sort, and display the specified number of first categories and first content based on search frequency or content creation time.
  • the designated number may be set identically or differently for categories and contents.
  • a criterion for selecting the first category and/or the first content may be differently applied according to a user's content usage pattern.
  • the content providing module 460 repeats one or more subcategories and one or more contents related to the category selected by the user until a selection for any one content is input on the content search screen.
  • can provide For example, when the content providing module 460 confirms a selection input for one of one or more categories displayed on the content search screen, one or more subcategories and one or more contents related to the selected category are displayed on the content search screen. can be displayed
  • the content providing module 460 may provide the selected content and end the content search process when confirming a selection input for one of the one or more contents displayed on the content search screen.
  • the electronic device 300 hierarchically stores a plurality of contents stored in a memory (eg, the memory 130 of FIG. 1 or the memory 340 of FIG. 3 ) based on related keywords.
  • a content navigation model 500 having a hierarchical tree structure as shown in FIG. 5 may be created.
  • the electronic device 300 obtains a plurality of keywords associated with the plurality of contents, and performs hierarchical clustering on the plurality of contents using the obtained plurality of keywords. can be performed.
  • the electronic device 300 may hierarchically classify and group the plurality of contents.
  • the electronic device 300 may generate the content navigation model 500 by combining a representative keyword for each group with content related to each group.
  • the content navigation model 500 may include groups classified into a plurality of layers and contents corresponding to each group. As a result of performing hierarchical clustering on the plurality of contents, it can be divided into groups corresponding to the highest category 510 and groups corresponding to the subcategory 520 classified from these groups.
  • the electronic device 300 classifies four groups including 'payment', 'travel', 'money' and 'education' as the top category 510, and when the content search process is initiated, the top category ( A representative keyword of each of the four groups corresponding to 510) may be displayed on the initial screen.
  • Each of the groups classified as the highest category 510 may include one or more subcategories 520 .
  • the subcategory 520 is illustrated as one or more groups forming one hierarchy, but according to various embodiments, the subcategory 520 may include groups classified into a plurality of hierarchies.
  • the electronic device 300 may present one or more subcategories related to the keyword selected by the user in stages according to the hierarchical structure of the subcategories 520 . For example, when 'education' is selected from among four keywords displayed on the content search screen, the electronic device 300 selects 'English', 'lecture', 'library' or 'library' as representative keywords of groups belonging to the subcategory of education. Habits can be displayed. Thereafter, when 'English' is selected among the subcategories of 'education', the electronic device 300 may display one or more subcategories and one or more contents related to 'English'.
  • the content navigation model 500 may include content 530 corresponding to each group of categories classified into a plurality of layers.
  • the electronic device 300 may store the plurality of contents in the content navigation model 500 by associating them with a representative keyword for each group.
  • each content may be overlapped and connected to one or more categories (or keywords) according to a relationship between one or more categories without being subordinate to one category (or keyword). While the content search process is in progress, the electronic device 300 may display one or more contents related to the category selected by the user along with one or more subcategories.
  • the electronic device 300 initiates a content search process in response to a user's touch input, voice command, or designated gesture input, and displays the content search screen 600 (eg, FIG. 1 ). It can be displayed on the display module 160 of or the display 310 of FIG.
  • the electronic device 300 may present one or more keywords 610 through a content search screen 600 in an initial state.
  • the one or more keywords 610 may correspond to representative keywords of groups classified as the top category in a content navigation model (eg, the content navigation model 500 of FIG. 5 ).
  • the electronic device 300 may display four keywords including 'payment', 'travel', 'money', and 'education' classified as the highest category on the content search screen 600 .
  • the electronic device 300 confirms that 'money' is selected among the one or more keywords 610 presented through the content search screen 600, and selects a category group of 'money' from the content navigation model.
  • One or more subcategories and one or more contents related to can be identified.
  • the electronic device 300 may limit the number of subcategories and contents displayed on the content search screen 600 in response to selection of a specific keyword. For example, the electronic device 300 may select and display a specified number of categories and/or contents among the identified one or more subcategories and one or more contents based on the displayable number set by the user.
  • the electronic device 300 may select a specified number of categories and/or content according to at least one criterion of similarity with the selected keyword, search frequency, or content creation time.
  • the electronic device 300 displays one or more subcategories 620 and one or more contents 615 related to 'money' in response to selection of the keyword 'money' on the content search screen 600.
  • the electronic device 300 displays 'stocks', 'banks', 'taxes' or 'household account books' as subcategories of 'money', and as content related to 'money', investment A, bank A, It can indicate A Securities, A Household Account Book, B Bank, or B Securities.
  • one or more categories 620 may correspond to representative keywords of groups classified as a subcategory of 'money'.
  • the one or more contents 615 may include various types of contents such as contact information of others managed by the electronic device 300, messages exchanged with other users, e-mails, images, videos, applications, or document files. According to various embodiments of the present disclosure, the electronic device 300 may display the one or more contents on the content search screen 600 by sorting the one or more contents in an order of high similarity to the corresponding category.
  • the electronic device 300 confirms that 'tax' is selected from among the one or more subcategories 620 presented through the content search screen 600, and selects a group of 'taxes' from the content navigation model.
  • One or more subcategories and one or more contents related to can be checked.
  • the electronic device 300 may display only one or more contents 625 related to 'tax' on the content search screen 600 without displaying the subcategory. there is.
  • the electronic device 300 may display tax A or tax B as content related to 'tax' in response to selection of the category 'tax'.
  • the electronic device 300 may provide the content of the selected tax A.
  • the electronic device 300 may provide an execution screen of the corresponding application through a display. If the selected content is a different type of content than an application, the electronic device 300 can identify an application or program required to provide the corresponding content, and execute it to provide the selected content.
  • the electronic device 300 transmits and receives data related to a content navigation model based on communication with an external server (eg, the server 108 of FIG. 1 ) in order to collect more diverse information and efficiently manage it. can do.
  • the electronic device 300 may correspond to the electronic device 300 shown in FIGS. 3 to 4 , and include component modules included in the electronic device 300 of FIG.
  • the electronic device 300 may further include a communication module 320 for communication connection with the server 700 .
  • the communication module 320 may correspond to the communication module 190 of FIG. 1 or the communication module 320 of FIG. 3 .
  • the communication module 320 establishes a communication connection with the server 700 to acquire various types of content, keywords related thereto, or initial data of a content navigation model from the server 700, or the electronic device 300 Data related to the content navigation model generated in ) may be transmitted to the server 700 .
  • the server 700 includes a content recommendation model creation module 710, a content recommendation model management module 720, a content management module 730, a content/keyword DB 735, and a cluster analysis module 740. , a model management module 750, a global model DB 755, or a communication module 760.
  • the server 700 is not limited to the components shown in FIG. 7, and components corresponding to functions required by the server 700 are selected from among the components shown in FIG. Additional may be included.
  • the content recommendation model generation module 710 is configured to recommend content used by many users in addition to content stored in the electronic device 300 used by individuals and related keywords, and the server 700 A content recommendation model may be generated based on content and/or related keyword information obtained from one or more electronic devices 300 connected to ).
  • the content recommendation model management module 720 may manage the generated content recommendation model. For example, the content recommendation model management module 720 may check the inflow of new data or update the content recommendation model every specified time period, and appropriately recommend content that is not stored in the electronic device 300. there is.
  • the content management module 730 may associate each content included in the content recommendation model with one or more related keywords and manage them.
  • the content management module 730 may check one or more keywords associated with each content, combine the one or more keywords with each content, and store them in the content/keyword DB 735 .
  • the content management module 730 may use a relational database or an ontology to expand a range of keywords and store and manage related keywords and contents.
  • the cluster analysis module 740 may perform hierarchical clustering on contents stored in the content/keyword DB 735 to generate a cluster model having a hierarchical tree structure. there is. According to various embodiments of the present disclosure, the cluster analysis module 740 may hierarchically classify and group the contents stored in the contents/keyword DB 735 using the keywords.
  • the model management module 750 may generate a global model by combining keywords for each group hierarchically classified based on a clustering result and content belonging to each group. Unlike a content navigation model personalized for a specific user, the global model may be understood as an integrated model based on commonly used content (or keywords).
  • the model management module 750 may store and manage the generated global model in the global model DB 755 .
  • the model management module 750 may generate and manage the global model by integrating content navigation models generated in the electronic devices 300 of various users, and the server 700 may generate and manage content navigation models.
  • the global model may be provided to each electronic device 300 .
  • the communication module 760 establishes a communication connection with one or more electronic devices 300 and transmits recommended content, related keywords, or initial data of a content navigation model to the electronic device 300, or Alternatively, data related to the content navigation model generated by the electronic device 300 may be received from the electronic device 300 . According to various embodiments of the present disclosure, the communication module 760 may exchange feedback information about a content navigation model stored in the electronic device 300 .
  • the electronic device 300 may create a personalized content navigation model based on the global model acquired from the server 700 .
  • the electronic device 300 lacks data, such as when a product has just been purchased or a memory (eg, the memory 130 of FIG. 1 or the memory 340 of FIG. 3 ) of the electronic device 300 is reset.
  • a content search function may be provided based on the global model acquired from the server 700, and thereafter, analysis data on the content (or keywords) of the electronic device 300 is applied to the global model.
  • a personalized content navigation model can be created.
  • the electronic device 300 may obtain data used to generate the global model from the server 700 .
  • the electronic device 300 obtains data requiring calculation, such as similarities between contents (or keywords), from the server 700 and uses them when generating the content navigation model, which may occur during the creation of the content navigation model. It can reduce the burden of complex calculations in The electronic device 300 provides operation data for content that has been recently created or content that is rarely used, or related to a category (or keyword) selected by a user in a content search process (not stored in the electronic device 300). Information on other content may be obtained from the server 700 and used for creation and management of a content navigation model.
  • data requiring calculation such as similarities between contents (or keywords)
  • the electronic device 300 provides operation data for content that has been recently created or content that is rarely used, or related to a category (or keyword) selected by a user in a content search process (not stored in the electronic device 300).
  • Information on other content may be obtained from the server 700 and used for creation and management of a content navigation model.
  • FIG. 8 is a diagram for explaining a method of generating a content navigation model differently for each context, according to an embodiment of the present disclosure.
  • the electronic device 300 may create different content navigation models for various contexts in order to provide customized search results according to situations at the time of content search.
  • the context may include at least one of location, season, date, time, or weather, and several contexts may be combined to be considered as one context.
  • the electronic device 300 sets a weight to at least one keyword related to a specific context or to a keyword related to content in which a search history (or usage history) in the specific context exists, so that context 1 A content navigation model 810 corresponding to may be created.
  • the electronic device 300 may assign a weight to a keyword related to context 1 based on a search frequency of content used in context 1.
  • the electronic device 300 may generate the content navigation model 810 for a specific context by using a weight application method such as term frequency-inverse document frequency (TF-IDF).
  • TF-IDF term frequency-inverse document frequency
  • the electronic device 300 may calculate a similarity between contents using cosine similarity as shown in Equation 2 below in a process of generating a content navigation model for a specific context.
  • a and b represent respective contents
  • S(a,b) denotes a degree of similarity between contents a and contents b
  • a i represents an ith keyword related to content a
  • b i represents an i th keyword related to content b
  • w represents a weight set for each keyword.
  • the electronic device 300 may apply a relatively high value of w to the keyword having a high relevance to the specific context, and the total sum of all values of w applied to Equation 2 cannot exceed 1.
  • the electronic device 300 may calculate the similarity between contents using a text-based similarity calculation method such as a jaccard coefficient, a correlation coefficient, or a hamming distance.
  • the electronic device 300 may determine a representative keyword for each category group classified with respect to a corresponding context based on the calculated similarity, and as a result, a keyword having a high correlation with the corresponding context may be selected. It can be determined as a representative keyword.
  • the electronic device 300 may create and manage content navigation models 820, 830, and 840 corresponding to contexts 2, 3, and 4, respectively, in the same manner as context 1. .
  • the content navigation models 810, 820, 830, and 840 for each context are illustrated as being configured one-dimensionally along an axis in one direction. It can be extended and implemented to create a content navigation model for each context for each cell.
  • the electronic device 300 initiates a content search process in response to a user's touch input, voice command, or designated gesture input, and displays the content search screen 900 (eg, FIG. 1 ). It can be displayed on the display module 160 of or the display 310 of FIG.
  • the electronic device 300 may present one or more keywords 910 through a content search screen 900 in an initial state.
  • the one or more keywords 910 may correspond to representative keywords of groups classified as the top category in a content navigation model (eg, the content navigation model 500 of FIG. 5 or the content navigation model 810 of FIG. 8 ).
  • the electronic device 300 may display four groups of representative keywords 'payment', 'travel', 'money', and 'education' classified as the highest category on the content search screen 900 .
  • the electronic device 300 confirms that 'education' is selected among the one or more keywords 910 presented through the content search screen 900, and associates it with the 'education' group from the content navigation model.
  • One or more sub-categories 920 and one or more contents 915, 917, and 919 may be identified.
  • the one or more subcategories 920 may correspond to representative keywords of at least some groups among the groups classified into the 'education' subcategory.
  • the electronic device 300 displays 'school', 'tutoring school', or 'learning' as a subcategory of 'education', and provides one or more applications 915 and one or more contacts as content related to 'education'.
  • Information 917 or one or more document files 919 may be displayed on the content search screen 900 .
  • the electronic device 300 may classify one or more contents 915, 917, and 919 according to content types and display them.
  • the electronic device 300 may display the one or more contents on the content search screen 900 by sorting the one or more contents in an order of high similarity to the corresponding category.
  • the electronic device 300 may limit the number of subcategories and contents displayed on the content search screen 900 .
  • the electronic device 300 may select and display a specified number of categories and/or contents among the identified one or more subcategories and one or more contents based on the displayable number set by the user.
  • the electronic device 300 may select a specified number of categories and/or content according to at least one criterion of similarity with the selected keyword, search frequency, or content creation time.
  • the electronic device 300 confirms that 'school' is selected from one or more sub-categories 920 presented through the content search screen 900, and selects 'school' as a group from the content navigation model.
  • One or more related subcategories 930 and one or more contents 925, 927, and 929 may be identified.
  • the one or more subcategories 930 may correspond to representative keywords of at least some groups among the groups classified into the 'school' subcategory.
  • the electronic device 300 displays 'class', 'teacher', or 'homework' as a subcategory of 'school', and provides one or more applications 925 and one or more contacts as content related to 'school'.
  • Information 927 or one or more document files 929 may be displayed on the content search screen 900 .
  • the electronic device 300 confirms that the 'experiential learning application.docx' document file is selected from among one or more contents 925, 927, and 929 presented through the content search screen 900, and the The selected document file may be opened and provided through the display 310 . In this way, the electronic device 300 may guide the user to easily and quickly access desired content by presenting categories and content corresponding to the keyword selected by the user step by step.
  • the electronic device 300 may provide a content search method that simultaneously utilizes a search word input and keyword (category) selection.
  • the electronic device 300 initiates a content search process in response to a user's touch input, voice command, or designated gesture input, and displays a content search screen 1000 (eg, the display module of FIG. 1 ). 160 or the display 310 of FIG. 3 .
  • the content search screen 1000 may include a search word input field 1010 for inputting a search word and one or more keywords 1020 .
  • the one or more keywords 1020 may correspond to representative keywords of groups classified as the top category in a content navigation model (eg, the content navigation model 500 of FIG. 5 or the content navigation model 810 of FIG. 8 ).
  • the electronic device 300 may check a selection input for one of the one or more keywords 1020 in a state in which a search word is input in the search word input field 1010 .
  • the electronic device 300 may confirm that 'education' is selected from among the one or more keywords 1020 in a state in which the user inputs the search word 'experience' into the search word input field 1010 .
  • the electronic device 300 directly searches for the 'experiential learning application.docx' document file 1030 as content that satisfies both the input search term and the selected keyword, and provides it through the display 310 can do.
  • the electronic device 300 is a device that generates a content navigation model for hierarchically grouping and managing a plurality of contents stored in the electronic device 300 based on one or more related keywords, It may correspond to the electronic device 101 shown in FIG. 1 or the electronic device 300 shown in FIG. 3 .
  • the operations of FIG. 11 may be performed by at least one processor included in the electronic device 300 (eg, the processor 120 of FIG. 1 or the at least one processor 330 of FIG. 3 ).
  • the electronic device 300 may acquire a plurality of keywords associated with a plurality of contents stored in a memory (eg, the memory 130 of FIG. 1 or the memory 340 of FIG. 3 ). there is.
  • the plurality of keywords may be obtained using at least one of a name (eg, file name, application name) or type of each content, related information (eg, category, metadata, or tag data), or content included in the content.
  • the electronic device 300 checks information about the plurality of contents from the memory 340 or one or more databases accessible by the electronic device 300, and based on the information about the identified plurality of contents, The plurality of keywords may be extracted.
  • the electronic device 300 obtains information about the plurality of contents from an external server through a communication module (eg, the communication module 190 of FIG. 1 or the communication module 340 of FIG. 3), or Alternatively, recommendation keywords related to the plurality of contents may be obtained.
  • a communication module eg, the communication module 190 of FIG. 1 or the communication module 340 of FIG. 3
  • recommendation keywords related to the plurality of contents may be obtained.
  • the electronic device 300 may create one or more groups by hierarchically classifying the plurality of contents based on the plurality of keywords. For example, the electronic device 300 may classify the plurality of contents in a hierarchical tree structure using a hierarchical clustering technique and create one or more groups based on the classification result. .
  • the electronic device 300 may check representative keywords corresponding to the generated one or more groups.
  • the representative keyword for each group may correspond to a category corresponding to each of one or more groups generated according to the classification result.
  • the electronic device 300 may determine a representative keyword for each group based on at least one of an average similarity between contents included in each of the one or more groups, a keyword type, or a search history. .
  • the electronic device 300 may calculate a similarity between contents associated with each group, and determine a keyword of content having the largest average value of the calculated similarity as a representative keyword of the corresponding group.
  • the similarity between the contents may be measured using at least one text-based similarity calculation method among cosine similarity, jaccard coefficient, correlation coefficient, or hamming distance.
  • the electronic device 300 may set weights for each source data of keywords included in each group and calculate keyword scores based on the set weights. The electronic device 300 may determine a keyword having the highest calculated keyword score as the representative keyword.
  • the electronic device 300 may check the frequency of use of keywords included in each group and determine a keyword with the highest frequency of use as the representative keyword.
  • the electronic device 300 may generate a navigation model by combining the identified representative keyword for each group with content belonging to each group. For example, the electronic device 300 associates the plurality of contents with a representative keyword for each group to correspond to one or more groups generated based on hierarchical clustering, thereby providing a navigation model having a hierarchical tree structure.
  • each content may be overlapped and connected to one or more keywords according to an association with one or more categories without being specific to one keyword, thereby increasing the probability of accessing the desired content by the user. there is.
  • the electronic device 300 generates a plurality of content navigation models in real time based on a user's profile or context information, or various A content navigation model for each context may be created in advance.
  • the electronic device 300 may check context information related to the user and set a weight to at least one keyword related to the checked context information.
  • the context information may include at least one of location, season, date, time, and weather. For example, when a user wants to search for specific content while located in an amusement park, the electronic device 300 checks the context of 'amusement park' and allows the user to quickly access amusement park-related applications or information related to nearby facilities.
  • Weights can be set for keywords related to the context of 'amusement park' or keywords related to content that has a history of use in the context.
  • the electronic device 300 may determine a representative keyword for each group based on the set weight and generate a navigation model corresponding to the context information based on the determined representative keyword for each group.
  • the electronic device 300 may store the generated navigation model in a memory 340 or a database accessible by the electronic device 300. According to various embodiments of the present disclosure, the electronic device 300 may update the navigation model whenever content is stored. For example, if at least one processor 330 confirms that new content is stored in the memory 340, it obtains at least one keyword associated with the new content, and uses an incremental clustering technique to retrieve the new content. The navigation model may be updated by applying new content to the existing navigation model.
  • FIG. 12 is a flowchart illustrating a method of operating an electronic device according to an embodiment of the present disclosure.
  • the electronic device 300 sequentially provides a path through which a user can access content desired to find based on a content navigation model. As a device for doing this, it may correspond to the electronic device 101 shown in FIG. 1 or the electronic device 300 shown in FIG. 3 .
  • the operations of FIG. 12 may be performed by at least one processor included in the electronic device 300 (eg, the processor 120 of FIG. 1 or the at least one processor 330 of FIG. 3 ).
  • the electronic device 300 may display one or more keywords for content search on a display (eg, the display module 160 of FIG. 1 or the display 310 of FIG. 3 ). .
  • the one or more keywords may correspond to representative keywords of groups classified as the highest category in the content navigation model.
  • the electronic device 300 may display the one or more keywords on the display 310 in response to a designated gesture input by the user.
  • the electronic device 300 may display the one or more keywords on the display 310 when confirming that a user's touch input or voice command calling a content search screen is input.
  • the electronic device 300 may present one or more keywords through the display 310 when confirming that an action designated for content search is performed.
  • the electronic device 300 may check selection of a first keyword among the one or more keywords displayed on the display 310. In operation 1220, the electronic device 300 may confirm that the first keyword is selected based on a user's touch input or voice input for the first keyword.
  • the electronic device 300 displays one or more first categories among subcategories associated with the first keyword and one or more first contents associated with the first keyword (310 ) can be displayed.
  • the one or more first categories may correspond to at least some of subcategories of the first keyword, and a representative keyword for each group classified as a subcategory of the first keyword in the content navigation model corresponds to the one or more first categories.
  • the one or more first contents may include contents belonging to a group corresponding to the first keyword.
  • the electronic device 300 in response to confirming selection of a keyword 'travel' from among the one or more keywords, the electronic device 300 sets a category of 'airline', 'map', 'food' or 'accommodation' and 'travel'.
  • One or more contents related to may be displayed through the display 310 .
  • the electronic device 300 may check content display related setting information. For example, the electronic device 300 may check the displayable number based on the setting information and limit the number of the one or more first categories and the one or more first contents according to the displayable number.
  • the electronic device 300 selects the number of first categories and first content corresponding to the displayable number according to at least one criterion of similarity with the first keyword, search frequency, and content creation time, It can be displayed on the display 310.
  • the at least one criterion may be differently applied according to a user's content use pattern.
  • the electronic device 300 may check whether selection of one of one or more first contents displayed on the display 310 is input. For example, the electronic device 300 may determine which one of the one or more first contents or the one or more first categories is selected based on a user's touch input, voice input, or other specified gesture input. As a result of the check, if one of the one or more first contents is not selected (operation 1240 - No), the electronic device 300 checks a selection input for one of the one or more first categories in operation 1250, and selects the selected category. One or more second categories among subcategories related to and one or more second contents related to the selected category may be displayed on the display 310 .
  • the one or more second categories may correspond to at least some of the subcategories of the first category, and a representative keyword for each group classified as a subcategory of the selected category in the content navigation model is selected as the one or more second categories.
  • the one or more second contents may include contents belonging to the group of the selected category.
  • the electronic device 300 may display the one or more second categories and one or more second contents in the same way as the one or more first categories and the one or more first content display methods. When confirming selection of one of the one or more first categories, the electronic device 300 checks the number of items that can be displayed according to the setting information, and determines similarity with the representative keyword of the selected category, search frequency, or content creation time.
  • Second categories and second content corresponding to the displayable number may be selected and arranged according to at least one criterion among, and displayed on the display 310 .
  • the electronic device 300 may check a selection input for the one or more second categories or the one or more second contents.
  • the electronic device 300 may determine which one of the one or more second categories or the one or more second contents is selected based on a user's touch input, voice input, or other designated gesture input. For example, when a selection input for one of the one or more second contents is confirmed, the electronic device 300 may provide the selected contents through the display 310 .
  • the electronic device 300 may display one or more subcategories and one or more contents related to the selected category on the display 310. .
  • the electronic device 300 may identify one or more subcategories and one or more contents related to the selected category and display them on the display 310 until a selection for any one content displayed on the display 310 is input. .
  • the electronic device 300 may provide the selected content through the display 310 in operation 1255 .
  • the electronic device 300 may identify an application or program necessary to provide the content in response to the selection of the content, and provide the selected content by executing the application or program.
  • An electronic device may include a display (eg, the display 310), a communication module (eg, the communication module 320), and the display and the communication module operatively.
  • at least one processor coupled thereto eg, processor 330
  • a memory operatively coupled to the at least one processor eg, memory 340
  • the memory when executed, comprises: In response to the processor displaying one or more keywords for content search on the display and confirming selection of a first keyword among the one or more keywords, one or more first categories among subcategories associated with the first keyword and the One or more first contents related to the first keyword are sorted and displayed according to a specified criterion, and when a selection input of one of the one or more first categories is confirmed, one or more second categories among subcategories related to the selected category are displayed. and one or more second contents related to the selected category are sorted and displayed according to the specified criterion, and instructions for providing the selected content when a selection input for one of the one
  • the instructions include, when the at least one processor selects the first keyword, checks setting information about the displayable number, and based on the setting information, the one or more second keywords.
  • One category and one or more first contents may be displayed.
  • the instructions may cause the at least one processor to select the one or more first categories according to the specified criterion including at least one of similarity with the first keyword, search frequency, and content creation time. and the at least one first content may be aligned and displayed.
  • the instructions may, if the at least one processor confirms a selection input of one of the one or more second contents, provide the selected content, and select one of the one or more second categories.
  • the selection input is confirmed, one or more subcategories and one or more contents related to the selected category may be checked and displayed until a selection of one content is input.
  • the instructions include, by the at least one processor, checking context information related to the selection time of the first keyword, and determining the one or more first categories and information based on the checked context information.
  • the at least one first content is determined and displayed, and the context information may include at least one of location, season, date, time, and weather.
  • An electronic device (eg, the electronic device 300) according to another embodiment includes a communication module (eg, the communication module 320), at least one processor operatively connected to the communication module (eg, the processor 330), and a memory (e.g., memory 340) that stores a plurality of contents and is operatively connected to the at least one processor, wherein the memory, when executed, causes the at least one processor to store the plurality of contents.
  • a communication module eg, the communication module 320
  • at least one processor operatively connected to the communication module eg, the processor 330
  • a memory e.g., memory 340
  • Obtaining a plurality of keywords related to hierarchically classifying the plurality of contents based on the obtained plurality of keywords to create one or more groups, and identifying a representative keyword corresponding to each of the one or more groups, Instructions for generating a navigation model by combining the identified representative keyword with content included in each of the one or more groups and storing the generated navigation model may be stored.
  • the instructions may cause the at least one processor to obtain information about the plurality of contents from one or more databases (eg, a content/keyword DB 435) accessible from the memory or the electronic device. and extract the plurality of keywords based on the information on the plurality of contents.
  • databases eg, a content/keyword DB 435
  • the instructions may cause the at least one processor to obtain the plurality of keywords from an external server using the communication module.
  • the instructions may cause the at least one processor to classify the plurality of keywords using a hierarchical clustering technique.
  • the instructions may cause the at least one processor to determine the representative keyword based on at least one of an average similarity between content included in each of the one or more groups, a keyword type, and a search history. can decide
  • the instructions include, by the at least one processor, checking context information related to the user of the electronic device, setting a weight to at least one keyword related to the checked context information, A representative keyword corresponding to each of the one or more groups may be determined based on the set weight, and a first model generated based on the determined representative keyword may be stored as a navigation model corresponding to the context information.
  • the instructions include, when the at least one processor confirms that the new content is stored in the memory, obtaining at least one keyword associated with the new content, and performing incremental clustering
  • the navigation model may be updated using a technique.
  • An operating method of an electronic device includes displaying one or more keywords for content search on a display and selecting a first keyword from among the one or more keywords.
  • an operation of sorting and displaying one or more first categories among subcategories associated with the first keyword and one or more first contents associated with the first keyword according to a specified criterion In response to confirmation, an operation of sorting and displaying one or more first categories among subcategories associated with the first keyword and one or more first contents associated with the first keyword according to a specified criterion;
  • an operation of sorting and displaying one or more second categories among subcategories related to the selected category and one or more second contents related to the selected category according to the specified criteria When a selection input for one of the first contents is confirmed, an operation of providing the selected contents may be included.
  • the operation of displaying the one or more first categories and the one or more first contents includes, when selection of the first keyword is input, an operation of checking setting information about the displayable number, and the and sorting and displaying the one or more first categories and the one or more first contents according to the specified criterion based on setting information, wherein the specified criterion is similarity with the first keyword, search frequency, or content It may include at least one of the creation times.
  • the operation of displaying the one or more first categories and the one or more first contents may include an operation of checking context information associated with a selection time of the first keyword, and the checked context information. and determining and displaying the one or more first categories and the one or more first contents based on the context, and the context information may include at least one of location, season, date, time, or weather.
  • the operation of displaying the one or more second categories and the one or more second contents may include providing the selected content when a selection input of one of the one or more second contents is confirmed, and When a selection input of one of the one or more second categories is confirmed, the operation of checking and displaying one or more subcategories and one or more contents related to the selected category until a selection of one content is input. can do.
  • An operating method of an electronic device includes an operation of acquiring a plurality of keywords associated with a plurality of contents stored in the electronic device, and a plurality of keywords based on the acquired keywords.
  • An operation of classifying a plurality of contents hierarchically to create one or more groups, an operation of identifying a representative keyword corresponding to each of the one or more groups, and combining the identified representative keyword with content included in each of the one or more groups It may include an operation of generating a navigation model by doing so, and an operation of storing the generated navigation model.
  • the operation of acquiring the plurality of keywords may include a memory of the electronic device (eg, memory 340) or one or more databases accessible from the electronic device (eg, content/keyword DB 435). )) extracting the plurality of keywords based on the information about the plurality of contents identified from, or the plurality of keywords from an external server using a communication module (eg, communication module 320) of the electronic device It may include an operation of obtaining.
  • a memory of the electronic device eg, memory 340
  • one or more databases accessible from the electronic device eg, content/keyword DB 435.
  • extracting the plurality of keywords based on the information about the plurality of contents identified from, or the plurality of keywords from an external server using a communication module (eg, communication module 320) of the electronic device It may include an operation of obtaining.
  • the operation of generating the one or more groups may include an operation of hierarchically classifying the plurality of contents according to categories using a hierarchical clustering technique.
  • the checking of the representative keyword may include determining the representative keyword based on at least one of an average similarity between contents included in each of the one or more groups, a keyword type, and a search history. Actions may be included.
  • the method may include an operation of checking context information associated with the user of the electronic device, an operation of setting a weight to at least one keyword related to the checked context information, and an operation based on the set weight.
  • the method may further include determining a representative keyword corresponding to each of the one or more groups, and storing a first model generated based on the determined representative keyword as a navigation model corresponding to the context information.
  • the method if it is confirmed that new content is stored in the electronic device, an operation of acquiring at least one keyword associated with the new content, and using an incremental clustering technique An operation of updating the navigation model may be further included.
  • Electronic devices may be devices of various types.
  • the electronic device may include, for example, a portable communication device (eg, a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance.
  • a portable communication device eg, a smart phone
  • a computer device e.g., a smart phone
  • a portable multimedia device e.g., a portable medical device
  • a camera e.g., a portable medical device
  • a camera e.g., a portable medical device
  • a camera e.g., a camera
  • a wearable device e.g., a smart bracelet
  • first, second, or first or secondary may simply be used to distinguish that component from other corresponding components, and may refer to that component in other respects (eg, importance or order) is not limited.
  • a (eg, first) component is said to be “coupled” or “connected” to another (eg, second) component, with or without the terms “functionally” or “communicatively.”
  • the certain component may be connected to the other component directly (eg by wire), wirelessly, or through a third component.
  • module used in this document may include a unit implemented by hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example.
  • a module may be an integrally constructed component or a minimal unit of components or a portion thereof that performs one or more functions.
  • the module may be implemented in the form of an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • a storage medium eg, internal memory 136 or external memory 138
  • a machine eg, electronic device 101
  • a processor eg, the processor 120
  • a device eg, the electronic device 101
  • the one or more instructions may include code generated by a compiler or code executable by an interpreter.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • non-temporary only means that the storage medium is a tangible device and does not contain a signal (e.g. electromagnetic wave), and this term refers to the case where data is stored semi-permanently in the storage medium and It does not discriminate when it is temporarily stored.
  • a signal e.g. electromagnetic wave
  • the method according to various embodiments disclosed in this document may be included and provided in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • a computer program product is distributed in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)), or through an application store (eg Play Store TM ) or between two user devices ( It can be distributed (eg downloaded or uploaded) online, directly between smartphones.
  • a device-readable storage medium eg compact disc read only memory (CD-ROM)
  • an application store eg Play Store TM
  • It can be distributed (eg downloaded or uploaded) online, directly between smartphones.
  • at least part of the computer program product may be temporarily stored or temporarily created in a device-readable storage medium such as a manufacturer's server, an application store server, or a relay server's memory.
  • each component eg, module or program of the components described above may include a singular object or a plurality of entities.
  • one or more components or operations among the aforementioned components may be omitted, or one or more other components or operations may be added.
  • a plurality of components eg modules or programs
  • the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by a corresponding component of the plurality of components prior to the integration. .
  • operations performed by modules, programs, or other components are executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations are executed in a different order, omitted, or , or one or more other operations may be added.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Library & Information Science (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

전자 장치가 제공된다. 상기 전자 장치는, 디스플레이, 통신 모듈, 상기 디스플레이 및 상기 통신 모듈과 작동적으로 연결된 적어도 하나의 프로세서, 및 상기 적어도 하나의 프로세서와 작동적으로 연결된 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 콘텐트 검색을 위한 하나 이상의 키워드를 상기 디스플레이 상에 표시하고, 상기 하나 이상의 키워드 중 제1 키워드의 선택을 확인함에 응답하여, 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 지정된 기준에 따라 정렬하여 표시하고, 상기 하나 이상의 제1 카테고리 중 하나의 선택 입력을 확인하면, 상기 선택된 카테고리에 연관되는 하위 카테고리 중 하나 이상의 제2 카테고리와 상기 선택된 카테고리에 연관되는 하나 이상의 제2 콘텐트를 상기 지정된 기준에 따라 정렬하여 표시하고, 상기 하나 이상의 제1 콘텐트 중 하나에 대한 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하도록 하는 인스트럭션들을 저장할 수 있다.

Description

콘텐트를 검색하는 전자 장치 및 그 방법
본 개시는 전자 장치에 저장된 콘텐츠 중 사용자가 찾고자 하는 콘텐트를 검색하는 전자 장치 및 그 방법에 관한 것이다.
최근 이동통신 기술의 발전으로 휴대 단말기의 사용이 보편화됨에 따라, 휴대 단말기를 통해 제공되는 서비스 또는 기능들이 점차 다양해지고 있다. 예컨대, 사용자는 타인의 연락처를 비롯하여 이미지, 동영상, 문서, 또는 어플리케이션과 같이 다양한 종류의 콘텐트를 휴대 단말기에 저장하여 관리할 수 있으며, 필요에 따라 언제든지 원하는 콘텐트를 검색하여 사용할 수 있다.
휴대 단말기를 통해 저장 및 관리하는 콘텐트가 보다 다양화되고 증가하면서, 사용자는 자신이 원하는 특정 콘텐트를 찾는 데 어려움을 느낄 수 있다. 일반적으로 사용자는 디스플레이의 홈 화면 페이지를 넘기면서 자신이 원하는 콘텐트를 찾을 수 있는데, 휴대 단말기에 저장된 콘텐트가 많을수록 원하는 콘텐트를 찾는 데 소요되는 시간이 증가될 수 있다.
본 개시의 측면들은 적어도 상술한 문제들 및/또는 단점들을 해결하고, 적어도 하기 설명된 이점들을 제공하는 것이다. 본 개시의 일 측은, 검색어 입력을 통해 콘텐트를 검색하는 방식을 제공하는 것이다. 다만, 적절한 검색어를 입력하지 못할 경우 원하는 콘텐트를 바로 찾지 못하고 여러 번 검색을 수행하여야 하는 번거로움이 발생될 수 있다.
본 개시의 다른 일 측은, 사용자가 이전에 사용하였던 검색어를 재입력하는 경우 과거에 해당 검색어 입력에 대응하여 선택하였던 콘텐트를 제공하는 방식을 제공하는 것이다. 다만, 특정 콘텐트에 대한 검색 이력이 존재하지 않는 경우 이 방식은 활용 불가능하여 효율적인 콘텐트 검색 방식으로 볼 수 없다.
본 개시의 다른 일 측은, 전자 장치에 저장된 콘텐츠를 이에 연관되는 키워드들을 이용하여 계층적으로 클러스터링 하여 생성된 트리 구조의 콘텐트 내비게이션 모델을 제공하는 것이다.
본 개시의 다른 일 측은, 사용자가 전자 장치를 통해 특정 콘텐트를 검색하고자 하는 경우, 상기 생성된 콘텐트 내비게이션 모델을 기반으로 상위 카테고리와 이에 연관되는 콘텐트를 정렬하여 표시하고, 사용자가 원하는 콘텐트를 찾을 때까지 사용자에 의해 선택된 카테고리의 하위 카테고리와 관련 콘텐트를 순차적으로 제시함으로써, 사용자로 하여금 원하는 콘텐트를 보다 쉽고 빠르게 검색할 수 있도록 지원하는 전자 장치를 제공하는 것이다.
추가적인 측면들은 하기 설명에서 설명될 것이고, 부분적으로는 하기 설명으로부터 명백해질 것이며, 또는 제시된 실시예의 실행에 의해 학습될 수 있다.
본 개시의 일 측에 따르면, 전자 장치는 디스플레이, 통신 모듈, 상기 디스플레이 및 상기 통신 모듈과 작동적으로 연결된 적어도 하나의 프로세서, 및 상기 적어도 하나의 프로세서와 작동적으로 연결된 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 콘텐트 검색을 위한 하나 이상의 키워드를 상기 디스플레이 상에 표시하고, 상기 하나 이상의 키워드 중 제1 키워드의 선택을 확인함에 응답하여 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 지정된 기준에 따라 정렬하여 표시하고, 상기 하나 이상의 제1 카테고리 중 하나의 선택 입력을 확인하면 선택된 카테고리에 연관되는 하위 카테고리 중 하나 이상의 제2 카테고리와 상기 선택된 카테고리에 연관되는 하나 이상의 제2 콘텐트를 상기 지정된 기준에 따라 정렬하여 표시하고, 상기 하나 이상의 제1 콘텐트 중 하나에 대한 선택 입력을 확인하면 상기 선택된 콘텐트를 제공하도록 하는 인스트럭션들을 저장할 수 있다.
본 개시의 다른 일 측에 따르면, 전자 장치는 통신 모듈, 상기 통신 모듈과 작동적으로 연결된 적어도 하나의 프로세서, 및 복수 개의 콘텐트를 저장하고, 상기 적어도 하나의 프로세서와 작동적으로 연결된 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 상기 복수 개의 콘텐트에 연관되는 복수 개의 키워드를 획득하고, 상기 획득한 복수 개의 키워드를 기반으로 상기 복수 개의 콘텐트를 계층적으로 분류하여 하나 이상의 그룹을 생성하고, 상기 하나 이상의 그룹 각각에 대응하는 대표 키워드를 확인하고, 상기 확인된 대표 키워드를, 상기 하나 이상의 그룹 각각에 포함된 콘텐트와 조합하여 내비게이션 모델을 생성하고, 상기 생성된 내비게이션 모델을 저장하도록 하는 인스트럭션들을 저장할 수 있다.
본 개시의 다른 일 측에 따르면, 전자 장치의 동작 방법은 콘텐트 검색을 위한 하나 이상의 키워드를 디스플레이 상에 표시하는 동작, 상기 하나 이상의 키워드 중 제1 키워드의 선택을 확인함에 응답하여 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 지정된 기준에 따라 정렬하여 표시하는 동작, 상기 하나 이상의 제1 카테고리 중 하나의 선택 입력을 확인하면 선택된 카테고리에 연관되는 하위 카테고리 중 하나 이상의 제2 카테고리와 상기 선택된 카테고리에 연관되는 하나 이상의 제2 콘텐트를 상기 지정된 기준에 따라 정렬하여 표시하는 동작, 및 상기 하나 이상의 제1 콘텐트 중 하나에 대한 선택 입력을 확인하면 상기 선택된 콘텐트를 제공하는 동작을 포함할 수 있다.
본 개시의 다른 일 측에 따르면, 전자 장치의 동작 방법은 상기 전자 장치에 저장된 복수 개의 콘텐트에 연관되는 복수 개의 키워드를 획득하는 동작, 상기 획득한 복수 개의 키워드를 기반으로 상기 복수 개의 콘텐트를 계층적으로 분류하여 하나 이상의 그룹을 생성하는 동작, 상기 하나 이상의 그룹 각각에 대응하는 대표 키워드를 확인하는 동작, 상기 확인된 대표 키워드를, 상기 하나 이상의 그룹 각각에 포함된 콘텐트와 조합하여 내비게이션 모델을 생성하는 동작, 및 상기 생성된 내비게이션 모델을 저장하는 동작을 포함할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따르면, 전자 장치(예: 스마트폰, 태블릿 장치)에 저장된 콘텐트(예: 연락처 정보, 이미지, 동영상, 문서 파일, 또는 어플리케이션)를 카테고리에 따라 계층적으로 그룹화하여 관리할 수 있다. 또한, 콘텐트 검색 시 사용자의 선택 입력을 기반으로 각 그룹에 대응하는 카테고리와 콘텐트를 순차적으로 제시함으로써, 사용자가 원하는 콘텐트에 보다 쉽고 빠르게 접근할 수 있으며, 이로 인해 콘텐트 검색 과정의 효율성이 향상될 수 있다.
본 개시의 다른 측면들과 이점들 및 특징들은 첨부 도면들과 함께 본 개시의 다양한 실시예들을 개시하는 아래의 상세한 설명으로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명백해질 것이다.
본 개시의 특정 실시예들의 상기에서 설명한 바와 같은, 또한 다른 측면들과, 특징들 및 이점들은 첨부 도면들과 함께 처리되는 하기의 설명으로부터 보다 명백하게 될 것이다.
도 1은 본 개시의 일 실시 예에 따른 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 본 개시의 일 실시 예에 따른 콘텐트 검색 방식을 설명하는 도면이다.
도 3은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 도시하는 블록도이다.
도 4는 본 개시의 일 실시 예에 따른 전자 장치의 세부 구성을 설명하는 도면이다.
도 5는 본 개시의 일 실시 예에 따라 생성된 콘텐트 내비게이션 모델을 설명하는 도면이다.
도 6은 본 개시의 일 실시 예에 따라, 전자 장치에서 콘텐트를 단계적으로 검색하는 방식에 대해 설명하는 도면이다.
도 7은 본 개시의 일 실시 예에 따른, 외부 서버와 연동하여 콘텐트 내비게이션 모델을 제공하는 구성을 설명하는 도면이다.
도 8은 본 개시의 일 실시 예에 따라, 콘텐트 내비게이션 모델을 컨텍스트 별로 상이하게 생성하는 방식을 설명하는 도면이다.
도 9는 본 개시의 일 실시 예에 따라, 전자 장치에서 카테고리 선택을 기반으로 콘텐트를 검색하는 과정을 설명하는 도면이다.
도 10은 본 개시의 일 실시 예에 따라, 전자 장치에서 검색어 입력 및 카테고리 선택을 기반으로 콘텐트를 검색하는 과정을 설명하는 도면이다.
도 11은 본 개시의 일 실시 예에 따른, 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 12는 본 개시의 일 실시 예에 따른, 전자 장치의 동작 방법을 도시하는 흐름도이다.
도면 전체에서, 동일한 구성요소를 나타내기 위해 동일한 참조 부호가 사용될 수 있다.
이하, 첨부된 도면을 참조하여 본 문서에 개시된 다양한 실시 예들이 설명된다. 이는 본 개시의 다양한 실시 예들을 특정한 형태로 한정하려는 것이 아니며, 본 개시의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다.
도 1은 일 실시 예에 따른 네트워크 환경(100) 내의 전자 장치를 도시한 도면이다.
도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108) 중 적어도 하나와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시 예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시 예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시 예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일 실시 예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능 모델이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted Boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.
음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일 실시 예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시 예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시 예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시 예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시 예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시 예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시 예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시 예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일 실시 예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일 실시 예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시 예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제1 네트워크(198)(예: 블루투스, Wi-Fi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제1 네트워크(198) 또는 제2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다.
무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일 실시 예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시 예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일 실시 예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제1 네트워크(198) 또는 제2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시 예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.
다양한 실시 예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일 실시 예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제2 면(예: 윗면 또는 측면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일 실시 예에 따르면, 명령 또는 데이터는 제2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시 예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부의 전자 장치에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시 예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일 실시 예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.
도 2는 본 개시의 일 실시 예에 따른 콘텐트 검색 방식을 설명하는 도면이다. 본 개시의 다양한 실시 예에 따라, 전자 장치(200)는 사용자에 의해 입력된 검색어를 기반으로 사용자가 찾고자 하는 콘텐트를 검색할 수 있다.
도 2를 참조하면, 전자 장치(200)는 지정된 제스처 입력에 응답하여 콘텐트 검색 화면(201)을 제공할 수 있다. 예를 들어, 사용자가 전자 장치(200)의 홈 화면의 페이지를 넘기는 동안 콘텐트 검색을 위한 페이지에 도달하거나, 또는 디스플레이 상에서 지정된 방향으로 스와이프(swipe) 동작이 수행됨을 감지하면, 콘텐트 검색 화면(201)을 표시할 수 있다. 다른 예를 들어, 홈 화면의 바로가기 아이콘에 대한 사용자의 터치 입력이나 사용자로부터 입력된 음성 명령에 응답하여, 전자 장치(200)는 콘텐트 검색 화면(201)을 호출하여 표시할 수 있다.
비교 예에서, 콘텐트 검색 화면(201)은 사용자가 찾고자 하는 콘텐트에 대한 검색어를 입력받기 위한 검색어 입력 필드(210)를 포함할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(200)는 검색어 입력 필드(210)에 입력된 검색어를 기반으로 관련 콘텐트를 제공할 수 있다. 예를 들어, 사용자가 콘텐트 검색 화면(201) 내 검색어 입력 필드(210)에 '지도'라는 검색어를 입력하면, 전자 장치(200)는 메모리에 저장된 콘텐츠 중 지도에 관련된 콘텐트를 확인하고, 상기 확인 결과를 검색 결과로서 제공할 수 있다.
비교 예에서, 전자 장치(200)는 지도 서비스를 제공하는 하나 이상의 어플리케이션을 비롯하여, 지도에 관련된 이미지, 문서, 또는 웹페이지를 검색 결과로서 콘텐트 검색 화면(201) 하단에 표시할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(200)는 전자 장치(200)를 통해 제공 가능한 지도 관련 기능들을 검색 결과로서 표시할 수도 있다. 도 2와 같이 검색어를 기반으로 콘텐트를 제공하는 경우, 사용자가 적절한 검색어를 입력하여야 자신이 원하는 콘텐트를 검색 결과로서 제공받을 수 있다. 사용자가 자신이 찾고자 하는 콘텐트에 대응하는 검색어를 적절하게 입력하지 못한다면 검색에 실패할 수 있어, 적절한 검색어를 입력할 때까지 여러 차례 검색을 반복 수행하여야 할 수 있다.
도 3은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 도시하는 블록도이다.
도 3을 참조하면, 전자 장치(300)는 사용자가 원하는 콘텐트를 보다 쉽고 빠르게 찾을 수 있도록 단계적으로 내비게이션 하는 장치로서, 디스플레이(310), 통신 모듈(320), 프로세서(330) 또는 메모리(340)를 포함할 수 있다. 도 3에서, 전자 장치(300)는 도 1에 도시된 전자 장치(101)에 대응될 수 있다.
본 개시의 일 실시 예에서, 디스플레이(310)(예: 도 1의 디스플레이 모듈(160))는 전자 장치(300)에 저장된 복수 개의 콘텐트 중 사용자에 의해 선택된 콘텐트를 표시할 수 있다. 예를 들어, 디스플레이(310)는 사용자가 원하는 콘텐트에 접근할 수 있도록 사용자가 선택한 키워드에 대응하는 카테고리 및 콘텐트를 단계적으로 제공할 수 있다. 다른 예를 들어, 디스플레이(310)는 사용자의 선택 입력을 기반으로 콘텐트를 제공하기 위한 어플리케이션의 실행 화면을 표시할 수 있다.
본 개시의 일 실시 예에서, 디스플레이(310)는 LCD(liquid crystal display), TFT-LCD(thin film transistor LCD), OLED(organic light emitting diodes), 발광다이오드(LED), AMOLED(active matrix organic LED), 플렉서블 디스플레이(flexible display) 및 3차원 디스플레이(3 dimension display) 중 적어도 하나 이상으로 구성될 수 있다. 또한 이들 중 일부 디스플레이는 그를 통해 외부를 볼 수 있도록 투명형 또는 광투과형으로 구성될 수 있다. 이는 TOLED(transparent OLED)를 포함하는 투명 디스플레이 형태로 구성될 수 있다.
본 개시의 일 실시 예에서, 통신 모듈(320)(예: 도 1의 통신 모듈(190))은 하나 이상의 외부 전자 장치(예: 도 1의 전자 장치(102) 또는 전자 장치(104)) 또는 외부 서버(예: 도 1의 서버(108))와의 통신 연결을 설정할 수 있다. 예를 들어, 통신 모듈(320)은 다양한 종류의 콘텐트와 그에 관련된 키워드, 또는 콘텐트 내비게이션 모델의 초기 데이터를 외부 서버로부터 획득할 수 있다. 다른 예를 들어, 통신 모듈(320)은 전자 장치(300)에서 생성된 콘텐트 내비게이션 모델 관련 데이터를 상기 외부 서버로 전송할 수도 있다. 본 개시의 다양한 실시 예에 따라, 통신 모듈(320)은 셀룰러 통신, Wi-Fi(wireless-fidelity), 블루투스, NFC(near field communication), 또는 UWB(ultra-wide band) 통신 중 적어도 하나의 통신 방식을 제공할 수 있다.
본 개시의 일 실시 예에서, 메모리(340)(예: 도 1의 메모리(130))는, 사용자에 의해 전자 장치(300)에서 직접 생성되었거나 또는 통신 모듈(320)을 통해 외부 전자 장치로부터 획득한 복수 개의 콘텐트와 상기 콘텐트 각각의 관련 정보를 저장할 수 있다. 상기 복수 개의 콘텐트는 전자 장치(300)에서 관리되는 타인의 연락처 정보, 다른 사용자와 주고받은 메시지나 이메일, 이미지, 동영상, 어플리케이션 또는 문서 파일과 같은 다양한 종류의 콘텐트를 포함할 수 있다. 본 개시의 다양한 실시 예에 따라, 메모리(340)는, 실행 시에, 적어도 하나의 프로세서(330)(예: 도 1의 프로세서(120))가 각종 동작들을 수행하도록 제어하는 인스트럭션들을 저장할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 전자 장치(300)에 저장된 콘텐츠 중 사용자가 찾고자 하는 콘텐트에 접근할 수 있도록 하나 이상의 카테고리와 관련 콘텐트를 순차적으로 제시하기 위한 동작들을 수행할 수 있다.
본 개시의 다양한 실시 예에 따라, 적어도 하나의 프로세서(330)는 메모리(340)에 저장된 복수 개의 콘텐트 중 사용자가 원하는 특정 콘텐트를 효율적으로 검색할 수 있도록, 상기 복수 개의 콘텐트를 하나 이상의 관련 키워드에 기반하여 계층적으로 그룹화하여 관리하기 위한 콘텐트 내비게이션 모델을 생성하는 동작들을 수행할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 메모리(340)에 저장된 복수 개의 콘텐트에 연관되는 복수 개의 키워드를 획득할 수 있다. 상기 복수 개의 키워드는 각 콘텐트의 이름(예: 파일명, 어플리케이션 이름)이나 타입, 관련 정보(예: 카테고리, 메타데이터 또는 태그데이터) 또는 콘텐트에 포함된 내용 중 적어도 하나를 이용하여 획득될 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 메모리(340) 또는 전자 장치(300)에서 액세스 가능한 하나 이상의 데이터베이스로부터 상기 복수 개의 콘텐트에 관한 정보를 확인할 수 있다. 적어도 하나의 프로세서(330)는 상기 확인된 복수 개의 콘텐트에 관한 정보를 기반으로 상기 복수 개의 키워드를 추출할 수 있다. 다른 예를 들어, 적어도 하나의 프로세서(330)는 통신 모듈(340)을 통해 외부 서버로부터 상기 복수 개의 콘텐트에 관한 정보를 획득하거나, 또는 상기 복수 개의 콘텐트에 연관되는 추천 키워드를 획득할 수도 있다. 본 개시의 다양한 실시 예에 따라, 적어도 하나의 프로세서(330)는 새로운 콘텐트가 메모리(340)에 저장됨을 확인함에 응답하여, 또는 일정 시간 주기에 따라 상기 복수 개의 키워드를 확인할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 상기 복수 개의 키워드를 기반으로 상기 복수 개의 콘텐트를 계층적으로 분류하여 하나 이상의 그룹을 생성할 수 있다. 적어도 하나의 프로세서(330)는 계층적 클러스터링(hierarchical clustering) 기법을 이용하여 상기 복수 개의 콘텐트를 계층적 트리 구조의 형태로 분류하고, 상기 분류 결과를 기반으로 하나 이상의 그룹을 생성할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 상기 생성된 하나 이상의 그룹에 대응하는 대표 키워드를 확인할 수 있다. 각 그룹 별 대표 키워드는 상기 분류 결과에 따라 생성된 하나 이상의 그룹 각각에 대응하는 카테고리에 대응될 수 있다. 본 개시의 다양한 실시 예에 따라, 적어도 하나의 프로세서(330)는 상기 하나 이상의 그룹 각각에 포함된 콘텐트들 사이의 평균 유사도, 키워드 타입 또는 검색 이력 중 적어도 하나를 기반으로 각 그룹 별 대표 키워드를 결정할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 각 그룹에 연관되는 콘텐츠 사이의 유사도를 계산하고, 상기 계산된 유사도의 평균 값이 가장 큰 콘텐트의 키워드를 해당 그룹의 대표 키워드로 결정할 수 있다. 상기 콘텐츠 사이의 유사도는 코사인 유사도(cosine similarity), 자카드 계수(jaccard coefficient), 상관 계수(correlation coefficient), 또는 해밍 거리(hamming distance) 중 적어도 하나의 텍스트 기반 유사도 계산 방식을 이용하여 측정될 수 있다. 다른 예를 들어, 적어도 하나의 프로세서(330)는 각 그룹에 포함된 키워드들의 출처 데이터 별 가중치를 설정하고, 상기 설정된 가중치를 기반으로 키워드 점수를 계산할 수 있다. 적어도 하나의 프로세서(330)는 상기 계산된 키워드 점수가 가장 높은 키워드를 상기 대표 키워드로 결정할 수 있다. 또 다른 예를 들어, 적어도 하나의 프로세서(330)는 각 그룹에 포함된 키워드들의 이용 빈도를 확인하여, 상기 이용 빈도가 가장 높은 키워드를 상기 대표 키워드로 결정할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 상기 각 그룹에 대하여 확인된 대표 키워드를, 상기 각 그룹에 연관되는 콘텐트와 조합하여 내비게이션 모델을 생성할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 계층적 클러스터링(hierarchical clustering)을 기반으로 생성된 하나 이상의 그룹에 대응하도록, 상기 복수 개의 콘텐트를 상기 각 그룹 별 대표 키워드와 연관시켜 계층적 트리 구조의 내비게이션 모델을 생성할 수 있다. 상기 내비게이션 모델의 구조에 따라, 각 콘텐트는 하나의 키워드에 특정되지 않고 하나 이상의 카테고리와의 연관관계에 따라 하나 이상의 키워드에 중첩하여 연결될 수 있으며, 이로 인해 사용자가 원하는 콘텐트에 접근할 확률을 높일 수 있다.
본 개시의 다양한 실시 예에 따라, 적어도 하나의 프로세서(330)는 콘텐트 검색 시점의 상황에 따라 맞춤형 검색 결과를 제공하기 위해, 사용자의 프로파일이나 컨텍스트 정보를 기반으로 콘텐트 내비게이션 모델을 실시간 생성하거나 또는 다양한 컨텍스트 별 콘텐트 내비게이션 모델을 미리 생성해둘 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 사용자에 연관되는 컨텍스트 정보를 확인하고, 상기 확인된 컨텍스트 정보에 관련된 적어도 하나의 키워드에 가중치를 설정할 수 있다. 상기 컨텍스트 정보는 위치, 계절, 날짜, 시간 또는 날씨 중 적어도 하나를 포함할 수 있다. 예시적으로, 사용자가 놀이공원에 위치한 동안 특정 콘텐트를 검색하고자 하는 경우, 적어도 하나의 프로세서(330)는 '놀이공원'이라는 컨텍스트를 확인하고, 사용자가 놀이공원 관련 어플리케이션이나 주변 시설 관련 정보에 빠르게 접근할 수 있도록 '놀이공원'이라는 컨텍스트와 관련된 키워드 또는 해당 컨텍스트에서 사용 이력이 있는 콘텐트와 관련된 키워드에 가중치를 설정할 수 있다. 적어도 하나의 프로세서(330)는 상기 설정된 가중치를 기반으로 각 그룹 별 대표 키워드를 결정하고, 상기 결정된 각 그룹 별 대표 키워드를 기반으로 상기 컨텍스트 정보에 대응하는 내비게이션 모델을 생성할 수 있다.
본 개시의 다양한 실시 예에 따라, 적어도 하나의 프로세서(330)는 상기 내비게이션 모델을 기반으로 전자 장치(330)의 홈 화면(또는 바탕 화면)에 폴더를 자동 생성할 수 있다. 예를 들어, 사용자가 원하는 폴더 수를 입력하면, 적어도 하나의 프로세서(330)는 상기 내비게이션 모델로부터 상기 입력된 폴더 수만큼의 그룹을 추출하고, 추출된 그룹 별 대표 키워드를 이용하여 폴더를 생성할 수 있다. 본 개시의 다양한 실시 예에 따라, 적어도 하나의 프로세서(330)는 컨텍스트 별로 생성된 내비게이션 모델을 기반으로 컨텍스트 별 폴더를 생성할 수도 있다. 이러한 경우, 적어도 하나의 프로세서(330)는 사용자의 컨텍스트에 대응하는 폴더 구조를 제공할 수 있으며, 이로 인해 사용자는 보다 빠르게 자신이 원하는 콘텐트를 찾을 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 상기 생성된 내비게이션 모델을 메모리(340) 또는 전자 장치(300)에서 액세스 가능한 데이터베이스에 저장할 수 있다. 본 개시의 다양한 실시 예에 따라, 적어도 하나의 프로세서(330)는 콘텐트 저장 시마다 상기 내비게이션 모델을 업데이트 할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 메모리(340)에 새로운 콘텐트가 저장됨을 확인하면, 상기 새로운 콘텐트에 연관되는 적어도 하나의 키워드를 획득하고, 점진적 클러스터링(incremental clustering) 기법을 활용하여 새로운 콘텐트를 기존의 내비게이션 모델에 적용하는 방식으로, 상기 내비게이션 모델을 업데이트 할 수 있다.
본 개시의 다양한 실시 예에 따라, 적어도 하나의 프로세서(330)는 콘텐트 내비게이션 모델을 기반으로 사용자가 찾고자 하는 콘텐트에 접근할 수 있는 경로를 순차적으로 제공하는 동작들을 수행할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 콘텐트 검색을 위한 하나 이상의 키워드를 디스플레이(310) 상에 표시할 수 있다. 상기 하나 이상의 키워드는 상기 콘텐트 내비게이션 모델에서 최상위 카테고리로 분류된 그룹들의 대표 키워드에 대응될 수 있다. 적어도 하나의 프로세서(330)는 사용자로부터 입력된 지정된 제스처에 응답하여 상기 하나 이상의 키워드를 디스플레이(310) 상에 표시할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 콘텐트 검색 화면을 호출하는 사용자의 터치 입력이나 음성 명령이 입력됨을 확인하면, 상기 하나 이상의 키워드를 디스플레이(310) 상에 표시할 수 있다. 이외에도, 적어도 하나의 프로세서(330)는 콘텐트 검색을 위해 지정된 액션이 수행됨을 확인하면, 디스플레이(310)를 통해 상기 하나 이상의 키워드를 제시할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 디스플레이(310) 상에 표시된 상기 하나 이상의 키워드 중 제1 키워드의 선택을 확인할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 상기 제1 키워드에 대한 사용자의 터치 입력 또는 음성 입력을 기반으로 상기 제1 키워드가 선택됨을 확인할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 디스플레이(310)에 표시할 수 있다. 상기 하나 이상의 제1 카테고리는 상기 제1 키워드의 하위 카테고리 중 적어도 일부에 대응될 수 있으며, 상기 콘텐트 내비게이션 모델에서 상기 제1 키워드의 하위 카테고리로 분류된 각 그룹별 대표 키워드가 상기 하나 이상의 제1 카테고리로서 표시될 수 있다. 상기 하나 이상의 제1 콘텐트는 상기 제1 키워드에 대응하는 그룹에 속하는 콘텐트를 포함할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 상기 하나 이상의 키워드 중 '여행'이라는 키워드에 대한 선택을 확인함에 응답하여, '항공', '지도', '음식' 또는 '숙소'의 카테고리와 '여행'에 연관되는 하나 이상의 콘텐트를 디스플레이(310)를 통해 표시할 수 있다. 본 개시의 다양한 실시 예에 따라, 적어도 하나의 프로세서(330)는 상기 제1 키워드의 선택 입력에 응답하여, 콘텐트 표시 관련 설정 정보를 확인할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 상기 설정 정보를 기반으로 표시 가능 개수를 확인하고, 상기 표시 가능 개수에 따라 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트의 수를 제한할 수 있다. 이러한 경우, 적어도 하나의 프로세서(330)는 상기 제1 키워드와의 유사도, 검색 빈도, 또는 콘텐트 생성 시간 중 적어도 하나의 기준에 따라 상기 표시 가능 개수에 대응하는 수의 제1 카테고리 및 제1 콘텐트를 선택하여 디스플레이(310)에 표시할 수 있다. 상기 표시 가능 개수가 4로 설정된 경우를 가정하면, 적어도 하나의 프로세서(330)는 상기 제1 키워드의 하위 카테고리에 속하는 하나 이상의 제1 카테고리 중 상기 제1 키워드와의 유사도가 높은 상위 4개의 카테고리와, 상기 제1 키워드에 연관된 하나 이상의 제1 콘텐트 중 상기 제1 키워드와의 유사도가 높은 상위 4개의 콘텐트를 표시할 수 있다. 디스플레이(310)에 표시될 카테고리 또는 콘텐트의 선택 기준은 사용자의 콘텐트 사용 패턴에 따라 상이하게 적용될 수 있다. 본 개시의 다양한 실시 예에 따라, 상기 표시 가능 개수는 카테고리와 콘텐트에 대해 상이하게 설정될 수 있다. 예를 들어, 카테고리에 대한 표시 가능 개수가 3으로 설정된 경우, 적어도 하나의 프로세서(330)는 상기 제1 키워드의 하위 카테고리에 속하는 하나 이상의 제1 카테고리 중 검색 빈도가 높은 상위 3개의 카테고리를, 상기 검색 빈도가 높은 순서대로 정렬하여 표시할 수 있다. 다른 예를 들어, 콘텐트에 대한 표시 가능 개수가 5로 설정된 경우, 적어도 하나의 프로세서(330)는 상기 제1 키워드에 연관된 하나 이상의 제1 콘텐트 중 가장 최근에 생성된 5개의 콘텐트를, 콘텐트 생성 시간 순서에 따라 정렬하여 표시할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 상기 하나 이상의 제1 카테고리 또는 상기 하나 이상의 제1 콘텐트에 대한 선택 입력을 확인할 수 있다. 적어도 하나의 프로세서(330)는 사용자의 터치 입력이나 음성 입력, 또는 그 외 지정된 제스처 입력을 기반으로 상기 하나 이상의 제1 카테고리 또는 상기 하나 이상의 제1 콘텐트 중 어느 항목이 선택되었는지 확인할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 상기 하나 이상의 제1 콘텐트 중 하나에 대한 선택 입력을 확인하면, 선택된 콘텐트를 디스플레이(310)를 통해 제공할 수 있다. 적어도 하나의 프로세서(330)는 상기 콘텐트의 선택에 응답하여 상기 콘텐트를 제공하는데 필요한 어플리케이션이나 프로그램을 확인하고, 이를 실행하여 상기 선택된 콘텐트를 제공할 수 있다.
다른 예를 들어, 적어도 하나의 프로세서(330)는 상기 하나 이상의 제1 카테고리 중 하나에 대한 선택 입력을 확인하면, 선택된 카테고리에 연관되는 하위 카테고리 중 하나 이상의 제2 카테고리와 상기 선택된 카테고리에 연관되는 하나 이상의 제2 콘텐트를 디스플레이(310)에 표시할 수 있다. 상기 하나 이상의 제2 카테고리는 상기 제1 카테고리의 하위 카테고리 중 적어도 일부에 대응될 수 있으며, 상기 콘텐트 내비게이션 모델에서 상기 선택된 카테고리의 하위 카테고리로 분류된 각 그룹별 대표 키워드가 상기 하나 이상의 제2 카테고리로서 표시될 수 있다. 상기 하나 이상의 제2 콘텐트는 상기 선택된 카테고리의 그룹에 속하는 콘텐트를 포함할 수 있다. 적어도 하나의 프로세서(330)는 상기 하나 이상의 제1 카테고리 및 상기 하나 이상의 제1 콘텐트 표시 방식과 동일하게 상기 하나 이상의 제2 카테고리와 하나 이상의 제2 콘텐트를 표시할 수 있다. 적어도 하나의 프로세서(330)는 상기 하나 이상의 제1 카테고리 중 하나에 대한 선택을 확인하면, 상기 설정 정보에 따른 표시 가능 개수를 확인하고, 상기 선택된 카테고리의 대표 키워드와의 유사도, 검색 빈도, 또는 콘텐트 생성 시간 중 적어도 하나의 기준에 따라 상기 표시 가능 개수에 대응하는 수의 제2 카테고리 및 제2 콘텐트를 선택 및 정렬하여 디스플레이(310)에 표시할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 상기 하나 이상의 제2 카테고리 또는 상기 하나 이상의 제2 콘텐트에 대한 선택 입력을 확인할 수 있다. 적어도 하나의 프로세서(330)는 사용자의 터치 입력이나 음성 입력, 또는 그 외 지정된 제스처 입력을 기반으로 상기 하나 이상의 제2 카테고리 또는 상기 하나 이상의 제2 콘텐트 중 어느 항목이 선택되었는지 확인할 수 있다. 예를 들어, 상기 하나 이상의 제2 콘텐트 중 하나에 대한 선택 입력이 확인되면, 적어도 하나의 프로세서(330)는 선택된 콘텐트를 디스플레이(310)를 통해 제공할 수 있다. 다른 예를 들어, 상기 하나 이상의 제2 카테고리 중 하나에 대한 선택 입력이 확인되면, 적어도 하나의 프로세서(330)는 선택된 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 디스플레이(310)에 표시할 수 있다. 적어도 하나의 프로세서(330)는 디스플레이(310)에 표시된 어느 하나의 콘텐트에 대한 선택이 입력될 때까지 상기 선택된 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 확인하여 디스플레이(310)에 표시할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서(330)는 콘텐트 검색 시점의 사용자 프로파일이나 컨텍스트 정보를 기반으로 하나 이상의 카테고리와 하나 이상의 콘텐트를 표시할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 상기 제1 키워드의 선택이 입력됨을 확인하면, 상기 선택 입력 시점의 컨텍스트 정보를 확인할 수 있다. 상기 컨텍스트 정보는 위치, 계절, 날짜, 시간 또는 날씨 중 적어도 하나를 포함할 수 있다. 적어도 하나의 프로세서(330)는 상기 확인된 컨텍스트와 관련된 키워드 또는 상기 컨텍스트에서 검색 이력(또는 사용 이력)이 존재하는 콘텐트와 관련된 키워드에 가중치를 설정하고, 상기 설정된 가중치를 기반으로 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 결정함으로써, 상기 컨텍스트와 관련된 카테고리 또는 콘텐트가 다른 항목들보다 먼저 노출되도록 처리할 수 있다.
도 4는 본 개시의 일 실시 예에 따른 전자 장치의 세부 구성을 설명하는 도면이다. 도 4를 참조하여 설명되는 기능이나 동작은 도 3의 전자 장치(300)의 적어도 하나의 프로세서(330)에 의해 수행되는 기능으로 이해될 수 있다. 적어도 하나의 프로세서(330)는 도 4에 도시된 소프트웨어 모듈들을 구현하기 위해 메모리(340)에 저장된 명령어들(예: 인스트럭션들(instructions))을 실행시킬 수 있고, 기능과 연관된 하드웨어(예: 도 3의 디스플레이(310), 통신 모듈(320) 또는 메모리(340))를 제어할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 도 4에 도시된 구성 요소들로 제한되지 않으며, 도 1에 도시된 구성요소들 중 전자 장치(300)에서 요구되는 기능에 대응하는 구성 요소를 추가 포함할 수 있다.
도 4를 참조하면, 전자 장치(300)는 콘텐트 수집 모듈(410), 키워드 수집 모듈(420), 콘텐트 관리 모듈(430), 콘텐트/키워드 데이터베이스(database, DB)(435), 클러스터 분석 모듈(440), 모델 관리 모듈(450), 내비게이션 모델 DB(455) 또는 콘텐트 제공 모듈(460))를 포함할 수 있다.
본 개시의 일 실시 예에서, 콘텐트 수집 모듈(410)은 전자 장치(300)의 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(340))에 저장된 복수 개의 콘텐트에 관련된 정보를 수집할 수 있다. 상기 복수 개의 콘텐트는 메모리(340)에 저장된 모든 오브젝트에 대응될 수 있으며, 전자 장치(300)에서 관리되는 타인의 연락처 정보, 다른 사용자와 주고받은 메시지나 이메일, 이미지, 동영상, 어플리케이션 또는 문서 파일과 같은 다양한 종류의 콘텐트를 포함할 수 있다. 예를 들어, 콘텐트 수집 모듈(410)은 상기 복수 개의 콘텐트로부터 콘텐트 관련 정보를 확인할 수 있다. 상기 콘텐트 관련 정보는 콘텐트의 이름(예: 파일명, 어플리케이션 이름)이나 타입, 관련 카테고리, 메타 정보 또는 태그 정보 중 적어도 하나를 포함할 수 있다. 다른 예를 들어, 콘텐트 수집 모듈(410)은 전자 장치(300)의 통신 모듈(예: 도 1의 통신 모듈(190) 또는 도 3의 통신 모듈(320))을 이용하여 외부 전자 장치(예: 도 1의 전자 장치(102, 104)) 또는 외부 서버(예: 도 1의 서버(108))로부터 상기 콘텐트 관련 정보를 획득할 수도 있다. 본 개시의 다양한 실시 예에 따라, 콘텐트 수집 모듈(410)은 새로운 콘텐트가 저장되거나 일정 시간 주기에 따라 상기 콘텐트 관련 정보를 획득할 수 있다.
본 개시의 일 실시 예에서, 키워드 수집 모듈(420)은 상기 복수 개의 콘텐트에 연관되는 키워드들을 수집할 수 있다. 예를 들어, 키워드 수집 모듈(420)은 콘텐트 수집 모듈(410)로부터 상기 복수 개의 콘텐트에 관한 콘텐트 관련 정보를 획득하고, 상기 콘텐트 관련 정보로부터 복수 개의 키워드를 추출할 수 있다. 상기 복수 개의 키워드는 상기 콘텐트 관련 정보 외에도, 이전 검색 과정에서 사용된 키워드들이나 콘텐트를 설명하는 키워드 또는 콘텐트에 포함된 내용 중 적어도 하나로부터 획득될 수 있다. 키워드 수집 모듈(420)은 콘텐트의 타입에 따라 상이한 방식으로 키워드를 수집할 수 있다. 연락처 정보나 메시지, 어플리케이션, 또는 문서 파일과 같이 자체적으로 텍스트를 포함하는 콘텐트의 경우, 콘텐트의 이름(제목)이나 설명 내용으로부터 키워드가 수집될 수 있다. 이미지나 동영상과 같이 자체적으로 텍스트를 포함하지 않는 콘텐트의 경우, 콘텐트의 메타데이터나 태그 데이터에 대한 추가 분석을 통해 키워드가 수집될 수 있다. 다른 예를 들어, 키워드 수집 모듈(420)은 통신 모듈(320)을 이용하여 상기 외부 전자 장치 또는 상기 외부 서버로부터 상기 복수 개의 콘텐트에 연관되는 추천 키워드를 획득할 수도 있다. 본 개시의 다양한 실시 예에 따라, 키워드 수집 모듈(420)은 새로운 콘텐트가 저장되거나 일정 시간 주기에 따라 상기 키워드들을 획득할 수 있다.
본 개시의 일 실시 예에서, 콘텐트 관리 모듈(430)은 상기 수집된 키워드들을 복수 개의 콘텐트와 연관시켜 관리할 수 있다. 콘텐트 관리 모듈(430)은 상기 수집된 키워드들과, 상기 키워드들 각각에 연관되는 콘텐트들을 결합하여 콘텐트/키워드 DB(435)에 저장할 수 있다. 본 개시의 다양한 실시 예에 따라, 콘텐트 관리 모듈(430)은 관계형 데이터베이스나 온톨로지(ontology)를 활용하여 키워드 범위를 확장하고, 연관성이 있는 키워드들과 콘텐츠(contents)를 저장 및 관리할 수 있다.
본 개시의 일 실시 예에서, 클러스터 분석 모듈(440)은 콘텐트/키워드 DB(435)에 저장된 키워드들을 이용하여 상기 콘텐트들에 대한 계층적 클러스터링(hierarchical clustering)을 수행하여, 계층적 트리 구조의 클러스터 모델을 생성할 수 있다. 본 개시의 다양한 실시 예에 따라, 클러스터 분석 모듈(440)은 콘텐트/키워드 DB(435)에 저장된 복수 개의 콘텐트를 계층적으로 분류하여 그룹화 할 수 있다. 클러스터 분석 모듈(440)은 상기 계층적 분류 결과에 대응하는 하나 이상의 그룹을 생성할 수 있다. 본 개시의 다양한 실시 예에 따라, 클러스터 분석 모듈(440)은 새로운 콘텐트 저장 시 마다 또는 지정된 시간 주기에 따라 새로운 콘텐트에 대한 클러스터링을 수행할 수 있다. 이 경우, 클러스터 분석 모듈(440)은 점진적 클러스터링(incremental clustering) 기법을 이용하여 새로운 콘텐트들에 대한 클러스터링을 수행하고, 상기 수행 결과를 기존 클러스터 모델에 적용하여 업데이트 할 수 있다.
본 개시의 일 실시 예에서, 모델 관리 모듈(450)은 상기 생성된 하나 이상의 그룹 각각에 대응하는 대표 키워드를 결정할 수 있다. 모델 관리 모듈(450)은 각 그룹에 연관되는 콘텐츠 사이의 평균 유사도, 키워드 타입 또는 검색 이력 중 적어도 하나를 기반으로 각 그룹 별 대표 키워드를 결정할 수 있다. 예를 들어, 모델 관리 모듈(450)은 각 그룹에 포함되는 콘텐츠 사이의 유사도를 계산하고, 상기 계산된 유사도의 평균 값이 가장 큰 콘텐트의 키워드를 해당 그룹의 대표 키워드로 결정할 수 있다. 모델 관리 모듈(450)은 상기 콘텐츠 사이의 유사도는 아래 수학식 1과 같은 코사인 유사도(cosine similarity)를 이용하여 계산될 수 있다.
Figure PCTKR2022015739-appb-img-000001
수학식 1에서, a와 b는 각각의 콘텐트를 나타내고, S(a,b)는 콘텐트 a와 콘텐트 b 사이의 유사도를 의미한다. ai는 콘텐트 a와 관련된 i번째 키워드를 나타내고, bi는 콘텐트 b와 관련된 i번째 키워드를 나타낼 수 있다. 모델 관리 모듈(450)은 코사인 유사도 외에도, 자카드 계수(jaccard coefficient), 상관 계수(correlation coefficient), 또는 해밍 거리(hamming distance)와 같은 텍스트 기반 유사도 계산 방식을 이용하여 그룹 별 콘텐츠 사이의 유사도를 계산할 수 있다.
다른 예를 들어, 모델 관리 모듈(450)은 각 그룹에 포함된 콘텐트들의 키워드에 대한 출처 데이터 별 가중치를 설정하여 키워드 점수를 계산하고, 상기 계산된 키워드 점수가 가장 높은 키워드를 상기 대표 키워드로 결정할 수 있다. 또 다른 예를 들어, 모델 관리 모듈(450)는 각 그룹에 포함된 콘텐트들의 이용 빈도를 확인하여, 상기 이용 빈도가 가장 높은 콘텐트에 연관된 키워드를 상기 대표 키워드로 결정할 수 있다.
본 개시의 일 실시 예에서, 모델 관리 모듈(450)은 상기 각 그룹에 대하여 결정된 대표 키워드를, 상기 각 그룹에 포함된 콘텐트와 조합하여 내비게이션 모델을 생성할 수 있다. 모델 관리 모듈(450)은, 클러스터 분석 모듈(440)에서 생성된 클러스터 모델을 기반으로 계층적으로 분류된 하나 이상의 그룹 각각의 대표 키워드를, 각 그룹에 속하는 콘텐츠와 연관시켜 계층적 트리 구조의 내비게이션 모델을 생성할 수 있다. 모델 관리 모듈(450)은 상기 생성된 내비게이션 모델을 내비게이션 모델 DB(455)에 저장하여 관리할 수 있다.
본 개시의 일 실시 예에서, 콘텐트 제공 모듈(460)은 내비게이션 모델 DB(455)에 저장된 내비게이션 모델을 기반으로 사용자가 찾고자 하는 콘텐트에 접근하는 프로세스를 제공할 수 있다. 콘텐트 제공 모듈(460)은 사용자가 원하는 콘텐트를 쉽고 빠르게 찾을 수 있도록, 적절한 카테고리들과 콘텐트를 단계적으로 제시할 수 있다. 예를 들어, 콘텐트 제공 모듈(460)은 콘텐트 검색 화면을 호출하는 사용자의 터치 입력이나 음성 명령, 또는 지정된 제스처 입력에 응답하여 콘텐트 검색 화면을 디스플레이(예: 도 1의 디스플레이 모듈(160) 또는 도 3의 디스플레이(310)) 상에 출력할 수 있다. 상기 콘텐트 검색 화면은 초기 상태에서, 하나 이상의 키워드를 포함할 수 있다. 상기 하나 이상의 키워드는 상기 내비게이션 모델에서 최상위 카테고리로 분류된 그룹들의 대표 키워드에 대응될 수 있다. 콘텐트 제공 모듈(460)은 상기 하나 이상의 키워드 중 제1 키워드가 선택됨을 확인하면, 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 상기 콘텐트 검색 화면에 표시할 수 있다. 상기 하나 이상의 제1 카테고리는 상기 제1 키워드의 하위 카테고리 중 적어도 일부를 포함할 수 있으며, 상기 내비게이션 모델에서 상기 제1 키워드의 하위 카테고리로 분류된 각 그룹의 대표 키워드가 제1 카테고리로 표시될 수 있다. 상기 하나 이상의 제1 콘텐트는 상기 제1 키워드의 그룹에 속하는 콘텐트일 수 있다. 본 개시의 다양한 실시 예에 따라, 콘텐트 제공 모듈(460)은 설정 정보를 기반으로 한번에 노출되는 카테고리 및 콘텐트의 수를 제한할 수 있다. 이러한 경우, 콘텐트 제공 모듈(460)은 상기 설정 정보에 따라 지정된 개수의 제1 카테고리와 지정된 개수의 제1 콘텐트를 선택하여 상기 콘텐트 검색 화면에 표시할 수 있다. 예를 들어, 콘텐트 제공 모듈(460)은 상기 제1 키워드의 하위 카테고리에 속하는 하나 이상의 제1 카테고리 중 상기 제1 키워드와의 유사도가 높은 순서대로 지정된 개수의 제1 카테고리들을 선택하고, 상기 유사도를 기준으로 상기 선택된 제1 카테고리들을 정렬하여 표시할 수 있다. 마찬가지로, 콘텐트 제공 모듈(460)은 상기 제1 키워드에 연관된 하나 이상의 제1 콘텐트 중 상기 제1 키워드와의 유사도가 높은 순서대로 지정된 개수의 제1 콘텐츠를 선택하고, 상기 유사도를 기준으로 상기 선택된 콘텐츠를 정렬하여 상기 선택된 카테고리들과 함께 표시할 수 있다. 다른 예를 들어, 콘텐트 제공 모듈(460)은 검색 빈도나 콘텐트 생성 시간을 기반으로 상기 지정된 개수의 제1 카테고리와 제1 콘텐트를 선택 및 정렬하여 표시할 수도 있다. 상기 지정된 개수는 카테고리와 콘텐트에 대해 동일하게 또는 상이하게 설정될 수 있다. 상기 제1 카테고리 및/또는 상기 제1 콘텐트를 선택하는 기준은 사용자의 콘텐트 사용 패턴에 따라 상이하게 적용될 수 있다.
본 개시의 일 실시 예에서, 콘텐트 제공 모듈(460)은 상기 콘텐트 검색 화면에서 어느 하나의 콘텐트에 대한 선택이 입력될 때까지, 사용자가 선택한 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 반복 제공할 수 있다. 예를 들어, 콘텐트 제공 모듈(460)은 상기 콘텐트 검색 화면에 표시된 하나 이상의 카테고리 중 하나에 대한 선택 입력을 확인하면, 상기 선택된 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 상기 콘텐트 검색 화면에 표시할 수 있다. 다른 예를 들어, 콘텐트 제공 모듈(460)은 상기 콘텐트 검색 화면에 표시된 하나 이상의 콘텐트 중 하나에 대한 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하고, 콘텐트 검색 프로세스를 종료할 수 있다.
도 5는 본 개시의 일 실시 예에 따라 생성된 콘텐트 내비게이션 모델을 설명하는 도면이다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(340))에 저장된 복수 개의 콘텐트를, 관련 키워드에 기반하여 계층적으로 분류하여 도 5와 같은 계층적 트리 구조의 콘텐트 내비게이션 모델(500)을 생성할 수 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 상기 복수 개의 콘텐트에 연관되는 복수 개의 키워드를 획득하고, 상기 획득된 복수 개의 키워드를 이용하여 상기 복수 개의 콘텐트에 대한 계층적 클러스터링(hierarchical clustering)을 수행할 수 있다. 전자 장치(300)는 상기 복수 개의 콘텐트를 계층적으로 분류하여 그룹화할 수 있다. 전자 장치(300)는 각 그룹 별 대표 키워드를, 각 그룹에 연관되는 콘텐트와 조합하여 콘텐트 내비게이션 모델(500)을 생성할 수 있다.
도 5을 참조하면, 콘텐트 내비게이션 모델(500)은 복수 개의 계층으로 분류된 그룹들과, 각 그룹에 대응하는 콘텐츠(contents)로 구성될 수 있다. 상기 복수 개의 콘텐트에 대한 계층적 클러스터링 수행 결과, 최상위 카테고리(510)에 대응하는 그룹들과 이들 그룹들로부터 분류된 하위 카테고리(520)에 대응하는 그룹들로 구분될 수 있다. 예를 들어, 전자 장치(300)는 '결제', '여행', '돈' 및 '교육'을 포함하는 4개의 그룹들을 최상위 카테고리(510)로 분류하고, 콘텐트 검색 프로세스가 개시되면 최상위 카테고리(510)에 대응하는 4개의 그룹들 각각의 대표 키워드를 초기 화면에 표시할 수 있다. 최상위 카테고리(510)로 분류된 그룹들 각각은 하나 이상의 하위 카테고리(520)를 포함할 수 있다. 도 5에서 하위 카테고리(520)는 하나 이상의 그룹들이 하나의 계층을 이루는 것으로 도시되어 있으나, 다양한 실시 예에 따라 하위 카테고리(520)는 복수 개의 계층으로 분류된 그룹들로 구성될 수 있다. 전자 장치(300)는 콘텐트 검색 프로세스가 진행되는 동안 상기 하위 카테고리(520)의 계층 구조에 따라, 사용자가 선택한 키워드에 연관되는 하나 이상의 하위 카테고리를 단계적으로 제시할 수 있다. 예시적으로, 콘텐트 검색 화면에 표시된 4개의 키워드 중 '교육'이 선택된 경우, 전자 장치(300)는 교육의 하위 카테고리에 속하는 그룹들의 대표 키워드로서 '영어', '강의', '도서관' 또는 '습관'을 표시할 수 있다. 이후, '교육'의 하위 카테고리 중 '영어'가 선택되면, 전자 장치(300)는 '영어'에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 표시할 수 있다.
본 개시의 일 실시 예에서, 콘텐트 내비게이션 모델(500)은 복수 개의 계층으로 분류된 카테고리들의 각 그룹에 대응하는 콘텐트(530)를 포함할 수 있다. 전자 장치(300)는 상기 복수 개의 콘텐트를 각 그룹 별 대표 키워드와 연관시켜 콘텐트 내비게이션 모델(500)에 저장할 수 있다. 본 개시의 다양한 실시 예에 따라, 각 콘텐트는 하나의 카테고리(또는 키워드)에 종속되지 않고, 하나 이상의 카테고리의 연관관계에 따라 하나 이상의 카테고리(또는 키워드)에 중첩하여 연결될 수 있다. 전자 장치(300)는 콘텐트 검색 프로세스가 진행되는 동안, 사용자가 선택한 카테고리에 연관되는 하나 이상의 콘텐트를, 하나 이상의 하위 카테고리와 함께 표시할 수 있다.
도 6은 본 개시의 일 실시 예에 따라, 전자 장치에서 콘텐트를 단계적으로 검색하는 방식에 대해 설명하는 도면이다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 사용자의 터치 입력이나 음성 명령, 또는 지정된 제스처 입력에 응답하여 콘텐트 검색 프로세스를 개시하여, 콘텐트 검색 화면(600)을 디스플레이(예: 도 1의 디스플레이 모듈(160) 또는 도 3의 디스플레이(310)) 상에 표시할 수 있다.
도 6을 참조하면, 전자 장치(300)는 초기 상태에서 하나 이상의 키워드(610)를 콘텐트 검색 화면(600)을 통해 제시할 수 있다. 상기 하나 이상의 키워드(610)는 콘텐트 내비게이션 모델(예: 도 5의 콘텐트 내비게이션 모델(500))에서 최상위 카테고리로 분류된 그룹들의 대표 키워드에 대응될 수 있다. 예시적으로, 전자 장치(300)는 최상위 카테고리로 분류된 '결제', '여행', '돈' 및 '교육'을 포함하는 4개의 키워드를 콘텐트 검색 화면(600)에 표시할 수 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 콘텐트 검색 화면(600)을 통해 제시된 상기 하나 이상의 키워드(610) 중 '돈'이 선택됨을 확인하고, 콘텐트 내비게이션 모델로부터 '돈'의 카테고리 그룹에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 확인할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 특정 키워드의 선택에 응답하여 콘텐트 검색 화면(600)에 표시되는 하위 카테고리 및 콘텐트의 수를 제한할 수 있다. 예를 들어, 전자 장치(300)는 사용자에 의해 설정된 표시 가능 개수를 기반으로 상기 확인된 하나 이상의 하위 카테고리와 하나 이상의 콘텐트 중 지정된 개수의 카테고리 및/또는 콘텐트를 선택하여 표시할 수 있다. 전자 장치(300)는 상기 선택된 키워드와의 유사도, 검색 빈도 또는 콘텐트 생성 시간 중 적어도 하나의 기준에 따라 지정된 개수의 카테고리 및/또는 콘텐트를 선택할 수 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 '돈'이라는 키워드 선택에 응답하여, '돈'에 연관되는 하나 이상의 하위 카테고리(620)와 하나 이상의 콘텐트(615)를 콘텐트 검색 화면(600) 내에 표시할 수 있다. 예를 들어, 전자 장치(300)는 '돈'의 하위 카테고리로서 '주식', '은행', '세금' 또는 '가계부'를 표시하고, '돈'에 연관되는 콘텐트로서 A투자, A은행, A증권, A가계부, B은행, 또는 B증권을 표시할 수 있다. 이 때, 하나 이상의 카테고리(620)는 '돈'의 하위 카테고리로 분류된 그룹들의 대표 키워드에 대응될 수 있다. 상기 하나 이상의 콘텐트(615)는 전자 장치(300)에서 관리되는 타인의 연락처 정보, 다른 사용자와 주고받은 메시지나 이메일, 이미지, 동영상, 어플리케이션 또는 문서 파일과 같은 다양한 종류의 콘텐트를 포함할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 해당 카테고리와의 유사도가 높은 순서에 따라 상기 하나 이상의 콘텐트를 정렬하여 콘텐트 검색 화면(600)에 표시할 수 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 콘텐트 검색 화면(600)을 통해 제시된 상기 하나 이상의 하위 카테고리(620) 중 '세금'이 선택됨을 확인하고, 콘텐트 내비게이션 모델로부터 '세금'의 그룹에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 확인할 수 있다. 상기 확인 결과 '세금'에 연관되는 하위 카테고리가 없으면, 전자 장치(300)는 하위 카테고리는 표시하지 않고, '세금'에 연관되는 하나 이상의 콘텐트(625)만 콘텐트 검색 화면(600)에 표시할 수 있다. 예시적으로, 전자 장치(300)는 '세금'이라는 카테고리 선택에 응답하여, '세금'에 연관되는 콘텐트로서 A세금, 또는 B세금을 표시할 수 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 콘텐트 검색 화면(600)을 통해 상기 하나 이상의 콘텐트(625) 중 A세금이 선택됨을 확인하면, 선택된 A세금의 콘텐트를 제공할 수 있다. 상기 선택된 콘텐트가 어플리케이션인 경우, 전자 장치(300)는 해당 어플리케이션의 실행화면을 디스플레이를 통해 제공할 수 있다. 상기 선택된 콘텐트가 어플리케이션이 아닌 다른 종류의 콘텐트인 경우, 전자 장치(300)는 해당 콘텐트를 제공하는 데 필요한 어플리케이션이나 프로그램을 확인하고, 이를 실행하여 상기 선택된 콘텐트를 제공할 수 있다.
도 7은 본 개시의 일 실시 예에 따른, 외부 서버와 연동하여 콘텐트 내비게이션 모델을 제공하는 구성을 설명하는 도면이다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 보다 다양한 정보 수집 및 효율적 관리를 위해, 외부 서버(예: 도 1의 서버(108))와의 통신을 기반으로 콘텐트 내비게이션 모델 관련 데이터를 송수신할 수 있다. 도 7에서, 전자 장치(300)는 도 3 내지 도 4에 도시된 전자 장치(300)에 대응될 수 있으며, 도 4의 전자 장치(300)에 포함된 구성 모듈들(예: 콘텐트 수집 모듈(410), 키워드 수집 모듈(420), 콘텐트 관리 모듈(430), 콘텐트/키워드 DB(435), 클러스터 분석 모듈(440), 모델 관리 모듈(450), 내비게이션 모델 DB(455) 또는 콘텐트 제공 모듈(460))에 관한 설명이 도 7의 전자 장치(300)에 동일하게 적용될 수 있다. 전자 장치(300)는 도 4에 도시된 구성 모듈들 외에, 서버(700)와의 통신 연결을 위한 통신 모듈(320)을 더 포함할 수 있다. 통신 모듈(320)은 도 1의 통신 모듈(190) 또는 도 3의 통신 모듈(320)에 대응될 수 있다. 예시적으로, 통신 모듈(320)은 서버(700)와 통신 연결을 설정하여 다양한 종류의 콘텐트와 그에 관련된 키워드, 또는 콘텐트 내비게이션 모델의 초기 데이터를 서버(700)로부터 획득하거나, 또는 전자 장치(300)에서 생성된 콘텐트 내비게이션 모델 관련 데이터를 서버(700)로 전송할 수 있다.
도 7을 참조하면, 서버(700)는 콘텐츠 추천모델 생성 모듈(710), 콘텐츠 추천모델 관리 모듈(720), 콘텐트 관리 모듈(730), 콘텐트/키워드 DB(735), 클러스터 분석 모듈(740), 모델 관리 모듈(750), 글로벌 모델 DB(755) 또는 통신 모듈(760)을 포함할 수 있다. 본 개시의 다양한 실시 예에 따라, 서버(700)는 도 7에 도시된 구성 요소들로 제한되지 않으며, 도 1에 도시된 구성 요소들 중 서버(700)에서 요구되는 기능에 대응하는 구성 요소를 추가 포함할 수 있다.
본 개시의 일 실시 예에서, 콘텐츠 추천모델 생성 모듈(710)은 개인이 사용하는 전자 장치(300)에 저장된 콘텐트와 관련 키워드 외에, 많은 사용자들이 사용하는 콘텐트를 추천하기 위한 구성으로, 서버(700)와 연결된 하나 이상의 전자 장치(300)로부터 획득한 콘텐트 및/또는 관련 키워드 정보를 기반으로 콘텐츠 추천모델을 생성할 수 있다.
본 개시의 일 실시 예에서, 콘텐츠 추천모델 관리 모듈(720)은 상기 생성된 콘텐츠 추천모델을 관리할 수 있다. 예를 들어, 콘텐츠 추천모델 관리 모듈(720)은 새로운 데이터의 유입을 확인하거나 또는 지정된 시간 주기마다 상기 콘텐츠 추천 모델을 업데이트 하고, 전자 장치(300)에 저장되지 않은 콘텐트를 적절하게 추천하도록 할 수 있다.
본 개시의 일 실시 예에서, 콘텐트 관리 모듈(730)은 상기 콘텐츠 추천 모델에 포함된 각각의 콘텐트를 하나 이상의 관련 키워드와 연관시켜 관리할 수 있다. 콘텐트 관리 모듈(730)은 각 콘텐트에 연관되는 하나 이상의 키워드를 확인하고, 상기 하나 이상의 키워드를 각 콘텐트와 결합하여 콘텐트/키워드 DB(735)에 저장할 수 있다. 본 개시의 다양한 실시 예에 따라, 콘텐트 관리 모듈(730)은 관계형 데이터베이스나 온톨로지(ontology)를 활용하여 키워드 범위를 확장하고, 연관성이 있는 키워드들과 콘텐츠(contents)를 저장 및 관리할 수 있다.
본 개시의 일 실시 예에서, 클러스터 분석 모듈(740)은 콘텐트/키워드 DB(735)에 저장된 콘텐트들에 대한 계층적 클러스터링(hierarchical clustering)을 수행하여, 계층적 트리 구조의 클러스터 모델을 생성할 수 있다. 본 개시의 다양한 실시 예에 따라, 클러스터 분석 모듈(740)은 상기 키워드들을 이용하여 콘텐트/키워드 DB(735)에 저장된 콘텐트들을 계층적으로 분류하여 그룹화할 수 있다.
본 개시의 일 실시 예에서, 모델 관리 모듈(750)은 클러스터링 수행 결과를 기반으로 계층적으로 분류된 그룹 별 키워드들과, 각 그룹에 속하는 콘텐트들을 조합하여 글로벌 모델을 생성할 수 있다. 상기 글로벌 모델은 특정 사용자에 대해 개인화된 콘텐트 내비게이션 모델과 달리, 일반적으로 많이 이용되는 콘텐트(또는 키워드)에 기반한 통합 모델로 이해될 수 있다. 모델 관리 모듈(750)은 상기 생성된 글로벌 모델을 글로벌 모델 DB(755)에 저장하여 관리할 수 있다. 본 개시의 다양한 실시 예에 따라, 모델 관리 모듈(750)은 여러 사용자들의 전자 장치(300)에서 생성된 콘텐트 내비게이션 모델들을 통합하여 상기 글로벌 모델을 생성 및 관리할 수 있고, 서버(700)에서 생성된 글로벌 모델을 각 전자 장치(300)에 제공할 수도 있다.
본 개시의 일 실시 예에서, 통신 모듈(760)은 하나 이상의 전자 장치(300)와 통신 연결을 설정하여, 추천 콘텐트와 관련 키워드, 또는 콘텐트 내비게이션 모델의 초기 데이터를 전자 장치(300)로 전송하거나, 또는 전자 장치(300)에서 생성된 콘텐트 내비게이션 모델 관련 데이터를 전자 장치(300)로부터 수신할 수 있다. 본 개시의 다양한 실시 예에 따라, 통신 모듈(760)은 전자 장치(300)에 저장된 콘텐트 내비게이션 모델에 대한 피드백 정보를 주고받을 수 있다.
본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 서버(700)로부터 획득한 글로벌 모델을 기반으로 개인화된 콘텐트 내비게이션 모델을 생성할 수 있다. 예를 들어, 전자 장치(300)는 제품을 막 구매하였거나 전자 장치(300)의 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(340))를 리셋한 경우와 같이 데이터가 부족한 초기 상태에서, 서버(700)로부터 획득한 글로벌 모델을 기반으로 콘텐트 검색 기능을 제공할 수 있으며, 이후 상기 글로벌 모델에 전자 장치(300)의 콘텐트(또는 키워드)에 대한 분석 데이터를 적용하는 방식으로 개인화된 콘텐트 내비게이션 모델을 생성할 수 있다. 다른 예를 들어, 전자 장치(300)는 서버(700)로부터 글로벌 모델 생성에 이용된 데이터를 획득할 수 있다. 예시적으로, 전자 장치(300)는 콘텐츠(또는 키워드들) 사이의 유사도와 같이 계산이 요구되는 데이터를 서버(700)로부터 획득하여 콘텐트 내비게이션 모델 생성 시 활용함으로써, 콘텐트 내비게이션 모델 생성 과정에서 발생할 수 있는 복잡한 연산에 대한 부담을 감소시킬 수 있다. 전자 장치(300)는 생성된 지 얼마 되지 않은 콘텐트나 사용량이 거의 없는 콘텐트에 대한 연산 데이터, 또는 콘텐트 검색 과정에서 사용자가 선택한 카테고리(또는 키워드)에 연관된 (전자 장치(300)에 저장되지 않은)다른 콘텐트에 관한 정보를 서버(700)로부터 획득하여 콘텐트 내비게이션 모델의 생성 및 관리에 활용할 수도 있다.
도 8은 본 개시의 일 실시 예에 따라, 콘텐트 내비게이션 모델을 컨텍스트 별로 상이하게 생성하는 방식을 설명하는 도면이다.
도 8을 참조하면, 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 콘텐트 검색 시점의 상황에 따라 맞춤형 검색 결과를 제공하기 위해, 다양한 컨텍스트 별로 상이한 콘텐트 내비게이션 모델을 생성할 수 있다. 예시적으로, 상기 컨텍스트는 위치, 계절, 날짜, 시간 또는 날씨 중 적어도 하나를 포함할 수 있으며, 여러 개의 컨텍스트가 결합하여 하나의 컨텍스트로 고려될 수도 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 특정 컨텍스트에 관련된 적어도 하나의 키워드 또는 상기 특정 컨텍스트에서의 검색 이력(또는 사용 이력)이 존재하는 콘텐트와 관련된 키워드에 가중치를 설정하여, 컨텍스트 1에 상응하는 콘텐트 내비게이션 모델(810)을 생성할 수 있다. 전자 장치(300)는 컨텍스트 1에서 사용된 콘텐트의 검색 빈도를 기반으로 컨텍스트 1에 관련된 키워드에 가중치를 부여할 수 있다. 예를 들어, 전자 장치(300)는 '월급날'이라는 컨텍스트를 확인하면, 해당 컨텍스트에서의 검색 이력(또는 사용 이력)을 기반으로 '송금', '생활비', '은행', '대출' 또는 '상환'과 같은 관련 키워드에 가중치를 설정함으로써, 상기 키워드들과 주로 관련된 콘텐츠 사이의 유사도(또는 연관도)를 높일 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 TF-IDF(term frequency - inverse document frequency)와 같은 가중치 적용 방식을 활용하여 특정 컨텍스트에 대한 콘텐트 내비게이션 모델(810)을 생성할 수도 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 특정 컨텍스트에 대한 콘텐츠 내비게이션 모델 생성 과정에서 아래 수학식 2와 같은 코사인 유사도(cosine similarity)를 이용하여 콘텐츠 사이의 유사도를 계산할 수 있다.
Figure PCTKR2022015739-appb-img-000002
수학식 2에서, a와 b는 각각의 콘텐트를 나타내고, S(a,b)는 콘텐트 a와 콘텐트 b 사이의 유사도를 의미한다. ai는 콘텐트 a와 관련된 i번째 키워드를 나타내고, bi는 콘텐트 b와 관련된 i번째 키워드를 나타내며, w는 각 키워드에 대해 설정되는 가중치를 나타낼 수 있다. 전자 장치(300)는 상기 특정 컨텍스트와의 관련도가 높은 키워드에 대해 상대적으로 높은 w의 값을 적용할 수 있으며, 수학식 2에 적용되는 모든 w 값의 총 합은 1을 초과할 수 없다. 이외에도, 전자 장치(300)는 자카드 계수(jaccard coefficient), 상관 계수(correlation coefficient), 또는 해밍 거리(hamming distance)와 같은 텍스트 기반 유사도 계산 방식을 이용하여 콘텐츠 사이의 유사도를 계산할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 상기 계산된 유사도를 기반으로 해당 컨텍스트에 대하여 분류된 각 카테고리 그룹 별 대표 키워드를 결정할 수 있으며, 이로 인해 해당 컨텍스트와 연관도가 높은 키워드가 대표 키워드로 결정될 수 있다.
본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 컨텍스트 1과 동일한 방식으로, 컨텍스트 2, 3, 4 각각에 상응하는 콘텐트 내비게이션 모델들(820, 830, 840)을 생성하여 관리할 수 있다. 도 8에서는, 상이한 컨텍스트 별 콘텐트 내비게이션 모델들(810, 820, 830, 840)이 한 방향 축에 따라 1차원으로 구성되는 것으로 도시되어 있으나, 다양한 실시 예에 따라 전자 장치(300)는 다차원 공간 상의 각 셀마다 컨텍스트 별 콘텐트 내비게이션 모델을 생성하도록 확장 구현할 수 있다.
도 9는 본 개시의 일 실시 예에 따라, 전자 장치에서 카테고리 선택을 기반으로 콘텐트를 검색하는 과정을 설명하는 도면이다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 사용자의 터치 입력이나 음성 명령, 또는 지정된 제스처 입력에 응답하여 콘텐트 검색 프로세스를 개시하여, 콘텐트 검색 화면(900)을 디스플레이(예: 도 1의 디스플레이 모듈(160) 또는 도 3의 디스플레이(310)) 상에 표시할 수 있다.
도 9를 참조하면, 전자 장치(300)는 초기 상태에서 하나 이상의 키워드(910)를 콘텐트 검색 화면(900)을 통해 제시할 수 있다. 상기 하나 이상의 키워드(910)는 콘텐트 내비게이션 모델(예: 도 5의 콘텐트 내비게이션 모델(500) 또는 도 8의 콘텐트 내비게이션 모델(810))에서 최상위 카테고리로 분류된 그룹들의 대표 키워드에 대응될 수 있다. 예시적으로, 전자 장치(300)는 최상위 카테고리로 분류된 4개 그룹의 대표 키워드 '결제', '여행', '돈' 및 '교육'을 콘텐트 검색 화면(900)에 표시할 수 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 콘텐트 검색 화면(900)을 통해 제시된 상기 하나 이상의 키워드(910) 중 '교육'이 선택됨을 확인하고, 콘텐트 내비게이션 모델로부터 '교육' 그룹에 연관되는 하나 이상의 하위 카테고리(920)와 하나 이상의 콘텐트(915, 917, 919)를 확인할 수 있다. 상기 하나 이상의 하위 카테고리(920)는 '교육'의 하위 카테고리로 분류된 그룹들 중 적어도 일부 그룹의 대표 키워드에 대응될 수 있다. 예를 들어, 전자 장치(300)는 '교육'의 하위 카테고리로서 '학교', '학원' 또는 '학습'을 표시하고, '교육'에 연관되는 콘텐트로서 하나 이상의 어플리케이션(915), 하나 이상의 연락처 정보(917), 또는 하나 이상의 문서 파일(919)을 콘텐트 검색 화면(900)에 표시할 수 있다. 이 때, 전자 장치(300)는 하나 이상의 콘텐트(915, 917, 919)를 콘텐트 타입별로 구분하여 표시할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 해당 카테고리와의 유사도가 높은 순서에 따라 상기 하나 이상의 콘텐트를 정렬하여 콘텐트 검색 화면(900)에 표시할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 콘텐트 검색 화면(900)에 표시되는 하위 카테고리 및 콘텐트의 수를 제한할 수 있다. 예를 들어, 전자 장치(300)는 사용자에 의해 설정된 표시 가능 개수를 기반으로 상기 확인된 하나 이상의 하위 카테고리와 하나 이상의 콘텐트 중 지정된 개수의 카테고리 및/또는 콘텐트를 선택하여 표시할 수 있다. 전자 장치(300)는 상기 선택된 키워드와의 유사도, 검색 빈도 또는 콘텐트 생성 시간 중 적어도 하나의 기준에 따라 지정된 개수의 카테고리 및/또는 콘텐트를 선택할 수 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 콘텐트 검색 화면(900)을 통해 제시된 하나 이상의 하위 카테고리(920) 중 '학교'가 선택됨을 확인하고, 콘텐트 내비게이션 모델로부터 '학교'의 그룹에 연관되는 하나 이상의 하위 카테고리(930)와 하나 이상의 콘텐트(925, 927, 929)를 확인할 수 있다. 상기 하나 이상의 하위 카테고리(930)는 '학교'의 하위 카테고리로 분류된 그룹들 중 적어도 일부 그룹의 대표 키워드에 대응될 수 있다. 예를 들어, 전자 장치(300)는 '학교'의 하위 카테고리로서 '수업', '선생님' 또는 '숙제'를 표시하고, '학교'에 연관되는 콘텐트로서 하나 이상의 어플리케이션(925), 하나 이상의 연락처 정보(927), 또는 하나 이상의 문서 파일(929)을 콘텐트 검색 화면(900)에 표시할 수 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는 콘텐트 검색 화면(900)을 통해 제시된 하나 이상의 콘텐트(925, 927, 929) 중 '체험학습 신청서.docx' 문서파일이 선택됨을 확인하고, 상기 선택된 문서 파일을 열어 디스플레이(310)를 통해 제공할 수 있다. 이와 같이, 전자 장치(300)는 사용자가 선택한 키워드에 대응하는 카테고리 및 콘텐트를 단계적으로 제시함으로써, 사용자가 원하는 콘텐트에 쉽고 빠르게 접근할 수 있도록 가이드 할 수 있다.
도 10은 본 개시의 일 실시 예에 따라, 전자 장치에서 검색어 입력 및 카테고리 선택을 기반으로 콘텐트를 검색하는 과정을 설명하는 도면이다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 검색어 입력과 키워드(카테고리) 선택을 동시에 활용하는 콘텐트 검색 방식을 제공할 수 있다.
도 10을 참조하면, 전자 장치(300)는 사용자의 터치 입력이나 음성 명령, 또는 지정된 제스처 입력에 응답하여 콘텐트 검색 프로세스를 개시하여, 콘텐트 검색 화면(1000)을 디스플레이(예: 도 1의 디스플레이 모듈(160) 또는 도 3의 디스플레이(310)) 상에 표시할 수 있다. 도 10에서, 콘텐트 검색 화면(1000)은 검색어를 입력받기 위한 검색어 입력 필드(1010)와 하나 이상의 키워드(1020)을 포함할 수 있다. 상기 하나 이상의 키워드(1020)는 콘텐트 내비게이션 모델(예: 도 5의 콘텐트 내비게이션 모델(500) 또는 도 8의 콘텐트 내비게이션 모델(810))에서 최상위 카테고리로 분류된 그룹들의 대표 키워드에 대응될 수 있다.
본 개시의 일 실시 예에서, 전자 장치(300)는, 검색어 입력 필드(1010)에 검색어에 입력된 상태에서, 상기 하나 이상의 키워드(1020) 중 하나에 대한 선택 입력을 확인할 수 있다. 예를 들어, 전자 장치(300)는, 사용자에 의해 검색어 입력 필드(1010)에 '체험'이라는 검색어가 입력된 상태에서 상기 하나 이상의 키워드(1020) 중 '교육'이 선택됨을 확인할 수 있다. 전자 장치(300)는 상기 콘텐트 내비게이션 모델을 기반으로 상기 입력된 검색어와 상기 선택된 키워드를 모두 충족하는 콘텐트로서 '체험학습 신청서.docx' 문서파일(1030)을 직접 검색하여 디스플레이(310)를 통해 제공할 수 있다. 도 10에서와 같이 검색어 입력과 키워드 선택을 동시에 활용하는 경우, 콘텐트 검색 과정에서 단계적으로 카테고리 및 콘텐트를 제시하지 않고 바로 검색할 수 있어, 보다 빠르게 사용자가 원하는 콘텐트를 제공할 수 있다.
도 11은 본 개시의 일 실시 예에 따른, 전자 장치의 동작 방법을 도시하는 흐름도이다. 본 개시의 일 실시 예에 따르면, 전자 장치(300)는 전자 장치(300)에 저장된 복수 개의 콘텐트를 하나 이상의 관련 키워드에 기반하여 계층적으로 그룹화하여 관리하기 위한 콘텐트 내비게이션 모델을 생성하는 장치로서, 도 1에 도시된 전자 장치(101) 또는 도 3에 도시된 전자 장치(300)에 대응될 수 있다. 도 11의 동작들은 전자 장치(300)에 포함된 적어도 하나의 프로세서(예: 도 1의 프로세서(120) 또는 도 3의 적어도 하나의 프로세서(330))에 의해 수행될 수 있다.
도 11을 참조하면, 동작 1110에서 전자 장치(300)는 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(340))에 저장된 복수 개의 콘텐트에 연관되는 복수 개의 키워드를 획득할 수 있다. 상기 복수 개의 키워드는 각 콘텐트의 이름(예: 파일명, 어플리케이션 이름)이나 타입, 관련 정보(예: 카테고리, 메타데이터 또는 태그데이터) 또는 콘텐트에 포함된 내용 중 적어도 하나를 이용하여 획득될 수 있다. 예를 들어, 전자 장치(300)는 메모리(340) 또는 전자 장치(300)에서 액세스 가능한 하나 이상의 데이터베이스로부터 상기 복수 개의 콘텐트에 관한 정보를 확인하고, 상기 확인된 복수 개의 콘텐트에 관한 정보를 기반으로 상기 복수 개의 키워드를 추출할 수 있다. 다른 예를 들어, 전자 장치(300)는 통신 모듈(예: 도 1의 통신 모듈(190) 또는 도 3의 통신 모듈(340))을 통해 외부 서버로부터 상기 복수 개의 콘텐트에 관한 정보를 획득하거나, 또는 상기 복수 개의 콘텐트에 연관되는 추천 키워드를 획득할 수도 있다.
본 개시의 일 실시 예에 따르면, 동작 1120에서 전자 장치(300)는 상기 복수 개의 키워드를 기반으로 상기 복수 개의 콘텐트를 계층적으로 분류하여 하나 이상의 그룹을 생성할 수 있다. 예를 들어, 전자 장치(300)는 계층적 클러스터링(hierarchical clustering) 기법을 이용하여 상기 복수 개의 콘텐트를 계층적 트리 구조의 형태로 분류하고, 상기 분류 결과를 기반으로 하나 이상의 그룹을 생성할 수 있다.
본 개시의 일 실시 예에 따르면, 동작 1130에서 전자 장치(300)는 상기 생성된 하나 이상의 그룹에 대응하는 대표 키워드를 확인할 수 있다. 각 그룹 별 대표 키워드는 상기 분류 결과에 따라 생성된 하나 이상의 그룹 각각에 대응하는 카테고리에 대응될 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 상기 하나 이상의 그룹 각각에 포함된 콘텐트들 사이의 평균 유사도, 키워드 타입 또는 검색 이력 중 적어도 하나를 기반으로 각 그룹 별 대표 키워드를 결정할 수 있다. 예를 들어, 전자 장치(300)는 각 그룹에 연관되는 콘텐츠 사이의 유사도를 계산하고, 상기 계산된 유사도의 평균 값이 가장 큰 콘텐트의 키워드를 해당 그룹의 대표 키워드로 결정할 수 있다. 상기 콘텐츠 사이의 유사도는 코사인 유사도(cosine similarity), 자카드 계수(jaccard coefficient), 상관 계수(correlation coefficient), 또는 해밍 거리(hamming distance) 중 적어도 하나의 텍스트 기반 유사도 계산 방식을 이용하여 측정될 수 있다. 다른 예를 들어, 전자 장치(300)는 각 그룹에 포함된 키워드들의 출처 데이터 별 가중치를 설정하고, 상기 설정된 가중치를 기반으로 키워드 점수를 계산할 수 있다. 전자 장치(300)는 상기 계산된 키워드 점수가 가장 높은 키워드를 상기 대표 키워드로 결정할 수 있다. 또 다른 예를 들어, 전자 장치(300)는 각 그룹에 포함된 키워드들의 이용 빈도를 확인하여, 상기 이용 빈도가 가장 높은 키워드를 상기 대표 키워드로 결정할 수 있다.
본 개시의 일 실시 예에 따르면, 동작 1140에서 전자 장치(300)는 상기 각 그룹에 대하여 확인된 대표 키워드를, 상기 각 그룹에 속하는 콘텐트와 조합하여 내비게이션 모델을 생성할 수 있다. 예를 들어, 전자 장치(300)는 계층적 클러스터링(hierarchical clustering)을 기반으로 생성된 하나 이상의 그룹에 대응하도록, 상기 복수 개의 콘텐트를 상기 각 그룹 별 대표 키워드와 연관시켜 계층적 트리 구조의 내비게이션 모델을 생성할 수 있다. 상기 내비게이션 모델의 구조에 따라, 각 콘텐트는 하나의 키워드에 특정되지 않고 하나 이상의 카테고리와의 연관관계에 따라 하나 이상의 키워드에 중첩하여 연결될 수 있으며, 이로 인해 사용자가 원하는 콘텐트에 접근할 확률을 높일 수 있다.
본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 콘텐트 검색 시점의 상황에 따라 맞춤형 검색 결과를 제공하기 위해, 사용자의 프로파일이나 컨텍스트 정보를 기반으로 복수 개의 콘텐트 내비게이션 모델을 실시간 생성하거나 또는 다양한 컨텍스트 별 콘텐트 내비게이션 모델을 미리 생성해둘 수 있다. 예를 들어, 전자 장치(300)는 사용자에 연관되는 컨텍스트 정보를 확인하고, 상기 확인된 컨텍스트 정보에 관련된 적어도 하나의 키워드에 가중치를 설정할 수 있다. 상기 컨텍스트 정보는 위치, 계절, 날짜, 시간 또는 날씨 중 적어도 하나를 포함할 수 있다. 예시적으로, 사용자가 놀이공원에 위치한 동안 특정 콘텐트를 검색하고자 하는 경우, 전자 장치(300)는 '놀이공원'이라는 컨텍스트를 확인하고, 사용자가 놀이공원 관련 어플리케이션이나 주변 시설 관련 정보에 빠르게 접근할 수 있도록 '놀이공원'이라는 컨텍스트와 관련된 키워드 또는 해당 컨텍스트에서 사용 이력이 있는 콘텐트와 관련된 키워드에 가중치를 설정할 수 있다. 전자 장치(300)는 상기 설정된 가중치를 기반으로 각 그룹 별 대표 키워드를 결정하고, 상기 결정된 각 그룹 별 대표 키워드를 기반으로 상기 컨텍스트 정보에 대응하는 내비게이션 모델을 생성할 수 있다.
본 개시의 일 실시 예에 따르면, 동작 1150에서 전자 장치(300)는 상기 생성된 내비게이션 모델을 메모리(340) 또는 전자 장치(300)에서 액세스 가능한 데이터베이스에 저장할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 콘텐트 저장 시마다 상기 내비게이션 모델을 업데이트 할 수 있다. 예를 들어, 적어도 하나의 프로세서(330)는 메모리(340)에 새로운 콘텐트가 저장됨을 확인하면, 상기 새로운 콘텐트에 연관되는 적어도 하나의 키워드를 획득하고, 점진적 클러스터링(incremental clustering) 기법을 활용하여 상기 새로운 콘텐트를 기존의 내비게이션 모델에 적용하는 방식으로, 상기 내비게이션 모델을 업데이트 할 수 있다.
도 12는 본 개시의 일 실시 예에 따른, 전자 장치의 동작 방법을 도시하는 흐름도이다. 본 개시의 일 실시 예에 따르면, 전자 장치(300)는 전자 장치(300)에 저장된 특정 콘텐트를 검색하는 과정에서 콘텐트 내비게이션 모델을 기반으로 사용자가 찾고자 하는 콘텐트에 접근할 수 있는 경로를 순차적으로 제공하는 장치로서, 도 1에 도시된 전자 장치(101) 또는 도 3에 도시된 전자 장치(300)에 대응될 수 있다. 도 12의 동작들은 전자 장치(300)에 포함된 적어도 하나의 프로세서(예: 도 1의 프로세서(120) 또는 도 3의 적어도 하나의 프로세서(330))에 의해 수행될 수 있다.
도 12를 참조하면, 동작 1210에서 전자 장치(300)는 콘텐트 검색을 위한 하나 이상의 키워드를 디스플레이(예: 도 1의 디스플레이 모듈(160) 또는 도 3의 디스플레이(310)) 상에 표시할 수 있다. 상기 하나 이상의 키워드는 상기 콘텐트 내비게이션 모델에서 최상위 카테고리로 분류된 그룹들의 대표 키워드에 대응될 수 있다. 전자 장치(300)는 사용자로부터 입력된 지정된 제스처에 응답하여 상기 하나 이상의 키워드를 디스플레이(310) 상에 표시할 수 있다. 예를 들어, 전자 장치(300)는 콘텐트 검색 화면을 호출하는 사용자의 터치 입력이나 음성 명령이 입력됨을 확인하면, 상기 하나 이상의 키워드를 디스플레이(310) 상에 표시할 수 있다. 다른 예를 들어, 전자 장치(300)는 콘텐트 검색을 위해 지정된 액션이 수행됨을 확인하면, 디스플레이(310)를 통해 상기 하나 이상의 키워드를 제시할 수 있다.
본 개시의 일 실시 예에 따르면, 동작 1220에서 전자 장치(300)는 디스플레이(310) 상에 표시된 상기 하나 이상의 키워드 중 제1 키워드의 선택을 확인할 수 있다. 전자 장치(300)는, 동작 1220에서, 상기 제1 키워드에 대한 사용자의 터치 입력 또는 음성 입력을 기반으로 상기 제1 키워드가 선택됨을 확인할 수 있다.
본 개시의 일 실시 예에 따르면, 동작 1230에서 전자 장치(300)는 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 디스플레이(310)에 표시할 수 있다. 상기 하나 이상의 제1 카테고리는 상기 제1 키워드의 하위 카테고리 중 적어도 일부에 대응될 수 있으며, 상기 콘텐트 내비게이션 모델에서 상기 제1 키워드의 하위 카테고리로 분류된 각 그룹별 대표 키워드가 상기 하나 이상의 제1 카테고리로서 표시될 수 있다. 상기 하나 이상의 제1 콘텐트는 상기 제1 키워드에 대응하는 그룹에 속하는 콘텐트를 포함할 수 있다. 예를 들어, 전자 장치(300)는 상기 하나 이상의 키워드 중 '여행'이라는 키워드에 대한 선택을 확인함에 응답하여, '항공', '지도', '음식' 또는 '숙소'의 카테고리와 '여행'에 연관되는 하나 이상의 콘텐트를 디스플레이(310)를 통해 표시할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 동작 1230에서, 콘텐트 표시 관련 설정 정보를 확인할 수 있다. 예를 들어, 전자 장치(300)는 상기 설정 정보를 기반으로 표시 가능 개수를 확인하고, 상기 표시 가능 개수에 따라 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트의 수를 제한할 수 있다. 이러한 경우, 전자 장치(300)는 상기 제1 키워드와의 유사도, 검색 빈도, 또는 콘텐트 생성 시간 중 적어도 하나의 기준에 따라 상기 표시 가능 개수에 대응하는 수의 제1 카테고리 및 제1 콘텐트를 선택하여 디스플레이(310)에 표시할 수 있다. 상기 적어도 하나의 기준은 사용자의 콘텐트 사용 패턴에 따라 상이하게 적용될 수 있다.
본 개시의 일 실시 예에 따르면, 동작 1240에서 전자 장치(300)는 디스플레이(310) 상에 표시된 하나 이상의 제1 콘텐트 중 하나에 대한 선택이 입력되었는지 여부를 확인할 수 있다. 예를 들어, 전자 장치(300)는 사용자의 터치 입력이나 음성 입력, 또는 그 외 지정된 제스처 입력을 기반으로 상기 하나 이상의 제1 콘텐트 또는 상기 하나 이상의 제1 카테고리 중 어느 항목이 선택되었는지 확인할 수 있다. 상기 확인 결과 상기 하나 이상의 제1 콘텐트 중 하나가 선택되지 않은 경우 (동작 1240-아니오), 전자 장치(300)는 동작 1250에서 상기 하나 이상의 제1 카테고리 중 하나에 대한 선택 입력을 확인하고, 선택된 카테고리에 연관되는 하위 카테고리 중 하나 이상의 제2 카테고리와 상기 선택된 카테고리에 연관되는 하나 이상의 제2 콘텐트를 디스플레이(310)에 표시할 수 있다. 상기 하나 이상의 제2 카테고리는 상기 제1 카테고리의 하위 카테고리 중 적어도 일부에 대응될 수 있으며, 상기 콘텐트 내비게이션 모델에서 상기 선택된 카테고리의 하위 카테고리로 분류된 각 그룹별 대표 키워드가 상기 하나 이상의 제2 카테고리로서 표시될 수 있다. 상기 하나 이상의 제2 콘텐트는 상기 선택된 카테고리의 그룹에 속하는 콘텐트를 포함할 수 있다. 전자 장치(300)는 상기 하나 이상의 제1 카테고리 및 상기 하나 이상의 제1 콘텐트 표시 방식과 동일하게 상기 하나 이상의 제2 카테고리와 하나 이상의 제2 콘텐트를 표시할 수 있다. 전자 장치(300)는 상기 하나 이상의 제1 카테고리 중 하나에 대한 선택을 확인하면, 상기 설정 정보에 따른 표시 가능 개수를 확인하고, 상기 선택된 카테고리의 대표 키워드와의 유사도, 검색 빈도, 또는 콘텐트 생성 시간 중 적어도 하나의 기준에 따라 상기 표시 가능 개수에 대응하는 수의 제2 카테고리 및 제2 콘텐트를 선택 및 정렬하여 디스플레이(310)에 표시할 수 있다. 본 개시의 다양한 실시 예에 따라, 전자 장치(300)는 상기 하나 이상의 제2 카테고리 또는 상기 하나 이상의 제2 콘텐트에 대한 선택 입력을 확인할 수 있다. 전자 장치(300)는 사용자의 터치 입력이나 음성 입력, 또는 그 외 지정된 제스처 입력을 기반으로 상기 하나 이상의 제2 카테고리 또는 상기 하나 이상의 제2 콘텐트 중 어느 항목이 선택되었는지 확인할 수 있다. 예를 들어, 상기 하나 이상의 제2 콘텐트 중 하나에 대한 선택 입력이 확인되면, 전자 장치(300)는 선택된 콘텐트를 디스플레이(310)를 통해 제공할 수 있다. 다른 예를 들어, 상기 하나 이상의 제2 카테고리 중 하나에 대한 선택 입력이 확인되면, 전자 장치(300)는 선택된 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 디스플레이(310)에 표시할 수 있다. 전자 장치(300)는 디스플레이(310)에 표시된 어느 하나의 콘텐트에 대한 선택이 입력될 때까지 상기 선택된 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 확인하여 디스플레이(310)에 표시할 수 있다.
상기 확인 결과 상기 하나 이상의 제1 콘텐트 중 하나가 선택된 경우 (동작 1240-예), 전자 장치(300)는 동작 1255에서 상기 선택된 콘텐트를 디스플레이(310)를 통해 제공할 수 있다. 전자 장치(300)는 상기 콘텐트의 선택에 응답하여 상기 콘텐트를 제공하는데 필요한 어플리케이션이나 프로그램을 확인하고, 이를 실행하여 상기 선택된 콘텐트를 제공할 수 있다.
일 실시 예에 따른 전자 장치(예: 전자 장치(300))는, 디스플레이(예: 디스플레이(310)), 통신 모듈(예: 통신 모듈(320)), 상기 디스플레이 및 상기 통신 모듈과 작동적으로 연결된 적어도 하나의 프로세서(예: 프로세서(330)), 및 상기 적어도 하나의 프로세서와 작동적으로 연결된 메모리(예: 메모리(340))를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 콘텐트 검색을 위한 하나 이상의 키워드를 상기 디스플레이 상에 표시하고, 상기 하나 이상의 키워드 중 제1 키워드의 선택을 확인함에 응답하여 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 지정된 기준에 따라 정렬하여 표시하고, 상기 하나 이상의 제1 카테고리 중 하나의 선택 입력을 확인하면, 상기 선택된 카테고리에 연관되는 하위 카테고리 중 하나 이상의 제2 카테고리와 상기 선택된 카테고리에 연관되는 하나 이상의 제2 콘텐트를 상기 지정된 기준에 따라 정렬하여 표시하고, 상기 하나 이상의 제1 콘텐트 중 하나에 대한 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하도록 하는 인스트럭션들을 저장할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가, 상기 제1 키워드의 선택이 입력되면, 표시 가능 개수에 관한 설정정보를 확인하고, 상기 설정 정보를 기반으로 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 표시하도록 할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가상기 제1 키워드와의 유사도, 검색 빈도, 또는 콘텐트 생성 시간 중 적어도 하나를 포함하는 상기 지정된 기준에 따라 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 정렬하여 표시하도록 할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가, 상기 하나 이상의 제2 콘텐트 중 하나의 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하고, 상기 하나 이상의 제2 카테고리 중 하나의 선택 입력을 확인하면, 어느 하나의 콘텐트에 대한 선택이 입력될 때까지 상기 선택된 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 확인하여 표시하도록 할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가, 상기 제1 키워드의 선택 시점에 연관되는 컨텍스트 정보를 확인하고, 상기 확인된 컨텍스트 정보를 기반으로 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 결정하여 표시하도록 하고, 상기 컨텍스트 정보는 위치, 계절, 날짜, 시간 또는 날씨 중 적어도 하나를 포함할 수 있다.
다른 실시 예에 따른 전자 장치(예: 전자 장치(300))는 통신 모듈(예: 통신 모듈(320)), 상기 통신 모듈과 작동적으로 연결된 적어도 하나의 프로세서(예: 프로세서(330)), 및 복수 개의 콘텐트를 저장하고, 상기 적어도 하나의 프로세서와 작동적으로 연결된 메모리(예: 메모리(340))를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 상기 복수 개의 콘텐트에 연관되는 복수 개의 키워드를 획득하고, 상기 획득한 복수 개의 키워드를 기반으로 상기 복수 개의 콘텐트를 계층적으로 분류하여 하나 이상의 그룹을 생성하고, 상기 하나 이상의 그룹 각각에 대응하는 대표 키워드를 확인하고, 상기 확인된 대표 키워드를, 상기 하나 이상의 그룹 각각에 포함된 콘텐트와 조합하여 내비게이션 모델을 생성하고, 상기 생성된 내비게이션 모델을 저장하도록 하는 인스트럭션들을 저장할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가, 상기 메모리 또는 상기 전자 장치에서 접근 가능한 하나 이상의 데이터베이스(예: 콘텐트/키워드 DB(435))로부터 상기 복수 개의 콘텐트에 관한 정보를 확인하고, 상기 복수 개의 콘텐트에 관한 정보를 기반으로 상기 복수 개의 키워드를 추출하도록 할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가, 상기 통신 모듈을 이용하여 외부 서버로부터 상기 복수 개의 키워드를 획득하도록 할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가, 계층적 클러스터링(hierarchical clustering) 기법을 이용하여 상기 복수 개의 키워드를 분류하도록 할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가, 상기 하나 이상의 그룹 각각에 포함된 콘텐트들 사이의 평균 유사도, 키워드 타입, 또는 검색 이력 중 적어도 하나를 기반으로 상기 대표 키워드를 결정하도록 할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가, 상기 전자 장치의 사용자에 연관되는 컨텍스트 정보를 확인하고, 상기 확인된 컨텍스트 정보에 관련된 적어도 하나의 키워드에 가중치를 설정하고, 상기 설정된 가중치를 기반으로 상기 하나 이상의 그룹 각각에 대응하는 대표 키워드를 결정하고, 상기 결정된 대표 키워드를 기반으로 생성된 제1 모델을 상기 컨텍스트 정보에 대응하는 내비게이션 모델로 저장하도록 할 수 있다.
본 개시의 일 실시 예에서, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서가, 상기 메모리에 새로운 콘텐트가 저장됨을 확인하면, 상기 새로운 콘텐트에 연관되는 적어도 하나의 키워드를 획득하고, 점진적 클러스터링(incremental clustering) 기법을 이용하여 상기 내비게이션 모델을 업데이트 하도록 할 수 있다.
본 개시의 다양한 실시 예에 따른 전자 장치(예: 전자 장치(300))의 동작 방법은, 콘텐트 검색을 위한 하나 이상의 키워드를 디스플레이 상에 표시하는 동작, 상기 하나 이상의 키워드 중 제1 키워드의 선택을 확인함에 응답하여 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 지정된 기준에 따라 정렬하여 표시하는 동작, 상기 하나 이상의 제1 카테고리 중 하나의 선택 입력을 확인하면, 상기 선택된 카테고리에 연관되는 하위 카테고리 중 하나 이상의 제2 카테고리와 상기 선택된 카테고리에 연관되는 하나 이상의 제2 콘텐트를 상기 지정된 기준에 따라 정렬하여 표시하는 동작, 및 상기 하나 이상의 제1 콘텐트 중 하나에 대한 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하는 동작을 포함할 수 있다.
본 개시의 일 실시 예에서, 상기 하나 이상의 제1 카테고리와 하나 이상의 제1 콘텐트를 표시하는 동작은, 상기 제1 키워드의 선택이 입력되면, 표시 가능 개수에 관한 설정 정보를 확인하는 동작, 및 상기 설정 정보를 기반으로 상기 지정된 기준에 따라 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 정렬하여 표시하는 동작을 포함하며, 상기 지정된 기준은 상기 제1 키워드와의 유사도, 검색 빈도, 또는 콘텐트 생성 시간 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시 예에서, 상기 하나 이상의 제1 카테고리와 하나 이상의 제1 콘텐트를 표시하는 동작은, 상기 제1 키워드의 선택 시점에 연관되는 컨텍스트 정보를 확인하는 동작, 및 상기 확인된 컨텍스트 정보를 기반으로 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 결정하여 표시하는 동작을 포함하며, 상기 컨텍스트 정보는 위치, 계절, 날짜, 시간 또는 날씨 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시 예에서, 상기 하나 이상의 제2 카테고리와 하나 이상의 제2 콘텐트를 표시하는 동작은, 상기 하나 이상의 제2 콘텐트 중 하나의 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하는 동작, 및 상기 하나 이상의 제2 카테고리 중 하나의 선택 입력을 확인하면, 어느 하나의 콘텐트에 대한 선택이 입력될 때까지 상기 선택된 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 확인하여 표시하는 동작을 더 포함할 수 있다.
다른 실시 예에 따른 전자 장치(예: 전자 장치(300))의 동작 방법은, 상기 전자 장치에 저장된 복수 개의 콘텐트에 연관되는 복수 개의 키워드를 획득하는 동작, 상기 획득한 복수 개의 키워드를 기반으로 상기 복수 개의 콘텐트를 계층적으로 분류하여 하나 이상의 그룹을 생성하는 동작, 상기 하나 이상의 그룹 각각에 대응하는 대표 키워드를 확인하는 동작, 상기 확인된 대표 키워드를, 상기 하나 이상의 그룹 각각에 포함된 콘텐트와 조합하여 내비게이션 모델을 생성하는 동작, 및 상기 생성된 내비게이션 모델을 저장하는 동작을 포함할 수 있다.
본 개시의 일 실시 예에서, 상기 복수 개의 키워드를 획득하는 동작은, 상기 전자 장치의 메모리(예: 메모리(340)) 또는 상기 전자 장치에서 접근 가능한 하나 이상의 데이터베이스(예: 콘텐트/키워드 DB(435))로부터 확인된 상기 복수 개의 콘텐트에 관한 정보를 기반으로 상기 복수 개의 키워드를 추출하는 동작, 또는 상기 전자 장치의 통신 모듈(예: 통신 모듈(320))을 이용하여 외부 서버로부터 상기 복수 개의 키워드를 획득하는 동작을 포함할 수 있다.
본 개시의 일 실시 예에서, 상기 하나 이상의 그룹을 생성하는 동작은, 계층적 클러스터링(hierarchical clustering) 기법을 이용하여 상기 복수 개의 콘텐트를 카테고리에 따라 계층적으로 분류하는 동작을 포함할 수 있다.
본 개시의 일 실시 예에서, 상기 대표 키워드를 확인하는 동작은, 상기 하나 이상의 그룹 각각에 포함된 콘텐트들 사이의 평균 유사도, 키워드 타입, 또는 검색 이력 중 적어도 하나를 기반으로 상기 대표 키워드를 결정하는 동작을 포함할 수 있다.
본 개시의 일 실시 예에서, 상기 방법은, 상기 전자 장치의 사용자에 연관되는 컨텍스트 정보를 확인하는 동작, 상기 확인된 컨텍스트 정보에 관련된 적어도 하나의 키워드에 가중치를 설정하는 동작, 상기 설정된 가중치를 기반으로 상기 하나 이상의 그룹 각각에 대응하는 대표 키워드를 결정하는 동작, 및 상기 결정된 대표 키워드를 기반으로 생성된 제1 모델을 상기 컨텍스트 정보에 대응하는 내비게이션 모델로 저장하는 동작을 더 포함할 수 있다.
본 개시의 일 실시 예에서, 상기 방법은, 상기 전자 장치에 새로운 콘텐트가 저장됨을 확인하면, 상기 새로운 콘텐트에 연관되는 적어도 하나의 키워드를 획득하는 동작, 및 점진적 클러스터링(incremental clustering) 기법을 이용하여 상기 네비게이션 모델을 업데이트 하는 동작을 더 포함할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시 예들로 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C," "A, B 및 C 중 적어도 하나", 및 " A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시 예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시 예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, "비일시적"은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시 예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시 예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.

Claims (15)

  1. 전자 장치에 있어서,
    디스플레이;
    통신 모듈;
    상기 디스플레이 및 상기 통신 모듈과 작동적으로 연결된 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 작동적으로 연결된 메모리를 포함하고,
    상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가,
    콘텐트 검색을 위한 하나 이상의 키워드를 상기 디스플레이 상에 표시하고,
    상기 하나 이상의 키워드 중 제1 키워드의 선택을 확인함에 응답하여, 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 지정된 기준에 따라 정렬하여 표시하고,
    상기 하나 이상의 제1 카테고리 중 하나의 선택 입력을 확인하면, 선택된 카테고리에 연관되는 하위 카테고리 중 하나 이상의 제2 카테고리와 상기 선택된 카테고리에 연관되는 하나 이상의 제2 콘텐트를 상기 지정된 기준에 따라 정렬하여 표시하고,
    상기 하나 이상의 제1 콘텐트 중 하나에 대한 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하도록 하는 인스트럭션들을 저장하는, 전자 장치.
  2. 청구항 1에 있어서,
    상기 인스트럭션들은, 상기 적어도 하나의 프로세서가,
    상기 제1 키워드의 선택이 입력되면, 표시 가능 개수에 관한 설정정보를 확인하고,
    상기 설정 정보를 기반으로 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 표시하도록 하는, 전자 장치.
  3. 청구항 2에 있어서,
    상기 인스트럭션들은, 상기 적어도 하나의 프로세서가,
    상기 제1 키워드와의 유사도, 검색 빈도, 또는 콘텐트 생성 시간 중 적어도 하나를 포함하는 상기 지정된 기준에 따라 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 정렬하여 표시하도록 하는, 전자 장치.
  4. 청구항 1에 있어서,
    상기 인스트럭션들은, 상기 적어도 하나의 프로세서가,
    상기 하나 이상의 제2 콘텐트 중 하나의 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하고,
    상기 하나 이상의 제2 카테고리 중 하나의 선택 입력을 확인하면, 어느 하나의 콘텐트에 대한 선택이 입력될 때까지 상기 선택된 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 확인하여 표시하도록 하는, 전자 장치.
  5. 청구항 1에 있어서,
    상기 인스트럭션들은, 상기 적어도 하나의 프로세서가,
    상기 제1 키워드의 선택 시점에 연관되는 컨텍스트 정보를 확인하고,
    상기 확인된 컨텍스트 정보를 기반으로 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 결정하여 표시하도록 하며,
    상기 컨텍스트 정보는, 위치, 계절, 날짜, 시간 또는 날씨 중 적어도 하나를 포함하는, 전자 장치.
  6. 전자 장치에 있어서,
    통신 모듈;
    상기 통신 모듈과 작동적으로 연결된 적어도 하나의 프로세서; 및
    복수 개의 콘텐트를 저장하고, 상기 적어도 하나의 프로세서와 작동적으로 연결된 메모리를 포함하고,
    상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가,
    상기 복수 개의 콘텐트에 연관되는 복수 개의 키워드를 획득하고,
    상기 획득한 복수 개의 키워드를 기반으로 상기 복수 개의 콘텐트를 계층적으로 분류하여 하나 이상의 그룹을 생성하고,
    상기 하나 이상의 그룹 각각에 대응하는 대표 키워드를 확인하고,
    상기 확인된 대표 키워드를, 상기 하나 이상의 그룹 각각에 포함된 콘텐트와 조합하여 내비게이션 모델을 생성하고,
    상기 생성된 내비게이션 모델을 저장하도록 하는 인스트럭션들을 저장하는, 전자 장치.
  7. 청구항 6에 있어서,
    상기 인스트럭션들은, 상기 적어도 하나의 프로세서가,
    상기 메모리 또는 상기 전자 장치에서 접근 가능한 하나 이상의 데이터베이스로부터 상기 복수 개의 콘텐트에 관한 정보를 확인하고,
    상기 복수 개의 콘텐트에 관한 정보를 기반으로 상기 복수 개의 키워드를 추출하도록 하는, 전자 장치.
  8. 청구항 6에 있어서,
    상기 인스트럭션들은, 상기 적어도 하나의 프로세서가,
    계층적 클러스터링(hierarchical clustering) 기법을 이용하여 상기 복수 개의 콘텐트를 분류하도록 하는, 전자 장치.
  9. 청구항 6에 있어서,
    상기 인스트럭션들은, 상기 적어도 하나의 프로세서가,
    상기 하나 이상의 그룹 각각에 포함된 콘텐트들 사이의 평균 유사도, 키워드 타입, 또는 검색 이력 중 적어도 하나를 기반으로 상기 대표 키워드를 결정하도록 하는, 전자 장치.
  10. 청구항 6에 있어서,
    상기 인스트럭션들은, 상기 적어도 하나의 프로세서가,
    상기 전자 장치의 사용자에 연관되는 컨텍스트 정보를 확인하고,
    상기 확인된 컨텍스트 정보에 관련된 적어도 하나의 키워드에 가중치를 설정하고,
    상기 설정된 가중치를 기반으로 상기 하나 이상의 그룹 각각에 대응하는 대표 키워드를 결정하고,
    상기 결정된 대표 키워드를 기반으로 생성된 제1 모델을 상기 컨텍스트 정보에 대응하는 내비게이션 모델로 저장하도록 하는, 전자 장치.
  11. 청구항 6에 있어서,
    상기 인스트럭션들은, 상기 적어도 하나의 프로세서가,
    상기 메모리에 새로운 콘텐트가 저장됨을 확인하면, 상기 새로운 콘텐트에 연관되는 적어도 하나의 키워드를 획득하고,
    점진적 클러스터링(incremental clustering) 기법을 이용하여 상기 내비게이션 모델을 업데이트 하도록 하는, 전자 장치.
  12. 전자 장치의 동작 방법에 있어서,
    콘텐트 검색을 위한 하나 이상의 키워드를 디스플레이 상에 표시하는 동작;
    상기 하나 이상의 키워드 중 제1 키워드의 선택을 확인함에 응답하여, 상기 제1 키워드에 연관되는 하위 카테고리 중 하나 이상의 제1 카테고리와 상기 제1 키워드에 연관되는 하나 이상의 제1 콘텐트를 지정된 기준에 따라 정렬하여 표시하는 동작;
    상기 하나 이상의 제1 카테고리 중 하나의 선택 입력을 확인하면, 선택된 카테고리에 연관되는 하위 카테고리 중 하나 이상의 제2 카테고리와 상기 선택된 카테고리에 연관되는 하나 이상의 제2 콘텐트를 상기 지정된 기준에 따라 정렬하여 표시하는 동작; 및
    상기 하나 이상의 제1 콘텐트 중 하나에 대한 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하는 동작을 포함하는, 방법.
  13. 청구항 12에 있어서,
    상기 하나 이상의 제1 카테고리와 하나 이상의 제1 콘텐트를 표시하는 동작은,
    상기 제1 키워드의 선택이 입력되면, 표시 가능 개수에 관한 설정 정보를 확인하는 동작; 및
    상기 설정 정보를 기반으로 상기 지정된 기준에 따라 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 정렬하여 표시하는 동작을 포함하며,
    상기 지정된 기준은, 상기 제1 키워드와의 유사도, 검색 빈도, 또는 콘텐트 생성 시간 중 적어도 하나를 포함하는, 방법.
  14. 청구항 12에 있어서,
    상기 하나 이상의 제1 카테고리와 하나 이상의 제1 콘텐트를 표시하는 동작은,
    상기 제1 키워드의 선택 시점에 연관되는 컨텍스트 정보를 확인하는 동작; 및
    상기 확인된 컨텍스트 정보를 기반으로 상기 하나 이상의 제1 카테고리와 상기 하나 이상의 제1 콘텐트를 결정하여 표시하는 동작을 포함하며,
    상기 컨텍스트 정보는, 위치, 계절, 날짜, 시간 또는 날씨 중 적어도 하나를 포함하는, 방법.
  15. 청구항 12에 있어서,
    상기 하나 이상의 제2 카테고리와 하나 이상의 제2 콘텐트를 표시하는 동작은,
    상기 하나 이상의 제2 콘텐트 중 하나의 선택 입력을 확인하면, 상기 선택된 콘텐트를 제공하는 동작; 및
    상기 하나 이상의 제2 카테고리 중 하나의 선택 입력을 확인하면, 어느 하나의 콘텐트에 대한 선택이 입력될 때까지 상기 선택된 카테고리에 연관되는 하나 이상의 하위 카테고리와 하나 이상의 콘텐트를 확인하여 표시하는 동작을 포함하는, 방법.
PCT/KR2022/015739 2021-12-07 2022-10-17 콘텐트를 검색하는 전자 장치 및 그 방법 WO2023106607A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/150,418 US20230177098A1 (en) 2021-12-07 2023-01-05 Electronic device for searching for content and method thereof

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20210173951 2021-12-07
KR10-2021-0173951 2021-12-07
KR10-2021-0183948 2021-12-21
KR1020210183948A KR20230085786A (ko) 2021-12-07 2021-12-21 콘텐트를 검색하는 전자 장치 및 그 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/150,418 Continuation US20230177098A1 (en) 2021-12-07 2023-01-05 Electronic device for searching for content and method thereof

Publications (1)

Publication Number Publication Date
WO2023106607A1 true WO2023106607A1 (ko) 2023-06-15

Family

ID=86730627

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/015739 WO2023106607A1 (ko) 2021-12-07 2022-10-17 콘텐트를 검색하는 전자 장치 및 그 방법

Country Status (1)

Country Link
WO (1) WO2023106607A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005309998A (ja) * 2004-04-23 2005-11-04 Fujitsu Ltd コンテンツナビゲーションプログラム、コンテンツナビゲーション方法及びコンテンツナビゲーション装置
KR20140091135A (ko) * 2013-01-08 2014-07-21 이재일 토픽의 세분화 생성 및 구독 시스템
US20140207742A1 (en) * 2013-01-22 2014-07-24 Alibaba Group Holding Limited Method and device for generating special topic pages
KR20160131477A (ko) * 2015-05-07 2016-11-16 신재욱 연관 검색어를 이용한 관심사 카테고리 기반 이커머스 시스템
KR102196486B1 (ko) * 2016-03-29 2020-12-30 스냅 인코포레이티드 콘텐츠 모음 네비게이션 및 오토포워딩

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005309998A (ja) * 2004-04-23 2005-11-04 Fujitsu Ltd コンテンツナビゲーションプログラム、コンテンツナビゲーション方法及びコンテンツナビゲーション装置
KR20140091135A (ko) * 2013-01-08 2014-07-21 이재일 토픽의 세분화 생성 및 구독 시스템
US20140207742A1 (en) * 2013-01-22 2014-07-24 Alibaba Group Holding Limited Method and device for generating special topic pages
KR20160131477A (ko) * 2015-05-07 2016-11-16 신재욱 연관 검색어를 이용한 관심사 카테고리 기반 이커머스 시스템
KR102196486B1 (ko) * 2016-03-29 2020-12-30 스냅 인코포레이티드 콘텐츠 모음 네비게이션 및 오토포워딩

Similar Documents

Publication Publication Date Title
KR102360659B1 (ko) 기계번역 방법, 장치, 컴퓨터 기기 및 기억매체
WO2021025397A1 (en) Method and electronic device for quantifying user interest
WO2020032487A1 (ko) 우선 순위에 기반하여 상품과 관련된 정보를 제공하는 방법 및 그 전자 장치
WO2017115994A1 (ko) 인공 지능 기반 연관도 계산을 이용한 노트 제공 방법 및 장치
TWI748266B (zh) 搜索方法、電子裝置及非暫時性電腦可讀記錄媒體
WO2022211271A1 (ko) 학습 기반의 필기 입력을 처리하는 전자 장치, 그 동작 방법 및 저장매체
WO2019107674A1 (en) Computing apparatus and information input method of the computing apparatus
WO2023106607A1 (ko) 콘텐트를 검색하는 전자 장치 및 그 방법
WO2022211509A1 (ko) 컨텐츠 입력에 기초하여 스티커를 제공하는 전자 장치 및 방법
CN110929137B (zh) 文章推荐方法、装置、设备及存储介质
WO2022071708A1 (ko) 컨텐츠 추천 서비스를 제공하는 전자 장치 및 그 방법
WO2022065924A1 (ko) 전자 장치의 이모지 추천 방법 및 그 전자 장치
WO2022098200A1 (ko) 전자 장치 및 그의 연락처를 관리하는 방법
KR20230085786A (ko) 콘텐트를 검색하는 전자 장치 및 그 방법
WO2022177293A1 (ko) 추천 컨텐츠를 제공하기 위한 방법, 이를 위한 서버 및 전자 장치
WO2020122339A1 (ko) 전자 장치 및 그의 제어 방법
US20230177098A1 (en) Electronic device for searching for content and method thereof
WO2024029850A1 (ko) 언어 모델에 기초하여 사용자 발화를 처리하는 방법 및 전자 장치
WO2023195617A1 (ko) 손글씨 동기화 방법 및 전자 장치
WO2023017942A1 (ko) 아이템을 사용자에게 추천하기 위한 전자 장치 및 방법
US11816137B2 (en) Method for providing search word and electronic device for supporting the same
WO2022177164A1 (ko) 온디바이스 인공지능 서비스를 제공하는 전자 장치 및 방법
WO2021261882A1 (ko) 전자 장치 및 전자 장치에서 신조어 기반 문장 변환 방법
WO2023059000A1 (ko) 학습을 보조하기 위한 방법 및 장치
WO2024014655A1 (ko) 획들에 의해 나타나는 문장을 식별하기 위한 전자 장치 및 방법

Legal Events

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

Ref document number: 22904441

Country of ref document: EP

Kind code of ref document: A1