KR20220073984A - Apparatus and method for recommending experiences based on artificial neural networks in consideration of the preferences of both children and parents - Google Patents

Apparatus and method for recommending experiences based on artificial neural networks in consideration of the preferences of both children and parents Download PDF

Info

Publication number
KR20220073984A
KR20220073984A KR1020200161989A KR20200161989A KR20220073984A KR 20220073984 A KR20220073984 A KR 20220073984A KR 1020200161989 A KR1020200161989 A KR 1020200161989A KR 20200161989 A KR20200161989 A KR 20200161989A KR 20220073984 A KR20220073984 A KR 20220073984A
Authority
KR
South Korea
Prior art keywords
local
global
parameters
model
different
Prior art date
Application number
KR1020200161989A
Other languages
Korean (ko)
Inventor
정건우
권순우
Original Assignee
힐스테이션 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 힐스테이션 주식회사 filed Critical 힐스테이션 주식회사
Priority to KR1020200161989A priority Critical patent/KR20220073984A/en
Publication of KR20220073984A publication Critical patent/KR20220073984A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education

Abstract

체험활동 추천을 위한 장치가 제공된다. 상기 장치는 서로 다른 복수의 지역장치로부터 수신된 서로 다른 복수의 학습 데이터를 이용하여 인공신경망에 대한 학습을 수행하여 전역 파라미터를 가지는 전역 모델을 생성하고, 상기 서로 다른 복수의 지역장치 각각이 지역모델의 지역 파라미터를 상기 전역 파라미터로 갱신하도록 상기 전역 파라미터를 상기 서로 다른 복수의 지역장치에 전달하며, 상기 적어도 하나의 지역장치로부터 갱신된 지역모델의 갱신된 지역 파라미터를 수신하면, 상기 수신된 지역 파라미터로 전역 파라미터를 갱신하고, 상기 서로 다른 복수의 지역장치로 갱신된 전역모델의 갱신된 전역 파라미터를 전달하는 전역서버와, 학습 데이터를 이용하여 인공신경망에 대해 학습을 수행함으로써, 아이 및 부모 각각에 대한 설문에 대한 응답을 기초로 체험활동을 추천할 수 있도록, 학습된 지역 파라미터를 가지는 지역 모델을 생성한 후, 상기 전역서버로부터 상기 전역 파라미터를 전달받으면, 선택적으로 상기 지역모델의 지역 파라미터를 상기 전역 파라미터로 갱신하고, 아이 및 부모 각각의 설문에 대한 응답이 입력되면, 상기 입력에 대해 복수의 계층 간 연결되는 지역 파라미터가 적용되는 복수의 연산을 수행하여 체험활동을 추천하는 지역장치를 포함한다. A device for recommending experiential activities is provided. The device generates a global model having global parameters by performing training on the artificial neural network using a plurality of different training data received from a plurality of different local devices, and each of the different local devices is a local model. The global parameter is transmitted to the plurality of different local devices to update the local parameter of A global server that updates global parameters with , and a global server that delivers updated global parameters of the updated global model to the plurality of different local devices, and learning on the artificial neural network using the learning data, so that each child and parent After generating a local model having learned local parameters so as to recommend experiential activities based on a response to a questionnaire for A local device that recommends experiential activities by updating global parameters and performing a plurality of calculations to which local parameters connected between a plurality of layers are applied to the input when a response to a questionnaire for each child and parent is input .

Description

인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 장치 및 이를 위한 방법{Apparatus and method for recommending experiences based on artificial neural networks in consideration of the preferences of both children and parents}Apparatus and method for recommending experiences based on artificial neural networks in consideration of the preferences of both children and parents}

본 발명은 체험활동 추천 기술에 관한 것으로, 보다 상세하게는, 인공신경망을 기반으로 하여 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 장치 및 이를 위한 방법에 관한 것이다. The present invention relates to experiential activity recommendation technology, and more particularly, to an apparatus and method for experiential activity recommendation based on an artificial neural network in consideration of the preferences of both children and parents.

부모는 아이들이 즐겁게 몰입할 수 있는 다양한 경험을 느끼게 해주고 싶다고 생각하지만 유아, 아동의 체험활동은 부모의 일방적인 선택에 의해서 이루어지고 있다. Parents want their children to feel a variety of experiences that they can enjoy and immerse themselves in, but the experience activities of infants and children are made by the unilateral choice of parents.

한국공개특허 제10-2019-0113110호 2019년 10월 08일 공개 (명칭: 취향 분석 알고리즘을 이용한 와인추천 방법)Korean Patent Publication No. 10-2019-0113110 published on October 08, 2019 (Title: Wine recommendation method using taste analysis algorithm)

본 발명의 목적은 인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 장치 및 이를 위한 방법을 제공함에 있다. An object of the present invention is to provide an apparatus for recommending experiential activities in consideration of the preferences of both children and parents based on an artificial neural network and a method therefor.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 체험활동 추천을 위한 방법은 서로 다른 복수의 지역장치가 공히 복수의 계층을 포함하며, 복수의 계층 간을 연결하는 파라미터가 적용되는 복수의 연산을 수행하는 동일한 구성의 인공신경망을 마련하는 단계와, 상기 서로 다른 복수의 지역장치 각각이 서로 다른 학습 데이터를 수집하는 단계와, 상기 서로 다른 복수의 지역장치 각각이 자신이 수집한 학습 데이터를 이용하여 상기 인공신경망에 대해 학습을 수행함으로써, 아이 및 부모 각각에 대한 설문에 대한 응답을 기초로 체험활동을 추천할 수 있도록, 학습된 지역 파라미터를 가지는 지역 모델을 생성하는 단계와, 상기 서로 다른 복수의 지역장치가 상기 서로 다른 학습 데이터를 전역서버로 전달하는 단계와, 상기 전역서버가 상기 서로 다른 복수의 학습 데이터를 이용하여 상기 인공신경망과 동일한 구성의 인공신경망에 대한 학습을 수행하여 전역 파라미터를 가지는 전역 모델을 생성하는 단계와, 상기 전역 파라미터를 상기 서로 다른 복수의 지역장치에 전달하는 단계와, 상기 서로 다른 복수의 지역장치 각각이 상기 지역모델의 지역 파라미터를 상기 전역 파라미터로 갱신하는 단계와, 상기 서로 다른 복수의 지역장치 중 적어도 하나의 지역장치가 학습 데이터를 추가하고, 추가된 학습 데이터를 이용한 학습을 수행하여 지역모델을 갱신하는 단계와, 상기 적어도 하나의 지역장치가 상기 전역서버로 갱신된 지역모델의 갱신된 지역 파라미터를 전달하는 단계와, 상기 전역서버가 상기 전달된 지역 파라미터로 상기 전역서버의 전역 파라미터를 갱신하는 단계와, 상기 전역서버가 상기 서로 다른 복수의 지역장치로 갱신된 전역모델의 갱신된 전역 파라미터를 전달하는 단계와, 상기 서로 다른 복수의 지역장치가 상기 전달된 전역 파라미터로 상기 지역모델의 지역 파라미터를 갱신하는 단계와, 상기 서로 다른 복수의 지역장치 중 적어도 하나의 지역장치가 아이 및 부모 각각의 설문에 대한 응답이 입력되면, 상기 입력에 대해 복수의 계층 간 연결되는 갱신된 지역 파라미터가 적용되는 복수의 연산을 수행하여 체험활동을 추천하는 단계를 포함한다. A method for recommending experiential activities according to a preferred embodiment of the present invention for achieving the above object includes a plurality of different local devices including a plurality of layers, and a parameter connecting the plurality of layers is applied. Preparing an artificial neural network of the same configuration for performing a plurality of calculations; collecting different learning data by each of the plurality of different local devices; generating a local model having learned local parameters so that experiential activities can be recommended based on responses to questionnaires for children and parents, respectively, by performing learning on the artificial neural network using data; A step of transmitting the different learning data to a global server by a plurality of different local devices, and the global server performing learning of an artificial neural network having the same configuration as the artificial neural network using the different plurality of learning data. generating a global model having global parameters; transmitting the global parameters to the plurality of different local devices; and each of the plurality of different local devices updating the local parameters of the local model with the global parameters. adding learning data by at least one of the plurality of different local devices and updating the local model by performing learning using the added learning data; transmitting the updated local parameters of the local model updated to the global server; updating, by the global server, the global parameters of the global server with the delivered local parameters; transmitting the updated global parameters of the global model to a device; updating the local parameters of the local model with the transmitted global parameters by the plurality of different local devices; When at least one of the local devices receives a response to each of the child and parent's questionnaire, the input is performing a plurality of calculations to which an updated local parameter connected between a plurality of layers is applied to recommend an experiential activity.

상기 학습 데이터는 선호를 조사하는 설문에 대한 아이 및 부모 각각의 응답과, 상기 응답을 기초로 추천되어 아이가 체험한 체험활동인 레이블을 포함하며, 상기 학습 데이터는 상기 레이블의 체험활동에 대한 만족도를 조사하는 설문에 대해 상기 아이 및 부모 양자 모두로부터 기 설정된 수치 이상의 만족도를 나타내는 응답을 얻은 경우, 실험군으로 분류되고, 상기 아이 및 부모 중 어느 한 측으로부터 기 설정된 수치 미만의 만족도를 나타내는 응답을 얻은 경우, 대조군으로 분류되는 것을 특징으로 한다. The learning data includes each response of a child and a parent to a questionnaire surveying preferences, and a label that is recommended based on the response and is an experiential activity experienced by the child, and the learning data is satisfaction with the experiential activity of the label. When a response indicating satisfaction above a preset value is obtained from both the child and the parent to a questionnaire surveying case, it is characterized in that it is classified as a control group.

상기 서로 다른 복수의 지역장치가 상기 전달된 전역 파라미터로 상기 지역모델의 지역 파라미터를 갱신하는 단계는 상기 서로 다른 복수의 지역장치가 상기 전역서버로부터 전역 파라미터가 수신될 때 마다 순차로 저장하여 전역 파라미터 집합을 구성하는 단계와, 상기 서로 다른 복수의 지역장치가 상기 지역모델의 지역 파라미터를 상기 전역 파라미터 집합의 원소의 수만큼 복사하여 지역 파라미터 집합을 구성하는 단계와, 상기 서로 다른 복수의 지역장치가 상기 전역 파라미터 집합 및 상기 지역 파라미터 집합의 원소를 모두 병합하여 병합 파라미터 집합을 구성하는 단계와, 상기 서로 다른 복수의 지역장치가 수학식

Figure pat00001
에 따라 수정비율을 산출하는 단계와, 상기 서로 다른 복수의 지역장치 중 상기 산출된 수정비율이 기 설정된 갱신임계치를 초과하는 지역장치가 상기 전달된 전역 파라미터로 상기 지역모델의 지역 파라미터를 갱신하는 단계를 포함한다. In the step of updating, by the plurality of different local devices, the local parameters of the local model with the transmitted global parameters, the plurality of different local devices sequentially store global parameters whenever they receive global parameters from the global server. constructing a set; constructing a local parameter set by copying, by the plurality of different local devices, the local parameters of the local model as many as the number of elements in the global parameter set; forming a merge parameter set by merging all elements of the global parameter set and the local parameter set;
Figure pat00001
calculating a correction rate according to includes

여기서, 상기 i는 상기 지역 파라미터 집합의 원소의 인덱스이고, 상기 j는 상기 전역 파라미터 집합의 원소의 인덱스이고, 상기 k는 상기 병합 파라미터 집합의 원소의 인덱스이고, 상기 r은 상기 전역 파라미터를 수신한 횟수이며, 상기 N은 상기 전역 파라미터 집합의 원소의 수이고, 상기

Figure pat00002
는 병합 파라미터 집합의 표준편차이고, 상기
Figure pat00003
는 지역 파라미터 집합과 전역 파라미터의 공분산인 것을 특징으로 한다. where i is an index of an element of the local parameter set, j is an index of an element of the global parameter set, k is an index of an element of the merge parameter set, and r is an index of an element of the global parameter set number, where N is the number of elements in the global parameter set, and
Figure pat00002
is the standard deviation of the merge parameter set, and
Figure pat00003
is characterized as the covariance of the local parameter set and the global parameter.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 체험활동 추천을 위한 장치는 서로 다른 복수의 지역장치로부터 수신된 서로 다른 복수의 학습 데이터를 이용하여 인공신경망에 대한 학습을 수행하여 전역 파라미터를 가지는 전역 모델을 생성하고, 상기 서로 다른 복수의 지역장치 각각이 지역모델의 지역 파라미터를 상기 전역 파라미터로 갱신하도록 상기 전역 파라미터를 상기 서로 다른 복수의 지역장치에 전달하며, 상기 적어도 하나의 지역장치로부터 갱신된 지역모델의 갱신된 지역 파라미터를 수신하면, 상기 수신된 지역 파라미터로 전역 파라미터를 갱신하고, 상기 서로 다른 복수의 지역장치로 갱신된 전역모델의 갱신된 전역 파라미터를 전달하는 전역서버와, 학습 데이터를 이용하여 인공신경망에 대해 학습을 수행함으로써, 아이 및 부모 각각에 대한 설문에 대한 응답을 기초로 체험활동을 추천할 수 있도록, 학습된 지역 파라미터를 가지는 지역 모델을 생성한 후, 상기 전역서버로부터 상기 전역 파라미터를 전달받으면, 선택적으로 상기 지역모델의 지역 파라미터를 상기 전역 파라미터로 갱신하고, 아이 및 부모 각각의 설문에 대한 응답이 입력되면, 상기 입력에 대해 복수의 계층 간 연결되는 지역 파라미터가 적용되는 복수의 연산을 수행하여 체험활동을 추천하는 지역장치를 포함한다. In order to achieve the above object, the apparatus for recommending experiential activity according to a preferred embodiment of the present invention performs learning on an artificial neural network using a plurality of different learning data received from a plurality of different local devices. a global model having global parameters is generated, and the global parameters are transmitted to the plurality of different local devices so that each of the plurality of different local devices updates the local parameters of the local models with the global parameters; When receiving the updated local parameter of the local model updated from the local device, the global server updates the global parameter with the received local parameter, and delivers the updated global parameter of the updated global model to the plurality of different local devices. And, by performing learning on the artificial neural network using the learning data, a local model having the learned local parameters is created so that experiential activities can be recommended based on the responses to the questionnaires for each child and parent, When the global parameter is received from the global server, the regional parameter of the regional model is selectively updated with the global parameter, and when responses to the questionnaires of children and parents are input, a plurality of layers are connected to the input and a local device that recommends experiential activities by performing a plurality of calculations to which local parameters are applied.

본 발명에 따르면, 복수의 지역장치와 전역서버가 연합함으로써 대규모(massive) 학습 데이터를 통해 인공신경망을 학습(machine learning/deep learning)시켜 지역 모델을 생성할 수 있다. 이에 따라, 지역 모델의 신뢰도를 향상시킬 수 있다. 더욱이, 본 발명의 지역 모델은 단순히 부모의 선호만으로 고려한 것이 아니라, 아이 및 부모 양자 모두의 선호도를 모두 고려하여 체험활동을 추천할 수 있기 때문에 더 높은 만족도를 제공할 수 있다. According to the present invention, it is possible to generate a regional model by learning an artificial neural network (machine learning/deep learning) through massive learning data by uniting a plurality of local devices and a global server. Accordingly, the reliability of the regional model can be improved. Moreover, the regional model of the present invention can provide higher satisfaction because it is possible to recommend experiential activities in consideration of the preferences of both the child and the parent, rather than simply considering the preferences of the parents.

도 1은 본 발명의 실시예에 따른 인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 시스템의 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 전역서버의 구성을 설명하기 위한 도면이다.
도 3은 본 발명의 실시예에 따른 지역장치의 구성에 대해서 설명하기 위한 블록도이다.
도 4 및 도 5는 본 발명의 실시예에 따른 학습 모델을 설명하기 위한 도면이다.
도 6은 본 발명의 실시예에 따른 인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 추가적인 실시예에 따른 인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 방법을 설명하기 위한 흐름도이다.
1 is a diagram for explaining the configuration of a system for recommending experiential activities in consideration of the preferences of both children and parents based on an artificial neural network according to an embodiment of the present invention.
2 is a diagram for explaining the configuration of a global server according to an embodiment of the present invention.
3 is a block diagram for explaining the configuration of a local device according to an embodiment of the present invention.
4 and 5 are diagrams for explaining a learning model according to an embodiment of the present invention.
6 is a flowchart illustrating a method for recommending experiential activities in consideration of the preferences of both children and parents based on an artificial neural network according to an embodiment of the present invention.
7 is a flowchart illustrating a method for recommending experiential activities in consideration of the preferences of both children and parents based on an artificial neural network according to an additional embodiment of the present invention.

본 발명의 상세한 설명에 앞서, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. Prior to the detailed description of the present invention, the terms or words used in the present specification and claims described below should not be construed as being limited to their ordinary or dictionary meanings, and the inventors should develop their own inventions in the best way. It should be interpreted as meaning and concept consistent with the technical idea of the present invention based on the principle that it can be appropriately defined as a concept of a term for explanation. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are only the most preferred embodiments of the present invention, and do not represent all the technical spirit of the present invention, so various equivalents that can be substituted for them at the time of the present application It should be understood that there may be water and variations.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음을 유의해야 한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 마찬가지의 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 또는 개략적으로 도시되었으며, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In this case, it should be noted that in the accompanying drawings, the same components are denoted by the same reference numerals as much as possible. In addition, detailed descriptions of well-known functions and configurations that may obscure the gist of the present invention will be omitted. For the same reason, some components are exaggerated, omitted, or schematically illustrated in the accompanying drawings, and the size of each component does not fully reflect the actual size.

본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시 예를 참조하여 본 발명을 더 상세하게 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다. In order to clarify the characteristics and advantages of the problem solving means of the present invention, the present invention will be described in more detail with reference to specific embodiments of the present invention shown in the accompanying drawings. However, detailed descriptions of well-known functions or configurations that may obscure the gist of the present invention in the following description and accompanying drawings will be omitted. Also, it should be noted that, throughout the drawings, the same components are denoted by the same reference numerals as much as possible.

이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. The terms or words used in the following description and drawings should not be construed as being limited to conventional or dictionary meanings, and the inventor may appropriately define the concept of terms for describing his invention in the best way. Based on the principle that there is, it should be interpreted as meaning and concept consistent with the technical idea of the present invention. Accordingly, the embodiments described in this specification and the configurations shown in the drawings are only the most preferred embodiment of the present invention, and do not represent all of the technical spirit of the present invention. It should be understood that there may be equivalents and variations.

또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다. In addition, terms including ordinal numbers such as 1st, 2nd, etc. are used to describe various components, and are used only for the purpose of distinguishing one component from other components, and to limit the components. not used For example, without departing from the scope of the present invention, the second component may be referred to as the first component, and similarly, the first component may also be referred to as the second component.

더하여, 어떤 구성요소가 다른 구성요소에"연결되어" 있다거나"접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다. In addition, when an element is referred to as being “connected” or “connected” to another element, it means that it is logically or physically connected or can be connected. In other words, it should be understood that a component may be directly connected or connected to another component, but another component may exist in between, and may be indirectly connected or connected.

또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는"포함 한다" 또는"가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. In addition, the terms used herein are used only to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In addition, terms such as "comprises" or "have" described in the present specification are intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist, but one or the It should be understood that the above does not preclude the possibility of the existence or addition of other features or numbers, steps, operations, components, parts, or combinations thereof.

또한, 명세서에 기재된"…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 프로그램 또는 하드웨어 및 프로그램의 결합으로 구현될 수 있다. In addition, terms such as “…unit”, “…group”, and “module” described in the specification mean a unit that processes at least one function or operation, which may be implemented as hardware or a program or a combination of hardware and program. have.

또한, "일(a 또는an)", "하나(one)", "그(the)" 및 유사어는 본 발명을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다. Also, "a or an", "one", "the" and similar terms are otherwise indicated herein in the context of describing the invention (especially in the context of the following claims). or may be used in a sense including both the singular and the plural unless clearly contradicted by context.

아울러, 본 발명의 범위 내의 실시 예들은 컴퓨터 실행가능 명령어 또는 컴퓨터 판독가능 매체에 저장된 데이터 구조를 가지거나 전달하는 컴퓨터 판독가능 매체를 포함한다. 이러한 컴퓨터 판독가능 매체는, 범용 또는 특수 목적의 컴퓨터 시스템에 의해 액세스 가능한 임의의 이용 가능한 매체일 수 있다. 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EPROM, CD-ROM 또는 기타 광디스크 저장장치, 자기 디스크 저장장치 또는 기타 자기 저장장치, 또는 컴퓨터 실행가능 명령어, 컴퓨터 판독가능 명령어 또는 데이터 구조의 형태로 된 소정의 프로그램 코드 수단을 저장하거나 전달하는 데에 이용될 수 있고, 범용 또는 특수 목적 컴퓨터 시스템에 의해 액세스 될 수 있는 임의의 기타 매체와 같은 물리적 저장 매체를 포함할 수 있지만, 이에 한정되지 않는다. In addition, embodiments within the scope of the present invention include computer-readable media having or carrying computer-executable instructions or data structures stored in the computer-readable media. Such computer readable media can be any available media that can be accessed by a general purpose or special purpose computer system. By way of example, such computer-readable media may be in the form of RAM, ROM, EPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage, or computer-executable instructions, computer-readable instructions, or data structures. It may include, but is not limited to, a physical storage medium such as any other medium that can be used to store or convey any program code means that has been created and that can be accessed by a general purpose or special purpose computer system.

이하의 설명 및 특허 청구 범위에서, "네트워크"는 컴퓨터 시스템들 및/또는 모듈들 간의 전자 데이터를 전송할 수 있게 하는 하나 이상의 데이터 링크로서 정의된다. 정보가 네트워크 또는 다른(유선, 무선, 또는 유선 또는 무선의 조합인) 통신 접속을 통하여 컴퓨터 시스템에 전송되거나 제공될 때, 이 접속은 컴퓨터-판독가능매체로서 이해될 수 있다. 컴퓨터 판독가능 명령어는, 예를 들면, 범용 컴퓨터 시스템 또는 특수 목적 컴퓨터 시스템이 특정 기능 또는 기능의 그룹을 수행하도록 하는 명령어 및 데이터를 포함한다. 컴퓨터 실행가능 명령어는, 예를 들면, 어셈블리어, 또는 심지어는 소스코드와 같은 이진, 중간 포맷 명령어일 수 있다. In the following description and claims, a “network” is defined as one or more data links that enable the transfer of electronic data between computer systems and/or modules. When information is transmitted or provided to a computer system over a network or other (wired, wireless, or a combination of wired or wireless) communication connection, the connection may be understood as a computer-readable medium. Computer readable instructions include, for example, instructions and data that cause a general purpose computer system or special purpose computer system to perform a particular function or group of functions. The computer executable instructions may be, for example, binary, intermediate format instructions such as assembly language, or even source code.

아울러, 본 발명은 퍼스널 컴퓨터, 랩탑 컴퓨터, 핸드헬드 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 가전제품(programmable consumer electronics), 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 모바일 전화, PDA, 페이저(pager) 등을 포함하는 다양한 유형의 컴퓨터 시스템 구성을 가지는 네트워크 컴퓨팅 환경에서, 상기 컴퓨터 시스템들을 대상으로 광고를 제공하는데 적용될 수 있다. 본 발명은 또한 네트워크를 통해 유선 데이터 링크, 무선 데이터 링크, 또는 유선 및 무선 데이터 링크의 조합으로 링크된 로컬 및 원격 컴퓨터 시스템 모두가 태스크를 수행하는 분산형 시스템 환경에서 실행될 수 있다. 분산형 시스템 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치에 위치될 수 있다. In addition, the present invention relates to personal computers, laptop computers, handheld devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, mobile telephones, PDAs, pagers. In a network computing environment having various types of computer system configurations including (pager) and the like, it may be applied to providing advertisements to the computer systems. The invention may also be practiced in distributed system environments where both local and remote computer systems linked through a network by a wired data link, a wireless data link, or a combination of wired and wireless data links perform tasks. In a distributed system environment, program modules may be located in local and remote memory storage devices.

먼저, 본 발명의 실시예에 따른 인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 시스템에 대해서 설명하기로 한다. 도 1은 본 발명의 실시예에 따른 인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 시스템의 구성을 설명하기 위한 도면이다. 도 1을 참조하면, 본 발명의 실시예에 따른 체험활동 추천을 위한 시스템(이하, '추천시스템'으로 축약함)은 전역서버(100), 복수의 지역장치(200) 및 복수의 사용자장치(10)를 포함한다. 전역서버(100), 복수의 지역장치(200) 및 복수의 사용자장치(10)는 상호간에 데이터를 송수신할 수 있다. First, a system for recommending experiential activities in consideration of the preferences of both children and parents based on an artificial neural network according to an embodiment of the present invention will be described. 1 is a diagram for explaining the configuration of a system for recommending experiential activities in consideration of the preferences of both children and parents based on an artificial neural network according to an embodiment of the present invention. Referring to FIG. 1 , a system for experiential activity recommendation (hereinafter, abbreviated as 'recommendation system') according to an embodiment of the present invention includes a global server 100, a plurality of local devices 200, and a plurality of user devices ( 10) is included. The global server 100 , the plurality of local devices 200 , and the plurality of user devices 10 may transmit/receive data to and from each other.

전역서버(100)는 대표적으로, 클라우드 서버를 예시할 수 있다. 전역서버(100)는 복수의 지역장치(200)로부터 학습 데이터를 수신하여 수신된 학습 데이터를 이용하여 전역서버(100)에서 실행되는 학습 모델(machine learning/deep learning model)인 전역모델을 생성 혹은 갱신하거나, 복수의 지역장치(200) 중 적어도 하나로부터 해당 지역장치(200)에서 실행되는 학습 모델인 지역모델의 지역 파라미터를 수신하여 전역모델의 전역 파라미터를 지역 파라미터로 갱신할 수 있다. 또한, 전역서버(100)는 전역 파라미터가 갱신되면, 갱신된 전역 파라미터를 복수의 지역서버(200)에 제공하여 지역서버(200)가 지역모델의 지역 파라미터를 갱신할 수 있도록 한다. The global server 100 may be a typical example of a cloud server. The global server 100 receives learning data from a plurality of local devices 200 and uses the received learning data to generate or Alternatively, the global parameter of the global model may be updated as the local parameter by receiving the local parameter of the local model that is the learning model executed in the corresponding local device 200 from at least one of the plurality of local devices 200 . In addition, when the global parameter is updated, the global server 100 provides the updated global parameter to the plurality of local servers 200 so that the local server 200 can update the local parameter of the local model.

복수의 지역장치(200)는 물리적으로 지역이 구분되거나, 논리적으로 구분되는 지역에 위치하는 장치들이다. The plurality of local devices 200 are devices located in regions that are physically divided or logically divided.

지역장치(200)는 기본적으로, 부모 및 아이에게 선호를 조사하는 설문을 제공하고, 제공된 설문에 대한 응답을 입력받고, 입력받은 응답을 기초로 체험활동을 추천한다. 이러한 체험활동의 추천을 위해 복수의 지역장치(200)는 공히 전역모델과 동일한 인공신경망을 이용하여 학습 모델인 지역모델을 생성하고, 운용한다. 이러한 점에서 지역장치(200)는 엔드포인트(end-point)가 될 수 있다. 지역장치(200)는 바람직하게, 워크스테이션을 예시할 수 있다. 하지만, 일반적인 퍼스널 컴퓨터 혹은 노트북 등이 지역장치(200)로 사용될 수도 있다. 지역장치(200)는 자신이 위치한 지역에서 얻을 수 있는 학습 데이터를 직접 혹은 사용자장치(10)를 통해 수집하고, 수집된 학습 데이터를 이용하여 학습 모델(machine learning/deep learning)을 수행하여 지역모델을 생성할 수 있다. 또한, 지역장치(200)는 새로 학습 데이터가 추가되면, 추가된 학습 데이터를 이용하여 추가로 학습을 수행함으로써 지역모델의 지역 파라미터를 갱신할 수 있다. 게다가, 지역장치(200)는 갱신된 전역서버(100)로부터 갱신된 전역 파라미터를 수신 받을 수 있다. 그러면, 지역장치(200)는 지역모델의 지역 파라미터를 전역 파라미터로 갱신할 수 있다. The local device 200 basically provides a questionnaire for researching preferences to parents and children, receives a response to the provided questionnaire, and recommends an experience activity based on the received response. For the recommendation of these experiential activities, the plurality of local devices 200 both use the same artificial neural network as the global model to create and operate a local model, which is a learning model. In this regard, the local device 200 may be an end-point. The local device 200 may preferably exemplify a workstation. However, a general personal computer or notebook computer may be used as the local device 200 . The local device 200 collects learning data that can be obtained in the region where it is located directly or through the user device 10, and performs a learning model (machine learning/deep learning) using the collected learning data to model the local model. can create Also, when new learning data is added, the local apparatus 200 may update the local parameters of the local model by additionally performing learning using the added learning data. In addition, the local device 200 may receive the updated global parameter from the updated global server 100 . Then, the local device 200 may update the local parameter of the local model with the global parameter.

사용자장치(10)는 사용자, 즉, 부모 및 아이가 사용하는 장치이며, 지역장치(200)에 접속하여 지역장치(200)가 제공하는 선호를 조사하는 설문, 혹은 체험활동에 대한 만족도를 조사하는 설문 등에 대한 응답을 입력할 수 있다. 또한, 사용자장치(10)는 선호를 조사하는 설문에 대한 응답을 입력한 후, 그 응답을 기초로 추천되는 체험활동에 대한 정보를 수신할 수 있다. 사용자장치(10)는 대표적으로, 노트북, 퍼스널컴퓨터 등을 예시할 수 있다. 하지만, 사용자장치(10)를 이에 한정하는 것은 아니다. 사용자장치(10)는 모든 정보통신기기, 멀티미디어 단말기, 유선 단말기, 고정형 단말기 및 IP(Internet Protocol) 단말기 등의 다양한 단말기에 적용될 수 있다. 예컨대, 사용자장치(10)는 휴대폰, PMP(Portable MultimediaPlayer), MID(Mobile Internet Device), 스마트폰(Smart Phone), 태블릿 PC, 패블릿 PC 및 정보통신 기기 등과 같은 다양한 이동통신 사양을 갖는 모바일(Mobile) 단말기일 수도 있다. The user device 10 is a device used by a user, that is, a parent and a child, and connects to the local device 200 to investigate the preference provided by the local device 200, or to survey satisfaction with experiential activities. You can enter responses to questions and the like. In addition, the user device 10 may receive information on experiential activities recommended based on the response after inputting a response to a questionnaire for researching preferences. The user device 10 may be, for example, a notebook computer or a personal computer. However, the user device 10 is not limited thereto. The user device 10 may be applied to various terminals such as all information and communication devices, multimedia terminals, wired terminals, fixed terminals, and Internet Protocol (IP) terminals. For example, the user device 10 is a mobile device having various mobile communication specifications such as a mobile phone, a Portable Multimedia Player (PMP), a Mobile Internet Device (MID), a smart phone, a tablet PC, a phablet PC, and an information communication device. Mobile) may be a terminal.

그러면, 보다 상세히 본 발명의 실시예에 따른 전역서버(100)의 구성에 대해서 설명하기로 한다. 도 2는 본 발명의 실시예에 따른 전역서버의 구성을 설명하기 위한 도면이다. 도 2를 참조하면, 전역서버(100)는 통신모듈(110), 저장모듈(120) 및 제어모듈(130)을 포함한다. Then, the configuration of the global server 100 according to the embodiment of the present invention will be described in more detail. 2 is a diagram for explaining the configuration of a global server according to an embodiment of the present invention. Referring to FIG. 2 , the global server 100 includes a communication module 110 , a storage module 120 , and a control module 130 .

통신모듈(110)은 지역장치(200)와 통신을 위한 것이다. 통신모듈(110)은 지역장치(200)와 필요한 정보를 포함하는 데이터를 교환하기 위한 통신을 수행한다. 이러한 데이터는 학습 데이터, 지역 파라미터, 전역 파라미터 등을 포함한다. 통신모듈(110)은 제어모듈(130)로부터 지역장치(200)로 전송하기 위한 데이터, 예컨대, 전역 파라미터를 포함하는 데이터를 전달 받고, 전달받은 데이터를 패킷으로 구성하여 전송한다. 또한, 통신모듈(110)은 지역장치(200)로부터 수신되는 패킷으로부터 학습 데이터, 지역 파라미터 등을 추출하여, 추출된 보안 요청 메시지를 제어모듈(130)로 전달한다. The communication module 110 is for communication with the local device 200 . The communication module 110 performs communication for exchanging data including necessary information with the local device 200 . Such data includes training data, local parameters, global parameters, and the like. The communication module 110 receives data to be transmitted from the control module 130 to the local device 200, for example, data including global parameters, and configures the received data into packets and transmits the received data. In addition, the communication module 110 extracts learning data, local parameters, etc. from the packet received from the local device 200 , and transmits the extracted security request message to the control module 130 .

저장모듈(120)은 전역서버(100)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행하며, 프로그램 영역과 데이터 영역으로 구분될 수 있다. 프로그램 영역은 전역서버(100)의 전반적인 동작을 제어하는 프로그램 및 전역서버(100)를 부팅시키는 운영체제(OS, Operating System), 학습 모델인 전역모델 등을 저장할 수 있다. 데이터 영역은 전역서버(100)의 운영에 따라 발생하는 데이터 및 전역서버(100)의 운영에 필요한 데이터가 저장되는 영역이다. 예컨대, 저장모듈(120)은 지역장치(200)에 대한 정보 및 지역장치(200)가 전송한 지역 파라미터 등을 저장할 수 있다. 저장모듈(120)에 저장되는 각 종 데이터는 사용자의 조작에 따라, 삭제, 변경, 추가될 수 있다. The storage module 120 serves to store programs and data necessary for the operation of the global server 100 , and may be divided into a program area and a data area. The program area may store a program for controlling the overall operation of the global server 100 , an operating system (OS) for booting the global server 100 , a global model as a learning model, and the like. The data area is an area in which data generated according to the operation of the global server 100 and data necessary for the operation of the global server 100 are stored. For example, the storage module 120 may store information about the local device 200 and a local parameter transmitted by the local device 200 . Each type of data stored in the storage module 120 may be deleted, changed, or added according to a user's operation.

제어모듈(130)은 전역서버(100)의 전반적인 동작 및 전역서버(100)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 이러한 제어모듈(130)은 CPU(Central Processing Unit: CPU), GPU(Graphics Processing Unit), APU(Accelerated Processing Unit) 등이 될 수 있다. 특히, 제어모듈(130)은 저장모듈(120)에 저장된 전역모델을 로드시킨 후, 실행시킬 수 있다. 이러한 제어모듈(130)의 동작에 대해서는 아래에서 더 상세하게 설명하기로 한다. The control module 130 may control the overall operation of the global server 100 and signal flow between internal blocks of the global server 100 and perform a data processing function of processing data. The control module 130 may be a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), or the like. In particular, the control module 130 may load the global model stored in the storage module 120 and then execute it. The operation of the control module 130 will be described in more detail below.

다음으로, 본 발명의 실시예에 따른 지역장치(200)의 구성에 대해서 설명하기로 한다. 도 3은 본 발명의 실시예에 따른 지역장치의 구성에 대해서 설명하기 위한 블록도이다. 도 3을 참조하면, 본 발명의 실시예에 따른 지역장치(200)는 통신부(210), 저장부(220) 및 제어부(230)를 포함한다. Next, the configuration of the local device 200 according to the embodiment of the present invention will be described. 3 is a block diagram for explaining the configuration of a local device according to an embodiment of the present invention. Referring to FIG. 3 , the local device 200 according to an embodiment of the present invention includes a communication unit 210 , a storage unit 220 , and a control unit 230 .

통신부(210)는 전역서버(100) 및 사용자장치(10)를 비롯한 다른 장치와 통신을 위한 것으로, 다양한 통신 연결 방식을 통해 통신을 수행한다. 이러한 통신부(210)는 다양한 통신 연결 방식의 통신 기능 중 어느 하나를 선택하여 통신할 수 있다. 이러한 통신부(210)는 하나의 모듈 혹은 복수의 모듈로 구현될 수도 있다. 예컨대, 통신부(210)는 WCDMA, LTE, LTE-A 등의 표준에 따라 기지국을 통해 네트워크에 접속하는 광대역이동통신 방식, Wi-Fi(wireless fidelity)를 이용하는 WLAN(Wireless Local Area Network) 방식에 따라 접속포인트(AP: Access Point)를 통해 네트워크에 접속하여 통신을 수행하는 무선근거리통신 방식, 예컨대, IrDA, 블루투스(Bluetooth), RoLa 등의 방식을 통해 기기와 기기 간에 직접 연결되는 통신 등을 이용할 수 있다. 통신부(210)는 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF송신기와, 수신되는 신호를 저 잡음 증폭하고 주파수를 하강 변환하는 RF 수신기 등으로 구성될 수 있다. 제어부(230)로부터 전달 받은 데이터, 예컨대, 학습 데이터, 지역 파라미터 등을 무선 신호로 변환하여 무선 채널을 통해 전송할 수 있다. 또한, 통신부(210)는 무선 채널을 통해 수신된 무선 신호에서 데이터, 예컨대, 전역 파라미터 등을 추출하여 제어부(230)로 전달할 수 있다. The communication unit 210 is for communication with other devices including the global server 100 and the user device 10, and performs communication through various communication connection methods. The communication unit 210 may select and communicate with any one of communication functions of various communication connection methods. The communication unit 210 may be implemented as one module or a plurality of modules. For example, the communication unit 210 is a broadband mobile communication method for accessing a network through a base station according to standards such as WCDMA, LTE, LTE-A, and WLAN (Wireless Local Area Network) using Wi-Fi (wireless fidelity) according to the method A wireless short-distance communication method that connects to the network through an access point (AP) and performs communication, for example, communication directly connected between a device and a device through methods such as IrDA, Bluetooth, RoLa, etc. have. The communication unit 210 may include an RF transmitter for up-converting and amplifying a frequency of a transmitted signal, and an RF receiver for low-noise amplifying a received signal and down-converting a frequency of the received signal. Data received from the controller 230, for example, learning data, regional parameters, etc. may be converted into a wireless signal and transmitted through a wireless channel. Also, the communication unit 210 may extract data, eg, global parameters, from a wireless signal received through a wireless channel and transmit it to the control unit 230 .

저장부(220)은 지역장치(200)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행하며, 프로그램 영역과 데이터 영역으로 구분될 수 있다. 프로그램 영역은 지역장치(200)의 전반적인 동작을 제어하는 프로그램 및 지역장치(200)을 부팅시키는 운영체제(OS, Operating System), 지역장치(200)에서 실행되는 지역모델 등을 저장할 수 있다. 데이터 영역은 지역장치(200)의 사용에 따라 발생하는 데이터가 저장되는 영역이다. 또한, 저장부(220)는 지역장치(200)의 동작에 따라 발생되는 각 종 데이터 등을 저장할 수 있다. 예컨대, 저장부(220)는 수집된 학습 데이터, 지역모델의 생성 혹은 갱신에 따른 지역 파라미터, 및 전역서버(100)로부터 수신되는 전역 파라미터 등을 저장할 수 있다. The storage unit 220 serves to store programs and data necessary for the operation of the local device 200 , and may be divided into a program area and a data area. The program area may store a program for controlling the overall operation of the local device 200 , an operating system (OS) for booting the local device 200 , a local model executed in the local device 200 , and the like. The data area is an area in which data generated according to the use of the local device 200 is stored. Also, the storage 220 may store various types of data generated according to the operation of the local device 200 . For example, the storage 220 may store the collected learning data, local parameters according to generation or update of the local model, and global parameters received from the global server 100 .

제어부(230)는 지역장치(200)의 전반적인 동작 및 지역장치(200)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 이러한 제어부(230)는 CPU(Central Processing Unit: CPU), GPU(Graphics Processing Unit), APU(Accelerated Processing Unit) 등이 될 수 있다. 특히, 제어부(230)는 저장부(220)에 저장된 지역모델을 로드시킨 후, 실행시킬 수 있다. 이러한 제어부(230)의 동작에 대해서는 아래에서 더 상세하게 설명하기로 한다. The controller 230 may control the overall operation of the local device 200 and the signal flow between internal blocks of the local device 200 , and may perform a data processing function of processing data. The controller 230 may be a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), or the like. In particular, the control unit 230 may load the local model stored in the storage unit 220 and then execute it. The operation of the control unit 230 will be described in more detail below.

다음으로, 본 발명의 실시예에 따른 지역모델 혹은 전역모델인 학습 모델에 대해 설명하기로 한다. 도 4 및 도 5는 본 발명의 실시예에 따른 학습 모델을 설명하기 위한 도면이다. Next, a learning model that is a regional model or a global model according to an embodiment of the present invention will be described. 4 and 5 are diagrams for explaining a learning model according to an embodiment of the present invention.

도 4에 예시적인 인공신경망이 도시되었다. 학습 모델은 인공신경망을 학습(machine learning/deep learning)시켜 생성된다. 이러한 인공신경망은 복수의 계층으로 이루어지며, 이러한 복수의 계층은 입력 계층(IL: Input Layer), 적어도 하나의 은닉 계층(HL: Hidden Layer, HL1 ~ HLk) 및 출력 계층(OL: Output Layer)을 포함한다. 4 shows an exemplary artificial neural network. A learning model is created by learning an artificial neural network (machine learning/deep learning). Such an artificial neural network consists of a plurality of layers, and the plurality of layers includes an input layer (IL: Input Layer), at least one hidden layer (HL: Hidden Layer, HL1 to HLk), and an output layer (OL: Output Layer). include

또한, 인공신경망의 복수의 계층 각각은 적어도 하나의 노드를 포함한다. 도 4에 예시된 바와 같이, 입력 계층(IL)은 n개의 노드(i1 ~ in)를 포함하며, 출력 계층(OL)은 t개의 노드(o1 ~ ot)를 포함할 수 있다. 또한, 은닉 계층(HL) 중 제1 은닉계층(HL1)은 a개의 노드(h11 ~ h1a)를 포함하고, 제k 은닉계층(HLk)은 c개의 노드(hk1 ~ hkc)를 포함할 수 있다. In addition, each of the plurality of layers of the artificial neural network includes at least one node. As illustrated in FIG. 4 , the input layer IL may include n nodes i1 to in, and the output layer OL may include t nodes o1 to ot. Also, among the hidden layers HL, the first hidden layer HL1 may include a nodes h11 to h1a, and the kth hidden layer HLk may include c nodes hk1 to hkc.

도 4를 참조하면, 하나의 노드는 연산을 수행한다. 특히, 서로 다른 계층의 노드는 학습모델의 파라미터인 가중치(W: weight)를 가지는 채널(점선으로 표시)로 연결된다. 다른 말로, 어느 하나의 노드의 연산 결과는 가중치가 적용되어 다음 계층 노드의 입력이 된다. 이러한 연결 관계에 대해 도 4를 참조하여 설명하기로 한다. 도 4에 예시적으로 인공신경망의 어느 하나의 노드(D)를 도시하였다. 노드(D)는 입력된 신호 x=[x1, x2, … , xn]에 가중치 w=[w1, w2, … , wn]를 적용한 후, 그 결과에 함수 F를 취한다. 여기서, 함수 F는 활성화 함수(activation function) 또는 전달함수(transfer function)라고 한다. 이러한 활성화함수는 시그모이드(Sigmoid), 하이퍼볼릭탄젠트(tanh: Hyperbolic tangent), ELU(Exponential Linear Unit), ReLU(Rectified Linear Unit), Leakly ReLU, Maxout, Minout, Softmax 등을 예시할 수 있다. Referring to FIG. 4 , one node performs an operation. In particular, nodes of different layers are connected by channels (indicated by dotted lines) having a weight (W: weight), which is a parameter of the learning model. In other words, the calculation result of one node is weighted and becomes the input of the next layer node. Such a connection relationship will be described with reference to FIG. 4 . 4 exemplarily shows any one node (D) of the artificial neural network. Node D is the input signal x=[x1, x2, ... , xn] with weight w=[w1, w2, … , wn], and take a function F on the result. Here, the function F is called an activation function or a transfer function. Such an activation function may be exemplified by Sigmoid, Hyperbolic tangent (tanh), Exponential Linear Unit (ELU), Rectified Linear Unit (ReLU), Leakly ReLU, Maxout, Minout, Softmax, and the like.

한편, 입력이 동일한 경우에도, 그 출력은 가중치(W)에 따라 다른 값이 될 수 있다. 즉, 각 노드의 출력은 다음의 수학식 1과 같다. On the other hand, even when the input is the same, the output may have a different value according to the weight (W). That is, the output of each node is as shown in Equation 1 below.

Figure pat00004
Figure pat00004

설명되지 않은 학습 모델의 파라미터

Figure pat00005
는 바이어스이며, 이러한 바이어스는 수학식 1에서
Figure pat00006
의 값이 바이어스 보다 작을 때 해당 노드가 활성화되지 않도록 하는 역할을 한다. Unexplained parameters of the learning model
Figure pat00005
is the bias, and this bias is in Equation 1
Figure pat00006
It serves to prevent the corresponding node from being activated when the value of is smaller than the bias.

예를 들면, 어느 하나의 노드(D)의 이전 계층의 노드가 3개라고 가정한다. 이에 따라, 해당 노드에 대해 3개의 입력(n=3) X1, X2, X3과 3개의 가중치 W1, W2, W3이 존재한다. For example, it is assumed that the number of nodes in the previous layer of any one node D is three. Accordingly, there are three inputs (n=3) X1, X2, X3 and three weights W1, W2, and W3 for the corresponding node.

노드(D)는 3개의 입력 X1, X2, X3에 대응하는 가중치 W1, W2, W3을 곱한 값을 입력받고, 모두 합산한 후, 합산된 값을 전달 함수에 대입하여 출력을 산출한다. 구체적으로, 입력 [x1, x2, x3] = 0.5, -0.3, 0이라고 가정하고, 가중치 [W1, W2, W3] = 4, 5, 2라고 가정한다. 또한, 설명의 편의를 위하여 활성화 함수는 'sgn()'이라고 가정하면, 다음과 같이 출력값이 산출된다. The node D receives the values obtained by multiplying the weights W1, W2, and W3 corresponding to the three inputs X1, X2, and X3, sums them all up, and substitutes the summed value into the transfer function to calculate an output. Specifically, it is assumed that the inputs [x1, x2, x3] = 0.5, -0.3, 0, and the weights [W1, W2, W3] = 4, 5, 2. Also, for convenience of explanation, assuming that the activation function is 'sgn()', the output value is calculated as follows.

X1 × W1 = 0.5 × 4 = 2 X1 × W1 = 0.5 × 4 = 2

X2 × W2 = - 0.3 × 5 = -1.5X2 × W2 = - 0.3 × 5 = -1.5

X3 × W3 = 0 × 2 = 0 X3 × W3 = 0 × 2 = 0

2 + (-1.5) + 0 = 0.5 2 + (-1.5) + 0 = 0.5

sgn(0.5) = 1 sgn(0.5) = 1

이와 같이, 심층신경망(200)의 어느 한 계층의 어느 하나의 노드는 이전 계층의 노드로부터의 입력에 가중치를 적용한 값을 입력받고, 이를 합산하여 활성화 함수를 취하고, 이러한 결과인 출력값을 출력한다. 출력값은 다음 계층의 입력이거나, 최종적인 출력값이 될 수 있다. As such, any one node of any one layer of the deep neural network 200 receives a value obtained by applying a weight to an input from a node of a previous layer, sums them up, takes an activation function, and outputs an output value that is the result. The output value may be the input of the next layer or the final output value.

본 발명의 실시예에서 학습은 전술한 파라미터인 가중치 및 바이어스의 값을 정하는 것이 될 수 있다. 이러한 학습 방법에 대해서는 아래에서 더 상세하게 설명될 것이다. In an embodiment of the present invention, learning may be to determine the values of the above-described parameters, weight and bias. These learning methods will be described in more detail below.

다음으로, 본 발명의 실시예에 따른 인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 방법에 대해서 설명하기로 한다. 도 6은 본 발명의 실시예에 따른 인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 방법을 설명하기 위한 흐름도이다. 도 7은 본 발명의 추가적인 실시예에 따른 인공신경망 기반의 아이 및 부모 모두의 선호를 고려한 체험활동 추천을 위한 방법을 설명하기 위한 흐름도이다. Next, a method for recommending experiential activities in consideration of the preferences of both children and parents based on an artificial neural network according to an embodiment of the present invention will be described. 6 is a flowchart illustrating a method for recommending experiential activities in consideration of the preferences of both children and parents based on an artificial neural network according to an embodiment of the present invention. 7 is a flowchart illustrating a method for recommending experiential activities in consideration of the preferences of both children and parents based on an artificial neural network according to an additional embodiment of the present invention.

도 1 및 도 7을 참조하면, 서로 다른 복수의 지역장치(200)는 공히 S100 단계에서 복수의 계층을 포함하며, 복수의 계층 간을 연결하는 파라미터가 적용되는 복수의 연산을 수행하는 동일한 구성의 인공신경망을 마련한다. 1 and 7 , a plurality of different local devices 200 both include a plurality of layers in step S100 and have the same configuration for performing a plurality of operations to which parameters connecting between the plurality of layers are applied. Create an artificial neural network.

그런 다음, 서로 다른 복수의 지역장치(200) 각각은 S110 단계에서 자신이 위치하는 지역에서 서로 다른 학습 데이터를 수집한다. 여기서, 학습 데이터는 선호를 조사하는 설문에 대한 아이 및 부모 각각의 응답과, 상기 응답을 기초로 추천되어 아이가 체험한 체험활동인 레이블을 포함한다. 특히, 학습 데이터는 레이블의 체험활동에 대한 만족도를 조사하는 설문에 대해 아이 및 부모 양자 모두로부터 기 설정된 수치 이상의 만족도를 나타내는 응답을 얻은 경우, 실험군(positive)으로 분류되고, 아이 및 부모 중 적어도 한 측으로부터 기 설정된 수치 미만의 만족도를 나타내는 응답을 얻은 경우, 대조군(negative)으로 분류된다. Then, each of the plurality of different local devices 200 collects different learning data in the region in which they are located in step S110. Here, the learning data includes each response of the child and the parent to the questionnaire surveying preferences, and a label that is recommended based on the response and is an experiential activity experienced by the child. In particular, the learning data is classified into an experimental group (positive) when a response indicating satisfaction above a preset value is obtained from both the child and the parent to the questionnaire surveying the satisfaction with the experiential activity of the label, and at least one of the child and the parent When a response indicating satisfaction less than a preset value is obtained from the side, it is classified as a negative.

서로 다른 복수의 지역장치(200) 각각은 S120 단계에서 자신이 수집한 학습 데이터를 이용하여 앞서 마련된 인공신경망에 대해 학습을 수행함으로써, 아이 및 부모 각각에 대한 설문에 대한 응답을 기초로 체험활동을 추천할 수 있도록, 학습된 지역 파라미터를 가지는 지역모델을 생성한다. Each of the plurality of different local devices 200 performs learning on the previously prepared artificial neural network using the learning data collected by themselves in step S120, thereby performing experiential activities based on responses to questionnaires for children and parents, respectively. To make a recommendation, we create a local model with the learned local parameters.

이때, 지역장치(200)가 인공신경망에 학습 데이터의 선호를 조사하는 설문에 대한 아이 및 부모 각각의 응답을 입력하면, 인공신경망은 입력된 응답에 대해 복수의 계층 간을 연결하는 파라미터가 적용되는 복수의 연산을 수행하여 출력값을 산출한다. 여기서, 출력값은 복수의 체험활동 각각에 대해 부모 및 아이 양자 모두가 만족할 확률을 나타낸다. 그러면, 지역장치(200)는 손실함수를 통해 도출되는 출력값과 레이블의 체험활동(positive/negative)과의 차이를 나타내는 손실이 최소가 되도록 인공신경망의 파라미터, 즉, 가중치 및 바이어스를 조절함으로써 학습된 지역 파라미터를 가지는 지역모델을 생성한다. At this time, when the local device 200 inputs each response of a child and a parent to a questionnaire investigating the preference of learning data to the artificial neural network, the artificial neural network applies parameters connecting a plurality of layers to the input response. An output value is calculated by performing a plurality of operations. Here, the output value represents the probability that both the parent and the child are satisfied with each of the plurality of experiential activities. Then, the local device 200 adjusts the parameters of the artificial neural network, that is, the weight and the bias, so that the loss representing the difference between the output value derived through the loss function and the experiential activity (positive/negative) of the label is minimized. Create a local model with local parameters.

그런 다음, 서로 다른 복수의 지역장치(200)는 S130 단계에서 서로 다른 학습 데이터를 전역서버(100)로 전달한다. Then, the plurality of different local devices 200 transmit different learning data to the global server 100 in step S130 .

그러면, 전역서버(100)는 S140 단계에서 서로 다른 복수의 학습 데이터를 이용하여 지역장치(200)의 인공신경망과 동일한 구성의 인공신경망에 대한 학습을 수행하여 전역 파라미터를 가지는 전역 모델을 생성한다. Then, in step S140 , the global server 100 generates a global model having global parameters by performing learning on the artificial neural network having the same configuration as the artificial neural network of the local device 200 using a plurality of different learning data.

이때, 전역서버(100) 역시 인공신경망에 학습 데이터의 선호를 조사하는 설문에 대한 아이 및 부모 각각의 응답을 입력하면, 인공신경망은 입력된 응답에 대해 복수의 계층 간을 연결하는 파라미터가 적용되는 복수의 연산을 수행하여 출력값을 산출한다. 여기서, 출력값은 복수의 체험활동 각각에 대해 부모 및 아이 양자 모두가 만족할 확률을 나타낸다. 그러면, 전역서버(100)는 손실함수를 통해 도출되는 출력값과 레이블의 체험활동(positive/negative)과의 차이를 나타내는 손실이 최소가 되도록 인공신경망의 파라미터, 즉, 가중치 및 바이어스를 조절함으로써 학습된 전역 파라미터를 가지는 전역모델을 생성한다. 이처럼, 지역모델은 지역장치(200)의 지역에서 수집된 학습 데이터로만 학습이 이루어지지만, 전역모델은 전역서버(100)가 복수의 서로 다른 지역장치(200)로부터 수신된 복수의 서로 다른 학습 데이터를 이용하여 학습이 이루어진다. At this time, if the global server 100 also inputs each child and parent's responses to a questionnaire investigating the preference of learning data in the artificial neural network, the artificial neural network applies parameters connecting a plurality of layers to the inputted responses. An output value is calculated by performing a plurality of operations. Here, the output value represents the probability that both the parent and the child are satisfied with each of the plurality of experiential activities. Then, the global server 100 adjusts the parameters of the artificial neural network, that is, the weight and bias, so that the loss representing the difference between the output value derived through the loss function and the experiential activity (positive/negative) of the label is minimized. Create a global model with global parameters. As such, the local model is trained only with the learning data collected in the region of the local device 200 , but in the global model, the global server 100 receives a plurality of different learning data from a plurality of different local devices 200 . Learning takes place using

따라서 이러한 경우, 학습 데이터의 양의 불균형을 보상하기 위해, 전역서버(100)는 S150 단계에서 전역 파라미터를 상기 서로 다른 복수의 지역장치(200)에 전달한다. 그러면, 서로 다른 복수의 지역장치(200) 각각은 S160 단계에서 전역 파라미터를 이용하여 지역모델의 지역 파라미터를 갱신한다. 이로써, 지역모델이 갱신된다. Therefore, in this case, in order to compensate for the imbalance in the amount of learning data, the global server 100 transmits the global parameters to the plurality of different local devices 200 in step S150 . Then, each of the plurality of different local devices 200 updates the local parameters of the local model by using the global parameters in step S160. Thereby, the regional model is updated.

이에 따라, 서로 다른 복수의 지역장치(200) 각각은 사용자, 즉, 아이 및 부모 각각으로부터 선호에 대한 조사하는 설문에 대한 응답을 입력받고, 입력된 응답에 대응하여 지역모델을 통해 체험활동을 추천할 수 있다. 또한, 서로 다른 복수의 지역장치(200) 각각은 체험활동이 끝난 아이 및 부모에 대해 만족도를 조사하는 설문에 대한 응답을 획득함으로써, 새로 학습 데이터를 추가할 수 있다. Accordingly, each of the plurality of different local devices 200 receives a response to a questionnaire surveying preferences from each of the user, that is, a child and a parent, and recommends experiential activities through a regional model in response to the inputted response can do. In addition, each of a plurality of different local devices 200 may add new learning data by acquiring a response to a questionnaire surveying the satisfaction of children and parents who have completed the experiential activity.

이에 따라, 도 7을 참조하면, 서로 다른 복수의 지역장치(200) 중 적어도 하나의 지역장치(200)가 S210 단계에서 학습 데이터를 추가하였다고 가정한다. 그러면, 해당하는 지역장치(200)는 S220 단계에서 추가된 학습 데이터를 이용한 학습을 수행하여 지역모델을 갱신할 수 있다. 이러한 지역모델의 갱신은 지역 파라미터의 갱신을 의미한다. Accordingly, referring to FIG. 7 , it is assumed that at least one local device 200 among a plurality of different local devices 200 adds learning data in step S210 . Then, the corresponding local device 200 may update the local model by performing learning using the learning data added in step S220. The update of this local model means the update of local parameters.

이어서, 해당하는 지역장치(200), 즉, 학습 데이터를 추가하고, 지역모델을 갱신한 지역장치(200)는 S230 단계에서 전역서버(100)로 갱신된 지역모델의 갱신된 지역 파라미터를 전달한다. 이때, 학습 데이터를 제공하지 않고, 지역 파라미터만 제공된다는 점에 유의하여야 한다. 앞서, S130 단계의 경우, 초기의 전역모델 생성 시에는 학습 데이터를 제공하였지만, 계속해서 학습 데이터를 전송할 경우, 네트워크 트래픽 부하로 인해 갱신에 상당한 시간이 소요될 수 있다. 따라서 학습된 지역 파라미터만 전송함으로써, 트래픽 부하를 해소할 수 있다. Next, the corresponding local device 200, that is, the local device 200 that has added learning data and updated the local model, transmits the updated local parameters of the local model to the global server 100 in step S230. . In this case, it should be noted that only local parameters are provided, not training data. Previously, in the case of step S130, training data was provided when the global model was initially created, but when the training data is continuously transmitted, it may take a considerable time to update due to the network traffic load. Therefore, by transmitting only the learned local parameters, the traffic load can be relieved.

지역 파라미터를 수신한 전역서버(100)는 S240 단계에서 전달된 지역 파라미터를 순차로 저장할 수 있다. 이어서, 전역서버(100)는 S250 단계에서 순차로 저장된 지역 파라미터를 이용하여 전역서버의 전역 파라미터를 갱신할 수 있다. 이어서, 전역서버(100)는 S260 단계에서 서로 다른 복수의 지역장치(200)로 갱신된 전역모델의 갱신된 전역 파라미터를 전달한다. The global server 100 receiving the local parameters may sequentially store the local parameters delivered in step S240. Subsequently, the global server 100 may update the global parameters of the global server using the sequentially stored local parameters in step S250 . Next, the global server 100 transmits the updated global parameters of the updated global model to a plurality of different local devices 200 in step S260 .

서로 다른 복수의 지역장치(100) 각각은 선택적으로, 전달된 전역 파라미터를 이용하여 지역모델의 지역 파라미터를 갱신할 수 있다. Each of the plurality of different local devices 100 may selectively update the local parameters of the local model using the transmitted global parameters.

이때, 서로 다른 복수의 지역장치(200)는 공히 전역서버(100)로부터 전역 파라미터가 수신될 때 마다 순차로 저장하여 전역 파라미터 집합을 구성한다. 이어서, 서로 다른 복수의 지역장치(200)는 공히 지역모델의 지역 파라미터를 전역 파라미터 집합의 원소의 수만큼 복사하여 지역 파라미터 집합을 구성한다. At this time, each time a global parameter is received from the global server 100, the plurality of different local devices 200 sequentially store it to configure a global parameter set. Subsequently, a plurality of different local devices 200 both copy the local parameters of the local model as many as the number of elements in the global parameter set to configure the local parameter set.

서로 다른 복수의 지역장치(200)는 공히 전역 파라미터 집합 및 지역 파라미터 집합의 모든 원소를 병합하여 크기순으로 나열하고, 나열된 모든 원소를 포함하는 병합 파라미터 집합을 구성한다. A plurality of different local devices 200 both merge all elements of the global parameter set and the local parameter set and list them in order of size, forming a merge parameter set including all the listed elements.

그런 다음, 서로 다른 복수의 지역장치(200)는 공히 다음의 수학식 2에 따라 수정비율(R)을 산출한다. Then, the plurality of different local devices 200 both calculate the correction ratio R according to Equation 2 below.

Figure pat00007
Figure pat00007

수학식 2에서 R은 수정비율이고, i는 지역 파라미터 집합의 원소의 인덱스이고, j는 전역 파라미터 집합의 원소의 인덱스이고, k는 병합 파라미터 집합의 원소의 인덱스이다. 또한, r은 전역 파라미터를 수신한 횟수의 인덱스이고, 상기 N은 전역 파라미터 집합의 원소의 수이다. 그리고

Figure pat00008
는 병합 파라미터 집합의 표준편차이고,
Figure pat00009
는 지역 파라미터 집합과 전역 파라미터의 공분산이다. In Equation 2, R is a revision rate, i is an index of an element of a local parameter set, j is an index of an element of a global parameter set, and k is an index of an element of a merge parameter set. In addition, r is the index of the number of times the global parameter is received, and N is the number of elements in the global parameter set. and
Figure pat00008
is the standard deviation of the set of merge parameters,
Figure pat00009
is the covariance of the local parameter set and the global parameter.

이어서, 서로 다른 복수의 지역장치(200) 중 산출된 수정비율(R)이 기 설정된 갱신임계치를 초과하는 지역장치(200)는 전달된 전역 파라미터로 지역모델의 지역 파라미터를 갱신한다. 여기서, 갱신임계치는 해당 지역장치(200)에 따라 설정되며, 과적합을 막기 위해 갱신 전 지역모델(200)에 대한 최종 학습 시, 평가되는 그레디언트의 미만이 되도록 설정되는 것이 바람직하다. Next, the local device 200 in which the calculated correction ratio R exceeds the preset update threshold among the plurality of different local devices 200 updates the local parameter of the local model with the transmitted global parameter. Here, the update threshold is set according to the corresponding regional device 200, and in order to prevent overfitting, it is preferable to set it to be less than the gradient to be evaluated during final learning of the regional model 200 before updating.

이와 같이, 본 발명의 실시예에 따른 지역장치(200)는 필요한 경우, 전역서버(100)가 제공하는 전역 파라미터를 통해 다른 지역장치(200)의 학습 데이터를 반영하여 지역모델을 갱신할 수 있다. In this way, the local device 200 according to the embodiment of the present invention can update the local model by reflecting the learning data of other local devices 200 through the global parameters provided by the global server 100, if necessary. .

이에 따라, 서로 다른 복수의 지역장치(200) 각각은 S290 단계에서 사용자, 즉, 아이 및 부모 각각으로부터 선호에 대한 조사하는 설문에 대한 응답을 입력받고, 입력된 응답에 대응하여 상기 입력에 대해 복수의 계층 간 연결되는 갱신된 지역 파라미터가 적용되는 복수의 연산을 수행하여 체험활동을 추천할 수 있다. 또한, 선택적으로, 서로 다른 복수의 지역장치(200) 각각은 체험활동이 끝난 아이 및 부모에 대해 만족도를 조사하는 설문에 대한 응답을 획득함으로써, 새로 학습 데이터를 추가할 수 있다. 새로 학습 데이터를 추가하는 경우, S210 단계 내지 S280 단계를 반복할 수 있다. Accordingly, each of the plurality of different local devices 200 receives a response to a questionnaire surveying preferences from the user, ie, a child and a parent, respectively, in step S290, and receives a plurality of responses to the input in response to the input response. It is possible to recommend experiential activities by performing a plurality of calculations to which the updated local parameters connected between the layers of are applied. Also, optionally, each of the plurality of different local devices 200 may add new learning data by acquiring a response to a questionnaire surveying the satisfaction of children and parents who have completed the experiential activity. When new learning data is added, steps S210 to S280 may be repeated.

한편, 전술한 본 발명의 실시예에 따른 방법은 다양한 컴퓨터수단을 통하여 판독 가능한 프로그램 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 프로그램 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 프로그램 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다. Meanwhile, the method according to the embodiment of the present invention described above may be implemented in the form of a program readable by various computer means and recorded in a computer readable recording medium. Here, the recording medium may include a program command, a data file, a data structure, etc. alone or in combination. The program instructions recorded on the recording medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer programs. For example, the recording medium includes magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floppy disks ( magneto-optical media) and hardware devices specially configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions may include high-level languages that can be executed by a computer using an interpreter or the like as well as machine language such as generated by a compiler. Such hardware devices may be configured to operate as one or more program modules to perform the operations of the present invention, and vice versa.

이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다. Although the present invention has been described above using several preferred embodiments, these examples are illustrative and not restrictive. As such, those of ordinary skill in the art to which the present invention pertains will understand that various changes and modifications can be made in accordance with the doctrine of equivalents without departing from the spirit of the present invention and the scope of rights set forth in the appended claims.

10: 사용자장치
100: 전역서버 110: 통신모듈
120: 저장모듈 130: 제어모듈
200: 지역장치 210: 통신부
220: 저장부 230: 제어부
10: User device
100: global server 110: communication module
120: storage module 130: control module
200: local device 210: communication unit
220: storage unit 230: control unit

Claims (4)

체험활동 추천을 위한 방법에 있어서,
서로 다른 복수의 지역장치가 공히 복수의 계층을 포함하며, 복수의 계층 간을 연결하는 파라미터가 적용되는 복수의 연산을 수행하는 동일한 구성의 인공신경망을 마련하는 단계;
상기 서로 다른 복수의 지역장치 각각이 서로 다른 학습 데이터를 수집하는 단계;
상기 서로 다른 복수의 지역장치 각각이 자신이 수집한 학습 데이터를 이용하여 상기 인공신경망에 대해 학습을 수행함으로써, 아이 및 부모 각각에 대한 설문에 대한 응답을 기초로 체험활동을 추천할 수 있도록, 학습된 지역 파라미터를 가지는 지역 모델을 생성하는 단계;
상기 서로 다른 복수의 지역장치가 상기 서로 다른 학습 데이터를 전역서버로 전달하는 단계;
상기 전역서버가 상기 서로 다른 복수의 학습 데이터를 이용하여 상기 인공신경망과 동일한 구성의 인공신경망에 대한 학습을 수행하여 전역 파라미터를 가지는 전역 모델을 생성하는 단계;
상기 전역 파라미터를 상기 서로 다른 복수의 지역장치에 전달하는 단계;
상기 서로 다른 복수의 지역장치 각각이 상기 지역모델의 지역 파라미터를 상기 전역 파라미터로 갱신하는 단계;
상기 서로 다른 복수의 지역장치 중 적어도 하나의 지역장치가 학습 데이터를 추가하고, 추가된 학습 데이터를 이용한 학습을 수행하여 지역모델을 갱신하는 단계;
상기 적어도 하나의 지역장치가 상기 전역서버로 갱신된 지역모델의 갱신된 지역 파라미터를 전달하는 단계;
상기 전역서버가 상기 전달된 지역 파라미터로 상기 전역서버의 전역 파라미터를 갱신하는 단계;
상기 전역서버가 상기 서로 다른 복수의 지역장치로 갱신된 전역모델의 갱신된 전역 파라미터를 전달하는 단계;
상기 서로 다른 복수의 지역장치가 상기 전달된 전역 파라미터로 상기 지역모델의 지역 파라미터를 갱신하는 단계; 및
상기 서로 다른 복수의 지역장치 중 적어도 하나의 지역장치가 아이 및 부모 각각의 설문에 대한 응답이 입력되면, 상기 입력에 대해 복수의 계층 간 연결되는 갱신된 지역 파라미터가 적용되는 복수의 연산을 수행하여 체험활동을 추천하는 단계;
를 포함하는 것을 특징으로 하는
체험활동 추천을 위한 방법.
In the method for recommending experiential activities,
providing an artificial neural network of the same configuration in which a plurality of different local devices both include a plurality of layers and perform a plurality of operations to which parameters connecting the plurality of layers are applied;
collecting different learning data from each of the plurality of different local devices;
Each of the plurality of different local devices performs learning on the artificial neural network using the learning data collected by them, so that experiential activities can be recommended based on responses to questionnaires for children and parents, respectively. generating a regional model having local parameters;
transmitting, by the plurality of different local devices, the different learning data to a global server;
generating, by the global server, a global model having global parameters by performing learning on an artificial neural network having the same configuration as that of the artificial neural network using the plurality of different learning data;
transmitting the global parameters to the plurality of different local devices;
updating, by the plurality of different local devices, the local parameters of the local model with the global parameters;
updating, by at least one local device among the plurality of different local devices, learning data, and performing learning using the added training data to update the local model;
transmitting, by the at least one local device, the updated local parameter of the updated local model to the global server;
updating, by the global server, the global parameters of the global server with the transmitted local parameters;
transmitting, by the global server, the updated global parameters of the updated global model to the plurality of different local devices;
updating, by the plurality of different local devices, the local parameters of the local model with the transmitted global parameters; and
At least one of the plurality of different local devices performs a plurality of calculations to which the updated local parameters connected between a plurality of layers are applied to the input when a response to each of the child and parent is inputted. recommending experiential activities;
characterized in that it comprises
Methods for recommending experiential activities.
제1항에 있어서,
상기 학습 데이터는
선호를 조사하는 설문에 대한 아이 및 부모 각각의 응답과, 상기 응답을 기초로 추천되어 아이가 체험한 체험활동인 레이블을 포함하며,
상기 학습 데이터는
상기 레이블의 체험활동에 대한 만족도를 조사하는 설문에 대해 상기 아이 및 부모 양자 모두로부터 기 설정된 수치 이상의 만족도를 나타내는 응답을 얻은 경우, 실험군으로 분류되고,
상기 아이 및 부모 중 어느 한 측으로부터 기 설정된 수치 미만의 만족도를 나타내는 응답을 얻은 경우, 대조군으로 분류되는 것을 특징으로 하는
체험활동 추천을 위한 방법.
According to claim 1,
The learning data is
Each child and parent's response to a questionnaire surveying preferences, and a label that is recommended based on the response and is an experiential activity experienced by the child,
The learning data is
When a response indicating satisfaction above a preset value is obtained from both the child and the parent to a questionnaire surveying satisfaction with the experiential activity of the label, it is classified into an experimental group,
When a response indicating satisfaction less than a preset value is obtained from either side of the child and parent, it is classified as a control group
A method for recommending experiential activities.
제1항에 있어서,
상기 서로 다른 복수의 지역장치가 상기 전달된 전역 파라미터로 상기 지역모델의 지역 파라미터를 갱신하는 단계는
상기 서로 다른 복수의 지역장치가 상기 전역서버로부터 전역 파라미터가 수신될 때 마다 순차로 저장하여 전역 파라미터 집합을 구성하는 단계;
상기 서로 다른 복수의 지역장치가 상기 지역모델의 지역 파라미터를 상기 전역 파라미터 집합의 원소의 수만큼 복사하여 지역 파라미터 집합을 구성하는 단계;
상기 서로 다른 복수의 지역장치가 상기 전역 파라미터 집합 및 상기 지역 파라미터 집합의 원소를 모두 병합하여 병합 파라미터 집합을 구성하는 단계;
상기 서로 다른 복수의 지역장치가 수학식
Figure pat00010
에 따라 수정비율을 산출하는 단계; 및
상기 서로 다른 복수의 지역장치 중 상기 산출된 수정비율이 기 설정된 갱신임계치를 초과하는 지역장치가 상기 전달된 전역 파라미터로 상기 지역모델의 지역 파라미터를 갱신하는 단계;
를 포함하며,
상기 i는 상기 지역 파라미터 집합의 원소의 인덱스이고,
상기 j는 상기 전역 파라미터 집합의 원소의 인덱스이고,
상기 k는 상기 병합 파라미터 집합의 원소의 인덱스이고,
상기 r은 상기 전역 파라미터를 수신한 횟수이며,
상기 N은 상기 전역 파라미터 집합의 원소의 수이고,
상기
Figure pat00011
는 병합 파라미터 집합의 표준편차이고,
상기
Figure pat00012
는 지역 파라미터 집합과 전역 파라미터의 공분산인 것을 특징으로 하는
체험활동 추천을 위한 방법.
According to claim 1,
The step of updating, by the plurality of different local devices, the local parameters of the local model with the transmitted global parameters,
constructing a global parameter set by sequentially storing the global parameters each time the plurality of different local devices are received from the global server;
constructing a local parameter set by copying, by the plurality of different local devices, the local parameters of the local model as many as the number of elements in the global parameter set;
constructing a merge parameter set by merging, by the plurality of different local devices, all elements of the global parameter set and the local parameter set;
The plurality of different local devices is expressed by the equation
Figure pat00010
calculating a correction rate according to and
updating, by a local device in which the calculated correction ratio exceeds a preset update threshold among the plurality of different local devices, using the transmitted global parameter to local parameters of the local model;
includes,
wherein i is an index of an element of the local parameter set,
wherein j is an index of an element of the global parameter set,
where k is an index of an element of the merging parameter set,
where r is the number of times the global parameter has been received,
wherein N is the number of elements in the global parameter set,
remind
Figure pat00011
is the standard deviation of the merge parameter set,
remind
Figure pat00012
is the covariance of the local parameter set and the global parameter
Methods for recommending experiential activities.
체험활동 추천을 위한 장치에 있어서,
서로 다른 복수의 지역장치로부터 수신된 서로 다른 복수의 학습 데이터를 이용하여 인공신경망에 대한 학습을 수행하여 전역 파라미터를 가지는 전역 모델을 생성하고,
상기 서로 다른 복수의 지역장치 각각이 지역모델의 지역 파라미터를 상기 전역 파라미터로 갱신하도록 상기 전역 파라미터를 상기 서로 다른 복수의 지역장치에 전달하며,
상기 적어도 하나의 지역장치로부터 갱신된 지역모델의 갱신된 지역 파라미터를 수신하면, 상기 수신된 지역 파라미터로 전역 파라미터를 갱신하고, 상기 서로 다른 복수의 지역장치로 갱신된 전역모델의 갱신된 전역 파라미터를 전달하는 전역서버; 및
학습 데이터를 이용하여 인공신경망에 대해 학습을 수행함으로써, 아이 및 부모 각각에 대한 설문에 대한 응답을 기초로 체험활동을 추천할 수 있도록, 학습된 지역 파라미터를 가지는 지역 모델을 생성한 후,
상기 전역서버로부터 상기 전역 파라미터를 전달받으면, 선택적으로 상기 지역모델의 지역 파라미터를 상기 전역 파라미터로 갱신하고,
아이 및 부모 각각의 설문에 대한 응답이 입력되면, 상기 입력에 대해 복수의 계층 간 연결되는 지역 파라미터가 적용되는 복수의 연산을 수행하여 체험활동을 추천하는 지역장치;
를 포함하는 것을 특징으로 하는
체험활동 추천을 위한 장치.
In the device for experiential activity recommendation,
A global model having global parameters is generated by performing training on the artificial neural network using a plurality of different training data received from a plurality of different local devices,
transmitting the global parameters to the plurality of different local devices so that each of the plurality of different local devices updates the local parameters of the local model with the global parameters;
Upon receiving the updated local parameter of the local model updated from the at least one local device, the global parameter is updated with the received local parameter, and the updated global parameter of the global model updated by the plurality of different local devices is obtained. forwarding global server; and
By performing learning on the artificial neural network using the learning data, a local model having learned local parameters is created so that experiential activities can be recommended based on responses to questionnaires for each child and parent,
When receiving the global parameter from the global server, selectively updating the local parameter of the local model with the global parameter,
a local device for recommending experiential activities by performing a plurality of calculations to which local parameters connected between a plurality of layers are applied to the input when a response to a questionnaire for each child and parent is input;
characterized in that it comprises
A device for recommending experiential activities.
KR1020200161989A 2020-11-27 2020-11-27 Apparatus and method for recommending experiences based on artificial neural networks in consideration of the preferences of both children and parents KR20220073984A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200161989A KR20220073984A (en) 2020-11-27 2020-11-27 Apparatus and method for recommending experiences based on artificial neural networks in consideration of the preferences of both children and parents

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200161989A KR20220073984A (en) 2020-11-27 2020-11-27 Apparatus and method for recommending experiences based on artificial neural networks in consideration of the preferences of both children and parents

Publications (1)

Publication Number Publication Date
KR20220073984A true KR20220073984A (en) 2022-06-03

Family

ID=81983489

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200161989A KR20220073984A (en) 2020-11-27 2020-11-27 Apparatus and method for recommending experiences based on artificial neural networks in consideration of the preferences of both children and parents

Country Status (1)

Country Link
KR (1) KR20220073984A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190113110A (en) 2018-03-27 2019-10-08 주식회사 와인그래프 Method for wine recommendation using preference analysis algoritm

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190113110A (en) 2018-03-27 2019-10-08 주식회사 와인그래프 Method for wine recommendation using preference analysis algoritm

Similar Documents

Publication Publication Date Title
Kuang et al. Offloading decision methods for multiple users with structured tasks in edge computing for smart cities
US20210266781A1 (en) Enabling wireless network personalization using zone of tolerance modeling and predictive analytics
Saad et al. Coalitional game theory for communication networks
Capitan et al. Decentralized multi-robot cooperation with auctioned POMDPs
EP4350572A1 (en) Method, apparatus and system for generating neural network model, devices, medium and program product
Orciuoli et al. An ontology-driven context-aware recommender system for indoor shopping based on cellular automata
US20220123830A1 (en) System and method for facilitating autonomous satellite level communications
Ever et al. Performance evaluation of hybrid disaster recovery framework with D2D communications
CN113543074A (en) Joint computing migration and resource allocation method based on vehicle-road cloud cooperation
Farshbafan et al. Curriculum learning for goal-oriented semantic communications with a common language
US10257720B2 (en) Access point placement optimization device and access point placement optimization method
US20120226642A1 (en) Method and apparatus for considering multi-user preference based on multi-user-criteria group
Zhang et al. New computing tasks offloading method for MEC based on prospect theory framework
Seo et al. Towards semantic communication protocols: A probabilistic logic perspective
Kim R-learning-based team game model for Internet of things quality-of-service control scheme
KR102424507B1 (en) Method of operating golf team matching platform that prevents user-customized team matching and rounding no-shows based on artificial intelligence and location information technology
Marin et al. A context-aware collaborative model for smartphone energy efficiency over 5G wireless networks
KR20220073984A (en) Apparatus and method for recommending experiences based on artificial neural networks in consideration of the preferences of both children and parents
Hoes et al. Quality-of-service trade-off analysis for wireless sensor networks
CN114826378B (en) Inter-satellite link scheduling method and system based on data driving
Efstathiou et al. Efficient multi-objective optimisation of service compositions in mobile ad hoc networks using lightweight surrogate models
Zou et al. Optimized consensus for blockchain in internet of things networks via reinforcement learning
Hlophe et al. From Cyber–Physical Convergence to Digital Twins: A Review on Edge Computing Use Case Designs
Kim Cognitive hierarchy thinking based behavioral game model for IoT power control algorithm
Xu et al. An approach for managing the Internet of things’ resources to optimize the energy consumption using a nature-inspired optimization algorithm and Markov model