KR20240031863A - 학습 시스템 및 학습 애플리케이션 동작방법 - Google Patents

학습 시스템 및 학습 애플리케이션 동작방법 Download PDF

Info

Publication number
KR20240031863A
KR20240031863A KR1020230024562A KR20230024562A KR20240031863A KR 20240031863 A KR20240031863 A KR 20240031863A KR 1020230024562 A KR1020230024562 A KR 1020230024562A KR 20230024562 A KR20230024562 A KR 20230024562A KR 20240031863 A KR20240031863 A KR 20240031863A
Authority
KR
South Korea
Prior art keywords
area
user
file
solution
areas
Prior art date
Application number
KR1020230024562A
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 주식회사 애드아이랩
Priority to PCT/KR2023/002650 priority Critical patent/WO2024048881A1/ko
Publication of KR20240031863A publication Critical patent/KR20240031863A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/414Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/02Electrically-operated educational appliances with visual presentation of the material to be studied, e.g. using film strip
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B7/00Electrically-operated teaching apparatus or devices working with questions and answers
    • G09B7/06Electrically-operated teaching apparatus or devices working with questions and answers of the multiple-choice answer-type, i.e. where a given question is provided with a series of answers and a choice has to be made from the answers
    • G09B7/08Electrically-operated teaching apparatus or devices working with questions and answers of the multiple-choice answer-type, i.e. where a given question is provided with a series of answers and a choice has to be made from the answers characterised by modifying the teaching programme in response to a wrong answer, e.g. repeating the question, supplying further information

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

개시된 일 실시예에 따른 학습 시스템은, 서버로부터 학습된 인공지능 및 애플리케이션을 실행하는 적어도 하나 이상의 프로세서; 및 사용자의 입력을 수신 및 표시하고, 상기 애플리케이션의 동작을 출력하는 적어도 하나 이상의 디스플레이;를 포함하고, 상기 프로세서는, 상기 사용자가 업로드하는 문제 파일을 수신하고, 상기 학습된 인공지능을 기초로 상기 문제 파일 중 문제 영역 및 선지 영역을 구분하고, 상기 구분된 문제 영역 및 상기 구분된 선지 영역에서 텍스트 추출 또는 그림 추출을 수행하고, 상기 추출된 텍스트 또는 그림에 기초하여 상기 서버로부터 상기 문제 파일의 상기 문제 풀이 정보를 요청하고, 상기 사용자의 입력에 기초하여 상기 수신된 문제 풀이 정보를 상기 디스플레이를 통해 출력하는 것;을 포함한다.

Description

학습 시스템 및 학습 애플리케이션 동작방법{Study System and Operating Method of Study Application}
본 발명은 학습 시스템 및 학습 애플리케이션 동작방법에 관한 것으로, 보다 상세하게는 사용자가 입력하는 다양한 문제파일을 인식하고, 문제 영역과 선지 영역을 구분하여 인식한 후, 이를 바탕으로 다양한 서비스를 제공하는 학습 시스템 및 학습 애플리케이션 동작방법에 관한 것이다.
최근, 교육 과정에서의 시험, 대학 입시, 공무원 시험 및 자격증 등 의 다양한 시험에 대한 학구열이 상승하면서, 공부 방법에 대한 관심 또한 증가하고 있다.
종전, 종이 형태로 제공되었던 학습지 또는 문제집은 정보통신의 발전에 따라 PDF 또는 다양한 데이터 형태로 학습자에게 제공되고 있다. 그러나 일반적인 에듀테크는 업체 스스로 생성 또는 데이터베이스화된 문제집 및 학습지를 애플리케이션으로 제공하여, 학습자가 다른 에듀테크의 문제집을 풀거나 정리하기 위해서 다시 다른 애플리케이션을 설치해야 하는 번거러움이 있었다.
추가로 학습자는 여러 문제집에서 풀었던 오답이나 정리사항을 별도로 정리해야 하는 불편함이 있었으며, 시험 직전 방대한 양의 공부량을 줄이기 위한 정리작업, 일명 단권화를 스스로 수행해야 하는 불편함이 있었다.
개시된 일 실시예에 따르면, 사용자가 입력하는 다양한 형태의 문제 파일에서 문제 영역과 선지 영역을 스스로 구별하고, 구별된 영역에서 추출된 데이터를 인식하여, 학습자에게 필요한 다양한 서비스를 제공하는 동작을 수행하는 학습 시스템 및 학습 애플리케이션 동작방법에 관한 것이다.
개시된 일 실시예에 따른 학습 시스템은, 서버로부터 학습된 인공지능 및 애플리케이션을 실행하는 적어도 하나 이상의 프로세서; 및 사용자의 입력을 수신 및 표시하고, 상기 애플리케이션의 동작을 출력하는 적어도 하나 이상의 디스플레이;를 포함하고, 상기 프로세서는, 상기 사용자가 업로드하는 문제 파일을 수신하고, 상기 학습된 인공지능을 기초로 상기 문제 파일 중 문제 영역 및 선지 영역을 구분하고, 상기 구분된 문제 영역 및 상기 구분된 선지 영역에서 텍스트 추출 또는 그림 추출을 수행하고, 상기 추출된 텍스트 또는 그림에 기초하여 상기 서버로부터 상기 문제 파일의 상기 문제 풀이 정보를 요청하고, 상기 사용자의 입력에 기초하여 상기 수신된 문제 풀이 정보를 상기 디스플레이를 통해 출력하는 것;을 포함한다.
상기 프로세서가 상기 문제 영역 및 상기 선지 영역을 구분하는 것은, 상기 수신된 문제 파일을 이미지 파일로 변환하고, 변환된 이미지 파일에서 상기 인공지능을 통해 선지 영역을 먼저 인식하고, 상기 선지 영역을 제외한 이미지를 상기 문제 영역으로 인식하는 것;을 포함할 수 있다.
상기 프로세서는, 상기 추출된 텍스트 또는 상기 추출된 그림에 기초하여 문제 데이터를 생성하고, 상기 문제 데이터는, 상기 문제 파일에서 상기 문제 영역 및 상기 선지 영역이 포함된 페이지 정보, 상기 문제 영역에서 추출된 문제 번호, 상기 문제 영역에 포함된 문제 내용, 상기 선지 영역에서 추출된 선지 개수, 상기 선지 영역에 포함된 선지 내용 중 적어도 하나를 포함할 수 있다.
상기 문제 풀이 정보는, Knowledge gragh를 이용한 시맨틱 서치(Semantic search)에 기초하여 생성된 다른 사용자의 오답률, 평균 풀이시간 및 문제 난이도 중 적어도 하나 이상의 정보를 포함하고, 상기 사용자가 입력한 정답에 기초하여 실시간으로 업데이트될 수 있다.
상기 프로세스는, 상기 사용자의 풀이가 입력된 문제 영역 및 선지 영역을 구분하고, 상기 사용자의 풀이가 입력된 선지 영역과 상기 문제 풀이 정보에 포함된 정답을 비교하고, 상기 비교 결과에 기초하여 정답 여부를 결정할 수 있다.
상기 프로세서는, 상기 문제 풀이 정보에 기초하여 오답을 포함하는 문제 영역 및 선지 영역만을 인식하고, 상기 오답을 포함하는 문제 영역 및 선지 영역 이외의 영역을 삭제하고, 상기 오답이 포함된 문제 영역 및 선지 영역만을 재배치하여 상기 디스플레이에 출력할 수 있다.
상기 프로세서는, 상기 오답이 포함된 문제 영역 및 선지 영역만을 재배치할 때, 상기 사용자의 풀이가 포함된 입력값을 삭제하고, 상기 오답이 포함된 문제 영역 및 선지 영역만을 상기 디스플레이를 통해 출력할 수 있다.
상기 프로세서는, 상기 사용자 풀이가 포함된 문제 영역 및 선지 영역 이외의 영역의 음역을 약하게 표시하고, 상기 사용자의 풀이가 포함된 입력값을 삭제하도록 상기 디스플레이를 제어할 수 있다.
개시된 다른 실시예에 따른 외부에 마련된 서버와 통신하는 사용자 단말의 애플리케이션 동작 방법은, 문제 영역 또는 선지 영역을 라벨링한 학습 데이터에 기초하여 문제 영역과 선지 영역을 구분하는 방법을 학습한 인공지능과 네트워크를 통해 연결되고; 상기 사용자가 업로드하는 문제 파일을 표시하고; 상기 학습된 인공지능에 기초하여 상기 문제 파일 중 문제 영역 및 선지 영역을 구분하고; 상기 구분된 문제 영역 및 상기 구분된 선지 영역에서 텍스트 추출 및 그림 추출을 수행하고; 상기 추출된 텍스트 및 그림에 기초하여 상기 서버로부터 문제 파일의 상기 문제 풀이 정보를 요청하고; 상기 수신된 문제 풀이 정보를 상기 디스플레이를 통해 출력하는 것;을 포함한다.
상기 문제 파일 중 문제 영역 및 선지 영역을 구분하는 것은, 상기 수신된 문제 파일을 이미지 파일로 변환하고; 변환된 이미지 파일에서 상기 인공지능을 통해 선지 영역을 먼저 인식하고; 상기 선지 영역을 제외한 이미지를 상기 문제 영역으로 인식하는 것;을 포함할 수 있다.
상기 문제 풀이 정보는, 상기 서버에 포함된 인공지능이 Knowledge gragh를 이용한 시맨틱 서치(Semantic search)에 기초하여 생성된 다른 사용자의 오답률, 평균 풀이시간 및 문제 난이도 중 적어도 하나 이상의 정보를 포함하도록 생성하고, 상기 서버는 상기 사용자가 입력한 풀이에 기초하여 상기 문제 풀이 정보를 실시간으로 업데이트하는 것;을 포함할 수 있다.
상기 사용자의 풀이가 입력된 문제 영역 및 선지 영역을 구분하고; 상기 사용자의 풀이가 입력된 선지 영역의 선지 번호와 상기 문제 풀이 정보에 포함된 정답을 비교하고; 상기 비교 결과에 기초하여 정답 여부를 결정하는 것;을 더 포함할 수 있다.
상기 문제 풀이 정보에 기초하여 오답을 포함하는 문제 영역 및 선지 영역만을 인식하고; 상기 오답을 포함하는 문제 영역 및 선지 영역 이외의 영역을 삭제하고; 상기 오답이 포함된 문제 영역 및 선지 영역만을 재배치하는 것;을 더 포함할 수 있다.
상기 사용자의 풀이가 입력된 문제 영역 및 선지 영역을 구분하고; 상기 문제 파일의 편집을 유도하는 유저 인터페이스를 표시하고; 상기 유저 인터페이스를 통해 입력되는 사용자 입력에 기초하여 상기 사용자의 풀이가 포함된 선지 영역과 그에 대응되는 문제 영역만을 상기 디스플레이를 통해 출력하는 것;을 포함할 수 있다.
상기 사용자의 풀이가 포함된 선지 영역과 그에 대응되는 문제 영역만에서 사용자의 풀이를 삭제한 후, 상기 디스플레이를 통해 출력하고; 상기 사용자의 추가적인 풀이가 입력되면, 상기 사용자의 풀이가 포함되지 않는 문제 영역과 선지 영역만을 재배치하여 상기 디스플레이를 통해 출력하는 것;을 더 포함할 수 있다.
개시된 일 실시예에 따른 학습 시스템 및 학습 애플리케이션 동작방법은 다양한 형태의 문제파일에서 문제 영역과 선지 영역을 스스로 구별하고, 구별된 영역에서 추출된 데이터를 인식하여, 학습자에게 필요한 다양한 서비스를 제공할 수 있다.
또한, 개시된 다른 실시예에 따른 학습 시스템 및 학습 애플리케이션 동작방법은 학습자가 수행하는 문제 풀이에 기초하여 자동채점, 오답노트 생성, 다른 학습자의 오답률 등 문제풀이의 편의를 제공하며, 오답을 포함한 문제만을 별도로 편집하여 학습자가 다시 문제를 풀 수 있는 서비스를 제공할 수 있다.
도 1은 개시된 일 실시예에 따른 학습 시스템의 구성을 설명하기 위한 도면이다.
도 2는 사용자 단말의 구성을 설명하기 위한 제어 블록도이다.
도 3은 개신된 일 실시예에 따른 학습 어플리케이션의 동작 방법을 설명하기 위한 순서도이다.
도 4 내지 도 8은 도 3의 동작 방법을 구체적으로 설명하기 위한 일 예를 도시한 것이다.
도 9는 또 다른 실시예에 대한 애플리케이션의 동작을 더욱 구체적으로 설명하기 위한 순서도이다.
도 10은 문제 풀이 정보를 이용하여 사용자에게 제공할 수 있는 다양한 서비스를 설명하기 위한 순서도이다.
도 11 및 도 12는 도 10에서 설명하는 순서도를 구체적으로 설명하기 위한 도면이다.
도 13은 단권화 서비스를 수행하는 다른 실시예에 관한 도면이다.
명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 명세서가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 발명이 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하 첨부된 도면들을 참고하여 본 발명의 작용 원리 및 실시예들에 대해 설명한다.
도 1은 개시된 일 실시예에 따른 학습 시스템의 구성을 설명하기 위한 도면이고, 도 2는 사용자 단말의 구성을 설명하기 위한 제어 블록도이다. 중복되는 설명을 피하기 위해서 이하 함께 설명한다.
도 1을 먼저 참조하면, 개시된 학습 시스템은, 네트워크를 통해 학습자(이하 사용자)의 사용자 단말(10)과 서버(20)를 통해 데이터를 송수신한다.
구체적으로 사용자 단말(10)은 사용자가 업로드하는 문제파일을 데이터 형태로 수신하고, 수신된 문제파일 및 개시된 실시예에 따른 서비스 및 동작에 필요한 정보를 네트워크를 통해 서버(20)와 통신한다.
사용자 단말(10)은 서버(20)로부터 학습된 인공지능이 포함된 애플리케이션을 내려(다운로드)받을 수 있으며, 애플리케이션을 통해 사용자로부터 업로드된 문제파일을 인식할 수 있다. 사용자 단말(10)은 문제파일을 문제 영역과 선지 영역으로 인식한 후, 텍스트 및 그림을 추출하여 서버(20)로 제공한다. 애플리케이션은 서버(20)로부터 문제 풀이 정보를 수신한 후, 사용자 단말(10)의 디스플레이를 통해 표시함으로써, 사용자에게 다양한 서비스를 제공할 수 있다.
도 1에서는 사용자 단말(10)을 테블릿 PC로 표현하였으나, 반드시 이에 제한되는 것은 아니고, 네트워크를 통해 서버(20)에 접속할 수 있는 컴퓨터나 휴대용 단말기로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), 태블릿 PC, 슬레이트 PC 등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), WiBro(Wireless Broadband Internet) 단말, 스마트 폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD) 등과 같은 웨어러블 장치를 포함할 수 있다.
서버(20)는 여러 개의 CPU가 통합되어 애플리케이션을 공급하는 업체가 지정된 특정 위치에 마련된 구성으로, HTTP 서버에 한정되지 않고, 클라이언트, 즉 사용자 단말(10)이 요청을 통해 동작하는 하드웨어적 구성을 의미한다. 서버 소프트웨어는 이하에서 구체적으로 후술하는 인공지능을 통해 문제파일의 문제 영역과 선지 영역을 구분하고, 텍스트 및 그림을 추출할 수 있을 뿐만 아니라, 문제 풀이 정보를 생성한 후, 사용자 단말(10)에 제공하는 일련의 프로그램으로 구성될 수 있으며, 서버(20)에서 계속적으로 업데이트될 수 있다. 반드시 서버(20)를 구성하는 CPU가 동일한 공간에 마련될 필요는 없으며, 네트워크 상에서 분리되어 서버 소프트웨어를 동작할 수 있도록 마련될 수도 있다.
한편, 본 명세서에서 사용자가 입력하는 문제파일을 문제집으로 표현하였으나, 개시된 학습 시스템이 수신하는 데이터 학습자를 위한 문제 형태로 구성된 파일에 한정되는 것은 아니다. 문제파일은 사용자가 학습에 필요한 정보를 포함한 학습지, 학습 가이드가 포함된 설명서 및 교과서 등 다양한 형태의 자료를 포함하며, 이러한 다양한 형태의 자료를 문제파일로 통일하여 설명하는 것일 뿐이다.
문제 풀이 정보는 서버(20)에 마련된 인공지능이 Knowledge gragh를 이용한 시맨틱 서치(Semantic search)에 기초하여 생성되며, 구체적으로 다른 사용자의 오답률, 평균 풀이시간 및 문제 난이도 중 적어도 하나 이상의 정보를 포함할 수 있다. 이에 대한 구체적인 설명은 이하 도 8등을 통해 후술한다.
도 2를 참조하면, 사용자 단말(10)은 서버(20)를 통해 학습된 인공지능 및 애플리케이션을 수행하는 적어도 하나 이상의 프로세서(100), 학습된 인공지능 코드 및 문제풀이 정보 뿐만 아니라, 서버(20)로부터 수신되는 문제 풀이 정보 등 다양한 데이터를 저장하는 메모리(110) 및 사용자의 입력을 수신 및 표시하고, 애플리케이션의 동작을 출력하는 적어도 하나 이상의 디스플레이(120)를 포함한다.
구체적으로, 메모리(110)는 캐쉬, ROM(Read Only Memory), PROM(Programmable ROM), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM) 및 플래쉬 메모리(Flash memory)와 같은 비휘발성 메모리 소자 또는 RAM(Random Access Memory)과 같은 휘발성 메모리 소자 또는 하드디스크 드라이브(HDD, Hard Disk Drive), CD-ROM과 같은 저장 매체 중 적어도 하나로 구현될 수 있으나 이에 한정되지는 않는다. 메모리(110)는 프로세서(100)와 별개의 칩으로 구현될 수 있으나, 반드시 이에 한정되는 것은 아니고, 프로세서(100)와 단일 칩으로 구현될 수도 있다.
디스플레이는(120)는 디지털 광원 처리(Digital Light Processing: DLP) 패널, 플라즈마 디스플레이 패널(Plasma Display Penal), 액정 디스플레이(Liquid Crystal Display: LCD) 패널, 전기 발광(Electro Luminescence: EL) 패널, 전기영동 디스플레이(Electrophoretic Display: EPD) 패널, 전기변색 디스플레이(Electrochromic Display: ECD) 패널, 발광 다이오드(Light Emitting Diode: LED) 패널 또는 유기 발광 다이오드(Organic Light Emitting Diode: OLED) 패널 등으로 마련될 수 있으나, 이에 한정되지는 않는다.
디스플레이(120)는 사용자의 입력을 수신하기 위해 터치 패드(touch pad) 등과 같은 GUI(Graphical User interface), 즉 소프트웨어인 장치를 포함할 수도 있다. 터치 패드는 터치 스크린 패널(Touch Screen Panel: TSP)로 구현되어 디스플레이(120)와 상호 레이어 구조를 이룰 수 있다.
프로세서(100)는 예컨대, 중앙 처리 장치(Central Processing Unit; CPU)일 수 있으며, 전술한 프로세서(100)의 구성요소는 소프트웨어 및/또는 Field Programmable Gate Array(FPGA) 및 주문형 반도체(ASIC, Application Specific Integrated Circuit)와 같은 하드웨어 구성요소를 의미한다.
개시된 일 실시예에 따른 애플리케이션의 동작을 실행하기 위해서, 프로세서(100)는 사용자가 업로드하는 문제파일을 수신하고, 임시적으로 저장하는 파일 수신부(101), 학습된 인공지능을 통해 문제파일에서 문제 영역과 선지 영역을 구분한 후, 텍스트 및/또는 그림을 추출하는 추출부(102), 추출한 텍스트 및/또는 그림에 기초하여 문제 데이터를 생성하고, 생성된 문제 데이터를 서버(20)로 전송하여 사용자에게 제공할 문제 풀이 정보를 수신하는 정보 생성부(103) 및 사용자의 입력에 기초하여 사용자가 원하지 않는 문제 영역 및 선지 영역을 제거하고 남아 있는 문제 영역과 선지 영역을 재배치하는 소위 단권화 서비스를 제공하는 파일 생성부(104)로 구분될 수 있다.
구체적으로, 파일 수신부(101)는 사용자가 입력하는 문제파일을 PDF등의 데이터로 수신할 수도 있으나, 사용자 단말(10)에 마련된 카메라에 의해서 촬영되어 이미지 형태로 문제파일을 수신할 수 있다.
프로세서(100)는 다양한 형태로 업로드된 문제파일을 메모리(110)에 저장한다. 프로세서(100)에서 추출부(102)는 문제파일을 객체 인식을 통해 문제 영역과 선지 영역으로 구분한다.
구체적으로 추출부(102)는 PDF형태로 입력된 문제파일을 이미지 형태로 변환한다. 만약 사용자의 촬영에 의해서 이미 이미지 형태로 수신된 파일은 이미지 형태로 변환하는 과정을 생략할 수 있다.
변환된 이미지 파일에서 추출부(102)는 서버(20)를 통해 미리 학습된 인공지능을 통해 문제 영역과 선지 영역을 인식한다. 개시된 실시예에서 인공지능은 YoLO (You only Look Once)신경망일 수 있다. 구체적으로 YoLO는 딥러닝을 통해 이미지 또는 영상의 객체를 식별해내는 객체인식에 특화된 신경망으로, 바운딩 박스를 통해 객체를 인식한다. YoLO는 CNN(Convolutional Neural Network)의 일종으로, Conv Layer과 Max Pooling Layer를 계속적으로 거치는 과정을 반복하여 학습을 진행할 수 있다. 그러나 개시된 일 실시예에 따라 문제 영역과 선지 영역을 인식하는 신경망이 반드시 YoLO에 제한될 필요는 없으며, CNN 및 Fast YoLO 등 객체 인식에서 사용될 수 있는 다양한 인공 신경망을 포함할 수 있다.
한편, 개시된 일 실시예에 따른 인공지능은 서버(20)에서 수 많은 학습 데이터를 통해 문제 영역과 선지 영역을 구분하는 방법을 학습할 수 있다. 구체적으로 인공지능은 문제파일에서 선지 영역과 문제 영역을 바운딩하고 바운딩된 영역이 문제 영역인지 선지 영역인지 여부를 알 수 있는 라벨링된 학습 데이터를 통해 학습된다.
학습된 인공지능은 사용자 단말(10)에 전달되거나 서버(20)에 저장되며, 추출부(102)는 사용자로부터 입력된 문제파일에 대한 객체 인식을 위해서 학습된 인공지능을 이용한다. 개시된 실시예에서 추출부(102)는 문제파일의 각 페이지마다 선지 영역을 먼저 구분하여 바운딩 박스를 생성한 후, 선지 영역을 제외한 나머지 영역 및 선지 영역 전체를 문제 영역으로 인식한다. 추출부(102)가 문제 영역과 선지 영역을 인식하는 구체적인 실시예는 도 6등을 통해 후술한다.
문제파일이 각 페이지마다 문제 영역과 선지 영역으로 구분되면, 추출부(102)는 각 영역에 포함된 텍스트 또는 그림을 추출한다. 예를 들어, 문제 영역에서 추출부(102)는 문제 번호, 문제의 내용, 수식 또는 문제를 푸는데 필요한 그림, 그래프 또는 보기를 추출할 수 있다. 선지 영역은 후보를 나타내는 숫자 및 정답과 오답이 포함된 텍스트(숫자 포함)가 추출될 수 있다.
정보 생성부(103)는 추출부(102)가 추출한 텍스트 등에 기초하여 문제 데이터를 생성한다.
구체적으로 문제 데이터는, 인식된 문제 영역 및 선지 영역에서 추출될 수 있는 다양한 정보를 의미하며, 일 예로 페이지 정보, 문제 영역에서 추출된 문제 번호, 문제 영역에 포함된 문제 내용, 선지 영역에서 추출된 선지 개수, 선지 영역에 포함된 선지 내용 중 적어도 하나를 포함할 수 있다. 문제 데이터에 포함될 수 있는 데이터에 관한 구체적인 설명은 도 7등을 통해 후술한다.
문제 데이터가 생성되면, 정보 생성부(103)는 서버(20)로 문제 데이터를 전송한다. 서버(20)는 수신된 문제 데이터에 기초하여 문제 풀이 정보를 생성한다.
여기서 문제 풀이 정보는, 문제파일이 어떤 시험에 해당하는 문제파일인지 여부에 대한 정보 뿐만 아니라, 문제파일에서 인식된 문제의 정답, 문제 영역으로 인식된 문제에 대해서 다른 사용자의 평균 풀이 시간 및 오답률과 문제 난이도 등을 포함한다.
일 실시예에 따른 서버(20)는 문제 풀이 정보를 생성하기 위해서 Knowledge Gragh를 이용한 시맨틱 서치(Semantic Search)를 이용할 수 있다. 시맨틱 서치란, 학습된 인공지능을 통해 검색 쿼리가 문제 데이터에서 키워드를 서치하고, 문제 데이터의 의도를 파악해서 미리 저장되거나 네트워크 상에 위치하는 문제파일의 문제 풀이 정보를 탐색하는 것을 의미한다. 일 예로 개시된 서버(20)는 문제 데이터에서 추출된 텍스트에 포함된 주어와 술어를 이용하여 목적어를 찾은 후, 온톨로지의 목적어를 트리플의 주어로 변환하여, 연계된 데이터를 연속적으로 서치한다. 이를 통해서 서버(20)는 문제 데이터에 기초한 문제파일과 명확하게 일치하는 데이터와 그와 매칭된 정답 정보를 서치한 후, 정답 정보에 기초하여 문제 풀이 정보를 생성한다.
한편, 개시된 실시예가 문제 풀이 정보를 생성하기 위해서 반드시 Knowledge Gragh를 이용한 시맨틱 서치(Semantic Search)를 이용할 필요는 없다. 서버(20)는 문제 풀이 정보를 생성하기 위해서 다양한 인공지능을 사용하거나, 이미 문제파일이 생성될 때부터 데이터화된 문제 파일 정보를 사용할 수도 있다. 즉, 개시된 서버(20)는 문제 풀이 정보를 통해서 사용자에게 필요한 서비스를 제공하기 위한 데이터를 가공하면 충분하고, 반드시 시맨틱 서치만을 이용할 필요는 없다.
문제 풀이 정보는 문제파일이 어떤 시험과 연관된 파일인지 여부를 포함하는 정보일 수 있다.
또한, 문제 풀이 정보는 문제파일의 페이지 정보, 문제 번호 및 선지를 통해 인식된 문제 영역의 정답에 대한 정보도 포함할 수 있다. 만약 문제 데이터에 사용자의 풀이 정보가 함께 포함되는 경우, 문제 풀이 정보는 사용자의 입력값이 정답인지 오답인지 여부도 포함할 수 있다.
문제 풀이 정보는 미리 저장되어 업데이트되는 다른 사용자의 오답 여부에 기초하여 문제 영역의 오답률 또는 난이도를 포함할 수 있으며, 다른 사용자들의 평균 풀이 시간에 대한 정보를 함께 포함할 수 있다.
서버(20)는 다양한 데이터가 포함된 문제 풀이 정보를 사용자 단말(10)로 전송하고, 정보 생성부(103)는 문제 풀이 정보를 시각화하여 디스플레이(120)를 통해 사용자에게 제공할 수 있다. 문제 풀이 정보를 제공하는 실시예에는 도 8등을 통해 후술한다.
파일 생성부(104)는 사용자의 입력에 의해서 문제파일을 다양하게 편집하여 새로운 파일을 생성할 수 있다.
구체적으로 사용자는 자신이 틀린 문제영역과 선지영역만을 추출하여 자신만의 오답 정리 노트를 생성하는 것을 원할 수 있다. 이러한 사용자의 니즈를 충족시키기 위해서 파일 생성부(104)는 미리 추출된 문제 영역과 선지 영역을 활용하여 개별 사용자들의 니즈에 맞는 새로운 문제파일을 생성할 수 있다.
일 예로, 파일 생성부(104)는 문제 풀이 정보에 기초하여 오답을 입력한 문제 영역과 선지 영역만을 추출하고, 정답을 입력한 문제 영역 및 선지 영역을 삭제한다. 파일 생성부(104)는 남겨진 문제 영역과 선지 영역을 재배치한 후, 디스플레이(120)에 출력할 수 있다.
다른 예로, 파일 생성부(104)는 문제 영역과 선지 영역에서 사용자가 표시한 영역만을 삭제하여 재배치할 수 있으며, 또 다른 예로, 문제파일에서 필기를 입력한 문제 영역 및 선지 영역 이외의 영역을 약하게 처리하여 새로운 문제파일을 생성할 수도 있다.
파일 생성부(104)가 문제 풀이 정보를 이용하여 생성하는 다양한 서비스는 도 11등을 통해 후술한다.
한편, 도 2에서 설명한 프로세서(100)의 구성, 즉 파일 수신부(101), 추출부(102), 정보 생성부(103) 및 파일 생성부(104)는 애플리케이션의 동작을 구체적으로 설명하기 위한 소프트웨어적인 설명이며, 반드시 하드웨어적으로 별도의 칩을 통해서 구분되는 것은 아니다.
도 3은 개신된 일 실시예에 따른 학습 어플리케이션의 동작 방법을 설명하기 위한 순서도이다. 도 4 내지 도 8은 도 3의 동작 방법을 구체적으로 설명하기 위한 일 예를 도시한 것이다. 중복되는 설명을 피하기 위해서 이하 함께 설명한다.
도 3을 먼저 참조하면, 애플리케이션은 사용자가 업로드할 문제파일을 수신한다(200).
애플리케이션은 사용자가 업로드한 문제파일을 확인할 수 있도록, 도 4의 도면과 같이 디스플레이(20)를 통해 유저 인터페이스를 출력할 수 있다. 도 4를 참조하면, 애플리케이션은 사용자가 어떤 출제연도에 포함된 문제파일인지 또는 어떤 시험과 관련된 문제파일인지 여부를 선택할 수 있는 아이콘(11)을 제공할 수 있으며, 도 4와 같이 이미 업로드된 파일에 파일명(12)을 입력할 수 있는 기능을 제공할 수 있다.
도2에서 전술한 바와 같이, 개시된 학습 시스템은 문제 데이터를 생성한다. 개시된 학습 시스템은 문제 데이터를 생성하면서, 사용자가 스스로 분류한 파일명 또는 아이콘에 해당하는 데이터를 참조할 수도 있다. 즉, 문제 데이터에는 문제파일에서 텍스트를 통해 인식된 정보 이외에도, 사용자가 스스로 입력한 문제의 종류에 기초하여 문제 데이터를 생성할 수도 있다.
사용자가 문제파일을 업로드하면, 애플리케이션은 문제파일을 문제 영역과 선지 영역으로 구분한다(201).
구체적으로 애플리케이션은 문제파일을 이미지로 변환하고, 학습한 인공지능을 통해 이미지 내의 선지 영역을 먼저 구분한 후, 문제 영역을 구분할 수 있다.
구체적으로 도 6과 같이, 애플리케이션은 '문 1'과 관련된 문제파일의 일부분을 4개의 선지 영역과 1개의 문제 영역으로 인식할 수 있다. 4개의 선지 영역은 각 선지마다 바운딩 박스로 구분되고, 4개의 선지 영역 이외의 전체 영역을 문제 영역으로 바운딩 박스 형태로 구분될 수 있다.
한편, 애플리케이션은 문제파일을 이미지로 변환하면서, 인공지능이 문제 영역을 구분하는 동작을 수행하는 중이라는 것을 사용자에게 인식시키기 위해서 "업로드한 문제를 인식 중입니다."라는 안내메시지를 디스플레이(120)에 출력할 수 있다. 즉, 도 6과 같이 바운딩 박스로 구분된 이미지 파일은 디스플레이(120)를 통해 출력되지 않고, 사용자에게 표시되지 않을 수도 있다.
문제 영역 및 선지 영역이 구분되면, 애플리케이션은 각 영역에서 텍스트 및 그림을 추출한다(203).
도 6의 예에서, 애플리케이션은 문제 영역에서 "문 1"과 문제에 대한 내용을 텍스트로 추출할 수 있으며, 선지 영역은 "①②③④"와 같은 선지 번호 뿐만 아니라, 각 선지의 내용을 텍스트로 추출할 수 있다.
도 6 등에서 도시된 예와 달리, 만약 문제파일에 그래프 또는 그림이 포함되는 경우, 추출된 그래프 또는 그림은 문제 영역으로 인식되어 추출된다.
추출된 텍스트 또는 그림 등은 문제 데이터로 변환된다. 도 7에서 도시된 예와 같이, 애플리케이션은 도 7과 같은 문제 데이터를 생성할 수 있다. 다만, 생성된 문제 데이터는 사용자에게 시각적으로 표시되지 않을 수 있다.
구체적으로 애플리케이션은 업로드된 문제파일이 '첫 번째 페이지'고, 문제 영역이 차지하는 픽셀이[22, 740, 150, 125]에 해당하고, 문제 번호는 '1번'이고, 보기가 포함되지 않으며, 선지가 4개라는 문제 데이터를 생성할 수 있다. 또한, 문제 데이터는 추출된 텍스트에 기초하여 문제의 내용 및 각 선지의 내용이 함께 포함될 수 있다.
애플리케이션은 생성된 문제 데이터를 서버(20)로 전송한다(204).
서버(20)는 Knowledge gragh를 이용한 시맨틱 서치(Semantic search)에 기초하여 생성된 다른 사용자의 오답률, 평균 풀이시간 및 문제 난이도 중 적어도 하나 이상의 정보를 포함하는 문제 풀이 정보를 생성한다.
생성된 문제 풀이 정보는 다시 애플리케이션으로 전송되며, 애플리케이션은 문제 풀이 정보를 획득한다(205).
도 8과 같은 예시와 같이, 문제 풀이 정보는 문제파일이 관련된 문제가 '2019년 공무원 필기시험'이라는 시험 종류에 대한 정보와, 사용자의 입력값이 '오답'이라는 정보, 타 학습자가 동일한 문제의 오답을 입력한 결과(오답률 30%), 인식된 문제의 푸는데 걸리는 평균 소요시간(15초) 및 오답률과 평균 소요시간에 기초한 난이도(C급)에 대한 정보를 포함한다.
도 8에서는 사용자가 문1에 풀이를 입력한 문제 영역 및 선지 영역이 전송된 것으로 가정하였다. 서버(20)는 사용자의 입력값에 기초하여 문제 풀이 정보의 정답과 비교하여 사용자의 입력값이 오답이라는 것을 포함한 문제 풀이 정보를 생성할 수 있다.
애플리케이션은 문제 풀이 정보를 디스플레이(120)를 통해 출력할 수 있다(206).
문제 풀이 정보를 표시하는 방법은 다양할 수 있다. 애플리케이션은 도 8과 같이 단순한 텍스트 형태로 문제 풀이 정보를 표시할 수도 있지만, 다양한 그래프 및 이미지와 아바타를 통한 시각적 유저 인터페이스를 사용하여 사용자에 문제 풀이 정보를 제공할 수 있다.
한편, 도 4 내지 도 8에서 도시한 도면은 애플리케이션이 동작을 설명하기 위한 일 예에 불과하며, 문제 풀이 정보를 문제 영역과 선지 영역을 인식함으로써 생성될 수 있는 다양한 정보를 포함할 수 있다.
도 9는 또 다른 실시예에 따른 애플리케이션의 동작을 구체적으로 설명하기 위한 순서도이다.
도 9의 실시예를 설명하기 앞서, 도 9의 순서도는 이미 사용자 단말(10)이 문제파일의 문제 영역과 선지 영역을 구분한 후, 서버(20)로부터 문제 풀이 정보를 획득한 상태를 가정한다. 또한, 사용자 단말(10)은 오답 여부가 포함되지 않은 문제 풀이 정보를 서버(20)로부터 획득한 후, 사용자의 입력을 수신하는 실시예에 대한 순서도이다.
도 9를 참조하면, 애플리케이션은 사용자의 입력을 수신한다(210).
여기서 사용자의 입력은 사용자가 업로드한 문제파일에서 입력하는 풀이 또는 사용자가 중요한 문제라고 체크하는 입력값을 의미할 수 있다..
애플리케이션은 사용자의 입력과 미리 획득된 문제 풀이 정보를 비교한다(220).
미리 획득된 문제 풀이 정보는 정답에 해당하는 선지 정보를 포함하고, 애플리케이션은 구분된 선지 영역 중 사용자의 입력값이 포함된 선지 영역을 다시 인식함으로써, 사용자의 입력이 정답인지 여부를 판단할 수 있다.
비교 결과에 기초하여 애플리케이션은 정답 여부를 결정한다(231).
만약 사용자가 입력한 필기가 포함된 선지 영역의 선지가 문제 풀이 정보에 포함된 정답과 일치하면, 애플리케이션은 사용자의 입력이 정답이라는 화면을 출력할 수 있다. 만약 오답이라면, 애플리케이션은 사용자의 입력이 오답이라는 화면을 출력할 수 있다.
사용자의 입력에 기초하여 애플리케이션은 정답 여부를 포함한 문제 풀이 정보를 업데이트한다(232).
문제 풀이 정보를 업데이트하는 것은, 서버(20)에서 진행될 수 있다. 문제 풀이 정보는 다른 사용자의 오답률에 대한 정보를 포함하고 있으므로, 사용자의 풀이가 정답 또는 오답에 대해서 오답률이 변동될 수 있다. 애플리케이션은 사용자의 풀이에 따라 정답 또는 오답에 대한 정보를 서버(20)로 전송한다. 서버(20)에서 업데이트된 문제 풀이 정보는 다른 사용자가 동일한 문제파일의 문제 풀이 정보를 요청할 때 활용될 수 있다.
도 10은 문제 풀이 정보를 이용하여 사용자에게 제공할 수 있는 다양한 서비스를 설명하기 위한 순서도이다. 도 11 및 도 12는 도 10에서 설명하는 순서도를 구체적으로 설명하기 위한 도면이다.
도 10을 먼저 참조하면, 애플리케이션은 문제파일의 편집을 실행하는 사용자 입력을 수신한다(300).
도 12와 같이, 문제파일의 편집을 유도하는 사용자 입력은 다양한 유저 인터페이스를 통해 애플리케이션으로 수신될 수 있다.
문제파일 편집에 관한 명령이 수신되면, 애플리케이션은 사용자 풀이가 포함된 문제 영역과 선지 영역을 인식한다(310).
여기서 사용자 풀이는 사용자가 입력하는 다양한 형태를 포함한다. 도 11의 두 번째 화면(122)과 같이, 사용자는 형광색 표시와 같은 유저 인터페이스를 통해 문제1의 문제 영역과 선지 영역에 사용자 풀이를 입력할 수 있다. 애플리케이션은 사용자 풀이가 포함된 문제 영역과 선지 영역을 인식할 수 있다.
사용자 풀이가 포함되지 않은 영역의 음영을 약하게 표현하는 서비스를 제공할 수 있다(322).
일 예로, 도 11의 세 번째 화면(123)은 사용자의 풀이가 포함되지 않은 영역을 약하게 표시한 것이다. 즉, 도 11의 첫 번째 화면(121)은 업로드된 문제파일이 디스플레이(120)를 통해 출력된 화면이고, 두 번째 화면(122)은 사용자 풀이가 입력된 문제파일, 세 번째 화면(123)은 사용자 풀이가 입력된 문제 영역 및 선지 영역 이외의 영역의 음영을 약하게 표시한 서비스를 제공한 화면이다.
애플리케이션은 사용자 풀이를 삭제한 채로 출력할 수 있다(343).
구체적으로 애플리케이션은 도 11의 세 번째 화면(123)을 출력하면서, 두 번째 화면(122)에서 입력한 사용자 풀이를 삭제한 문제 영역 및 선지 영역만을 출력하여 사용자가 다시 문제를 풀 수 있는 서비스를 제공할 수 있다.
도 10을 다시 참조하면, 애플리케이션은 사용자 풀이가 정담인 문제 및 선지 영역을 삭제하고(321), 문제 영역과 선지 영역을 재배치하는 서비스를 수행할 수도 있다(330).
도 12의 첫 번째 화면(124)과 같이, 애플리케이션은 사용자의 풀이 중, 오답으로 인식된 5개의 문제 영역과 선지 영역을 인식할 수 있다. 예를 들어, 애플리케이션은 문제 풀이 정보와 사용자의 풀이를 비교하여 5개의 문제가 오답인 것으로 확인할 수 있다.
애플리케이션은 도 12의 두 번째 화면(125)과 같이, 오답으로 인식된 문제 영역과 선지 영역만을 보존한 파일을 새롭게 생성할 수 있다. 여기서 애플리케이션은 문제파일의 크기 및 각 영역의 크기를 고려하여 보존할 문제 영역과 선지 영역을 재배치할 수 있다.
문제 영역과 선지 영역의 재배치는 애플리케이션이 문제파일을 인식할 때, 생성된 문제 데이터에 기초하여 실행되며, 페이지 정보 및 영역의 크기 및 전체 페이지의 크기에 따라 재배치가 수행된다. 재배치는 도 12의 두 번째 화면(125)와 같이 오른쪽 영역을 남기는 형태로 수행될 수 있지만, 이러한 재배치는 일 예에 불과하고 다양한 방법으로 재배치가 수행될 수 있다.
재배치가 완료되면, 애플리케이션은 사용자 풀이가 그대로 남겨진 채로, 재배치된 파일을 출력하고(341), 도 12의 두 번째 화면(125)와 같이 사용자의 풀이를 삭제하고 출력할 수 있다(342).
도 13은 단권화 서비스를 수행하는 다른 실시예에 관한 도면이다.
일 예로, 애플리케이션은 같은 문제파일을 여러 번 학습하는 사용자를 위해서 편집된 문제파일을 다시 편집하는 기능을 포함할 수 있다.
도 13의 첫 번째 화면(126)과 같이, 사용자는 업로드된 문제파일에 포함된 문제에서 몇 개의 문제 영역 및 선지 영역에 사용자 풀이를 입력한 후, 문제파일의 편집을 실행할 수 있다.
만약 사용자가 문제 1, 2, 7 및 8에 사용자 풀이(도 13과 같이 형광펜 처리)를 입력한 것으로 가정하면, 애플리케이션은 도 13의 두 번째 화면(127)과 같이, 사용자 풀이가 포함된 선지 영역과 그에 대응되는 문제 영역만을 남기고, 나머지 문제 영역 및 선지 영역을 삭제할 수 있다. 즉, 애플리케이션은 문제파일에서 사용자의 풀이가 입력된 문제 영역과 선지 영역을 인식한 후, 사용자 풀이가 포함된 영역의 문제 및 선지만을 재배치하여 도 13의 두 번째 화면(127)과 같이 출력할 수 있다.
그 후, 다시 사용자는 재배치된 문제파일(도 13의 두 번째 화면(127))에 또 다시 다른 사용자 풀이를 입력할 수 있다. 이 때, 애플리케이션은 사용자의 풀이가 포함되지 않은 문제 영역 및 선지 영역을 남긴 채 문제파일을 편집할 수 있다.
애플리케이션은 도 13의 세 번째 화면(128)과 같이, 사용자 풀이가 포함된 문제 영역 및 선지 영역을 삭제한 채, 사용자 풀이가 포함되지 않은 문제영역 및 선지영역만을 보존하여 재배치한 편집 파일을 출력할 수 있다.
다만, 애플리케이션이 도 13의 두 번째(127) 또는 도 13의 세 번째(128)과 같이, 서로 다른 편집 동작을 수행하기 위해서는 사용자의 입력명령이 필요하며, 사용자의 입력명령에 따라 다양한 편집 서비스를 수행할 수 있다.
개시된 학습 시스템 및 학습 시스템을 통해서 동작하는 애플리케이션은 인식된 문제 영역과 선지 영역을 이용하고, 다양하게 입력될 수 있는 사용자가 풀이을 통해 학습자에게 편의를 제공하는 다양한 기능을 수행할 수 있으며, 이를 통해서 사용자의 학습 효율을 증가시킬 수 있다.
사용자 단말: 20 서버: 20
프로세서: 100 파일 수신부: 101
추출부: 102 정보 생성부: 103
파일 생성부: 104 메모리: 110
디스플레이: 120

Claims (15)

  1. 서버로부터 학습된 인공지능 및 애플리케이션을 실행하는 적어도 하나 이상의 프로세서; 및
    사용자의 입력을 수신 및 표시하고, 상기 애플리케이션의 동작을 출력하는 적어도 하나 이상의 디스플레이;를 포함하고,
    상기 프로세서는,
    상기 사용자가 업로드하는 문제 파일을 수신하고,
    상기 학습된 인공지능을 기초로 상기 문제 파일 중 문제 영역 및 선지 영역을 구분하고,
    상기 구분된 문제 영역 및 상기 구분된 선지 영역에서 텍스트 추출 또는 그림 추출을 수행하고,
    상기 추출된 텍스트 또는 그림에 기초하여 상기 서버로부터 상기 문제 파일의 상기 문제 풀이 정보를 요청하고,
    상기 사용자의 입력에 기초하여 상기 수신된 문제 풀이 정보를 상기 디스플레이를 통해 출력하는 것;을 포함하는 학습 시스템.
  2. 제 1항에 있어서,
    상기 프로세서가 상기 문제 영역 및 상기 선지 영역을 구분하는 것은,
    상기 수신된 문제 파일을 이미지 파일로 변환하고,
    변환된 이미지 파일에서 상기 인공지능을 통해 선지 영역을 먼저 인식하고,
    상기 선지 영역을 제외한 이미지를 상기 문제 영역으로 인식하는 것;을 포함하는 학습 시스템.
  3. 제 1항에 있어서,
    상기 프로세서는,
    상기 추출된 텍스트 또는 상기 추출된 그림에 기초하여 문제 데이터를 생성하고,
    상기 문제 데이터는,
    상기 문제 파일에서 상기 문제 영역 및 상기 선지 영역이 포함된 페이지 정보,
    상기 문제 영역에서 추출된 문제 번호,
    상기 문제 영역에 포함된 문제 내용,
    상기 선지 영역에서 추출된 선지 개수,
    상기 선지 영역에 포함된 선지 내용 중 적어도 하나를 포함하는 학습 시스템.
  4. 제 1항에 있어서,
    상기 문제 풀이 정보는,
    Knowledge gragh를 이용한 시맨틱 서치(Semantic search)에 기초하여 생성된 다른 사용자의 오답률, 평균 풀이시간 및 문제 난이도 중 적어도 하나 이상의 정보를 포함하고,
    상기 사용자가 입력한 정답에 기초하여 실시간으로 업데이트되는 학습 시스템.
  5. 제 1항에 있어서,
    상기 프로세스는,
    상기 사용자의 풀이가 입력된 문제 영역 및 선지 영역을 구분하고,
    상기 사용자의 풀이가 입력된 선지 영역과 상기 문제 풀이 정보에 포함된 정답을 비교하고,
    상기 비교 결과에 기초하여 정답 여부를 결정하는 학습 시스템.
  6. 제 5항에 있어서,
    상기 프로세서는,
    상기 문제 풀이 정보에 기초하여 오답을 포함하는 문제 영역 및 선지 영역만을 인식하고,
    상기 오답을 포함하는 문제 영역 및 선지 영역 이외의 영역을 삭제하고, 상기 오답이 포함된 문제 영역 및 선지 영역만을 재배치하여 상기 디스플레이에 출력하는 학습 시스템.
  7. 제 6항에 있어서,
    상기 프로세서는,
    상기 오답이 포함된 문제 영역 및 선지 영역만을 재배치할 때, 상기 사용자의 풀이가 포함된 입력값을 삭제하고, 상기 오답이 포함된 문제 영역 및 선지 영역만을 상기 디스플레이를 통해 출력하는 학습 시스템.
  8. 제 5항에 있어서,
    상기 프로세서는,
    상기 사용자 풀이가 포함된 문제 영역 및 선지 영역 이외의 영역의 음역을 약하게 표시하고,
    상기 사용자의 풀이가 포함된 입력값을 삭제하도록 상기 디스플레이를 제어하는 학습 시스템.
  9. 외부에 마련된 서버와 통신하는 사용자 단말의 애플리케이션 동작 방법에 있어서,
    문제 영역 또는 선지 영역을 라벨링한 학습 데이터에 기초하여 문제 영역과 선지 영역을 구분하는 방법을 학습한 인공지능과 네트워크를 통해 연결되고;
    상기 사용자가 업로드하는 문제 파일을 표시하고;
    상기 학습된 인공지능에 기초하여 상기 문제 파일 중 문제 영역 및 선지 영역을 구분하고;
    상기 구분된 문제 영역 및 상기 구분된 선지 영역에서 텍스트 추출 및 그림 추출을 수행하고;
    상기 추출된 텍스트 및 그림에 기초하여 상기 서버로부터 문제 파일의 상기 문제 풀이 정보를 요청하고;
    상기 수신된 문제 풀이 정보를 상기 디스플레이를 통해 출력하는 것;을 포함하는 애플리케이션 동작 방법.
  10. 제 9항에 있어서,
    상기 문제 파일 중 문제 영역 및 선지 영역을 구분하는 것은,
    상기 수신된 문제 파일을 이미지 파일로 변환하고;
    변환된 이미지 파일에서 상기 인공지능을 통해 선지 영역을 먼저 인식하고;
    상기 선지 영역을 제외한 이미지를 상기 문제 영역으로 인식하는 것;을 포함하는 애플리케이션 동작 방법.
  11. 제 9항에 있어서,
    상기 문제 풀이 정보는,
    상기 서버에 포함된 인공지능이 Knowledge gragh를 이용한 시맨틱 서치(Semantic search)에 기초하여 생성된 다른 사용자의 오답률, 평균 풀이시간 및 문제 난이도 중 적어도 하나 이상의 정보를 포함하도록 생성하고,
    상기 서버는
    상기 사용자가 입력한 풀이에 기초하여 상기 문제 풀이 정보를 실시간으로 업데이트하는 것;을 포함하는 애플리케이션 동작 방법.
  12. 제 9항에 있어서,
    상기 사용자의 풀이가 입력된 문제 영역 및 선지 영역을 구분하고;
    상기 사용자의 풀이가 입력된 선지 영역의 선지 번호와 상기 문제 풀이 정보에 포함된 정답을 비교하고;
    상기 비교 결과에 기초하여 정답 여부를 결정하는 것;을 더 포함하는 애플리케이션 동작 방법.
  13. 제 12항에 있어서,
    상기 문제 풀이 정보에 기초하여 오답을 포함하는 문제 영역 및 선지 영역만을 인식하고;
    상기 오답을 포함하는 문제 영역 및 선지 영역 이외의 영역을 삭제하고;
    상기 오답이 포함된 문제 영역 및 선지 영역만을 재배치하는 것;을 더 포함하는 애플리케이션 동작 방법.
  14. 제 9항에 있어서,
    상기 사용자의 풀이가 입력된 문제 영역 및 선지 영역을 구분하고;
    상기 문제 파일의 편집을 유도하는 유저 인터페이스를 표시하고;
    상기 유저 인터페이스를 통해 입력되는 사용자 입력에 기초하여 상기 사용자의 풀이가 포함된 선지 영역과 그에 대응되는 문제 영역만을 상기 디스플레이를 통해 출력하는 것;을 포함하는 애플리케이션 동작 방법.
  15. 제 14항에 있어서,
    상기 사용자의 풀이가 포함된 선지 영역과 그에 대응되는 문제 영역만에서 사용자의 풀이를 삭제한 후, 상기 디스플레이를 통해 출력하고;
    상기 사용자의 추가적인 풀이가 입력되면, 상기 사용자의 풀이가 포함되지 않는 문제 영역과 선지 영역만을 재배치하여 상기 디스플레이를 통해 출력하는 것;을 더 포함하는 학습 애플리케이션 동작 방법.
KR1020230024562A 2022-08-31 2023-02-23 학습 시스템 및 학습 애플리케이션 동작방법 KR20240031863A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2023/002650 WO2024048881A1 (ko) 2022-08-31 2023-02-24 학습 시스템 및 학습 애플리케이션 동작방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220109586 2022-08-31
KR20220109586 2022-08-31

Publications (1)

Publication Number Publication Date
KR20240031863A true KR20240031863A (ko) 2024-03-08

Family

ID=90235888

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230024562A KR20240031863A (ko) 2022-08-31 2023-02-23 학습 시스템 및 학습 애플리케이션 동작방법

Country Status (1)

Country Link
KR (1) KR20240031863A (ko)

Similar Documents

Publication Publication Date Title
US11327978B2 (en) Content authoring
CN108073555B (zh) 用于从电子文档生成虚拟现实环境的方法和系统
EP4004811A1 (en) Technologies for content analysis
US20200117961A1 (en) Two-dimensional document processing
CN108369578B (zh) 基于先前文档的自动模板生成方法、系统及计算机可读存储设备
US11687570B2 (en) System and method for efficient multi-relational entity understanding and retrieval
JP4929704B2 (ja) コンピュータ処理方法及びコンピュータ処理装置
US12062018B2 (en) Methods and apparatus for assessing candidates for visual roles
US20170220545A1 (en) Generating templates from user's past documents
US20150019569A1 (en) Interactive visualization of big data sets and models including textual data
US9471601B2 (en) Images for a question answering system
US20080270366A1 (en) User interface for geographic search
US20190095255A1 (en) Format-specific data object passing between applications
US11361002B2 (en) Method and apparatus for recognizing entity word, and storage medium
US20200125671A1 (en) Altering content based on machine-learned topics of interest
US10845882B2 (en) Method, apparatus, and computer-readable medium for providing internet browsing service through tactile interface device
US20200050906A1 (en) Dynamic contextual data capture
US20150039987A1 (en) Systems and methods for data entry
US11769006B2 (en) Parsing and reflowing infographics using structured lists and groups
CN114595686A (zh) 知识抽取方法、知识抽取模型的训练方法及装置
US20190005030A1 (en) System and method for providing an intelligent language learning platform
CN113505786A (zh) 试题拍照评判方法、装置及电子设备
Rahmadi et al. Visual recognition of graphical user interface components using deep learning technique
CN111602129B (zh) 针对注释和墨迹的智能搜索
US8928929B2 (en) System for generating tag layouts