system

The system addresses the challenge of manual effort in creating customized test questions by automatically generating and providing flexible test formats, enhancing learning efficiency and progress tracking.

JP2026063715APending Publication Date: 2026-04-13SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-10-01
Publication Date
2026-04-13

AI Technical Summary

Technical Problem

Existing test generation systems lack flexibility and require significant manual effort to create customized test questions, especially for large-scale teaching materials, making it difficult for learners to efficiently review their learning progress.

Method used

A system that receives and analyzes learning content text data, automatically generates test questions in multiple formats using natural language processing, and provides them in user-friendly formats.

Benefits of technology

Enables efficient and effective generation and provision of tailored test questions, improving learning efficiency and tracking progress.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026063715000001_ABST
    Figure 2026063715000001_ABST
Patent Text Reader

Abstract

We provide the system. [Solution] A means for receiving text data of learning content, A means of analyzing received text data and extracting important keywords and phrases, A means of generating test questions in multiple question formats based on extracted information, A means of providing the generated test questions to the user, A system that includes this.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technology of the present disclosure relates to a system.

Background Art

[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, and includes steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a character of the chatbot, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In a modern learning environment, in order to achieve efficient and effective learning, customized test questions according to individual learning contents are necessary. However, it takes time and effort to do this manually, especially for large-scale teaching materials and complex contents, it is difficult to achieve. In addition, existing test generation systems often depend on fixed question formats, lacking flexibility. As a result, there is a problem that it is difficult for learners to optimally review and confirm their learning progress.

Means for Solving the Problems

[0005] This invention provides a means for receiving text data of learning content, analyzing the received data, and extracting important keywords and phrases. Furthermore, it includes means for automatically generating test questions in multiple formats, such as multiple-choice, written, and fill-in-the-blank, based on the extracted information. It also includes means for providing the generated test questions to the user. This configuration allows learners to take tests tailored to their learning content in a simple and efficient manner, thereby improving learning efficiency. Moreover, by using a natural language processing engine, advanced analysis of text data can be achieved, enabling the generation of test questions in a flexible format according to user specifications.

[0006] "Learning content text data" refers to textual information, notes, memos, and other string-based content prepared by learners for their studies.

[0007] "Means of receiving" refers to methods and devices for obtaining text data of learning content from users, particularly web forms, application input fields, and their data transmission functions.

[0008] "Means of analysis" refers to methods and devices for understanding meaning from text data and extracting important keywords and phrases, particularly natural language processing engines.

[0009] "Important keywords and phrases" refer to words or short sentences in the text data that are particularly necessary for understanding the learning content.

[0010] "Generating means" refers to methods or devices that automatically create test questions based on extracted keywords and phrases.

[0011] "Test questions" refer to questions prepared for learners to review the material they have learned and to check their understanding. This includes various formats such as multiple-choice, written response, and fill-in-the-blank.

[0012] "Means of provision" refers to the methods and devices used to display and make the generated test questions accessible to the user. Specifically, this includes providing them on a webpage, within an application, or in PDF format.

[0013] A "natural language processing engine" refers to software or algorithms that analyze text data, understand its grammatical structure, and extract keywords and phrases.

[0014] "Multiple-choice" refers to a test format where the correct answer is selected from multiple options.

[0015] "Descriptive questions" refer to test questions in a format where learners input their answers as written text.

[0016] A "fill-in-the-blank" test refers to a type of test where a specific part of a sentence is left blank, and learners are asked to think of the correct word or phrase to fill in the blank.

[0017] A "template engine" refers to software used to convert generated test questions into a user-friendly format.

[0018] A "User ID" refers to an identifier used to identify individual users within a system. [Brief explanation of the drawing]

[0019] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of a data processing device and a smart device according to the first embodiment. [Figure 3] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5]It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] It shows an emotion map to which multiple emotions are mapped. [Figure 10] It shows an emotion map to which multiple emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when the emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when the emotion engine is combined.

Mode for Carrying Out the Invention

[0020] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.

[0021] First, the language used in the following description will be explained.

[0022] In the following embodiments, the signed processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Furthermore, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include CPU (Central Processing Unit), GPU (Graphics Processing Unit), GPGPU (General-Purpose computing on Graphics Processing Units), and APU (Accelerated Processing Unit).

[0023] In the following embodiments, signed RAM (Random Access Memory) is a memory that temporarily stores information and is used as work memory by the processor.

[0024] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.

[0025] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).

[0026] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."

[0027] [First Embodiment]

[0028] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.

[0029] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.

[0030] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0031] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.

[0032] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.

[0033] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0034] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.

[0035] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.

[0036] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.

[0037] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0038] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0039] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".

[0040] System Overview

[0041] This invention is a system that receives and analyzes text data from learning notes and memos, and automatically generates test questions based on that content. It is used by students and educators to efficiently create tests and improve learning effectiveness.

[0042] Program Description

[0043] 1. Data entry and submission

[0044] User: Enters text data based on learning content into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[0045] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This also includes the necessary user authentication information.

[0046] 2. Data reception and analysis

[0047] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[0048] Server: The stored text data is analyzed using a natural language processing (NLP) engine. The analysis includes the following:

[0049] Tokenization: Dividing text into words or phrases.

[0050] Syntactic analysis: Understanding grammatical structure and identifying important keywords and phrases.

[0051] 3. Generating Test Questions

[0052] Server: Generates test questions in different formats based on extracted keywords and phrases.

[0053] Multiple-choice questions: Create questions based on specific keywords or phrases and generate answer choices. For example, generate questions such as "What is the difference between procaliotes and eukaryotes?" and provide multiple answers.

[0054] Descriptive questions: Create questions that require detailed explanations. For example, generate a question such as, "Please explain the role of DNA."

[0055] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in a sentence based on important keywords or phrases. For example, create a question in the format, "Procalioto does not have a nucleus, but _____ does."

[0056] 4. Provision of test questions

[0057] Server: Converts the generated test questions into a user-friendly format for distribution to users. This conversion uses a template engine and can output in HTML or PDF format.

[0058] Terminal: Receives the provided test questions and displays them in the user interface. This allows the user to view the generated test questions, print them, or answer them directly online.

[0059] Specific example

[0060] 1. User input

[0061] User: Enters biology class notes into a web form.

[0062] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0063] Terminal: Encode this text data into JSON format and send it to the server.

[0064] 2. Data reception and analysis

[0065] Server: Receives text data and stores it in the cache and database.

[0066] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[0067] 3. Generating Test Questions

[0068] Server: Generates the following test questions based on the extracted keywords.

[0069] Multiple-choice questions:

[0070] Question: What are the differences between procaliotes and eukaryotes?

[0071] Options:

[0072] 1. Neither side possesses nuclear weapons.

[0073] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[0074] 3. Procaliotes have a nucleus, but eukaryotes do not.

[0075] 4. Both possess nuclear weapons.

[0076] Short answer questions:

[0077] Question: Please explain the role of DNA.

[0078] Fill-in-the-blank questions:

[0079] Text: Procaliotes have no nucleus, but _____ do.

[0080] Answer: eukaryotes

[0081] 4. Provision of test questions

[0082] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[0083] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[0084] With the above configuration, this system can effectively and efficiently automatically generate and provide test questions based on the learning content to learners.

[0085] The following describes the processing flow.

[0086] Step 1:

[0087] User: Enter text data of learning notes and memos into a dedicated web form or application input field, and click the submit button.

[0088] Step 2:

[0089] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. This includes the user authentication token and session information.

[0090] Step 3:

[0091] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it stores this data in the database and associates it with metadata such as the user ID.

[0092] Step 4:

[0093] Server: The stored text data is analyzed using a natural language processing (NLP) engine. Specifically, the text is tokenized, syntactic analysis is performed, and important keywords and phrases are extracted.

[0094] Step 5:

[0095] Server: Based on extracted keywords and phrases, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank). For example, in the case of multiple choice questions, it automatically generates the question and multiple answer choices.

[0096] Step 6:

[0097] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[0098] Step 7:

[0099] Server: Stores the generated test questions in a database and associates them with the user ID. Then, encodes the test data in JSON format and creates an API response to send to the terminal.

[0100] Step 8:

[0101] Terminal: Interprets received test data and displays it appropriately within the user interface. Users can then review the generated test questions, print them, or answer them online.

[0102] This series of steps allows users to easily receive test questions generated from their learning content and effectively track their learning progress.

[0103] (Example 1)

[0104] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."

[0105] Receiving text data of learning content and generating effective test questions based on that data requires considerable time and effort using traditional methods. Furthermore, maintaining consistent quality in the generated test questions is difficult. Additionally, the process of providing test questions in a user-friendly format is cumbersome, placing a significant burden on educators and students alike.

[0106] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0107] In this invention, the server includes means for receiving text data of learning content, means for encoding and transmitting the received text data, means for analyzing the received text data and extracting important keywords and phrases, means for generating multiple-choice questions, written questions, and fill-in-the-blank questions based on the extracted information, and means for providing the generated test questions in HTML or PDF format. This enables the efficient and effective automatic generation and provision of test questions based on learning content.

[0108] "Learning content text data" refers to string data containing descriptions of learning content entered by students or educators.

[0109] "Means for receiving" refers to system components or modules that receive data transmitted from a terminal.

[0110] "Encoding" is the process of converting data into a specific format.

[0111] "Means of transmission" refer to system components or modules used to send encoded data to a receiving side, such as a server.

[0112] "Analyzing" is the process of breaking down data and understanding its structure and meaning.

[0113] A "keyword" is a word that is considered particularly important within a text.

[0114] A "phrase" is a meaningful sequence of words within a text.

[0115] A "multiple-choice question" is a test question in which you select the correct answer from a given list of options.

[0116] "Descriptive questions" are test questions that require test-takers to freely write detailed answers.

[0117] A "fill-in-the-blank question" is a type of test question that asks the user to complete an incomplete sentence.

[0118] "HTML format" is a markup language used to display web pages.

[0119] The "PDF format" is a standard format for viewing and printing documents.

[0120] "Means of provision" refer to system components and modules used to distribute generated data so that users can utilize it.

[0121] This invention is a system that receives and analyzes text data from learning notes and memos, and automatically generates test questions based on that content. This allows students and educators to create tests efficiently and improve learning effectiveness.

[0122] System Configuration

[0123] This system primarily consists of servers, terminals, and users. The specific components and their operation are described below.

[0124] Hardware and software to be used

[0125] Hardware: Servers, terminals

[0126] Software: Dedicated web forms or applications, natural language processing engines (e.g., SpaCy, NLTK), template engines (e.g., Jinja2, Handlebars)

[0127] Data entry and transmission

[0128] User: Enter text data based on the learning content into a dedicated web form or application input field and click the submit button. For example, enter biology class notes into the input field as follows:

[0129] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0130] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This JSON data also includes the necessary user authentication information.

[0131] Data reception and analysis

[0132] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores it in the database along with the metadata.

[0133] Server: The stored text data is analyzed using a natural language processing (NLP) engine. First, tokenization is performed, and then important keywords and phrases are extracted through syntactic analysis. For example, keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA" are extracted.

[0134] Test question generation

[0135] Server: Generates test questions in different formats based on extracted keywords and phrases.

[0136] Multiple-choice questions: For example, generate a question such as, "What is the difference between procaliotes and eukaryotes?" and provide multiple answer choices.

[0137] Descriptive questions: For example, generate a question such as, "Please explain the role of DNA."

[0138] Fill-in-the-blank questions: For example, generate questions of the form, "Procaliotes do not have a nucleus, but _____ do."

[0139] Providing test questions

[0140] Server: Converts generated test questions into a user-friendly format. Uses a template engine to output questions in HTML or PDF format.

[0141] Terminal: Receives the provided test questions and displays them in the user interface. Users can view the displayed test questions, print them, or answer them directly online.

[0142] Specific example

[0143] 1. User input

[0144] User: Enter your biology class notes into the web form as follows.

[0145] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0146] Terminal: Encode this text data into JSON format and send it to the server.

[0147] 2. Data reception and analysis

[0148] Server: Receives text data and stores it in the cache and database.

[0149] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[0150] 3. Generating Test Questions

[0151] Server: Generates the following test questions based on the extracted keywords.

[0152] Multiple-choice questions:

[0153] Question: What are the differences between procaliotes and eukaryotes?

[0154] Options:

[0155] 1. Neither side possesses nuclear weapons.

[0156] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[0157] 3. Procaliotes have a nucleus, but eukaryotes do not.

[0158] 4. Both possess nuclear weapons.

[0159] Short answer questions:

[0160] Question: Please explain the role of DNA.

[0161] Fill-in-the-blank questions:

[0162] Text: Procaliotes have no nucleus, but _____ do.

[0163] Answer: eukaryotes

[0164] 4. Provision of test questions

[0165] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[0166] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[0167] The above describes the embodiment for carrying out the invention. This system enables the automatic generation and provision of efficient and effective test questions based on the learned content.

[0168] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0169] Step 1: The user enters the text data for the learning content.

[0170] User: Enter learning content into a dedicated web form or application. As a specific example, enter the following into the input field from your biology class notes: "Cells are the basic units of living organisms. There are two main types: procaliotes and eukaryotes..."

[0171] Input: Text data containing learning content

[0172] Output: Input text data

[0173] Step 2: The terminal encodes and sends the text data.

[0174] Terminal: Encodes the entered text data into JSON format. Specifically, it generates JSON data like the following:

[0175] json

[0176] {

[0177] "userID": "12345",

[0178] "textData": "Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes..."

[0179] }

[0180] The encoded data is then sent to the server as an HTTP request.

[0181] Input: Text data of learning content entered by the user.

[0182] Output: Data encoded in JSON format and HTTP request

[0183] Step 3: The server receives and stores the text data.

[0184] Server: Receives JSON formatted data sent from the terminal. After receiving the data, it verifies the data content to check for any invalid data.

[0185] Afterward, the user ID and metadata are saved to the database, and also temporarily stored in the cache.

[0186] Input: JSON data sent from the device

[0187] Output: Validated text data and its metadata

[0188] Step 4: The server parses the text data.

[0189] Server: Analyzes stored text data using a natural language processing (NLP) engine. For example, it uses NLP libraries such as SpaCy or NLTK.

[0190] First, tokenization is performed to divide the text into words and phrases. Next, the grammatical structure is understood through syntactic analysis, and important keywords and phrases are identified. Specifically, keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA" are extracted.

[0191] Input: Saved text data

[0192] Output: Extracted keywords and phrases

[0193] Step 5: The server generates test questions.

[0194] Server: Generates test questions in different formats based on extracted keywords and phrases. Using a generation AI model, it generates questions in the following formats:

[0195] Multiple-choice question: Generates a question such as "What is the difference between procaliotes and eukaryotes?" along with multiple answer choices.

[0196] Descriptive question: Generate the question, "Please explain the role of DNA."

[0197] Fill-in-the-blank question: Generate the question "Procaliotes do not have a nucleus, but _____ do."

[0198] Input: Extracted keywords or phrases

[0199] Output: Set of generated test questions

[0200] Step 6: The server converts the test questions into the format provided.

[0201] Server: Renders the generated test questions in HTML or PDF format using a template engine (e.g., Jinja2, Handlebars).

[0202] Specifically, the template engine specifies the format and converts it into a user-friendly format. For example, it generates the following HTML template.

[0203] html

[0204] <h1> Biology test questions< / h1>

[0205] <h2> Multiple-choice questions< / h2>

[0206] What is the difference between procaliotes and eukaryotes?

[0207]

[0208] Neither side possesses nuclear weapons.

[0209] Procaliotes do not have a nucleus, but eukaryotes do.

[0210] Procaliotes have a nucleus, but eukaryotes do not.

[0211] Both possess nuclear weapons

[0212]

[0213] <h2> written questions< / h2>

[0214] Please explain the role of DNA.

[0215] <h2> Fill-in-the-blank questions< / h2>

[0216] Procalioto does not have a nucleus, <input type="text"> It has a nucleus.

[0217] Input: Generated test questions

[0218] Output: Test questions in formatted HTML or PDF format

[0219] Step 7: The device displays the test questions.

[0220] Terminal: Receives test questions in HTML or PDF format sent from the server.

[0221] Subsequently, the test questions are displayed on the user interface, allowing the user to view and answer them. Users can also print the displayed test questions.

[0222] Input: Test questions in HTML or PDF format sent from the server.

[0223] Output: Test questions displayed below the user

[0224] The above outlines the specific program processing flow of this system. The inputs and outputs at each step, as well as the data processing and calculations performed, are clearly shown.

[0225] (Application Example 1)

[0226] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."

[0227] Conventional learning systems offer the function of automatically generating test questions based on learned content, but their application has often been limited to specific fields. Furthermore, in industrial production sites, automatic generation of robot training programs based on work manuals and procedures is not performed, resulting in significant time and effort required for training. Therefore, there is a need to improve training efficiency by using automated generation systems in industrial production environments as a new application area.

[0228] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0229] In this invention, the server includes means for receiving text data of learning content, means for analyzing the received text data and extracting important keywords and phrases, means for generating test questions in multiple question formats based on the extracted information, means for receiving and analyzing operation procedure data for industrial production equipment and generating a training program, and means for providing the generated training program to the equipment. This enables not only the automatic generation of test questions based on learning content, but also the automatic generation of efficient robot training programs in an industrial production environment.

[0230] "Learning content text data" refers to written data used for education and training, which contains information that students or learners should understand.

[0231] "Analysis" is the process of breaking down received text data, understanding its structure and content, and extracting useful information.

[0232] "Keywords and phrases" refer to important words and expressions within text data that characterize the main point and important information of the text.

[0233] A "test question" is a set of questions or prompts designed to measure the level of understanding of the learned material, and it is something that students or learners are expected to answer.

[0234] "Industrial production equipment" refers to machinery and devices used in manufacturing sites such as factories, and is intended to automate or streamline production processes.

[0235] "Operating procedure data" refers to data that describes the specific usage and operation methods of industrial production equipment, explaining how to operate the equipment step by step.

[0236] A "training program" refers to a set of learning and training procedures and content designed to acquire specific skills or knowledge.

[0237] The system of this invention receives and analyzes text data of learning content and operating procedure data of industrial production equipment, and automatically generates test questions and training programs based on them. A specific embodiment for implementing this invention will now be described.

[0238] 1. Data entry and submission

[0239] User: Enters learning content or operating procedures as text data into a dedicated web form or application input field and clicks the submit button. This text data includes information learned by students or content explained by teachers in class if it is learning content, and specific operating procedures for industrial production equipment if it is operating procedures.

[0240] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This also includes the necessary user authentication information.

[0241] 2. Data reception and analysis

[0242] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it stores this data in the database and associates it with metadata such as the user ID.

[0243] Server: Analyzes stored text data using a natural language processing (NLP) engine. Analysis includes:

[0244] Tokenization: Dividing text into words or phrases.

[0245] Syntactic analysis: Understanding grammatical structure and identifying important keywords and phrases.

[0246] 3. Generation of test questions and training programs

[0247] Server: Generates test questions and training programs in different formats based on extracted keywords and phrases. Specifically, this includes the following steps:

[0248] Generating test questions:

[0249] The system generates test questions in various formats, including multiple-choice, written response, and fill-in-the-blank questions.

[0250] Training program generation:

[0251] Generate a robot training program based on the operating procedures and describe each step in detail.

[0252] 4. Provision of test questions and training programs

[0253] Server: Converts generated test questions and training programs into a user-friendly format. This conversion uses a template engine and can output in HTML or PDF format.

[0254] Terminal: Receives the provided test questions and training programs and displays them in the user interface. This allows the user to view, print, or use the generated content directly online.

[0255] Specific example

[0256] 1. User input:

[0257] User: Enters biology class notes or operating instructions for industrial production equipment into a web form.

[0258] example:

[0259] Biology class notes: "Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes do not have a nucleus, but eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus."

[0260] Operating instructions for industrial production equipment: "Robot arm operating procedure: 1. Turn on the robot's power. 2. Press the start button to initialize. 3. Enter the destination coordinates on the control panel. 4. Move the robot arm to the position for grasping the object. 5. Press the grasp button to grasp the object. 6. Move the robot arm to the designated location and place the object. 7. Press the finish button to complete the operation."

[0261] 2. Examples of prompts to input to the generative AI model:

[0262] "Create a new robot training program based on the operating procedures for the factory's robotic arm. The following is an example of the procedure manual:

[0263] 1. Turn on the robot's power.

[0264] 2. Press the Start button to perform initialization.

[0265] 3. Enter the destination coordinates on the control panel.

[0266] 4. Move the robot arm to position it to grasp the object.

[0267] 5. Press the button to grab an object and grab it.

[0268] 6. Move the robotic arm to the designated location and place the object.

[0269] 7. Press the finish button to complete the process.

[0270] Please generate the training program based on the steps above.

[0271] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0272] Step 1:

[0273] The user enters learning content or operating procedures for industrial production equipment as text data into an input field and clicks the submit button. Specifically, the user manually enters text into an input field in a web form or application, and the data is sent to the system.

[0274] Input: Text data (e.g., learning notes, operation manuals)

[0275] Output: Text data in JSON format, user authentication information

[0276] Step 2:

[0277] The terminal encodes the text data input by the user into JSON format and sends it to the server as an HTTP request. Specifically, encoding processing, generation, and sending of the HTTP request are performed.

[0278] Input: Text data, user authentication information

[0279] Output: HTTP request (JSON format data)

[0280] Step 3:

[0281] The server temporarily stores the text data received from the terminal in the cache area and then also stores it in the database and associates it with metadata such as user ID. Specifically, temporary data storage and database storage processing are performed.

[0282] Input: HTTP request (JSON format data)

[0283] Output: Temporary data in the cache area, saved data in the database

[0284] Step 4:

[0285] The server analyzes the saved text data using a natural language processing (NLP) engine. In this step, tokenization and syntax analysis are performed to extract important keywords and phrases. Specifically, analysis is performed using an NLP library (e.g., NLTK).

[0286] Input: Saved text data

[0287] Output: Extracted keywords and phrases

[0288] Step 5:

[0289] The server generates test questions and training programs in different formats based on extracted keywords and phrases. Specifically, it creates multiple-choice, written, and fill-in-the-blank test questions and generates robot training programs step-by-step based on the operating procedures.

[0290] Input: Extracted keywords or phrases

[0291] Output: Test questions, training program

[0292] Step 6:

[0293] The server converts the generated test questions and training programs into user-friendly formats (e.g., HTML, PDF) using a template engine. Specifically, it renders the generated content into a visually easy-to-read format.

[0294] Input: Test questions, training programs

[0295] Output: Test questions and training programs in HTML and PDF formats.

[0296] Step 7:

[0297] The terminal displays test questions and training programs received from the server on its user interface (UI). Specifically, it analyzes and processes the received data, displaying it in a format that the user can view and print.

[0298] Input: Test questions and training programs in HTML or PDF format.

[0299] Output: Display test questions and training programs for the user interface.

[0300] Examples of prompt texts for the generated AI model:

[0301] "Please create a new robot training program based on the operating procedures of the robot arm in the factory. The following is an example of the procedure manual:

[0302] 1. Turn on the power of the robot.

[0303] 2. Press the start button for initialization.

[0304] 3. Enter the coordinates of the destination on the operation panel.

[0305] 4. Move the robot arm to align it with the position to grasp the object.

[0306] 5. Press the button to grasp the object to grasp the object.

[0307] 6. Move the robot arm to the specified location and place the object.

[0308] 7. Press the end button to complete the work.

[0309] Please generate a training program based on the above procedure."

[0310] Furthermore, an emotion engine for estimating the user's emotion may be combined. That is, the specific processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform specific processing using the user's emotion.

[0311] Overview of the system

[0312] This invention is a system that receives and analyzes text data from learning notes and memos, automatically generates test questions based on that content, and further enhances learning effectiveness by combining it with an emotion engine that recognizes the user's emotions. This system aims to enable students and educators to efficiently create tests and provide flexible test questions that are tailored to the learner's emotions and motivation.

[0313] Program Description

[0314] 1. Data entry and submission

[0315] User: Enters text data based on learning content into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[0316] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. This includes the user authentication token and session information.

[0317] 2. Data reception and analysis

[0318] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[0319] Server: The stored text data is analyzed using a natural language processing (NLP) engine. Specifically, the text is tokenized, syntactic analysis is performed, and important keywords and phrases are extracted.

[0320] 3. Emotion recognition

[0321] User: To recognize emotions during learning, users are required to transmit facial expressions and voices through devices such as cameras and microphones.

[0322] Device: Uses facial recognition software and voice analysis software to analyze the user's emotions in real time.

[0323] Server: Receives emotional data sent from the terminal and uses an emotional engine to classify the emotional state. For example, it determines whether the user is stressed or relaxed.

[0324] 4. Generating Test Questions

[0325] Server: Based on extracted keywords and phrases, as well as recognized emotional states, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank).

[0326] Multiple-choice questions: Automatically generates questions and multiple answer choices based on keywords and phrases.

[0327] Descriptive questions: Create questions that require detailed answers.

[0328] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in sentences based on important keywords or phrases.

[0329] Difficulty Adjustment: The difficulty and format of the questions are adjusted according to the recognized emotional state. For example, if the user is feeling stressed, the system will start with easier questions.

[0330] 5. Provision of test questions

[0331] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[0332] Terminal: Receives the provided test questions and displays them in the user interface. Users can then view, print, or answer the generated test questions directly online.

[0333] Specific example

[0334] 1. User input

[0335] User: Enters biology class notes into a web form.

[0336] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0337] Terminal: Encode this text data into JSON format and send it to the server.

[0338] 2. Data reception and analysis

[0339] Server: Receives text data and stores it in the cache and database.

[0340] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[0341] 3. Emotion recognition

[0342] User: Uses camera and microphone to transmit real-time facial expressions and audio.

[0343] Terminal: Emotional state is analyzed using facial recognition software and voice analysis software.

[0344] Server: Receives emotion data and uses the emotion engine to determine the user's emotional state (e.g., stressed, relaxed).

[0345] 4. Generating Test Questions

[0346] Server: Generates the following test questions based on extracted keywords and sentiment states.

[0347] Multiple-choice questions:

[0348] Question: What are the differences between procaliotes and eukaryotes?

[0349] Options:

[0350] 1. Neither side possesses nuclear weapons.

[0351] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[0352] 3. Procaliotes have a nucleus, but eukaryotes do not.

[0353] 4. Both possess nuclear weapons.

[0354] Short answer questions:

[0355] Question: Please explain the role of DNA.

[0356] Fill-in-the-blank questions:

[0357] Text: Procaliotes have no nucleus, but _____ do.

[0358] Answer: eukaryotes

[0359] Difficulty adjustment: The system determined that the user was experiencing stress, so it will now start with basic questions.

[0360] 5. Provision of test questions

[0361] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[0362] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[0363] With the above configuration, this system can effectively and efficiently automatically generate test questions based on the learned content and provide tests that are tailored to the user's emotional state.

[0364] The following describes the processing flow.

[0365] Step 1:

[0366] User: Enters text data of learning notes and memos into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[0367] Step 2:

[0368] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. User authentication tokens and session information are also sent at this time.

[0369] Step 3:

[0370] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[0371] Step 4:

[0372] Server: The server analyzes the stored text data using a natural language processing (NLP) engine. Specifically, it tokenizes the text, performs syntactic analysis, and extracts important keywords and phrases. For example, it might extract keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[0373] Step 5:

[0374] User: Sends facial expressions and voices through devices such as cameras and microphones to recognize emotions during learning.

[0375] Step 6:

[0376] Terminal: Uses facial recognition and voice analysis software to analyze the user's emotions in real time. For example, it identifies stress, anxiety, and relaxation from the user's facial expressions. It also analyzes emotions from voice and performs similar identification.

[0377] Step 7:

[0378] Server: Receives emotional data sent from the terminal and uses an emotional engine to classify the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[0379] Step 8:

[0380] Server: Based on extracted keywords and phrases, as well as recognized emotional states, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank).

[0381] Multiple-choice questions: Automatically generate questions and multiple answer choices based on keywords and phrases. For example, it provides answer choices for the question, "What is the difference between procaliotes and eukaryotes?"

[0382] Descriptive questions: Create questions that require detailed answers. For example, generate a question such as, "Please explain the role of DNA."

[0383] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in a sentence based on important keywords or phrases. For example, generate a question like, "Procalioto does not have a nucleus, but _____ does."

[0384] Difficulty Adjustment: The difficulty and format of the questions are adjusted according to the perceived emotional state. For example, if the user is feeling stressed, the questions are started with relatively easy ones.

[0385] Step 9:

[0386] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[0387] Step 10:

[0388] Server: Stores the generated test questions in a database and associates them with the user ID. Then, encodes the test data in JSON format and creates an API response to send to the terminal.

[0389] Step 11:

[0390] Terminal: Interprets received test data and displays it appropriately within the user interface. Users can then review the generated test questions, print them, or answer them online.

[0391] This sequential processing step allows users to not only easily receive test questions generated from their learning content, but also to receive tests of appropriate difficulty that take their emotional state into account during the process. This makes it possible to maximize the learner's learning effectiveness.

[0392] (Example 2)

[0393] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".

[0394] Efficiently analyzing text data from learning materials and automatically generating test questions based on that data is a crucial challenge. Furthermore, maximizing learning effectiveness requires adjusting the difficulty and format of questions to consider the learner's emotional state. However, current systems lack the means to effectively address these challenges. This can increase the burden on learners and potentially decrease their motivation.

[0395] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0396] In this invention, the server includes means for receiving digital data of learning content, means for analyzing the received digital data and extracting important words and expressions, means for generating evaluation questions in multiple question formats based on the extracted information, means for providing the generated evaluation questions to the user, means for receiving emotional data from the user, and means for analyzing the received emotional data and adjusting the difficulty level and format of the evaluation questions based on the emotional state. This enables the efficient and automatic generation of test questions based on learning content and flexible question provision that takes into account the user's emotional state.

[0397] "Digital data of learning content" refers to the content that users have learned or the information that educators have provided in class, represented in digital format.

[0398] "Important words and expressions" are keywords and phrases that summarize or represent the learning content extracted from the text data.

[0399] "Assessment questions" are quizzes or test-style questions designed to measure the level of understanding of the learned material.

[0400] A "natural language processing engine" is a system that uses technology to analyze text data and understand its grammar and meaning.

[0401] "Emotional data" refers to data that indicates the user's emotional state, and is acquired through facial recognition and voice analysis.

[0402] An "emotion engine" is a system that analyzes received emotional data and classifies or determines the user's emotional state.

[0403] "Difficulty level" indicates the level of difficulty in answering an assessment question.

[0404] "Format" refers to the form or method in which the evaluation questions are presented, and includes types such as multiple-choice, written response, and fill-in-the-blank.

[0405] This invention is a system that receives and analyzes digital data of learning content, automatically generates assessment questions based on that content, and further enhances learning effectiveness by combining it with an emotion engine that recognizes the user's emotions. This system aims to enable students and educators to efficiently create assessment questions and provide flexible assessment questions that are tailored to the learner's emotions and motivation.

[0406] This system is primarily composed of three elements: servers, terminals, and users. Each of these elements will be explained in detail below.

[0407] 1. Data entry and submission

[0408] User: Enter the learning content into an input field in a specific web form or application and click the submit button. For example, enter text data like the following:

[0409] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0410] Terminal: Encodes the entered text data into JSON format, includes the user authentication token and session information, and sends it to the server via the HTTPS protocol.

[0411] 2. Data reception and analysis

[0412] Server: Receives digital data sent from terminals and temporarily stores it in a cache area. Then, it stores it in the database, associated with user IDs and session information. It also analyzes text data using a natural language processing (NLP) engine to extract important words and expressions.

[0413] 3. Emotion recognition

[0414] User: Uses a camera and microphone to send real-time facial expressions and audio to the system.

[0415] Device: Uses facial recognition software and voice analysis software to analyze the user's emotions in real time.

[0416] Server: Receives analyzed emotion data and uses an emotion engine to classify the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[0417] 4. Generating Test Questions

[0418] Server: Based on the extracted important words and phrases, as well as the recognized emotional states, it generates assessment questions in multiple question formats (multiple choice, written response, fill-in-the-blank). Specific examples are as follows:

[0419] Multiple-choice questions:

[0420] Question: What are the differences between procaliotes and eukaryotes?

[0421] Options:

[0422] 1. Neither side possesses nuclear weapons.

[0423] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[0424] 3. Procaliotes have a nucleus, but eukaryotes do not.

[0425] 4. Both possess nuclear weapons.

[0426] Short answer questions:

[0427] Question: Please explain the role of DNA.

[0428] Fill-in-the-blank questions:

[0429] Text: Procaliotes have no nucleus, but _____ do.

[0430] Answer: eukaryotes

[0431] Server: Also, adjust the difficulty level of the problems according to the user's emotional state. For example, if the user is feeling stressed, set it to start with easy problems.

[0432] 5. Provision of test questions

[0433] Server: Renders the generated assessment questions in HTML or PDF format and sends them to the user's terminal.

[0434] Terminal: Receives the provided assessment questions and displays them in the user interface. Users can view these questions, answer them online, or print them if necessary.

[0435] With the above configuration, this system effectively and efficiently generates assessment questions based on the learned content and can provide questions flexibly according to the user's emotional state. As a result, learning effectiveness is maximized, and it also contributes to improving the user's learning motivation.

[0436] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0437] Step 1: Enter and submit data

[0438] User: Enters learning content in text format into an input field of a specific web form or application and clicks the submit button. The input includes data such as the following:

[0439] Example input data:

[0440] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0441] Output: Text is sent to the input field.

[0442] Terminal: Encodes the entered text data into JSON format and sends it to the server via the HTTPS protocol, including the user authentication token and session information.

[0443] Input: User-entered text data, authentication token, and session information.

[0444] Output: Data encoded in JSON format.

[0445] Step 2: Receiving and saving data

[0446] Server: Receives digital data in JSON format sent from the terminal and temporarily stores it in the cache area. Then, it stores it in the database along with the user ID and session information.

[0447] Input: Digital data in JSON format sent from the device.

[0448] Output: Digital data stored in the cache and database.

[0449] Step 3: Analysis using a natural language processing engine

[0450] Server: The stored digital data is processed by a natural language processing (NLP) engine to analyze the text data. Specifically, the text is tokenized, syntactic analysis is performed, and important words and expressions are extracted.

[0451] Input: Text data stored in a cache or database.

[0452] Output: Extracted key words and phrases (e.g., "cell," "procalioto," "eukaryote," "nucleus," "DNA").

[0453] Step 4: Acquiring emotional data

[0454] User: To enable emotion recognition during training, the user sends real-time facial expressions and audio to the system using the camera and microphone.

[0455] Input: Real-time facial expression data and audio data.

[0456] Output: Facial expression data and audio data are sent to the terminal.

[0457] Step 5: Analyzing emotional data

[0458] Terminal: It analyzes received facial and voice data in real time using facial recognition software and voice analysis software to determine the user's emotional state.

[0459] Input: Facial expression data and audio data.

[0460] Output: Analyzed emotional state data (e.g., stressed state, relaxed state).

[0461] Step 6: Classification of emotional states

[0462] Server: Uses an emotion engine to receive emotional state data sent from the terminal and classifies the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[0463] Input: Analyzed emotional state data.

[0464] Output: Information on classified emotional states.

[0465] Step 7: Generating Test Questions

[0466] Server: Generates assessment questions in multiple question formats (multiple choice, open-ended, fill-in-the-blank) based on extracted key words and phrases, as well as recognized emotional states.

[0467] Input: Information on extracted words and phrases, and classified emotional states.

[0468] Output: The generated evaluation problem.

[0469] Specific example:

[0470] Multiple-choice questions:

[0471] Question: What are the differences between procaliotes and eukaryotes?

[0472] Options:

[0473] 1. Neither side possesses nuclear weapons.

[0474] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[0475] 3. Procaliotes have a nucleus, but eukaryotes do not.

[0476] 4. Both possess nuclear weapons.

[0477] Short answer questions:

[0478] Question: Please explain the role of DNA.

[0479] Fill-in-the-blank questions:

[0480] Text: Procaliotes have no nucleus, but _____ do.

[0481] Answer: eukaryotes

[0482] Step 8: Providing test questions

[0483] Server: Renders the generated assessment questions in HTML or PDF format and sends them to the user's terminal.

[0484] Input: Data for the generated assessment questions.

[0485] Output: Evaluation questions in HTML or PDF format.

[0486] Terminal: Receives the provided assessment questions and displays them in the user interface. Users can view, answer, and print these questions.

[0487] Input: Evaluation questions sent from the server.

[0488] Output: The evaluation question displayed in the user interface.

[0489] Through the steps described above, this system enables the automatic generation of assessment questions based on learned content and the flexible provision of questions that respond to the user's emotional state.

[0490] (Application Example 2)

[0491] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".

[0492] Conventional learning support systems have the problem of not fully realizing learning effectiveness because they generate test questions without considering the learner's emotional state. Furthermore, when conducting skills training in practical settings such as factories, it is difficult to provide flexible test questions that are tailored to the learner's situation. As a result, there is a need for learners to improve their skills efficiently without experiencing stress.

[0493] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0494] In this invention, the server includes means for receiving text data of learning content, means for analyzing the received text data and extracting important keywords and phrases, means for recognizing the user's emotions in real time, means for adjusting the difficulty and format of test questions based on the recognized emotional state, means for generating test questions in multiple question formats based on the extracted information, and means for providing the generated test questions to the user. This makes it possible to provide appropriate test questions according to the learner's emotional state, thereby reducing stress and improving learning effectiveness.

[0495] "Learning content" refers to text and audio data that shows information about the knowledge and skills that the user has learned.

[0496] "Text data" refers to string information used to represent learning content.

[0497] A "keyword" is a word or phrase that is considered particularly important within text data.

[0498] "Emotions" refer to information that indicates a user's psychological state, and are recognized from facial expressions, voice, and other similar cues.

[0499] "Real-time" means that data is acquired and processed instantly, and reflected to the user without delay.

[0500] "Difficulty level" is a measure that indicates the degree of difficulty required to answer a test question.

[0501] "Format" refers to the way test questions are presented and expressed, and includes multiple-choice, written, and fill-in-the-blank formats.

[0502] "Extraction" refers to the process of extracting specific items or features from text data or other information.

[0503] "Providing" refers to the act of displaying or communicating the generated test questions to the user via audio.

[0504] "Skills" refer to the knowledge and practical ability to perform specific operations and procedures required in practical work environments such as factories.

[0505] This invention is a system that receives and analyzes text data of learning content to generate test questions and recognizes the user's emotions in real time. Specifically, it is configured as follows.

[0506] 1. Data entry

[0507] Users input learning content into the system via voice or text, targeting factory staff and other personnel. This learning content includes specific details such as skills training and operating procedures within the factory.

[0508] The device uses speech recognition software (for example, Microsoft's Azure® Speech to Text) to convert voice data into text data.

[0509] 2. Sending data

[0510] The terminal encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. User authentication tokens and session information are also transmitted during this encoding and transmission process.

[0511] 3. Data reception and analysis

[0512] The server receives text data sent from the terminal and temporarily stores it in a cache area. At the same time, it also stores this data in a database and associates it with metadata such as the user ID.

[0513] The server analyzes the stored text data using a natural language processing (NLP) engine (for example, SpaCy or Hugging Face's Transformers). This analysis extracts important keywords and phrases.

[0514] 4. Emotion recognition

[0515] Users transmit facial expressions and sounds using devices such as cameras and microphones to recognize emotions during the learning process.

[0516] The device uses facial recognition software (e.g., OpenCV and Dlib) and speech analysis software (e.g., Google® Cloud Speech-to-Text) to analyze the user's emotions in real time.

[0517] The server receives emotional data sent from the terminal and uses an emotion engine to classify the emotional state. For example, it determines whether the user is stressed or relaxed.

[0518] 5. Generating Test Questions

[0519] The server generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank) based on extracted keywords and phrases, as well as recognized emotional states. The generated questions are dynamically created using a generative AI model.

[0520] The difficulty and format of the questions are adjusted according to the recognized emotional state. For example, if the user is feeling stressed, the system will start with easier questions.

[0521] 6. Provision of test questions

[0522] The server renders the generated test questions in HTML format and sends them to the terminal.

[0523] The terminal displays test questions on its user interface and provides them to the user through audio output and visual displays.

[0524] Specific example

[0525] 1. Example of a user prompt:

[0526] The following training was conducted: The robot should generate appropriate test questions.

[0527] Safety procedures used in factories

[0528] How to operate a specific machine

[0529] Raw material quality check procedure

[0530] This system significantly improves the quality of skills training within factories and can provide test questions of appropriate difficulty levels according to the learner's emotional state. This reduces stress and maximizes learning effectiveness.

[0531] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0532] Step 1:

[0533] Data entry

[0534] Users input learning content into the system via voice or text, targeting factory staff and other personnel. For voice input, the terminal uses speech recognition software, such as Microsoft Azure Speech to Text, to convert the voice data into text. The input data is temporarily stored in the terminal's memory. The input data includes specific details such as factory safety procedures and machine operation methods.

[0535] Step 2:

[0536] Sending data

[0537] The terminal encodes the input text data into JSON format. User authentication tokens and session information are added to the encoded JSON data, and it is sent to the server using the HTTPS protocol. This ensures that the input data is securely transferred to the server. This data is then used as input for subsequent parsing processes.

[0538] Step 3:

[0539] Receiving and storing data

[0540] The server receives text data sent from the terminal. The received data is temporarily stored in a cache area and then saved to the database. At the same time, metadata such as the user ID is associated with the data. This prepares the data for persistent storage and subsequent parsing.

[0541] Step 4:

[0542] Text data analysis

[0543] The server analyzes the stored text data using a natural language processing (NLP) engine. Specifically, it uses an NLP engine (for example, SpaCy or Hugging Face's Transformers) to tokenize the text data, perform syntactic analysis, and extract important keywords and phrases. The extracted information is used as input data for generating test questions.

[0544] Step 5:

[0545] emotion recognition

[0546] The user sends facial and audio data to the device using the camera and microphone to recognize emotions being learned. The device analyzes the user's emotions in real time using facial recognition software (e.g., OpenCV and Dlib) and speech analysis software (e.g., Google Cloud Speech-to-Text). The analysis results are sent to the server as emotion data. The server receives this emotion data and uses an emotion engine to classify the emotional state. For example, it can determine whether the user is stressed or relaxed.

[0547] Step 6:

[0548] Test question generation

[0549] The server uses a generative AI model to generate test questions in multiple question formats (multiple choice, written response, fill-in-the-blank) based on extracted keywords and phrases, as well as recognized emotional states. The difficulty and format of the questions are adjusted based on the emotional state. For example, if the user is stressed, the system will start with easier questions. The generated test questions are saved in JSON format.

[0550] Step 7:

[0551] Providing test questions

[0552] The server renders the generated test questions in HTML format and sends them to the terminal. The terminal displays the test questions on its user interface and provides them to the user through audio output and visual displays. The user can answer the displayed test questions. The answer data is sent back to the server and used to evaluate learning effectiveness and generate the next test questions.

[0553] Through the steps described above, this system can dynamically generate and provide users with appropriate test questions tailored to the learner's emotional state.

[0554] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0555] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0556] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.

[0557] [Second Embodiment]

[0558] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.

[0559] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0560] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0561] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.

[0562] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

[0563] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).

[0564] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[0565] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[0566] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0567] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0568] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0569] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".

[0570] System Overview

[0571] This invention is a system that receives and analyzes text data from learning notes and memos, and automatically generates test questions based on that content. It is used by students and educators to efficiently create tests and improve learning effectiveness.

[0572] Program Description

[0573] 1. Data entry and submission

[0574] User: Enters text data based on learning content into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[0575] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This also includes the necessary user authentication information.

[0576] 2. Data reception and analysis

[0577] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[0578] Server: The stored text data is analyzed using a natural language processing (NLP) engine. The analysis includes the following:

[0579] Tokenization: Dividing text into words or phrases.

[0580] Syntactic analysis: Understanding grammatical structure and identifying important keywords and phrases.

[0581] 3. Generating Test Questions

[0582] Server: Generates test questions in different formats based on extracted keywords and phrases.

[0583] Multiple-choice questions: Create questions based on specific keywords or phrases and generate answer choices. For example, generate questions such as "What is the difference between procaliotes and eukaryotes?" and provide multiple answers.

[0584] Descriptive questions: Create questions that require detailed explanations. For example, generate a question such as, "Please explain the role of DNA."

[0585] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in a sentence based on important keywords or phrases. For example, create a question in the format, "Procalioto does not have a nucleus, but _____ does."

[0586] 4. Provision of test questions

[0587] Server: Converts the generated test questions into a user-friendly format for distribution to users. This conversion uses a template engine and can output in HTML or PDF format.

[0588] Terminal: Receives the provided test questions and displays them in the user interface. This allows the user to view the generated test questions, print them, or answer them directly online.

[0589] Specific example

[0590] 1. User input

[0591] User: Enters biology class notes into a web form.

[0592] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0593] Terminal: Encode this text data into JSON format and send it to the server.

[0594] 2. Data reception and analysis

[0595] Server: Receives text data and stores it in the cache and database.

[0596] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[0597] 3. Generating Test Questions

[0598] Server: Generates the following test questions based on the extracted keywords.

[0599] Multiple-choice questions:

[0600] Question: What are the differences between procaliotes and eukaryotes?

[0601] Options:

[0602] 1. Neither side possesses nuclear weapons.

[0603] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[0604] 3. Procaliotes have a nucleus, but eukaryotes do not.

[0605] 4. Both possess nuclear weapons.

[0606] Short answer questions:

[0607] Question: Please explain the role of DNA.

[0608] Fill-in-the-blank questions:

[0609] Text: Procaliotes have no nucleus, but _____ do.

[0610] Answer: eukaryotes

[0611] 4. Provision of test questions

[0612] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[0613] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[0614] With the above configuration, this system can effectively and efficiently automatically generate and provide test questions based on the learning content to learners.

[0615] The following describes the processing flow.

[0616] Step 1:

[0617] User: Enter text data of learning notes and memos into a dedicated web form or application input field, and click the submit button.

[0618] Step 2:

[0619] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. This includes the user authentication token and session information.

[0620] Step 3:

[0621] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it stores this data in the database and associates it with metadata such as the user ID.

[0622] Step 4:

[0623] Server: The stored text data is analyzed using a natural language processing (NLP) engine. Specifically, the text is tokenized, syntactic analysis is performed, and important keywords and phrases are extracted.

[0624] Step 5:

[0625] Server: Based on extracted keywords and phrases, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank). For example, in the case of multiple choice questions, it automatically generates the question and multiple answer choices.

[0626] Step 6:

[0627] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[0628] Step 7:

[0629] Server: Stores the generated test questions in a database and associates them with the user ID. Then, encodes the test data in JSON format and creates an API response to send to the terminal.

[0630] Step 8:

[0631] Terminal: Interprets received test data and displays it appropriately within the user interface. Users can then review the generated test questions, print them, or answer them online.

[0632] This series of steps allows users to easily receive test questions generated from their learning content and effectively track their learning progress.

[0633] (Example 1)

[0634] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."

[0635] Receiving text data of learning content and generating effective test questions based on that data requires considerable time and effort using traditional methods. Furthermore, maintaining consistent quality in the generated test questions is difficult. Additionally, the process of providing test questions in a user-friendly format is cumbersome, placing a significant burden on educators and students alike.

[0636] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0637] In this invention, the server includes means for receiving text data of learning content, means for encoding and transmitting the received text data, means for analyzing the received text data and extracting important keywords and phrases, means for generating multiple-choice questions, written questions, and fill-in-the-blank questions based on the extracted information, and means for providing the generated test questions in HTML or PDF format. This enables the efficient and effective automatic generation and provision of test questions based on learning content.

[0638] "Learning content text data" refers to string data containing descriptions of learning content entered by students or educators.

[0639] "Means for receiving" refers to system components or modules that receive data transmitted from a terminal.

[0640] "Encoding" is the process of converting data into a specific format.

[0641] "Means of transmission" refer to system components or modules used to send encoded data to a receiving side, such as a server.

[0642] "Analyzing" is the process of breaking down data and understanding its structure and meaning.

[0643] A "keyword" is a word that is considered particularly important within a text.

[0644] A "phrase" is a meaningful sequence of words within a text.

[0645] A "multiple-choice question" is a test question in which you select the correct answer from a given list of options.

[0646] "Descriptive questions" are test questions that require test-takers to freely write detailed answers.

[0647] A "fill-in-the-blank question" is a type of test question that asks the user to complete an incomplete sentence.

[0648] "HTML format" is a markup language used to display web pages.

[0649] The "PDF format" is a standard format for viewing and printing documents.

[0650] "Means of provision" refer to system components and modules used to distribute generated data so that users can utilize it.

[0651] This invention is a system that receives and analyzes text data from learning notes and memos, and automatically generates test questions based on that content. This allows students and educators to create tests efficiently and improve learning effectiveness.

[0652] System Configuration

[0653] This system primarily consists of servers, terminals, and users. The specific components and their operation are described below.

[0654] Hardware and software to be used

[0655] Hardware: Servers, terminals

[0656] Software: Dedicated web forms or applications, natural language processing engines (e.g., SpaCy, NLTK), template engines (e.g., Jinja2, Handlebars)

[0657] Data entry and transmission

[0658] User: Enter text data based on the learning content into a dedicated web form or application input field and click the submit button. For example, enter biology class notes into the input field as follows:

[0659] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0660] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This JSON data also includes the necessary user authentication information.

[0661] Data reception and analysis

[0662] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores it in the database along with the metadata.

[0663] Server: The stored text data is analyzed using a natural language processing (NLP) engine. First, tokenization is performed, and then important keywords and phrases are extracted through syntactic analysis. For example, keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA" are extracted.

[0664] Test question generation

[0665] Server: Generates test questions in different formats based on extracted keywords and phrases.

[0666] Multiple-choice questions: For example, generate a question such as, "What is the difference between procaliotes and eukaryotes?" and provide multiple answer choices.

[0667] Descriptive questions: For example, generate a question such as, "Please explain the role of DNA."

[0668] Fill-in-the-blank questions: For example, generate questions of the form, "Procaliotes do not have a nucleus, but _____ do."

[0669] Providing test questions

[0670] Server: Converts generated test questions into a user-friendly format. Uses a template engine to output questions in HTML or PDF format.

[0671] Terminal: Receives the provided test questions and displays them in the user interface. Users can view the displayed test questions, print them, or answer them directly online.

[0672] Specific example

[0673] 1. User input

[0674] User: Enter your biology class notes into the web form as follows.

[0675] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0676] Terminal: Encode this text data into JSON format and send it to the server.

[0677] 2. Data reception and analysis

[0678] Server: Receives text data and stores it in the cache and database.

[0679] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[0680] 3. Generating Test Questions

[0681] Server: Generates the following test questions based on the extracted keywords.

[0682] Multiple-choice questions:

[0683] Question: What are the differences between procaliotes and eukaryotes?

[0684] Options:

[0685] 1. Neither side possesses nuclear weapons.

[0686] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[0687] 3. Procaliotes have a nucleus, but eukaryotes do not.

[0688] 4. Both possess nuclear weapons.

[0689] Short answer questions:

[0690] Question: Please explain the role of DNA.

[0691] Fill-in-the-blank questions:

[0692] Text: Procaliotes have no nucleus, but _____ do.

[0693] Answer: eukaryotes

[0694] 4. Provision of test questions

[0695] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[0696] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[0697] The above describes the embodiment for carrying out the invention. This system enables the automatic generation and provision of efficient and effective test questions based on the learned content.

[0698] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0699] Step 1: The user enters the text data for the learning content.

[0700] User: Enter learning content into a dedicated web form or application. As a specific example, enter the following into the input field from your biology class notes: "Cells are the basic units of living organisms. There are two main types: procaliotes and eukaryotes..."

[0701] Input: Text data containing learning content

[0702] Output: Input text data

[0703] Step 2: The terminal encodes and sends the text data.

[0704] Terminal: Encodes the entered text data into JSON format. Specifically, it generates JSON data like the following:

[0705] json

[0706] {

[0707] "userID": "12345",

[0708] "textData": "Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes..."

[0709] }

[0710] The encoded data is then sent to the server as an HTTP request.

[0711] Input: Text data of learning content entered by the user.

[0712] Output: Data encoded in JSON format and HTTP request

[0713] Step 3: The server receives and stores the text data.

[0714] Server: Receives JSON formatted data sent from the terminal. After receiving the data, it verifies the data content to check for any invalid data.

[0715] Afterward, the user ID and metadata are saved to the database, and also temporarily stored in the cache.

[0716] Input: JSON data sent from the device

[0717] Output: Validated text data and its metadata

[0718] Step 4: The server parses the text data.

[0719] Server: Analyzes stored text data using a natural language processing (NLP) engine. For example, it uses NLP libraries such as SpaCy or NLTK.

[0720] First, tokenization is performed to divide the text into words and phrases. Next, the grammatical structure is understood through syntactic analysis, and important keywords and phrases are identified. Specifically, keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA" are extracted.

[0721] Input: Saved text data

[0722] Output: Extracted keywords and phrases

[0723] Step 5: The server generates test questions.

[0724] Server: Generates test questions in different formats based on extracted keywords and phrases. Using a generation AI model, it generates questions in the following formats:

[0725] Multiple-choice question: Generates a question such as "What is the difference between procaliotes and eukaryotes?" along with multiple answer choices.

[0726] Descriptive question: Generate the question, "Please explain the role of DNA."

[0727] Fill-in-the-blank question: Generate the question "Procaliotes do not have a nucleus, but _____ do."

[0728] Input: Extracted keywords or phrases

[0729] Output: Set of generated test questions

[0730] Step 6: The server converts the test questions into the format provided.

[0731] Server: Renders the generated test questions in HTML or PDF format using a template engine (e.g., Jinja2, Handlebars).

[0732] Specifically, the template engine specifies the format and converts it into a user-friendly format. For example, it generates the following HTML template.

[0733] html

[0734] <h1> Biology test questions< / h1>

[0735] <h2> Multiple-choice questions< / h2>

[0736] What is the difference between procaliotes and eukaryotes?

[0737]

[0738] Neither side possesses nuclear weapons.

[0739] Procaliotes do not have a nucleus, but eukaryotes do.

[0740] Procaliotes have a nucleus, but eukaryotes do not.

[0741] Both possess nuclear weapons

[0742]

[0743] <h2> written questions< / h2>

[0744] Please explain the role of DNA.

[0745] <h2> Fill-in-the-blank questions< / h2>

[0746] Procalioto does not have a nucleus, <input type="text"> It has a nucleus.

[0747] Input: Generated test questions

[0748] Output: Test questions in formatted HTML or PDF format

[0749] Step 7: The device displays the test questions.

[0750] Terminal: Receives test questions in HTML or PDF format sent from the server.

[0751] Subsequently, the test questions are displayed on the user interface, allowing the user to view and answer them. Users can also print the displayed test questions.

[0752] Input: Test questions in HTML or PDF format sent from the server.

[0753] Output: Test questions displayed below the user

[0754] The above outlines the specific program processing flow of this system. The inputs and outputs at each step, as well as the data processing and calculations performed, are clearly shown.

[0755] (Application Example 1)

[0756] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."

[0757] Conventional learning systems offer the function of automatically generating test questions based on learned content, but their application has often been limited to specific fields. Furthermore, in industrial production sites, automatic generation of robot training programs based on work manuals and procedures is not performed, resulting in significant time and effort required for training. Therefore, there is a need to improve training efficiency by using automated generation systems in industrial production environments as a new application area.

[0758] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0759] In this invention, the server includes means for receiving text data of learning content, means for analyzing the received text data and extracting important keywords and phrases, means for generating test questions in multiple question formats based on the extracted information, means for receiving and analyzing operation procedure data for industrial production equipment and generating a training program, and means for providing the generated training program to the equipment. This enables not only the automatic generation of test questions based on learning content, but also the automatic generation of efficient robot training programs in an industrial production environment.

[0760] "Learning content text data" refers to written data used for education and training, which contains information that students or learners should understand.

[0761] "Analysis" is the process of breaking down received text data, understanding its structure and content, and extracting useful information.

[0762] "Keywords and phrases" refer to important words and expressions within text data that characterize the main point and important information of the text.

[0763] A "test question" is a set of questions or prompts designed to measure the level of understanding of the learned material, and it is something that students or learners are expected to answer.

[0764] "Industrial production equipment" refers to machinery and devices used in manufacturing sites such as factories, and is intended to automate or streamline production processes.

[0765] "Operating procedure data" refers to data that describes the specific usage and operation methods of industrial production equipment, explaining how to operate the equipment step by step.

[0766] A "training program" refers to a set of learning and training procedures and content designed to acquire specific skills or knowledge.

[0767] The system of this invention receives and analyzes text data of learning content and operating procedure data of industrial production equipment, and automatically generates test questions and training programs based on them. A specific embodiment for implementing this invention will now be described.

[0768] 1. Data entry and submission

[0769] User: Enters learning content or operating procedures as text data into a dedicated web form or application input field and clicks the submit button. This text data includes information learned by students or content explained by teachers in class if it is learning content, and specific operating procedures for industrial production equipment if it is operating procedures.

[0770] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This also includes the necessary user authentication information.

[0771] 2. Data reception and analysis

[0772] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it stores this data in the database and associates it with metadata such as the user ID.

[0773] Server: Analyzes stored text data using a natural language processing (NLP) engine. Analysis includes:

[0774] Tokenization: Dividing text into words or phrases.

[0775] Syntactic analysis: Understanding grammatical structure and identifying important keywords and phrases.

[0776] 3. Generation of test questions and training programs

[0777] Server: Generates test questions and training programs in different formats based on extracted keywords and phrases. Specifically, this includes the following steps:

[0778] Generating test questions:

[0779] The system generates test questions in various formats, including multiple-choice, written response, and fill-in-the-blank questions.

[0780] Training program generation:

[0781] Generate a robot training program based on the operating procedures and describe each step in detail.

[0782] 4. Provision of test questions and training programs

[0783] Server: Converts generated test questions and training programs into a user-friendly format. This conversion uses a template engine and can output in HTML or PDF format.

[0784] Terminal: Receives the provided test questions and training programs and displays them in the user interface. This allows the user to view, print, or use the generated content directly online.

[0785] Specific example

[0786] 1. User input:

[0787] User: Enters biology class notes or operating instructions for industrial production equipment into a web form.

[0788] example:

[0789] Biology class notes: "Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes do not have a nucleus, but eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus."

[0790] Operating instructions for industrial production equipment: "Robot arm operating procedure: 1. Turn on the robot's power. 2. Press the start button to initialize. 3. Enter the destination coordinates on the control panel. 4. Move the robot arm to the position for grasping the object. 5. Press the grasp button to grasp the object. 6. Move the robot arm to the designated location and place the object. 7. Press the finish button to complete the operation."

[0791] 2. Examples of prompts to input to the generative AI model:

[0792] "Create a new robot training program based on the operating procedures for the factory's robotic arm. The following is an example of the procedure manual:

[0793] 1. Turn on the robot's power.

[0794] 2. Press the Start button to perform initialization.

[0795] 3. Enter the destination coordinates on the control panel.

[0796] 4. Move the robot arm to position it to grasp the object.

[0797] 5. Press the button to grab an object and grab it.

[0798] 6. Move the robotic arm to the designated location and place the object.

[0799] 7. Press the finish button to complete the process.

[0800] Please generate the training program based on the steps above.

[0801] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0802] Step 1:

[0803] The user enters learning content or operating procedures for industrial production equipment as text data into an input field and clicks the submit button. Specifically, the user manually enters text into an input field in a web form or application, and the data is sent to the system.

[0804] Input: Text data (e.g., study notes, instruction manuals)

[0805] Output: Text data in JSON format, user authentication information

[0806] Step 2:

[0807] The terminal encodes the text data entered by the user into JSON format and sends it to the server as an HTTP request. Specifically, it performs the encoding process, generates the HTTP request, and sends it.

[0808] Input: Text data, user authentication information

[0809] Output: HTTP request (data in JSON format)

[0810] Step 3:

[0811] The server temporarily stores text data received from the terminal in a cache area, and then also stores it in the database and associates it with metadata such as the user ID. Specifically, it performs the process of temporarily storing data and then saving it to the database.

[0812] Input: HTTP request (data in JSON format)

[0813] Output: Temporary data to the cache area, data to be stored in the database

[0814] Step 4:

[0815] The server analyzes the stored text data using a natural language processing (NLP) engine. This step involves tokenization and syntactic analysis to extract important keywords and phrases. Specifically, it uses an NLP library (e.g., NLTK) for the analysis.

[0816] Input: Saved text data

[0817] Output: Extracted keywords and phrases

[0818] Step 5:

[0819] The server generates test questions and training programs in different formats based on extracted keywords and phrases. Specifically, it creates multiple-choice, written, and fill-in-the-blank test questions and generates robot training programs step-by-step based on the operating procedures.

[0820] Input: Extracted keywords or phrases

[0821] Output: Test questions, training program

[0822] Step 6:

[0823] The server converts the generated test questions and training programs into user-friendly formats (e.g., HTML, PDF) using a template engine. Specifically, it renders the generated content into a visually easy-to-read format.

[0824] Input: Test questions, training programs

[0825] Output: Test questions and training programs in HTML and PDF formats.

[0826] Step 7:

[0827] The terminal displays test questions and training programs received from the server on its user interface (UI). Specifically, it analyzes and processes the received data, displaying it in a format that the user can view and print.

[0828] Input: Test questions and training programs in HTML or PDF format.

[0829] Output: Display test questions and training programs for the user interface.

[0830] Example prompts for a generative AI model:

[0831] "Create a new robot training program based on the operating procedures for the factory's robotic arm. The following is an example of the procedure manual:

[0832] 1. Turn on the robot's power.

[0833] 2. Press the Start button to perform initialization.

[0834] 3. Enter the destination coordinates on the control panel.

[0835] 4. Move the robot arm to position it to grasp the object.

[0836] 5. Press the button to grab an object and grab it.

[0837] 6. Move the robotic arm to the designated location and place the object.

[0838] 7. Press the finish button to complete the process.

[0839] Please generate the training program based on the steps above.

[0840] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[0841] System Overview

[0842] This invention is a system that receives and analyzes text data from learning notes and memos, automatically generates test questions based on that content, and further enhances learning effectiveness by combining it with an emotion engine that recognizes the user's emotions. This system aims to enable students and educators to efficiently create tests and provide flexible test questions that are tailored to the learner's emotions and motivation.

[0843] Program Description

[0844] 1. Data entry and submission

[0845] User: Enters text data based on learning content into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[0846] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. This includes the user authentication token and session information.

[0847] 2. Data reception and analysis

[0848] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[0849] Server: The stored text data is analyzed using a natural language processing (NLP) engine. Specifically, the text is tokenized, syntactic analysis is performed, and important keywords and phrases are extracted.

[0850] 3. Emotion recognition

[0851] User: To recognize emotions during learning, users are required to transmit facial expressions and voices through devices such as cameras and microphones.

[0852] Device: Uses facial recognition software and voice analysis software to analyze the user's emotions in real time.

[0853] Server: Receives emotional data sent from the terminal and uses an emotional engine to classify the emotional state. For example, it determines whether the user is stressed or relaxed.

[0854] 4. Generating Test Questions

[0855] Server: Based on extracted keywords and phrases, as well as recognized emotional states, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank).

[0856] Multiple-choice questions: Automatically generates questions and multiple answer choices based on keywords and phrases.

[0857] Descriptive questions: Create questions that require detailed answers.

[0858] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in sentences based on important keywords or phrases.

[0859] Difficulty Adjustment: The difficulty and format of the questions are adjusted according to the recognized emotional state. For example, if the user is feeling stressed, the system will start with easier questions.

[0860] 5. Provision of test questions

[0861] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[0862] Terminal: Receives the provided test questions and displays them in the user interface. Users can then view, print, or answer the generated test questions directly online.

[0863] Specific example

[0864] 1. User input

[0865] User: Enters biology class notes into a web form.

[0866] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0867] Terminal: Encode this text data into JSON format and send it to the server.

[0868] 2. Data reception and analysis

[0869] Server: Receives text data and stores it in the cache and database.

[0870] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[0871] 3. Emotion recognition

[0872] User: Uses camera and microphone to transmit real-time facial expressions and audio.

[0873] Terminal: Emotional state is analyzed using facial recognition software and voice analysis software.

[0874] Server: Receives emotion data and uses the emotion engine to determine the user's emotional state (e.g., stressed, relaxed).

[0875] 4. Generating Test Questions

[0876] Server: Generates the following test questions based on extracted keywords and sentiment states.

[0877] Multiple-choice questions:

[0878] Question: What are the differences between procaliotes and eukaryotes?

[0879] Options:

[0880] 1. Neither side possesses nuclear weapons.

[0881] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[0882] 3. Procaliotes have a nucleus, but eukaryotes do not.

[0883] 4. Both possess nuclear weapons.

[0884] Short answer questions:

[0885] Question: Please explain the role of DNA.

[0886] Fill-in-the-blank questions:

[0887] Text: Procaliotes have no nucleus, but _____ do.

[0888] Answer: eukaryotes

[0889] Difficulty adjustment: The system determined that the user was experiencing stress, so it will now start with basic questions.

[0890] 5. Provision of test questions

[0891] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[0892] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[0893] With the above configuration, this system can effectively and efficiently automatically generate test questions based on the learned content and provide tests that are tailored to the user's emotional state.

[0894] The following describes the processing flow.

[0895] Step 1:

[0896] User: Enters text data of learning notes and memos into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[0897] Step 2:

[0898] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. User authentication tokens and session information are also sent at this time.

[0899] Step 3:

[0900] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[0901] Step 4:

[0902] Server: The server analyzes the stored text data using a natural language processing (NLP) engine. Specifically, it tokenizes the text, performs syntactic analysis, and extracts important keywords and phrases. For example, it might extract keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[0903] Step 5:

[0904] User: Sends facial expressions and voices through devices such as cameras and microphones to recognize emotions during learning.

[0905] Step 6:

[0906] Terminal: Uses facial recognition and voice analysis software to analyze the user's emotions in real time. For example, it identifies stress, anxiety, and relaxation from the user's facial expressions. It also analyzes emotions from voice and performs similar identification.

[0907] Step 7:

[0908] Server: Receives emotional data sent from the terminal and uses an emotional engine to classify the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[0909] Step 8:

[0910] Server: Based on extracted keywords and phrases, as well as recognized emotional states, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank).

[0911] Multiple-choice questions: Automatically generate questions and multiple answer choices based on keywords and phrases. For example, it provides answer choices for the question, "What is the difference between procaliotes and eukaryotes?"

[0912] Descriptive questions: Create questions that require detailed answers. For example, generate a question such as, "Please explain the role of DNA."

[0913] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in a sentence based on important keywords or phrases. For example, generate a question like, "Procalioto does not have a nucleus, but _____ does."

[0914] Difficulty Adjustment: The difficulty and format of the questions are adjusted according to the perceived emotional state. For example, if the user is feeling stressed, the questions are started with relatively easy ones.

[0915] Step 9:

[0916] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[0917] Step 10:

[0918] Server: Stores the generated test questions in a database and associates them with the user ID. Then, encodes the test data in JSON format and creates an API response to send to the terminal.

[0919] Step 11:

[0920] Terminal: Interprets received test data and displays it appropriately within the user interface. Users can then review the generated test questions, print them, or answer them online.

[0921] This sequential processing step allows users to not only easily receive test questions generated from their learning content, but also to receive tests of appropriate difficulty that take their emotional state into account during the process. This makes it possible to maximize the learner's learning effectiveness.

[0922] (Example 2)

[0923] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".

[0924] Efficiently analyzing text data from learning materials and automatically generating test questions based on that data is a crucial challenge. Furthermore, maximizing learning effectiveness requires adjusting the difficulty and format of questions to consider the learner's emotional state. However, current systems lack the means to effectively address these challenges. This can increase the burden on learners and potentially decrease their motivation.

[0925] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0926] In this invention, the server includes means for receiving digital data of learning content, means for analyzing the received digital data and extracting important words and expressions, means for generating evaluation questions in multiple question formats based on the extracted information, means for providing the generated evaluation questions to the user, means for receiving emotional data from the user, and means for analyzing the received emotional data and adjusting the difficulty level and format of the evaluation questions based on the emotional state. This enables the efficient and automatic generation of test questions based on learning content and flexible question provision that takes into account the user's emotional state.

[0927] "Digital data of learning content" refers to the content that users have learned or the information that educators have provided in class, represented in digital format.

[0928] "Important words and expressions" are keywords and phrases that summarize or represent the learning content extracted from the text data.

[0929] "Assessment questions" are quizzes or test-style questions designed to measure the level of understanding of the learned material.

[0930] A "natural language processing engine" is a system that uses technology to analyze text data and understand its grammar and meaning.

[0931] "Emotional data" refers to data that indicates the user's emotional state, and is acquired through facial recognition and voice analysis.

[0932] An "emotion engine" is a system that analyzes received emotional data and classifies or determines the user's emotional state.

[0933] "Difficulty level" indicates the level of difficulty in answering an assessment question.

[0934] "Format" refers to the form or method in which the evaluation questions are presented, and includes types such as multiple-choice, written response, and fill-in-the-blank.

[0935] This invention is a system that receives and analyzes digital data of learning content, automatically generates assessment questions based on that content, and further enhances learning effectiveness by combining it with an emotion engine that recognizes the user's emotions. This system aims to enable students and educators to efficiently create assessment questions and provide flexible assessment questions that are tailored to the learner's emotions and motivation.

[0936] This system is primarily composed of three elements: servers, terminals, and users. Each of these elements will be explained in detail below.

[0937] 1. Data entry and submission

[0938] User: Enter the learning content into an input field in a specific web form or application and click the submit button. For example, enter text data like the following:

[0939] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0940] Terminal: Encodes the entered text data into JSON format, includes the user authentication token and session information, and sends it to the server via the HTTPS protocol.

[0941] 2. Data reception and analysis

[0942] Server: Receives digital data sent from terminals and temporarily stores it in a cache area. Then, it stores it in the database, associated with user IDs and session information. It also analyzes text data using a natural language processing (NLP) engine to extract important words and expressions.

[0943] 3. Emotion recognition

[0944] User: Uses a camera and microphone to send real-time facial expressions and audio to the system.

[0945] Device: Uses facial recognition software and voice analysis software to analyze the user's emotions in real time.

[0946] Server: Receives analyzed emotion data and uses an emotion engine to classify the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[0947] 4. Generating Test Questions

[0948] Server: Based on the extracted important words and phrases, as well as the recognized emotional states, it generates assessment questions in multiple question formats (multiple choice, written response, fill-in-the-blank). Specific examples are as follows:

[0949] Multiple-choice questions:

[0950] Question: What are the differences between procaliotes and eukaryotes?

[0951] Options:

[0952] 1. Neither side possesses nuclear weapons.

[0953] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[0954] 3. Procaliotes have a nucleus, but eukaryotes do not.

[0955] 4. Both possess nuclear weapons.

[0956] Short answer questions:

[0957] Question: Please explain the role of DNA.

[0958] Fill-in-the-blank questions:

[0959] Text: Procaliotes have no nucleus, but _____ do.

[0960] Answer: eukaryotes

[0961] Server: Also, adjust the difficulty level of the problems according to the user's emotional state. For example, if the user is feeling stressed, set it to start with easy problems.

[0962] 5. Provision of test questions

[0963] Server: Renders the generated assessment questions in HTML or PDF format and sends them to the user's terminal.

[0964] Terminal: Receives the provided assessment questions and displays them in the user interface. Users can view these questions, answer them online, or print them if necessary.

[0965] With the above configuration, this system effectively and efficiently generates assessment questions based on the learned content and can provide questions flexibly according to the user's emotional state. As a result, learning effectiveness is maximized, and it also contributes to improving the user's learning motivation.

[0966] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0967] Step 1: Enter and submit data

[0968] User: Enters learning content in text format into an input field of a specific web form or application and clicks the submit button. The input includes data such as the following:

[0969] Example input data:

[0970] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[0971] Output: Text is sent to the input field.

[0972] Terminal: Encodes the entered text data into JSON format and sends it to the server via the HTTPS protocol, including the user authentication token and session information.

[0973] Input: User-entered text data, authentication token, and session information.

[0974] Output: Data encoded in JSON format.

[0975] Step 2: Receiving and saving data

[0976] Server: Receives digital data in JSON format sent from the terminal and temporarily stores it in the cache area. Then, it stores it in the database along with the user ID and session information.

[0977] Input: Digital data in JSON format sent from the device.

[0978] Output: Digital data stored in the cache and database.

[0979] Step 3: Analysis using a natural language processing engine

[0980] Server: The stored digital data is processed by a natural language processing (NLP) engine to analyze the text data. Specifically, the text is tokenized, syntactic analysis is performed, and important words and expressions are extracted.

[0981] Input: Text data stored in a cache or database.

[0982] Output: Extracted key words and phrases (e.g., "cell," "procalioto," "eukaryote," "nucleus," "DNA").

[0983] Step 4: Acquiring emotional data

[0984] User: To enable emotion recognition during training, the user sends real-time facial expressions and audio to the system using the camera and microphone.

[0985] Input: Real-time facial expression data and audio data.

[0986] Output: Facial expression data and audio data are sent to the terminal.

[0987] Step 5: Analyzing emotional data

[0988] Terminal: It analyzes received facial and voice data in real time using facial recognition software and voice analysis software to determine the user's emotional state.

[0989] Input: Facial expression data and audio data.

[0990] Output: Analyzed emotional state data (e.g., stressed state, relaxed state).

[0991] Step 6: Classification of emotional states

[0992] Server: Uses an emotion engine to receive emotional state data sent from the terminal and classifies the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[0993] Input: Analyzed emotional state data.

[0994] Output: Information on classified emotional states.

[0995] Step 7: Generating Test Questions

[0996] Server: Generates assessment questions in multiple question formats (multiple choice, open-ended, fill-in-the-blank) based on extracted key words and phrases, as well as recognized emotional states.

[0997] Input: Information on extracted words and phrases, and classified emotional states.

[0998] Output: The generated evaluation problem.

[0999] Specific example:

[1000] Multiple-choice questions:

[1001] Question: What are the differences between procaliotes and eukaryotes?

[1002] Options:

[1003] 1. Neither side possesses nuclear weapons.

[1004] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[1005] 3. Procaliotes have a nucleus, but eukaryotes do not.

[1006] 4. Both possess nuclear weapons.

[1007] Short answer questions:

[1008] Question: Please explain the role of DNA.

[1009] Fill-in-the-blank questions:

[1010] Text: Procaliotes have no nucleus, but _____ do.

[1011] Answer: eukaryotes

[1012] Step 8: Providing test questions

[1013] Server: Renders the generated assessment questions in HTML or PDF format and sends them to the user's terminal.

[1014] Input: Data for the generated assessment questions.

[1015] Output: Evaluation questions in HTML or PDF format.

[1016] Terminal: Receives the provided assessment questions and displays them in the user interface. Users can view, answer, and print these questions.

[1017] Input: Evaluation questions sent from the server.

[1018] Output: The evaluation question displayed in the user interface.

[1019] Through the steps described above, this system enables the automatic generation of assessment questions based on learned content and the flexible provision of questions that respond to the user's emotional state.

[1020] (Application Example 2)

[1021] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."

[1022] Conventional learning support systems have the problem of not fully realizing learning effectiveness because they generate test questions without considering the learner's emotional state. Furthermore, when conducting skills training in practical settings such as factories, it is difficult to provide flexible test questions that are tailored to the learner's situation. As a result, there is a need for learners to improve their skills efficiently without experiencing stress.

[1023] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[1024] In this invention, the server includes means for receiving text data of learning content, means for analyzing the received text data and extracting important keywords and phrases, means for recognizing the user's emotions in real time, means for adjusting the difficulty and format of test questions based on the recognized emotional state, means for generating test questions in multiple question formats based on the extracted information, and means for providing the generated test questions to the user. This makes it possible to provide appropriate test questions according to the learner's emotional state, thereby reducing stress and improving learning effectiveness.

[1025] "Learning content" refers to text and audio data that shows information about the knowledge and skills that the user has learned.

[1026] "Text data" refers to string information used to represent learning content.

[1027] A "keyword" is a word or phrase that is considered particularly important within text data.

[1028] "Emotions" refer to information that indicates a user's psychological state, and are recognized from facial expressions, voice, and other similar cues.

[1029] "Real-time" means that data is acquired and processed instantly, and reflected to the user without delay.

[1030] "Difficulty level" is a measure that indicates the degree of difficulty required to answer a test question.

[1031] "Format" refers to the way test questions are presented and expressed, and includes multiple-choice, written, and fill-in-the-blank formats.

[1032] "Extraction" refers to the process of extracting specific items or features from text data or other information.

[1033] "Providing" refers to the act of displaying or communicating the generated test questions to the user via audio.

[1034] "Skills" refer to the knowledge and practical ability to perform specific operations and procedures required in practical work environments such as factories.

[1035] This invention is a system that receives and analyzes text data of learning content to generate test questions and recognizes the user's emotions in real time. Specifically, it is configured as follows.

[1036] 1. Data entry

[1037] Users input learning content into the system via voice or text, targeting factory staff and other personnel. This learning content includes specific details such as skills training and operating procedures within the factory.

[1038] The device uses speech recognition software (for example, Microsoft's Azure Speech to Text) to convert the audio data into text data.

[1039] 2. Sending data

[1040] The terminal encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. User authentication tokens and session information are also transmitted during this encoding and transmission process.

[1041] 3. Data reception and analysis

[1042] The server receives text data sent from the terminal and temporarily stores it in a cache area. At the same time, it also stores this data in a database and associates it with metadata such as the user ID.

[1043] The server analyzes the stored text data using a natural language processing (NLP) engine (for example, SpaCy or Hugging Face's Transformers). This analysis extracts important keywords and phrases.

[1044] 4. Emotion recognition

[1045] Users transmit facial expressions and sounds using devices such as cameras and microphones to recognize emotions during the learning process.

[1046] The device uses facial recognition software (e.g., OpenCV and Dlib) and speech analysis software (e.g., Google Cloud Speech-to-Text) to analyze the user's emotions in real time.

[1047] The server receives emotional data sent from the terminal and uses an emotion engine to classify the emotional state. For example, it determines whether the user is stressed or relaxed.

[1048] 5. Generating Test Questions

[1049] The server generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank) based on extracted keywords and phrases, as well as recognized emotional states. The generated questions are dynamically created using a generative AI model.

[1050] The difficulty and format of the questions are adjusted according to the recognized emotional state. For example, if the user is feeling stressed, the system will start with easier questions.

[1051] 6. Provision of test questions

[1052] The server renders the generated test questions in HTML format and sends them to the terminal.

[1053] The terminal displays test questions on its user interface and provides them to the user through audio output and visual displays.

[1054] Specific example

[1055] 1. Example of a user prompt:

[1056] The following training was conducted: The robot should generate appropriate test questions.

[1057] Safety procedures used in factories

[1058] How to operate a specific machine

[1059] Raw material quality check procedure

[1060] This system significantly improves the quality of skills training within factories and can provide test questions of appropriate difficulty levels according to the learner's emotional state. This reduces stress and maximizes learning effectiveness.

[1061] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[1062] Step 1:

[1063] Data entry

[1064] Users input learning content into the system via voice or text, targeting factory staff and other personnel. For voice input, the terminal uses speech recognition software, such as Microsoft Azure Speech to Text, to convert the voice data into text. The input data is temporarily stored in the terminal's memory. The input data includes specific details such as factory safety procedures and machine operation methods.

[1065] Step 2:

[1066] Sending data

[1067] The terminal encodes the input text data into JSON format. User authentication tokens and session information are added to the encoded JSON data, and it is sent to the server using the HTTPS protocol. This ensures that the input data is securely transferred to the server. This data is then used as input for subsequent parsing processes.

[1068] Step 3:

[1069] Receiving and storing data

[1070] The server receives text data sent from the terminal. The received data is temporarily stored in a cache area and then saved to the database. At the same time, metadata such as the user ID is associated with the data. This prepares the data for persistent storage and subsequent parsing.

[1071] Step 4:

[1072] Text data analysis

[1073] The server analyzes the stored text data using a natural language processing (NLP) engine. Specifically, it uses an NLP engine (for example, SpaCy or Hugging Face's Transformers) to tokenize the text data, perform syntactic analysis, and extract important keywords and phrases. The extracted information is used as input data for generating test questions.

[1074] Step 5:

[1075] emotion recognition

[1076] The user sends facial and audio data to the device using the camera and microphone to recognize emotions being learned. The device analyzes the user's emotions in real time using facial recognition software (e.g., OpenCV and Dlib) and speech analysis software (e.g., Google Cloud Speech-to-Text). The analysis results are sent to the server as emotion data. The server receives this emotion data and uses an emotion engine to classify the emotional state. For example, it can determine whether the user is stressed or relaxed.

[1077] Step 6:

[1078] Test question generation

[1079] The server uses a generative AI model to generate test questions in multiple question formats (multiple choice, written response, fill-in-the-blank) based on extracted keywords and phrases, as well as recognized emotional states. The difficulty and format of the questions are adjusted based on the emotional state. For example, if the user is stressed, the system will start with easier questions. The generated test questions are saved in JSON format.

[1080] Step 7:

[1081] Providing test questions

[1082] The server renders the generated test questions in HTML format and sends them to the terminal. The terminal displays the test questions on its user interface and provides them to the user through audio output and visual displays. The user can answer the displayed test questions. The answer data is sent back to the server and used to evaluate learning effectiveness and generate the next test questions.

[1083] Through the steps described above, this system can dynamically generate and provide users with appropriate test questions tailored to the learner's emotional state.

[1084] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[1085] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1086] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.

[1087] [Third Embodiment]

[1088] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.

[1089] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.

[1090] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[1091] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.

[1092] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

[1093] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).

[1094] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[1095] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[1096] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[1097] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[1098] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[1099] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".

[1100] System Overview

[1101] This invention is a system that receives and analyzes text data from learning notes and memos, and automatically generates test questions based on that content. It is used by students and educators to efficiently create tests and improve learning effectiveness.

[1102] Program Description

[1103] 1. Data entry and submission

[1104] User: Enters text data based on learning content into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[1105] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This also includes the necessary user authentication information.

[1106] 2. Data reception and analysis

[1107] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[1108] Server: The stored text data is analyzed using a natural language processing (NLP) engine. The analysis includes the following:

[1109] Tokenization: Dividing text into words or phrases.

[1110] Syntactic analysis: Understanding grammatical structure and identifying important keywords and phrases.

[1111] 3. Generating Test Questions

[1112] Server: Generates test questions in different formats based on extracted keywords and phrases.

[1113] Multiple-choice questions: Create questions based on specific keywords or phrases and generate answer choices. For example, generate questions such as "What is the difference between procaliotes and eukaryotes?" and provide multiple answers.

[1114] Descriptive questions: Create questions that require detailed explanations. For example, generate a question such as, "Please explain the role of DNA."

[1115] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in a sentence based on important keywords or phrases. For example, create a question in the format, "Procalioto does not have a nucleus, but _____ does."

[1116] 4. Provision of test questions

[1117] Server: Converts the generated test questions into a user-friendly format for distribution to users. This conversion uses a template engine and can output in HTML or PDF format.

[1118] Terminal: Receives the provided test questions and displays them in the user interface. This allows the user to view the generated test questions, print them, or answer them directly online.

[1119] Specific example

[1120] 1. User input

[1121] User: Enters biology class notes into a web form.

[1122] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1123] Terminal: Encode this text data into JSON format and send it to the server.

[1124] 2. Data reception and analysis

[1125] Server: Receives text data and stores it in the cache and database.

[1126] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[1127] 3. Generating Test Questions

[1128] Server: Generates the following test questions based on the extracted keywords.

[1129] Multiple-choice questions:

[1130] Question: What are the differences between procaliotes and eukaryotes?

[1131] Options:

[1132] 1. Neither side possesses nuclear weapons.

[1133] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[1134] 3. Procaliotes have a nucleus, but eukaryotes do not.

[1135] 4. Both possess nuclear weapons.

[1136] Short answer questions:

[1137] Question: Please explain the role of DNA.

[1138] Fill-in-the-blank questions:

[1139] Text: Procaliotes have no nucleus, but _____ do.

[1140] Answer: eukaryotes

[1141] 4. Provision of test questions

[1142] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[1143] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[1144] With the above configuration, this system can effectively and efficiently automatically generate and provide test questions based on the learning content to learners.

[1145] The following describes the processing flow.

[1146] Step 1:

[1147] User: Enter text data of learning notes and memos into a dedicated web form or application input field, and click the submit button.

[1148] Step 2:

[1149] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. This includes the user authentication token and session information.

[1150] Step 3:

[1151] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it stores this data in the database and associates it with metadata such as the user ID.

[1152] Step 4:

[1153] Server: The stored text data is analyzed using a natural language processing (NLP) engine. Specifically, the text is tokenized, syntactic analysis is performed, and important keywords and phrases are extracted.

[1154] Step 5:

[1155] Server: Based on extracted keywords and phrases, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank). For example, in the case of multiple choice questions, it automatically generates the question and multiple answer choices.

[1156] Step 6:

[1157] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[1158] Step 7:

[1159] Server: Stores the generated test questions in a database and associates them with the user ID. Then, encodes the test data in JSON format and creates an API response to send to the terminal.

[1160] Step 8:

[1161] Terminal: Interprets received test data and displays it appropriately within the user interface. Users can then review the generated test questions, print them, or answer them online.

[1162] This series of steps allows users to easily receive test questions generated from their learning content and effectively track their learning progress.

[1163] (Example 1)

[1164] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."

[1165] Receiving text data of learning content and generating effective test questions based on that data requires considerable time and effort using traditional methods. Furthermore, maintaining consistent quality in the generated test questions is difficult. Additionally, the process of providing test questions in a user-friendly format is cumbersome, placing a significant burden on educators and students alike.

[1166] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[1167] In this invention, the server includes means for receiving text data of learning content, means for encoding and transmitting the received text data, means for analyzing the received text data and extracting important keywords and phrases, means for generating multiple-choice questions, written questions, and fill-in-the-blank questions based on the extracted information, and means for providing the generated test questions in HTML or PDF format. This enables the efficient and effective automatic generation and provision of test questions based on learning content.

[1168] "Learning content text data" refers to string data containing descriptions of learning content entered by students or educators.

[1169] "Means for receiving" refers to system components or modules that receive data transmitted from a terminal.

[1170] "Encoding" is the process of converting data into a specific format.

[1171] "Means of transmission" refer to system components or modules used to send encoded data to a receiving side, such as a server.

[1172] "Analyzing" is the process of breaking down data and understanding its structure and meaning.

[1173] A "keyword" is a word that is considered particularly important within a text.

[1174] A "phrase" is a meaningful sequence of words within a text.

[1175] A "multiple-choice question" is a test question in which you select the correct answer from a given list of options.

[1176] "Descriptive questions" are test questions that require test-takers to freely write detailed answers.

[1177] A "fill-in-the-blank question" is a type of test question that asks the user to complete an incomplete sentence.

[1178] "HTML format" is a markup language used to display web pages.

[1179] The "PDF format" is a standard format for viewing and printing documents.

[1180] "Means of provision" refer to system components and modules used to distribute generated data so that users can utilize it.

[1181] This invention is a system that receives and analyzes text data from learning notes and memos, and automatically generates test questions based on that content. This allows students and educators to create tests efficiently and improve learning effectiveness.

[1182] System Configuration

[1183] This system primarily consists of servers, terminals, and users. The specific components and their operation are described below.

[1184] Hardware and software to be used

[1185] Hardware: Servers, terminals

[1186] Software: Dedicated web forms or applications, natural language processing engines (e.g., SpaCy, NLTK), template engines (e.g., Jinja2, Handlebars)

[1187] Data entry and transmission

[1188] User: Enter text data based on the learning content into a dedicated web form or application input field and click the submit button. For example, enter biology class notes into the input field as follows:

[1189] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1190] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This JSON data also includes the necessary user authentication information.

[1191] Data reception and analysis

[1192] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores it in the database along with the metadata.

[1193] Server: The stored text data is analyzed using a natural language processing (NLP) engine. First, tokenization is performed, and then important keywords and phrases are extracted through syntactic analysis. For example, keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA" are extracted.

[1194] Test question generation

[1195] Server: Generates test questions in different formats based on extracted keywords and phrases.

[1196] Multiple-choice questions: For example, generate a question such as, "What is the difference between procaliotes and eukaryotes?" and provide multiple answer choices.

[1197] Descriptive questions: For example, generate a question such as, "Please explain the role of DNA."

[1198] Fill-in-the-blank questions: For example, generate questions of the form, "Procaliotes do not have a nucleus, but _____ do."

[1199] Providing test questions

[1200] Server: Converts generated test questions into a user-friendly format. Uses a template engine to output questions in HTML or PDF format.

[1201] Terminal: Receives the provided test questions and displays them in the user interface. Users can view the displayed test questions, print them, or answer them directly online.

[1202] Specific example

[1203] 1. User input

[1204] User: Enter your biology class notes into the web form as follows.

[1205] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1206] Terminal: Encode this text data into JSON format and send it to the server.

[1207] 2. Data reception and analysis

[1208] Server: Receives text data and stores it in the cache and database.

[1209] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[1210] 3. Generating Test Questions

[1211] Server: Generates the following test questions based on the extracted keywords.

[1212] Multiple-choice questions:

[1213] Question: What are the differences between procaliotes and eukaryotes?

[1214] Options:

[1215] 1. Neither side possesses nuclear weapons.

[1216] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[1217] 3. Procaliotes have a nucleus, but eukaryotes do not.

[1218] 4. Both possess nuclear weapons.

[1219] Short answer questions:

[1220] Question: Please explain the role of DNA.

[1221] Fill-in-the-blank questions:

[1222] Text: Procaliotes have no nucleus, but _____ do.

[1223] Answer: eukaryotes

[1224] 4. Provision of test questions

[1225] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[1226] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[1227] The above describes the embodiment for carrying out the invention. This system enables the automatic generation and provision of efficient and effective test questions based on the learned content.

[1228] The flow of the specific processing in Example 1 will be explained using Figure 11.

[1229] Step 1: The user enters the text data for the learning content.

[1230] User: Enter learning content into a dedicated web form or application. As a specific example, enter the following into the input field from your biology class notes: "Cells are the basic units of living organisms. There are two main types: procaliotes and eukaryotes..."

[1231] Input: Text data containing learning content

[1232] Output: Input text data

[1233] Step 2: The terminal encodes and sends the text data.

[1234] Terminal: Encodes the entered text data into JSON format. Specifically, it generates JSON data like the following:

[1235] json

[1236] {

[1237] "userID": "12345",

[1238] "textData": "Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes..."

[1239] }

[1240] The encoded data is then sent to the server as an HTTP request.

[1241] Input: Text data of learning content entered by the user.

[1242] Output: Data encoded in JSON format and HTTP request

[1243] Step 3: The server receives and stores the text data.

[1244] Server: Receives JSON formatted data sent from the terminal. After receiving the data, it verifies the data content to check for any invalid data.

[1245] Afterward, the user ID and metadata are saved to the database, and also temporarily stored in the cache.

[1246] Input: JSON data sent from the device

[1247] Output: Validated text data and its metadata

[1248] Step 4: The server parses the text data.

[1249] Server: Analyzes stored text data using a natural language processing (NLP) engine. For example, it uses NLP libraries such as SpaCy or NLTK.

[1250] First, tokenization is performed to divide the text into words and phrases. Next, the grammatical structure is understood through syntactic analysis, and important keywords and phrases are identified. Specifically, keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA" are extracted.

[1251] Input: Saved text data

[1252] Output: Extracted keywords and phrases

[1253] Step 5: The server generates test questions.

[1254] Server: Generates test questions in different formats based on extracted keywords and phrases. Using a generation AI model, it generates questions in the following formats:

[1255] Multiple-choice question: Generates a question such as "What is the difference between procaliotes and eukaryotes?" along with multiple answer choices.

[1256] Descriptive question: Generate the question, "Please explain the role of DNA."

[1257] Fill-in-the-blank question: Generate the question "Procaliotes do not have a nucleus, but _____ do."

[1258] Input: Extracted keywords or phrases

[1259] Output: Set of generated test questions

[1260] Step 6: The server converts the test questions into the format provided.

[1261] Server: Renders the generated test questions in HTML or PDF format using a template engine (e.g., Jinja2, Handlebars).

[1262] Specifically, the template engine specifies the format and converts it into a user-friendly format. For example, it generates the following HTML template.

[1263] html

[1264] <h1> Biology test questions< / h1>

[1265] <h2> Multiple-choice questions< / h2>

[1266] What is the difference between procaliotes and eukaryotes?

[1267]

[1268] Neither side possesses nuclear weapons.

[1269] Procaliotes do not have a nucleus, but eukaryotes do.

[1270] Procaliotes have a nucleus, but eukaryotes do not.

[1271] Both possess nuclear weapons

[1272]

[1273] <h2> written questions< / h2>

[1274] Please explain the role of DNA.

[1275] <h2> Fill-in-the-blank questions< / h2>

[1276] Procalioto does not have a nucleus, <input type="text"> It has a nucleus.

[1277] Input: Generated test questions

[1278] Output: Test questions in formatted HTML or PDF format

[1279] Step 7: The device displays the test questions.

[1280] Terminal: Receives test questions in HTML or PDF format sent from the server.

[1281] Subsequently, the test questions are displayed on the user interface, allowing the user to view and answer them. Users can also print the displayed test questions.

[1282] Input: Test questions in HTML or PDF format sent from the server.

[1283] Output: Test questions displayed below the user

[1284] The above outlines the specific program processing flow of this system. The inputs and outputs at each step, as well as the data processing and calculations performed, are clearly shown.

[1285] (Application Example 1)

[1286] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."

[1287] Conventional learning systems offer the function of automatically generating test questions based on learned content, but their application has often been limited to specific fields. Furthermore, in industrial production sites, automatic generation of robot training programs based on work manuals and procedures is not performed, resulting in significant time and effort required for training. Therefore, there is a need to improve training efficiency by using automated generation systems in industrial production environments as a new application area.

[1288] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[1289] In this invention, the server includes means for receiving text data of learning content, means for analyzing the received text data and extracting important keywords and phrases, means for generating test questions in multiple question formats based on the extracted information, means for receiving and analyzing operation procedure data for industrial production equipment and generating a training program, and means for providing the generated training program to the equipment. This enables not only the automatic generation of test questions based on learning content, but also the automatic generation of efficient robot training programs in an industrial production environment.

[1290] "Learning content text data" refers to written data used for education and training, which contains information that students or learners should understand.

[1291] "Analysis" is the process of breaking down received text data, understanding its structure and content, and extracting useful information.

[1292] "Keywords and phrases" refer to important words and expressions within text data that characterize the main point and important information of the text.

[1293] A "test question" is a set of questions or prompts designed to measure the level of understanding of the learned material, and it is something that students or learners are expected to answer.

[1294] "Industrial production equipment" refers to machinery and devices used in manufacturing sites such as factories, and is intended to automate or streamline production processes.

[1295] "Operating procedure data" refers to data that describes the specific usage and operation methods of industrial production equipment, explaining how to operate the equipment step by step.

[1296] A "training program" refers to a set of learning and training procedures and content designed to acquire specific skills or knowledge.

[1297] The system of this invention receives and analyzes text data of learning content and operating procedure data of industrial production equipment, and automatically generates test questions and training programs based on them. A specific embodiment for implementing this invention will now be described.

[1298] 1. Data entry and submission

[1299] User: Enters learning content or operating procedures as text data into a dedicated web form or application input field and clicks the submit button. This text data includes information learned by students or content explained by teachers in class if it is learning content, and specific operating procedures for industrial production equipment if it is operating procedures.

[1300] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This also includes the necessary user authentication information.

[1301] 2. Data reception and analysis

[1302] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it stores this data in the database and associates it with metadata such as the user ID.

[1303] Server: Analyzes stored text data using a natural language processing (NLP) engine. Analysis includes:

[1304] Tokenization: Dividing text into words or phrases.

[1305] Syntactic analysis: Understanding grammatical structure and identifying important keywords and phrases.

[1306] 3. Generation of test questions and training programs

[1307] Server: Generates test questions and training programs in different formats based on extracted keywords and phrases. Specifically, this includes the following steps:

[1308] Generating test questions:

[1309] The system generates test questions in various formats, including multiple-choice, written response, and fill-in-the-blank questions.

[1310] Training program generation:

[1311] Generate a robot training program based on the operating procedures and describe each step in detail.

[1312] 4. Provision of test questions and training programs

[1313] Server: Converts generated test questions and training programs into a user-friendly format. This conversion uses a template engine and can output in HTML or PDF format.

[1314] Terminal: Receives the provided test questions and training programs and displays them in the user interface. This allows the user to view, print, or use the generated content directly online.

[1315] Specific example

[1316] 1. User input:

[1317] User: Enters biology class notes or operating instructions for industrial production equipment into a web form.

[1318] example:

[1319] Biology class notes: "Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes do not have a nucleus, but eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus."

[1320] Operating instructions for industrial production equipment: "Robot arm operating procedure: 1. Turn on the robot's power. 2. Press the start button to initialize. 3. Enter the destination coordinates on the control panel. 4. Move the robot arm to the position for grasping the object. 5. Press the grasp button to grasp the object. 6. Move the robot arm to the designated location and place the object. 7. Press the finish button to complete the operation."

[1321] 2. Examples of prompts to input to the generative AI model:

[1322] "Create a new robot training program based on the operating procedures for the factory's robotic arm. The following is an example of the procedure manual:

[1323] 1. Turn on the robot's power.

[1324] 2. Press the Start button to perform initialization.

[1325] 3. Enter the destination coordinates on the control panel.

[1326] 4. Move the robot arm to position it to grasp the object.

[1327] 5. Press the button to grab an object and grab it.

[1328] 6. Move the robotic arm to the designated location and place the object.

[1329] 7. Press the finish button to complete the process.

[1330] Please generate the training program based on the steps above.

[1331] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[1332] Step 1:

[1333] The user enters learning content or operating procedures for industrial production equipment as text data into an input field and clicks the submit button. Specifically, the user manually enters text into an input field in a web form or application, and the data is sent to the system.

[1334] Input: Text data (e.g., study notes, instruction manuals)

[1335] Output: Text data in JSON format, user authentication information

[1336] Step 2:

[1337] The terminal encodes the text data entered by the user into JSON format and sends it to the server as an HTTP request. Specifically, it performs the encoding process, generates the HTTP request, and sends it.

[1338] Input: Text data, user authentication information

[1339] Output: HTTP request (data in JSON format)

[1340] Step 3:

[1341] The server temporarily stores text data received from the terminal in a cache area, and then also stores it in the database and associates it with metadata such as the user ID. Specifically, it performs the process of temporarily storing data and then saving it to the database.

[1342] Input: HTTP request (data in JSON format)

[1343] Output: Temporary data to the cache area, data to be stored in the database

[1344] Step 4:

[1345] The server analyzes the stored text data using a natural language processing (NLP) engine. This step involves tokenization and syntactic analysis to extract important keywords and phrases. Specifically, it uses an NLP library (e.g., NLTK) for the analysis.

[1346] Input: Saved text data

[1347] Output: Extracted keywords and phrases

[1348] Step 5:

[1349] The server generates test questions and training programs in different formats based on extracted keywords and phrases. Specifically, it creates multiple-choice, written, and fill-in-the-blank test questions and generates robot training programs step-by-step based on the operating procedures.

[1350] Input: Extracted keywords or phrases

[1351] Output: Test questions, training program

[1352] Step 6:

[1353] The server converts the generated test questions and training programs into user-friendly formats (e.g., HTML, PDF) using a template engine. Specifically, it renders the generated content into a visually easy-to-read format.

[1354] Input: Test questions, training programs

[1355] Output: Test questions and training programs in HTML and PDF formats.

[1356] Step 7:

[1357] The terminal displays test questions and training programs received from the server on its user interface (UI). Specifically, it analyzes and processes the received data, displaying it in a format that the user can view and print.

[1358] Input: Test questions and training programs in HTML or PDF format.

[1359] Output: Display test questions and training programs for the user interface.

[1360] Example prompts for a generative AI model:

[1361] "Create a new robot training program based on the operating procedures for the factory's robotic arm. The following is an example of the procedure manual:

[1362] 1. Turn on the robot's power.

[1363] 2. Press the Start button to perform initialization.

[1364] 3. Enter the destination coordinates on the control panel.

[1365] 4. Move the robot arm to position it to grasp the object.

[1366] 5. Press the button to grab an object and grab it.

[1367] 6. Move the robotic arm to the designated location and place the object.

[1368] 7. Press the finish button to complete the process.

[1369] Please generate the training program based on the steps above.

[1370] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[1371] System Overview

[1372] This invention is a system that receives and analyzes text data from learning notes and memos, automatically generates test questions based on that content, and further enhances learning effectiveness by combining it with an emotion engine that recognizes the user's emotions. This system aims to enable students and educators to efficiently create tests and provide flexible test questions that are tailored to the learner's emotions and motivation.

[1373] Program Description

[1374] 1. Data entry and submission

[1375] User: Enters text data based on learning content into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[1376] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. This includes the user authentication token and session information.

[1377] 2. Data reception and analysis

[1378] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[1379] Server: The stored text data is analyzed using a natural language processing (NLP) engine. Specifically, the text is tokenized, syntactic analysis is performed, and important keywords and phrases are extracted.

[1380] 3. Emotion recognition

[1381] User: To recognize emotions during learning, users are required to transmit facial expressions and voices through devices such as cameras and microphones.

[1382] Device: Uses facial recognition software and voice analysis software to analyze the user's emotions in real time.

[1383] Server: Receives emotional data sent from the terminal and uses an emotional engine to classify the emotional state. For example, it determines whether the user is stressed or relaxed.

[1384] 4. Generating Test Questions

[1385] Server: Based on extracted keywords and phrases, as well as recognized emotional states, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank).

[1386] Multiple-choice questions: Automatically generates questions and multiple answer choices based on keywords and phrases.

[1387] Descriptive questions: Create questions that require detailed answers.

[1388] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in sentences based on important keywords or phrases.

[1389] Difficulty Adjustment: The difficulty and format of the questions are adjusted according to the recognized emotional state. For example, if the user is feeling stressed, the system will start with easier questions.

[1390] 5. Provision of test questions

[1391] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[1392] Terminal: Receives the provided test questions and displays them in the user interface. Users can then view, print, or answer the generated test questions directly online.

[1393] Specific example

[1394] 1. User input

[1395] User: Enters biology class notes into a web form.

[1396] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1397] Terminal: Encode this text data into JSON format and send it to the server.

[1398] 2. Data reception and analysis

[1399] Server: Receives text data and stores it in the cache and database.

[1400] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[1401] 3. Emotion recognition

[1402] User: Uses camera and microphone to transmit real-time facial expressions and audio.

[1403] Terminal: Emotional state is analyzed using facial recognition software and voice analysis software.

[1404] Server: Receives emotion data and uses the emotion engine to determine the user's emotional state (e.g., stressed, relaxed).

[1405] 4. Generating Test Questions

[1406] Server: Generates the following test questions based on extracted keywords and sentiment states.

[1407] Multiple-choice questions:

[1408] Question: What are the differences between procaliotes and eukaryotes?

[1409] Options:

[1410] 1. Neither side possesses nuclear weapons.

[1411] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[1412] 3. Procaliotes have a nucleus, but eukaryotes do not.

[1413] 4. Both possess nuclear weapons.

[1414] Short answer questions:

[1415] Question: Please explain the role of DNA.

[1416] Fill-in-the-blank questions:

[1417] Text: Procaliotes have no nucleus, but _____ do.

[1418] Answer: eukaryotes

[1419] Difficulty adjustment: The system determined that the user was experiencing stress, so it will now start with basic questions.

[1420] 5. Provision of test questions

[1421] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[1422] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[1423] With the above configuration, this system can effectively and efficiently automatically generate test questions based on the learned content and provide tests that are tailored to the user's emotional state.

[1424] The following describes the processing flow.

[1425] Step 1:

[1426] User: Enters text data of learning notes and memos into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[1427] Step 2:

[1428] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. User authentication tokens and session information are also sent at this time.

[1429] Step 3:

[1430] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[1431] Step 4:

[1432] Server: The server analyzes the stored text data using a natural language processing (NLP) engine. Specifically, it tokenizes the text, performs syntactic analysis, and extracts important keywords and phrases. For example, it might extract keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[1433] Step 5:

[1434] User: Sends facial expressions and voices through devices such as cameras and microphones to recognize emotions during learning.

[1435] Step 6:

[1436] Terminal: Uses facial recognition and voice analysis software to analyze the user's emotions in real time. For example, it identifies stress, anxiety, and relaxation from the user's facial expressions. It also analyzes emotions from voice and performs similar identification.

[1437] Step 7:

[1438] Server: Receives emotional data sent from the terminal and uses an emotional engine to classify the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[1439] Step 8:

[1440] Server: Based on extracted keywords and phrases, as well as recognized emotional states, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank).

[1441] Multiple-choice questions: Automatically generate questions and multiple answer choices based on keywords and phrases. For example, it provides answer choices for the question, "What is the difference between procaliotes and eukaryotes?"

[1442] Descriptive questions: Create questions that require detailed answers. For example, generate a question such as, "Please explain the role of DNA."

[1443] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in a sentence based on important keywords or phrases. For example, generate a question like, "Procalioto does not have a nucleus, but _____ does."

[1444] Difficulty Adjustment: The difficulty and format of the questions are adjusted according to the perceived emotional state. For example, if the user is feeling stressed, the questions are started with relatively easy ones.

[1445] Step 9:

[1446] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[1447] Step 10:

[1448] Server: Stores the generated test questions in a database and associates them with the user ID. Then, encodes the test data in JSON format and creates an API response to send to the terminal.

[1449] Step 11:

[1450] Terminal: Interprets received test data and displays it appropriately within the user interface. Users can then review the generated test questions, print them, or answer them online.

[1451] This sequential processing step allows users to not only easily receive test questions generated from their learning content, but also to receive tests of appropriate difficulty that take their emotional state into account during the process. This makes it possible to maximize the learner's learning effectiveness.

[1452] (Example 2)

[1453] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."

[1454] Efficiently analyzing text data from learning materials and automatically generating test questions based on that data is a crucial challenge. Furthermore, maximizing learning effectiveness requires adjusting the difficulty and format of questions to consider the learner's emotional state. However, current systems lack the means to effectively address these challenges. This can increase the burden on learners and potentially decrease their motivation.

[1455] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[1456] In this invention, the server includes means for receiving digital data of learning content, means for analyzing the received digital data and extracting important words and expressions, means for generating evaluation questions in multiple question formats based on the extracted information, means for providing the generated evaluation questions to the user, means for receiving emotional data from the user, and means for analyzing the received emotional data and adjusting the difficulty level and format of the evaluation questions based on the emotional state. This enables the efficient and automatic generation of test questions based on learning content and flexible question provision that takes into account the user's emotional state.

[1457] "Digital data of learning content" refers to the content that users have learned or the information that educators have provided in class, represented in digital format.

[1458] "Important words and expressions" are keywords and phrases that summarize or represent the learning content extracted from the text data.

[1459] "Assessment questions" are quizzes or test-style questions designed to measure the level of understanding of the learned material.

[1460] A "natural language processing engine" is a system that uses technology to analyze text data and understand its grammar and meaning.

[1461] "Emotional data" refers to data that indicates the user's emotional state, and is acquired through facial recognition and voice analysis.

[1462] An "emotion engine" is a system that analyzes received emotional data and classifies or determines the user's emotional state.

[1463] "Difficulty level" indicates the level of difficulty in answering an assessment question.

[1464] "Format" refers to the form or method in which the evaluation questions are presented, and includes types such as multiple-choice, written response, and fill-in-the-blank.

[1465] This invention is a system that receives and analyzes digital data of learning content, automatically generates assessment questions based on that content, and further enhances learning effectiveness by combining it with an emotion engine that recognizes the user's emotions. This system aims to enable students and educators to efficiently create assessment questions and provide flexible assessment questions that are tailored to the learner's emotions and motivation.

[1466] This system is primarily composed of three elements: servers, terminals, and users. Each of these elements will be explained in detail below.

[1467] 1. Data entry and submission

[1468] User: Enter the learning content into an input field in a specific web form or application and click the submit button. For example, enter text data like the following:

[1469] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1470] Terminal: Encodes the entered text data into JSON format, includes the user authentication token and session information, and sends it to the server via the HTTPS protocol.

[1471] 2. Data reception and analysis

[1472] Server: Receives digital data sent from terminals and temporarily stores it in a cache area. Then, it stores it in the database, associated with user IDs and session information. It also analyzes text data using a natural language processing (NLP) engine to extract important words and expressions.

[1473] 3. Emotion recognition

[1474] User: Uses a camera and microphone to send real-time facial expressions and audio to the system.

[1475] Device: Uses facial recognition software and voice analysis software to analyze the user's emotions in real time.

[1476] Server: Receives analyzed emotion data and uses an emotion engine to classify the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[1477] 4. Generating Test Questions

[1478] Server: Based on the extracted important words and phrases, as well as the recognized emotional states, it generates assessment questions in multiple question formats (multiple choice, written response, fill-in-the-blank). Specific examples are as follows:

[1479] Multiple-choice questions:

[1480] Question: What are the differences between procaliotes and eukaryotes?

[1481] Options:

[1482] 1. Neither side possesses nuclear weapons.

[1483] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[1484] 3. Procaliotes have a nucleus, but eukaryotes do not.

[1485] 4. Both possess nuclear weapons.

[1486] Short answer questions:

[1487] Question: Please explain the role of DNA.

[1488] Fill-in-the-blank questions:

[1489] Text: Procaliotes have no nucleus, but _____ do.

[1490] Answer: eukaryotes

[1491] Server: Also, adjust the difficulty level of the problems according to the user's emotional state. For example, if the user is feeling stressed, set it to start with easy problems.

[1492] 5. Provision of test questions

[1493] Server: Renders the generated assessment questions in HTML or PDF format and sends them to the user's terminal.

[1494] Terminal: Receives the provided assessment questions and displays them in the user interface. Users can view these questions, answer them online, or print them if necessary.

[1495] With the above configuration, this system effectively and efficiently generates assessment questions based on the learned content and can provide questions flexibly according to the user's emotional state. As a result, learning effectiveness is maximized, and it also contributes to improving the user's learning motivation.

[1496] The flow of the specific processing in Example 2 will be explained using Figure 13.

[1497] Step 1: Enter and submit data

[1498] User: Enters learning content in text format into an input field of a specific web form or application and clicks the submit button. The input includes data such as the following:

[1499] Example input data:

[1500] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1501] Output: Text is sent to the input field.

[1502] Terminal: Encodes the entered text data into JSON format and sends it to the server via the HTTPS protocol, including the user authentication token and session information.

[1503] Input: User-entered text data, authentication token, and session information.

[1504] Output: Data encoded in JSON format.

[1505] Step 2: Receiving and saving data

[1506] Server: Receives digital data in JSON format sent from the terminal and temporarily stores it in the cache area. Then, it stores it in the database along with the user ID and session information.

[1507] Input: Digital data in JSON format sent from the device.

[1508] Output: Digital data stored in the cache and database.

[1509] Step 3: Analysis using a natural language processing engine

[1510] Server: The stored digital data is processed by a natural language processing (NLP) engine to analyze the text data. Specifically, the text is tokenized, syntactic analysis is performed, and important words and expressions are extracted.

[1511] Input: Text data stored in a cache or database.

[1512] Output: Extracted key words and phrases (e.g., "cell," "procalioto," "eukaryote," "nucleus," "DNA").

[1513] Step 4: Acquiring emotional data

[1514] User: To enable emotion recognition during training, the user sends real-time facial expressions and audio to the system using the camera and microphone.

[1515] Input: Real-time facial expression data and audio data.

[1516] Output: Facial expression data and audio data are sent to the terminal.

[1517] Step 5: Analyzing emotional data

[1518] Terminal: It analyzes received facial and voice data in real time using facial recognition software and voice analysis software to determine the user's emotional state.

[1519] Input: Facial expression data and audio data.

[1520] Output: Analyzed emotional state data (e.g., stressed state, relaxed state).

[1521] Step 6: Classification of emotional states

[1522] Server: Uses an emotion engine to receive emotional state data sent from the terminal and classifies the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[1523] Input: Analyzed emotional state data.

[1524] Output: Information on classified emotional states.

[1525] Step 7: Generating Test Questions

[1526] Server: Generates assessment questions in multiple question formats (multiple choice, open-ended, fill-in-the-blank) based on extracted key words and phrases, as well as recognized emotional states.

[1527] Input: Information on extracted words and phrases, and classified emotional states.

[1528] Output: The generated evaluation problem.

[1529] Specific example:

[1530] Multiple-choice questions:

[1531] Question: What are the differences between procaliotes and eukaryotes?

[1532] Options:

[1533] 1. Neither side possesses nuclear weapons.

[1534] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[1535] 3. Procaliotes have a nucleus, but eukaryotes do not.

[1536] 4. Both possess nuclear weapons.

[1537] Short answer questions:

[1538] Question: Please explain the role of DNA.

[1539] Fill-in-the-blank questions:

[1540] Text: Procaliotes have no nucleus, but _____ do.

[1541] Answer: eukaryotes

[1542] Step 8: Providing test questions

[1543] Server: Renders the generated assessment questions in HTML or PDF format and sends them to the user's terminal.

[1544] Input: Data for the generated assessment questions.

[1545] Output: Evaluation questions in HTML or PDF format.

[1546] Terminal: Receives the provided assessment questions and displays them in the user interface. Users can view, answer, and print these questions.

[1547] Input: Evaluation questions sent from the server.

[1548] Output: The evaluation question displayed in the user interface.

[1549] Through the steps described above, this system enables the automatic generation of assessment questions based on learned content and the flexible provision of questions that respond to the user's emotional state.

[1550] (Application Example 2)

[1551] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."

[1552] Conventional learning support systems have the problem of not fully realizing learning effectiveness because they generate test questions without considering the learner's emotional state. Furthermore, when conducting skills training in practical settings such as factories, it is difficult to provide flexible test questions that are tailored to the learner's situation. As a result, there is a need for learners to improve their skills efficiently without experiencing stress.

[1553] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[1554] In this invention, the server includes means for receiving text data of learning content, means for analyzing the received text data and extracting important keywords and phrases, means for recognizing the user's emotions in real time, means for adjusting the difficulty and format of test questions based on the recognized emotional state, means for generating test questions in multiple question formats based on the extracted information, and means for providing the generated test questions to the user. This makes it possible to provide appropriate test questions according to the learner's emotional state, thereby reducing stress and improving learning effectiveness.

[1555] "Learning content" refers to text and audio data that shows information about the knowledge and skills that the user has learned.

[1556] "Text data" refers to string information used to represent learning content.

[1557] A "keyword" is a word or phrase that is considered particularly important within text data.

[1558] "Emotions" refer to information that indicates a user's psychological state, and are recognized from facial expressions, voice, and other similar cues.

[1559] "Real-time" means that data is acquired and processed instantly, and reflected to the user without delay.

[1560] "Difficulty level" is a measure that indicates the degree of difficulty required to answer a test question.

[1561] "Format" refers to the way test questions are presented and expressed, and includes multiple-choice, written, and fill-in-the-blank formats.

[1562] "Extraction" refers to the process of extracting specific items or features from text data or other information.

[1563] "Providing" refers to the act of displaying or communicating the generated test questions to the user via audio.

[1564] "Skills" refer to the knowledge and practical ability to perform specific operations and procedures required in practical work environments such as factories.

[1565] This invention is a system that receives and analyzes text data of learning content to generate test questions and recognizes the user's emotions in real time. Specifically, it is configured as follows.

[1566] 1. Data entry

[1567] Users input learning content into the system via voice or text, targeting factory staff and other personnel. This learning content includes specific details such as skills training and operating procedures within the factory.

[1568] The device uses speech recognition software (for example, Microsoft's Azure Speech to Text) to convert the audio data into text data.

[1569] 2. Sending data

[1570] The terminal encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. User authentication tokens and session information are also transmitted during this encoding and transmission process.

[1571] 3. Data reception and analysis

[1572] The server receives text data sent from the terminal and temporarily stores it in a cache area. At the same time, it also stores this data in a database and associates it with metadata such as the user ID.

[1573] The server analyzes the stored text data using a natural language processing (NLP) engine (for example, SpaCy or Hugging Face's Transformers). This analysis extracts important keywords and phrases.

[1574] 4. Emotion recognition

[1575] Users transmit facial expressions and sounds using devices such as cameras and microphones to recognize emotions during the learning process.

[1576] The device uses facial recognition software (e.g., OpenCV and Dlib) and speech analysis software (e.g., Google Cloud Speech-to-Text) to analyze the user's emotions in real time.

[1577] The server receives emotional data sent from the terminal and uses an emotion engine to classify the emotional state. For example, it determines whether the user is stressed or relaxed.

[1578] 5. Generating Test Questions

[1579] The server generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank) based on extracted keywords and phrases, as well as recognized emotional states. The generated questions are dynamically created using a generative AI model.

[1580] The difficulty and format of the questions are adjusted according to the recognized emotional state. For example, if the user is feeling stressed, the system will start with easier questions.

[1581] 6. Provision of test questions

[1582] The server renders the generated test questions in HTML format and sends them to the terminal.

[1583] The terminal displays test questions on its user interface and provides them to the user through audio output and visual displays.

[1584] Specific example

[1585] 1. Example of a user prompt:

[1586] The following training was conducted: The robot should generate appropriate test questions.

[1587] Safety procedures used in factories

[1588] How to operate a specific machine

[1589] Raw material quality check procedure

[1590] This system significantly improves the quality of skills training within factories and can provide test questions of appropriate difficulty levels according to the learner's emotional state. This reduces stress and maximizes learning effectiveness.

[1591] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[1592] Step 1:

[1593] Data entry

[1594] Users input learning content into the system via voice or text, targeting factory staff and other personnel. For voice input, the terminal uses speech recognition software, such as Microsoft Azure Speech to Text, to convert the voice data into text. The input data is temporarily stored in the terminal's memory. The input data includes specific details such as factory safety procedures and machine operation methods.

[1595] Step 2:

[1596] Sending data

[1597] The terminal encodes the input text data into JSON format. User authentication tokens and session information are added to the encoded JSON data, and it is sent to the server using the HTTPS protocol. This ensures that the input data is securely transferred to the server. This data is then used as input for subsequent parsing processes.

[1598] Step 3:

[1599] Receiving and storing data

[1600] The server receives text data sent from the terminal. The received data is temporarily stored in a cache area and then saved to the database. At the same time, metadata such as the user ID is associated with the data. This prepares the data for persistent storage and subsequent parsing.

[1601] Step 4:

[1602] Text data analysis

[1603] The server analyzes the stored text data using a natural language processing (NLP) engine. Specifically, it uses an NLP engine (for example, SpaCy or Hugging Face's Transformers) to tokenize the text data, perform syntactic analysis, and extract important keywords and phrases. The extracted information is used as input data for generating test questions.

[1604] Step 5:

[1605] emotion recognition

[1606] The user sends facial and audio data to the device using the camera and microphone to recognize emotions being learned. The device analyzes the user's emotions in real time using facial recognition software (e.g., OpenCV and Dlib) and speech analysis software (e.g., Google Cloud Speech-to-Text). The analysis results are sent to the server as emotion data. The server receives this emotion data and uses an emotion engine to classify the emotional state. For example, it can determine whether the user is stressed or relaxed.

[1607] Step 6:

[1608] Test question generation

[1609] The server uses a generative AI model to generate test questions in multiple question formats (multiple choice, written response, fill-in-the-blank) based on extracted keywords and phrases, as well as recognized emotional states. The difficulty and format of the questions are adjusted based on the emotional state. For example, if the user is stressed, the system will start with easier questions. The generated test questions are saved in JSON format.

[1610] Step 7:

[1611] Providing test questions

[1612] The server renders the generated test questions in HTML format and sends them to the terminal. The terminal displays the test questions on its user interface and provides them to the user through audio output and visual displays. The user can answer the displayed test questions. The answer data is sent back to the server and used to evaluate learning effectiveness and generate the next test questions.

[1613] Through the steps described above, this system can dynamically generate and provide users with appropriate test questions tailored to the learner's emotional state.

[1614] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[1615] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1616] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.

[1617] [Fourth Embodiment]

[1618] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.

[1619] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

[1620] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[1621] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.

[1622] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

[1623] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).

[1624] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[1625] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.

[1626] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[1627] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[1628] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[1629] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[1630] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1631] System Overview

[1632] This invention is a system that receives and analyzes text data from learning notes and memos, and automatically generates test questions based on that content. It is used by students and educators to efficiently create tests and improve learning effectiveness.

[1633] Program Description

[1634] 1. Data entry and submission

[1635] User: Enters text data based on learning content into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[1636] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This also includes the necessary user authentication information.

[1637] 2. Data reception and analysis

[1638] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[1639] Server: The stored text data is analyzed using a natural language processing (NLP) engine. The analysis includes the following:

[1640] Tokenization: Dividing text into words or phrases.

[1641] Syntactic analysis: Understanding grammatical structure and identifying important keywords and phrases.

[1642] 3. Generating Test Questions

[1643] Server: Generates test questions in different formats based on extracted keywords and phrases.

[1644] Multiple-choice questions: Create questions based on specific keywords or phrases and generate answer choices. For example, generate questions such as "What is the difference between procaliotes and eukaryotes?" and provide multiple answers.

[1645] Descriptive questions: Create questions that require detailed explanations. For example, generate a question such as, "Please explain the role of DNA."

[1646] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in a sentence based on important keywords or phrases. For example, create a question in the format, "Procalioto does not have a nucleus, but _____ does."

[1647] 4. Provision of test questions

[1648] Server: Converts the generated test questions into a user-friendly format for distribution to users. This conversion uses a template engine and can output in HTML or PDF format.

[1649] Terminal: Receives the provided test questions and displays them in the user interface. This allows the user to view the generated test questions, print them, or answer them directly online.

[1650] Specific example

[1651] 1. User input

[1652] User: Enters biology class notes into a web form.

[1653] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1654] Terminal: Encode this text data into JSON format and send it to the server.

[1655] 2. Data reception and analysis

[1656] Server: Receives text data and stores it in the cache and database.

[1657] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[1658] 3. Generating Test Questions

[1659] Server: Generates the following test questions based on the extracted keywords.

[1660] Multiple-choice questions:

[1661] Question: What are the differences between procaliotes and eukaryotes?

[1662] Options:

[1663] 1. Neither side possesses nuclear weapons.

[1664] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[1665] 3. Procaliotes have a nucleus, but eukaryotes do not.

[1666] 4. Both possess nuclear weapons.

[1667] Short answer questions:

[1668] Question: Please explain the role of DNA.

[1669] Fill-in-the-blank questions:

[1670] Text: Procaliotes have no nucleus, but _____ do.

[1671] Answer: eukaryotes

[1672] 4. Provision of test questions

[1673] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[1674] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[1675] With the above configuration, this system can effectively and efficiently automatically generate and provide test questions based on the learning content to learners.

[1676] The following describes the processing flow.

[1677] Step 1:

[1678] User: Enter text data of learning notes and memos into a dedicated web form or application input field, and click the submit button.

[1679] Step 2:

[1680] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. This includes the user authentication token and session information.

[1681] Step 3:

[1682] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it stores this data in the database and associates it with metadata such as the user ID.

[1683] Step 4:

[1684] Server: The stored text data is analyzed using a natural language processing (NLP) engine. Specifically, the text is tokenized, syntactic analysis is performed, and important keywords and phrases are extracted.

[1685] Step 5:

[1686] Server: Based on extracted keywords and phrases, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank). For example, in the case of multiple choice questions, it automatically generates the question and multiple answer choices.

[1687] Step 6:

[1688] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[1689] Step 7:

[1690] Server: Stores the generated test questions in a database and associates them with the user ID. Then, encodes the test data in JSON format and creates an API response to send to the terminal.

[1691] Step 8:

[1692] Terminal: Interprets received test data and displays it appropriately within the user interface. Users can then review the generated test questions, print them, or answer them online.

[1693] This series of steps allows users to easily receive test questions generated from their learning content and effectively track their learning progress.

[1694] (Example 1)

[1695] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1696] Receiving text data of learning content and generating effective test questions based on that data requires considerable time and effort using traditional methods. Furthermore, maintaining consistent quality in the generated test questions is difficult. Additionally, the process of providing test questions in a user-friendly format is cumbersome, placing a significant burden on educators and students alike.

[1697] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[1698] In this invention, the server includes means for receiving text data of learning content, means for encoding and transmitting the received text data, means for analyzing the received text data and extracting important keywords and phrases, means for generating multiple-choice questions, written questions, and fill-in-the-blank questions based on the extracted information, and means for providing the generated test questions in HTML or PDF format. This enables the efficient and effective automatic generation and provision of test questions based on learning content.

[1699] "Learning content text data" refers to string data containing descriptions of learning content entered by students or educators.

[1700] "Means for receiving" refers to system components or modules that receive data transmitted from a terminal.

[1701] "Encoding" is the process of converting data into a specific format.

[1702] "Means of transmission" refer to system components or modules used to send encoded data to a receiving side, such as a server.

[1703] "Analyzing" is the process of breaking down data and understanding its structure and meaning.

[1704] A "keyword" is a word that is considered particularly important within a text.

[1705] A "phrase" is a meaningful sequence of words within a text.

[1706] A "multiple-choice question" is a test question in which you select the correct answer from a given list of options.

[1707] "Descriptive questions" are test questions that require test-takers to freely write detailed answers.

[1708] A "fill-in-the-blank question" is a type of test question that asks the user to complete an incomplete sentence.

[1709] "HTML format" is a markup language used to display web pages.

[1710] The "PDF format" is a standard format for viewing and printing documents.

[1711] "Means of provision" refer to system components and modules used to distribute generated data so that users can utilize it.

[1712] This invention is a system that receives and analyzes text data from learning notes and memos, and automatically generates test questions based on that content. This allows students and educators to create tests efficiently and improve learning effectiveness.

[1713] System Configuration

[1714] This system primarily consists of servers, terminals, and users. The specific components and their operation are described below.

[1715] Hardware and software to be used

[1716] Hardware: Servers, terminals

[1717] Software: Dedicated web forms or applications, natural language processing engines (e.g., SpaCy, NLTK), template engines (e.g., Jinja2, Handlebars)

[1718] Data entry and transmission

[1719] User: Enter text data based on the learning content into a dedicated web form or application input field and click the submit button. For example, enter biology class notes into the input field as follows:

[1720] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1721] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This JSON data also includes the necessary user authentication information.

[1722] Data reception and analysis

[1723] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores it in the database along with the metadata.

[1724] Server: The stored text data is analyzed using a natural language processing (NLP) engine. First, tokenization is performed, and then important keywords and phrases are extracted through syntactic analysis. For example, keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA" are extracted.

[1725] Test question generation

[1726] Server: Generates test questions in different formats based on extracted keywords and phrases.

[1727] Multiple-choice questions: For example, generate a question such as, "What is the difference between procaliotes and eukaryotes?" and provide multiple answer choices.

[1728] Descriptive questions: For example, generate a question such as, "Please explain the role of DNA."

[1729] Fill-in-the-blank questions: For example, generate questions of the form, "Procaliotes do not have a nucleus, but _____ do."

[1730] Providing test questions

[1731] Server: Converts generated test questions into a user-friendly format. Uses a template engine to output questions in HTML or PDF format.

[1732] Terminal: Receives the provided test questions and displays them in the user interface. Users can view the displayed test questions, print them, or answer them directly online.

[1733] Specific example

[1734] 1. User input

[1735] User: Enter your biology class notes into the web form as follows.

[1736] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1737] Terminal: Encode this text data into JSON format and send it to the server.

[1738] 2. Data reception and analysis

[1739] Server: Receives text data and stores it in the cache and database.

[1740] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[1741] 3. Generating Test Questions

[1742] Server: Generates the following test questions based on the extracted keywords.

[1743] Multiple-choice questions:

[1744] Question: What are the differences between procaliotes and eukaryotes?

[1745] Options:

[1746] 1. Neither side possesses nuclear weapons.

[1747] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[1748] 3. Procaliotes have a nucleus, but eukaryotes do not.

[1749] 4. Both possess nuclear weapons.

[1750] Short answer questions:

[1751] Question: Please explain the role of DNA.

[1752] Fill-in-the-blank questions:

[1753] Text: Procaliotes have no nucleus, but _____ do.

[1754] Answer: eukaryotes

[1755] 4. Provision of test questions

[1756] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[1757] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[1758] The above describes the embodiment for carrying out the invention. This system enables the automatic generation and provision of efficient and effective test questions based on the learned content.

[1759] The flow of the specific processing in Example 1 will be explained using Figure 11.

[1760] Step 1: The user enters the text data for the learning content.

[1761] User: Enter learning content into a dedicated web form or application. As a specific example, enter the following into the input field from your biology class notes: "Cells are the basic units of living organisms. There are two main types: procaliotes and eukaryotes..."

[1762] Input: Text data containing learning content

[1763] Output: Input text data

[1764] Step 2: The terminal encodes and sends the text data.

[1765] Terminal: Encodes the entered text data into JSON format. Specifically, it generates JSON data like the following:

[1766] json

[1767] {

[1768] "userID": "12345",

[1769] "textData": "Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes..."

[1770] }

[1771] The encoded data is then sent to the server as an HTTP request.

[1772] Input: Text data of learning content entered by the user.

[1773] Output: Data encoded in JSON format and HTTP request

[1774] Step 3: The server receives and stores the text data.

[1775] Server: Receives JSON formatted data sent from the terminal. After receiving the data, it verifies the data content to check for any invalid data.

[1776] Afterward, the user ID and metadata are saved to the database, and also temporarily stored in the cache.

[1777] Input: JSON data sent from the device

[1778] Output: Validated text data and its metadata

[1779] Step 4: The server parses the text data.

[1780] Server: Analyzes stored text data using a natural language processing (NLP) engine. For example, it uses NLP libraries such as SpaCy or NLTK.

[1781] First, tokenization is performed to divide the text into words and phrases. Next, the grammatical structure is understood through syntactic analysis, and important keywords and phrases are identified. Specifically, keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA" are extracted.

[1782] Input: Saved text data

[1783] Output: Extracted keywords and phrases

[1784] Step 5: The server generates test questions.

[1785] Server: Generates test questions in different formats based on extracted keywords and phrases. Using a generation AI model, it generates questions in the following formats:

[1786] Multiple-choice question: Generates a question such as "What is the difference between procaliotes and eukaryotes?" along with multiple answer choices.

[1787] Descriptive question: Generate the question, "Please explain the role of DNA."

[1788] Fill-in-the-blank question: Generate the question "Procaliotes do not have a nucleus, but _____ do."

[1789] Input: Extracted keywords or phrases

[1790] Output: Set of generated test questions

[1791] Step 6: The server converts the test questions into the format provided.

[1792] Server: Renders the generated test questions in HTML or PDF format using a template engine (e.g., Jinja2, Handlebars).

[1793] Specifically, the template engine specifies the format and converts it into a user-friendly format. For example, it generates the following HTML template.

[1794] html

[1795] <h1> Biology test questions< / h1>

[1796] <h2> Multiple-choice questions< / h2>

[1797] What is the difference between procaliotes and eukaryotes?

[1798]

[1799] Neither side possesses nuclear weapons.

[1800] Procaliotes do not have a nucleus, but eukaryotes do.

[1801] Procaliotes have a nucleus, but eukaryotes do not.

[1802] Both possess nuclear weapons

[1803]

[1804] <h2> written questions< / h2>

[1805] Please explain the role of DNA.

[1806] <h2> Fill-in-the-blank questions< / h2>

[1807] Procalioto does not have a nucleus, <input type="text"> It has a nucleus.

[1808] Input: Generated test questions

[1809] Output: Test questions in formatted HTML or PDF format

[1810] Step 7: The device displays the test questions.

[1811] Terminal: Receives test questions in HTML or PDF format sent from the server.

[1812] Subsequently, the test questions are displayed on the user interface, allowing the user to view and answer them. Users can also print the displayed test questions.

[1813] Input: Test questions in HTML or PDF format sent from the server.

[1814] Output: Test questions displayed below the user

[1815] The above outlines the specific program processing flow of this system. The inputs and outputs at each step, as well as the data processing and calculations performed, are clearly shown.

[1816] (Application Example 1)

[1817] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1818] Conventional learning systems offer the function of automatically generating test questions based on learned content, but their application has often been limited to specific fields. Furthermore, in industrial production sites, automatic generation of robot training programs based on work manuals and procedures is not performed, resulting in significant time and effort required for training. Therefore, there is a need to improve training efficiency by using automated generation systems in industrial production environments as a new application area.

[1819] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[1820] In this invention, the server includes means for receiving text data of learning content, means for analyzing the received text data and extracting important keywords and phrases, means for generating test questions in multiple question formats based on the extracted information, means for receiving and analyzing operation procedure data for industrial production equipment and generating a training program, and means for providing the generated training program to the equipment. This enables not only the automatic generation of test questions based on learning content, but also the automatic generation of efficient robot training programs in an industrial production environment.

[1821] "Learning content text data" refers to written data used for education and training, which contains information that students or learners should understand.

[1822] "Analysis" is the process of breaking down received text data, understanding its structure and content, and extracting useful information.

[1823] "Keywords and phrases" refer to important words and expressions within text data that characterize the main point and important information of the text.

[1824] A "test question" is a set of questions or prompts designed to measure the level of understanding of the learned material, and it is something that students or learners are expected to answer.

[1825] "Industrial production equipment" refers to machinery and devices used in manufacturing sites such as factories, and is intended to automate or streamline production processes.

[1826] "Operating procedure data" refers to data that describes the specific usage and operation methods of industrial production equipment, explaining how to operate the equipment step by step.

[1827] A "training program" refers to a set of learning and training procedures and content designed to acquire specific skills or knowledge.

[1828] The system of this invention receives and analyzes text data of learning content and operating procedure data of industrial production equipment, and automatically generates test questions and training programs based on them. A specific embodiment for implementing this invention will now be described.

[1829] 1. Data entry and submission

[1830] User: Enters learning content or operating procedures as text data into a dedicated web form or application input field and clicks the submit button. This text data includes information learned by students or content explained by teachers in class if it is learning content, and specific operating procedures for industrial production equipment if it is operating procedures.

[1831] Terminal: Encodes the entered text data into JSON format and sends it to the server as an HTTP request. This also includes the necessary user authentication information.

[1832] 2. Data reception and analysis

[1833] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it stores this data in the database and associates it with metadata such as the user ID.

[1834] Server: Analyzes stored text data using a natural language processing (NLP) engine. Analysis includes:

[1835] Tokenization: Dividing text into words or phrases.

[1836] Syntactic analysis: Understanding grammatical structure and identifying important keywords and phrases.

[1837] 3. Generation of test questions and training programs

[1838] Server: Generates test questions and training programs in different formats based on extracted keywords and phrases. Specifically, this includes the following steps:

[1839] Generating test questions:

[1840] The system generates test questions in various formats, including multiple-choice, written response, and fill-in-the-blank questions.

[1841] Training program generation:

[1842] Generate a robot training program based on the operating procedures and describe each step in detail.

[1843] 4. Provision of test questions and training programs

[1844] Server: Converts generated test questions and training programs into a user-friendly format. This conversion uses a template engine and can output in HTML or PDF format.

[1845] Terminal: Receives the provided test questions and training programs and displays them in the user interface. This allows the user to view, print, or use the generated content directly online.

[1846] Specific example

[1847] 1. User input:

[1848] User: Enters biology class notes or operating instructions for industrial production equipment into a web form.

[1849] example:

[1850] Biology class notes: "Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes do not have a nucleus, but eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus."

[1851] Operating instructions for industrial production equipment: "Robot arm operating procedure: 1. Turn on the robot's power. 2. Press the start button to initialize. 3. Enter the destination coordinates on the control panel. 4. Move the robot arm to the position for grasping the object. 5. Press the grasp button to grasp the object. 6. Move the robot arm to the designated location and place the object. 7. Press the finish button to complete the operation."

[1852] 2. Examples of prompts to input to the generative AI model:

[1853] "Create a new robot training program based on the operating procedures for the factory's robotic arm. The following is an example of the procedure manual:

[1854] 1. Turn on the robot's power.

[1855] 2. Press the Start button to perform initialization.

[1856] 3. Enter the destination coordinates on the control panel.

[1857] 4. Move the robot arm to position it to grasp the object.

[1858] 5. Press the button to grab an object and grab it.

[1859] 6. Move the robotic arm to the designated location and place the object.

[1860] 7. Press the finish button to complete the process.

[1861] Please generate the training program based on the steps above.

[1862] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[1863] Step 1:

[1864] The user enters learning content or operating procedures for industrial production equipment as text data into an input field and clicks the submit button. Specifically, the user manually enters text into an input field in a web form or application, and the data is sent to the system.

[1865] Input: Text data (e.g., study notes, instruction manuals)

[1866] Output: Text data in JSON format, user authentication information

[1867] Step 2:

[1868] The terminal encodes the text data entered by the user into JSON format and sends it to the server as an HTTP request. Specifically, it performs the encoding process, generates the HTTP request, and sends it.

[1869] Input: Text data, user authentication information

[1870] Output: HTTP request (data in JSON format)

[1871] Step 3:

[1872] The server temporarily stores text data received from the terminal in a cache area, and then also stores it in the database and associates it with metadata such as the user ID. Specifically, it performs the process of temporarily storing data and then saving it to the database.

[1873] Input: HTTP request (data in JSON format)

[1874] Output: Temporary data to the cache area, data to be stored in the database

[1875] Step 4:

[1876] The server analyzes the stored text data using a natural language processing (NLP) engine. This step involves tokenization and syntactic analysis to extract important keywords and phrases. Specifically, it uses an NLP library (e.g., NLTK) for the analysis.

[1877] Input: Saved text data

[1878] Output: Extracted keywords and phrases

[1879] Step 5:

[1880] The server generates test questions and training programs in different formats based on extracted keywords and phrases. Specifically, it creates multiple-choice, written, and fill-in-the-blank test questions and generates robot training programs step-by-step based on the operating procedures.

[1881] Input: Extracted keywords or phrases

[1882] Output: Test questions, training program

[1883] Step 6:

[1884] The server converts the generated test questions and training programs into user-friendly formats (e.g., HTML, PDF) using a template engine. Specifically, it renders the generated content into a visually easy-to-read format.

[1885] Input: Test questions, training programs

[1886] Output: Test questions and training programs in HTML and PDF formats.

[1887] Step 7:

[1888] The terminal displays test questions and training programs received from the server on its user interface (UI). Specifically, it analyzes and processes the received data, displaying it in a format that the user can view and print.

[1889] Input: Test questions and training programs in HTML or PDF format.

[1890] Output: Display test questions and training programs for the user interface.

[1891] Example prompts for a generative AI model:

[1892] "Create a new robot training program based on the operating procedures for the factory's robotic arm. The following is an example of the procedure manual:

[1893] 1. Turn on the robot's power.

[1894] 2. Press the Start button to perform initialization.

[1895] 3. Enter the destination coordinates on the control panel.

[1896] 4. Move the robot arm to position it to grasp the object.

[1897] 5. Press the button to grab an object and grab it.

[1898] 6. Move the robotic arm to the designated location and place the object.

[1899] 7. Press the finish button to complete the process.

[1900] Please generate the training program based on the steps above.

[1901] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[1902] System Overview

[1903] This invention is a system that receives and analyzes text data from learning notes and memos, automatically generates test questions based on that content, and further enhances learning effectiveness by combining it with an emotion engine that recognizes the user's emotions. This system aims to enable students and educators to efficiently create tests and provide flexible test questions that are tailored to the learner's emotions and motivation.

[1904] Program Description

[1905] 1. Data entry and submission

[1906] User: Enters text data based on learning content into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[1907] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. This includes the user authentication token and session information.

[1908] 2. Data reception and analysis

[1909] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[1910] Server: The stored text data is analyzed using a natural language processing (NLP) engine. Specifically, the text is tokenized, syntactic analysis is performed, and important keywords and phrases are extracted.

[1911] 3. Emotion recognition

[1912] User: To recognize emotions during learning, users are required to transmit facial expressions and voices through devices such as cameras and microphones.

[1913] Device: Uses facial recognition software and voice analysis software to analyze the user's emotions in real time.

[1914] Server: Receives emotional data sent from the terminal and uses an emotional engine to classify the emotional state. For example, it determines whether the user is stressed or relaxed.

[1915] 4. Generating Test Questions

[1916] Server: Based on extracted keywords and phrases, as well as recognized emotional states, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank).

[1917] Multiple-choice questions: Automatically generates questions and multiple answer choices based on keywords and phrases.

[1918] Descriptive questions: Create questions that require detailed answers.

[1919] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in sentences based on important keywords or phrases.

[1920] Difficulty Adjustment: The difficulty and format of the questions are adjusted according to the recognized emotional state. For example, if the user is feeling stressed, the system will start with easier questions.

[1921] 5. Provision of test questions

[1922] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[1923] Terminal: Receives the provided test questions and displays them in the user interface. Users can then view, print, or answer the generated test questions directly online.

[1924] Specific example

[1925] 1. User input

[1926] User: Enters biology class notes into a web form.

[1927] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[1928] Terminal: Encode this text data into JSON format and send it to the server.

[1929] 2. Data reception and analysis

[1930] Server: Receives text data and stores it in the cache and database.

[1931] Server: Uses an NLP engine to analyze text data and extracts keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[1932] 3. Emotion recognition

[1933] User: Uses camera and microphone to transmit real-time facial expressions and audio.

[1934] Terminal: Emotional state is analyzed using facial recognition software and voice analysis software.

[1935] Server: Receives emotion data and uses the emotion engine to determine the user's emotional state (e.g., stressed, relaxed).

[1936] 4. Generating Test Questions

[1937] Server: Generates the following test questions based on extracted keywords and sentiment states.

[1938] Multiple-choice questions:

[1939] Question: What are the differences between procaliotes and eukaryotes?

[1940] Options:

[1941] 1. Neither side possesses nuclear weapons.

[1942] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[1943] 3. Procaliotes have a nucleus, but eukaryotes do not.

[1944] 4. Both possess nuclear weapons.

[1945] Short answer questions:

[1946] Question: Please explain the role of DNA.

[1947] Fill-in-the-blank questions:

[1948] Text: Procaliotes have no nucleus, but _____ do.

[1949] Answer: eukaryotes

[1950] Difficulty adjustment: The system determined that the user was experiencing stress, so it will now start with basic questions.

[1951] 5. Provision of test questions

[1952] Server: Renders the generated test questions in HTML format and sends them to the user's terminal.

[1953] Terminal: Displays test questions to the user and allows printing or online submission of answers.

[1954] With the above configuration, this system can effectively and efficiently automatically generate test questions based on the learned content and provide tests that are tailored to the user's emotional state.

[1955] The following describes the processing flow.

[1956] Step 1:

[1957] User: Enters text data of learning notes and memos into a dedicated web form or application input field and clicks the submit button. This text data includes what the student has learned and what the teacher explained in class.

[1958] Step 2:

[1959] Terminal: Encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. User authentication tokens and session information are also sent at this time.

[1960] Step 3:

[1961] Server: Receives text data sent from the terminal and temporarily stores it in the cache area. At the same time, it also stores this data in the database and associates it with metadata such as the user ID.

[1962] Step 4:

[1963] Server: The server analyzes the stored text data using a natural language processing (NLP) engine. Specifically, it tokenizes the text, performs syntactic analysis, and extracts important keywords and phrases. For example, it might extract keywords such as "cell," "procalioto," "eukaryote," "nucleus," and "DNA."

[1964] Step 5:

[1965] User: Sends facial expressions and voices through devices such as cameras and microphones to recognize emotions during learning.

[1966] Step 6:

[1967] Terminal: Uses facial recognition and voice analysis software to analyze the user's emotions in real time. For example, it identifies stress, anxiety, and relaxation from the user's facial expressions. It also analyzes emotions from voice and performs similar identification.

[1968] Step 7:

[1969] Server: Receives emotional data sent from the terminal and uses an emotional engine to classify the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[1970] Step 8:

[1971] Server: Based on extracted keywords and phrases, as well as recognized emotional states, it generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank).

[1972] Multiple-choice questions: Automatically generate questions and multiple answer choices based on keywords and phrases. For example, it provides answer choices for the question, "What is the difference between procaliotes and eukaryotes?"

[1973] Descriptive questions: Create questions that require detailed answers. For example, generate a question such as, "Please explain the role of DNA."

[1974] Fill-in-the-blank questions: Generate questions in a format where you fill in the blanks in a sentence based on important keywords or phrases. For example, generate a question like, "Procalioto does not have a nucleus, but _____ does."

[1975] Difficulty Adjustment: The difficulty and format of the questions are adjusted according to the perceived emotional state. For example, if the user is feeling stressed, the questions are started with relatively easy ones.

[1976] Step 9:

[1977] Server: Uses a template engine to convert generated test questions into user-friendly formats (HTML, PDF, etc.) and renders them in the most optimal format.

[1978] Step 10:

[1979] Server: Stores the generated test questions in a database and associates them with the user ID. Then, encodes the test data in JSON format and creates an API response to send to the terminal.

[1980] Step 11:

[1981] Terminal: Interprets received test data and displays it appropriately within the user interface. Users can then review the generated test questions, print them, or answer them online.

[1982] This sequential processing step allows users to not only easily receive test questions generated from their learning content, but also to receive tests of appropriate difficulty that take their emotional state into account during the process. This makes it possible to maximize the learner's learning effectiveness.

[1983] (Example 2)

[1984] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1985] Efficiently analyzing text data from learning materials and automatically generating test questions based on that data is a crucial challenge. Furthermore, maximizing learning effectiveness requires adjusting the difficulty and format of questions to consider the learner's emotional state. However, current systems lack the means to effectively address these challenges. This can increase the burden on learners and potentially decrease their motivation.

[1986] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[1987] In this invention, the server includes means for receiving digital data of learning content, means for analyzing the received digital data and extracting important words and expressions, means for generating evaluation questions in multiple question formats based on the extracted information, means for providing the generated evaluation questions to the user, means for receiving emotional data from the user, and means for analyzing the received emotional data and adjusting the difficulty level and format of the evaluation questions based on the emotional state. This enables the efficient and automatic generation of test questions based on learning content and flexible question provision that takes into account the user's emotional state.

[1988] "Digital data of learning content" refers to the content that users have learned or the information that educators have provided in class, represented in digital format.

[1989] "Important words and expressions" are keywords and phrases that summarize or represent the learning content extracted from the text data.

[1990] "Assessment questions" are quizzes or test-style questions designed to measure the level of understanding of the learned material.

[1991] A "natural language processing engine" is a system that uses technology to analyze text data and understand its grammar and meaning.

[1992] "Emotional data" refers to data that indicates the user's emotional state, and is acquired through facial recognition and voice analysis.

[1993] An "emotion engine" is a system that analyzes received emotional data and classifies or determines the user's emotional state.

[1994] "Difficulty level" indicates the level of difficulty in answering an assessment question.

[1995] "Format" refers to the form or method in which the evaluation questions are presented, and includes types such as multiple-choice, written response, and fill-in-the-blank.

[1996] This invention is a system that receives and analyzes digital data of learning content, automatically generates assessment questions based on that content, and further enhances learning effectiveness by combining it with an emotion engine that recognizes the user's emotions. This system aims to enable students and educators to efficiently create assessment questions and provide flexible assessment questions that are tailored to the learner's emotions and motivation.

[1997] This system is primarily composed of three elements: servers, terminals, and users. Each of these elements will be explained in detail below.

[1998] 1. Data entry and submission

[1999] User: Enter the learning content into an input field in a specific web form or application and click the submit button. For example, enter text data like the following:

[2000] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[2001] Terminal: Encodes the entered text data into JSON format, includes the user authentication token and session information, and sends it to the server via the HTTPS protocol.

[2002] 2. Data reception and analysis

[2003] Server: Receives digital data sent from terminals and temporarily stores it in a cache area. Then, it stores it in the database, associated with user IDs and session information. It also analyzes text data using a natural language processing (NLP) engine to extract important words and expressions.

[2004] 3. Emotion recognition

[2005] User: Uses a camera and microphone to send real-time facial expressions and audio to the system.

[2006] Device: Uses facial recognition software and voice analysis software to analyze the user's emotions in real time.

[2007] Server: Receives analyzed emotion data and uses an emotion engine to classify the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[2008] 4. Generating Test Questions

[2009] Server: Based on the extracted important words and phrases, as well as the recognized emotional states, it generates assessment questions in multiple question formats (multiple choice, written response, fill-in-the-blank). Specific examples are as follows:

[2010] Multiple-choice questions:

[2011] Question: What are the differences between procaliotes and eukaryotes?

[2012] Options:

[2013] 1. Neither side possesses nuclear weapons.

[2014] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[2015] 3. Procaliotes have a nucleus, but eukaryotes do not.

[2016] 4. Both possess nuclear weapons.

[2017] Short answer questions:

[2018] Question: Please explain the role of DNA.

[2019] Fill-in-the-blank questions:

[2020] Text: Procaliotes have no nucleus, but _____ do.

[2021] Answer: eukaryotes

[2022] Server: Also, adjust the difficulty level of the problems according to the user's emotional state. For example, if the user is feeling stressed, set it to start with easy problems.

[2023] 5. Provision of test questions

[2024] Server: Renders the generated assessment questions in HTML or PDF format and sends them to the user's terminal.

[2025] Terminal: Receives the provided assessment questions and displays them in the user interface. Users can view these questions, answer them online, or print them if necessary.

[2026] With the above configuration, this system effectively and efficiently generates assessment questions based on the learned content and can provide questions flexibly according to the user's emotional state. As a result, learning effectiveness is maximized, and it also contributes to improving the user's learning motivation.

[2027] The flow of the specific processing in Example 2 will be explained using Figure 13.

[2028] Step 1: Enter and submit data

[2029] User: Enters learning content in text format into an input field of a specific web form or application and clicks the submit button. The input includes data such as the following:

[2030] Example input data:

[2031] Cells are the basic units of living organisms. There are two main types: procariotes and eukaryotes. Procariotes lack a nucleus, while eukaryotes do. DNA is the molecule that carries genetic information and is stored in the cell nucleus.

[2032] Output: Text is sent to the input field.

[2033] Terminal: Encodes the entered text data into JSON format and sends it to the server via the HTTPS protocol, including the user authentication token and session information.

[2034] Input: User-entered text data, authentication token, and session information.

[2035] Output: Data encoded in JSON format.

[2036] Step 2: Receiving and saving data

[2037] Server: Receives digital data in JSON format sent from the terminal and temporarily stores it in the cache area. Then, it stores it in the database along with the user ID and session information.

[2038] Input: Digital data in JSON format sent from the device.

[2039] Output: Digital data stored in the cache and database.

[2040] Step 3: Analysis using a natural language processing engine

[2041] Server: The stored digital data is processed by a natural language processing (NLP) engine to analyze the text data. Specifically, the text is tokenized, syntactic analysis is performed, and important words and expressions are extracted.

[2042] Input: Text data stored in a cache or database.

[2043] Output: Extracted key words and phrases (e.g., "cell," "procalioto," "eukaryote," "nucleus," "DNA").

[2044] Step 4: Acquiring emotional data

[2045] User: To enable emotion recognition during training, the user sends real-time facial expressions and audio to the system using the camera and microphone.

[2046] Input: Real-time facial expression data and audio data.

[2047] Output: Facial expression data and audio data are sent to the terminal.

[2048] Step 5: Analyzing emotional data

[2049] Terminal: It analyzes received facial and voice data in real time using facial recognition software and voice analysis software to determine the user's emotional state.

[2050] Input: Facial expression data and audio data.

[2051] Output: Analyzed emotional state data (e.g., stressed state, relaxed state).

[2052] Step 6: Classification of emotional states

[2053] Server: Uses an emotion engine to receive emotional state data sent from the terminal and classifies the user's emotional state. For example, it determines whether the user is stressed or relaxed.

[2054] Input: Analyzed emotional state data.

[2055] Output: Information on classified emotional states.

[2056] Step 7: Generating Test Questions

[2057] Server: Generates assessment questions in multiple question formats (multiple choice, open-ended, fill-in-the-blank) based on extracted key words and phrases, as well as recognized emotional states.

[2058] Input: Information on extracted words and phrases, and classified emotional states.

[2059] Output: The generated evaluation problem.

[2060] Specific example:

[2061] Multiple-choice questions:

[2062] Question: What are the differences between procaliotes and eukaryotes?

[2063] Options:

[2064] 1. Neither side possesses nuclear weapons.

[2065] 2. Procaliotes do not have a nucleus, but eukaryotes do.

[2066] 3. Procaliotes have a nucleus, but eukaryotes do not.

[2067] 4. Both possess nuclear weapons.

[2068] Short answer questions:

[2069] Question: Please explain the role of DNA.

[2070] Fill-in-the-blank questions:

[2071] Text: Procaliotes have no nucleus, but _____ do.

[2072] Answer: eukaryotes

[2073] Step 8: Providing test questions

[2074] Server: Renders the generated assessment questions in HTML or PDF format and sends them to the user's terminal.

[2075] Input: Data for the generated assessment questions.

[2076] Output: Evaluation questions in HTML or PDF format.

[2077] Terminal: Receives the provided assessment questions and displays them in the user interface. Users can view, answer, and print these questions.

[2078] Input: Evaluation questions sent from the server.

[2079] Output: The evaluation question displayed in the user interface.

[2080] Through the steps described above, this system enables the automatic generation of assessment questions based on learned content and the flexible provision of questions that respond to the user's emotional state.

[2081] (Application Example 2)

[2082] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[2083] Conventional learning support systems have the problem of not fully realizing learning effectiveness because they generate test questions without considering the learner's emotional state. Furthermore, when conducting skills training in practical settings such as factories, it is difficult to provide flexible test questions that are tailored to the learner's situation. As a result, there is a need for learners to improve their skills efficiently without experiencing stress.

[2084] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[2085] In this invention, the server includes means for receiving text data of learning content, means for analyzing the received text data and extracting important keywords and phrases, means for recognizing the user's emotions in real time, means for adjusting the difficulty and format of test questions based on the recognized emotional state, means for generating test questions in multiple question formats based on the extracted information, and means for providing the generated test questions to the user. This makes it possible to provide appropriate test questions according to the learner's emotional state, thereby reducing stress and improving learning effectiveness.

[2086] "Learning content" refers to text and audio data that shows information about the knowledge and skills that the user has learned.

[2087] "Text data" refers to string information used to represent learning content.

[2088] A "keyword" is a word or phrase that is considered particularly important within text data.

[2089] "Emotions" refer to information that indicates a user's psychological state, and are recognized from facial expressions, voice, and other similar cues.

[2090] "Real-time" means that data is acquired and processed instantly, and reflected to the user without delay.

[2091] "Difficulty level" is a measure that indicates the degree of difficulty required to answer a test question.

[2092] "Format" refers to the way test questions are presented and expressed, and includes multiple-choice, written, and fill-in-the-blank formats.

[2093] "Extraction" refers to the process of extracting specific items or features from text data or other information.

[2094] "Providing" refers to the act of displaying or communicating the generated test questions to the user via audio.

[2095] "Skills" refer to the knowledge and practical ability to perform specific operations and procedures required in practical work environments such as factories.

[2096] This invention is a system that receives and analyzes text data of learning content to generate test questions and recognizes the user's emotions in real time. Specifically, it is configured as follows.

[2097] 1. Data entry

[2098] Users input learning content into the system via voice or text, targeting factory staff and other personnel. This learning content includes specific details such as skills training and operating procedures within the factory.

[2099] The device uses speech recognition software (for example, Microsoft's Azure Speech to Text) to convert the audio data into text data.

[2100] 2. Sending data

[2101] The terminal encodes the entered text data into JSON format and sends it to the server using the HTTPS protocol. User authentication tokens and session information are also transmitted during this encoding and transmission process.

[2102] 3. Data reception and analysis

[2103] The server receives text data sent from the terminal and temporarily stores it in a cache area. At the same time, it also stores this data in a database and associates it with metadata such as the user ID.

[2104] The server analyzes the stored text data using a natural language processing (NLP) engine (for example, SpaCy or Hugging Face's Transformers). This analysis extracts important keywords and phrases.

[2105] 4. Emotion recognition

[2106] Users transmit facial expressions and sounds using devices such as cameras and microphones to recognize emotions during the learning process.

[2107] The device uses facial recognition software (e.g., OpenCV and Dlib) and speech analysis software (e.g., Google Cloud Speech-to-Text) to analyze the user's emotions in real time.

[2108] The server receives emotional data sent from the terminal and uses an emotion engine to classify the emotional state. For example, it determines whether the user is stressed or relaxed.

[2109] 5. Generating Test Questions

[2110] The server generates test questions in multiple question formats (multiple choice, written response, fill-in-the-blank) based on extracted keywords and phrases, as well as recognized emotional states. The generated questions are dynamically created using a generative AI model.

[2111] The difficulty and format of the questions are adjusted according to the recognized emotional state. For example, if the user is feeling stressed, the system will start with easier questions.

[2112] 6. Provision of test questions

[2113] The server renders the generated test questions in HTML format and sends them to the terminal.

[2114] The terminal displays test questions on its user interface and provides them to the user through audio output and visual displays.

[2115] Specific example

[2116] 1. Example of a user prompt:

[2117] The following training was conducted: The robot should generate appropriate test questions.

[2118] Safety procedures used in factories

[2119] How to operate a specific machine

[2120] Raw material quality check procedure

[2121] This system significantly improves the quality of skills training within factories and can provide test questions of appropriate difficulty levels according to the learner's emotional state. This reduces stress and maximizes learning effectiveness.

[2122] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[2123] Step 1:

[2124] Data entry

[2125] Users input learning content into the system via voice or text, targeting factory staff and other personnel. For voice input, the terminal uses speech recognition software, such as Microsoft Azure Speech to Text, to convert the voice data into text. The input data is temporarily stored in the terminal's memory. The input data includes specific details such as factory safety procedures and machine operation methods.

[2126] Step 2:

[2127] Sending data

[2128] The terminal encodes the input text data into JSON format. User authentication tokens and session information are added to the encoded JSON data, and it is sent to the server using the HTTPS protocol. This ensures that the input data is securely transferred to the server. This data is then used as input for subsequent parsing processes.

[2129] Step 3:

[2130] Receiving and storing data

[2131] The server receives text data sent from the terminal. The received data is temporarily stored in a cache area and then saved to the database. At the same time, metadata such as the user ID is associated with the data. This prepares the data for persistent storage and subsequent parsing.

[2132] Step 4:

[2133] Text data analysis

[2134] The server analyzes the stored text data using a natural language processing (NLP) engine. Specifically, it uses an NLP engine (for example, SpaCy or Hugging Face's Transformers) to tokenize the text data, perform syntactic analysis, and extract important keywords and phrases. The extracted information is used as input data for generating test questions.

[2135] Step 5:

[2136] emotion recognition

[2137] The user sends facial and audio data to the device using the camera and microphone to recognize emotions being learned. The device analyzes the user's emotions in real time using facial recognition software (e.g., OpenCV and Dlib) and speech analysis software (e.g., Google Cloud Speech-to-Text). The analysis results are sent to the server as emotion data. The server receives this emotion data and uses an emotion engine to classify the emotional state. For example, it can determine whether the user is stressed or relaxed.

[2138] Step 6:

[2139] Test question generation

[2140] The server uses a generative AI model to generate test questions in multiple question formats (multiple choice, written response, fill-in-the-blank) based on extracted keywords and phrases, as well as recognized emotional states. The difficulty and format of the questions are adjusted based on the emotional state. For example, if the user is stressed, the system will start with easier questions. The generated test questions are saved in JSON format.

[2141] Step 7:

[2142] Providing test questions

[2143] The server renders the generated test questions in HTML format and sends them to the terminal. The terminal displays the test questions on its user interface and provides them to the user through audio output and visual displays. The user can answer the displayed test questions. The answer data is sent back to the server and used to evaluate learning effectiveness and generate the next test questions.

[2144] Through the steps described above, this system can dynamically generate and provide users with appropriate test questions tailored to the learner's emotional state.

[2145] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[2146] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[2147] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.

[2148] Furthermore, the emotion identification model 59, acting as an emotion engine, may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[2149] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.

[2150] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.

[2151] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.

[2152] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.

[2153] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."

[2154] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values ​​representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.

[2155] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.

[2156] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.

[2157] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.

[2158] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.

[2159] Furthermore, it is not necessary to store the entirety of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.

[2160] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.

[2161] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Alternatively, the hardware resource that performs a specific process may consist of a single processor.

[2162] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.

[2163] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.

[2164] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.

[2165] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.

[2166] The following is further disclosed regarding the embodiments described above.

[2167] (Claim 1)

[2168] A means of receiving text data of learning content,

[2169] A means of analyzing received text data and extracting important keywords and phrases,

[2170] A means of generating test questions in multiple question formats based on extracted information,

[2171] A means of providing the generated test questions to the user,

[2172] A system that includes this.

[2173] (Claim 2)

[2174] The system according to claim 1, comprising means for analyzing text data using a natural language processing engine.

[2175] (Claim 3)

[2176] The system according to claim 1, comprising means for generating test questions in a format specified by the user.

[2177] "Example 1"

[2178] (Claim 1)

[2179] A means of receiving text data of learning content,

[2180] A means for encoding and transmitting received text data,

[2181] A means of analyzing received text data and extracting important keywords and phrases,

[2182] A means for generating multiple-choice questions, written response questions, and fill-in-the-blank questions based on extracted information,

[2183] A means of providing the generated test questions in HTML or PDF format,

[2184] A system that includes this.

[2185] (Claim 2)

[2186] The system according to claim 1, comprising means for analyzing text data using a natural language processing engine.

[2187] (Claim 3)

[2188] The system according to claim 1, comprising means for generating test questions in a format specified by the user.

[2189] "Application Example 1"

[2190] (Claim 1)

[2191] A means of receiving text data of learning content,

[2192] A means of analyzing received text data and extracting important keywords and phrases,

[2193] A means of generating test questions in multiple question formats based on extracted information,

[2194] A means of providing the generated test questions to the user,

[2195] A means for receiving and analyzing operating procedure data for industrial production equipment and generating a training program,

[2196] Means for providing the generated training program to the device,

[2197] A system that includes this.

[2198] (Claim 2)

[2199] The system according to claim 1, comprising means for analyzing text data using a natural language processing engine.

[2200] (Claim 3)

[2201] The system according to claim 1, comprising means for generating test questions in a format specified by the user.

[2202] "Example 2 of combining an emotion engine"

[2203] (Claim 1)

[2204] A means of receiving digital data of learning content,

[2205] A means of analyzing received digital data and extracting important words and expressions,

[2206] A means for generating evaluation questions in multiple question formats based on extracted information,

[2207] A means for providing the generated evaluation problems to users,

[2208] A means of receiving emotional data from users,

[2209] A means for analyzing received emotional data and adjusting the difficulty and format of assessment questions based on the emotional state,

[2210] A system that includes this.

[2211] (Claim 2)

[2212] The system according to claim 1, comprising means for analyzing digital data using a natural language processing engine.

[2213] (Claim 3)

[2214] The system according to claim 1, comprising means for generating evaluation questions in a format specified by the user.

[2215] "Application example 2 when combining with an emotional engine"

[2216] (Claim 1)

[2217] A means of receiving text data of learning content,

[2218] A means of analyzing received text data and extracting important keywords and phrases,

[2219] A means of generating test questions in multiple question formats based on extracted information,

[2220] A means of recognizing user emotions in real time,

[2221] A means of adjusting the difficulty and format of test questions based on recognized emotional states,

[2222] A means of providing the generated test questions to the user,

[2223] A system that includes this.

[2224] (Claim 2)

[2225] The system according to claim 1, comprising means for analyzing text data using a natural language processing engine.

[2226] (Claim 3)

[2227] The system according to claim 1, comprising means for generating test questions in a specified format. [Explanation of symbols]

[2228] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>

Claims

1. A means of receiving text data of learning content, A means of analyzing received text data and extracting important keywords and phrases, A means of generating test questions in multiple question formats based on extracted information, A means of providing the generated test questions to the user, A system that includes this.

2. The system according to claim 1, comprising means for analyzing text data using a natural language processing engine.

3. The system according to claim 1, comprising means for generating test questions in a format specified by the user.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A