KR102453919B1 - Method, device and system for verifying of guide soundtrack related to cultural content based on artificial intelligence - Google Patents
Method, device and system for verifying of guide soundtrack related to cultural content based on artificial intelligence Download PDFInfo
- Publication number
- KR102453919B1 KR102453919B1 KR1020220056551A KR20220056551A KR102453919B1 KR 102453919 B1 KR102453919 B1 KR 102453919B1 KR 1020220056551 A KR1020220056551 A KR 1020220056551A KR 20220056551 A KR20220056551 A KR 20220056551A KR 102453919 B1 KR102453919 B1 KR 102453919B1
- Authority
- KR
- South Korea
- Prior art keywords
- list
- audio file
- neural network
- artificial neural
- keyword
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00166—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/18—Legal services; Handling legal documents
- G06Q50/184—Intellectual property management
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00971—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures for monitoring the industrial media production and distribution channels, e.g. for controlling content providers or the official manufacturers or replicators of recording media
Abstract
Description
아래 실시예들은 인공지능을 기반으로 문화 콘텐츠와 관련된 가이드 음원을 검증하기 위한 기술에 관한 것이다.The following embodiments relate to a technology for verifying a guide sound source related to cultural content based on artificial intelligence.
최근에는 사용자가 정보를 수집하여 편집하는 수준을 넘어서 적극적으로 콘텐츠를 제작하고 배포하는 형태로 활동 영역이 확대되었다. 이에 따라 사용자는 역사, 예술, 미술 등의 문화 콘텐츠와 관련된 가이드 음원을 창작하여 서로 공유하고자 하는 시도가 나타나고 있다.Recently, the field of activity has expanded to the form of actively creating and distributing content beyond the level of users collecting and editing information. Accordingly, there are attempts by users to create and share guide sound sources related to cultural contents such as history, art, and art.
하지만, 사용자에 의해 업로드된 오디오 파일에 문제가 있는 경우가 많아, 오디오 파일에 대한 품질 관리가 필요하며, 사용자에 의해 제작된 가이드 음원에 사실이 아닌 내용이 포함될 수 있으므로, 가이드 음원의 내용에 대한 검증 과정도 필요하다.However, there are many cases where there is a problem with the audio file uploaded by the user, so quality control for the audio file is required, and since the guide sound source produced by the user may contain untrue content, A verification process is also required.
따라서, 가이드 음원인 오디오 파일에 대한 검증을 자동으로 수행하여, 가이드 음원의 내용에 대한 정확성을 확보하고, 오디오 파일에 대한 품질을 관리하고자 하는 요구가 증대되고 있어, 이와 관련된 기술에 대한 연구가 요구된다.Therefore, there is an increasing demand for automatically verifying the audio file, which is a guide sound source, to ensure the accuracy of the content of the guide sound source, and to manage the quality of the audio file, and research on related technologies is required. do.
일실시예에 따르면, 제1 사용자 단말로부터 제1 오디오 파일 및 제1 메타 데이터를 수신하고, 제1 오디오 파일에 대한 품질을 검사하고, 제1 오디오 파일에 대한 품질을 검사한 결과, 제1 오디오 파일에 문제가 없는 것으로 확인되면, 제1 오디오 파일에서 샘플링을 통해 구역 별로 사운드 정보를 추출하고, 구역 별로 추출된 사운드 정보에서 음성 인식을 통해 키워드를 확인하고, 구역 별로 확인된 키워드를 기반으로, 제1 오디오 파일과 관련된 키워드 리스트인 제1 리스트를 생성하고, 제1 메타 데이터에 기초하여, 제1 입력 신호를 생성하고, 제1 입력 신호를 미리 학습된 제1 인공 신경망에 입력하여 제1 출력 신호를 획득하고, 제1 출력 신호에 기초하여, 제1 메타 데이터와 관련된 키워드 리스트인 제2 리스트를 생성하고, 제1 리스트 및 제2 리스트를 결합하여, 제3 리스트를 생성하고, 제3 리스트에 기초하여, 제2 입력 신호를 생성하고, 제2 입력 신호를 미리 학습된 제2 인공 신경망에 입력하여 제2 출력 신호를 획득하고, 제2 출력 신호에 기초하여, 제1 오디오 파일에 대한 검증 결과를 생성하는, 인공지능 기반 문화 콘텐츠 관련 가이드 음원의 검증 방법, 장치 및 시스템을 제공하기 위한 것을 그 목적으로 한다.According to an embodiment, the first audio file and the first metadata are received from the first user terminal, the quality of the first audio file is checked, and the quality of the first audio file is checked as a result of the first audio file. When it is confirmed that there is no problem in the file, sound information is extracted for each zone through sampling from the first audio file, and keywords are identified through voice recognition from the sound information extracted for each zone, and based on the keywords identified for each zone, A first list that is a list of keywords related to a first audio file is generated, a first input signal is generated based on the first metadata, and the first input signal is input to a pre-trained first artificial neural network for a first output obtaining a signal, and based on the first output signal, generating a second list that is a list of keywords related to the first meta data, combining the first list and the second list to generate a third list, and a third list generates a second input signal based on the The purpose of this is to provide a verification method, apparatus and system for a guide sound source related to artificial intelligence-based cultural content that generates a result.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.Objects of the present invention are not limited to the objects mentioned above, and other objects not mentioned will be clearly understood from the description below.
일실시예에 따르면, 장치에 의해 수행되는, 인공지능을 기반으로 문화 콘텐츠와 관련된 가이드 음원을 검증하는 방법에 있어서, 제1 사용자 단말로부터 제1 오디오 파일 및 제1 메타 데이터를 수신하는 단계; 상기 제1 오디오 파일에 대한 품질을 검사하는 단계; 상기 제1 오디오 파일에 대한 품질을 검사한 결과, 상기 제1 오디오 파일에 문제가 없는 것으로 확인되면, 상기 제1 오디오 파일에서 샘플링을 통해 구역 별로 사운드 정보를 추출하는 단계; 상기 구역 별로 추출된 사운드 정보에서 음성 인식을 통해 키워드를 확인하고, 상기 구역 별로 확인된 키워드를 기반으로, 상기 제1 오디오 파일과 관련된 키워드 리스트인 제1 리스트를 생성하는 단계; 상기 제1 메타 데이터에 기초하여, 제1 입력 신호를 생성하는 단계; 상기 제1 입력 신호를 미리 학습된 제1 인공 신경망에 입력하여 제1 출력 신호를 획득하는 단계; 상기 제1 출력 신호에 기초하여, 상기 제1 메타 데이터와 관련된 키워드 리스트인 제2 리스트를 생성하는 단계; 상기 제1 리스트 및 상기 제2 리스트를 결합하여, 제3 리스트를 생성하는 단계; 상기 제3 리스트에 기초하여, 제2 입력 신호를 생성하는 단계; 상기 제2 입력 신호를 미리 학습된 제2 인공 신경망에 입력하여 제2 출력 신호를 획득하는 단계; 및 상기 제2 출력 신호에 기초하여, 상기 제1 오디오 파일에 대한 검증 결과를 생성하는 단계를 포함하는, 인공지능 기반 문화 콘텐츠 관련 가이드 음원의 검증 방법이 제공된다.According to an embodiment, there is provided a method of verifying a guide sound source related to cultural content based on artificial intelligence, performed by a device, the method comprising: receiving a first audio file and first metadata from a first user terminal; checking the quality of the first audio file; extracting sound information for each zone through sampling from the first audio file when it is confirmed that there is no problem in the first audio file as a result of checking the quality of the first audio file; identifying a keyword from the sound information extracted for each zone through voice recognition, and generating a first list that is a keyword list related to the first audio file based on the identified keyword for each zone; generating a first input signal based on the first metadata; obtaining a first output signal by inputting the first input signal to a pre-trained first artificial neural network; generating a second list that is a keyword list related to the first meta data based on the first output signal; generating a third list by combining the first list and the second list; generating a second input signal based on the third list; obtaining a second output signal by inputting the second input signal to a pre-trained second artificial neural network; and based on the second output signal, generating a verification result for the first audio file.
상기 제2 인공 신경망은 상기 제2 입력 신호에 기초하여, 상기 제1 리스트에 포함된 키워드 별로 상기 제2 리스트에 포함되는지 여부를 확인하고, 상기 제1 리스트에 포함된 키워드를 상기 제2 리스트에 포함된 것으로 확인된 제1-1 리스트와 상기 제2 리스트에 포함되지 않은 것으로 확인된 제1-2 리스트로 구분하고, 상기 제1-1 리스트에 포함된 키워드의 수를 상기 제1 리스트에 포함된 키워드의 수로 나눈 값을 통해, 상기 제1 리스트 및 상기 제2 리스트 간의 매칭률을 산출하고, 상기 매칭률이 미리 설정된 기준치 보다 큰 것으로 확인되면, 상기 제1 오디오 파일에 대한 검증 결과를 검증 성공으로 분석하여 상기 제2 출력 신호를 출력하고, 상기 매칭률이 상기 기준치 보다 작은 것으로 확인되면, 상기 제1 오디오 파일에 대한 검증 결과를 검증 실패로 분석하여 상기 제2 출력 신호를 출력할 수 있다.The second artificial neural network determines whether each keyword included in the first list is included in the second list based on the second input signal, and adds the keyword included in the first list to the second list. It is divided into a 1-1 list confirmed to be included and a 1-2 list confirmed not included in the second list, and the number of keywords included in the 1-1 list is included in the first list A matching rate between the first list and the second list is calculated through a value divided by the number of keywords, and when it is confirmed that the matching rate is greater than a preset reference value, the verification result for the first audio file is verified successfully is analyzed to output the second output signal, and when it is confirmed that the matching rate is smaller than the reference value, the verification result of the first audio file may be analyzed as verification failure and the second output signal may be output.
상기 인공지능 기반 문화 콘텐츠 관련 가이드 음원의 검증 방법은, 상기 제2 리스트를 생성하는 단계 이후, 상기 제1 리스트에 포함된 키워드를 기반으로, 상기 제1 오디오 파일을 제1 전시물의 오디오 가이드로 분석하는 단계; 상기 제1 전시물에 설정되어 있는 핵심 키워드 리스트인 제4 리스트를 획득하는 단계; 및 상기 제2 리스트에 상기 제4 리스트를 추가하는 단계를 더 포함할 수 있다.In the method for verifying the artificial intelligence-based cultural content-related guide sound source, after generating the second list, the first audio file is analyzed as an audio guide of a first exhibition object based on a keyword included in the first list. to do; obtaining a fourth list, which is a list of key keywords set in the first exhibit; and adding the fourth list to the second list.
상기 제2 인공 신경망은 상기 제2 입력 신호에 기초하여, 상기 제1 리스트에 포함된 키워드와 상기 제4 리스트에 포함된 키워드를 비교하여, 키워드 별로 일치하는지 여부를 확인하고, 상기 제4 리스트에 포함된 키워드가 상기 제1 리스트에 포함된 키워드와 전부 일치하는 것으로 확인되면, 상기 제1 오디오 파일에 대한 검증 결과를 검증 성공으로 분석하여 상기 제2 출력 신호를 출력하고, 상기 제4 리스트에 포함된 키워드 중 하나 이상이 상기 제1 리스트에 포함된 키워드와 일치하지 않는 것으로 확인되면, 상기 제1 오디오 파일에 대한 검증 결과를 검증 실패로 분석하여 상기 제2 출력 신호를 출력할 수 있다.The second artificial neural network compares the keywords included in the first list with the keywords included in the fourth list based on the second input signal, checks whether they match by keyword, and adds the keywords to the fourth list. When it is confirmed that the included keywords all match the keywords included in the first list, the verification result for the first audio file is analyzed as verification success, the second output signal is output, and the second output signal is included in the fourth list If it is determined that one or more of the keywords do not match the keywords included in the first list, the verification result of the first audio file may be analyzed as verification failure, and the second output signal may be output.
일실시예에 따르면, 제1 사용자 단말로부터 제1 오디오 파일 및 제1 메타 데이터를 수신하고, 제1 오디오 파일에 대한 품질을 검사하고, 제1 오디오 파일에 대한 품질을 검사한 결과, 제1 오디오 파일에 문제가 없는 것으로 확인되면, 제1 오디오 파일에서 샘플링을 통해 구역 별로 사운드 정보를 추출하고, 구역 별로 추출된 사운드 정보에서 음성 인식을 통해 키워드를 확인하고, 구역 별로 확인된 키워드를 기반으로, 제1 오디오 파일과 관련된 키워드 리스트인 제1 리스트를 생성하고, 제1 메타 데이터에 기초하여, 제1 입력 신호를 생성하고, 제1 입력 신호를 미리 학습된 제1 인공 신경망에 입력하여 제1 출력 신호를 획득하고, 제1 출력 신호에 기초하여, 제1 메타 데이터와 관련된 키워드 리스트인 제2 리스트를 생성하고, 제1 리스트 및 제2 리스트를 결합하여, 제3 리스트를 생성하고, 제3 리스트에 기초하여, 제2 입력 신호를 생성하고, 제2 입력 신호를 미리 학습된 제2 인공 신경망에 입력하여 제2 출력 신호를 획득하고, 제2 출력 신호에 기초하여, 제1 오디오 파일에 대한 검증 결과를 생성함으로써, 가이드 음원인 오디오 파일에 대한 검증을 자동으로 수행하여, 가이드 음원의 내용에 대한 정확성을 확보하고, 오디오 파일에 대한 품질을 관리할 수 있는 효과가 있다.According to an embodiment, the first audio file and the first metadata are received from the first user terminal, the quality of the first audio file is checked, and the quality of the first audio file is checked as a result of the first audio file. When it is confirmed that there is no problem in the file, sound information is extracted for each zone through sampling from the first audio file, and keywords are identified through voice recognition from the sound information extracted for each zone, and based on the keywords identified for each zone, A first list that is a list of keywords related to a first audio file is generated, a first input signal is generated based on the first metadata, and the first input signal is input to a pre-trained first artificial neural network for a first output obtaining a signal, and based on the first output signal, generating a second list that is a list of keywords related to the first meta data, combining the first list and the second list to generate a third list, and a third list generates a second input signal based on the By generating the result, it is possible to automatically verify the audio file, which is the guide sound source, to ensure the accuracy of the content of the guide sound source, and to manage the quality of the audio file.
한편, 실시예들에 따른 효과들은 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 해당 기술 분야의 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.On the other hand, the effects according to the embodiments are not limited to those mentioned above, and other effects not mentioned will be clearly understood by those of ordinary skill in the art from the following description.
도 1은 일실시예에 따른 시스템의 구성을 개략적으로 나타낸 도면이다.
도 2는 일실시예에 따른 장치의 구성을 개략적으로 나타낸 도면이다.
도 3은 일실시예에 따른 인공지능을 기반으로 문화 콘텐츠와 관련된 가이드 음원을 검증하는 과정을 설명하기 위한 순서도이다.
도 4는 일실시예에 따른 키워드 매칭 정도에 따라 오디오 파일에 대한 검증을 수행하는 과정을 설명하기 위한 순서도이다.
도 5는 일실시예에 따른 핵심 키워드 포함 여부에 따라 오디오 파일에 대한 검증을 수행하는 과정을 설명하기 위한 순서도이다.
도 6은 일실시예에 따른 구역 별로 사운드 정보를 추출하여 결정하는 과정을 설명하기 위한 순서도이다.
도 7은 일실시예에 따른 인공지능을 기반으로 호스트 방화벽의 정책 설정을 제어하는 과정을 설명하기 위한 순서도이다.
도 8은 일실시예에 따른 공격으로 추정되는 접근을 감지하여, 공격 횟수에 따라 대응 방안을 제공하는 과정을 설명하기 위한 순서도이다.
도 9는 일실시예에 따른 인공 신경망의 학습을 설명하기 위한 도면이다.
도 10은 다른 실시예에 따른 인공 신경망의 학습을 설명하기 위한 도면이다.
도 11은 일실시예에 따른 장치의 구성의 예시도이다.1 is a diagram schematically showing the configuration of a system according to an embodiment.
2 is a diagram schematically showing the configuration of an apparatus according to an embodiment.
3 is a flowchart illustrating a process of verifying a guide sound source related to cultural content based on artificial intelligence according to an embodiment.
4 is a flowchart illustrating a process of verifying an audio file according to a keyword matching degree according to an exemplary embodiment.
5 is a flowchart illustrating a process of verifying an audio file according to whether a key keyword is included, according to an exemplary embodiment.
6 is a flowchart illustrating a process of extracting and determining sound information for each zone according to an exemplary embodiment.
7 is a flowchart illustrating a process of controlling policy settings of a host firewall based on artificial intelligence according to an embodiment.
8 is a flowchart illustrating a process of detecting an approach estimated as an attack and providing a countermeasure according to the number of attacks, according to an exemplary embodiment.
9 is a diagram for explaining learning of an artificial neural network according to an embodiment.
10 is a diagram for explaining learning of an artificial neural network according to another embodiment.
11 is an exemplary diagram of a configuration of an apparatus according to an embodiment.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, since various changes may be made to the embodiments, the scope of the patent application is not limited or limited by these embodiments. It should be understood that all modifications, equivalents and substitutes for the embodiments are included in the scope of the rights.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for purposes of illustration only, and may be changed and implemented in various forms. Accordingly, the embodiments are not limited to a specific disclosure form, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical spirit.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Although terms such as first or second may be used to describe various elements, these terms should be interpreted only for the purpose of distinguishing one element from another. For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being “connected” to another component, it may be directly connected or connected to the other component, but it should be understood that another component may exist in between.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Terms used in the examples are used for the purpose of description only, and should not be construed as limiting. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present specification, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It is to be understood that this does not preclude the possibility of the presence or addition of numbers, steps, operations, components, parts, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiment belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same components are assigned the same reference numerals regardless of the reference numerals, and the overlapping description thereof will be omitted. In the description of the embodiment, if it is determined that a detailed description of a related known technology may unnecessarily obscure the gist of the embodiment, the detailed description thereof will be omitted.
실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다.The embodiments may be implemented in various types of products, such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent cars, kiosks, wearable devices, and the like.
실시예에서 인공지능(Artificial Intelligence, AI) 시스템은 인간 수준의 지능을 구현하는 컴퓨터 시스템이며, 기존 규칙(Rule) 기반의 스마트 시스템과 달리 기계가 스스로 학습하고 판단하는 시스템이다. 인공지능 시스템은 사용할수록 인식률이 향상되고 사용자 취향을 보다 정확하게 이해할 수 있게 되어, 기존 규칙 기반의 스마트 시스템은 점차 심층 학습(Deep Learning) 기반 인공지능 시스템으로 대체되고 있다.In an embodiment, the artificial intelligence (AI) system is a computer system that implements human-level intelligence, and is a system in which a machine learns and makes decisions on its own, unlike an existing rule-based smart system. The more the AI system is used, the better the recognition rate and the more accurate understanding of user preferences, and the existing rule-based smart systems are gradually being replaced by deep learning-based AI systems.
인공지능 기술은 기계 학습 및 기계 학습을 활용한 요소기술들로 구성된다. 기계 학습은 입력 데이터들의 특징을 스스로 분류/학습하는 알고리즘 기술이며, 요소기술은 심층 학습 등의 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술로서, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야로 구성된다.Artificial intelligence technology consists of machine learning and element technologies using machine learning. Machine learning is an algorithm technology that categorizes/learns characteristics of input data by itself, and element technology uses machine learning algorithms such as deep learning to simulate functions such as cognition and judgment of the human brain. It consists of technical fields such as understanding, reasoning/prediction, knowledge expression, and motion control.
인공지능 기술이 응용되는 다양한 분야는 다음과 같다. 언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리, 기계 번역, 대화시스템, 질의 응답, 음성 인식/합성 등을 포함한다. 시각적 이해는 사물을 인간의 시각처럼 인식하여 처리하는 기술로서, 객체 인식, 객체 추적, 영상 검색, 사람 인식, 장면 이해, 공간 이해, 영상 개선 등을 포함한다. 추론 예측은 정보를 판단하여 논리적으로 추론하고 예측하는 기술로서, 지식/확률 기반 추론, 최적화 예측, 선호 기반 계획, 추천 등을 포함한다. 지식 표현은 인간의 경험정보를 지식데이터로 자동화 처리하는 기술로서, 지식 구축(데이터 생성/분류), 지식 관리(데이터 활용) 등을 포함한다. 동작 제어는 차량의 자율 주행, 로봇의 움직임을 제어하는 기술로서, 움직임 제어(항법, 충돌, 주행), 조작 제어(행동 제어) 등을 포함한다.The various fields where artificial intelligence technology is applied are as follows. Linguistic understanding is a technology for recognizing and applying/processing human language/text, and includes natural language processing, machine translation, dialogue system, question and answer, and speech recognition/synthesis. Visual understanding is a technology for recognizing and processing objects like human vision, and includes object recognition, object tracking, image search, human recognition, scene understanding, spatial understanding, image improvement, and the like. Inferential prediction is a technology for logically reasoning and predicting by judging information, and includes knowledge/probability-based reasoning, optimization prediction, preference-based planning, and recommendation. Knowledge expression is a technology that automatically processes human experience information into knowledge data, and includes knowledge construction (data generation/classification) and knowledge management (data utilization). Motion control is a technology for controlling autonomous driving of a vehicle and movement of a robot, and includes motion control (navigation, collision, driving), manipulation control (action control), and the like.
일반적으로 기계 학습 알고리즘을 실생활에 적용하기 위해서는 기계 학습의 기본 방법론의 특성상 Trial and Error 방식으로 학습을 수행하게 된다. 특히, 심층 학습의 경우 수십만 번의 반복 실행을 필요로 한다. 이를 실제 물리적인 외부 환경에서 실행하기는 불가능하여 대신 실제 물리적인 외부 환경을 컴퓨터상에서 가상으로 구현하여 시뮬레이션을 통해 학습을 수행한다.In general, in order to apply the machine learning algorithm to real life, learning is performed in the Trial and Error method due to the characteristics of the basic methodology of machine learning. In particular, deep learning requires hundreds of thousands of iterations. It is impossible to execute this in the actual physical external environment, so instead, the actual physical external environment is implemented on a computer and learning is performed through simulation.
도 1은 일실시예에 따른 시스템의 구성을 개략적으로 나타낸 도면이다.1 is a diagram schematically showing the configuration of a system according to an embodiment.
도 1을 참조하면, 일실시예에 따른 시스템은 통신망을 통해 서로 통신 가능한 복수의 사용자 단말(100) 및 장치(200)를 포함할 수 있다.Referring to FIG. 1 , a system according to an embodiment may include a plurality of
먼저, 통신망은 유선 및 무선 등과 같이 그 통신 양태를 가리지 않고 구성될 수 있으며, 서버와 서버 간의 통신과 서버와 단말 간의 통신이 수행되도록 다양한 형태로 구현될 수 있다.First, the communication network may be configured regardless of its communication mode, such as wired and wireless, and may be implemented in various forms so that communication between a server and a server and communication between a server and a terminal are performed.
복수의 사용자 단말(100) 각각은 데스크탑 컴퓨터, 노트북, 태블릿, 스마트폰 등일 수 있다. 바람직하게, 도 1에 도시된 바와 같이, 제1 사용자 단말(110), 제2 사용자 단말(120), 제3 사용자 단말(130) 등은 스마트폰일 수 있으며, 실시예에 따라 달리 채용될 수도 있다. Each of the plurality of
복수의 사용자 단말(100) 각각은 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 복수의 사용자 단말(100)은 장치(200)와 유무선으로 통신하도록 구성될 수 있다.Each of the plurality of
복수의 사용자 단말(100) 각각은 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 운영하는 웹 페이지에 접속되거나, 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 개발·배포한 애플리케이션이 설치될 수 있다. 복수의 사용자 단말(100) 각각은 웹 페이지 또는 애플리케이션을 통해 장치(200)와 연동될 수 있다.Each of the plurality of
복수의 사용자 단말(100) 각각은 장치(200)에서 제공하는 웹 페이지, 애플리케이션을 등을 통해 장치(200)에 접속할 수 있다.Each of the plurality of
이하에서는 설명의 편의상, 제1 사용자 단말(110)의 동작을 위주로 설명하지만, 제2 사용자 단말(120) 등의 다른 사용자 단말에서 제1 사용자 단말(110)의 동작을 대신 수행할 수 있는 것은 물론이다.Hereinafter, for convenience of description, the operation of the
장치(200)는 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 보유한 자체 서버일수도 있고, 클라우드 서버일 수도 있고, 분산된 노드(node)들의 p2p(peer-to-peer) 집합일 수도 있다. 장치(200)는 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 장치(200)는 추론 기능을 수행하는 적어도 하나 이상의 인공 신경망을 구비할 수 있다.The
장치(200)는 복수의 사용자 단말(100)과 유무선으로 통신하도록 구성될 수 있으며, 복수의 사용자 단말(100) 각각의 동작을 제어하고, 복수의 사용자 단말(100) 각각의 화면에 어느 정보를 표시할 것인지에 대해 제어할 수 있다.The
한편, 설명의 편의를 위해 도 1에서는 복수의 사용자 단말(100) 중 제1 사용자 단말(110), 제2 사용자 단말(120) 및 제3 사용자 단말(130)만을 도시하였으나, 단말들의 수는 실시예에 따라 얼마든지 달라질 수 있다. 장치(200)의 처리 용량이 허용하는 한, 단말들의 수는 특별한 제한이 없다.Meanwhile, for convenience of explanation, only the
일실시예에 따르면, 본 발명에서는 서비스 측면에서, 애플리케이션을 통해 사용자가 직접 오디오 가이드의 콘텐츠를 업로드할 수 있도록 서비스를 제공할 수 있고, 업로드 오디오의 속성 및 품질에 대하여 1차로 검수하는 과정을 자동화할 수 있고, 오류 정보에 대하여 업로더가 인지하고 수정하도록 하여 품질 관리를 효율화할 수 있다.According to one embodiment, in the present invention, in terms of service, it is possible to provide a service so that the user can directly upload the content of the audio guide through the application, and automate the process of first inspecting the properties and quality of the uploaded audio. quality control can be streamlined by allowing the uploader to recognize and correct error information.
또한, 본 발명에서는 기술적 측면에서, 오디오 가이드 원본 데이터의 특성을 추출하고, 이를 바탕으로 Validator를 설계할 수 있고, 사용자의 업로드 히스토리 데이터와 콘텐츠 오류 빈도, 테스트 결과 값 등을 벡터화하여 Positive Sampling과 Negative Sampling을 기반으로 고유의 Audio Semantics Network를 구출할 수 있고, 업로드 후 자동화된 품질검사 이후 타임코드 기반의 오류 정보를 도출함으로써, 데이터 보관을 효율화할 수 있다.In addition, in the present invention, from the technical point of view, it is possible to extract the characteristics of the audio guide original data, design a validator based on this, and vectorize the user's upload history data, content error frequency, test result values, etc. A unique Audio Semantics Network can be rescued based on sampling, and data storage can be made more efficient by deriving timecode-based error information after automated quality inspection after upload.
일실시예에 따르면, 장치(200)는 인공지능을 기반으로 문화 콘텐츠와 관련된 가이드 음원을 검증할 수 있다. 이를 위해, 장치(200)는 기계 학습 알고리즘의 수행을 위하여 미리 학습된 다수의 인공 신경망을 포함할 수 있다.According to an embodiment, the
본 발명에서, 인공지능(Artificial Intelligence, AI)은 인간의 학습능력, 추론능력, 지각능력 등을 모방하고, 이를 컴퓨터로 구현하는 기술을 의미하고, 기계 학습, 심볼릭 로직(Symbolic Logic) 등의 개념을 포함할 수 있다. 기계 학습(Machine Learning, ML)은 입력 데이터들의 특징을 스스로 분류 또는 학습하는 알고리즘 기술이다. 인공지능의 기술은 기계 학습의 알고리즘으로써 입력 데이터를 분석하고, 그 분석의 결과를 학습하며, 그 학습의 결과에 기초하여 판단이나 예측을 할 수 있다. 또한, 기계 학습의 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술들 역시 인공지능의 범주로 이해될 수 있다. 예를 들어, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야가 포함될 수 있다.In the present invention, artificial intelligence (AI) refers to a technology that imitates human learning ability, reasoning ability, perceptual ability, etc., and implements it with a computer, and the concepts of machine learning, symbolic logic, etc. may include Machine Learning (ML) is an algorithm technology that classifies or learns characteristics of input data by itself. Artificial intelligence technology is an algorithm of machine learning that can analyze input data, learn the results of the analysis, and make judgments or predictions based on the results of the learning. In addition, technologies that use machine learning algorithms to simulate functions such as cognition and judgment of the human brain can also be understood as a category of artificial intelligence. For example, technical fields such as verbal comprehension, visual comprehension, reasoning/prediction, knowledge expression, and motion control may be included.
기계 학습은 데이터를 처리한 경험을 이용해 신경망 모델을 훈련시키는 처리를 의미할 수 있다. 기계 학습을 통해 컴퓨터 소프트웨어는 스스로 데이터 처리 능력을 향상시키는 것을 의미할 수 있다. 신경망 모델은 데이터 사이의 상관 관계를 모델링하여 구축된 것으로서, 그 상관 관계는 복수의 파라미터에 의해 표현될 수 있다. 신경망 모델은 주어진 데이터로부터 특징들을 추출하고 분석하여 데이터 간의 상관 관계를 도출하는데, 이러한 과정을 반복하여 신경망 모델의 파라미터를 최적화해 나가는 것이 기계 학습이라고 할 수 있다. 예를 들어, 신경망 모델은 입출력 쌍으로 주어지는 데이터에 대하여, 입력과 출력 사이의 매핑(상관 관계)을 학습할 수 있다. 또는, 신경망 모델은 입력 데이터만 주어지는 경우에도 주어진 데이터 사이의 규칙성을 도출하여 그 관계를 학습할 수도 있다.Machine learning may refer to the process of training a neural network model using experience of processing data. With machine learning, computer software could mean improving its own data processing capabilities. The neural network model is constructed by modeling the correlation between data, and the correlation may be expressed by a plurality of parameters. A neural network model extracts and analyzes features from given data to derive correlations between data, and repeating this process to optimize parameters of a neural network model can be called machine learning. For example, a neural network model may learn a mapping (correlation) between an input and an output with respect to data given as an input/output pair. Alternatively, the neural network model may learn the relationship by deriving regularity between the given data even when only input data is given.
인공지능 학습모델 또는 신경망 모델은 인간의 뇌 구조를 컴퓨터 상에서 구현하도록 설계될 수 있으며, 인간의 신경망의 뉴런(neuron)을 모의하며 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드들은 뉴런이 시냅스(synapse)를 통하여 신호를 주고받는 뉴런의 시냅틱(synaptic) 활동을 모의하여, 서로 간의 연결 관계를 가질 수 있다. 인공지능 학습모델에서 복수의 네트워크 노드들은 서로 다른 깊이의 레이어에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고받을 수 있다. 인공지능 학습모델은, 예를 들어, 인공 신경망 모델(Artificial Neural Network), 컨볼루션 신경망 모델(Convolution Neural Network: CNN) 등일 수 있다. 일 실시예로서, 인공지능 학습모델은, 지도학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning) 등의 방식에 따라 기계 학습될 수 있다. 기계 학습을 수행하기 위한 기계 학습 알고리즘에는, 의사결정트리(Decision Tree), 베이지안 망(Bayesian Network), 서포트 벡터 머신(Support Vector Machine), 인공 신경망(Artificial Neural Network), 에이다부스트(Ada-boost), 퍼셉트론(Perceptron), 유전자 프로그래밍(Genetic Programming), 군집화(Clustering) 등이 사용될 수 있다.The artificial intelligence learning model or neural network model may be designed to implement a human brain structure on a computer, and may include a plurality of network nodes that simulate neurons of a human neural network and have weights. A plurality of network nodes may have a connection relationship with each other by simulating a synaptic activity of a neuron through which a neuron sends and receives a signal through a synapse. In the AI learning model, a plurality of network nodes can exchange data according to a convolutional connection relationship while being located in layers of different depths. The artificial intelligence learning model may be, for example, an artificial neural network model, a convolutional neural network model, or the like. As an embodiment, the AI learning model may be machine-learned according to a method such as supervised learning, unsupervised learning, reinforcement learning, or the like. Machine learning algorithms for performing machine learning include Decision Tree, Bayesian Network, Support Vector Machine, Artificial Neural Network, Ada-boost. , Perceptron, Genetic Programming, Clustering, etc. may be used.
이중, CNN은 최소한의 전처리(preprocess)를 사용하도록 설계된 다계층 퍼셉트론(multilayer perceptrons)의 한 종류이다. CNN은 하나 또는 여러 개의 합성곱 계층과 그 위에 올려진 일반적인 인공 신경망 계층들로 이루어져 있으며, 가중치와 통합 계층(pooling layer)들을 추가로 활용한다. 이러한 구조 덕분에 CNN은 2차원 구조의 입력 데이터를 충분히 활용할 수 있다. 다른 딥러닝 구조들과 비교해서, CNN은 영상, 음성 분야 모두에서 좋은 성능을 보여준다. CNN은 또한 표준 역전달을 통해 훈련될 수 있다. CNN은 다른 피드포워드 인공신경망 기법들보다 쉽게 훈련되는 편이고 적은 수의 매개변수를 사용한다는 이점이 있다.Among them, CNNs are a type of multilayer perceptrons designed to use minimal preprocessing. CNN consists of one or several convolutional layers and general artificial neural network layers on top of it, and additionally utilizes weights and pooling layers. Thanks to this structure, CNN can fully utilize the input data of the two-dimensional structure. Compared with other deep learning structures, CNN shows good performance in both video and audio fields. CNNs can also be trained through standard back-passing. CNNs are easier to train than other feed-forward neural network techniques and have the advantage of using fewer parameters.
컨볼루션 네트워크는 묶인 파라미터들을 가지는 노드들의 집합들을 포함하는 신경 네트워크들이다. 사용 가능한 트레이닝 데이터의 크기 증가와 연산 능력의 가용성이, 구분적 선형 단위 및 드롭아웃 트레이닝과 같은 알고리즘 발전과 결합되어, 많은 컴퓨터 비전 작업들이 크게 개선되었다. 오늘날 많은 작업에 사용할 수 있는 데이터 세트들과 같은 엄청난 양의 데이터 세트에서는 초과 맞춤(outfitting)이 중요하지 않으며, 네트워크의 크기를 늘리면 테스트 정확도가 향상된다. 컴퓨팅 리소스들의 최적 사용은 제한 요소가 된다. 이를 위해, 심층 신경 네트워크들의 분산된, 확장 가능한 구현예가 사용될 수 있다.Convolutional networks are neural networks that contain sets of nodes with bound parameters. The increased size of available training data and the availability of computational power, combined with advances in algorithms such as piecewise linear units and dropout training, have greatly improved many computer vision tasks. For huge data sets, such as those available for many tasks today, overfitting is not important, and increasing the size of the network improves test accuracy. Optimal use of computing resources becomes a limiting factor. To this end, a distributed, scalable implementation of deep neural networks may be used.
도 2는 일실시예에 따른 장치의 구성을 개략적으로 나타낸 도면이다.2 is a diagram schematically showing the configuration of an apparatus according to an embodiment.
도 2를 참조하면, 장치(200)는 WEB 클라이언트, Audio Encoder, Automatic Audio Validator, Machine Learning Engine, Audio Feature DB, Uploader history DB, Content DB를 포함할 수 있다.Referring to FIG. 2 , the
WEB 클라이언트는 업로드 UI, 오류 보고, 파일 매니저 등의 기능을 수행할 수 있다. WEB 클라이언트는 웹을 통해 오디오 파일과 메타 데이터가 업로드 될 수 있도록 웹 페이지를 제공할 수 있다. 여기서, 메타 데이터는 태그, 키워드 등의 입력으로 생성될 수 있으며, 확장자, 태그, DRM(Digital Rights Management) 정보, 설정 정보 등을 포함할 수 있다.The WEB client can perform functions such as upload UI, error reporting, and file manager. The WEB client can provide a web page so that audio files and metadata can be uploaded via the web. Here, the metadata may be generated by input of tags and keywords, and may include extensions, tags, digital rights management (DRM) information, setting information, and the like.
Audio Encoder는 Audio Feature, Metadata, Sound Waveform, Timecode 등을 확인하는 기능을 수행할 수 있다. 즉, Audio Encoder는 메타 데이터, 파형 정보, 타임 코드, 오디오 특성 정보 등을 수집하여 벡터화할 수 있다.Audio Encoder may perform a function of checking Audio Feature, Metadata, Sound Waveform, Timecode, and the like. That is, the audio encoder may collect and vectorize metadata, waveform information, time code, audio characteristic information, and the like.
Automatic Audio Validator는 Audio Feature DB 및 Uploader history DB에 저장된 정보를 활용하여, 기존 오디오 특성 정보 테이블과 업로드 히스토리 데이터와 비교하여, 입력 오디오의 벡터 값과 각 클러스터 간의 거리를 측정하고, 측정 결과를 기반으로 Positive와 Negative를 구분할 수 있다.Automatic Audio Validator utilizes the information stored in the Audio Feature DB and Uploader history DB, compares it with the existing audio characteristic information table and upload history data, measures the vector value of the input audio and the distance between each cluster, and based on the measurement result It is possible to distinguish between positive and negative.
Automatic Audio Validator는 오디오 파일의 특징(feature) 또는 특징 추출 구간(F1, F2, F3 등) 별로 Positive와 Negative를 구분한 후, D1 및 D3와 같이, 전체 구역이 Positive인 경우, Positive Sample로 분류할 수 있고, D2 및 D4와 같이, 하나 이상의 구역이 Negative인 경우, Negative Sample로 분류할 수 있다.Automatic Audio Validator classifies positives and negatives for each feature or feature extraction section (F1, F2, F3, etc.) of an audio file, and then classifies it as a positive sample if the entire area is positive, such as D1 and D3. If one or more regions are negative, such as D2 and D4, it can be classified as a negative sample.
Positive Sample로 분류된 오디오 파일은 Pass로 판단되어 Content DB로 전송될 수 있고, Negative Sample로 분류된 오디오 파일은 Fail로 판단되어 Timecode 기반의 오류 내용으로 보고될 수 있다.Audio files classified as positive samples may be determined as Pass and transmitted to the Content DB, and audio files classified as negative samples may be determined as Fail and reported as timecode-based error contents.
Audio Feature DB 및 Uploader history DB는 Machine Learning Engine에 의해 학습될 수 있다.Audio Feature DB and Uploader history DB can be learned by Machine Learning Engine.
도 3은 일실시예에 따른 인공지능을 기반으로 문화 콘텐츠와 관련된 가이드 음원을 검증하는 과정을 설명하기 위한 순서도이다.3 is a flowchart illustrating a process of verifying a guide sound source related to cultural content based on artificial intelligence according to an embodiment.
도 3을 참조하면, 먼저, S301 단계에서, 장치(200)는 제1 사용자 단말(110)로부터 제1 오디오 파일 및 제1 메타 데이터를 수신할 수 있다. 여기서, 제1 오디오 파일은 문화 콘텐츠와 관련된 가이드 음원이 녹음된 파일이고, 제1 메타 데이터는 제1 오디오 파일을 설명해 주는 데이터로, 키워드, 태그 정보 등을 포함할 수 있다.Referring to FIG. 3 , first, in step S301 , the
구체적으로, 장치(200)는 제1 오디오 파일의 업로드 및 제1 메타 데이터의 입력을 위한 웹 페이지를 제1 사용자 단말(110)로 제공할 수 있으며, 해당 웹 페이지를 통해 제1 오디오 파일이 선택되고 제1 메타 데이터가 입력되면, 제1 사용자 단말(110)로부터 제1 오디오 파일 및 제1 메타 데이터를 수신할 수 있다.Specifically, the
S302 단계에서, 장치(200)는 제1 오디오 파일에 대한 품질을 검사할 수 있다. In step S302 , the
구체적으로, 장치(200)는 제1 오디오 파일의 확장자를 확인하여, 제1 오디오 파일이 정상적인 오디오 파일인지 여부를 판단할 수 있고, 제1 오디오 파일의 파형을 분석하여, 제1 오디오 파일이 사용자 음성이 녹음된 오디오 파일인지 여부를 판단할 수 있고, 제1 오디오 파일의 주파수를 분석하여, 제1 오디오 파일이 사용자 음성이 녹음된 오디오 파일인지 여부를 판단하는 과정을 통해, 제1 오디오 파일에 대한 품질을 검사할 수 있다.Specifically, the
장치(200)는 제1 오디오 파일이 정상적인 오디오 파일이면서, 사용자 음성이 녹음된 오디오 파일로 판단되면, 제1 오디오 파일에 문제가 없는 것으로, 제1 오디오 파일에 대한 품질을 검사할 수 있다.When it is determined that the first audio file is a normal audio file and the user's voice is recorded as an audio file, the
장치(200)는 제1 오디오 파일이 정상적이지 않은 오디오 파일이거나, 사용자 음성이 녹음되지 않은 오디오 파일로 판단되면, 제1 오디오 파일에 문제가 있는 것으로, 제1 오디오 파일에 대한 품질을 검사할 수 있다.When it is determined that the first audio file is an abnormal audio file or an audio file in which the user's voice is not recorded, the
S303 단계에서, 장치(200)는 제1 오디오 파일에 대한 품질을 검사한 결과, 제1 오디오 파일에 문제가 발생하였는지 여부를 확인할 수 있다.In step S303 , as a result of checking the quality of the first audio file, the
S303 단계에서 제1 오디오 파일에 문제가 있는 것으로 확인되면, 장치(200)는 제1 사용자 단말(110)로 제1 오디오 파일의 재업로드를 위한 웹 페이지를 제1 사용자 단말(110)로 제공할 수 있다. 이후, S301 단계로 되돌아가, 장치(200)는 제1 사용자 단말(110)로부터 제1 오디오 파일을 다시 수신할 수 있다.If it is confirmed that there is a problem with the first audio file in step S303 , the
S303 단계에서 제1 오디오 파일에 문제가 없는 것으로 확인되면, S304 단계에서, 장치(200)는 제1 오디오 파일에서 샘플링을 통해 구역 별로 사운드 정보를 추출할 수 있다.If it is determined in step S303 that there is no problem in the first audio file, in step S304 , the
예를 들어, 장치(200)는 제1 오디오 파일에서 20초에 한 번씩 2초 동안 녹음된 소리를 사운드 정보로 추출할 수 있으며, 제1 구역에서 추출된 사운드 정보를 제1 사운드 정보로 추출하고, 제2 구역에서 추출된 사운드 정보를 제2 사운드 정보로 추출할 수 있다. 이때, 제1 구역은 제1 오디오 파일에서 최초 2초 동안 녹음된 구역이고, 제2 구역은 제1 구역으로부터 20초 이후 2초 동안 녹음된 구역일 수 있다.For example, the
S305 단계에서, 장치(200)는 구역 별로 추출된 사운드 정보에서 음성 인식을 통해 키워드를 확인할 수 있다.In step S305 , the
예를 들어, 제1 오디오 파일에서 제1 사운드 정보 및 제2 사운드 정보가 추출된 경우, 장치(200)는 제1 사운드 정보에서 음성 인식을 통해 제1 키워드를 확인할 수 있고, 제2 사운드 정보에서 음성 인식을 통해 제2 키워드를 확인할 수 있다.For example, when the first sound information and the second sound information are extracted from the first audio file, the
S306 단계에서, 장치(200)는 구역 별로 확인된 키워드를 기반으로, 제1 리스트를 생성할 수 있다.In step S306 , the
예를 들어, 제1 사운드 정보에서 제1 키워드가 확인되고, 제2 사운드 정보에서 제2 키워드가 확인된 경우, 장치(200)는 제1 키워드 및 제2 키워드를 포함하는 키워드 리스트인 제1 리스트를 생성할 수 있다.For example, when the first keyword is identified in the first sound information and the second keyword is identified in the second sound information, the
한편, S307 단계에서, 장치(200)는 제1 메타 데이터에 기초하여, 제1 입력 신호를 생성할 수 있다.Meanwhile, in step S307 , the
예를 들어, 장치(200)는 제1 메타 데이터에 기초하여, 제1 오디오 파일을 설명해 주는 키워드를 확인할 수 있으며, 확인된 키워드를 인코딩하여 제1 입력 신호를 생성할 수 있다.For example, the
S308 단계에서, 장치(200)는 제1 입력 신호를 제1 인공 신경망에 입력하여 제1 출력 신호를 획득할 수 있다.In step S308 , the
구체적으로, 장치(200)는 미리 학습된 제1 인공 신경망을 포함할 수 있다. 제1 인공 신경망은 메타 데이터를 통해 생성된 제1 입력 신호를 입력 받은 후, 메타 데이터와 관련이 있을 것으로 추론되는 키워드를 선별하고, 선별된 키워드 리스트로 생성된 제1 출력 신호를 출력하는 알고리즘일 수 있다.Specifically, the
S309 단계에서, 장치(200)는 제1 출력 신호에 기초하여, 제2 리스트를 생성할 수 있다. 여기서, 제2 리스트는 제1 메타 데이터와 관련된 키워드 리스트를 의미할 수 있다.In step S309 , the
예를 들어, 장치(200)는 제1 메타 데이터에 기초하여 생성된 제1 입력 신호를 제1 인공 신경망에 입력하여, 제1 인공 신경망으로부터 제1 출력 신호를 획득할 수 있으며, 제1 출력 신호를 통해 확인된 출력값이 “제1 키워드” 및 “제2 키워드”로 확인되면, 제1 키워드 및 제2 키워드를 포함하는 키워드 리스트인 제2 리스트를 생성할 수 있다.For example, the
제1 인공 신경망은 메타 데이터를 통해, 메타 데이터와 관련된 키워드를 선별하여 분석하도록 학습될 수 있다. 제1 인공 신경망은 도 9를 참조하여 후술되는 방법을 통해 학습될 수 있다. 이를 통해, 제1 인공 신경망은 메타 데이터와 관련이 있을 것으로 추론되는 키워드를 선별하고, 선별된 키워드의 리스트를 출력할 수 있다.The first artificial neural network may be trained to select and analyze keywords related to metadata through metadata. The first artificial neural network may be learned through a method described later with reference to FIG. 9 . Through this, the first artificial neural network may select a keyword that is inferred to be related to the metadata, and may output a list of the selected keywords.
S310 단계에서, 장치(200)는 제1 리스트 및 제2 리스트를 결합하여, 제3 리스트를 생성할 수 있다. 이때, 장치(200)는 제1 리스트 및 제2 리스트를 매칭하여, 매칭 결과를 제3 리스트로 생성할 수 있다.In step S310 , the
S311 단계에서, 장치(200)는 제3 리스트에 기초하여, 제2 입력 신호를 생성할 수 있다.In step S311 , the
예를 들어, 장치(200)는 제3 리스트에 포함된 키워드를 인코딩하여 제2 입력 신호를 생성할 수 있다.For example, the
S312 단계에서, 장치(200)는 제2 입력 신호를 제2 인공 신경망에 입력하여 제2 출력 신호를 획득할 수 있다.In operation S312 , the
구체적으로, 장치(200)는 미리 학습된 제2 인공 신경망을 포함할 수 있다. 제2 인공 신경망은 매칭된 리스트를 통해 생성된 제2 입력 신호를 입력 받은 후, 키워드 매칭 정도에 따라 오디오 파일에 대한 검증 결과를 추론하고, 추론된 검증 결과로 생성된 제2 출력 신호를 출력하는 알고리즘일 수 있다.Specifically, the
S313 단계에서, 장치(200)는 제2 출력 신호에 기초하여, 제1 오디오 파일에 대한 검증 결과를 생성할 수 있다.In operation S313 , the
예를 들어, 장치(200)는 제3 리스트에 기초하여 생성된 제2 입력 신호를 제2 인공 신경망에 입력하여, 제2 인공 신경망으로부터 제2 출력 신호를 획득할 수 있으며, 제2 출력 신호를 통해 확인된 출력값이 “0”으로 확인되면, 제1 오디오 파일에 대한 검증 결과를 검증 실패로 생성하고, 제2 출력 신호를 통해 확인된 출력값이 “1”로 확인되면, 제1 오디오 파일에 대한 검증 결과를 검증 성공으로 생성할 수 있다.For example, the
제2 인공 신경망은 매칭된 리스트를 통해, 오디오 파일에 대해 검증되었는지 분석하도록 학습될 수 있다. 제2 인공 신경망은 도 10을 참조하여 후술되는 방법을 통해 학습될 수 있다. 이를 통해, 제2 인공 신경망은 매칭된 리스트를 통해, 오디오 파일에 대한 검증이 성공인지 또는 실패인지 분석하여 출력할 수 있다. 이와 관련된 자세한 설명은 도 4 및 도 5를 참조하여 후술하기로 한다.The second artificial neural network may be trained to analyze whether the audio file has been verified through the matched list. The second artificial neural network may be learned through a method described later with reference to FIG. 10 . Through this, the second artificial neural network may analyze and output whether the verification of the audio file succeeds or fails through the matched list. A detailed description related thereto will be described later with reference to FIGS. 4 and 5 .
도 4는 일실시예에 따른 키워드 매칭 정도에 따라 오디오 파일에 대한 검증을 수행하는 과정을 설명하기 위한 순서도이다.4 is a flowchart illustrating a process of verifying an audio file according to a keyword matching degree according to an exemplary embodiment.
도 4를 참조하면, 먼저, S401 단계에서, 제2 인공 신경망은 제2 입력 신호가 입력되면, 제2 입력 신호에 기초하여, 제1 리스트에 포함된 키워드 별로 제2 리스트에 포함되는지 여부를 확인할 수 있다. 여기서, 제2 입력 신호는 제3 리스트에 기초하여 생성된 신호이고, 제3 리스트는 제1 리스트와 제2 리스트가 매칭되어 결합된 리스트이다.Referring to FIG. 4 , first, in step S401, when a second input signal is input, the second artificial neural network checks whether each keyword included in the first list is included in the second list based on the second input signal. can Here, the second input signal is a signal generated based on the third list, and the third list is a list in which the first list and the second list are matched and combined.
S402 단계에서, 제2 인공 신경망은 제1 리스트에 포함된 키워드를 제1-1 리스트와 제1-2 리스트로 구분할 수 있다. 여기서, 제1-1 리스트는 제1 리스트에 포함된 키워드 중 제2 리스트에 포함된 것으로 확인된 키워드 리스트이고, 제1-2 리스트는 제1 리스트에 포함된 키워드 중 제2 리스트에 포함되지 않은 것으로 확인된 키워드 리스트이다.In step S402 , the second artificial neural network may classify keywords included in the first list into a 1-1 list and a 1-2 list. Here, the 1-1 list is a keyword list confirmed to be included in the second list among keywords included in the first list, and the 1-2 list is a keyword list that is not included in the second list among keywords included in the first list. This is a list of confirmed keywords.
예를 들어, 제1 리스트에는 제1 키워드, 제2 키워드, 제3 키워드 및 제4 키워드가 포함되어 있고, 제2 리스트에는 제1 키워드 및 제2 키워드가 포함되어 있는 경우, 제2 인공 신경망은 제1 리스트에 포함된 제1 키워드, 제2 키워드, 제3 키워드 및 제4 키워드 각각이 제2 리스트에 포함되는지 여부를 확인한 결과, 제1 리스트에 포함된 키워드 중 제1 키워드 및 제2 키워드만 제2 리스트에 포함되어 있고, 제1 리스트에 포함된 키워드 중 제3 키워드 및 제4 키워드는 제2 리스트에 포함되어 있지 않으므로, 제1 키워드 및 제2 키워드를 제1-1 리스트로 구분하고, 제3 키워드 및 제4 키워드를 제1-2 리스트로 구분할 수 있다.For example, when the first list includes the first keyword, the second keyword, the third keyword, and the fourth keyword, and the second list includes the first keyword and the second keyword, the second artificial neural network is As a result of checking whether each of the first keyword, the second keyword, the third keyword, and the fourth keyword included in the first list is included in the second list, only the first keyword and the second keyword among the keywords included in the first list Since the third keyword and the fourth keyword among the keywords included in the second list and included in the first list are not included in the second list, the first keyword and the second keyword are divided into a 1-1 list, The third keyword and the fourth keyword may be divided into a 1-2 list.
S403 단계에서, 제2 인공 신경망은 제1-1 리스트에 포함된 키워드의 수를 제1 리스트에 포함된 키워드의 수로 나눈 값을 통해, 제1 리스트 및 제2 리스트 간의 매칭률을 산출할 수 있다.In step S403 , the second artificial neural network may calculate a matching rate between the first list and the second list through a value obtained by dividing the number of keywords included in the 1-1 list by the number of keywords included in the first list. .
예를 들어, 제1 리스트에는 제1 키워드, 제2 키워드, 제3 키워드 및 제4 키워드가 포함되어 있고, 제1-1 리스트에는 제1 키워드 및 제2 키워드가 포함되어 있는 경우, 제2 인공 신경망은 2를 4로 나눈 값을 통해, 제1 리스트 및 제2 리스트 간의 매칭률을 50%로 산출할 수 있다.For example, when the first list includes the first keyword, the second keyword, the third keyword, and the fourth keyword, and the 1-1 list includes the first keyword and the second keyword, the second artificial keyword The neural network may calculate a matching rate between the first list and the second list as 50% through a value obtained by dividing 2 by 4.
S404 단계에서, 제2 인공 신경망은 매칭률이 기준치 보다 큰지 여부를 확인할 수 있다. 여기서, 기준치는 실시예에 따라 상이하게 설정될 수 있다.In step S404 , the second artificial neural network may check whether the matching rate is greater than a reference value. Here, the reference value may be set differently depending on the embodiment.
S404 단계에서 매칭률이 기준치 보다 큰 것으로 확인되면, S405 단계에서, 제2 인공 신경망은 제1 오디오 파일에 대한 검증 결과를 검증 성공으로 분석하여 제2 출력 신호를 출력할 수 있다. 이때, 제2 인공 신경망은 검증 성공을 나타내는 출력값으로 제2 출력 신호를 생성한 후, 생성된 제2 출력 신호를 출력할 수 있다.If it is confirmed in step S404 that the matching rate is greater than the reference value, in step S405 , the second artificial neural network may analyze the verification result for the first audio file as verification success and output a second output signal. In this case, the second artificial neural network may generate a second output signal as an output value indicating verification success, and then output the generated second output signal.
S404 단계에서 매칭률이 기준치 보다 작은 것으로 확인되면, S406 단계에서, 제2 인공 신경망은 제1 오디오 파일에 대한 검증 결과를 검증 실패로 분석하여 제2 출력 신호를 출력할 수 있다. 이때, 제2 인공 신경망은 검증 실패를 나타내는 출력값으로 제2 출력 신호를 생성한 후, 생성된 제2 출력 신호를 출력할 수 있다.If it is determined in step S404 that the matching rate is smaller than the reference value, in step S406 , the second artificial neural network may analyze the verification result for the first audio file as a verification failure and output a second output signal. In this case, the second artificial neural network may generate a second output signal as an output value indicating verification failure, and then output the generated second output signal.
도 5는 일실시예에 따른 핵심 키워드 포함 여부에 따라 오디오 파일에 대한 검증을 수행하는 과정을 설명하기 위한 순서도이다.5 is a flowchart illustrating a process of verifying an audio file according to whether a key keyword is included, according to an exemplary embodiment.
먼저, 장치(200)는 제1 리스트 및 제2 리스트를 각각 생성한 이후, 제1 리스트에 포함된 키워드를 기반으로, 제1 오디오 파일을 제1 전시물의 오디오 가이드로 분석할 수 있다.First, after generating the first list and the second list, the
예를 들어, 제1 리스트에 제1 키워드 및 제2 키워드가 포함되어 있는 경우, 장치(200)는 제1 키워드 및 제2 키워드가 제1 전시물을 설명하는데 사용되는 키워드로 확인되면, 제1 오디오 파일을 제1 전시물의 오디오 가이드로 분석할 수 있다.For example, when the first keyword and the second keyword are included in the first list, the
장치(200)는 제1 전시물에 설정되어 있는 핵심 키워드 리스트인 제4 리스트를 획득할 수 있다. 이를 위해, 장치(200)의 데이터베이스에는 전시물 별로 구분되어 있는 핵심 키워드 리스트가 저장되어 있으며, 장치(200)는 데이터베이스를 조회하여, 제1 전시물의 핵심 키워드 리스트인 제4 리스트를 획득할 수 있다. 여기서, 핵심 키워드는 전시물에 대한 역사적인 사실, 전시물을 설명하는데 필수적인 용어 등을 포함할 수 있다.The
장치(200)는 제4 리스트가 획득되면, 제2 리스트에 제4 리스트를 추가할 수 있다. When the fourth list is obtained, the
이후, 장치(200)는 제1 리스트 및 제2 리스트를 결합하여, 제3 리스트를 생성하고, 제3 리스트에 기초하여, 제2 입력 신호를 생성한 후, 제2 입력 신호를 제2 인공 신경망에 입력할 수 있다.Thereafter, the
S501 단계에서, 제2 인공 신경망은 제2 입력 신호가 입력되면, 제2 입력 신호에 기초하여, 제1 리스트에 포함된 키워드와 제4 리스트에 포함된 키워드를 비교하여, 키워드 별로 일치하는지 여부를 확인할 수 있다. 여기서, 키워드는 연도, 날짜, 지역, 제작자 등 전시물의 특징을 나타내는 키워드일 수 있다.In step S501, when the second input signal is input, the second artificial neural network compares the keywords included in the first list with the keywords included in the fourth list based on the second input signal, and determines whether each keyword matches. can be checked Here, the keyword may be a keyword indicating the characteristics of the exhibit, such as year, date, region, and producer.
구체적으로, 제1 리스트에는 제1 키워드, 제2 키워드, 제3 키워드 및 제4 키워드가 포함되어 있고, 제4 리스트에는 제1 키워드 및 제2 키워드가 포함되어 있는 경우, 제2 인공 신경망은 제4 리스트에 포함된 제1 키워드와 제1 리스트에 포함된 제1 키워드가 일치하는지 여부를 확인하고, 제4 리스트에 포함된 제2 키워드와 제1 리스트에 포함된 제2 키워드가 일치하는지 여부를 확인할 수 있다.Specifically, when the first list includes the first keyword, the second keyword, the third keyword, and the fourth keyword, and the fourth list includes the first keyword and the second keyword, the second artificial neural network is 4 Check whether the first keyword included in the list matches the first keyword included in the first list, and check whether the second keyword included in the fourth list matches the second keyword included in the first list can be checked
예를 들어, 제1 키워드는 연도를 나타내는 키워드인 경우, 제2 인공 신경망은 제4 리스트에 포함된 제1 키워드와 제1 리스트에 포함된 제1 키워드가 일치하는지 여부를 확인한 결과, 제4 리스트에 포함된 제1 키워드가 1535년이고, 제1 리스트에 포함된 제1 키워드가 1535년으로 확인되면, 제4 리스트에 포함된 제1 키워드와 제1 리스트에 포함된 제1 키워드가 일치하는 것으로 확인할 수 있고, 제4 리스트에 포함된 제1 키워드가 1535년이고, 제1 리스트에 포함된 제1 키워드가 1534년으로 확인되면, 제4 리스트에 포함된 제1 키워드와 제1 리스트에 포함된 제1 키워드가 일치하지 않는 것으로 확인할 수 있다.For example, when the first keyword is a keyword indicating a year, the second artificial neural network determines whether the first keyword included in the fourth list matches the first keyword included in the first list, and as a result, the fourth list If the first keyword included in the year is 1535 and the first keyword included in the first list is confirmed to be 1535, it is determined that the first keyword included in the fourth list matches the first keyword included in the first list. If it is confirmed that the first keyword included in the fourth list is 1535 and the first keyword included in the first list is 1534, the first keyword included in the fourth list and the first keyword included in the first list It can be confirmed that the first keyword does not match.
S502 단계에서, 제2 인공 신경망은 제4 리스트에 포함된 키워드가 제1 리스트에 포함된 키워드와 전부 일치하는지 여부를 확인할 수 있다.In step S502, the second artificial neural network may check whether the keywords included in the fourth list all match the keywords included in the first list.
S502 단계에서 제4 리스트에 포함된 키워드가 제1 리스트에 포함된 키워드와 전부 일치하는지 여부를 확인할 수 있다.In step S502 , it may be checked whether the keywords included in the fourth list all match the keywords included in the first list.
S502 단계에서 제4 리스트에 포함된 키워드가 제1 리스트에 포함된 키워드와 전부 일치하는 것으로 확인되면, S503 단계에서, 제2 인공 신경망은 제1 오디오 파일에 대한 검증 결과를 검증 성공으로 분석하여 제2 출력 신호를 출력할 수 있다. 이때, 제2 인공 신경망은 검증 성공을 나타내는 출력값으로 제2 출력 신호를 생성한 후, 생성된 제2 출력 신호를 출력할 수 있다.If it is confirmed in step S502 that the keywords included in the fourth list match all the keywords included in the first list, in step S503, the second artificial neural network analyzes the verification result for the first audio file as verification success. 2 output signals can be output. In this case, the second artificial neural network may generate a second output signal as an output value indicating verification success, and then output the generated second output signal.
S502 단계에서 제4 리스트에 포함된 키워드가 제1 리스트에 포함된 키워드와 전부 일치하지 않고, 제4 리스트에 포함된 키워드 중 하나 이상이 제1 리스트에 포함된 키워드와 일치하지 않는 것으로 확인되면, S504 단계에서, 제2 인공 신경망은 제1 오디오 파일에 대한 검증 결과를 검증 실패로 분석하여 제2 출력 신호를 출력할 수 있다. 이때, 제2 인공 신경망은 검증 실패를 나타내는 출력값으로 제2 출력 신호를 생성한 후, 생성된 제2 출력 신호를 출력할 수 있다.If it is confirmed in step S502 that the keywords included in the fourth list do not all match the keywords included in the first list, and at least one of the keywords included in the fourth list does not match the keywords included in the first list, In step S504 , the second artificial neural network may analyze the verification result for the first audio file as a verification failure and output a second output signal. In this case, the second artificial neural network may generate a second output signal as an output value indicating verification failure, and then output the generated second output signal.
도 6은 일실시예에 따른 구역 별로 사운드 정보를 추출하여 결정하는 과정을 설명하기 위한 순서도이다.6 is a flowchart illustrating a process of extracting and determining sound information for each zone according to an exemplary embodiment.
도 6을 참조하면, 먼저, S601 단계에서, 장치(200)는 제1 오디오 파일에서 제1 구역의 사운드인 제1 사운드 정보를 추출할 수 있다.Referring to FIG. 6 , first, in step S601 , the
S602 단계에서, 장치(200)는 제1 사운드 정보를 분석하여, 제1 구역을 음성 구간인 제1 구간과 호흡 구간인 제2 구간으로 구분할 수 있다. 이때, 장치(200)는 제1 사운드 정보를 분석하여, 제1 구역 내에서 사용자 음성이 재생되는 음성 구간을 제1 구간으로 구분하고, 제1 구역 내에서 사용자 음성이 재생되지 않는 호흡 구간을 제2 구간으로 구분할 수 있다.In step S602 , the
S603 단계에서, 장치(200)는 제1 구간의 길이를 제1 구역의 길이로 나눈 값을 통해, 제1 비율을 산출할 수 있다.In step S603 , the
예를 들어, 제1 구역의 길이가 2초이고, 제1 구간의 길이가 1초인 경우, 장치(200)는 1을 2로 나눈 값을 통해, 제1 비율을 50%로 산출할 수 있다.For example, when the length of the first section is 2 seconds and the length of the first section is 1 second, the
S604 단계에서, 장치(200)는 제1 비율이 제1 기준 비율 보다 높은지 여부를 확인할 수 있다. 여기서, 제1 기준 비율은 실시예에 따라 상이하게 설정될 수 있다.In step S604 , the
S604 단계에서 제1 비율이 제1 기준 비율 보다 높은 것으로 확인되면, S610 단계에서, 장치(200)는 제1 구역에서 추출된 사운드 정보를 제1 사운드 정보로 결정할 수 있다.If it is determined in step S604 that the first ratio is higher than the first reference ratio, in step S610 , the
S604 단계에서 제1 비율이 제1 기준 비율 보다 낮은 것으로 확인되면, S605 단계에서, 장치(200)는 제1 비율이 제2 기준 비율 보다 높은지 여부를 확인할 수 있다. 여기서, 제2 기준 비율은 제1 기준 비율 보다 작은 값으로 설정될 수 있다.If it is determined in step S604 that the first ratio is lower than the first reference ratio, in step S605 , the
S605 단계에서 제1 비율이 제2 기준 비율 보다 높은 것으로 확인되면, S606 단계에서, 장치(200)는 제1 오디오 파일에서 제1 구역을 확장한 제2 구역의 사운드인 제2 사운드 정보를 추출할 수 있다.If it is determined in step S605 that the first ratio is higher than the second reference ratio, in step S606, the
예를 들어, 제1 오디오 파일에서 2초 동안 녹음된 구역인 제1 구역의 사운드인 제1 사운드 정보가 추출된 경우, 장치(200)는 제1 비율이 제2 기준 비율 보다 높은 것으로 확인되면, 제1 오디오 파일에서 제1 구역을 앞뒤로 1초씩 확장하여 4초 동안 녹음된 구역인 제2 구역의 사운드인 제2 사운드 정보를 추출할 수 있다.For example, when the first sound information, which is the sound of the first zone, which is the zone recorded for 2 seconds, is extracted from the first audio file, the
S607 단계에서, 장치(200)는 제2 사운드 정보를 분석하여, 제2 구역을 음성 구간인 제3 구간과 호흡 구간인 제4 구간으로 구분할 수 있다. 이때, 장치(200)는 제2 사운드 정보를 분석하여, 제2 구역 내에서 사용자 음성이 재생되는 음성 구간을 제3 구간으로 구분하고, 제2 구역 내에서 사용자 음성이 재생되지 않는 호흡 구간을 제4 구간으로 구분할 수 있다.In step S607 , the
S608 단계에서, 장치(200)는 제3 구간의 길이를 제2 구역의 길이로 나눈 값을 통해, 제2 비율을 산출할 수 있다.In step S608 , the
S609 단계에서, 장치(200)는 제2 비율이 제1 기준 비율 보다 높은지 여부를 확인할 수 있다.In step S609 , the
S609 단계에서 제2 비율이 제1 기준 비율 보다 높은 것으로 확인되면, S611 단계에서, 장치(200)는 제1 구역에서 추출된 사운드 정보를 제2 사운드 정보로 결정할 수 있다.If it is determined in step S609 that the second ratio is higher than the first reference ratio, in step S611 , the
한편, S605 단계에서 제1 비율이 제2 기준 비율 보다 낮은 것으로 확인되거나, S609 단계에서 제2 비율이 제1 기준 비율 보다 낮은 것으로 확인되면, S612 단계에서, 장치(200)는 제1 구역에서 추출된 사운드 정보가 없는 것으로 결정할 수 있다.On the other hand, if it is confirmed that the first ratio is lower than the second reference ratio in step S605 or it is confirmed that the second ratio is lower than the first reference ratio in step S609, in step S612, the
도 7은 일실시예에 따른 인공지능을 기반으로 호스트 방화벽의 정책 설정을 제어하는 과정을 설명하기 위한 순서도이다.7 is a flowchart illustrating a process of controlling policy settings of a host firewall based on artificial intelligence according to an embodiment.
먼저, 장치(200)는 문화 콘텐츠 플랫폼을 제공하기 위해, 복수의 서버와 연결될 수 있으며, 복수의 서버는 제1 서버, 제2 서버 등을 포함할 수 있다. 복수의 서버 각각은 내부망을 통해 장치(200)와 연결되어 있는 호스트로, 내부망으로 연결된 네트워크를 통해 장치(200)와 데이터를 송수신할 수 있다.First, the
도 7을 참조하면, S701 단계에서, 장치(200)는 제1 서버로부터 제1 서버의 운영체제 정보 및 제1 서버의 네트워크 설정 정보를 수신할 수 있다. 여기서, 제1 서버의 운영체제 정보는 제1 서버에 설치되어 운영되고 있는 운영체제의 종류, 버전 등을 식별하기 위한 정보를 포함할 수 있고, 제1 서버의 네트워크 설정 정보는 제1 서버의 네트워크 설정 상태를 나타내는 정보를 포함할 수 있다.Referring to FIG. 7 , in step S701 , the
S702 단계에서, 장치(200)는 제1 서버의 운영체제 정보 및 제1 서버의 네트워크 설정 정보를 기초로, 제1 서버의 네트워크 연결 상태를 분석할 수 있다. 이때, 장치(200)는 제1 서버의 네트워크 연결 상태를 분석하여, 제1 서버의 네트워크 연결 상태에 대한 분석 결과를 생성할 수 있다. 여기서, 제1 서버의 네트워크 연결 상태에 대한 분석 결과는 제1 서버가 어느 운영체제로 운영되고 있으며, 제1 서버가 어느 네트워크 포트를 통해 연결되어 있는 상태인지를 분석한 결과를 포함할 수 있다.In step S702 , the
S703 단계에서, 장치(200)는 제1 서버의 네트워크 연결 상태에 대한 분석 결과를 장치(200) 내에서 미리 학습된 제3 인공 신경망에 적용할 수 있다.In step S703 , the
일실시예에 따르면, 제3 인공 신경망은 서버의 네트워크 연결 상태에 대한 분석 결과를 입력 받은 후, 서버에게 적합한 방화벽 정책을 분석하여 출력하는 알고리즘일 수 있다.According to an embodiment, the third artificial neural network may be an algorithm that analyzes and outputs a firewall policy suitable for the server after receiving an analysis result of the server's network connection state.
S704 단계에서, 장치(200)는 제3 인공 신경망의 출력을 기초로, 제1 서버에게 적합한 방화벽 정책을 선정할 수 있다.In step S704 , the
예를 들어, 장치(200)는 제1 서버의 네트워크 연결 상태에 대한 분석 결과를 제3 인공 신경망에 적용하여, 제3 인공 신경망의 출력을 확인한 결과, 출력값이 “0”으로 확인되면, 제1 서버에게 적합한 방화벽 정책을 제1 정책으로 선정하고, 출력값이 “1”로 확인되면, 제1 서버에게 적합한 방화벽 정책을 제2 정책으로 선정할 수 있다.For example, the
제3 인공 신경망은 서버의 네트워크 연결 상태에 대한 분석 결과를 통해, 서버에게 적합한 방화벽 정책을 분석하도록 학습될 수 있다. 제3 인공 신경망은 도 10을 참조하여 후술되는 방법을 통해 학습될 수 있다. 이를 통해, 제3 인공 신경망은 서버의 네트워크 연결 상태를 고려하여, 서버에게 적합한 방화벽 정책을 분석하여 출력할 수 있다.The third artificial neural network may be trained to analyze a firewall policy suitable for the server through the analysis result of the server's network connection state. The third artificial neural network may be learned through a method described later with reference to FIG. 10 . Through this, the third artificial neural network may analyze and output a firewall policy suitable for the server in consideration of the network connection state of the server.
S705 단계에서, 장치(200)는 S704 단계에서 선정된 정책이 제1 서버의 방화벽 정책에 포함되어 있는지 여부를 확인할 수 있다. 예를 들어, 제1 서버에게 적합한 방화벽 정책으로 제1 정책이 선정되면, 장치(200)는 제1 정책이 제1 서버의 방화벽 정책에 포함되어 있는지 여부를 확인할 수 있다.In step S705, the
이를 위해, 장치(200)의 데이터베이스에는 복수의 서버 각각에 설정되어 있는 방화벽 정책에 대한 정보가 서버 별로 구분되어 저장될 수 있다. 방화벽 정책에 대한 정보는 서버에 설정되어 있는 방화벽 정책에 따라 수가 상이할 수 있으며, 하나의 서버에 복수의 방화벽 정책이 설정되어 있는 경우, 복수의 방화벽 정책 각각에 대한 우선순위가 설정되어 있을 수 있다.To this end, information on the firewall policy set in each of the plurality of servers may be stored separately for each server in the database of the
S705 단계에서 제1 정책이 제1 서버의 방화벽 정책에 포함되어 있는 것으로 확인되면, S706 단계에서, 장치(200)는 제1 서버의 방화벽 정책에 대한 변경이 필요하지 않은 것으로 판단할 수 있다.If it is determined in step S705 that the first policy is included in the firewall policy of the first server, in step S706 , the
즉, 제1 서버에게 적합한 방화벽 정책으로 선정된 제1 정책이 제1 서버에 이미 설정되어 있으므로, 장치(200)는 제1 서버의 방화벽 정책에 대한 유지가 필요한 것으로 판단할 수 있다.That is, since the first policy selected as the firewall policy suitable for the first server is already set in the first server, the
S706 단계 이후, 일정 기간이 지나면, S701 단계로 되돌아가, 장치(200)는 제1 서버로부터 제1 서버의 운영체제 정보 및 제1 서버의 네트워크 설정 정보를 다시 수신하여, 제1 서버에게 적합한 방화벽 정책을 다시 선정할 수 있다.After step S706, when a certain period elapses, the process returns to step S701, the
한편, S705 단계에서 제1 정책이 제1 서버의 방화벽 정책에 포함되어 있지 않은 것으로 확인되면, S707 단계에서, 장치(200)는 제1 서버의 방화벽 정책에 대한 변경이 필요한 것으로 판단할 수 있다.Meanwhile, if it is determined in step S705 that the first policy is not included in the firewall policy of the first server, in step S707 , the
즉, 제1 서버에게 적합한 방화벽 정책으로 선정된 제1 정책이 제1 서버에 설정되어 있지 않으므로, 장치(200)는 제1 서버의 방화벽 정책에 대한 변경이 필요한 것으로 판단할 수 있다.That is, since the first policy selected as the firewall policy suitable for the first server is not set in the first server, the
S708 단계에서, 장치(200)는 제1 서버의 방화벽 정책에 선정된 정책을 추가하여 등록할 수 있다. 예를 들어, 제1 서버에게 적합한 방화벽 정책으로 제1 정책이 선정되면, 장치(200)는 제1 서버의 방화벽 정책에 제1 정책을 추가하여 등록할 수 있다. 이때, 제1 서버의 방화벽 정책에 제2 정책이 이미 등록되어 있는 상태인 경우, 제1 서버의 방화벽 정책에 제1 정책이 추가로 등록될 수 있다. 이를 통해, 장치(200)는 제1 서버의 방화벽 정책에 복수의 정책이 등록되어 있는 경우, 복수의 정책 각각에 대한 우선순위를 설정할 수 있다.In step S708 , the
제1 서버의 방화벽 정책에 제1 정책을 추가하여 등록하는 과정은 장치(200)의 데이터베이스에 저장되어 있는 제1 서버의 방화벽 정책에 대한 정보에 제1 정책을 추가하여 갱신하는 것으로, 방화벽 정책에 대한 설정은 S709 단계를 통해 수행될 수 있다.The process of adding and registering the first policy to the firewall policy of the first server is to add and update the first policy to the information about the firewall policy of the first server stored in the database of the
S709 단계에서, 장치(200)는 제1 서버의 방화벽 정책에 제1 정책이 추가로 등록되면, 제1 서버의 방화벽 정책에 대한 설정 변경 명령을 제1 서버로 전송하여, 제1 정책이 제1 서버의 방화벽 정책으로 설정되도록 제어할 수 있다. 여기서, 제1 서버의 방화벽 정책에 대한 설정 변경 명령은 제1 서버의 방화벽 정책에 제1 정책을 추가하여 설정하기 위한 명령이고, 제1 서버는 제1 서버의 방화벽 정책에 대한 설정 변경 명령을 통해, 제1 정책을 제1 서버의 방화벽 정책으로 추가하여 설정할 수 있다.In step S709 , when the first policy is additionally registered in the firewall policy of the first server, the
S709 단계 이후, 일정 기간이 지나면, S701 단계로 되돌아가, 장치(200)는 제1 서버로부터 제1 서버의 운영체제 정보 및 제1 서버의 네트워크 설정 정보를 다시 수신하여, 제1 서버에게 적합한 방화벽 정책을 다시 선정할 수 있다.After step S709, when a certain period elapses, the process returns to step S701, the
도 8은 일실시예에 따른 공격으로 추정되는 접근을 감지하여, 공격 횟수에 따라 대응 방안을 제공하는 과정을 설명하기 위한 순서도이다.8 is a flowchart illustrating a process of detecting an approach estimated as an attack and providing a countermeasure according to the number of attacks, according to an exemplary embodiment.
도 8을 참조하면, 먼저, S801 단계에서, 장치(200)는 제1 서버로부터 제1 서버의 네트워크 트래픽에 대한 모니터링 정보를 수신할 수 있다. 여기서, 제1 서버의 네트워크 트래픽에 대한 모니터링 정보는 제1 서버에서 어느 포트로 접속이 이루어져 트래픽이 발생하였는지에 대한 모니터링 정보, 제1 서버에 접속한 IP 주소 별로 시간당 얼마만큼의 트래픽을 발생시켰는지에 대한 모니터링 정보 등을 포함할 수 있다.Referring to FIG. 8 , first, in step S801 , the
S802 단계에서, 장치(200)는 제1 서버의 네트워크 트래픽에 대한 모니터링 정보를 장치(200) 내에서 미리 학습된 제4 인공 신경망에 적용할 수 있다.In step S802 , the
일실시예에 따르면, 제4 인공 신경망은 서버의 네트워크 트래픽에 대한 모니터링 정보를 입력 받은 후, 서버에 공격으로 추정되는 접근이 감지되었는지 여부에 대한 검출 결과를 출력하는 알고리즘일 수 있다. 여기서, 공격은 서버에 대한 공격으로, 랜섬웨어, 해킹 등을 포함할 수 있다.According to an embodiment, the fourth artificial neural network may be an algorithm that receives monitoring information on network traffic of a server and outputs a detection result of whether an approach estimated as an attack is detected to the server. Here, the attack is an attack on the server, and may include ransomware, hacking, and the like.
S803 단계에서, 장치(200)는 제4 인공 신경망의 출력을 기초로, 제1 서버에 공격으로 추정되는 접근이 감지되었는지 여부를 검출할 수 있다.In step S803 , the
예를 들어, 장치(200)는 제1 서버의 네트워크 트래픽에 대한 모니터링 정보를 제4 인공 신경망에 적용하여, 제4 인공 신경망의 출력을 확인한 결과, 출력값이 “0”으로 확인되면, 제1 서버에 공격으로 추정되는 접근이 감지되지 않은 것으로 검출하고, 출력값이 “1”로 확인되면, 제1 서버에 공격으로 추정되는 접근이 감지된 것으로 검출할 수 있다.For example, the
제4 인공 신경망은 서버의 네트워크 트래픽에 대한 모니터링 정보를 통해, 서버에 공격으로 추정되는 접근이 감지되었는지 분석하도록 학습될 수 있다. 제4 인공 신경망은 도 10을 참조하여 후술되는 방법을 통해 학습될 수 있다. 이를 통해, 제4 인공 신경망은 서버의 네트워크 트래픽에 대한 변동 상태를 고려하여, 서버에 공격으로 추정되는 접근이 감지되었는지를 분석하여 출력할 수 있다.The fourth artificial neural network may be trained to analyze whether an approach estimated as an attack is detected to the server through monitoring information on network traffic of the server. The fourth artificial neural network may be learned through a method described later with reference to FIG. 10 . Through this, the fourth artificial neural network may analyze and output whether an approach estimated as an attack is detected to the server in consideration of the change state of the server's network traffic.
S804 단계에서, 장치(200)는 기준 기간 동안 제1 서버에 공격으로 추정되는 접근이 몇 번 감지되었는지 확인하여, 제1 서버가 기준 기간 동안 공격받은 횟수인 제1 공격 횟수를 산출할 수 있다. 여기서, 기준 기간은 실시예에 따라 상이하게 설정될 수 있으며, 기준 기간 동안 S801 단계부터 S803 단계까지의 과정이 반복 수행될 수 있다. 이를 통해, 장치(200)는 기준 기간 동안 제1 서버에 공격으로 추정되는 접근이 몇 번 감지되었는지 확인하여, 제1 공격 횟수를 산출할 수 있다.In step S804 , the
S805 단계에서, 장치(200)는 제1 공격 횟수가 제1 기준 횟수 보다 적은지 여부를 확인할 수 있다. 여기서, 제1 기준 횟수는 기준 기간의 길이에 비례하여 상이하게 설정될 수 있다.In step S805 , the
S805 단계에서 제1 공격 횟수가 제1 기준 횟수 보다 적은 것으로 확인되면, S807 단계에서, 장치(200)는 제1 서버의 상태를 정상 상태로 판단할 수 있다.If it is determined in step S805 that the number of first attacks is less than the first reference number, in step S807 , the
S807 단계 이후, 일정 기간이 지나면, S801 단계로 되돌아가, 장치(200)는 제1 서버로부터 제1 서버의 네트워크 트래픽에 대한 모니터링 정보를 다시 수신하여, 제1 공격 횟수를 다시 산출할 수 있다.After a certain period of time after step S807, the process returns to step S801, and the
S805 단계에서 제1 공격 횟수가 제1 기준 횟수 보다 많은 것으로 확인되면, S806 단계에서, 장치(200)는 제1 공격 횟수가 제2 기준 횟수 보다 적은지 여부를 확인할 수 있다. 여기서, 제2 기준 횟수는 제1 기준 횟수 보다 많은 값으로 설정될 수 있다.If it is determined in step S805 that the number of first attacks is greater than the first reference number, in step S806 , the
S806 단계에서 제1 공격 횟수가 제2 기준 횟수 보다 적은 것으로 확인되면, S808 단계에서, 장치(200)는 제1 서버의 상태를 경고 상태로 판단할 수 있다.If it is determined in step S806 that the number of first attacks is less than the second reference number, in step S808, the
S806 단계에서 제1 공격 횟수가 제2 기준 횟수 보다 많은 것으로 확인되면, S809 단계에서, 장치(200)는 제1 서버의 상태를 위험 상태로 판단할 수 있다.If it is determined in step S806 that the number of first attacks is greater than the second reference number, in step S809, the
S810 단계에서, 장치(200)는 제1 서버의 상태가 경고 상태로 판단되면, 제1 서버의 공격을 경고하는 알림 메시지를 제1 관리자 단말로 전송할 수 있다. 여기서, 제1 관리자 단말은 제1 서버의 관리자로 등록되어 있는 제1 관리자가 사용하는 단말을 의미하며, 장치(200)의 데이터베이스에는 제1 관리자 단말의 연락처 정보가 저장되어 있어, 이를 통해, 장치(200)는 제1 관리자 단말로 알림 메시지를 전송할 수 있다.In step S810 , when it is determined that the state of the first server is a warning state, the
S811 단계에서, 장치(200)는 제1 서버의 상태가 위험 상태로 판단되면, 제1 정책을 통해 연결이 허용되어 있는 제1 포트의 연결 차단 명령을 제1 서버로 전송하여, 제1 서버에서 제1 포트를 통한 연결이 차단되도록 제어할 수 있다.In step S811 , when the state of the first server is determined to be in a critical state, the
즉, 제1 서버에는 제1 정책이 방화벽 정책으로 설정되어 있고, 제1 정책은 제1 포트를 통해 연결을 허용하는 설정을 포함하고 있어, 제1 서버의 네트워크 연결 상태는 제1 포트를 통한 연결을 허용하고 있는 상태로, 제1 포트를 통해 트래픽이 발생되고 있는데, 제1 포트를 통한 공격받은 횟수가 너무 많은 경우, 장치(200)는 제1 포트의 연결 차단 명령을 제1 서버로 전송하여, 제1 서버에서 제1 포트를 통한 연결이 차단되도록 제어할 수 있다. 이때, 제1 서버는 제1 포트의 연결 차단 명령을 통해 제1 포트의 연결을 차단시켜, 제1 포트를 통해 트래픽이 발생하지 않도록 처리할 수 있다.That is, in the first server, the first policy is set as a firewall policy, and the first policy includes a setting to allow a connection through the first port, so that the network connection state of the first server is connected through the first port. In a state in which traffic is being generated through the first port, when the number of attacks through the first port is too large, the
도 9는 일실시예에 따른 인공 신경망의 학습을 설명하기 위한 도면이다.9 is a diagram for explaining learning of an artificial neural network according to an embodiment.
인공 신경망은 장치(200)에 포함되는 구성일 수 있으며, 장치(200) 또는 별도의 학습 장치를 통해서 학습될 수 있다.The artificial neural network may be a component included in the
제1 인공 신경망은 메타 데이터를 통해 생성된 제1 입력 신호를 입력 받은 후, 메타 데이터와 관련이 있을 것으로 추론되는 키워드를 선별하고, 선별된 키워드 리스트로 생성된 제1 출력 신호를 출력할 수 있다.After receiving the first input signal generated through the metadata, the first artificial neural network may select a keyword that is inferred to be related to the metadata and output the first output signal generated as the selected keyword list. .
이하에서는 학습 장치를 통해 제1 인공 신경망이 학습되는 과정을 설명한다.Hereinafter, a process in which the first artificial neural network is learned through the learning device will be described.
먼저, S901 단계에서, 학습 장치는 트레이닝 데이터(training data)와 레이블(label)을 획득할 수 있다.First, in step S901, the learning apparatus may acquire training data and a label.
제1 인공 신경망의 학습을 위해, 학습 장치는 각각의 키워드 정보 및 각각의 키워드와 연관이 있는 연관 키워드 정보를 포함하는 데이터 세트를 각각의 트레이닝 데이터로 획득할 수 있다. 또한, 학습 장치는 각각의 키워드와 연관 키워드 간의 관련도를 각각의 트레이닝 데이터에 대응하는 레이블로 획득할 수 있다.For learning of the first artificial neural network, the learning apparatus may obtain a data set including each keyword information and related keyword information related to each keyword as each training data. Also, the learning apparatus may obtain a degree of relevance between each keyword and a related keyword as a label corresponding to each training data.
S902 단계에서, 학습 장치는 트레이닝 데이터로부터 인공 신경망의 입력을 생성할 수 있다.In step S902, the learning apparatus may generate an input of the artificial neural network from the training data.
학습 장치는 트레이닝 데이터를 제1 인공 신경망의 입력으로 그대로 사용하거나, 각각의 트레이닝 데이터에서 불필요한 정보를 제거하는 통상의 프로세스를 거친 후, 제1 인공 신경망의 입력을 생성할 수 있다.The learning apparatus may use the training data as it is as an input of the first artificial neural network, or may generate an input of the first artificial neural network after a normal process of removing unnecessary information from each training data.
S903 단계에서, 학습 장치는 입력을 인공 신경망에 적용할 수 있다.In step S903, the learning apparatus may apply the input to the artificial neural network.
장치(200)에 포함된 제1 인공 신경망은 지도 학습(supervised learning)에 따라 학습되는 인공 신경망일 수 있다. 제1 인공 신경망은 지도 학습을 통해 학습시키기에 적합한 컨볼루션 신경망(convolutional neural network, CNN) 또는 리커런트 신경망(recurrent neural network, RNN) 구조일 수 있다.The first artificial neural network included in the
S904 단계에서, 학습 장치는 인공 신경망으로부터 출력을 획득할 수 있다.In step S904, the learning apparatus may obtain an output from the artificial neural network.
제1 인공 신경망의 출력은 메타 데이터와 관련이 있는 키워드의 추론일 수 있다. 구체적으로, 제1 인공 신경망은 메타 데이터와 관련이 있을 것으로 추론되는 키워드를 선별하고, 선별된 키워드 리스트로 생성된 제1 출력 신호를 출력할 수 있다.The output of the first artificial neural network may be inference of keywords related to metadata. Specifically, the first artificial neural network may select a keyword that is inferred to be related to the metadata, and may output a first output signal generated from the selected keyword list.
S905 단계에서, 학습 장치는 출력과 레이블을 비교할 수 있다. 추론에 해당하는 인공 신경망의 출력과 정답에 해당하는 레이블을 비교하는 과정은 손실함수(loss function)를 계산하여 이루어질 수 있다. 손실함수는 기 알려진 평균 제곱 오차(mean squared error, MSE), 교차 엔트로피 오차(cross entropy error, CEE) 등이 이용될 수 있다. 그러나, 이에 제한되는 것은 아니며, 인공 신경망의 출력과 레이블 간의 편차, 오차 내지는 차이를 측정할 수 있다면, 다양한 인공 신경망 모델들에서 이용되는 손실함수들이 이용될 수 있다.In step S905, the learning apparatus may compare the output with the label. The process of comparing the output of the artificial neural network corresponding to the inference and the label corresponding to the correct answer may be performed by calculating a loss function. As the loss function, a known mean squared error (MSE), cross entropy error (CEE), etc. may be used. However, the present invention is not limited thereto, and loss functions used in various artificial neural network models may be used if the deviation, error, or difference between the output of the artificial neural network and the label can be measured.
S906 단계에서, 학습 장치는 비교값을 기초로 인공 신경망을 최적화할 수 있다. 학습 장치는 비교값이 점점 작아지도록 인공 신경망의 노드(node)들의 웨이트(weight)를 갱신함으로써, 추론에 해당하는 인공 신경망의 출력과 정답에 해당하는 레이블을 점점 일치시킬 수 있고, 이를 통해 인공 신경망은 정답에 가까운 추론을 출력하도록 최적화될 수 있다. 구체적으로, 학습 장치는 비교값에 해당하는 손실함수가 최소값의 추정치에 가까워지도록 인공 신경망의 웨이트(weight)를 재설정하는 과정을 반복함으로써 인공 신경망을 최적화할 수 있다. 인공 신경망의 최적화를 위해 기 알려진 역전파(backpropagation) 알고리즘, 확률론적 경사하강법(stochastic gradient descent) 등이 이용될 수 있다. 그러나, 이에 제한되는 것은 아니며, 다양한 신경망 모델들에서 이용되는 웨이트의 최적화 알고리즘이 이용될 수 있다.In step S906 , the learning apparatus may optimize the artificial neural network based on the comparison value. The learning apparatus can gradually match the output of the artificial neural network corresponding to inference and the label corresponding to the correct answer by updating the weights of the nodes of the artificial neural network so that the comparison value becomes smaller and smaller, and through this, the artificial neural network can be optimized to output an inference close to the correct answer. Specifically, the learning apparatus may optimize the artificial neural network by repeating the process of resetting the weight of the artificial neural network so that the loss function corresponding to the comparison value approaches the estimated value of the minimum value. A known backpropagation algorithm, stochastic gradient descent, or the like may be used for optimization of an artificial neural network. However, the present invention is not limited thereto, and a weight optimization algorithm used in various neural network models may be used.
학습 장치는 이와 같은 과정을 반복함으로써 인공 신경망을 학습시킬 수 있다.The learning apparatus may train the artificial neural network by repeating such a process.
이를 통해, 메타 데이터를 통해 생성된 제1 입력 신호를 입력 받은 후, 메타 데이터와 관련이 있을 것으로 추론되는 키워드를 선별하고, 선별된 키워드 리스트로 생성된 제1 출력 신호를 출력하는 제1 인공 신경망을 학습시킬 수 있다. 제1 인공 신경망은 메타 데이터와 관련이 있을 것으로 추론되는 키워드를 출력하는데 사용될 수 있다.Through this, after receiving the first input signal generated through the metadata, the first artificial neural network selects a keyword that is inferred to be related to the metadata and outputs the first output signal generated from the selected keyword list can be learned The first artificial neural network may be used to output a keyword that is inferred to be related to the metadata.
도 10은 다른 실시예에 따른 인공 신경망의 학습을 설명하기 위한 도면이다.10 is a diagram for explaining learning of an artificial neural network according to another embodiment.
일실시예에 따르면, 인공 신경망은 제2 인공 신경망, 제3 인공 신경망 및 제4 인공 신경망 중 어느 하나일 수 있다. 여기서, 제2 인공 신경망은 매칭된 리스트를 통해 생성된 제2 입력 신호를 입력 받은 후, 키워드 매칭 정도에 따라 오디오 파일에 대한 검증 결과를 추론하고, 추론된 검증 결과로 생성된 제2 출력 신호를 출력하는 알고리즘이고, 제3 인공 신경망은 서버의 네트워크 연결 상태에 대한 분석 결과를 입력 받은 후, 서버에게 적합한 방화벽 정책을 분석하여 출력하는 알고리즘이고, 제4 인공 신경망은 서버의 네트워크 트래픽에 대한 모니터링 정보를 입력 받은 후, 서버에 공격으로 추정되는 접근이 감지되었는지 여부에 대한 검출 결과를 출력하는 알고리즘일 수 있다. According to an embodiment, the artificial neural network may be any one of the second artificial neural network, the third artificial neural network, and the fourth artificial neural network. Here, after receiving the second input signal generated through the matched list, the second artificial neural network infers the verification result for the audio file according to the keyword matching degree, and receives the second output signal generated by the inferred verification result. An algorithm that outputs, the third artificial neural network is an algorithm to analyze and output a firewall policy suitable for the server after receiving the analysis result of the server's network connection state, and the fourth artificial neural network is monitoring information for the server's network traffic After receiving the input, it may be an algorithm that outputs a detection result as to whether an approach estimated as an attack is detected to the server.
인공 신경망의 학습이 이루어지는 학습 장치는 인공지능 기반 문화 콘텐츠 관련 가이드 음원의 검증 방법을 제공하는 학습 장치와 동일한 장치일 수도 있고, 별개의 장치일 수도 있다. 이하에서는 인공 신경망이 학습되는 과정을 설명한다.The learning device in which the artificial neural network is trained may be the same device as the learning device that provides the verification method of the guide sound source related to the artificial intelligence-based cultural content, or it may be a separate device. Hereinafter, a process in which an artificial neural network is trained will be described.
먼저, S1001 단계에서, 학습 장치는 인공 신경망에 입력할 입력을 생성할 수 있다. 이때, 학습 장치는 제2 인공 신경망에 입력하기 위해, 제3 리스트에 기초하여 제2 입력 신호를 생성할 수 있고, 제3 인공 신경망에 입력하기 위해, 서버의 네트워크 연결 상태에 대한 분석 결과를 기초로 입력을 생성할 수 있고, 제4 인공 신경망에 입력하기 위해, 서버의 네트워크 트래픽에 대한 모니터링 정보를 기초로 입력을 생성할 수 있다.First, in step S1001, the learning apparatus may generate an input to be input to the artificial neural network. In this case, the learning apparatus may generate a second input signal based on the third list to input to the second artificial neural network, and based on the analysis result of the network connection state of the server to input to the third artificial neural network. to generate an input, and to input to the fourth artificial neural network, the input may be generated based on monitoring information on network traffic of the server.
구체적으로, 학습 장치는 제3 리스트에 포함된 키워드에 대해 전처리하는 과정을 수행할 수 있다. 전처리가 수행된 제3 리스트를 제2 인공 신경망의 입력으로 그대로 사용하거나, 불필요한 정보를 제거하는 통상의 처리를 거쳐 제2 인공 신경망의 입력을 생성할 수 있다.Specifically, the learning apparatus may perform a process of preprocessing keywords included in the third list. The preprocessed third list may be used as it is as an input to the second artificial neural network, or an input of the second artificial neural network may be generated through a normal process of removing unnecessary information.
또한, 학습 장치는 서버의 네트워크 연결 상태에 대한 분석 결과에 대해 전처리하는 과정을 수행할 수 있다. 전처리가 수행된 네트워크 연결 상태에 대한 분석 결과를 제3 인공 신경망의 입력으로 그대로 사용하거나, 불필요한 정보를 제거하는 통상의 처리를 거쳐 제3 인공 신경망의 입력을 생성할 수 있다.In addition, the learning apparatus may perform a process of pre-processing the analysis result of the network connection state of the server. The analysis result of the preprocessed network connection state may be directly used as an input of the third artificial neural network, or an input of the third artificial neural network may be generated through a normal process of removing unnecessary information.
또한, 학습 장치는 서버의 네트워크 트래픽에 대한 모니터링 정보를 전처리하는 과정을 수행할 수 있다. 전처리가 수행된 서버의 네트워크 트래픽에 대한 모니터링 정보를 제4 인공 신경망의 입력으로 그대로 사용하거나, 불필요한 정보를 제거하는 통상의 처리를 거쳐 제4 인공 신경망의 입력을 생성할 수 있다.Also, the learning apparatus may perform a process of pre-processing monitoring information for network traffic of the server. The monitoring information on the network traffic of the server on which the preprocessing has been performed may be used as it is as an input of the fourth artificial neural network, or an input of the fourth artificial neural network may be generated through a normal process of removing unnecessary information.
S1002 단계에서, 학습 장치는 인공 신경망에 입력을 적용할 수 있다. 이때, 학습 장치는 제2 인공 신경망의 입력을 생성한 경우, 제2 인공 신경망에 입력을 적용하고, 제3 인공 신경망의 입력을 생성한 경우, 제3 인공 신경망에 입력을 적용하고, 제4 인공 신경망의 입력을 생성한 경우, 제4 인공 신경망에 입력을 적용할 수 있다.In step S1002, the learning apparatus may apply an input to the artificial neural network. In this case, the learning apparatus applies the input to the second artificial neural network when generating the input of the second artificial neural network, and applies the input to the third artificial neural network when generating the input of the third artificial neural network, and applies the input to the fourth artificial neural network. When the input of the neural network is generated, the input may be applied to the fourth artificial neural network.
인공 신경망은 강화 학습(reinforcement learning)에 따라 학습되는 인공 신경망일 수 있다. 인공 신경망은 강화 학습을 통해 추상적 추론을 출력하는데 적합한 Q-Network, DQN(Depp Q-Network), 또는 관계형 네트워크(relation network, RL) 구조일 수 있다.The artificial neural network may be an artificial neural network trained according to reinforcement learning. The artificial neural network may be a Q-Network, DQN (Depp Q-Network), or relational network (RL) structure suitable for outputting abstract reasoning through reinforcement learning.
강화 학습에 따라 학습되는 인공 신경망은 다양한 보상에 평가를 반영하여 갱신 및 최적화될 수 있다. 예를 들어, 제2 인공 신경망은 제1 보상 및 제2 보상을 통해 갱신 및 최적화되고, 제3 인공 신경망은 제3 보상 및 제4 보상을 통해 갱신 및 최적화되고, 제4 인공 신경망은 제5 보상 및 제6 보상을 통해 갱신 및 최적화될 수 있다.An artificial neural network trained according to reinforcement learning can be updated and optimized by reflecting the evaluation in various rewards. For example, the second artificial neural network is updated and optimized through the first reward and the second reward, the third artificial neural network is updated and optimized through the third reward and the fourth reward, and the fourth artificial neural network is updated and optimized through the fifth reward and through the sixth compensation can be updated and optimized.
예를 들어, 제1 보상은 키워드 매칭 정도가 높을수록 오디오 파일에 대한 검증 결과를 성공으로 추론하면 보상값이 높아질 수 있으며, 제2 보상은 키워드 매칭 정도가 낮을수록 오디오 파일에 대한 검증 결과를 실패로 추론하면 보상값이 높아질 수 있다.For example, as for the first reward, the higher the keyword matching degree, the higher the reward value may be if the verification result for the audio file is inferred to be successful. If inferred, the reward value may increase.
또한, 제3 보상은 서버의 네트워크 연결 상태를 고려하여 서버에게 적합한 방화벽 정책을 선정할수록 높아질 수 있으며, 제4 보상은 서버의 네트워크 연결 상태를 고려하여 서버에게 적합하지 않은 방화벽 정책을 선정하지 않을수록 높아질 수 있다.In addition, the third reward may increase as a firewall policy suitable for the server is selected in consideration of the server's network connection state, and the fourth reward may increase as a firewall policy unsuitable for the server is not selected in consideration of the server's network connection state. can rise
또한, 제5 보상은 서버의 네트워크 트래픽이 과다하게 발생할수록 서버에 공격으로 추정되는 접근이 감지된 것으로 검출하면 보상값이 높아질 수 있으며, 제6 보상은 동일한 IP 주소로 과다한 접속이 이루어질수록 서버에 공격으로 추정되는 접근이 감지된 것으로 검출하면 보상값이 높아질 수 있다.In addition, as for the fifth reward, the higher the amount of network traffic of the server, the higher the reward value may be when it detects that an approach that is presumed to be an attack on the server is detected. If an approach presumed to be an attack is detected as being detected, the reward value may be increased.
S1003 단계에서, 학습 장치는 인공 신경망으로부터 출력을 획득할 수 있다.In step S1003, the learning apparatus may obtain an output from the artificial neural network.
제2 인공 신경망의 출력은, 오디오 파일에 대한 검증 결과로 생성된 제2 출력 신호일 수 있다. 이때, 제2 인공 신경망은 매칭된 리스트를 통해 생성된 제2 입력 신호를 입력 받은 후, 키워드 매칭 정도에 따라 오디오 파일에 대한 검증 결과를 추론하고, 추론된 검증 결과로 생성된 제2 출력 신호를 출력할 수 있다.The output of the second artificial neural network may be a second output signal generated as a result of verifying the audio file. At this time, after receiving the second input signal generated through the matched list, the second artificial neural network infers the verification result for the audio file according to the keyword matching degree, and receives the second output signal generated by the inferred verification result. can be printed out.
제3 인공 신경망의 출력은 서버에게 적합한 방화벽 정책에 대한 정보일 수 있다. 이때, 제3 인공 신경망은 서버의 네트워크 연결 상태를 고려하여 서버에게 적합한 방화벽 정책을 선정하여, 서버에게 가장 적합한 방화벽 정책에 대한 정보를 출력할 수 있다.The output of the third artificial neural network may be information about a firewall policy suitable for the server. In this case, the third artificial neural network may select a firewall policy suitable for the server in consideration of the network connection state of the server, and output information on the firewall policy most suitable for the server.
제4 인공 신경망의 출력은 서버에 공격으로 추정되는 접근이 감지되었는지 여부에 대한 검출 결과이다. 이때, 제4 인공 신경망은 서버의 네트워크 트래픽에 대한 모니터링 정보를 통해, 서버에 공격으로 추정되는 접근이 감지되었는지 분석하여, 서버에 공격으로 추정되는 접근이 감지되었는지 여부에 대한 검출 결과를 출력할 수 있다.The output of the fourth artificial neural network is a detection result of whether an approach estimated as an attack is detected by the server. At this time, the fourth artificial neural network analyzes whether an approach estimated as an attack is detected to the server through monitoring information on the server's network traffic, and outputs a detection result as to whether an approach estimated as an attack is detected to the server. have.
S1004 단계에서, 학습 장치는 인공 신경망의 출력을 평가하여 보상을 지급할 수 있다.In step S1004, the learning device may evaluate the output of the artificial neural network and pay a reward.
제2 인공 신경망의 출력에 대한 평가는 제1 보상 및 제2 보상으로 나뉠 수 있다. 예를 들어, 학습 장치는 키워드 매칭 정도가 높을수록 오디오 파일에 대한 검증 결과를 성공으로 추론할수록 제1 보상을 많이 수여하고, 키워드 매칭 정도가 낮을수록 오디오 파일에 대한 검증 결과를 실패로 추론하면 제2 보상을 많이 수여할 수 있다.The evaluation of the output of the second artificial neural network may be divided into a first reward and a second reward. For example, as the keyword matching degree is higher, the learning device awards a larger amount of first reward as the verification result of the audio file is inferred as success, and when the verification result for the audio file is inferred as failure as the keyword matching degree is low, the
제3 인공 신경망의 출력에 대한 평가는 제3 보상 및 제4 보상으로 나뉠 수 있다. 예를 들어, 학습 장치는 서버의 네트워크 연결 상태를 고려하여 서버에게 적합한 방화벽 정책을 선정할수록 제3 보상을 많이 수여하고, 서버의 네트워크 연결 상태를 고려하여 서버에게 적합하지 않은 방화벽 정책을 선정하지 않을수록 제4 보상을 많이 수여할 수 있다.The evaluation of the output of the third artificial neural network may be divided into a third reward and a fourth reward. For example, the learning device gives a higher third reward as it selects a firewall policy suitable for the server in consideration of the server's network connection status, and does not select a firewall policy that is not suitable for the server in consideration of the server's network connection status. The more the 4th reward, the more can be awarded.
제4 인공 신경망의 출력에 대한 평가는 제5 보상 및 제6 보상으로 나뉠 수 있다. 예를 들어, 학습 장치는 서버의 네트워크 트래픽이 과다하게 발생할수록 서버에 공격으로 추정되는 접근이 감지된 것으로 검출하면 제5 보상을 많이 수여하고, 동일한 IP 주소로 과다한 접속이 이루어질수록 서버에 공격으로 추정되는 접근이 감지된 것으로 검출하면 제6 보상을 많이 수여할 수 있다.The evaluation of the output of the fourth artificial neural network may be divided into a fifth reward and a sixth reward. For example, if the learning device detects that the server's network traffic is excessive, the server receives a 5th reward when it detects that an attack presumed to be an attack. Detecting that the presumed approach has been detected may award a large sixth reward.
S1005 단계에서, 학습 장치는 평가를 기초로 인공 신경망을 갱신할 수 있다.In step S1005, the learning apparatus may update the artificial neural network based on the evaluation.
학습 장치는 제2 인공 신경망이, 키워드 매칭 정도에 따라 오디오 파일에 대한 검증 결과를 추론하는 환경(environment)에서, 보상값(reward)들의 합의 기대값(expectation)이 최대화되도록, 특정한 상태(state)들에서 취할 행동(action)들을 결정하는 정책(policy)을 최적화하는 과정을 통해 제2 인공 신경망을 갱신할 수 있다.In an environment in which the second artificial neural network infers the verification result for the audio file according to the degree of keyword matching, the learning apparatus is configured to maximize the expected value of the sum of the rewards. The second artificial neural network can be updated through the process of optimizing a policy that determines actions to be taken in the fields.
또한, 학습 장치는 제3 인공 신경망이 서버에게 가장 적합한 방화벽 정책을 분석하는 환경(environment)에서, 보상값(reward)들의 합의 기대값(expectation)이 최대화되도록, 특정한 상태(state)들에서 취할 행동(action)들을 결정하는 정책(policy)을 최적화하는 과정을 통해 제3 인공 신경망을 갱신할 수 있다.In addition, the learning device performs an action to be taken in specific states so that the expectation value of the consensus of rewards is maximized in an environment in which the third artificial neural network analyzes the firewall policy most suitable for the server. The third artificial neural network can be updated through the process of optimizing a policy that determines actions.
또한, 학습 장치는 제4 인공 신경망이 서버의 네트워크 트래픽에 대한 모니터링 정보를 통해 서버에 공격으로 추정되는 접근이 감지되었는지 여부를 분석하는 환경(environment)에서, 보상값(reward)들의 합의 기대값(expectation)이 최대화되도록, 특정한 상태(state)들에서 취할 행동(action)들을 결정하는 정책(policy)을 최적화하는 과정을 통해 제4 인공 신경망을 갱신할 수 있다.In addition, in an environment in which the fourth artificial neural network analyzes whether an approach estimated as an attack to the server is detected through the monitoring information on the server's network traffic, the learning device expects a sum of rewards (rewards) The fourth artificial neural network can be updated through the process of optimizing the policy that determines the actions to be taken in specific states so that expectation) is maximized.
한편, 정책을 최적화하는 과정은 보상들의 합의 기대값의 최대값 또는 Q-함수의 최대값을 추정하거나, Q-함수의 손실 함수(loss function)의 최소값을 추정하는 과정을 통해 이루어질 수 있다. 손실함수의 최소값의 추정은 확률적 경사하강법(stochastic gradient descent, SGD) 등을 통해 이루어질 수 있다. 정책을 최적화하는 과정은 이에 제한되는 것은 아니며, 강화 학습에서 사용하는 다양한 최적화 알고리즘들이 이용될 수 있다. Meanwhile, the process of optimizing the policy may be performed through the process of estimating the maximum value of the expected value of the sum of rewards or the maximum value of the Q-function, or estimating the minimum value of the loss function of the Q-function. Estimation of the minimum value of the loss function may be performed through stochastic gradient descent (SGD) or the like. The process of optimizing the policy is not limited thereto, and various optimization algorithms used in reinforcement learning may be used.
학습 장치는 상기와 같은 인공 신경망의 학습 과정을 반복함으로써, 인공 신경망을 점진적으로 갱신시킬 수 있다.The learning apparatus may gradually update the artificial neural network by repeating the learning process of the artificial neural network as described above.
구체적으로, 학습 장치는 키워드 매칭 정도에 따라 오디오 파일에 대한 검증 결과를 추론하고, 추론된 검증 결과를 출력하는 제2 인공 신경망을 학습시킬 수 있다.Specifically, the learning apparatus may infer the verification result for the audio file according to the keyword matching degree, and train the second artificial neural network to output the inferred verification result.
이를 통해, 학습 장치는 메타 데이터에 기초하여 생성된 제2 입력 신호를 입력 받은 후, 키워드 매칭 정도에 따라 오디오 파일에 대한 검증 결과를 추론하고, 추론된 검증 결과로 생성된 제2 출력 신호를 출력하는 제2 인공 신경망을 학습시킬 수 있다.Through this, after receiving the second input signal generated based on the metadata, the learning apparatus infers the verification result for the audio file according to the keyword matching degree, and outputs the second output signal generated as the inferred verification result can train a second artificial neural network.
즉, 학습 장치는 매칭된 리스트를 통해 오디오 파일에 대한 검증 결과를 추론할 때, 제1 보상, 제2 보상 등을 통한 강화 학습을 반영하여, 분석 기준을 조정함으로써, 제2 인공 신경망을 학습시킬 수 있다.That is, when the learning device infers the verification result for the audio file through the matched list, the second artificial neural network can be trained by reflecting reinforcement learning through the first reward, the second reward, etc., and adjusting the analysis criteria. can
또한, 학습 장치는 서버에게 적합한 방화벽 정책을 선정하는데 있어, 포워딩 타입, 프로토콜, 외부 허용 IP 주소, 외부 차단 IP 주소, 가상 포트, 운영 포트 등의 항목을 모두 고려하여, 서버에게 가장 적합한 방화벽 정책을 선정한 후, 선정된 방화벽 정책에 대한 정보를 출력하는 제3 인공 신경망을 학습시킬 수 있다.In addition, in selecting a firewall policy suitable for the server, the learning device considers all items such as forwarding type, protocol, external allowed IP address, external blocked IP address, virtual port, and operation port, and selects the most suitable firewall policy for the server. After selection, the third artificial neural network that outputs information about the selected firewall policy may be trained.
이를 통해, 학습 장치는 서버의 네트워크 연결 상태에 대한 분석 결과를 입력 받은 후, 서버에게 적합한 방화벽 정책을 분석하여 출력하는 제3 인공 신경망을 학습시킬 수 있다.Through this, after receiving the analysis result of the network connection state of the server, the learning apparatus may learn the third artificial neural network that analyzes and outputs a firewall policy suitable for the server.
즉, 학습 장치는 서버의 네트워크 연결 상태에 대한 분석 결과를 통해, 서버에게 적합한 방화벽 정책을 분석할 때, 제3 보상, 제4 보상 등을 통한 강화 학습을 반영하여, 분석 기준을 조정함으로써, 제3 인공 신경망을 학습시킬 수 있다.That is, when analyzing the firewall policy suitable for the server through the analysis result of the server's network connection state, the learning device reflects reinforcement learning through the third reward, the fourth reward, etc., by adjusting the analysis criteria, 3 Artificial neural networks can be trained.
또한, 학습 장치는 서버의 네트워크 트래픽에 대한 모니터링 정보를 통해, 서버에 공격으로 추정되는 접근이 감지되었는지 여부에 대한 검출 결과를 출력하는 제4 인공 신경망을 학습시킬 수 있다.Also, the learning apparatus may train a fourth artificial neural network that outputs a detection result of whether an approach estimated as an attack is detected to the server through monitoring information on network traffic of the server.
즉, 학습 장치는 서버의 네트워크 트래픽에 대한 모니터링 정보를 통해 서버에 공격으로 추정되는 접근이 감지되었는지 여부에 대해 분석할 때, 제5 보상, 제6 보상 등을 통한 강화 학습을 반영하여, 분석 기준을 조정함으로써, 제4 인공 신경망을 학습시킬 수 있다.That is, the learning device reflects reinforcement learning through the 5th reward, the 6th reward, etc. when analyzing whether an access estimated as an attack is detected to the server through the monitoring information on the server's network traffic, analysis criteria By adjusting , the fourth artificial neural network can be trained.
도 11은 일실시예에 따른 장치의 구성의 예시도이다.11 is an exemplary diagram of a configuration of an apparatus according to an embodiment.
일실시예에 따른 장치(200)는 프로세서(210) 및 메모리(220)를 포함한다. 프로세서(210)는 도 1 내지 도 10을 참조하여 전술된 적어도 하나의 장치들을 포함하거나, 도 1 내지 도 10을 참조하여 전술된 적어도 하나의 방법을 수행할 수 있다. 장치(200)를 이용하는 자 또는 단체는 도 1 내지 도 10을 참조하여 전술된 방법들 일부 또는 전부와 관련된 서비스를 제공할 수 있다.The
메모리(220)는 전술된 방법들과 관련된 정보를 저장하거나 후술되는 방법들이 구현된 프로그램을 저장할 수 있다. 메모리(220)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.The
프로세서(210)는 프로그램을 실행하고, 장치(200)를 제어할 수 있다. 프로세서(210)에 의하여 실행되는 프로그램의 코드는 메모리(220)에 저장될 수 있다. 장치(200)는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 유무선 통신을 통해 데이터를 교환할 수 있다.The
장치(200)는 인공 신경망을 학습시키거나, 학습된 인공 신경망을 이용하는데 사용될 수 있다. 메모리(220)는 학습 중인 또는 학습된 인공 신경망을 포함할 수 있다. 프로세서(210)는 메모리(220)에 저장된 인공 신경망 알고리즘을 학습시키거나 실행시킬 수 있다. 인공 신경망을 학습시키는 장치(200)와 학습된 인공 신경망을 이용하는 장치(200)는 동일할 수도 있고 개별적일 수도 있다.The
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented by a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the apparatus, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA). array), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that may include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes 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 include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may comprise a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device. The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited drawings, those skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
Claims (3)
제1 사용자 단말로부터 제1 오디오 파일 및 제1 메타 데이터를 수신하는 단계;
상기 제1 오디오 파일에 대한 품질을 검사하는 단계;
상기 제1 오디오 파일에 대한 품질을 검사한 결과, 상기 제1 오디오 파일에 문제가 없는 것으로 확인되면, 상기 제1 오디오 파일에서 샘플링을 통해 구역 별로 사운드 정보를 추출하는 단계;
상기 구역 별로 추출된 사운드 정보에서 음성 인식을 통해 키워드를 확인하고, 상기 구역 별로 확인된 키워드를 기반으로, 상기 제1 오디오 파일과 관련된 키워드 리스트인 제1 리스트를 생성하는 단계;
상기 제1 메타 데이터에 기초하여, 제1 입력 신호를 생성하는 단계;
상기 제1 입력 신호를 미리 학습된 제1 인공 신경망에 입력하여 제1 출력 신호를 획득하는 단계;
상기 제1 출력 신호에 기초하여, 상기 제1 메타 데이터와 관련된 키워드 리스트인 제2 리스트를 생성하는 단계;
상기 제1 리스트 및 상기 제2 리스트를 결합하여, 제3 리스트를 생성하는 단계;
상기 제3 리스트에 기초하여, 제2 입력 신호를 생성하는 단계;
상기 제2 입력 신호를 미리 학습된 제2 인공 신경망에 입력하여 제2 출력 신호를 획득하는 단계; 및
상기 제2 출력 신호에 기초하여, 상기 제1 오디오 파일에 대한 검증 결과를 생성하는 단계를 포함하는,
인공지능 기반 문화 콘텐츠 관련 가이드 음원의 검증 방법.In a method of verifying a guide sound source related to cultural content based on artificial intelligence, performed by a device,
receiving a first audio file and first metadata from a first user terminal;
checking the quality of the first audio file;
extracting sound information for each zone through sampling from the first audio file when it is confirmed that there is no problem in the first audio file as a result of checking the quality of the first audio file;
identifying a keyword from the sound information extracted for each zone through voice recognition, and generating a first list that is a keyword list related to the first audio file based on the identified keyword for each zone;
generating a first input signal based on the first metadata;
obtaining a first output signal by inputting the first input signal to a pre-trained first artificial neural network;
generating a second list that is a keyword list related to the first meta data based on the first output signal;
generating a third list by combining the first list and the second list;
generating a second input signal based on the third list;
obtaining a second output signal by inputting the second input signal to a pre-trained second artificial neural network; and
Based on the second output signal, comprising the step of generating a verification result for the first audio file,
A method of verifying the guide sound source related to artificial intelligence-based cultural content.
상기 제2 인공 신경망은
상기 제2 입력 신호에 기초하여, 상기 제1 리스트에 포함된 키워드 별로 상기 제2 리스트에 포함되는지 여부를 확인하고,
상기 제1 리스트에 포함된 키워드를 상기 제2 리스트에 포함된 것으로 확인된 제1-1 리스트와 상기 제2 리스트에 포함되지 않은 것으로 확인된 제1-2 리스트로 구분하고,
상기 제1-1 리스트에 포함된 키워드의 수를 상기 제1 리스트에 포함된 키워드의 수로 나눈 값을 통해, 상기 제1 리스트 및 상기 제2 리스트 간의 매칭률을 산출하고,
상기 매칭률이 미리 설정된 기준치 보다 큰 것으로 확인되면, 상기 제1 오디오 파일에 대한 검증 결과를 검증 성공으로 분석하여 상기 제2 출력 신호를 출력하고,
상기 매칭률이 상기 기준치 보다 작은 것으로 확인되면, 상기 제1 오디오 파일에 대한 검증 결과를 검증 실패로 분석하여 상기 제2 출력 신호를 출력하는,
인공지능 기반 문화 콘텐츠 관련 가이드 음원의 검증 방법.According to claim 1,
The second artificial neural network is
Based on the second input signal, it is checked whether each keyword included in the first list is included in the second list,
Divide the keywords included in the first list into a 1-1 list confirmed to be included in the second list and a 1-2 list confirmed not included in the second list,
A matching rate between the first list and the second list is calculated through a value obtained by dividing the number of keywords included in the 1-1 list by the number of keywords included in the first list,
When it is confirmed that the matching rate is greater than a preset reference value, the verification result of the first audio file is analyzed as verification success and the second output signal is output,
If it is confirmed that the matching rate is smaller than the reference value, analyzing the verification result for the first audio file as verification failure and outputting the second output signal,
A method of verifying the guide sound source related to artificial intelligence-based cultural content.
상기 제2 리스트를 생성하는 단계 이후,
상기 제1 리스트에 포함된 키워드를 기반으로, 상기 제1 오디오 파일을 제1 전시물의 오디오 가이드로 분석하는 단계;
상기 제1 전시물에 설정되어 있는 핵심 키워드 리스트인 제4 리스트를 획득하는 단계; 및
상기 제2 리스트에 상기 제4 리스트를 추가하는 단계를 더 포함하며,
상기 제2 인공 신경망은
상기 제2 입력 신호에 기초하여, 상기 제1 리스트에 포함된 키워드와 상기 제4 리스트에 포함된 키워드를 비교하여, 키워드 별로 일치하는지 여부를 확인하고,
상기 제4 리스트에 포함된 키워드가 상기 제1 리스트에 포함된 키워드와 전부 일치하는 것으로 확인되면, 상기 제1 오디오 파일에 대한 검증 결과를 검증 성공으로 분석하여 상기 제2 출력 신호를 출력하고,
상기 제4 리스트에 포함된 키워드 중 하나 이상이 상기 제1 리스트에 포함된 키워드와 일치하지 않는 것으로 확인되면, 상기 제1 오디오 파일에 대한 검증 결과를 검증 실패로 분석하여 상기 제2 출력 신호를 출력하는,
인공지능 기반 문화 콘텐츠 관련 가이드 음원의 검증 방법.According to claim 1,
After generating the second list,
analyzing the first audio file as an audio guide of a first exhibition object based on a keyword included in the first list;
obtaining a fourth list, which is a list of key keywords set in the first exhibit; and
adding the fourth list to the second list,
The second artificial neural network is
based on the second input signal, comparing the keywords included in the first list with the keywords included in the fourth list, and confirming whether they match for each keyword;
When it is confirmed that the keywords included in the fourth list match all the keywords included in the first list, the verification result for the first audio file is analyzed as verification success and the second output signal is output,
If it is confirmed that one or more of the keywords included in the fourth list do not match the keywords included in the first list, the verification result for the first audio file is analyzed as verification failure and the second output signal is output. doing,
A method of verifying the guide sound source related to artificial intelligence-based cultural content.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220056551A KR102453919B1 (en) | 2022-05-09 | 2022-05-09 | Method, device and system for verifying of guide soundtrack related to cultural content based on artificial intelligence |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220056551A KR102453919B1 (en) | 2022-05-09 | 2022-05-09 | Method, device and system for verifying of guide soundtrack related to cultural content based on artificial intelligence |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102453919B1 true KR102453919B1 (en) | 2022-10-12 |
Family
ID=83597976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220056551A KR102453919B1 (en) | 2022-05-09 | 2022-05-09 | Method, device and system for verifying of guide soundtrack related to cultural content based on artificial intelligence |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102453919B1 (en) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100976082B1 (en) | 2002-01-24 | 2010-08-16 | 모토로라 인코포레이티드 | Voice activity detector and validator for noisy environments |
KR101041039B1 (en) | 2009-02-27 | 2011-06-14 | 고려대학교 산학협력단 | Method and Apparatus for space-time voice activity detection using audio and video information |
KR101253225B1 (en) | 2005-04-13 | 2013-04-16 | 돌비 레버러토리즈 라이쎈싱 코오포레이션 | Audio Metadata Verification |
KR102014639B1 (en) | 2018-02-22 | 2019-10-21 | 최혜경 | System and Method for customizing music creator matching service based on keyword |
KR20200104019A (en) * | 2019-02-26 | 2020-09-03 | 한미란 | Machine learning based voice data analysis method, device and program |
KR20210048382A (en) * | 2019-10-23 | 2021-05-03 | 엘지전자 주식회사 | Method and apparatus for speech analysis |
KR20210068774A (en) * | 2019-12-02 | 2021-06-10 | 아이브스 주식회사 | Abnormaly sound recognizing method and apparatus based on artificial intelligence and monitoring system using the same |
KR20210120508A (en) * | 2020-03-27 | 2021-10-07 | 아이브스 주식회사 | Abnormaly sound recognizing method and apparatus based on artificial intelligence and monitoring system using the same |
-
2022
- 2022-05-09 KR KR1020220056551A patent/KR102453919B1/en active IP Right Grant
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100976082B1 (en) | 2002-01-24 | 2010-08-16 | 모토로라 인코포레이티드 | Voice activity detector and validator for noisy environments |
KR101253225B1 (en) | 2005-04-13 | 2013-04-16 | 돌비 레버러토리즈 라이쎈싱 코오포레이션 | Audio Metadata Verification |
KR101041039B1 (en) | 2009-02-27 | 2011-06-14 | 고려대학교 산학협력단 | Method and Apparatus for space-time voice activity detection using audio and video information |
KR102014639B1 (en) | 2018-02-22 | 2019-10-21 | 최혜경 | System and Method for customizing music creator matching service based on keyword |
KR20200104019A (en) * | 2019-02-26 | 2020-09-03 | 한미란 | Machine learning based voice data analysis method, device and program |
KR20210048382A (en) * | 2019-10-23 | 2021-05-03 | 엘지전자 주식회사 | Method and apparatus for speech analysis |
KR20210068774A (en) * | 2019-12-02 | 2021-06-10 | 아이브스 주식회사 | Abnormaly sound recognizing method and apparatus based on artificial intelligence and monitoring system using the same |
KR20210120508A (en) * | 2020-03-27 | 2021-10-07 | 아이브스 주식회사 | Abnormaly sound recognizing method and apparatus based on artificial intelligence and monitoring system using the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xu et al. | Explainable AI: A brief survey on history, research areas, approaches and challenges | |
KR102404511B1 (en) | Method, device and system for recommending customized product information based on artificial intelligence | |
CN111651671B (en) | User object recommendation method, device, computer equipment and storage medium | |
KR20190029083A (en) | Apparatus and Method for learning a neural network | |
KR102490009B1 (en) | Method, device and system for providing platform service for purchasing and selling product linked to influencer based on artificial intelligence | |
US11360927B1 (en) | Architecture for predicting network access probability of data files accessible over a computer network | |
KR102531879B1 (en) | Method, device and system for predicting and monitoring occurrence of event for maintenance of enterprise electronic equipment based on artificial intelligence | |
KR102539679B1 (en) | Method, device and system for recommending places tailored to the user based on the user's route | |
KR102447549B1 (en) | Method, device and system for providing jewelry trading service associated with artwork based on nft | |
Pandey et al. | Artificial intelligence and machine learning for EDGE computing | |
KR102546871B1 (en) | Method, device and system for recommending order information through pattern analysis of order history regarding distribustion of food materials and subsidiary materials for business to business based on artificial intelligence model | |
KR102551997B1 (en) | Method, device and system for providing commerce platform service and automation of advertising content planning based on analysis of content watching propensity | |
KR102463875B1 (en) | Method, device and system for providing personalized psychotherapy content using big data | |
KR102586799B1 (en) | Method, device and system for automatically processing creation of web book based on web novel using artificial intelligence model | |
KR102552856B1 (en) | Method, device and system for automating creation of content template and extracting keyword for platform service that provide content related to commerce | |
KR102536063B1 (en) | Method, device and system for providing sales and purchases settlement solution for business based on artificial intelligence | |
KR102474974B1 (en) | Method, device and system for analyzing brand based on artificial intelligence | |
KR102426803B1 (en) | Method, device and system for automatically uploading overseas sales page of product based on artificial intelligence | |
KR102453919B1 (en) | Method, device and system for verifying of guide soundtrack related to cultural content based on artificial intelligence | |
Matinkhah et al. | Emerging artificial intelligence application: reinforcement learning issues on current internet of things | |
KR102430988B1 (en) | Method, device and system for controlling policy setting of host firewall based on artificial intelligence | |
KR102429832B1 (en) | Method, device and system for providing remote access service based on analysis of network environment | |
KR102618066B1 (en) | Method, device and system for strengthening military security based on natural language process and image compare in soldier based community application | |
KR102508648B1 (en) | Emergency monitoring method, device and system based on malfunction judgment of electric and firefighting equipment | |
KR102612058B1 (en) | Method, device and system for operating smart factory through prediction of defect rate based on artificial intelligence model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GRNT | Written decision to grant |