KR20240001305A - 웹디자인 수행 영상으로부터 학습 데이터를 구성하고 이를 기반으로 지도학습이 수행된 ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법 - Google Patents

웹디자인 수행 영상으로부터 학습 데이터를 구성하고 이를 기반으로 지도학습이 수행된 ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법 Download PDF

Info

Publication number
KR20240001305A
KR20240001305A KR1020230183190A KR20230183190A KR20240001305A KR 20240001305 A KR20240001305 A KR 20240001305A KR 1020230183190 A KR1020230183190 A KR 1020230183190A KR 20230183190 A KR20230183190 A KR 20230183190A KR 20240001305 A KR20240001305 A KR 20240001305A
Authority
KR
South Korea
Prior art keywords
template
component
user terminal
web
components
Prior art date
Application number
KR1020230183190A
Other languages
English (en)
Inventor
김재훈
채중규
김성도
양재원
Original Assignee
주식회사 테스티파이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 테스티파이 filed Critical 주식회사 테스티파이
Publication of KR20240001305A publication Critical patent/KR20240001305A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Databases & Information Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • User Interface Of Digital Computer (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Fixing For Electrophotography (AREA)

Abstract

웹디자인 수행 영상으로부터 학습 데이터를 구성하고 이를 기반으로 지도학습이 수행된 AI 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법이 개시된다. 상기 AI 기반 웹빌더를 제공하기 위한 운영서버는, 사용자 단말에 의해 선택된 UI템플릿을 상기 사용자 단말에 제공하고, 상기 사용자 단말에 의해 선택된 UI템플릿 내에 배치할 컴포넌트들을 배치할 수 있는 사용자 인터페이스를 제공하는 웹빌더 서비스 관리부; 미리 다수의 UI 템플릿들을 관리자로부터 입력받아 저장하고, 저장된 UI 템플릿들 각각에 대한 메타 데이터를 생성하고 저장하는 UI 템플릿 관리부; 미리 다수의 컴포넌트들을 관리자로부터 입력받아 저장하고, 저장된 컴포넌트들 각각에 대한 메타 데이터를 생성하고 저장하하는 컴포넌트 관리부; 및 사용자 인터페이스와 병렬적으로 사용자 단말에게 웹디자인 상의 편의성을 증대하기 위한 인공지능 기반의 변환 지원서비스를 제공하는 인공지능 지원부;를 포함한다.

Description

웹디자인 수행 영상으로부터 학습 데이터를 구성하고 이를 기반으로 지도학습이 수행된 AI 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법{OPERATION SERVER AND OPERATION METHOD FOR PROVIDING AI-BASED WEB BUILDER THAT CONSTRUCTS LEARNING DATA FROM WEB DESIGN PERFORMANCE VIDEOS AND PERFORMS SUPERVISED LEARNING BASED ON THE LEARNING DATA}
본 발명은 웹디자인 수행 영상으로부터 학습 데이터를 구성하고 이를 기반으로 지도학습이 수행된 AI 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법에 관한 것이다.
MVP(Minimum viable product)는 최소한의 기능을 담은 제품으로 애플리케이션에서는 통상 프로토타입 애플리케이션을 지칭한다.
이러한 프로토타입 애플리케이션을 개발하기 위해서는 상당한 IT 인력들을 투입하여 제작해야 하기 때문에 높은 비용과 기간이 소요되는 것이 일반적이다. 그런데, 대부분의 소프트웨어 스타트업의 경우 중소기업의 특성상 IT 개발자를 채용하는 데 어려움을 겪는 경우가 매우 많고, 애플리케이션 개발을 외주로 돌리더라도 개발 기간 동안 발생하는 외주 비용을 부담하는 데 어려움이 많다.
특히, 창업 기업의 실패 이유 중 가장 큰 이유는 시장 수요가 없다는 것에 있다. 따라서, 시장 진출 전에 빠르게 프로토타입 애플리케이션을 제작하여 사업 아이템에 대한 시장 검증을 반복해야 하기 때문에 프로토타입 애플리케이션의 제작과 수정이 빠르고 저렴하게 진행될 필요가 있다.
일반적으로, 웹페이지 또는 웹기반 애플리케이션은 관련 지식을 가진 사람이 직접 제작을 하거나, 이미 만들어진 템플릿 사이트를 구입하고, 구입한 사이트의 스킨을 교체하는 방식으로 제작될 수 있다.
그런데, 최근에는 웹 기반의 빌더를 소비자에게 제공하고, 소비자가 웹 기반으로 해당 빌더의 사용자인터페이스(UI)를 이용하여 원하는 기 제작 템플릿을 옮기고 적용하는 것만으로도 원하는 웹기반 애플리케이션을 제작하는 웹빌더 서비스가 출시되고 있다.
이 때문에, 소프트웨어 개발 언어를 모르거나, 개발 능력이 없는 일반인이라도 원하는 애플리케이션을 제작할 수 있는 대안이 제시되고 있으나, 통상적인 웹빌더 서비스는 미리 만들어진 템플릿을 사용하고, 템플릿의 문구나 디자인을 정해진 다른 디자인으로 변경하는 등의 방식으로만 제작이 가능한 서비스이다.
따라서, 소비자가 모든 과정을 선택하고 디자인하는 과정을 해야 되는 문제가 있어 여전히 소비자에게 주어지는 역할과 요구사항이 많아 웹빌더 서비스를 이용하고자 하는 수요자로 하여금 심리적 부담으로 작용하게 하고 있는 실정이다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 웹디자인 수행 영상으로부터 학습 데이터를 구성하고 이를 기반으로 지도학습이 수행된 AI 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법을 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 측면은, AI 기반 웹빌더를 제공하기 위한 운영서버를 제공한다.
상기 AI 기반 웹빌더를 제공하기 위한 운영서버는, 사용자 단말에 의해 선택된 UI템플릿을 상기 사용자 단말에 제공하고, 상기 사용자 단말에 의해 선택된 UI템플릿 내에 배치할 컴포넌트들을 배치할 수 있는 사용자 인터페이스를 제공하는 웹빌더 서비스 관리부; 미리 다수의 UI 템플릿들을 관리자로부터 입력받아 저장하고, 저장된 UI 템플릿들 각각에 대한 메타 데이터를 생성하고 저장하는 UI 템플릿 관리부; 미리 다수의 컴포넌트들을 관리자로부터 입력받아 저장하고, 저장된 컴포넌트들 각각에 대한 메타 데이터를 생성하고 저장하하는 컴포넌트 관리부; 및 사용자 인터페이스와 병렬적으로 사용자 단말에게 웹디자인 상의 편의성을 증대하기 위한 인공지능 기반의 변환 지원서비스를 제공하는 인공지능 지원부;를 포함한다.
상기 인공지능 지원부는, 상기 사용자 단말의 상기 사용자 인터페이스를 통한 상기 UI 템플릿 또는 상기 컴포넌트들의 변경 상태를 모니터링하고, 모니터링된 변경 상태를 기반으로 상기 사용자 단말의 변경 이후를 예상하여 구현한 UI 템플릿이나 컴포넌트를 미리 생성하고, 생성된 UI 템플릿이나 컴포넌트의 미리보기 영역을 생성하여 상기 사용자 인터페이스와 중첩하게 상기 사용자 단말에 표시한다.
상기 인공지능 지원부는, 상기 사용자 단말에 의해 선택된 상기 UI 템플릿에 대한 변경 조작을 모니터링하고, 모니터링된 현재의 상기 UI 템플릿의 변경 정도를 기반으로 제1 인공신경망을 이용하여 미리보기로 제공할 UI 템플릿을 생성하는 템플릿 변환지원부를 더 포함한다.
상기 인공지능 지원부는, 상기 사용자 단말의 상기 컴포넌트들에 대한 변경 조작을 모니터링하고, 모니터링된 현재의 컴포넌트들의 변경 정도를 기반으로 제2 인공신경망을 이용하여 미리보기로 제공할 컴포넌트를 생성하는 컴포넌트 변환지원부;를 더 포함한다.
상기 인공지능 지원부는, 상기 제1 인공신경망과 상기 제2 인공신경망을 미리 지도학습하기 위한 학습데이터를 생성하는 변환모사 학습데이터 생성부;를 더 포함한다.
상기 변환모사 학습데이터 생성부는, 웹디자인 수행 영상을 수집하고, 수집된 상기 웹디자인 수행영상에서 복수의 키프레임들을 추출하고, 추출된 상기 키프레임들에서 컴포넌트와 UI 템플릿을 식별하고, 추출된 상기 키프레임들을 서로 동일한 UI 템플릿들이 식별된 키프레임들로 분류하고 제1 그룹들을 생성하고, 추출된 상기 키프레임들을 서로 동일한 컴포넌트들이 식별된 키프레임들로 분류하여 제2 그룹들을 생성하고, 상기 제1 그룹들 각각에서 UI 템플릿의 작업 변화량을 추출하고, 상기 제2 그룹들 각각에서 컴포넌트의 작업 변화량을 추출하고, 추출된 UI 템플릿의 작업 변화량을 해당 UI 템플릿의 유사 UI 템플릿과 커플링시켜 제1 학습데이터를 생성하고, 추출된 컴포넌트의 작업 변화량을 해당 컴포넌트의 유사 컴포넌트와 커플링시켜 제2 학습 데이터를 생성한다.
상기 목적을 달성하기 위한 본 발명의 다른 측면은, AI 기반 웹빌더를 제공하기 위한 시스템을 제공한다.
상기 시스템은, 웹빌더 서비스를 제공받는 사용자 단말; 및 상기 사용자 단말에 상기 웹기반의 애플리케이션 제작 툴(tool)을 제공하는 운영 서버;를 포함한다.
상기 운영서버는, 사용자 단말에 의해 선택된 UI템플릿을 상기 사용자 단말에 제공하고, 상기 사용자 단말에 의해 선택된 UI템플릿 내에 배치할 컴포넌트들을 배치할 수 있는 사용자 인터페이스를 제공하는 웹빌더 서비스 관리부; 미리 다수의 UI 템플릿들을 관리자로부터 입력받아 저장하고, 저장된 UI 템플릿들 각각에 대한 메타 데이터를 생성하고 저장하는 UI 템플릿 관리부; 미리 다수의 컴포넌트들을 관리자로부터 입력받아 저장하고, 저장된 컴포넌트들 각각에 대한 메타 데이터를 생성하고 저장하하는 컴포넌트 관리부; 및 사용자 인터페이스와 병렬적으로 사용자 단말에게 웹디자인 상의 편의성을 증대하기 위한 인공지능 기반의 변환 지원서비스를 제공하는 인공지능 지원부;를 포함한다.
상기 목적을 달성하기 위한 본 발명의 다른 측면은, AI 기반 웹빌더를 제공하기 위한 운영 서버의 동작 방법을 제공한다.
상기 동작 방법은, 사용자 단말에게 웹빌더를 통해 제작하고자 하는 웹기반 애플리케이션의 종류와 목적을 입력받는 단계; 입력받은 종류와 목적 등에 기반하여 미리 수집되어 저장된 UI템플릿들 중 하나를 선택하기 위한 제1 사용자 인터페이스를 상기 사용자 단말에 제공하는 단계; 상기 사용자 단말에 의해 선택된 UI 템플릿을 상기 사용자 단말에 표시하고, 상기 선택된 UI템플릿 내에 배치할 컴포넌트들을 배치할 수 있는 제2 사용자 인터페이스를 상기 사용자 단말에 제공하는 단계; 및 상기 제2 사용자 인터페이스 내에 표시된 상기 선택된 UI 템플릿 및 상기 선택된 UI 템플릿 내에 배치된 컴포넌트들의 디자인을 변경할 수 있는 제3 사용자 인터페이스를 상기 사용자 단말에 제공하는 단계;를 포함한다.
상기 동작 방법은, 상기 선택된 UI 템플릿에 대한 변경 조작을 모니터링하고, 모니터링된 현재의 상기 UI 템플릿의 변경 정도를 기반으로 제1 인공신경망을 이용하여 미리보기로 제공할 UI 템플릿을 생성하는 단계; 및 상기 사용자 단말의 상기 컴포넌트들에 대한 변경 조작을 모니터링하고, 모니터링된 현재의 컴포넌트들의 변경 정도를 기반으로 제2 인공신경망을 이용하여 미리보기로 제공할 컴포넌트를 생성하는 단계;를 더 포함한다.
상기 목적을 달성하기 위한 본 발명의 다른 측면은, 상기 운영 서버의 동작 방법을 실행시키기 위한 프로그램이 기록되고, 컴퓨터에 의해 읽혀질 수 있는, 비일시적 기록매체를 제공한다.
상기 목적을 달성하기 위한 본 발명의 다른 측면은, 상기 운영 서버에서 상기 운영 서버의 동작 방법을 실행시키기 위하여, 비일시적 기록매체에 기록된 컴퓨터 프로그램을 제공한다.
상기와 같은 본 발명에 따른 AI 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법를 이용할 경우에는 수요자가 모든 요소들을 직접 디자인하고 적용하지 않더라도, AI 기반의 디자인과 컴포넌트를 활용해 기존보다 소비자 편의성을 향상시킨 웹빌더를 제공할 수 있다.
도 1은 일 실시예에 따른 AI 기반 웹빌더를 제공하기 위한 운영서버가 수행되는 환경을 나타낸 개요도이다.
도 2는 일 실시예에 따른 AI 기반 웹빌더를 제공하기 위한 운영서버의 기능적 구성요소들을 나타낸 도면이다.
도 3은 일 실시예에 따른 템플릿 변환지원부의 동작을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 컴포넌트 변환지원부의 동작을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 제1 인공신경망과 제2 인공신경망의 구조를 설명하기 위한 개념도이다.
도 6은 일 실시예에 따른 변환모사 학습데이터 생성부의 동작을 나타낸 대표 흐름도이다.
도 7은 일 실시예에 따른 AI 기반 웹빌더를 제공하기 위한 운영서버의 하드웨어 구성을 예시적으로 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 통신 과정에서 적용될 수 있는 무선 통신 시스템을 나타낸 도면이다.
도 9는 도 8에 따른 무선 통신 시스템에서 기지국을 나타낸 도면이다.
도 10은 도 8에 따른 무선 통신 시스템에서 단말을 나타낸 도면이다.
도 11은 도 8에 따른 무선 통신 시스템에서 통신 인터페이스를 나타낸 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 일 실시예에 따른 AI 기반 웹빌더를 제공하기 위한 운영서버가 수행되는 환경을 나타낸 개요도이다.
도 1을 참조하면, 웹기반 애플리케이션을 제작하기를 원하는 사용자의 사용자 단말(200)은 AI 기반 웹빌더를 제공하기 위한 운영서버(100)에 접속할 수 있다.
웹기반 애플리케이션은, 온라인 웹 상에서 접속하고, 웹페이지 형식으로 구동되는 홈페이지, 웹 애플리케이션 등을 포함할 수 있다.
웹빌더는 사용자가 자신의 사용자 단말(200)을 이용하여 웹기반 애플리케이션을 제공하기 위한 온라인상의 제작 툴(tool)을 의미할 수 있다. 예를 들어, 운영서버(100)는, 이러한 웹빌더를 제공하기 위하여 웹상에서 구동되고, 운영서버(100)에 접속한 사용자 단말(200)에게 웹빌더를 제공할 수 있다.
일 실시예에서, 운영서버(100)는, 다수의 UI 템플릿들과 다수의 컴포넌트들을 미리 수집하여 저장할 수 있고, 사용자 단말(200)에게 수집된 UI 템플릿들과 컴포넌트들을 선택하고, 배치할 수 있도록 사용자 인터페이스를 제공할 수 있다.
일 실시예에서, UI 템플릿들은 미리 지정된 종류의 컴포넌트들을 미리 지정된 디자인 구조에 배치할 수 있도록 제작된 웹페이지 형태의 템플릿(templet)으로서, 텍스트를 입력할 수 있는 영역, 이미지 컴포넌트를 배치할 수 있는 영역, 메뉴바를 배치할 수 있는 영역 등이 사전에 정의되어 있는 웹페이지 형식일 수 있다.
일 실시예에서, 컴포넌트는, UI 템플릿 내에 배치가능하도록 미리 제작된 각종 기능부들로서, 특정 입력 데이터에 따라 미리 지정된 연산을 수행하고, 수행된 연산 결과를 시각적으로 표시할 수 있다. 예를 들어, 컴포넌트는, 입력 데이터에 대응하는 그래프가 표현되는 그래프 컴포넌트, 입력 데이터에 따른 통계 연산을 수행하고, 통계 연산에 따른 결과 데이터가 표시되는 통계 출력 컴포넌트, 입력 데이터에 대한 이미지 처리를 수행하고, 수행된 이미지 처리 결과 이미지를 표시하는 이미지 컴포넌트 등을 포함할 수 있다. 여기서, 미리 지정된 연산은 경우에 따라 생략되어 입력 데이터를 그대로 시각적으로 표시하도록 구현될 수도 있다.
운영서버(100)는, 사용자 단말(200)에게 웹빌더를 통해 제작하고자 하는 웹기반 애플리케이션의 종류, 목적 등을 입력하고, 입력받은 종류와 목적 등에 기반하여 UI템플릿들을 사용자 단말(200)에 제공하고, 사용자 단말(200)은 제공되는 UI템플릿들 중 하나를 선택할 수 있다.
운영서버(100)는, 사용자 단말(200)에 의해 선택된 UI템플릿을 사용자 단말(200)에 표시하고, 사용자 단말(200)에 표시된 UI템플릿 내에 배치할 컴포넌트들을 배치할 수 있는 사용자 인터페이스를 사용자 단말(200)에 제공할 수 있다.
사용자 단말(200)의 사용자는 제공받은 사용자 인터페이스를 이용하여 UI 템플릿 내에 배치하기를 원하는 컴포넌트들을 선정하고, 배치할 수 있다.
운영 서버(100)는, 미리 수집된 컴포넌트들과 UI 템플릿들의 디자인을 변경할 수 있는 사용자 인터페이스를 사용자 단말(200)에 제공할 수도 있다. 사용자 단말(200)의 사용자는, 제공받은 사용자 인터페이스를 이용하여 컴포넌트들 또는 UI템플릿들을 구성하는 이미지, 크기, 색상, 폰트 등을 변경할 수 있다.
또한, 운영 서버(100)는, 사용자 단말(200)에 의해 최종적으로 완성된 웹기반 애플리케이션에 접속하기 위한 접속주소를 생성하고, 생성된 접속주소를 사용자 단말(200)에 제공할 수 있다.
사용자 단말(200)의 사용자는 접속주소를 외부의 다른 사이트 등을 이용하여 공개하고, 공개된 접속주소를 이용하여 웹빌더를 이용하지 않는 제3자의 사용자 단말(300)이 접속주소를 통해 운영 서버(100)에 접속할 수도 있다.
제3자의 사용자 단말(300)이 접속주소를 통해 운영 서버(100)에 접속하는 경우, 운영 서버(100)는 해당 접속주소와 미리 매칭되어 저장된 웹기반 애플리케이션을 구동하기 위한 웹페이지를 생성하고, 생성된 웹페이지 내에서 웹기반 애플리케이션을 구동시켜 제3자의 사용자 단말(300)에 제공할 수 있다.
이를 통해, 제3자의 사용자 단말(300)이 사용자의 사용자 단말(200)이 제작한 웹기반 애플리케이션을 미리 체험하도록 할 수 있고, 이를 통해 사용자 단말(200)의 사용자가 자신이 제작한 웹기반 애플리케이션의 시장 반응을 미리 예측할 수 있도록 시장성 테스트를 수행할 수 있다.
이를 위해, 운영 서버(100)는, 제3자의 사용자 단말(300)이 운영서버(100)를 통해 구동된 웹기반 애플리케이션을 이용하는 과정에서 발생하는 각종 오류 내역들을 로그 파일로 저장하고, 이를 사용자의 사용자 단말(200)에서 열람 가능하도록 사용자 단말(200)에 제공할 수 있다.
일 실시예에서, 운영 서버(100)는, 제3자의 사용자 단말(300)이 웹기반 애플리케이션을 이용하는 현황(예를 들어, 이용 시간, 이용할 때 사용자 단말(300)의 위치, 사용자 단말(300)이 주로 열람한 데이터 내역 등)을 모니터링하고, 모니터링된 이용현황 내역들을 로그 파일로 저장하고, 이를 사용자의 사용자 단말(200)에서 열람 가능하도록 사용자 단말(200)에 제공할 수도 있다.
도 2는 일 실시예에 따른 AI 기반 웹빌더를 제공하기 위한 운영서버의 기능적 구성요소들을 나타낸 도면이다.
도 2를 참조하면, AI기반 웹빌더를 제공하기 위한 운영서버(100)는, 웹빌더 서비스 관리부(101), UI 템플릿 관리부(102), 컴포넌트 관리부(103), 및 인공지능 지원부(104)를 포함할 수 있다.
웹빌더 서비스 관리부(101)는, 사용자 단말(200)의 사용자들을 관리할 수 있다. 예를 들어, 웹빌더 서비스 관리부(101)는, 사용자 단말(200)로부터 사용자 정보를 수신하고, 수신된 사용자 정보를 검증하고, 검증된 사용자 정보들을 저장할 수 있다. 여기서, 사용자 정보는, 사용자 단말(200)의 사용자에 대한 이름, 주소, ID, PASSWORD, 이메일주소 등과 같은 개인정보 뿐만 아니라, 사용자가 제작하기를 원하는 애플리케이션의 종류, 애플리케이션의 제작 목적, 애플리케이션의 제작기간 등을 포함할 수 있다.
선택적으로, 웹빌더 서비스 관리부(101)는, 사용자 단말(200)에 결제 정보를 전송하고, 사용자 단말(200)이 전송받은 결제 정보를 이용하여 외부의 금융 서버와 연동해 결제를 수행하고, 결제 완료 메시지를 외부의 금융 서버로부터 수신하고, 결제가 완료된 사용자 단말(200)의 사용자에게 웹기반 애플리케이션을 제작하기 위한 웹 기반 제작 툴인 웹빌더 서비스에 대한 사용자 인터페이스를 제공할 수 있다.
웹빌더 서비스 관리부(101)는, 사용자 단말(200)에게 웹빌더를 통해 제작하고자 하는 웹기반 애플리케이션의 종류, 목적 등을 입력받고, 입력받은 종류와 목적 등에 기반하여 미리 수집되어 저장된 UI템플릿들 중 하나를 선택하기 위한 제1 사용자 인터페이스를 사용자 단말(200)에 제공하고, 사용자 단말(200)은 제1 사용자 인터페이스를 이용하여 UI템플릿들 중 하나를 선택할 수 있다.
웹빌더 서비스 관리부(101)는, 사용자 단말(200)에 의해 선택된 UI템플릿을 사용자 단말(200)에 표시하고, 사용자 단말(200)에 의해 선택된 UI템플릿 내에 배치할 컴포넌트들을 배치할 수 있는 제2 사용자 인터페이스를 사용자 단말(200)에 제공할 수 있다.
사용자 단말(200)의 사용자는 제공받은 제2 사용자 인터페이스를 이용하여 UI 템플릿 내에 배치하기를 원하는 컴포넌트들을 선정하고, 배치할 수 있다.
웹빌더 서비스 관리부(101)는, 제2 사용자 인터페이스 내에 표시된 UI 템플릿 및 해당 UI 템플릿 내에 배치된 컴포넌트들의 디자인을 변경할 수 있는 제3 사용자 인터페이스를 사용자 단말(200)에 제공할 수도 있다. 사용자 단말(200)의 사용자는, 제공받은 제3 사용자 인터페이스를 이용하여 컴포넌트들 또는 UI템플릿을 구성하는 이미지, 크기, 색상, 폰트 등을 변경할 수 있다.
또한, 웹빌더 서비스 관리부(101)는, 사용자 단말(200)에 의해 최종적으로 완성된 웹기반 애플리케이션에 접속하기 위한 접속주소를 생성하고, 생성된 접속주소를 사용자 단말(200)에 제공할 수도 있다.
UI 템플릿 관리부(102)는, 미리 다수의 UI 템플릿들을 관리자로부터 입력받아 저장하고, 저장된 UI 템플릿들 각각에 대한 메타 데이터를 생성하고 저장할 수 있다. 예를 들어, 외부의 개발 인력들을 이용해 제작된 UI 템플릿들의 소스 코드가 운영 서버(100)에 업로드되면, UI 템플릿 관리부(102)는, 해당 소스 코드를 판독하여 UI 템플릿에 대응하는 메타 데이터를 생성하고, 생성된 메타 데이터에 대한 확인 입력을 관리자로부터 입력받고, 확인 입력이 완료된 메타 데이터를 해당 UI 템플릿의 소스 코드와 매칭하여 저장할 수 있다. 예를 들어, UI 템플릿 관리부(102)는, UI 템플릿의 소스 코드를 판독하고, 소스 코드를 구성하는 호출 함수들을 수집하고, 수집된 호출 함수들의 종류, 호출 함수들의 메개 변수, 호출 함수들의 호출 순서 등을 기반으로 메타 데이터를 생성할 수 있다.
일 실시예에서, UI 템플릿의 메타 데이터는, 해당 UI템플릿이 속하는 테마 종류(테마 종류들을 미리 관리자에 의해 입력되어 지정될 수 있고, 메타 데이터는 미리 지정된 메타 종류들 중 하나를 지시하는 데이터로 생성될 수 있음) 및 해당 UI 템플릿을 구성하는 구성요소들의 변환 허용 범위를 포함할 수 있다. 여기서, 변환 허용 범위는 해당 UI 템플릿을 구성하는 구성요소들(예를 들어, 폰트 크기, 배치 가능한 크기 등)이 변경될 수 있는 크기와 위치, 종류의 범위를 지시할 수 있다. 폰트 크기를 예로 들면, 해당 UI 템플릿 내에서 특정 위치에 배치된 폰트들의 변경 가능한 크기 범위가 변환 허용 범위에 포함된다. 구체적인 구현례에서, 변환 허용 범위는, 해당 구성요소들의 크기가 증가되었을 때 다른 구성요소들의 변경없이 커질 수 있는 한도를 최대 변환 허용 범위로 갖고, 해당 구성요소들의 크기가 감소되었을 때 다른 구성요소들 과의 크기 차이가 미리 설정된 임계값을 초과할 때를 최소 변환 허용 범위로 갖도록 설정될 수 있다. 변환 허용 범위는 소스 코드 판독에 의해 일차적으로 생성된 후 관리자의 확인 입력을 통해 최종적으로 설정 입력되는 것이 바람직할 수 있다.
또한, UI 템플릿 관리부(102)는, 저장된 UI 템플릿들 중에서 사용자 단말(200)의 사용자에 의해 선택된 UI 템플릿의 소스 코드를 호출하고, 호출된 소스 코드를 웹 상에서 웹페이지 형태로 구동하여 사용자 단말(200)에 표시할 수 있다.
컴포넌트 관리부(103)는, 미리 다수의 컴포넌트들을 관리자로부터 입력받아 저장하고, 저장된 컴포넌트들 각각에 대한 메타 데이터를 생성하고 저장할 수 있다. 예를 들어, 외부의 개발 인력들을 이용해 제작된 컴포넌트들의 소스 코드가 운영 서버(100)에 업로드되면, 컴포넌트 관리부(103)는, 해당 소스 코드를 판독하여 컴포넌트에 대응하는 메타 데이터를 생성하고, 생성된 메타 데이터에 대한 확인 입력을 관리자로부터 입력받고, 확인 입력이 완료된 메타 데이터를 해당 컴포넌트의 소스 코드와 매칭하여 저장할 수 있다.
일 실시예에서, 컴포넌트의 메타 데이터는, 해당 컴포넌트에 의해 구동되는 기능의 종류(관리자에 의해 미리 지정된 종류들 중 하나) 및 해당 컴포넌트를 구성하는 구성요소들(폰트, 색상, 크기 등)의 변환 허용 범위를 포함할 수 있다. 여기서 변환 허용 범위에 대해서는 앞선 UI 템플릿의 메타 데이터에서의 변환 허용 범위와 동일한 방식으로 설정될 수 있다.
인공지능 지원부(104)는, 웹빌더 서비스 관리부(101)에서 제공하는 사용자 인터페이스와 병렬적으로 사용자 단말(200)에게 웹디자인 상의 편의성을 증대하기 위한 인공지능 기반의 변환 지원서비스를 제공할 수 있다.
예를 들어, 인공지능 지원부(104)는, 사용자 단말(200)의 제3 사용자 인터페이스를 통한 UI 템플릿이나 컴포넌트 변경 상태를 모니터링하고, UI 템플릿이나 컴포넌트 변경 상태를 기반으로 사용자 단말(200)의 UI 템플릿과 컴포넌트 변경 형태를 예상하여 구현한 UI 템플릿이나 컴포넌트를 미리 생성하고, 생성된 UI 템플릿이나 컴포넌트의 미리보기 영역을 생성하여 제3 사용자 인터페이스와 중첩하게 사용자 단말(200)에 표시할 수 있다.
즉, 인공지능 지원부(104)는, 인공지능 기반으로 사용자 단말(200)의 사용자가 UI 템플릿이나 컴포넌트를 변경하는 상태를 지속적으로 모니터링하면서, 사용자가 최종적으로 변환 생성하고자 하는 UI 템플릿이나 컴포넌트를 미리 생성할 수 있다.
이를 위해, 인공지능 지원부(104)는, 사용자 단말(200)의 UI 템플릿 변경 조작을 모니터링하고, 모니터링된 현재의 UI 템플릿의 변경 정도를 기반으로 제1 인공신경망(10)을 이용하여 미리보기로 제공할 UI 템플릿을 생성하는 템플릿 변환지원부(104a)를 포함할 수 있다.
같은 취지로, 인공지능 지원부(104)는, 사용자 단말(200)의 컴포넌트 변경 조작을 모니터링하고, 모니터링된 현재의 컴포넌트의 변경 정도를 기반으로 제2 인공신경망(20)을 이용하여 미리보기로 제공할 컴포넌트를 생성하는 컴포넌트 변환지원부(104b)를 포함할 수 있다.
또한, 인공지능 지원부(104)는, 제1 인공신경망(10)과 제2 인공신경망(20)을 미리 지도학습하기 위한 학습데이터를 생성하는 변환모사 학습데이터 생성부(104c)를 더 포함할 수 있다. 변환모사 학습데이터 생성부(104c)는, 다양하게 수집되는 웹디자인 제작 영상들을 기반으로 제1 인공신경망(10)과 제2 인공신경망(20)을 미리 지도학습하기 위한 학습데이터를 생성할 수 있다.
도 3은 일 실시예에 따른 템플릿 변환지원부의 동작을 설명하기 위한 도면이다.
도 3을 참조하면, 템플릿 변환지원부(104a)는, 사용자 단말(200)의 사용자가 현재 작업하고 있는 현재의 UI 템플릿에 대응하는 템플릿 메타 데이터 및 템플릿 작업 모니터링 데이터를 획득하고, 획득된 템플릿 메타 데이터와 템플릿 작업 모니터링 데이터를 이용하여 제1 입력 데이터를 생성할 수 있다.
구체적으로, 템플릿 변환지원부(104a)는, 템플릿 메타 데이터에 포함된 테마 종류와 변환 허용 범위, 템플릿 작업 모니터링 데이터에 포함된 이미지 크기 변량, 이미지 배치위치 변량, 이미지 종류 변량, 컴포넌트 크기 변량, 컴포넌트 배치위치 변량, 컴포넌트 형식 변량을 포함하는 제1 입력 데이터를 생성할 수 있다. 여기서 이미지 크기 변량은 사용자 단말(200)의 사용자가 UI 템플릿에 포함된 이미지의 크기를 조작한 경우 그 크기 변량(대각선 크기 변화량)이고, 이미지 종류 변량은 사용자가 UI템플릿에 포함된 이미지를 다른 이미지로 변경한 경우, 변경 후 이미지의 종류(예를 들어, 해당 이미지에 포함된 객체)를 의미하고, 컴포넌트 크기 변량은 사용자가 UI 템플릿에 포함된 특정 컴포넌트의 크기를 조작한 경우 그 크기 변량(대각선 크기 변화량)이고, 컴포넌트 배치위치 변량은 사용자가 UI템플릿에 포함된 특정 컴포넌트의 위치를 조작한 경우, 그 위치 변화량(거리)이고, 컴포넌트 형식 변량은, 사용자가 UI 템플릿에 포함된 특정 컴포넌트를 다른 컴포넌트로 바꾼 경우 바뀐 후의 컴포넌트가 속하는 컴포넌트 형식(type)을 지시할 수 있다.
제1 입력 데이터의 형태는 각 요소들을 성분값으로 하는 행렬을 구성하여 적용하는 것이 일반적이나, 사용하는 인공신경망의 종류와 입력층을 구성하는 노드들의 수에 따라 상이하므로 통상의 기술자가 구성 성분들을 적당히 조정하여 입력 데이터로 생성할 수 있다.
제1 인공신경망(10)은, 제1 입력데이터를 입력받으면, 미리보기로 제공할 UI 템플릿을 구성하기 위한 구성요소들을 제1 출력 데이터로서 출력할 수 있다. 예를 들어, 제1 인공신경망(10)은, 미리보기로 제공할 UI 템플릿에 포함된 이미지 크기, 이미지 배치위치, 이미지 종류, 컴포넌트 크기, 컴포넌트 배치위치, 및 컴포넌트 형식을 포함하는 제1 출력 데이터를 출력할 수 있다.
템플릿 변환지원부(104a)는, 제1 출력 데이터를 기반으로 현재 사용자가 작업중인 UI템플릿을 변경하고, 변경된 UI 템플릿을 미리보기로서 사용자 단말(200)에 제공할 수 있다.
일 실시예에서, 제1 인공신경망(10)은, 학습 데이터를 이용하여 미리 지도학습될 수 있다.
여기서 학습 데이터는, 제1 훈련 입력값 및 제1 훈련입력값에 대응하는 정답을 나타내는 제1 훈련출력값의 쌍(pair)으로 구성될 수 있다. 제1 훈련 입력값은, 사람이 UI 템플릿에 대한 웹디자인을 수행하는 과정을 모니터링하여 얻어지는 이미지 크기 변량, 이미지 배치위치 변량, 및 이미지 종류 변량, 컴포넌트 크기 변량, 컴포넌트 배치위치 변량, 및 컴포넌트 형식 변량과 함께, 해당 UI 템플릿(또는 그 유사 UI 템플릿)의 메타 데이터로부터 확인 가능한 테마 종류 및 변환 허용 범위를 포함할 수 있다.
제1 훈련 출력값은, 해당 웹디자인 수행 과정을 통해 사람이 최종적으로 만든 UI템플릿(또는 그와 유사 UI 템플릿)을 구성하는 이미지 크기, 이미지 배치위치, 이미지 종류, 컴포넌트 크기, 컴포넌트 배치위치, 및 컴포넌트 형식을 포함하는 출력 데이터일 수 있다.
제1 인공신경망(10)은, 제1 훈련입력값이 입력되었을 때 얻어지는 출력 데이터 및 정답으로서 제공되는 제1 출력 출력값을 이용하여 손실 함수(loss fuction)을 연산하고, 연산된 손실 함수의 결과값이 최소화되도록 지도학습될 수 있다. 여기서 최소화되도록 지도학습하는 과정은, 손실함수의 결과값이 최소화되도록 제1 인공신경망(10)을 구성하는 각 계층들을 구성하는 노드들의 가중치를 재조정하는 과정일 수 있다.
제1 인공신경망(10) 및 제2 인공신경망(20)은, 딥러닝 기반의 인공신경망으로서, Recurrent Neural Network (RNN), Long Short-Term Memory (LSTM), Autoencoder, Variational Autoencoder (VAE), Deep Residual Network (DRN), Generative Adversarial Network (GAN) 등이 활용될 수 있으며, Recurrent Neural Network (RNN) 또는 Long Short-Term Memory (LSTM) 기반의 인공신경망을 활용하는 것이 바람직할 수 있다. 이때, Recurrent Neural Network (RNN) 또는 Long Short-Term Memory (LSTM) 기반의 인공신경망은 다양한 소스코드들이 이미 공개되어 있고 접근 가능하므로, 통상의 기술자들은 이미 알려진 이러한 인공신경망들 중 하나를 성능평가를 통해 선정하고 활용하는 것이 가능하다. 본 발명에서는 특정 인공신경망으로의 제한을 두지 않는다.
도 4는 일 실시예에 따른 컴포넌트 변환지원부의 동작을 설명하기 위한 도면이다.
컴포넌트 변환지원부(104b)는, 템플릿 변환지원부(104a)와 마찬가지로, 사용자 단말(200)의 사용자가 현재 작업하고 있는 현재의 컴포넌트에 대응하는 컴포넌트 메타 데이터 및 컴포넌트 작업 모니터링 데이터를 획득하고, 획득된 컴포넌트 메타 데이터와 컴포넌트 작업 모니터링 데이터를 이용하여 제2 입력 데이터를 생성할 수 있다.
구체적으로, 컴포넌트 변환지원부(104b)는, 컴포넌트 메타 데이터에 포함된 해당 컴포넌트가 분류되어 있는 기능의 종류와 해당 컴포넌트가 변환 가능한 변환 허용 범위, 컴포넌트 작업 모니터링 데이터에 포함된 폰트 종류, 컴포넌트 크기 변량, 및 컴포넌트 색상을 포함하는 제2 입력 데이터를 생성할 수 있다.
여기서 폰트 종류는, 사용자 단말(200)의 사용자가 해당 컴포넌트를 구성하는 폰트 종류를 바꾼 경우 바꾼 후의 폰트 종류를 의미하고, 컴포넌트 크기 변량은, 사용자가 해당 컴포넌트의 크기를 조작한 경우 그 크기 변량(대각선 크기 변화량)이고, 컴포넌트 색상 변량은 사용자가 해당 컴포넌트를 구성하는 색상을 바꾼 경우, 바꾼 후의 컴포넌트 색상을 의미한다.
제2 인공신경망(20)은, 제2 입력데이터를 입력받으면, 미리보기로 제공할 컴포넌트를 구성하기 위한 구성요소들을 제1 출력 데이터로서 출력할 수 있다. 예를 들어, 제2 인공신경망(20)은, 미리보기로 제공할 컴포넌트를 구성하는 폰트 종류, 컴포넌트 크기, 및 컴포넌트 색상을 포함하는 제2 출력 데이터를 출력할 수 있다.
컴포넌트 변환지원부(104b)는, 제2 출력 데이터를 기반으로 현재 사용자가 작업중인 UI컴포넌트를 변경하고, 변경된 UI 컴포넌트를 미리보기로서 사용자 단말(200)에 제공할 수 있다.
일 실시예에서, 제2 인공신경망(20)은, 학습 데이터를 이용하여 미리 지도학습될 수 있다.
여기서 학습 데이터는, 제2 훈련 입력값 및 제2 훈련입력값에 대응하는 정답을 나타내는 제2 훈련출력값의 쌍(pair)으로 구성될 수 있다. 제2 훈련 입력값은, 사람이 해당 컴포넌트 또는 그와 유사한 컴포넌트에 대한 웹디자인을 수행하는 과정을 모니터링하여 얻어지는 폰트 종류, 컴포넌트 크기 변량, 컴포넌트 색상, 및 해당 컴포넌트(또는 그와 유사 컴포넌트)의 메타데이터를 통해 얻어지는 기능의 종류, 변환 허용 범위를 포함할 수 있다.
제2 훈련 출력값은, 해당 웹디자인 수행 과정을 통해 사람이 최종적으로 만든 컴포넌트를 구성하는 폰트 종류, 컴포넌트 크기, 및 컴포넌트 색상을 포함할 수 있다.
제2 인공신경망(20)은, 제2 훈련입력값이 입력되었을 때 얻어지는 출력 데이터 및 정답으로서 제공되는 제2 출력 출력값을 이용하여 손실 함수(loss fuction)을 연산하고, 연산된 손실 함수의 결과값이 최소화되도록 지도학습될 수 있다. 여기서 최소화되도록 지도학습하는 과정은, 손실함수의 결과값이 최소화되도록 제2 인공신경망(20)을 구성하는 각 계층들을 구성하는 노드들의 가중치를 재조정하는 과정일 수 있다.
제2 인공신경망(20)은, 딥러닝 기반의 인공신경망으로서, Recurrent Neural Network (RNN), Long Short-Term Memory (LSTM), Autoencoder, Variational Autoencoder (VAE), Deep Residual Network (DRN), Generative Adversarial Network (GAN) 등이 활용될 수 있으며, Recurrent Neural Network (RNN) 또는 Long Short-Term Memory (LSTM) 기반의 인공신경망을 활용하는 것이 바람직할 수 있다. 이때, Recurrent Neural Network (RNN) 또는 Long Short-Term Memory (LSTM) 기반의 인공신경망은 다양한 소스코드들이 이미 공개되어 있고 접근 가능하므로, 통상의 기술자들은 이미 알려진 이러한 인공신경망들 중 하나를 성능평가를 통해 선정하고 활용하는 것이 가능하다. 본 발명에서는 특정 인공신경망으로의 제한을 두지 않는다.
도 5는 일 실시예에 따른 제1 인공신경망과 제2 인공신경망의 구조를 설명하기 위한 개념도이다.
도 5를 참조하여 제1 인공신경망(10)의 구조에 대해 설명하지만 제2 인공신경망(20)에도 데이터 크기를 달리하면 동일한 구조의 인공신경망이 적용될 수 있는 것으로 해석되어야 한다.
도 5를 참조하면, 제1 인공 신경망(10)은, 제1 입력 데이터를 구성하는 행렬의 각 열들을 입력 벡터(X)로서 순차적으로 입력받고, 입력받은 입력 벡터(X)의 성분값 개수와 동일한 개수(N)의 입력 노드들로 구성되는 입력층(11), 입력층(11)으로부터 전달받은 출력값들을 이용하여 산출된 출력 벡터(Y`)를 출력층(13)에 전달하는 은닉층(12), 및 출력 벡터(Y`)에 활성화 함수를 적용하여 출력 벡터(Y`)에 대응하는 확률(p)을 결정하고, 결정된 확률(p)이 가장 높은 출력 벡터(Y`)를 출력하는 출력층(13)을 포함할 수 있다. 본 발명에서 인공 신경망(10)을 구성하는 노드들 각각은 본 발명이 속하는 기술분야에서 흔히 사용하는 표현인 뉴런(neuron)이라는 용어로도 혼용하여 지칭될 수 있다.
구체적으로, 인공 신경망(10)은, 훈련 입력값으로 제공된 매트릭스의 각 열들을 입력 벡터(X)로서 순차 입력받으면, 은닉층(12)의 출력으로서 획득되는 출력 벡터(Y`)와 훈련 출력값을 벡터화하여 생성된 훈련출력벡터(Y)를 사용하여 손실함수(loss function)을 연산하고, 연산된 손실함수의 결과값이 최소화되도록 지도학습된다.
예를 들어, 손실 함수(H(Y,Y`))는, 크로스 엔트로피(Cross Entropy) 함수일 수 있다. 출력 벡터(Y`)와 훈련출력벡터(Y) 사이의 크로스 엔트로피(H(Y,Y`))는 다음의 수학식 1과 같이 정의될 수 있다.
수학식 1에서 Ym은 훈련출력벡터(Y)의 m(m은 1 이상의 자연수)번째 성분이고, Y`m은 출력 벡터(Y`)의 m번째 성분일 수 있다.
입력층(11)은 입력 벡터(X)를 입력받고, 입력받은 입력 벡터(X)의 성분들 각각에 대하여, 입력 노드들과 대응하는 하나 이상의 연결 강도값들을 적용하여 은닉층(12)에 전달할 수 있다.
예를 들어, 입력 노드들 각각에 대응하는 하나 이상의 연결 강도값들은 N×M의 크기를 갖는 제1 연결강도 행렬(WN×M)로 표현할 수 있다. 이때, N은 입력노드들과 동일한 개수일 수 있고, M은 N보다 1/10 배 이하로 충분히 작게 설정된다. 제1 연결강도 행렬(WN×M)은 임의의 초기값으로 설정된 후 지도학습을 통해 지속적으로 갱신되는 파라미터일 수 있다.
종합하면, 입력층(11)은 입력받은 입력 벡터(X)에 제1 연결강도 행렬(WN×M)을 행렬곱 연산하여 얻어진 중간 연산 벡터(X)을 은닉층(12)에 전달할 수 있다.
은닉층(12)은, 입력층(11)으로부터 전달받은 중간 연산 벡터(X)에서 획득되는 특징 벡터(feature vector, F)에 은닉 노드들 각각에 대응하는 하나 이상의 연결 강도를 적용하여 출력 벡터(Y`)를 생성하고, 생성된 출력 벡터(Y`)를 출력층(13)에 전달할 수 있다.
예를 들어, 은닉층(12)은, 중간 연산 벡터(X)로부터 아래 수학식 2를 만족하는 대각 행렬(diagonal matrix)인 특징 벡터(F)를 획득할 수 있다.
수학식 2에서, R는 대각 행렬인 특징 벡터(F)와 중간 연산 벡터(X) 사이에 수학식 2에 따른 관계를 가역적으로 만족시키는 행렬로서, 좌표변환행렬에 해당한다. 수학식 2에 따른 연산은 대각화 연산의 하나로 지칭될 수 있으며, 통상의 기술자에게 쉽게 이해될 수 있으므로 구체적인 설명은 생략한다.
이때, 은닉 노드들 각각에 대응하는 하나 이상의 연결 강도값들은 M×Q의 크기를 갖는 제2 연결강도 행렬(UM×Q)로 표현할 수 있다. 즉, 제2 연결강도 행렬(UM×Q)은 M개의 차원으로 사상된 특징 벡터(F)를 다시 Q개의 차원으로 늘린다. Q는 M보다 10배 이상 충분히 큰 값으로 설정된다.
한편, 제2 연결강도 행렬(UM×Q)의 초기값은 임의의 값으로 설정된 후, 특징 벡터(F)와 제2 연결강도 행렬(UM×Q) 사이의 행렬곱 연산하여 생성된 출력 벡터(Y`)가 훈련 출력값인 훈련출력벡터(Y)가 되도록 지속적으로 갱신될 수 있다. 즉, 제2 연결강도 행렬(UM×Q)도 훈련 데이터를 지속적으로 지도학습함에 따라 갱신되는 파라미터일 수 있다.
즉, 은닉층(12)은, 입력층(11)으로부터 전달받은 중간 연산 벡터(X)를 특징 벡터로 변환하고, 특징 벡터에 대하여 연결강도를 적용하여 출력 벡터(Y`)를 생성하므로, 마치 CNN(convolutional neural network)의 특징 추출을 담당하는 컨볼루셔널 레이어와 유사한 기능을 은닉층(12)에서 수행하도록 구성할 수 있다.
출력층(13)은, 은닉층(12)으로부터 전달받은 출력 벡터(Y`)에 활성화 함수를 적용함으로써 출력 벡터(Y`)에 대응하는 확률(p)을 결정하고, 결정된 확률(p)이 가장 높은 출력 벡터(Y`)를 출력할 수 있다. 활성화 함수는 다양한 범위를 가지는 값들을 0과 1 사이의 값으로 확대 또는 축소함으로써 확률로 변환하는 효과가 있다. 예를 들어, 활성화 함수는, ReLU 함수 또는 Softmax 함수일 수 있으나 이에 한정되는 것은 아니다.
본 발명의 일 실시예에서 은닉층(12)은, 동일한 개수의 뉴런들을 가지며, 서로 다르고 순차적으로 연결된 복수의 은닉층들로 구성될 수 있다. 예를 들어, 은닉층(12)은 서로 다르고 순차적으로 연결된 제1 은닉층, 제2 은닉층, 제3 은닉층, 및 제4 은닉층으로 구성될 수 있다. 이때, 제1 내지 제4 은닉층은 선형 레이어(linear layer)일 수 있으며, 제1 내지 제4 은닉층들 중에서 적어도 하나는 밀집 레이어(dense layer)일 수 있다. 여기서 선형 레이어 또는 밀집 레이어의 지정은 Tensorflow에서 미리 정의된 함수를 통해 간단하게 설정될 수 있으므로 설명은 생략한다.
또한, 제1 내지 제4 은닉층들 중에서 적어도 하나는 은닉층들의 개수와 은닉층들 각각이 갖는 뉴런들의 수에 따라 결정되는 확률에 따라 드랍아웃(drop out)이 적용될 수 있다.
본 발명의 일 실시예에서, 드랍아웃이란, 해당 계층을 구성하는 뉴런들 중에서 확률에 따라 무작위로 선택된 적어도 일부의 뉴런들의 가중치를 0 또는 미리 정의된 상수로 설정함으로써 해당 일부의 뉴런들을 비활성화하거나 방해하도록 구성하는 것을 의미할 수 있다.
예를 들어, 제1 은닉층이 768개의 뉴런들로 구성되고, 확률(p)이 0.2인 경우, 768개의 뉴런들 중 무작위로 선택된 20%의 뉴런들(즉, 768/5 개의 뉴런들)에 대한 가중치가 0 또는 미리 정의된 상수로 설정될 수 있다.
예를 들어, 확률(pp)는 다음의 수학식 3과 같이 정의될 수 있다.
수학식 3에서 NRn은 제1 내지 제4 은닉층들에 포함된 뉴런들의 평균 개수일 수 있고, Nn은 드랍아웃을 적용할 은닉층에 포함된 뉴런들의 개수이고, HDn은 은닉층들의 전체 개수로서 제1 내지 제4 은닉층들로 구성될 경우 4일 수 있다.
이처럼, 제1 내지 제4 은닉층들 중에서 적어도 하나에 대하여 드랍아웃을 적용할 경우, 은닉층들의 수와 각 뉴런들의 수가 증가함에 따라 발생할 수 있는 과적합 경향성을 보상하거나 상쇄할 수 있어 더 높은 예측 효과를 가져오는 데 도움이 될 수 있다.
일 실시예에서, 제1 내지 제4 은닉층들 중에서 제1 은닉층 및 제3 은닉층 내지 제4 은닉층 각각은 서로 동일한 뉴런들의 수로 구성될 수 있다. 예를 들어, 각각 768개의 뉴런들로 구성될 수 있다.
이때, 제1 은닉층 뒤에 연결되는 제2 은닉층을 구성하는 뉴런들의 수는 다른 은닉층들 각각이 갖는 뉴런들의 수보다 적어도 4 배이상 클 수 있다. 제2 은닉층을 구성하는 뉴런들의 수를 다른 은닉층들 각각이 갖는 뉴런들의 수보다 기준치 이상 크게 설정할 경우, 인공 신경망(10)이 과적합되는 경향성이 줄어들 수 있는 장점이 있다.
도 6은 일 실시예에 따른 변환모사 학습데이터 생성부의 동작을 나타낸 대표 흐름도이다.
제1 인공신경망(10)이나 제2 인공신경망(20)의 지도학습을 위해서는 방대한 양의 사람이 작업하는 웹디자인 영상이 요구되고 이는 일반적으로 모두 구해 적용하기 매우 어려운 경우가 많다. 특히 웹디자인 작업은 매우 다양한 컴포넌트와 UI 템플릿을 대상으로 이루어지기 때문에, 서비스에 적용하고자 하는 컴포넌트 및 UI 템플릿과 동일한 컴포넌트와 UI 템플릿의 작업 영상으로 학습데이터를 만드는 것은 사실상 불가능하다.
이러한 문제를 해결하기 위하여 본 발명의 일 실시예에 따르면, 웹디자인 수행 영상으로부터 컴포넌트와 UI 템플릿을 식별한 후, 식별된 컴포넌트와 UI 템플릿과 유사한 유사 컴포넌트 및 유사 UI 템플릿을 미리 수집된 컴포넌트와 UI 템플릿에서 선택하여 훈련데이터를 구성함으로써, 훈련 데이터 수집의 어려움을 보완하는 방안을 제안한다.
도 6을 참조하면, 변환모사 학습 데이터 생성부(104c)는, 웹디자인 수행영상을 수집할 수 있다(S100). 여기서 웹디자인 수행영상은 웹디자이너 또는 개발자가 컴포넌트 또는 컴포넌트를 포함하는 UI 템플릿을 대상으로 한 웹디자인 작업을 수행하는 과정을 촬영한 영상일 수 있다.
변환모사 학습 데이터 생성부(104c)는, 웹디자인 수행영상에서 복수의 키프레임들을 추출할 수 있다(S110). 여기서 키프레임들 각각은 컴포넌트나 UI 템플릿이 식별되는 이미지 프레임을 의미할 수 있다.
이를 위해, 별도로 CNN 기반의 인공신경망을 구성하고, 구성된 CNN 기반의 인공신경망이 컴포넌트나 UI 템플릿을 입력 이미지에서 식별할 수 있도록 지도학습시켜 사용할 수 있다. CNN 기반의 인공신경망은 이미지의 분류(classify)에 용이한 인공신경망으로 널리 알려져 있어 컴포넌트와 UI 템플릿을 식별하도록 학습시키는 것이 가능하다.
예를 들어, CNN 기반의 인공신경망은 LeNet, AlexNet, ZFNet, VGGNET, GoogLeNet, ResNet, DensNet 등의 알려진 인공신경망 구조를 통상의 기술자가 용이하게 입수하여 사용할 수 있다.
변환모사 학습 데이터 생성부(104c)는, 추출된 키프레임들에서 컴포넌트와 UI 템플릿을 식별할 수 있다(S120).
구체적으로, 단계 S120에서 변환모사 학습 데이터 생성부(104c)는, UI 템플릿으로 식별된 영역에서 이미지의 크기, 이미지의 종류(즉, 이미지에 들어있는 객체, 공지된 객체 식별 알고리즘을 사용할 수 있음.), 삽입된 컴포넌트의 크기, 컴포넌트의 형식, 및 컴포넌트의 기능을 포함하는 제1 식별 정보를 식별할 수 있다.
여기서 컴포넌트 기능은 컴포넌트로 식별된 영역에 포함된 텍스트를 미리 지정된 컴포넌트 기능 사전에 저장된 텍스트들과 대조하는 방식으로 컴포넌트 기능을 식별할 수 있다. 컴포넌트 기능 사전은 컴포넌트의 기능에 따라 해당 컴포넌트에 대표적으로 삽입되는 문구가 저장된 데이터일 수 있다.
단계 S120에서 변환모사 학습 데이터 생성부(104c)는, 컴포넌트로 식별된 영역에서 폰트 종류, 컴포넌트의 크기, 컴포넌트의 기능 및 컴포넌트의 색상을 포함하는 제2 식별 정보를 식별할 수 있다.
변환모사 학습 데이터 생성부(104c)는, 추출된 키프레임들을 서로 동일한 UI 템플릿들이 식별된 키프레임들로 분류하여 제1 그룹들을 생성하고, 추출된 키프레임들을 서로 동일한 컴포넌트들이 식별된 키프레임들로 분류하여 제2 그룹들을 생성할 수 있다(S130).
단계 S130에서 변환모사 학습 데이터 생성부(104c)는, 식별된 UI 템플릿들 사이에 제1 식별 정보들을 서로 비교하고, 제1 식별 정보들 사이에 차이가 미리 설정된 임계차이 이내인 경우 동일한 UI 템플릿으로 결정할 수 있다.
같은 방식으로, 단계 S130에서 변환모사 학습 데이터 생성부(104c)는, 식별된 컴포넌트들 사이에 제2 식별 정보들을 서로 비교하고, 제2 식별 정보들 사이에 차이가 미리 설정된 임계차이 이내인 경우 동일한 컴포넌트로 결정할 수 있다.
또한, 단계 S130에서 변환모사 학습 데이터 생성부(104c)는, 생성된 제1 그룹들과 제2 그룹들 중에서 각 그룹을 구성하는 키프레임들의 수가 미리 설정된 임계갯수 이하인 그룹들을 필터링(제거)할 수 있다. 이 과정을 통해 충분한 이미지 프레임 개수가 확보되지 않은 그룹은 제외시킴으로써 웹디자인의 작업 변화량 확인에 어려움이 있는 이미지들을 제거할 수 있다.
다음으로, 변환모사 학습 데이터 생성부(104c)는, 제1 그룹들 각각에서 UI 템플릿의 작업 변화량을 추출하고, 제2 그룹들 각각에서 컴포넌트의 작업 변화량을 추출할 수 있다. 여기서 UI 템플릿의 작업 변화량은 제1 입력 데이터를 구성하기 위한 이미지 크기 변량, 이미지 배치 위치 변량, 이미지 종류 변량, 컴포넌트 크기 변량, 컴포넌트 배치위치 변량, 컴포넌트 형식 변량을 포함한다.
같은 방식으로 컴포넌트의 작업 변화량은 제2 입력 데이터를 구성하기 위한 폰트 종류, 컴포넌트 크기 변량, 컴포넌트 색상을 포함한다.
변환모사 학습 데이터 생성부(104c)는, 추출된 UI 템플릿의 작업 변화량을 해당 UI 템플릿의 유사 UI 템플릿과 커플링시켜 제1 학습데이터를 생성하고, 추출된 컴포넌트의 작업 변화량을 해당 컴포넌트의 유사 컴포넌트와 커플링시켜 제2 학습 데이터를 생성할 수 있다.
여기서 제1 학습 데이터는 제1 인공신경망(10)을 지도학습시키는 데 활용하고, 제2 학습 데이터는 제2 인공신경망(20)을 지도학습시키는 데 활용된다.
여기서, 유사 UI 템플릿은, 웹디자인 수행 영상에서 식별된 특정 UI 템플릿 및 미리 수집되어 저장된 각각의 UI 템플릿들과의 관계에서 하기 수학식 4에 따른 템플릿 관련도를 산출하고, 산출된 템플릿 관련도가 저장된 UI 템플릿들 중에서 가장 작은 UI 템플릿일 수 있다.
TR은 템플릿 관련도이고, m과 k는 각각 비교되는 두개의 UI템플릿들 각각에 삽입된 이미지의 총 갯수들 중에서 큰 값과 작은 값이고, IS는 웹디자인 수행 영상에서 식별된 특정 UI 템플릿에 포함된 이미지의 크기이고, ISr은 미리 저장된 UI템플릿에 포함된 이미지의 크기이고, EQ는 이미지의 종류가 동일하면 1이고 다르면 0을 지시하는 값이고, z2와 z1은 각각 비교되는 두개의 UI템플릿들 각각에 삽입된 컴포넌트들의 총 갯수들 중에서 큰 값과 작은 값이고, CPS는 특정 UI 템플릿에 삽입된 컴포넌트의 크기이고, CPSr은 미리 저장된 UI 템플릿에 삽입된 컴포넌트의 크기이고, EQn은 컴포넌트의 형식과 컴포넌트의 기능이 동일하면 1이고 다르면 0을 지시하는 값일 수 있다. L1과 L2는 각각 UI 템플릿에 포함된 이미지와 컴포넌트 각각에 부여된 가중치로서, 관리자가 중요시하는 비중에 따라 설정 가능하며, L1과 L2의 합은 1이고, L2가 L1보다 적어도 두배 이상 큰값으로 설정되는 것이 바람직할 수 있다.
여기서, 유사 컴포넌트는, 웹디자인 수행 영상에서 식별된 특정 컴포넌트와 미리 수집되어 저장된 컴포넌트들과의 관계에서 하기 수학식 5에 따른 컴포넌트 관련도를 산출하고, 산출된 컴포넌트 관련도가 미리 저장된 컴포넌트들 중에서 가장 작은 컴포넌트일 수 있다.
T는 특정 컴포넌트의 폰트 종류와 미리 저장된 컴포넌트의 폰트 종류가 같으면 미리 설정된 제1값(예를 들어, 0.8)을 갖고 다르면 미리 설정된 제2 값(예를 들어 1.2)를 갖는 상수이고, CoPS는 특정 컴포넌트의 크기이고, CoPSr은 미리 저장된 컴포넌트의 크기이고, EF는 비교되는 2개의 컴포넌트의 기능이 동일한 경우 1이고 다르면 0을 지시하는 값이고, sum(dr, dg, db)는 비교되는 2개의 컴포넌트들의 크기를 서로 동일하게 리사이징하고(예를 들어 둘중 작은 사이즈로 리사이징), 2개의 컴포너트들 각각을 구성하는 색상값들을 동일한 위치의 색상값끼리 차분하고, 차분한 색상값들의 레드 색상 성분(dr), 그린 색상 성분(dg), 블루 색상 성분(db)을 모두 더한 값이다.
이처럼 본 발명의 일 실시예에 따르면, 반드시 웹빌더에서 제공하는 컴포넌트 및 UI 템플릿과 동일한 웹디자인 영상을 수집하지 않더라도 미리 정해진 조건에 따라 가장 유사한 컴포넌트와 UI 템플릿의 훈련 데이터로 수집하여 활용할 수 있어, 훈련 데이터를 수집하기 용이하고 서비스를 쉽게 정착시킬 수 있다.
서비스 출시 이후에는 훈련 데이터를 직접 웹빌더를 이용하는 사용자 단말(200)의 웹디자인 조작 과정을 직접 모니터링하여 수집하는 방식으로 추가 훈련이 가능하며, 이를 통해 앞서 초기 단계에서 훈련 데이터를 유사 데이터를 사용함에 따라 발생하는 오차를 순차적으로 보정할 수 있다.
도 7은 일 실시예에 따른 AI 기반 웹빌더를 제공하기 위한 운영서버의 하드웨어 구성을 예시적으로 나타낸 도면이다.
도 7을 참조하면, AI 기반 웹빌더를 제공하기 위한 운영서버(100)는, 적어도 하나의 프로세서(110), 및 적어도 하나의 프로세서(110)가 적어도 하나의 동작을 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(120)를 포함할 수 있다.
여기서 적어도 하나의 프로세서(110)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다.
메모리(120)는 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중 하나일 수 있고,
운영서버(100)는, 상기 적어도 하나의 동작을 수행하기 위한 입력 데이터, 중간처리 임시 데이터, 출력 데이터 등을 저장하기 위한 저장 장치(160)를 더 포함할 수 있다. 예를 들어, 저장 장치(160)는, 플래시메모리(flash-memory), 하드디스크 드라이브(HDD), 솔리드 스테이트 드라이브(SSD), 또는 각종 메모리 카드(예를 들어, micro SD 카드) 등일 수 있다.
또한, AI 기반 웹빌더를 제공하기 위한 운영서버(100)는, 무선 네트워크를 통해 통신을 수행하는 송수신 장치(transceiver)(130)를 포함할 수 있다. 또한, AI 기반 웹빌더를 제공하기 위한 운영서버(100)는 입력 인터페이스 장치(140), 출력 인터페이스 장치(150), 저장 장치(160) 등을 더 포함할 수 있다. AI 기반 웹빌더를 제공하기 위한 운영서버(100)에 포함된 각각의 구성 요소들은 버스(bus)(170)에 의해 연결되어 서로 통신을 수행할 수 있다.
AI 기반 웹빌더를 제공하기 위한 운영서버(100)의 예를 들면, 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), PDA(Personal Digital Assistant) 등일 수 있다.
도 8은 본 발명의 일 실시예에 따른 통신 과정에서 적용될 수 있는 무선 통신 시스템을 나타낸 도면이다. 도 9는 도 8에 따른 무선 통신 시스템에서 기지국을 나타낸 도면이다. 도 10은 도 8에 따른 무선 통신 시스템에서 단말을 나타낸 도면이다. 도 11은 도 8에 따른 무선 통신 시스템에서 통신 인터페이스를 나타낸 도면이다.
이하에서는 본 발명에 따라 운영 서버(100)와 단말들(200, 300) 사이의 통신을 지원하는 무선 통신 네트워크 시스템의 일례를 구체적으로 예를 들어 설명한다. 다음 설명에서, 제1 노드(장치)는 앵커/도너 노드 또는 앵커/도너 노드의 CU(centralized unit) 일 수 있고, 제2 노드(장치)는 앵커/도너 노드 또는 릴레이 노드의 DU(distributed unit) 일 수 있다.
무선 통신 시스템에서 무선 채널을 사용하는 노드의 일부로 기지국(base station, BS), 단말, 서버 등이 포함될 수 있다.
기지국은 단말 및 단말에 무선 액세스를 제공하는 네트워크 인프라이다. 기지국은 신호가 전송될 수 있는 거리에 따라 소정의 지리적 영역으로 정의된 커버리지를 갖는다.
기지국은 "기지국"과 마찬가지로 "액세스 포인트(access point, AP)", "이노드비(enodeb, eNB)", "5 세대(5th generation, 5G) 노드", "무선 포인트(wireless point)", "송/수신 포인트(transmission/reception point, TRP)" 지칭될 수 있다.
기지국, 단말 및 단말은 밀리미터 파(millimeter wave, mmWave) 대역(예: 28GHz, 30GHz, 38GHz, 60GHz)으로 무선 신호를 송수신할 수 있다. 이때, 채널 이득 향상을 위해 기지국, 단말 및 단말은 빔포밍을 수행할 수 있다. 빔포밍은 송신 빔포밍 및 수신 빔포밍을 포함할 수 있다. 즉, 기지국, 단말 및 단말은 송신 신호와 수신 신호에 지향성을 부여할 수 있다. 이를 위해 기지국, 단말 및 단말은 빔 탐색 절차 또는 빔 관리 절차를 통해 서빙 빔을 선택할 수 있다. 그 후, 통신은 서빙 빔을 운반하는 자원과 준 동일위치(quasi co-located) 관계에 있는 자원을 사용하여 수행될 수 있다.
첫 번째 안테나 포트 및 두 번째 안테나 포트는 첫 번째 안테나 포트의 심볼이 전달되는 채널의 대규모 속성이 두 번째 안테나 포트의 심볼이 전달되는 채널에서 유추될 수 있는 경우 준 동일위치 위치에 있는 것으로 간주된다. 대규모 속성은 지연 확산, 도플러 확산, 도플러 시프트, 평균 이득, 평균 지연 및 공간 Rx 파라미터 중 하나 이상을 포함할 수 있다.
이하에서는 상술한 무선 통신 시스템에서 기지국을 예시한다. 이하에서 사용되는 "-모듈(module)", "-부(unit)"또는 "-er"라는 용어는 적어도 하나의 기능 또는 동작을 처리하는 유닛을 의미할 수 있으며, 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다.
기지국은 무선 통신 인터페이스, 백홀 통신 인터페이스, 저장부(storage unit 및 컨트롤러을 포함할 수 있다.
무선 통신 인터페이스는 무선 채널을 통해 신호를 송수신하는 기능을 수행한다. 예를 들어, 무선 통신 인터페이스는 시스템의 물리 계층 표준에 따라 베이스 밴드 신호와 비트 스트림 간의 변환 기능을 수행할 수 있다. 예를 들어, 데이터 전송에서, 무선 통신 인터페이스은 전송 비트 스트림을 인코딩 및 변조하여 복합 심볼을 생성한다. 또한, 데이터 수신 시 무선 통신 인터페이스는 베이스 밴드 신호를 복조 및 디코딩하여 수신 비트 스트림을 재구성한다.
무선 통신 인터페이스는 무선 채널을 통해 신호를 송수신하는 기능을 수행한다. 예를 들어, 무선 통신 인터페이스은 시스템의 물리 계층 표준에 따라 베이스 밴드 신호와 비트 스트림 간의 변환 기능을 수행할 수 있다. 예를 들어, 데이터 전송에서, 무선 통신 인터페이스은 전송 비트 스트림을 인코딩 및 변조하여 복합 심볼을 생성한다. 또한, 데이터 수신 시 무선 통신 인터페이스은 베이스 밴드 신호를 복조 및 디코딩하여 수신 비트 스트림을 재구성한다.
또한, 무선 통신 인터페이스는 베이스 대역 신호를 RF(Radio Frequency) 대역 신호로 상향 변환하고, 변환된 신호를 안테나를 통해 전송한 후 안테나를 통해 수신된 RF 대역 신호를 베이스 대역 신호로 하향 변환한다. 이를 위해, 무선 통신 인터페이스은 송신 필터(transmission filter), 수신 필터(reception filter), 증폭기(amplifier), 믹서(mixer), 발진기(oscillator), 디지털-아날로그 컨버터(digital-to-analog convertor, DAC), 아날로그-디지털 컨버터(analog-to-digital convertor, ADC) 등을 포함할 수 있다. 또한, 무선 통신 인터페이스는 복수의 송수신 경로를 포함할 수 있다. 또한, 무선 통신 인터페이스는 복수의 안테나 요소를 포함하는 적어도 하나의 안테나 어레이를 포함할 수 있다.
하드웨어 측면에서 무선 통신 인터페이스는 디지털 유닛과 아날로그 유닛을 포함할 수 있고, 아날로그 유닛은 동작 전력, 동작 주파수 등에 따라 복수의 서브 유닛을 포함할 수 있다. 디지털 유닛은 적어도 하나의 프로세서(예를 들어, 디지털 신호 프로세서(digital signal processor, DSP))로 구현될 수 있다.
무선 통신 인터페이스는 전술한 바와 같이 신호를 송수신한다. 따라서, 무선 통신 인터페이스는 "송신기(transmitter)", "수신기(receiver)"또는 "트랜시버(transceiver)"로 지칭될 수 있다. 또한, 이하의 설명에서 무선 채널을 통해 수행되는 송수신은 전술한 바와 같이 무선 통신 인터페이스에서 수행되는 처리를 포함하는 의미로 사용될 수 있다.
백홀 통신 인터페이스는 네트워크 내의 다른 노드와 통신을 수행하기위한 인터페이스를 제공한다. 즉, 백홀 통신 인터페이스는 다른 노드로 전송되는 비트 스트림을 변환하고, 예를 들어, 다른 액세스 노드, 다른 기지국, 상위 노드 또는 기지국으로부터의 코어 네트워크는 물리적 신호로, 다른 노드로부터 수신된 물리적 신호를 비트 스트림으로 변환한다.
저장부는 기본 프로그램, 어플리케이션, 기지국의 동작을 위한 설정 정보 등의 데이터를 저장한다. 저장부는 휘발성 메모리, 비 휘발성 메모리 또는 휘발성 메모리와 비 휘발성 메모리의 조합을 포함할 수 있다.
컨트롤러는 기지국의 전반적인 동작을 제어한다. 예를 들어, 컨트롤러는 무선 통신 인터페이스 또는 백홀 통신 인터페이스를 통해 신호를 송수신한다. 또한 컨트롤러는 저장부에 데이터를 기록하고 기록된 데이터를 읽는다. 컨트롤러는 통신 규격에서 요구하는 프로토콜 스택의 기능을 수행할 수 있다. 다른 구현에 따르면, 프로토콜 스택은 무선 통신 인터페이스에 포함될 수 있다. 이를 위해 컨트롤러는 적어도 하나의 프로세서를 포함할 수 있다.
일 실시 예에 따르면 컨트롤러는 본 발명의 실시 예에 따른 동작을 수행하도록 기지국을 제어할 수 있다.
다양한 실시 예에 따르면, 무선 통신 시스템의 도너 노드는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서에 동작 가능하게 결합된 트랜시버를 포함하고, 상기 릴레이 노드에 액세스하는 단말에 대한 복수의 라디오 베어러에 관한 상기 도너 노드와 관련된 제1 정보를 포함하는 제1 메시지를 릴레이 노드로 전송하도록 구성되고; 상기 릴레이 노드로부터 상기 단말에 대한 복수의 라디오 베어러에 관한 상기 릴레이 노드와 관련된 제2 정보를 포함하는 제2 메시지를 수신하고; 단말에 대한 데이터를 릴레이 노드로 전송할 수 있다. 데이터는 제1 정보 및 제2 정보에 기초하여 복수의 라디오 베어러를 통해 단말로 전송될 수 있다.
다양한 실시 예에 따르면, 복수의 라디오 베어러 중 라디오 베어러는 복수의 라디오 베어러를 통합시킬 수 있다. 적어도 하나의 프로세서는 또한 릴레이 노드에 액세스하는 단말에 대한 라디오 베어러 및 라디오 베어러에 의해 통합된 다중 라디오 베어러를 결정하도록 구성되고; 또는 릴레이 노드에 액세스하는 단말에 대한 라디오 베어러를 결정할 수 있다.
다양한 실시 예에 따르면, 제1 메시지는 다음 중 하나 이상을 포함할 수 있다: 릴레이 노드에 액세스하는 터미널의 식별; 릴레이 노드에 접속하는 단말의 종류를 나타내는 표시 정보; 릴레이 노드에 접속하는 단말의 라디오 베어러에 대한 정보; 릴레이 노드에 액세스하는 단말에 의해 전달된 라디오 베어러에 대한 정보; 도너 노드와 릴레이 노드 사이의 라디오 베어러에 대해 설정된 터널에 대한 정보; 통합된 다중 라디오 베어러에 대한 정보; 라디오 베어러 매핑 정보; 도너 노드 측면의 주소에 대한 정보; 릴레이 노드 측의 주소에 대한 정보; 릴레이 노드에 접속하는 단말의 라디오 베어러에 대응하는 표시 정보; 릴레이 노드에 액세스하는 단말에 대해 새로운 주소를 라디오 베어러에 할당하도록 릴레이 노드를 나타내는 표시 정보; 릴레이 노드에 접속하는 단말의 라디오 베어러의 데이터를 전송하는 릴레이 노드가 사용할 수 없는 주소 정보 목록; 및 보안 구성과 관련된 정보.
다양한 실시 예에 따르면, 제2 메시지는 다음 중 하나 이상을 포함할 수 있다: 릴레이 노드에 액세스하는 터미널의 식별; 릴레이 노드에 의해 승인된 라디오 베어러에 대한 정보; 릴레이 노드에 의해 승인되지 않은 라디오 베어러에 대한 정보; 릴레이 노드에 의해 부분적으로 승인된 라디오 베어러에 대한 정보; 라디오 베어러 매핑 정보; 릴레이 노드가 생성한 릴레이 노드에 접속하는 단말의 구성 정보; 릴레이 노드 측의 주소에 대한 정보; 및 보안 구성과 관련된 정보.
다양한 실시 예에 따르면, 제2 메시지는 통합된 다중 라디오 베어러에 대한 정보를 더 포함할 수 있다.
다양한 실시 예에 따르면, 도너 노드는 도너 노드의 중앙 유닛을 포함하고, 릴레이 노드는 도너 노드의 분산 유닛을 포함할 수 있다.
다양한 실시 예에 따르면, 무선 통신 시스템의 릴레이 노드는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서에 동작 가능하게 결합된 트랜시버를 포함하고, 도너 노드로부터, 릴레이 노드에 액세스하는 단말에 대한 복수의 라디오 베어러에 관한 도너 노드와 관련된 제1 정보를 포함하는 제1 메시지를 수신하도록 구성되고; 단말에 대한 복수의 라디오 베어러에 관한 릴레이 노드와 관련된 제2 정보를 포함하는 제2 메시지를 도너 노드로 전송하고; 도너 노드로부터 단말기에 대한 데이터를 수신할 수 있다. 데이터는 제1 정보 및 제2 정보에 기초하여 복수의 라디오 베어러를 통해 단말로 전송될 수 있다.
다양한 실시 예에 따르면, 복수의 라디오 베어러 중 라디오 베어러는 복수의 라디오 베어러를 통합시킬 수 있다. 적어도 하나의 프로세서는 또한 릴레이 노드에 액세스하는 단말에 대한 라디오 베어러 및 라디오 베어러에 의해 통합된 다중 라디오 베어러를 결정하도록 구성되고; 또는 라디오 베어러에 의해 통합된 다중 라디오 베어러를 결정할 수 있다.
다양한 실시 예에 따르면, 제1 메시지는 다음 중 하나 이상을 포함할 수 있다: 릴레이 노드에 액세스하는 터미널의 식별; 릴레이 노드에 접속하는 단말의 종류를 나타내는 표시 정보; 릴레이 노드에 접속하는 단말의 라디오 베어러에 대한 정보; 릴레이 노드에 액세스하는 단말에 의해 전달된 라디오 베어러에 대한 정보; 도너 노드와 릴레이 노드 사이의 라디오 베어러에 대해 설정된 터널에 대한 정보; 통합된 다중 라디오 베어러에 대한 정보; 라디오 베어러 매핑 정보; 도너 노드 측면의 주소에 대한 정보; 릴레이 노드 측의 주소에 대한 정보; 릴레이 노드에 접속하는 단말의 라디오 베어러에 대응하는 표시 정보; 릴레이 노드에 액세스하는 단말에 대해 새로운 주소를 라디오 베어러에 할당하도록 릴레이 노드를 나타내는 표시 정보; 릴레이 노드에 접속하는 단말의 라디오 베어러의 데이터를 전송하는 릴레이 노드가 사용할 수 없는 주소 정보 목록; 및 보안 구성과 관련된 정보.
다양한 실시 예에 따르면, 제2 메시지는 다음 중 하나 이상을 포함할 수 있다: 릴레이 노드에 액세스하는 터미널의 식별; 릴레이 노드에 의해 승인된 라디오 베어러에 대한 정보; 릴레이 노드에 의해 승인되지 않은 라디오 베어러에 대한 정보; 릴레이 노드에 의해 부분적으로 승인된 라디오 베어러에 대한 정보; 라디오 베어러 매핑 정보; 릴레이 노드가 생성한 릴레이 노드에 접속하는 단말의 구성 정보; 릴레이 노드 측의 주소에 대한 정보; 및 보안 구성과 관련된 정보.
다양한 실시 예에 따르면, 제2 메시지는 통합된 다중 라디오 베어러에 대한 정보를 더 포함할 수 있다.
다양한 실시 예에 따르면, 도너 노드는 도너 노드의 중앙 유닛을 포함하고, 릴레이 노드는 도너 노드의 분산 유닛을 포함할 수 있다.
이하에서는 상술한 무선 통신 시스템에서 단말의 구성요소를 도시한다. 이하에서는 설명하는 단말의 구성요소는 무선 통신 시스템에서 지원하는 범용적인 단말의 구성요소로서 전술한 내용들에 따른 단말의 구성요소와 병합되거나 통합될 수 있고, 일부 중첩되거나 상충되는 범위에서 앞서 도면을 참조하여 설명한 내용이 우선적용되는 것으로 해석될 수 있다. 이하에서 사용되는 "-모듈", "-유닛"또는 "-er"라는 용어는 적어도 하나의 기능을 처리하는 유닛을 의미할 수 있다.
단말은 통신 인터페이스, 저장부 및 컨트롤러를 포함한다.
통신 인터페이스는 무선 채널을 통해 신호를 송수신하는 기능을 수행한다. 예를 들어, 통신 인터페이스는 시스템의 물리 계층 표준에 따라 베이스 밴드 신호와 비트 스트림 간의 변환 기능을 수행한다. 예를 들어, 데이터 전송에서 통신 인터페이스는 전송 비트 스트림을 인코딩 및 변조하여 복합 심볼을 생성한다. 또한, 데이터 수신시 통신 인터페이스는 베이스 대역 신호를 복조 및 복호화하여 수신 비트 스트림을 재구성한다. 또한, 통신 인터페이스는 베이스 대역 신호를 RF 대역 신호로 상향 변환하고, 변환된 신호를 안테나를 통해 전송한 후 안테나를 통해 수신된 RF 대역 신호를 기저 대역 신호로 하향 변환한다. 예를 들어, 통신 인터페이스는 송신 필터(transmission filter), 수신 필터(reception filter), 증폭기(amplifier), 믹서(mixer), 발진기(oscillator), 디지털-아날로그 컨버터(digital-to-analog convertor, DAC), 아날로그-디지털 컨버터(analog-to-digital convertor, ADC) 등을 포함할 수 있다.
또한, 통신 인터페이스는 복수의 송수신 경로를 포함할 수 있다. 또한, 통신 인터페이스는 복수의 안테나 요소를 포함하는 적어도 하나의 안테나 어레이를 포함할 수 있다. 하드웨어 측에서 무선 통신 인터페이스는 디지털 회로 및 아날로그 회로(예를 들어, radio frequency integrated circuit, RFIC)를 포함할 수 있다. 디지털 회로는 적어도 하나의 프로세서(예: DSP)로 구현될 수 있다. 통신 인터페이스는 복수의 RF 체인을 포함할 수 있다. 통신 인터페이스는 빔포밍을 수행할 수 있다.
통신 인터페이스는 전술한 바와 같이 신호를 송수신한다. 따라서, 통신 인터페이스는 "송신기(transmitter)", "수신기(receiver)"또는 "트랜시버(transceiver)"로 지칭될 수 있다. 또한, 이하의 설명에서 무선 채널을 통해 수행되는 송수신은 전술한 바와 같이 통신 인터페이스에서 수행되는 처리를 포함하는 의미로 사용될 수 있다.
저장부는 단말기의 동작을 위한 기본 프로그램, 어플리케이션, 설정 정보 등의 데이터를 저장한다. 저장부는 휘발성 메모리, 비 휘발성 메모리 또는 휘발성 메모리와 비 휘발성 메모리의 조합을 포함할 수 있다. 또한, 저장부는 컨트롤러의 요청에 따라 저장된 데이터를 제공한다.
컨트롤러는 단말의 전반적인 동작을 제어한다. 예를 들어, 컨트롤러는 통신 인터페이스를 통해 신호를 송수신한다. 또한 컨트롤러는 저장부에 데이터를 기록하고 기록된 데이터를 읽는다. 컨트롤러는 통신 규격에서 요구하는 프로토콜 스택의 기능을 수행할 수 있다. 다른 구현에 따르면, 프로토콜 스택은 통신 인터페이스에 포함될 수 있다. 이를 위해, 컨트롤러는 적어도 하나의 프로세서 또는 마이크로 프로세서를 포함하거나 프로세서의 일부를 재생할 수 있다. 또한, 통신 인터페이스 또는 컨트롤러의 일부를 통신 프로세서(communication processor, CP)라고 할 수 있다.
본 발명의 일 실시 예에 따르면, 컨트롤러는 본 발명의 실시 예에 따른 동작을 수행하도록 단말을 제어할 수 있다.
이하에서는 무선 통신 시스템에서 통신 인터페이스를 예시한다.
통신 인터페이스는 인코딩 및 변조 회로, 디지털 빔포밍 회로, 복수의 전송 경로 및 아날로그 빔포밍 회로를 포함한다.
인코딩 및 변조 회로는 채널 인코딩을 수행한다. 채널 인코딩을 위해 low-density parity check(LDPC) 코드, 컨볼루션 코드 및 폴라 코드 중 적어도 하나가 사용될 수 있다. 인코딩 및 변조 회로는 성상 매핑(constellation mapping)을 수행함으로써 변조 심볼을 생성한다.
디지털 빔포밍 회로는 디지털 신호(예를 들어, 변조 심볼)에 대한 빔 형성을 수행한다. 이를 위해, 디지털 빔포밍 회로는 빔포밍 가중 값에 의해 변조 심볼을 다중화한다. 빔포밍 가중치는 신호의 크기 및 문구를 변경하는데 사용될 수 있으며, "프리코딩 매트릭스(precoding matrix)"또는 "프리코더(precoder)"라고 할 수 있다. 디지털 빔포밍 회로는 디지털 빔포밍된 변조 심볼을 복수의 전송 경로로 출력한다. 이때, 다중 안테나 기술(multiple input multiple output, MIMO) 전송 방식에 따라 변조 심볼이 다중화 되거나 동일한 변조 심볼이 복수의 전송 경로에 제공될 수 있다.
복수의 전송 경로는 디지털 빔포밍된 디지털 신호를 아날로그 신호로 변환한다. 이를 위해, 복수의 전송 경로 각각은 인버스 고속 푸리에 변환(inverse fast fourier transform, IFFT) 계산 유닛, 순환 전치(cyclic prefix, CP) 삽입 유닛, DAC 및 상향 변환 유닛을 포함할 수 있다. CP 삽입 부는 직교 주파수 분할 다중화(orthogonal frequency division multiplexing, OFDM) 방식을 위한 것으로 다른 물리 계층 방식(예: 필터 뱅크 다중 반송파(a filter bank multi-carrier): FBMC) 적용시 생략될 수 있다. 즉, 복수의 전송 경로는 디지털 빔포밍을 통해 생성된 복수의 스트림에 대해 독립적인 신호 처리 프로세스를 제공한다. 그러나, 구현에 따라 복수의 전송 경로의 일부 요소는 공통적으로 사용될 수 있다.
아날로그 빔포밍 회로는 아날로그 신호에 대한 빔포밍을 수행한다. 이를 위해, 디지털 빔포밍 회로는 빔포밍 가중 값에 의해 아날로그 신호를 다중화한다. 빔포밍된 가중치는 신호의 크기와 문구를 변경하는데 사용된다. 보다 구체적으로, 복수의 전송 경로와 안테나 사이의 연결 구조에 따라, 아날로그 빔포밍 회로는 다양한 방식으로 구성될 수 있다. 예를 들어, 복수의 전송 경로 각각은 하나의 안테나 어레이에 연결될 수 있다. 다른 예에서, 복수의 전송 경로는 하나의 안테나 어레이에 연결될 수 있다. 또 다른 예에서, 복수의 전송 경로는 하나의 안테나 어레이에 적응적으로 연결될 수 있거나 2개 이상의 안테나 어레이에 연결될 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: AI 기반 웹빌더를 제공하기 위한 운영서버
200: 사용자 단말
300: 제3자의 사용자 단말

Claims (1)

  1. AI 기반 웹빌더를 제공하기 위한 운영서버로서,
    사용자 단말에 의해 선택된 UI템플릿을 상기 사용자 단말에 제공하고, 상기 사용자 단말에 의해 선택된 UI템플릿 내에 배치할 컴포넌트들을 배치할 수 있는 사용자 인터페이스를 제공하는 웹빌더 서비스 관리부;
    미리 다수의 UI 템플릿들을 관리자로부터 입력받아 저장하고, 저장된 UI 템플릿들 각각에 대한 메타 데이터를 생성하고 저장하는 UI 템플릿 관리부;
    미리 다수의 컴포넌트들을 관리자로부터 입력받아 저장하고, 저장된 컴포넌트들 각각에 대한 메타 데이터를 생성하고 저장하는 컴포넌트 관리부; 및
    사용자 인터페이스와 병렬적으로 사용자 단말(200)에게 웹디자인 상의 편의성을 증대하기 위한 인공지능 기반의 변환 지원서비스를 제공하는 인공지능 지원부;를 포함하되,
    상기 인공지능 지원부는,
    상기 사용자 단말의 상기 사용자 인터페이스를 통한 상기 UI 템플릿 또는 상기 컴포넌트들의 변경 상태를 모니터링하고, 모니터링된 변경 상태를 기반으로 상기 사용자 단말의 변경 이후를 예상하여 구현한 UI 템플릿이나 컴포넌트를 미리 생성하고, 생성된 UI 템플릿이나 컴포넌트의 미리보기 영역을 생성하여 상기 사용자 인터페이스와 중첩하게 상기 사용자 단말에 표시하고,
    상기 인공지능 지원부는,
    상기 사용자 단말에 의해 선택된 상기 UI 템플릿에 대한 변경 조작을 모니터링하고, 모니터링된 현재의 상기 UI 템플릿의 변경 정도를 기반으로 제1 인공신경망을 이용하여 미리보기로 제공할 UI 템플릿을 생성하는 템플릿 변환지원부; 및
    상기 사용자 단말의 상기 컴포넌트들에 대한 변경 조작을 모니터링하고, 모니터링된 현재의 컴포넌트들의 변경 정도를 기반으로 제2 인공신경망을 이용하여 미리보기로 제공할 컴포넌트를 생성하는 컴포넌트 변환지원부;를 포함하고,
    상기 인공지능 지원부는,
    상기 제1 인공신경망과 상기 제2 인공신경망을 미리 지도학습하기 위한 학습데이터를 생성하는 변환모사 학습데이터 생성부;를 더 포함하는,
    AI 기반 웹빌더를 제공하기 위한 운영서버.
KR1020230183190A 2023-07-04 2023-12-15 웹디자인 수행 영상으로부터 학습 데이터를 구성하고 이를 기반으로 지도학습이 수행된 ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법 KR20240001305A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR20230086380 2023-07-04
KR1020230086380 2023-07-04
KR1020230086984 2023-07-05
KR20230086984 2023-07-05
KR1020230087218A KR102616267B1 (ko) 2023-07-04 2023-07-05 Ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020230087218A Division KR102616267B1 (ko) 2023-07-04 2023-07-05 Ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작방법

Publications (1)

Publication Number Publication Date
KR20240001305A true KR20240001305A (ko) 2024-01-03

Family

ID=89320626

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020230087218A KR102616267B1 (ko) 2023-07-04 2023-07-05 Ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작방법
KR1020230183191A KR20240001306A (ko) 2023-07-04 2023-12-15 컴포넌트의 작업 변화량과 유사 컴포넌트를 활용하여 ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법
KR1020230183190A KR20240001305A (ko) 2023-07-04 2023-12-15 웹디자인 수행 영상으로부터 학습 데이터를 구성하고 이를 기반으로 지도학습이 수행된 ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020230087218A KR102616267B1 (ko) 2023-07-04 2023-07-05 Ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작방법
KR1020230183191A KR20240001306A (ko) 2023-07-04 2023-12-15 컴포넌트의 작업 변화량과 유사 컴포넌트를 활용하여 ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작 방법

Country Status (1)

Country Link
KR (3) KR102616267B1 (ko)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102275763B1 (ko) * 2021-01-14 2021-07-09 주식회사 누리콘 딥러닝 모델로부터 딥러닝 어플리케이션을 자동으로 생성하는 방법 및 시스템
US20220245206A1 (en) * 2021-01-29 2022-08-04 Salesforce.Com, Inc. Process flow builder for user-configurable web component sequences
KR102708076B1 (ko) * 2021-11-29 2024-09-20 김정환 Ai 기반의 웹사이트 제작 지원 시스템 및 그 방법
KR102446649B1 (ko) * 2022-07-12 2022-09-22 신은철 인공지능 모델 기반 추천 템플릿을 이용한 어플리케이션 제작 방법 및 장치

Also Published As

Publication number Publication date
KR102616267B1 (ko) 2023-12-21
KR20240001306A (ko) 2024-01-03

Similar Documents

Publication Publication Date Title
KR102540203B1 (ko) 쇼호스트 추천기능을 제공하는 라이브 스트리밍 중계 서비스 제공 장치, 시스템, 방법 및 프로그램
KR102566441B1 (ko) 비즈니스 모델에 대응하는 애플리케이션에 대한 결함 의심 데이터를 제공하는 기술성 테스트를 포함하는 통합 테스트 플랫폼 시스템 및 그 동작 방법
KR102345551B1 (ko) 공간 대여 플랫폼을 제공하기 위한 시스템 및 방법
KR102420629B1 (ko) 광고주 서비스를 제공하기 위한 방법 및 시스템
KR102601196B1 (ko) 사용자 맞춤형 가상공간 생성 서비스 제공 장치, 시스템, 방법 및 프로그램
KR102405464B1 (ko) 비대면 온라인 교육 서비스를 제공하는 방법 및 장치
KR102486487B1 (ko) 사용자를 위한 상품 제공 방법
KR20230085119A (ko) 반려동물 미용공간 관리 서비스 제공 장치, 시스템, 방법 및 프로그램
KR102661900B1 (ko) 회귀 모델을 이용한 예측판매량과 합성이미지에 기초하여 ip 라이센싱을 제공하기 위한 방법 및 시스템
Lambrechts et al. The role of millimeter-wave and 5G in the fourth industrial revolution
KR102616267B1 (ko) Ai 기반 웹빌더를 제공하기 위한 운영서버 및 그 동작방법
KR102385924B1 (ko) 맞춤형 상품 제공 방법
KR102386909B1 (ko) 은퇴한 고령자들을 위한 일자리 매칭 방법 및 시스템
KR102560678B1 (ko) 사용자의 선호도에 기초한 맞춤형 상품 제공 방법
KR102590842B1 (ko) 사용자를 위한 음식점 브랜딩 생성 방법
KR102505267B1 (ko) 빅데이터를 활용한 질병 확산 예측 서비스 제공 장치, 시스템, 방법 및 프로그램
KR102562358B1 (ko) 사용자를 위한 광고 대행 방법
KR102528992B1 (ko) 사용자를 위한 해외 배송 방법
KR102577740B1 (ko) 사용자를 위한 애완 동물의 건강 관리 케어 방법
KR102527962B1 (ko) 사용자의 쇼핑을 위한 제품 추천 및 배송 알고리즘 생성 방법
KR102633294B1 (ko) 사용자 셀프 상표 출원을 위한 상품명 추천 및 상표출원서 생성 서비스를 제공하는 서버, 시스템, 방법 및 프로그램
KR102721239B1 (ko) 트렌드를 반영한 숙박 장소 추천 방법 및 장치
KR20230021037A (ko) 빅데이터를 활용한 질병 확산 예측 서비스 제공 장치, 시스템, 방법 및 프로그램

Legal Events

Date Code Title Description
A107 Divisional application of patent