KR102620574B1 - Method, server and computer program for providing visualized project information based on conversation analysis among project participants - Google Patents
Method, server and computer program for providing visualized project information based on conversation analysis among project participants Download PDFInfo
- Publication number
- KR102620574B1 KR102620574B1 KR1020230071623A KR20230071623A KR102620574B1 KR 102620574 B1 KR102620574 B1 KR 102620574B1 KR 1020230071623 A KR1020230071623 A KR 1020230071623A KR 20230071623 A KR20230071623 A KR 20230071623A KR 102620574 B1 KR102620574 B1 KR 102620574B1
- Authority
- KR
- South Korea
- Prior art keywords
- project
- message
- participants
- providing
- schedule
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000004458 analytical method Methods 0.000 title claims abstract description 48
- 238000004590 computer program Methods 0.000 title abstract description 15
- 230000036651 mood Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 7
- 238000013473 artificial intelligence Methods 0.000 description 55
- 230000006870 function Effects 0.000 description 27
- 238000004891 communication Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 13
- 238000002372 labelling Methods 0.000 description 9
- 238000013528 artificial neural network Methods 0.000 description 8
- 239000000284 extract Substances 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000003993 interaction Effects 0.000 description 7
- 238000012360 testing method Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013503 de-identification Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008685 targeting Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000008451 emotion Effects 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/34—Browsing; Visualisation therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/34—Browsing; Visualisation therefor
- G06F16/345—Summarisation for human users
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- General Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
- Information Transfer Between Computers (AREA)
Abstract
프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법, 서버 및 컴퓨터프로그램이 제공된다. 본 발명의 다양한 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법은, 컴퓨팅 장치에 의해 수행되는 방법에 있어서, 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 하나 이상의 요약문을 추출하는 단계 및 상기 추출된 하나 이상의 요약문을 기반으로 프로젝트 관리 서비스를 제공하는 단계를 포함한다.A method for providing visualized project information based on conversation analysis between project participants, a server, and a computer program are provided. A method of providing visualized project information based on conversation analysis between project participants according to various embodiments of the present invention is performed by a computing device, comprising the steps of analyzing messages sent and received between project participants and extracting one or more summaries. and providing a project management service based on the one or more extracted summaries.
Description
본 발명의 다양한 실시예는 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법, 서버 및 컴퓨터프로그램에 관한 것이다. Various embodiments of the present invention relate to a method, server, and computer program for providing visualized project information based on conversation analysis between project participants.
스마트 폰이나 스마트 패드와 같은 스마트 기기의 확산, 그리고 통신 인프라의 확대로, 온라인, 스마트 기기를 이용한 협업(Collaboration)이 활발히 이루어지고 있다.With the spread of smart devices such as smart phones and smart pads, and the expansion of communication infrastructure, collaboration online and using smart devices is actively taking place.
즉, 오프라인 공간상에 함께 모여서 이루어지는 협업뿐만 아니라, 서로 다른 공간에서 인터넷 및 스마트 기기 등을 이용한 협업이 기술 발전과 함께 일반화되고 있고, 이에 따라 인터넷 망을 이용한 다양한 협업 도구들이 개발되고 이용되고 있다.In other words, not only collaboration that takes place by gathering together in offline spaces, but also collaboration using the Internet and smart devices in different spaces is becoming common along with technological development, and accordingly, various collaboration tools using Internet networks are being developed and used.
종래의 온라인 협업 도구는 프로젝트를 진행하기 위해 필요한 여러 기능들을 제공하였다. 예를 들어, 종래의 온라인 협업 도구는 동일한 프로젝트에 참여하여 프로젝트를 진행하는 참여자들 간의 메시징 서비스를 제공하거나, 프로젝트의 진행상황 관리, 일정관리 등 프로젝트 및 프로젝트 진행과 관련된 각종 기능을 제공하였다.Conventional online collaboration tools provide various functions necessary to proceed with a project. For example, conventional online collaboration tools provide messaging services between participants participating in the same project and provide various functions related to projects and project progress, such as project progress management and schedule management.
그러나, 종래의 온라인 협업 도구는 각각의 기능들을 일차원적으로만 제공할 뿐, 참여자의 편의를 위하여 둘 이상의 기능들이 연계되지 못한다는 단점이 있다. 따라서 참여자들은 직접 자신이 사용하고자 하는 기능을 수동으로 각각 조작(예: 메신저로 일정 확정 후 일정 관리 도구에 직접 등록)하거나 정해진 인터페이스에 맞춰서 제한된 방법으로 등록(예: 일정 관리 도구에 등록하면 메신저에 알림을 주는 일방향 등록)하는 불편함이 있다. However, conventional online collaboration tools only provide each function one-dimensionally, and have the disadvantage that two or more functions cannot be linked for the convenience of participants. Therefore, participants can manually manipulate each function they want to use (e.g., confirming the schedule through a messenger and registering directly in the schedule management tool) or registering in a limited way according to the designated interface (e.g., registering in the schedule management tool will There is the inconvenience of one-way registration for notifications.
본 발명이 해결하고자 하는 과제는 상기와 같은 종래의 온라인 협업 도구의 단점을 개선하기 위하여, 프로젝트 참여자들 간의 메신저 대화를 분석하여 하나 이상의 요약문을 추출하고, 추출한 하나 이상의 키워드를 기반으로 프로젝트와 관련된 각종 서비스(프로젝트 관리 서비스)를 제공할 수 있는 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법, 서버 및 컴퓨터프로그램에 관한 것이다.The problem to be solved by the present invention is to improve the shortcomings of the conventional online collaboration tools as described above, by analyzing messenger conversations between project participants to extract one or more summaries and various types of information related to the project based on one or more extracted keywords. It relates to a method, server, and computer program for providing visualized project information based on conversation analysis between project participants that can provide services (project management services).
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems not mentioned can be clearly understood by those skilled in the art from the description below.
상술한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법은, 컴퓨팅 장치에 의해 수행되는 방법에 있어서, 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 하나 이상의 요약문을 추출하는 단계 및 상기 추출된 하나 이상의 요약문을 기반으로 프로젝트 관리 서비스를 제공하는 단계를 포함할 수 있다.A method of providing visualized project information based on conversation analysis between project participants according to an embodiment of the present invention to solve the above-described problem is performed by a computing device by analyzing messages sent and received between project participants. It may include extracting one or more summaries and providing a project management service based on the one or more extracted summaries.
다양한 실시예에서, 상기 하나 이상의 요약문을 추출하는 단계는, 제1 참여자로부터 특정 메시지를 대상으로 일정 등록을 요청받는 경우, 상기 특정 메시지를 분석하여 일정과 관련된 하나 이상의 요약문 - 상기 일정과 관련된 하나 이상의 요약문은, 일정명, 일시, 장소 및 참석자 중 적어도 하나를 포함함 - 를 추출하는 단계를 포함하며, 상기 프로젝트 관리 서비스를 제공하는 단계는, 사용자 인터페이스(User Interface, UI)를 통해 상기 추출된 일정과 관련된 하나 이상의 요약문을 상기 제1 참여자에게 제공하는 단계, 상기 사용자 인터페이스를 통해 입력된 상기 제1 참여자의 입력(User input)에 기초하여 상기 추출된 일정과 관련된 하나 이상의 요약문을 확정하는 단계 및 상기 확정된 하나 이상의 요약문을 이용하여 일정을 등록하고, 상기 등록된 일정에 따라 상기 프로젝트의 참여자들에게 일정 안내 정보를 제공하는 일정 관리 서비스를 제공하는 단계를 포함할 수 있다.In various embodiments, the step of extracting the one or more summary statements includes, when a request for schedule registration for a specific message is received from a first participant, one or more summary statements related to the schedule by analyzing the specific message - one or more summary statements related to the schedule. The summary includes at least one of the schedule name, date and time, location, and attendees - extracting the step, wherein the step of providing the project management service includes extracting the extracted schedule through a user interface (UI). providing one or more summaries related to the first participant, confirming one or more summaries related to the extracted schedule based on user input of the first participant input through the user interface, and It may include registering a schedule using one or more confirmed summaries, and providing a schedule management service that provides schedule guidance information to participants of the project according to the registered schedule.
다양한 실시예에서, 상기 하나 이상의 요약문을 추출하는 단계는, 상기 송수신되는 메시지를 분석하여 일정과 관련된 하나 이상의 요약문 - 상기 일정과 관련된 하나 이상의 요약문은, 일정명, 일시, 장소 및 참석자를 포함함 - 를 자동으로 추출하는 단계를 포함하며, 상기 프로젝트 관리 서비스를 제공하는 단계는, 상기 추출된 일정과 관련된 하나 이상의 요약문을 이용하여 일정을 자동 등록하고, 상기 자동 등록된 일정에 따라 상기 프로젝트의 참여자들에게 일정 안내 정보를 제공하는 일정 관리 서비스를 제공하는 단계를 포함할 수 있다.In various embodiments, the step of extracting the one or more summaries includes analyzing the transmitted and received message to one or more summaries related to the schedule - the one or more summaries related to the schedule include the schedule name, date and time, place and attendees - The step of providing the project management service includes automatically registering a schedule using one or more summaries related to the extracted schedule, and registering participants of the project according to the automatically registered schedule. It may include providing a schedule management service that provides schedule guidance information to the user.
다양한 실시예에서, 상기 하나 이상의 요약문을 추출하는 단계는, 상기 프로젝트의 참여자들 간에 송수신된 복수의 메시지를 분석하여 상기 복수의 메시지 각각에 대한 중요도를 판단하는 단계, 상기 판단된 중요도가 기 설정된 기준 이상인 메시지를 중요 메시지로 등록할 것을 안내하는 안내 정보를 제공하는 단계 및 상기 제공된 안내 정보에 대한 응답으로 참여자로부터 중요 메시지 등록을 요청받는 경우, 상기 중요 메시지 등록을 요청받은 메시지로부터 하나 이상의 요약문을 추출하는 단계를 포함하며, 상기 프로젝트 관리 서비스를 제공하는 단계는, 상기 추출된 하나 이상의 요약문을 이용하여 상기 중요 메시지에 대한 리마인더(Reminder)를 등록하고, 상기 등록된 리마인더에 따라 상기 중요 메시지를 리마인더 대상에게 안내하는 중요 메시지 관리 서비스를 제공하는 단계를 포함할 수 있다.In various embodiments, the step of extracting the one or more summaries includes analyzing a plurality of messages transmitted and received between participants of the project to determine the importance of each of the plurality of messages, and the determined importance is set according to a preset standard. Providing guidance information for registering the above message as an important message, and when receiving a request to register an important message from a participant in response to the provided guidance information, extracting one or more summary sentences from the message for which registration of the important message has been requested. The step of providing the project management service includes registering a reminder for the important message using the one or more extracted summaries, and targeting the important message according to the registered reminder. It may include the step of providing an important message management service to guide people.
다양한 실시예에서, 상기 프로젝트 관리 서비스를 제공하는 단계는, 상기 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 상기 프로젝트의 속성을 판단하는 단계 및 상기 판단된 프로젝트의 속성에 대한 정보를 제공하는 프로젝트 속성 정보 제공 서비스를 제공하는 단계를 포함하며, 상기 프로젝트 속성 정보 제공 서비스를 제공하는 단계는, 사용자 인터페이스(User Interface, UI)를 통해 제1 참여자가 참여 중인 복수의 프로젝트 각각에 대하여 판단된 프로젝트의 속성에 대한 정보를 제공하되, 상기 사용자 인터페이스는 상기 복수의 프로젝트 각각에 대응되는 복수의 카드를 격자 형태로 배치하여 출력하되, 상기 복수의 카드 각각의 앞면에는 상기 복수의 프로젝트 각각에 대한 정보 - 상기 복수의 프로젝트 각각에 대한 정보는 프로젝트명, 프로젝트의 참여자들 간에 송수신된 메시지 중 확인하지 않은 메시지의 수 및 프로젝트의 속성 정보 중 적어도 하나를 포함함 - 를 출력하고, 상기 복수의 카드 각각의 뒷면에는 상기 복수의 프로젝트 각각의 참여자들 간에 송수신된 메시지로부터 추출된 하나 이상의 키워드를 출력하는 것인, 단계를 포함할 수 있다.In various embodiments, the step of providing the project management service includes determining the properties of the project by analyzing messages transmitted and received between participants of the project, and project properties providing information about the determined properties of the project. It includes the step of providing an information provision service, wherein the step of providing the project attribute information provision service includes the project attribute determined for each of a plurality of projects in which the first participant is participating through a user interface (UI). Provides information about, and the user interface outputs a plurality of cards corresponding to each of the plurality of projects arranged in a grid form, and the front of each of the plurality of cards contains information about each of the plurality of projects - the plurality of projects. Information on each project includes at least one of the project name, the number of unconfirmed messages among messages sent and received between project participants, and project attribute information - and is printed on the back of each of the plurality of cards. It may include a step of outputting one or more keywords extracted from messages transmitted and received between participants of each of a plurality of projects.
다양한 실시예에서, 상기 프로젝트의 속성을 판단하는 단계는, 기 설정된 기간 동안 상기 프로젝트의 참여자들 간에 송수신된 복수의 메시지로부터 하나 이상의 요약문을 추출하고, 상기 추출된 하나 이상의 요약문을 분석하여 상기 프로젝트의 진행과 관련된 요약 정보를 생성하는 단계를 포함하며, 상기 사용자 인터페이스를 제공하는 단계는, 상기 생성된 요약 정보를 시각화하여 제공하되, 상기 시각화된 요약 정보는 상기 프로젝트의 진행과 관련된 하나 이상의 키워드를 워드 클라우드(Word cloud)형태로 시각화한 것인, 단계를 포함할 수 있다.In various embodiments, the step of determining the properties of the project includes extracting one or more summaries from a plurality of messages transmitted and received between participants of the project during a preset period, and analyzing the one or more extracted summaries to determine the properties of the project. A step of generating summary information related to progress, and providing the user interface, wherein the generated summary information is visualized and provided, wherein the visualized summary information contains one or more keywords related to the progress of the project. It may include steps visualized in the form of a word cloud.
다양한 실시예에서, 상기 프로젝트의 속성을 판단하는 단계는, 상기 프로젝트의 참여자들 간의 송수신되는 복수의 메시지의 속성, 상기 프로젝트의 진척도 및 상기 프로젝트 내에 발생되는 이슈와 상기 이슈의 해결 여부 중 적어도 하나를 이용하여 상기 프로젝트의 분위기(mood)를 판단하는 단계를 포함하며, 상기 사용자 인터페이스를 제공하는 단계는, 상기 판단된 프로젝트의 분위기를 시각화하여 제공하되, 상기 시각화된 프로젝트의 분위기는 상기 송수신된 복수의 메시지 각각에 대응되는 복수의 제1 포인트의 가중합에 따라 그래프 형태로 시각화된 것이며, 상기 그래프 형태로 시각화된 프로젝트의 분위기 상에 프로젝트 내에 발생되는 이슈에 대응되는 복수의 제2 포인트를 표시하되, 상기 복수의 제2 포인트 각각의 색상은 상기 복수의 제2 포인트 각각에 대응되는 이슈의 해결 여부에 따라 결정되는 것인, 단계를 포함할 수 있다.In various embodiments, the step of determining the properties of the project includes at least one of the properties of a plurality of messages transmitted and received between participants of the project, the progress of the project, and issues occurring within the project and whether the issues are resolved. and determining the mood of the project using the step of providing the user interface, wherein the mood of the determined project is visualized and provided, wherein the visualized mood of the project is determined by using the plurality of transmitted and received signals. It is visualized in the form of a graph according to the weighted sum of a plurality of first points corresponding to each message, and displays a plurality of second points corresponding to issues occurring within the project in the atmosphere of the project visualized in the graph form, The color of each of the plurality of second points may be determined depending on whether an issue corresponding to each of the plurality of second points is resolved.
다양한 실시예에서, 상기 프로젝트 속성 정보 제공 서비스를 제공하는 단계는, 상기 제1 참여자가 참여 중인 복수의 프로젝트 각각의 속성 정보에 관한 요약 정보를 포함하는 요약 정보 리스트를 생성하고, 상기 생성된 요약 정보 리스트를 포함하는 메시지를 상기 제1 참여자로부터 기 설정된 시간 마다 상기 제1 참여자에게 제공하는 단계를 포함할 수 있다.In various embodiments, the step of providing the project attribute information provision service includes generating a summary information list including summary information about attribute information for each of the plurality of projects in which the first participant is participating, and generating the generated summary information. It may include providing a message including a list from the first participant to the first participant at preset times.
다양한 실시예에서, 상기 하나 이상의 요약문을 추출하는 단계는, 상기 프로젝트의 참여자들 간에 송수신되는 복수의 메시지를 분석하되, 상기 복수의 메시지 중 상기 프로젝트의 참여자들 중 적어도 하나의 참여자로부터 비활성화 설정된 메시지를 요약문 추출 대상에서 제외시키는 단계를 포함할 수 있다.In various embodiments, the step of extracting the one or more summary sentences includes analyzing a plurality of messages transmitted and received between participants of the project, and selecting a message that is set to be deactivated by at least one of the participants of the project among the plurality of messages. A step of excluding the summary text may be included.
상술한 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버는, 프로세서, 네트워크 인터페이스, 메모리 및 상기 메모리에 로드(load)되고, 상기 프로세서에 의해 실행되는 컴퓨터 프로그램을 포함하되, 상기 컴퓨터 프로그램은, 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 하나 이상의 요약문을 추출하는 인스트럭션(instruction) 및 상기 추출된 하나 이상의 요약문을 기반으로 프로젝트 관리 서비스를 제공하는 인스트럭션을 포함할 수 있다.A server providing visualized project information based on conversation analysis between project participants according to another embodiment of the present invention to solve the above-described problem is loaded into a processor, a network interface, a memory, and the memory, and is executed by the processor. Includes a computer program, wherein the computer program includes instructions for extracting one or more summaries by analyzing messages transmitted and received between project participants, and instructions for providing project management services based on the one or more extracted summaries. may include.
상술한 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 컴퓨터프로그램은, 컴퓨팅 장치와 결합되어, 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 하나 이상의 요약문을 추출하는 단계 및 상기 추출된 하나 이상의 요약문을 기반으로 프로젝트 관리 서비스를 제공하는 단계를 실행시키기 위하여 컴퓨터로 판독가능한 기록매체에 저장할 수 있다.A computer program according to another embodiment of the present invention for solving the above-mentioned problem is combined with a computing device, analyzing messages transmitted and received between project participants and extracting one or more summaries, and the extracted one or more In order to execute steps for providing project management services based on the summary, it can be stored in a computer-readable recording medium.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.
본 발명의 다양한 실시예에 따르면, 프로젝트 참여자들 간의 메신저 대화를 분석하여 하나 이상의 요약문을 추출하고, 추출한 하나 이상의 요약문을 기반으로 프로젝트와 관련된 각종 서비스(프로젝트 관리 서비스)를 제공함으로써, 상기와 같은 종래의 온라인 협업 도구의 문제점을 극복할 수 있다는 이점이 있다.According to various embodiments of the present invention, one or more summaries are extracted by analyzing messenger conversations between project participants, and various services related to the project (project management services) are provided based on the one or more extracted summaries, thereby It has the advantage of overcoming the problems of online collaboration tools.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.
도 1 및 도 2는 본 발명의 일 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공 시스템을 도시한 도면이다.
도 3은 본 발명의 다른 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버의 하드웨어 구성도이다.
도 4는 본 발명의 또 다른 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법의 순서도이다.
도 5는 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버에 의해 수행되는 일정 관리 서비스 제공 방법의 순서도이다.
도 6 및 도 7은 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버가 제공하는 일정 관리 서비스를 도시한 도면이다.
도 8은 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버에 의해 수행되는 중요 메시지 관리 서비스 제공 방법의 순서도이다.
도 9는 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버가 제공하는 중요 메시지 관리 서비스를 도시한 도면이다.
도 10은 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버에 의해 수행되는 프로젝트 속성 정보 제공 서비스 제공 방법의 순서도이다.
도 11 내지 도 14는 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버가 제공하는 프로젝트 속성 정보 제공 서비스를 도시한 도면이다.
도 15 및 도 16은 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법을 수행하는 인공지능 모델의 학습 데이터를 생성하는 구성을 도시한 도면이다.1 and 2 are diagrams illustrating a system for providing visualized project information based on conversation analysis between project participants according to an embodiment of the present invention.
Figure 3 is a hardware configuration diagram of a server providing visualized project information based on conversation analysis between project participants according to another embodiment of the present invention.
Figure 4 is a flowchart of a method for providing visualized project information based on conversation analysis between project participants according to another embodiment of the present invention.
Figure 5 is a flowchart of a method for providing a schedule management service performed by a server providing visualized project information based on conversation analysis between project participants in various embodiments.
Figures 6 and 7 are diagrams illustrating a schedule management service provided by a visualized project information providing server based on conversation analysis between project participants in various embodiments.
Figure 8 is a flowchart of a method of providing an important message management service performed by a server providing visualized project information based on conversation analysis between project participants in various embodiments.
Figure 9 is a diagram illustrating an important message management service provided by a visualized project information providing server based on conversation analysis between project participants in various embodiments.
10 is a flowchart of a method of providing a project attribute information service performed by a visualized project information providing server based on conversation analysis between project participants, in various embodiments.
11 to 14 are diagrams illustrating a project attribute information provision service provided by a visualized project information provision server based on conversation analysis between project participants, in various embodiments.
Figures 15 and 16 are diagrams illustrating a configuration for generating learning data for an artificial intelligence model that performs a method of providing visualized project information based on conversation analysis between project participants, in various embodiments.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. The advantages and features of the present invention and methods for achieving them will become clear by referring to the embodiments described in detail below along with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms. The present embodiments are merely provided to ensure that the disclosure of the present invention is complete and to provide a general understanding of the technical field to which the present invention pertains. It is provided to fully inform the skilled person of the scope of the present invention, and the present invention is only defined by the scope of the claims.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for describing embodiments and is not intended to limit the invention. As used herein, singular forms also include plural forms, unless specifically stated otherwise in the context. As used in the specification, “comprises” and/or “comprising” does not exclude the presence or addition of one or more other elements in addition to the mentioned elements. Like reference numerals refer to like elements throughout the specification, and “and/or” includes each and every combination of one or more of the referenced elements. Although “first”, “second”, etc. are used to describe various components, these components are of course not limited by these terms. These terms are merely used to distinguish one component from another. Therefore, it goes without saying that the first component mentioned below may also be a second component within the technical spirit of the present invention.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used with meanings commonly understood by those skilled in the art to which the present invention pertains. Additionally, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless clearly specifically defined.
명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.As used in the specification, the term “unit” or “module” refers to a hardware component such as software, FPGA, or ASIC, and the “unit” or “module” performs certain roles. However, “part” or “module” is not limited to software or hardware. A “unit” or “module” may be configured to reside on an addressable storage medium and may be configured to run on one or more processors. Thus, as an example, a “part” or “module” refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, Includes procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functionality provided within components and “parts” or “modules” can be combined into smaller components and “parts” or “modules” or into additional components and “parts” or “modules”. Could be further separated.
공간적으로 상대적인 용어인 "아래(below)", "아래(beneath)", "하부(lower)", "위(above)", "상부(upper)" 등은 도면에 도시되어 있는 바와 같이 하나의 구성요소와 다른 구성요소들과의 상관관계를 용이하게 기술하기 위해 사용될 수 있다. 공간적으로 상대적인 용어는 도면에 도시되어 있는 방향에 더하여 사용시 또는 동작시 구성요소들의 서로 다른 방향을 포함하는 용어로 이해되어야 한다. 예를 들어, 도면에 도시되어 있는 구성요소를 뒤집을 경우, 다른 구성요소의 "아래(below)"또는 "아래(beneath)"로 기술된 구성요소는 다른 구성요소의 "위(above)"에 놓여질 수 있다. 따라서, 예시적인 용어인 "아래"는 아래와 위의 방향을 모두 포함할 수 있다. 구성요소는 다른 방향으로도 배향될 수 있으며, 이에 따라 공간적으로 상대적인 용어들은 배향에 따라 해석될 수 있다.Spatially relative terms such as “below”, “beneath”, “lower”, “above”, “upper”, etc. are used as a single term as shown in the drawing. It can be used to easily describe the correlation between a component and other components. Spatially relative terms should be understood as terms that include different directions of components during use or operation in addition to the directions shown in the drawings. For example, if a component shown in a drawing is flipped over, a component described as “below” or “beneath” another component will be placed “above” the other component. You can. Accordingly, the illustrative term “down” may include both downward and upward directions. Components can also be oriented in other directions, so spatially relative terms can be interpreted according to orientation.
본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In this specification, a computer refers to all types of hardware devices including at least one processor, and depending on the embodiment, it may be understood as encompassing software configurations that operate on the hardware device. For example, a computer can be understood to include, but is not limited to, a smartphone, tablet PC, desktop, laptop, and user clients and applications running on each device.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the attached drawings.
본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.Each step described in this specification is described as being performed by a computer, but the subject of each step is not limited thereto, and depending on the embodiment, at least part of each step may be performed in a different device.
도 1 및 도 2는 본 발명의 일 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공 시스템을 도시한 도면이다.1 and 2 are diagrams illustrating a system for providing visualized project information based on conversation analysis between project participants according to an embodiment of the present invention.
도 1 및 도 2를 참조하면, 본 발명의 일 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공 시스템은 프로젝트 관리 서비스 제공서버(100), 참여자 단말(200) 및 외부 서버(300)를 포함할 수 있다.Referring to Figures 1 and 2, the system for providing visualized project information based on conversation analysis between project participants according to an embodiment of the present invention includes a project management service providing server 100, a participant terminal 200, and an external server 300. may include.
여기서, 도 1 및 도 2에 도시된 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공 시스템은 일 실시예에 따른 것이고, 그 구성 요소가 도 1 및 도 2에 도시된 실시예에 한정되는 것은 아니며, 필요에 따라 부가, 변경 또는 삭제될 수 있다.Here, the system for providing visualized project information based on conversation analysis between project participants shown in FIGS. 1 and 2 is according to an embodiment, and its components are not limited to the embodiment shown in FIGS. 1 and 2, It may be added, changed, or deleted as needed.
일 실시예에서, 프로젝트 관리 서비스 제공서버(100)는 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 하나 이상의 요약문을 추출할 수 있고, 추출된 하나 이상의 요약문을 이용하여 프로젝트 관리 서비스를 제공할 수 있다. 이를 위해, 프로젝트 관리 서비스 제공서버(100)는 도 2에 도시된 바와 같이 수집 서버(101), 저장 서버(102), 분석 서버(103), 인터랙션 서버(104) 및 프로젝트 관리 시스템(105)을 포함할 수 있다. 그러나, 이에 한정되지 않는다.In one embodiment, the project management service providing server 100 may extract one or more summaries by analyzing messages transmitted and received between project participants, and provide a project management service using one or more extracted summaries. . To this end, the project management service providing server 100 includes a collection server 101, a storage server 102, an analysis server 103, an interaction server 104, and a project management system 105, as shown in FIG. It can be included. However, it is not limited to this.
여기서, 요약문은 하나의 단어(키워드)일 수 있으나, 이에 한정되지 않고, 둘 이상의 단어로 구성되는 어절, 구절 또는 문장 전체를 모두 포괄하는 것으로 이해될 수 있다.Here, the summary may be a single word (keyword), but is not limited to this and may be understood as encompassing all words, phrases, or sentences composed of two or more words.
일 실시예에서, 수집 서버(101)는 네트워크(400)를 통해 프로젝트의 참여자들의 참여자 단말(200)과 연결될 수 있고, 참여자 단말(200)의 메시지 중계 모듈을 통해 프로젝트의 참여자들 간에 송수신된 메시지를 수집할 수 있다.In one embodiment, the collection server 101 may be connected to the participant terminal 200 of the project participants through the network 400, and messages transmitted and received between the project participants through the message relay module of the participant terminal 200 can be collected.
여기서, 네트워크(400)는 복수의 단말 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크의 일 예에는 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷(WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함한다. 무선 데이터 통신망의 일례에는 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), 5GPP(5th Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), RF(Radio Frequency), 블루투스(Bluetooth) 네트워크, NFC(Near-Field Communication) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.Here, the network 400 refers to a connection structure that allows information exchange between nodes such as a plurality of terminals and servers. Examples of such networks include a local area network (LAN), a wide area network (LAN), and a wide area network (LAN). It includes WAN (Wide Area Network), Internet (WWW: World Wide Web), wired and wireless data communication network, telephone network, and wired and wireless television communication network. Examples of wireless data communication networks include 3G, 4G, 5G, 3rd Generation Partnership Project (3GPP), 5th Generation Partnership Project (5GPP), Long Term Evolution (LTE), World Interoperability for Microwave Access (WIMAX), and Wi-Fi. , Internet, LAN (Local Area Network), Wireless LAN (Wireless Local Area Network), WAN (Wide Area Network), PAN (Personal Area Network), RF (Radio Frequency), Bluetooth network, NFC ( It includes, but is not limited to, Near-Field Communication (Near-Field Communication) network, satellite broadcasting network, analog broadcasting network, and DMB (Digital Multimedia Broadcasting) network.
다양한 실시예에서, 수집 서버(101)는 비식별화 모듈(101A)과 비대상 메시지 필터링 모듈(101B)을 포함할 수 있으며, 비식별화 모듈을 통해 정규식 패턴 매칭 기반 URL 인식, E-mail 인식, 전화번호 인식 및 인명 인식 기능을 수행할 수 있고, 비대상 메시지 필터링 모듈을 통해 메시지 메타데이터 기반 특정 메시지(예: 시스템이 자동으로 작성한 메시지 또는 참여자가 비활성화한 메시지(예: 참여자가 분석하지 않도록 요청한 메시지)를 필터링할 수 있다.In various embodiments, the collection server 101 may include a de-identification module 101A and a non-target message filtering module 101B, and may include regular expression pattern matching-based URL recognition and E-mail recognition through the de-identification module. , can perform phone number recognition and person recognition functions, and can perform non-targeted message filtering modules to prevent specific messages based on message metadata (e.g., messages automatically created by the system or messages deactivated by participants (e.g., messages not analyzed by participants) based on message metadata. Requested messages) can be filtered.
여기서, 비식별화 모듈(101A)과 비대상 메시지 필터링 모듈(101B)은 비대면으로 진행되는 복수의 프로젝트 각각에 대한 업무 진행 상황 정보를 자동으로 취합할 수 있다.Here, the de-identification module 101A and the non-target message filtering module 101B can automatically collect work progress information for each of a plurality of projects conducted non-face-to-face.
일 실시예에서, 저장 서버(102)는 수집 서버(101)를 통해 수집된 프로젝트 참여자들 간에 송수신되는 메시지를 저장할 수 있다.In one embodiment, the storage server 102 may store messages transmitted and received between project participants collected through the collection server 101.
일 실시에에서, 분석 서버(103)는 수집 서버(101)를 통해 수집된 프로젝트 참여자들 간에 송수신되는 메시지를 실시간으로 수집할 수 있고, 일정 추출 모듈(103A)을 이용하여 일정 관리 서비스를 제공하거나 중요 메시지 분류 모듈(103B)을 이용하여 중요 메시지 관리 서비스를 제공할 수 있다.In one embodiment, the analysis server 103 may collect messages transmitted and received between project participants collected through the collection server 101 in real time, and provide a schedule management service using the schedule extraction module 103A. An important message management service can be provided using the important message classification module 103B.
또한, 분석 서버(103)는 저장 서버(102)에 저장된 메시지를 수집할 수 있고, 프로젝트 무드 분류 모듈(103C)과 요약문 추출 모듈(103D)을 이용하여 프로젝트 속성 정보 제공 서비스를 제공할 수 있다.Additionally, the analysis server 103 can collect messages stored in the storage server 102 and provide a project attribute information service using the project mood classification module 103C and the summary extract module 103D.
여기서, 일정 추출 모듈(103A), 중요 메시지 분류 모듈(103B), 프로젝트 무드 분류 모듈(103C) 및 요약문 추출 모듈(103D)은 메시지에 포함된 프로젝트와 연관된 정보를 인식할 수 있고, 이를 통해 참여자가 수동으로 작업하는 것을 최소화시킬 수 있다.Here, the schedule extraction module 103A, the important message classification module 103B, the project mood classification module 103C, and the summary sentence extraction module 103D can recognize information related to the project included in the message, and through this, participants Manual work can be minimized.
일 실시예에서, 인터랙션 서버(104)는 분석 서버(103)로부터 수집되는 일정 관리 서비스를 제공한 결과(예: 등록된 일정 정보)와 중요 메시지 관리 서비스를 제공한 결과(예: 중요 메시지, 등록된 리마인더 정보 등)를 메시지 인터랙션 모듈(104A)을 통해 프로젝트 관리 시스템(105)으로 제공할 수 있다.In one embodiment, the interaction server 104 collects results of providing a schedule management service collected from the analysis server 103 (e.g., registered schedule information) and results of providing an important message management service (e.g., important messages, registration, etc.). (reminder information, etc.) can be provided to the project management system 105 through the message interaction module 104A.
또한, 인터랙션 서버(104)는 보고서 인터랙션 모듈(104B)을 이용하여 일정 관리 서비스를 제공한 결과(예: 등록된 일정 정보)와 중요 메시지 관리 서비스를 제공한 결과(예: 중요 메시지, 등록된 리마인더 정보 등)를 포함하는 보고서를 생성하고, 이를 참여자 단말(200)로 제공할 수 있다.In addition, the interaction server 104 uses the report interaction module 104B to display the results of providing a schedule management service (e.g., registered schedule information) and the results of providing an important message management service (e.g., important messages, registered reminders, etc.). A report containing (information, etc.) can be generated and provided to the participant terminal 200.
여기서, 메시지 인터랙션 모듈(104A) 및 보고서 인터랙션 모듈(104B)은 메시지로부터 추출된 정보에 기초하여 참여자가 메신저에서 프로젝트 DB에 접근할 수 있도록 하는 인터렉티브 메시지를 생성하여 제공할 수 있다.Here, the message interaction module 104A and the report interaction module 104B can generate and provide an interactive message that allows participants to access the project DB through a messenger based on information extracted from the message.
일 실시예에서, 프로젝트 관리 시스템(105)은 프로젝트 관리 서비스 모듈(105A)을 이용하여, 데이터베이스(105B) 기 저장된 데이터를 기반으로 일정 관리 서비스, 중요 메시지 관리 서비스 및 프로젝트 속성 정보 제공 서비스를 포함하는 각종 관리 서비스를 제공할 수 있다.In one embodiment, the project management system 105 uses the project management service module 105A to provide a schedule management service, an important message management service, and a project attribute information provision service based on data already stored in the database 105B. We can provide various management services.
또한, 프로젝트 관리 시스템(105)은 외부의 모니터링 장치(500)와 연결될 수 있으며, 프로젝트와 관련된 각종 정보를 통합하여 출력하는 통합대시보드 사용자 인터페이스(User Interface, UI)를 제공할 수 있다.Additionally, the project management system 105 can be connected to an external monitoring device 500 and can provide an integrated dashboard user interface (UI) that integrates and outputs various information related to the project.
여기서, 통합대시보드는 복수의 프로젝트 각각에 대한 진행상황 정보와 복수의 프로젝트 각각에서 발생되는 이슈에 대한 정보를 출력함으로써, 참여자들이 선제적으로 이슈를 파악하여 리스크를 관리할 수 있다.Here, the integrated dashboard outputs progress information for each of multiple projects and information on issues arising from each of the multiple projects, allowing participants to proactively identify issues and manage risks.
일 실시예에서, 참여자 단말(200)은 네트워크(400)를 통해 프로젝트 관리 서비스 제공서버(100)와 연결될 수 있고, 프로젝트 관리 서비스 제공서버(100)로부터 각종 프로젝트 관리 서비스를 제공받을 수 있다.In one embodiment, the participant terminal 200 may be connected to the project management service providing server 100 through the network 400 and may receive various project management services from the project management service providing server 100.
다양한 실시예에서, 참여자 단말(200)은 적어도 일부분에 디스플레이를 포함하며, 프로젝트 관리 서비스 제공서버(100)가 제공하는 애플리케이션의 구동이 가능한 운영체제를 포함하는 스마트폰(Smart-phone) 단말일 수 있으며, 프로젝트 관리 서비스 제공서버(100)가 제공하는 애플리케이션을 다운로드, 설치 및 실행함에 따라 각종 프로젝트 관리 서비스와 관련된 UI를 디스플레이를 통해 출력할 수 있다. 그러나, 이에 한정되지 않고, 참여자 단말(200)은 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트 패드(Smartpad), 타블렛PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.In various embodiments, the participant terminal 200 includes a display at least in part and may be a smart-phone terminal including an operating system capable of running an application provided by the project management service providing server 100. , As the application provided by the project management service providing server 100 is downloaded, installed, and executed, UI related to various project management services can be output through the display. However, it is not limited to this, and the participant terminal 200 is a wireless communication device that guarantees portability and mobility, and includes navigation, Personal Communication System (PCS), Global System for Mobile communications (GSM), Personal Digital Cellular (PDC), and PHS. (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) It may include all types of handheld-based wireless communication devices such as terminals, smartpads, tablet PCs, etc.
일 실시예에서, 외부 서버(300)는 네트워크(400)를 통해 프로젝트 관리 서비스 제공서버(100)와 연결될 수 있으며, 프로젝트 관리 서비스 제공서버(100)가 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공 프로세스를 수행하기 위해 필요한 각종 정보/데이터를 저장하거나, 프로젝트 관리 서비스 제공서버(100)가 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공 프로세스를 수행함에 따라 생성되는 각종 정보/데이터를 저장할 수 있다. 예를 들어, 외부 서버(300)는 프로젝트 관리 서비스 제공서버(100) 외부에 별도로 구비되는 저장 서버일 수 있으나, 이에 한정되지 않는다. 이하, 도 3을 참조하여 프로젝트 관리 서비스 제공서버(100)의 하드웨어 구성에 대해 설명하도록 한다.In one embodiment, the external server 300 may be connected to the project management service providing server 100 through the network 400, and the project management service providing server 100 may provide visualized project information based on conversation analysis between project participants. Various information/data required to perform the process may be stored, or various information/data generated as the project management service providing server 100 performs a process of providing visualized project information based on conversation analysis between project participants. For example, the external server 300 may be a storage server separately provided outside the project management service providing server 100, but is not limited to this. Hereinafter, the hardware configuration of the project management service providing server 100 will be described with reference to FIG. 3.
도 3은 본 발명의 다른 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버의 하드웨어 구성도이다.Figure 3 is a hardware configuration diagram of a server providing visualized project information based on conversation analysis between project participants according to another embodiment of the present invention.
도 3을 참조하면, 본 발명의 다른 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버(100)(이하, “컴퓨팅 장치(100)”)는 하나 이상의 프로세서(110), 프로세서(110)에 의하여 수행되는 컴퓨터 프로그램(151)을 로드(Load)하는 메모리(120), 버스(130), 통신 인터페이스(140) 및 컴퓨터 프로그램(151)을 저장하는 스토리지(150)를 포함할 수 있다. 여기서, 도 3에는 본 발명의 실시예와 관련 있는 구성요소들만 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 3에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.Referring to FIG. 3, a server 100 providing visualized project information based on conversation analysis between project participants according to another embodiment of the present invention (hereinafter referred to as “computing device 100”) includes one or more processors 110, a processor ( It may include a memory 120 that loads the computer program 151 executed by 110, a bus 130, a communication interface 140, and a storage 150 that stores the computer program 151. . Here, only components related to the embodiment of the present invention are shown in Figure 3. Accordingly, anyone skilled in the art to which the present invention pertains can recognize that other general-purpose components may be included in addition to the components shown in FIG. 3.
프로세서(110)는 컴퓨팅 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(110)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다.The processor 110 controls the overall operation of each component of the computing device 100. The processor 110 includes a Central Processing Unit (CPU), Micro Processor Unit (MPU), Micro Controller Unit (MCU), Graphic Processing Unit (GPU), or any other type of processor well known in the art of the present invention. It can be.
또한, 프로세서(110)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있으며, 컴퓨팅 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.Additionally, the processor 110 may perform operations on at least one application or program for executing methods according to embodiments of the present invention, and the computing device 100 may include one or more processors.
다양한 실시예에서, 프로세서(110)는 프로세서(110) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(110)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.In various embodiments, the processor 110 includes random access memory (RAM) (not shown) and read memory (ROM) that temporarily and/or permanently store signals (or data) processed within the processor 110. -Only Memory, not shown) may be further included. Additionally, the processor 110 may be implemented in the form of a system on chip (SoC) that includes at least one of a graphics processing unit, RAM, and ROM.
메모리(120)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(120)는 본 발명의 다양한 실시예에 따른 방법/동작을 실행하기 위하여 스토리지(150)로부터 컴퓨터 프로그램(151)을 로드할 수 있다. 메모리(120)에 컴퓨터 프로그램(151)이 로드되면, 프로세서(110)는 컴퓨터 프로그램(151)을 구성하는 하나 이상의 인스트럭션들을 실행함으로써 상기 방법/동작을 수행할 수 있다. 메모리(120)는 RAM과 같은 휘발성 메모리로 구현될 수 있을 것이나, 본 개시의 기술적 범위가 이에 한정되는 것은 아니다.Memory 120 stores various data, commands and/or information. Memory 120 may load a computer program 151 from storage 150 to execute methods/operations according to various embodiments of the present invention. When the computer program 151 is loaded into the memory 120, the processor 110 can perform the method/operation by executing one or more instructions constituting the computer program 151. The memory 120 may be implemented as a volatile memory such as RAM, but the technical scope of the present disclosure is not limited thereto.
버스(130)는 컴퓨팅 장치(100)의 구성 요소 간 통신 기능을 제공한다. 버스(130)는 주소 버스(address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.Bus 130 provides communication functionality between components of computing device 100. The bus 130 may be implemented as various types of buses, such as an address bus, a data bus, and a control bus.
통신 인터페이스(140)는 컴퓨팅 장치(100)의 유무선 인터넷 통신을 지원한다. 또한, 통신 인터페이스(140)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 통신 인터페이스(140)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다. 몇몇 실시예에서, 통신 인터페이스(140)는 생략될 수도 있다.The communication interface 140 supports wired and wireless Internet communication of the computing device 100. Additionally, the communication interface 140 may support various communication methods other than Internet communication. To this end, the communication interface 140 may be configured to include a communication module well known in the technical field of the present invention. In some embodiments, communication interface 140 may be omitted.
스토리지(150)는 컴퓨터 프로그램(151)을 비 임시적으로 저장할 수 있다. 컴퓨팅 장치(100)를 통해 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공 프로세스를 수행하는 경우, 스토리지(150)는 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공 프로세스를 제공하기 위하여 필요한 각종 정보를 저장할 수 있다.Storage 150 may store the computer program 151 non-temporarily. When performing a process for providing visualized project information based on conversation analysis between project participants through the computing device 100, the storage 150 stores various information necessary to provide a process for providing visualized project information based on conversation analysis between project participants. You can.
스토리지(150)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The storage 150 is a non-volatile memory such as Read Only Memory (ROM), Erasable Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), flash memory, a hard disk, a removable disk, or a device well known in the technical field to which the present invention pertains. It may be configured to include any known type of computer-readable recording medium.
컴퓨터 프로그램(151)은 메모리(120)에 로드될 때 프로세서(110)로 하여금 본 발명의 다양한 실시예에 따른 방법/동작을 수행하도록 하는 하나 이상의 인스트럭션들을 포함할 수 있다. 즉, 프로세서(110)는 상기 하나 이상의 인스트럭션들을 실행함으로써, 본 발명의 다양한 실시예에 따른 상기 방법/동작을 수행할 수 있다.The computer program 151, when loaded into the memory 120, may include one or more instructions that cause the processor 110 to perform methods/operations according to various embodiments of the present invention. That is, the processor 110 can perform the method/operation according to various embodiments of the present invention by executing the one or more instructions.
일 실시예에서, 컴퓨터 프로그램(151)은 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 하나 이상의 요약문을 추출하는 단계 및 추출된 하나 이상의 요약문을 기반으로 프로젝트 관리 서비스를 제공하는 단계를 포함하는 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법을 수행하도록 하는 하나 이상의 인스트럭션을 포함할 수 있다.In one embodiment, the computer program 151 includes extracting one or more summaries by analyzing messages transmitted and received between project participants and providing project management services based on the one or more extracted summaries. It may include one or more instructions that perform a method of providing visualized project information based on conversation analysis between people.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of the method or algorithm described in connection with embodiments of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof. The software module may be RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), Flash Memory, hard disk, removable disk, CD-ROM, or It may reside on any type of computer-readable recording medium well known in the art to which the present invention pertains.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 이하, 도 4 내지 도 14를 참조하여, 컴퓨팅 장치(100)가 제공하는 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법에 대해 설명하도록 한다.The components of the present invention may be implemented as a program (or application) and stored in a medium in order to be executed in conjunction with a hardware computer. Components of the invention may be implemented as software programming or software elements, and similarly, embodiments may include various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, such as C, C++, , may be implemented in a programming or scripting language such as Java, assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors. Hereinafter, with reference to FIGS. 4 to 14, a method of providing visualized project information based on conversation analysis between project participants provided by the computing device 100 will be described.
도 4는 본 발명의 또 다른 실시예에 따른 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법의 순서도이다.Figure 4 is a flowchart of a method for providing visualized project information based on conversation analysis between project participants according to another embodiment of the present invention.
도 4를 참조하면, S110 단계에서, 컴퓨팅 장치(100)는 복수의 참여자 단말(200)과 연결될 수 있고, 복수의 참여자 단말(200)로부터 메시지(예: 참여자들 간에 송수신된 메시지 데이터)를 수집할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 복수의 참여자 단말(200) 각각의 메시지 중계 모듈로부터 복수의 참여자 각각이 송수신한 메시지를 수집할 수 있다. 그러나, 이에 한정되지 않는다.Referring to FIG. 4, in step S110, the computing device 100 may be connected to a plurality of participant terminals 200 and collect messages (e.g., message data transmitted and received between participants) from the plurality of participant terminals 200. can do. For example, the computing device 100 may collect messages transmitted and received by each of the plurality of participants from the message relay module of each of the plurality of participant terminals 200. However, it is not limited to this.
여기서, 메시지는 텍스트 메시지일 수 있으나, 이에 한정되지 않고, 영상(동영상, 이미지) 메시지, 음성 메시지나 특수문자 및 이모티콘을 포함할 수 있다. Here, the message may be a text message, but is not limited to this and may include a video (video, image) message, voice message, special characters, and emoticons.
다양한 실시예에서, 컴퓨팅 장치(100)는 복수의 참여자 단말(200)로부터 수집된 메시지를 수집하고, 수집한 메시지를 프로젝트별로 분류할 수 있으나, 이에 한정되지 않고, 복수의 참여자들이 참여하는 프로젝트에 따라 복수의 참여자들을 먼저 분류하고, 프로젝트별로 분류된 참여자들의 참여자 단말(200)을 통해 메시지를 수집함으로써, 프로젝트별로 분류된 메시지를 수집할 수 있다. 여기서, 컴퓨팅 장치(100)는 참여자 단말(200)의 메시지 중계 모듈을 통해 참여자들 간에 송수신되는 메시지를 실시간으로 수집하는 형태로 구현될 수 있으나, 이는 하나의 예시일 뿐, 이에 한정되지 않고 메시지를 수집하는 다른 범용적인 방법(예: 참여자들 간에 송수신되는 메시지를 백업하여 저장하는 저장 서버로부터 메시지를 로드)이 적용될 수 있다.In various embodiments, the computing device 100 may collect messages collected from a plurality of participant terminals 200 and classify the collected messages by project, but is not limited to this and may be used in projects in which a plurality of participants participate. Accordingly, by first classifying a plurality of participants and collecting messages through the participant terminal 200 of the participants classified by project, messages classified by project can be collected. Here, the computing device 100 may be implemented to collect messages transmitted and received between participants in real time through the message relay module of the participant terminal 200, but this is only an example and is not limited to this. Other general-purpose methods of collection (e.g., loading messages from a storage server that backs up and stores messages sent and received between participants) can be applied.
S120 단계에서, 컴퓨팅 장치(100)는 S110 단계에서 수집한 메시지를 분석하여 하나 이상의 요약문을 추출할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 인공지능 모델을 이용하여 수집한 메시지를 분석함으로써, 수집한 메시지에 포함된 하나 이상의 요약문을 추출할 수 있다.In step S120, the computing device 100 may extract one or more summaries by analyzing the messages collected in step S110. For example, the computing device 100 may extract one or more summaries included in the collected messages by analyzing the collected messages using an artificial intelligence model.
여기서, 인공지능 모델은 하나 이상의 요약문이 레이블링된 메시지를 학습 데이터로 하여 기 학습된 모델(예: 개체명인식 모델(NER 모델))일 수 있다.Here, the artificial intelligence model may be a model (e.g., entity name recognition model (NER model)) that has been previously learned using messages labeled with one or more summary sentences as learning data.
여기서, 인공지능 모델(예: 신경망)은 하나 이상의 네트워크 함수로 구성되며, 하나 이상의 네트워크 함수는 일반적으로 ‘노드’라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 ‘노드’들은 ‘뉴런(neuron)’들로 지칭될 수도 있다. 하나 이상의 네트워크 함수는 적어도 하나 이상의 노드들을 포함하여 구성된다. 하나 이상의 네트워크 함수를 구성하는 노드(또는 뉴런)들은 하나 이상의 ‘링크’에 의해 상호 연결될 수 있다.Here, an artificial intelligence model (e.g., a neural network) is composed of one or more network functions, and one or more network functions may be composed of a set of interconnected computational units, which can generally be referred to as ‘nodes.’ These ‘nodes’ may also be referred to as ‘neurons’. One or more network functions are composed of at least one or more nodes. Nodes (or neurons) that make up one or more network functions may be interconnected by one or more ‘links’.
인공지능 모델 내에서, 링크를 통해 연결된 하나 이상의 노드들은 상대적으로 입력 노드 및 출력 노드의 관계를 형성할 수 있다. 입력 노드 및 출력 노드의 개념은 상대적인 것으로서, 하나의 노드에 대하여 출력 노드 관계에 있는 임의의 노드는 다른 노드와의 관계에서 입력 노드 관계에 있을 수 있으며, 그 역도 성립할 수 있다. 전술한 바와 같이, 입력 노드 대 출력 노드 관계는 링크를 중심으로 생성될 수 있다. 하나의 입력 노드에 하나 이상의 출력 노드가 링크를 통해 연결될 수 있으며, 그 역도 성립할 수 있다.Within an artificial intelligence model, one or more nodes connected through a link can form a relative input node and output node relationship. The concepts of input node and output node are relative, and any node in an output node relationship with one node may be in an input node relationship with another node, and vice versa. As described above, input node to output node relationships can be created around links. One or more output nodes can be connected to one input node through a link, and vice versa.
하나의 링크를 통해 연결된 입력 노드 및 출력 노드 관계에서, 출력 노드는 입력 노드에 입력된 데이터에 기초하여 그 값이 결정될 수 있다. 여기서 입력 노드와 출력 노드를 상호 연결하는 노드는 가중치(weight)를 가질 수 있다. 가중치는 가변적일 수 있으며, 인공지능 모델이 원하는 기능을 수행하기 위해, 사용자 또는 알고리즘에 의해 가변될 수 있다. 예를 들어, 하나의 출력 노드에 하나 이상의 입력 노드가 각각의 링크에 의해 상호 연결된 경우, 출력 노드는 상기 출력 노드와 연결된 입력 노드들에 입력된 값들 및 각각의 입력 노드들에 대응하는 링크에 설정된 가중치에 기초하여 출력 노드 값을 결정할 수 있다.In a relationship between an input node and an output node connected through one link, the value of the output node may be determined based on data input to the input node. Here, the nodes connecting the input node and the output node may have a weight. Weights may be variable and may be varied by the user or algorithm in order for the artificial intelligence model to perform the desired function. For example, when one or more input nodes are connected to one output node by respective links, the output node is set to the values input to the input nodes connected to the output node and the links corresponding to each input node. The output node value can be determined based on the weight.
전술한 바와 같이, 인공지능 모델은 하나 이상의 노드들이 하나 이상의 링크를 통해 상호연결 되어 인공지능 모델 내에서 입력 노드 및 출력 노드 관계를 형성한다. 인공지능 모델 내에서 노드들과 링크들의 개수 및 노드들과 링크들 사이의 연관관계, 링크들 각각에 부여된 가중치의 값에 따라, 인공지능 모델의 특성이 결정될 수 있다. 예를 들어, 동일한 개수의 노드 및 링크들이 존재하고, 링크들 사이의 가중치 값이 상이한 두 인공지능 모델이 존재하는 경우, 두 개의 인공지능 모델들은 서로 상이한 것으로 인식될 수 있다.As described above, in an artificial intelligence model, one or more nodes are interconnected through one or more links to form an input node and output node relationship within the artificial intelligence model. The characteristics of the artificial intelligence model can be determined according to the number of nodes and links within the artificial intelligence model, the correlation between nodes and links, and the weight value assigned to each link. For example, if there are two artificial intelligence models with the same number of nodes and links and different weight values between the links, the two artificial intelligence models may be recognized as different from each other.
인공지능 모델을 구성하는 노드들 중 일부는, 최초 입력 노드로부터의 거리들에 기초하여, 하나의 레이어(layer)를 구성할 수 있다. 예를 들어, 최초 입력 노드로부터 거리가 n인 노드들의 집합은, n 레이어를 구성할 수 있다. 최초 입력 노드로부터 거리는, 최초 입력 노드로부터 해당 노드까지 도달하기 위해 거쳐야 하는 링크들의 최소 개수에 의해 정의될 수 있다. 그러나, 이러한 레이어의 정의는 설명을 위한 임의적인 것으로서, 인공지능 모델 내에서 레이어의 차수는 전술한 것과 상이한 방법으로 정의될 수 있다. 예를 들어, 노드들의 레이어는 최종 출력 노드로부터 거리에 의해 정의될 수도 있다.Some of the nodes constituting the artificial intelligence model may form one layer based on the distances from the initial input node. For example, a set of nodes with a distance n from the initial input node may constitute n layers. The distance from the initial input node can be defined by the minimum number of links that must be passed to reach the node from the initial input node. However, this definition of the layer is arbitrary for explanation purposes, and the order of the layer within the artificial intelligence model may be defined in a different way than described above. For example, a layer of nodes may be defined by distance from the final output node.
최초 입력 노드는 인공지능 모델 내의 노드들 중 다른 노드들과의 관계에서 링크를 거치지 않고 데이터가 직접 입력되는 하나 이상의 노드들을 의미할 수 있다. 또는, 인공지능 모델 네트워크 내에서, 링크를 기준으로 한 노드 간의 관계에 있어서, 링크로 연결된 다른 입력 노드들 가지지 않는 노드들을 의미할 수 있다. 이와 유사하게, 최종 출력 노드는 인공지능 모델 내의 노드들 중 다른 노드들과의 관계에서, 출력 노드를 가지지 않는 하나 이상의 노드들을 의미할 수 있다. 또한, 히든 노드는 최초 입력 노드 및 최후 출력 노드가 아닌 인공지능 모델을 구성하는 노드들을 의미할 수 있다. 본 개시의 일 실시예에 따른 인공지능 모델은 입력 레이어의 노드가 출력 레이어에 가까운 히든 레이어의 노드보다 많을 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 감소하는 형태의 인공지능 모델일 수 있다.The initial input node may refer to one or more nodes in the artificial intelligence model into which data is directly input without going through links in relationships with other nodes. Alternatively, in an artificial intelligence model network, in the relationship between nodes based on links, it may mean nodes that do not have other input nodes connected by links. Similarly, the final output node may refer to one or more nodes that do not have an output node in their relationship with other nodes among the nodes in the artificial intelligence model. Additionally, hidden nodes may refer to nodes that constitute an artificial intelligence model rather than the first input node and the last output node. The artificial intelligence model according to an embodiment of the present disclosure may have more nodes in the input layer than the nodes in the hidden layer close to the output layer, and is an artificial intelligence model in which the number of nodes decreases as it progresses from the input layer to the hidden layer. You can.
인공지능 모델은 하나 이상의 히든 레이어를 포함할 수 있다. 히든 레이어의 히든 노드는 이전의 레이어의 출력과 주변 히든 노드의 출력을 입력으로 할 수 있다. 각 히든 레이어 별 히든 노드의 수는 동일할 수도 있고 상이할 수도 있다. 입력 레이어의 노드의 수는 입력 데이터의 데이터 필드의 수에 기초하여 결정될 수 있으며 히든 노드의 수와 동일할 수도 있고 상이할 수도 있다. 입력 레이어에 입력된 입력 데이터는 히든 레이어의 히든 노드에 의하여 연산될 수 있고 출력 레이어인 완전 연결 레이어(FCL: fully connected layer)에 의해 출력될 수 있다.An artificial intelligence model may include one or more hidden layers. The hidden node of the hidden layer can take the output of the previous layer and the output of surrounding hidden nodes as input. The number of hidden nodes for each hidden layer may be the same or different. The number of nodes in the input layer may be determined based on the number of data fields of the input data and may be the same as or different from the number of hidden nodes. Input data input to the input layer can be operated by the hidden node of the hidden layer and output by the fully connected layer (FCL), which is the output layer.
다양한 실시예에서, 인공지능 모델은 딥 뉴럴 네트워크(DNN: deep neural network, 심층신경망)일 수 있다. 딥 뉴럴 네트워크는 입력 레이어와 출력 레이어 외에 복수의 히든 레이어를 포함하는 인공지능 모델을 의미할 수 있다. 딥 뉴럴 네트워크를 이용하면 데이터의 잠재적인 구조(latent structures)를 파악할 수 있다. 즉, 사진, 글, 비디오, 음성, 음악의 잠재적인 구조(예를 들어, 어떤 물체가 사진에 있는지, 글의 내용과 감정이 무엇인지, 음성의 내용과 감정이 무엇인지 등)를 파악할 수 있다. 딥 뉴럴 네트워크는 컨벌루셔널 뉴럴 네트워크(CNN: convolutional neural network), 리커런트 뉴럴 네트워크(RNN: recurrent neural network), 오토 인코더(auto encoder), GAN(Generative Adversarial Networks), 제한 볼츠만 머신(RBM: restricted boltzmann machine), 심층 신뢰 네트워크(DBN: deep belief network), Q 네트워크, U 네트워크, 샴 네트워크 등을 포함할 수 있다. 전술한 딥 뉴럴 네트워크의 기재는 예시일 뿐이며 본 개시는 이에 제한되지 않는다.In various embodiments, the artificial intelligence model may be a deep neural network (DNN). A deep neural network may refer to an artificial intelligence model that includes multiple hidden layers in addition to the input layer and output layer. Deep neural networks allow you to identify latent structures in data. In other words, it is possible to identify the potential structure of a photo, text, video, voice, or music (e.g., what object is in the photo, what the content and emotion of the text are, what the content and emotion of the voice are, etc.) . Deep neural networks include convolutional neural networks (CNN), recurrent neural networks (RNN), auto encoders, generative adversarial networks (GAN), and restricted Boltzmann machines (RBMs). boltzmann machine), deep belief network (DBN), Q network, U network, Siamese network, etc. The description of the deep neural network described above is only an example and the present disclosure is not limited thereto.
다양한 실시예에서, 네트워크 함수는 오토 인코더를 포함할 수도 있다. 오토 인코더는 입력 데이터와 유사한 출력 데이터를 출력하기 위한 인공 신경망의 일종일 수 있다. 오토 인코더는 적어도 하나의 히든 레이어를 포함할 수 있으며, 홀수 개의 히든 레이어가 입출력 레이어 사이에 배치될 수 있다. 각각의 레이어의 노드의 수는 입력 레이어의 노드의 수에서 병목 레이어(인코딩)라는 중간 레이어로 축소되었다가, 병목 레이어에서 출력 레이어(입력 레이어와 대칭)로 축소와 대칭되어 확장될 수도 있다. 차원 감소 레이어와 차원 복원 레이어의 노드는 대칭일 수도 있고 아닐 수도 있다.In various embodiments, a network function may include an autoencoder. An autoencoder may be a type of artificial neural network to output output data similar to input data. The autoencoder may include at least one hidden layer, and an odd number of hidden layers may be placed between input and output layers. The number of nodes in each layer may be reduced from the number of nodes in the input layer to an intermediate layer called the bottleneck layer (encoding), and then expanded symmetrically and reduced from the bottleneck layer to the output layer (symmetrical to the input layer). The nodes of the dimensionality reduction layer and dimensionality restoration layer may or may not be symmetric.
오토 인코더는 비선형 차원 감소를 수행할 수 있다. 입력 레이어 및 출력 레이어의 수는 입력 데이터의 전처리 이후에 남은 센서들의 수와 대응될 수 있다. 오토 인코더 구조에서 인코더에 포함된 히든 레이어의 노드의 수는 입력 레이어에서 멀어질수록 감소하는 구조를 가질 수 있다. 병목 레이어(인코더와 디코더 사이에 위치하는 가장 적은 노드를 가진 레이어)의 노드의 수는 너무 작은 경우 충분한 양의 정보가 전달되지 않을 수 있으므로, 특정 수 이상(예를 들어, 입력 레이어의 절반 이상 등)으로 유지될 수도 있다.Autoencoders can perform nonlinear dimensionality reduction. The number of input layers and output layers may correspond to the number of sensors remaining after preprocessing of the input data. In an auto-encoder structure, the number of nodes in the hidden layer included in the encoder may have a structure that decreases as the distance from the input layer increases. If the number of nodes in the bottleneck layer (the layer with the fewest nodes located between the encoder and decoder) is too small, not enough information may be conveyed, so if it is higher than a certain number (e.g., more than half of the input layers, etc.) ) may be maintained.
다양한 실시예에서, 컴퓨팅 장치(100)는 메시지에 포함된 하나 이상의 요약문을 레이블링함으로써, 인공지능 모델을 지도학습(supervised learning)(교사 학습)시키기 위한 학습 데이터를 생성할 수 있다. 그러나, 이에 한정되지 않고, 컴퓨팅 장치(100)는 비교사 학습(unsupervised learning) 및 반교사학습(semi supervised learning)으로 인공지능 모델을 학습시킬 수 있다. 여기서, 컴퓨팅 장치(100)가 학습 데이터를 생성하는 방법은 도 15 및 16을 참조하여 후술하도록 한다.In various embodiments, the computing device 100 may generate learning data for supervised learning (teacher learning) of an artificial intelligence model by labeling one or more summary sentences included in the message. However, it is not limited to this, and the computing device 100 can learn an artificial intelligence model through unsupervised learning and semi-supervised learning. Here, the method by which the computing device 100 generates learning data will be described later with reference to FIGS. 15 and 16.
여기서, 지도학습은 통상적으로 특정 데이터와 특정 데이터에 연관된 정보를 레이블링하여 학습 데이터를 생성하고, 이를 이용하여 학습시키는 방법으로써, 인과 관계를 가진 두 데이터를 레이블링하여 학습 데이터를 생성하고, 생성된 학습 데이터를 통해 학습하는 방법을 의미한다.Here, supervised learning is a method that typically creates learning data by labeling specific data and information related to the specific data, and uses this to learn. Learning data is generated by labeling two data with a causal relationship, and the generated learning data is used. It refers to a method of learning through data.
보다 구체적으로, 컴퓨팅 장치(100)는 레이블링된 학습 데이터를 이용하여 인공지능 모델을 구성하는 하나 이상의 네트워크 함수에 대한 학습을 수행할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 학습 입력 데이터 각각을 하나 이상의 네트워크 함수에 입력시키고, 하나 이상의 네트워크 함수로 연산된 출력 데이터 각각과 학습 입력 데이터 각각의 레이블에 해당하는 학습 출력 데이터 각각을 비교하여 오차를 도출할 수 있다. 즉, 인공지능 모델의 학습에서 학습 입력 데이터는 하나 이상의 네트워크 함수의 입력 레이어에 입력될 수 있으며, 학습 출력 데이터는 하나 이상의 네트워크 함수의 출력과 비교될 수 있다.More specifically, the computing device 100 may perform learning on one or more network functions constituting an artificial intelligence model using labeled learning data. For example, the computing device 100 inputs each of the learning input data into one or more network functions, compares each of the output data calculated by one or more network functions with each of the learning output data corresponding to the label of each of the learning input data, Errors can be derived. That is, in training an artificial intelligence model, learning input data may be input to the input layer of one or more network functions, and learning output data may be compared with the output of one or more network functions.
컴퓨팅 장치(100)는 학습 입력 데이터에 대한 하나 이상의 네트워크 함수의 연산 결과와 학습 출력 데이터(레이블)의 오차에 기초하여 인공지능 모델을 학습시킬 수 있다.The computing device 100 may train an artificial intelligence model based on the calculation results of one or more network functions on the learning input data and the error of the learning output data (label).
또한, 컴퓨팅 장치(100)는 오차에 기초하여 하나 이상의 네트워크 함수의 가중치를 역전파 방식으로 조정할 수 있다. 즉, 컴퓨팅 장치(100)는 학습 입력 데이터에 대한 하나 이상의 네트워크 함수의 연산 결과와 학습 출력 데이터의 오차에 기초하여 하나 이상의 네트워크 함수의 출력이 학습 출력 데이터에 가까워지도록 가중치를 조정할 수 있다.Additionally, the computing device 100 may adjust the weight of one or more network functions based on the error using a backpropagation method. That is, the computing device 100 may adjust the weights so that the output of one or more network functions is closer to the learning output data based on the calculation results of one or more network functions on the learning input data and the error of the learning output data.
컴퓨팅 장치(100)는 하나 이상의 네트워크 함수의 학습이 사전 결정된 에폭 이상 수행된 경우, 검증 데이터를 이용하여 학습의 중단 여부를 결정할 수 있다. 사전 결정된 에폭은 전체 학습 목표 에폭의 일부일 수 있다.When learning of one or more network functions has been performed for more than a predetermined epoch, the computing device 100 may determine whether to stop learning using verification data. The predetermined epoch may be part of the overall learning target epoch.
검증 데이터는 레이블링된 학습 데이터 중 적어도 일부로 구성될 수 있다. 즉, 컴퓨팅 장치(100)는 학습 데이터를 통해 인공지능 모델의 학습을 수행하며, 인공지능 모델의 학습이 사전결정된 에폭 이상 반복된 후, 검증 데이터를 이용하여 인공지능 모델의 학습 효과가 사전 결정된 수준 이상인지 여부를 판단할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 100개의 학습 데이터를 이용하여 목표 반복 학습 횟수가 10회인 학습을 수행하는 경우, 사전결정된 에폭인 10회의 반복 학습을 수행한 후, 10개의 검증 데이터를 이용하여 3회의 반복 학습을 수행하여, 3회의 반복 학습 동안 인공지능 모델 출력의 변화가 사전결정된 수준 이하인 경우 더 이상의 학습이 무의미한 것으로 판단하고 학습을 종료할 수 있다.Verification data may consist of at least some of the labeled training data. That is, the computing device 100 performs learning of the artificial intelligence model through learning data, and after learning of the artificial intelligence model is repeated for more than a predetermined epoch, the learning effect of the artificial intelligence model is set to a predetermined level using verification data. You can judge whether it is abnormal or not. For example, when the computing device 100 performs learning with a target repetition learning number of 10 using 100 learning data, it performs learning repetition 10 times, which is a predetermined epoch, and then performs learning using 10 verification data. By performing repeated learning three times, if the change in the output of the artificial intelligence model during three repeated learning is below a predetermined level, it is determined that further learning is meaningless and learning can be terminated.
즉, 검증 데이터는 인공지능 모델의 반복 학습에서 에폭별 학습의 효과가 일정 이상인지 이하인지 여부에 기초하여 학습의 완료를 결정하는 데 이용될 수 있다. 전술한 학습 데이터, 검증 데이터의 수 및 반복 횟수는 예시일 뿐이며 본 개시는 이에 제한되지 않는다.In other words, verification data can be used to determine completion of learning based on whether the effect of learning for each epoch is above or below a certain level in the iterative learning of an artificial intelligence model. The above-described number of training data, verification data, and number of repetitions are only examples and the present disclosure is not limited thereto.
컴퓨팅 장치(100)는 테스트 데이터를 이용하여 하나 이상의 네트워크 함수의 성능을 테스트하여 하나 이상의 네트워크 함수의 활성화 여부를 결정함으로써, 인공지능 모델을 생성할 수 있다. 테스트 데이터는 인공지능 모델의 성능을 검증하기 위하여 사용될 수 있으며, 학습 데이터 중 적어도 일부로 구성될 수 있다. 예를 들어, 학습 데이터 중 70%는 인공지능 모델의 학습(즉, 레이블과 비슷한 결과값을 출력하도록 가중치를 조정하기 위한 학습)을 위해 활용될 수 있으며, 30%는 인공지능 모델의 성능을 검증하기 위한 테스트 데이터로써 활용될 수 있다. 컴퓨팅 장치(100)는 학습이 완료된 인공지능 모델에 테스트 데이터를 입력하고 오차를 측정하여 사전 결정된 성능 이상인지 여부에 따라 인공지능 모델의 활성화 여부를 결정할 수 있다.The computing device 100 may generate an artificial intelligence model by testing the performance of one or more network functions using test data and determining whether to activate one or more network functions. Test data may be used to verify the performance of an artificial intelligence model and may consist of at least part of the learning data. For example, 70% of the training data can be used for training the artificial intelligence model (i.e. learning to adjust the weights to output results similar to labels), and 30% can be used to verify the performance of the artificial intelligence model. It can be used as test data to do this. The computing device 100 may input test data into the trained artificial intelligence model, measure the error, and determine whether to activate the artificial intelligence model depending on whether it exceeds a predetermined performance.
컴퓨팅 장치(100)는 학습이 완료된 인공지능 모델에 테스트 데이터를 이용하여 학습 완료된 인공지능 모델의 성능을 검증하고 학습 완료된 인공지능 모델의 성능이 사전에 결정된 기준 이상인 경우 해당 인공지능 모델을 다른 어플리케이션에서 사용하도록 활성화할 수 있다. The computing device 100 verifies the performance of the trained artificial intelligence model by using test data on the trained artificial intelligence model, and if the performance of the trained artificial intelligence model is higher than a predetermined standard, the artificial intelligence model can be used in another application. You can enable it for use.
또한, 컴퓨팅 장치(100)는 학습 완료된 인공지능 모델의 성능이 사전에 결정된 기준 이하인 경우 해당 인공지능 모델을 비활성화하여 폐기할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 정확도(accuracy), 정밀도(precision), 재현율(recall) 등의 요소를 기준으로 하여 생성된 인공지능 모델 모델의 성능을 판단할 수 있다. 전술한 성능 평가 기준은 예시일 뿐이며 본 개시는 이에 제한되지 않는다. 본 개시의 일 실시예에 따라 컴퓨팅 장치(100)는 각각의 인공지능 모델을 독립적으로 학습시켜 복수의 인공지능 모델 모델을 생성할 수 있으며, 성능을 평가하여 일정 성능 이상의 인공지능 모델만을 사용할 수 있다.Additionally, if the performance of the trained artificial intelligence model is below a predetermined standard, the computing device 100 may deactivate and discard the artificial intelligence model. For example, the computing device 100 may determine the performance of the generated artificial intelligence model model based on factors such as accuracy, precision, and recall. The above-described performance evaluation criteria are only examples and the present disclosure is not limited thereto. According to an embodiment of the present disclosure, the computing device 100 can independently learn each artificial intelligence model to create a plurality of artificial intelligence model models, and evaluate performance to use only artificial intelligence models with a certain performance or higher. .
다양한 실시예에서, 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 복수의 메시지를 분석하되, 복수의 메시지 중 프로젝트의 참여자들 중 적어도 하나의 참여자로부터 비활성화 설정된 메시지를 요약문 추출 대상에서 제외시킬 수 있다. 예를 들어, 참여자들은 메시지를 송신하는 과정에서 자신이 송신하는 메시지에 대한 설정(예: 활성화 또는 비활성화)할 수 있고, 컴퓨팅 장치(100)는 참여자가 비활성화 설정한 메시지 즉, 분석하지 않도록 설정된 메시지를 요약문 추출 대상에서 제외시킴으로써, 해당 메시지를 분석하지 않을 수 있다. 경우에 따라, 컴퓨팅 장치(100)는 참여자로부터 비활성화 설정된 메시지는 S110 단계를 거치더라도 수집하지 않을 수 있다.In various embodiments, the computing device 100 may analyze a plurality of messages transmitted and received between project participants, and exclude from the summary text extraction a message that is set to be disabled by at least one of the project participants among the plurality of messages. there is. For example, in the process of transmitting a message, participants can set (e.g., activate or deactivate) the message they are transmitting, and the computing device 100 may set the message to be disabled by the participant, that is, a message set not to be analyzed. By excluding from the summary text extraction target, the message can not be analyzed. In some cases, the computing device 100 may not collect messages that are set to be deactivated from participants even if they go through step S110.
S130 단계에서, 컴퓨팅 장치(100)는 S120 단계에서 추출한 하나 이상의 요약문을 기반으로 프로젝트 관리 서비스를 제공할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 메시지에 포함된 하나 이상의 요약문을 이용하여 일정 관리 서비스, 중요 메시지 관리 서비스 및 프로젝트 속성 정보 제공 서비스를 제공할 수 있다. 이하, 도 5 내지 도 7을 참조하여, 컴퓨팅 장치(100)가 제공하는 일정 관리 서비스에 대해 설명하도록 한다.In step S130, the computing device 100 may provide a project management service based on one or more summaries extracted in step S120. For example, the computing device 100 may provide a schedule management service, an important message management service, and a project attribute information provision service using one or more summary sentences included in the message. Hereinafter, the schedule management service provided by the computing device 100 will be described with reference to FIGS. 5 to 7 .
도 5는 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버에 의해 수행되는 일정 관리 서비스 제공 방법의 순서도이며, 도 6 및 도 7은 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버가 제공하는 일정 관리 서비스를 도시한 도면이다.Figure 5 is a flowchart of a schedule management service provision method performed by a visualized project information providing server based on conversation analysis between project participants in various embodiments, and Figures 6 and 7 are flowcharts of a method for providing schedule management services based on conversation analysis between project participants in various embodiments. This is a diagram showing the schedule management service provided by the visualized project information server.
도 5 내지 도 7을 참조하면, S210 단계에서, 컴퓨팅 장치(100)는 참여자로부터 일정 등록 요청을 획득할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 참여자로부터 특정 메시지를 대상으로 일정 등록을 요청받을 수 있다.Referring to FIGS. 5 to 7 , in step S210, the computing device 100 may obtain a schedule registration request from the participant. For example, the computing device 100 may receive a request from a participant to register a schedule for a specific message.
먼저, 컴퓨팅 장치(100)는 도 6에 도시된 바와 같이 참여자들 간의 메시지 송수신 서비스를 제공하는 메시지 송수신 UI(10)를 제공할 수 있다.First, the computing device 100 may provide a message transmission/reception UI 10 that provides a message transmission/reception service between participants, as shown in FIG. 6 .
이후, 컴퓨팅 장치(100)는 메시지 송수신 UI(10)를 통해 참여자로부터 특정 메시지에 대한 콘텍스트 메뉴 제공 요청을 얻을 수 있고, 콘텍스트 메뉴 제공 요청에 대한 응답으로 특정 메시지에 대한 콘텍스트 메뉴(11)를 제공할 수 있다.Thereafter, the computing device 100 may obtain a request for providing a context menu for a specific message from a participant through the message transmission/reception UI 10, and provide a context menu 11 for the specific message in response to the request for providing a context menu. can do.
이후, 컴퓨팅 장치(100)는 참여자로부터 콘텍스트 메뉴(11)에 포함된 일정 등록 요청 항목(11A)을 선택받을 수 있고, 이를 특정 메시지를 대상으로 일정 등록을 요청하는 것으로 인식할 수 있다. 그러나, 이에 한정되지 않는다.Thereafter, the computing device 100 may receive a selection of the schedule registration request item 11A included in the context menu 11 from the participant, and may recognize this as requesting schedule registration for a specific message. However, it is not limited to this.
S210 단계에서, 컴퓨팅 장치(100)는 S210 단계에서 획득한 일정 등록 요청에 대한 응답으로, 특정 메시지를 분석하여 일정과 관련된 하나 이상의 요약문(예: 일정명, 일시, 장소 및 참석자 중 적어도 하나)를 추출할 수 있다.In step S210, in response to the schedule registration request obtained in step S210, the computing device 100 analyzes a specific message and generates one or more summary statements related to the schedule (e.g., at least one of schedule name, date and time, location, and attendees). It can be extracted.
예를 들어, 컴퓨팅 장치(100)는 도 7A에 도시된 바와 같이 기 학습된 개체명인식 모델(NER 모델)을 이용하여 일정명에 관한 "킥오프 미팅", 일시에 관한 "5월 6일(수) 오후 6시 30분" 및 장소에 관한 "URL"을 추출할 수 있다. 그러나, 이에 한정되지 않는다.For example, as shown in FIG. 7A, the computing device 100 uses a pre-learned entity name recognition model (NER model) to create “kickoff meeting” regarding the schedule and “May 6 (Wed)” regarding the date and time. ) 6:30 PM" and the "URL" for the location can be extracted. However, it is not limited to this.
S230 단계에서, 컴퓨팅 장치(100)는 S220 단계에서 추출한 하나 이상의 요약문을 이용하여 일정을 등록할 수 있다.In step S230, the computing device 100 may register a schedule using one or more summary sentences extracted in step S220.
먼저, 컴퓨팅 장치(100)는 메시지로부터 추출된 일정과 관련된 하나 이상의 요약문 각각의 속성을 분석하고, 속성 분석 결과에 기초하여 일정과 관련된 하나 이상의 요약문 각각을 기 설정된 일정 등록 양식 상에 배치할 수 있으며, 일정 등록 양식에 배치된 하나 이상의 요약문을 일정 등록 UI(12)를 통해 참여자에게 제공할 수 있다.First, the computing device 100 analyzes the properties of each of one or more summary statements related to the schedule extracted from the message, and places each of one or more summary statements related to the schedule on a preset schedule registration form based on the attribute analysis results. , one or more summaries placed on the schedule registration form may be provided to participants through the schedule registration UI 12.
이때, 컴퓨팅 장치(100)는 일정과 관련된 하나 이상의 요약문을 기 설정된 일정 등록 양식에 맞춰 변환하여 배치할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 도 7A에 도시된 바와 같이, 표준포맷변환 모델(seq2seq 모델)을 이용하여 하나 이상의 요약문 중 일시에 관련된 요약문을 표준 포맷(예: YYYY-MM-DD hh:mm)으로 변경하여 일정 등록 양식 상에 배치할 수 있다. 그러나, 이에 한정되지 않는다.At this time, the computing device 100 may convert and place one or more summary sentences related to the schedule according to a preset schedule registration form. For example, as shown in FIG. 7A, the computing device 100 uses a standard format conversion model (seq2seq model) to convert a summary related to a date and time among one or more summaries into a standard format (e.g., YYYY-MM-DD hh: mm) and can be placed on the schedule registration form. However, it is not limited to this.
다양한 실시예에서, 컴퓨팅 장치(100)는 일정과 관련된 하나 이상의 요약문 각각을 기 설정된 일정 등록 양식 상에 배치하되, 일정 등록 양식 상의 특정 영역에 배치할 요약문이 부재할 경우, 일정 등록 대상인 메시지 외에 다른 메시지들을 분석하여 해당 요약문을 추출할 수 있다.In various embodiments, the computing device 100 places each of one or more summary sentences related to the schedule on a preset schedule registration form. However, if there is no summary to be placed in a specific area on the schedule registration form, the computing device 100 places another summary sentence in addition to the message subject to schedule registration. By analyzing the messages, the corresponding summary can be extracted.
예를 들어, 컴퓨팅 장치(100)는 특정 메시지를 분석하여 추출된 일정과 관련된 하나 이상의 요약문 중 참석자와 관련된 요약문이 부재한 경우, 특정 메시지가 송수신된 시점을 기준으로 소정의 시간 이전과 소정의 시간 이후의 시간 동안 송수신된 메시지를 분석하여 참석자와 관련된 요약문을 추출할 수 있다.For example, if there is no summary text related to the attendees among one or more summaries related to the schedule extracted by analyzing the specific message, the computing device 100 may send and receive a predetermined time before and at a predetermined time based on the time when the specific message was transmitted and received. Messages sent and received during the following period can be analyzed to extract summaries related to attendees.
이때, 컴퓨팅 장치(100)는 특정 메시지가 송수신된 시점을 기준으로 소정의 시간 전후에 송수신된 메시지로부터 참석자와 관련된 요약문이 추출되지 않는 경우, 소정의 시간의 크기를 점차 증가시키며 참석자와 관련된 하나 이상의 요약문을 추출할 수 있고, 소정의 시간의 크기를 기 설정된 최대치까지 증가시켰음에도 불구하고 참석자와 관련된 요약문이 추출되지 않을 경우, 일정 등록 양식 상에 참석자의 정보를 배치하는 영역을 공란으로 설정할 수 있다.At this time, if a summary related to the attendee is not extracted from the message sent or received before or after a predetermined time based on the time when the specific message was sent or received, the computing device 100 gradually increases the size of the predetermined time and one or more of the one or more related to the attendee. The summary can be extracted, and if the summary related to the attendee is not extracted despite increasing the size of the predetermined time to the preset maximum, the area where the attendee's information is placed on the schedule registration form can be set to blank. .
이후, 컴퓨팅 장치(100)는 일정 등록 UI(12)를 통해 참여자의 입력(User input)(예: 일정 등록 양식에 배치된 하나 이상의 요약문을 추가, 수정, 삭제 및 확정하는 입력)을 얻을 수 있고, 참여자의 입력에 기초하여 일정과 관련된 하나 이상의 요약문을 확정할 수 있다.Thereafter, the computing device 100 may obtain user input (e.g., input for adding, modifying, deleting, and confirming one or more summaries placed on the schedule registration form) through the schedule registration UI 12. , one or more summaries related to the schedule may be confirmed based on participant input.
이후, 컴퓨팅 장치(100)는 일정 등록 UI(12)를 통해 확정된 하나 이상의 요약문을 이용하여 일정을 등록하고, 등록된 일정에 따라 프로젝트의 참여자들(또는 등록된 일정에 포함된 참석자들)에게 일정 안내 정보를 제공하는 일정 관리 서비스(예: 등록된 일정에 대한 정보, 등록된 일정에 기초한 일정 리마인더 등)를 제공할 수 있다.Thereafter, the computing device 100 registers a schedule using one or more summaries confirmed through the schedule registration UI 12, and sends information to participants of the project (or attendees included in the registered schedule) according to the registered schedule. A schedule management service that provides schedule information (e.g., information about registered schedules, schedule reminders based on registered schedules, etc.) may be provided.
다양한 실시예에서, 컴퓨팅 장치(100)는 일정 등록 UI(12)를 통해 확정된 하나 이상의 요약문을 이용하여 일정을 등록하되, 기 등록된 복수의 일정 정보에 기초하여 신규로 등록된 일정과 동일한 시간 및 장소에서 진행되는 다른 일정이 있는 경우, 신규로 등록된 일정의 시간 및 장소를 변경할 것을 안내하는 안내 정보를 제공할 수 있다.In various embodiments, the computing device 100 registers a schedule using one or more summary statements confirmed through the schedule registration UI 12, but at the same time as the newly registered schedule based on a plurality of previously registered schedule information. If there is another schedule taking place at the location, guidance information may be provided to guide changes to the time and location of the newly registered schedule.
또한, 컴퓨팅 장치(100)는 제1 시간에 다른 일정이 있는 제1 참여자에 대하여 동일한 시간에 진행되는 일정이 신규로 등록되는 경우, 신규로 등록되는 일정의 시간을 변경할 것을 안내하거나, 신규로 등록되는 일정에 제1 참여자가 참여할 수 없음을 안내하는 안내 정보를 제공할 수 있다. In addition, when a schedule to be held at the same time is newly registered for a first participant who has a different schedule at the first time, the computing device 100 notifies the first participant to change the time of the newly registered schedule or registers it as a new schedule. Guidance information indicating that the first participant cannot participate in the schedule may be provided.
여기서, 도 5 내지 도 7에 따른 일정 관리 서비스 제공 방법은 참여자가 특정 메시지를 선택하여 일정 등록을 요청할 경우, 특정 메시지에 포함된 요약문을 추출하여 일정을 등록하는 것으로 설명하고 있으나, 이에 한정되지 않고 다양한 형태로 구현될 수 있다.Here, the method of providing the schedule management service according to FIGS. 5 to 7 is described as registering the schedule by extracting a summary included in the specific message when a participant selects a specific message and requests schedule registration, but is not limited to this. It can be implemented in various forms.
예를 들어, 컴퓨팅 장치(100)는 참여자로부터 특정 메시지를 대상으로 하는 일정 등록을 요청받지 않더라도, 참여자들 간에 송수신된 메시지를 자동으로 분석하여 일정과 관련된 하나 이상의 요약문(예: 일정명, 일시, 장소 및 참석자와 관련된 요약문 또는 일정 등록 및 일정 생성과 같이 일정을 정하는 메시지임을 알 수 있는 요약문들)가 추출될 경우, 추출된 일정과 관련된 하나 이상의 요약문을 이용하여 자동적으로 일정을 등록할 수 있다.For example, even if the computing device 100 is not requested by a participant to register a schedule targeting a specific message, the computing device 100 automatically analyzes messages sent and received between participants and provides one or more summaries related to the schedule (e.g., schedule name, date, time, If a summary text related to the location and attendees or a summary text that can be identified as a schedule-setting message, such as schedule registration and schedule creation, is extracted, the schedule can be automatically registered using one or more summary sentences related to the extracted schedule.
또한, 컴퓨팅 장치(100)는 참여자들 간에 송수신된 메시지를 분석하여 일정과 관련된 하나 이상의 요약문이 추출될 경우, 해당 메시지를 이용하여 일정을 자동 등록할 수 있음을 안내하는 안내 정보를 출력(예: 팝업창 또는 메시지의 적어도 일부분에 효과 표시 등)함으로써, 참여자가 해당 메시지를 대상으로 일정 등록을 요청할 수 있도록 유도할 수 있다.In addition, the computing device 100 analyzes messages sent and received between participants and, when one or more summary sentences related to the schedule are extracted, outputs guidance information indicating that the schedule can be automatically registered using the corresponding message (e.g. By displaying effects in a pop-up window or at least part of the message, etc.), participants can be encouraged to request schedule registration for the message.
또한, 컴퓨팅 장치(100)는 참여자로부터 특정 메시지를 대상으로 하는 일정 등록을 요청받지 않더라도, 참여자들 간에 송수신되는 메시지의 패턴을 분석하여 일정을 자동으로 등록할 수 있다.Additionally, the computing device 100 may automatically register a schedule by analyzing patterns of messages sent and received between participants even if the participant does not request to register a schedule targeting a specific message.
예를 들어, 컴퓨팅 장치(100)는 특정 프로젝트에 참여하는 참여자들이 미팅을 종료하기 약 10분 내지 20분 전부터 다음 일정과 관련된 논의를 수행하는 패턴을 보이는 경우, 참여자로부터 별도의 일정 등록을 요청받지 않더라도, 참여자들이 수행하고 있는 미팅이 종료되기 약 10분 내지 20분 전부터 송수신되는 메시지를 분석하여 일정과 관련된 하나 이상의 요약문을 추출할 수 있고, 추출된 요약문을 이용하여 자동으로 다음 일정을 등록할 수 있다.For example, when participants participating in a specific project show a pattern of discussing the next schedule about 10 to 20 minutes before the end of the meeting, the computing device 100 does not receive a request from the participants to register a separate schedule. Even if not, one or more summaries related to the schedule can be extracted by analyzing messages sent and received about 10 to 20 minutes before the end of the meeting the participants are conducting, and the next schedule can be automatically registered using the extracted summaries. there is.
여기서, 도 7A에 도시된 바와 같이 프로젝트의 책임자가 다음 일정을 정리하여 참여자들에게 공지하는 형태로 일정을 확정할 수도 있으나, 경우에 따라 책임자가 정리하여 공지한 일정을 참여자들이 수정하거나, 여러 참여자들이 논의하며 일정을 확정하는 경우도 있다. 예를 들어, 도 7B에 도시된 바와 같이, 스레드(Thread) 기능을 이용하여, 프로젝트의 책임자가 일정과 관련된 슬랙 메시지를 입력하면, 여러 참여자들이 해당 슬랙 메시지에 댓글 형태의 메시지를 입력하며 일정을 논의 및 확정하는 경우도 있다.Here, as shown in Figure 7A, the person in charge of the project may confirm the schedule by organizing the next schedule and notifying it to the participants. However, in some cases, the participants may modify the schedule organized and announced by the person in charge, or multiple participants may modify the schedule. In some cases, the schedule is finalized through discussion. For example, as shown in Figure 7B, when the person in charge of the project enters a Slack message related to the schedule using the Thread function, several participants enter a message in the form of a comment on the Slack message and schedule the schedule. In some cases, it is discussed and finalized.
이때, 하나의 메시지만 고려하여 일정을 등록할 경우, 참여자들이 논의하며 수정된 일정 내용을 반영할 수 없고, 이를 반영하기 위해서는 메시지 분석을 통해 자동 등록된 일정 내용을 책임자가 수동으로 수정해야 한다는 불편함이 생길 수 있다.At this time, when registering a schedule considering only one message, the schedule contents discussed and modified by the participants cannot be reflected, and in order to reflect this, the person in charge must manually modify the schedule contents automatically registered through message analysis. A problem may arise.
이러한 점을 고려하여, 컴퓨팅 장치(100)는 특정 메시지를 대상으로 일정 등록을 요청받는 경우, 특정 메시지뿐만 아니라 특정 메시지가 송수신된 이후에 송수신되는 메시지를 분석하여 일정과 관련된 요약문을 추출할 수 있고, 추출된 요약문을 이용하여 일정을 등록할 수 있다. 예를 들어, 도 7(B)에 도시된 바와 같이 일정과 관련한 하나의 슬랙 메시지에 여러 개의 스레드가 입력된 경우, 각각의 스레드를 분리하여 동일 주제를 가지는 스레드 즉, 일정과 관련된 내용을 포함하는 스레드를 선별하고, 선별된 스레드에서 일정과 관련된 하나 이상의 요약문을 추출하여 일정을 등록할 수 있다. 여기서, 컴퓨팅 장치(100)는 인공지능 모델을 이용하여 동일한 주제를 가지는 스레드를 선별하되, 해당 인공지능 모델은 기존의 슬랙 메시지를 순차 라벨링(BIO 태깅)함으로써 생성된 학습 데이터를 이용하여 학습된 모델(버트(BERT) 기반 파인 튜닝 모델)일 수 있다.Considering this, when receiving a request to register a schedule for a specific message, the computing device 100 can extract a summary related to the schedule by analyzing not only the specific message but also the messages sent and received after the specific message is sent and received. , the schedule can be registered using the extracted summary. For example, as shown in Figure 7(B), when multiple threads are entered into one Slack message related to a schedule, each thread is separated and a thread with the same topic, that is, containing content related to the schedule, is created. A schedule can be registered by selecting a thread and extracting one or more summary sentences related to the schedule from the selected thread. Here, the computing device 100 selects threads with the same topic using an artificial intelligence model, and the artificial intelligence model is a model learned using learning data generated by sequential labeling (BIO tagging) of existing Slack messages. (It may be a BERT-based fine tuning model).
여기서, 상기와 같은 상황(예: 여러 사람이 논의하며 일정을 정할 경우)에서는 동일한 속성(예: 일정명, 일시, 장소 등)을 가지는 요약문이 복수 개 추출될 수 있는데, 컴퓨팅 장치(100)는 동일한 속성을 가지는 복수의 요약문이 추출될 경우 복수의 요약문 중 추출되는 횟수가 가장 많은 요약문을 이용하여 일정을 등록하거나, 가장 마지막에 추출된 요약문을 이용하여 일정을 등록하거나 또는 참여자로부터 해당 요약문에 대한 확정을 받아 일정을 등록할 수 있다. 다만, 대화의 흐름을 고려하여 최종값 즉, 가장 마지막에 추출된 요약문을 이용하여 일정을 등록하는 것이 바람직할 수 있으나, 이에 한정되지 않는다. 또한, 컴퓨팅 장치(100)는 상기와 같이 생성된 일정과 기존 일정 간의 유사도를 비교하여 신규 일정을 등록할 수 있다. 이하, 도 8 및 9를 참조하여, 컴퓨팅 장치(100)가 제공하는 중요 메시지 관리 서비스에 대해 설명하도록 한다.Here, in the above situation (e.g., when several people discuss and decide on a schedule), a plurality of summaries having the same properties (e.g., schedule name, date, time, location, etc.) may be extracted, and the computing device 100 When multiple summaries with the same properties are extracted, a schedule can be registered using the summary that is extracted the most among the plurality of summaries, a schedule can be registered using the last extracted summary, or a schedule can be registered using the summary that has been extracted most often, or Once confirmed, you can register your schedule. However, considering the flow of conversation, it may be desirable to register the schedule using the final value, that is, the last extracted summary, but the schedule is not limited to this. Additionally, the computing device 100 may register a new schedule by comparing the similarity between the schedule created as above and the existing schedule. Hereinafter, with reference to FIGS. 8 and 9, the important message management service provided by the computing device 100 will be described.
도 8은 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버에 의해 수행되는 중요 메시지 관리 서비스 제공 방법의 순서도이며, 도 9는 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버가 제공하는 중요 메시지 관리 서비스를 도시한 도면이다.Figure 8 is a flowchart of a method of providing an important message management service performed by a visualized project information providing server based on conversation analysis between project participants in various embodiments, and Figure 9 is a flowchart of a method of providing a visualized project information based on conversation analysis between project participants in various embodiments. This diagram illustrates the important message management service provided by the project information provision server.
도 8 및 도 9를 참조하면, S310 단계에서, 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 메시지별 중요도를 판단할 수 있고, 판단된 메시지별 중요도에 기초하여 안내 정보를 제공할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 메시지별 중요도에 기초하여 중요 메시지를 선정할 수 있고, 선정된 중요 메시지에 대한 리마인더를 등록할 것을 안내하는 안내 정보를 제공할 수 있다.Referring to FIGS. 8 and 9 , in step S310, the computing device 100 may determine the importance of each message by analyzing messages transmitted and received between project participants, and provide guidance information based on the determined importance of each message. can be provided. For example, the computing device 100 may select important messages based on the importance of each message and provide guidance information instructing to register a reminder for the selected important message.
다양한 실시예에서, 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 추출된 하나 이상의 요약문과 기 저장된 중요 요약문 데이터에 기초하여, 프로젝트의 참여자들 간에 송수신되는 메시지 중 중요 요약문을 적어도 하나 포함하는 메시지를 중요 메시지인 것으로 판단할 수 있다. 예를 들어, 도 8에 도시된 바와 같이 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 메시지 중 "수정", "재수정", "검토" 등과 같이 중요 요약문을 포함하는 메시지를 중요 메시지인 것으로 판단할 수 있다.In various embodiments, the computing device 100 may select at least an important summary of messages transmitted and received between project participants based on one or more summaries extracted by analyzing messages transmitted and received between project participants and pre-stored important summary data. A message containing one can be judged to be an important message. For example, as shown in FIG. 8, the computing device 100 considers messages containing important summaries such as “edit”, “re-edited”, “review”, etc. among messages transmitted and received between project participants as important messages. You can judge.
다양한 실시예에서, 컴퓨팅 장치(100)는 기 저장된 요약문별 중요도 점수에 기초하여 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 추출된 하나 이상의 요약문 각각에 대한 중요도 점수를 합산하고, 합산된 중요도 점수가 기 설정된 기준 점수 이상인 메시지를 중요 메시지인 것으로 판단할 수 있다.In various embodiments, the computing device 100 analyzes messages transmitted and received between project participants based on pre-stored importance scores for each summary, adds up the importance scores for each of one or more abstracts, and the summed importance scores are A message with a preset standard score or higher may be judged to be an important message.
다양한 실시예에서, 컴퓨팅 장치(100)는 사전에 설정된 참여자별 중요도에 기초하여 특정 참여자가 송신한 메시지를 중요 메시지인 것으로 판단할 수 있다. 그러나, 이에 한정되지 않고, 프로젝트의 참여자들 간에 송수신되는 메시지 중 중요 메시지를 판단하는 다양한 방법이 적용될 수 있다.In various embodiments, the computing device 100 may determine that a message transmitted by a specific participant is an important message based on a preset level of importance for each participant. However, the method is not limited to this, and various methods for determining important messages among messages transmitted and received between project participants may be applied.
이후, 컴퓨팅 장치(100)는 중요 메시지인 것으로 판단되는 메시지에 대하여 해당 메시지를 중요 메시지로 등록할 것을 안내하는 안내 정보를 제공할 수 있다. 예를 들어, 도 9에 도시된 바와 같이 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 메시지 중 중요 메시지가 식별될 경우, 참여자에게 중요 메시지 등록 UI(20)를 제공할 수 있고, 중요 메시지 등록 UI(20)를 통해 중요 메시지인 것으로 판단되는 메시지(20A)와 해당 메시지를 중요 메시지로 등록(예: 리마인더를 등록)할 것을 안내하는 안내 정보(20B)를 제공할 수 있다. 그러나, 이에 한정되지 않는다.Thereafter, the computing device 100 may provide guidance information for registering the message as an important message for the message that is determined to be an important message. For example, as shown in FIG. 9, when an important message is identified among messages transmitted and received between project participants, the computing device 100 may provide the important message registration UI 20 to the participant, and register the important message. The registration UI 20 may provide a message 20A determined to be an important message and guidance information 20B guiding the user to register the message as an important message (e.g., register a reminder). However, it is not limited to this.
S320 단계에서, 컴퓨팅 장치(100)는 S310 단계를 거쳐 판단된 중요 메시지에 대하여, 참여자로부터 중요 메시지 등록을 요청받을 수 있다. 예를 들어, 참여자는 해당 메시지를 중요 메시지로 등록하고자 할 경우, 중요 메시지 등록 UI(20)를 통해 출력되는 리마인더 등록 버튼(20C)을 선택할 수 있고, 컴퓨팅 장치(100)는 참여자가 리마인더 등록 버튼(20C)을 선택하는 것을 중요 메시지 등록 요청으로 인식하여 해당 메시지를 중요 메시지로 등록하는 동작(S330 단계)을 수행할 수 있다.In step S320, the computing device 100 may receive a request from a participant to register an important message for the important message determined through step S310. For example, if the participant wishes to register the message as an important message, the participant can select the reminder registration button 20C displayed through the important message registration UI 20, and the computing device 100 allows the participant to select the reminder registration button 20C. Selecting (20C) may be recognized as an important message registration request, and an operation of registering the message as an important message (step S330) may be performed.
S330 단계에서, 컴퓨팅 장치(100)는 참여자로부터 얻은 중요 메시지 등록 요청에 대한 응답으로 해당 메시지를 중요 메시지로 등록하고, 등록된 중요 메시지에 대한 리마인더를 등록할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 참여자로부터 중요 메시지 등록 요청을 얻은 것에 대한 응답으로 리마인더 등록 UI(21)를 제공할 수 있다.In step S330, the computing device 100 may register the message as an important message in response to an important message registration request obtained from the participant and register a reminder for the registered important message. For example, the computing device 100 may provide the reminder registration UI 21 in response to obtaining an important message registration request from a participant.
다양한 실시예에서, 컴퓨팅 장치(100)는 중요 메시지로 설정된 메시지를 분석하여 하나 이상의 요약문을 추출할 수 있고, 추출된 하나 이상의 요약문을 기 설정된 리마인더 등록 양식(21A)에 배치할 수 있으며, 리마인더 등록 UI(21)를 통해 하나 이상의 요약문이 배치된 리마인더 등록 양식(21A)을 참여자에게 제공할 수 있다. 또한, 컴퓨팅 장치(100)는 리마인더 등록 UI(21)를 통해 입력된 참여자의 입력(21B)(예: 하나 이상의 요약문에 대한 수정, 추가, 삭제 및 확정)에 따라 하나 이상의 요약문을 확정하여 리마인더를 등록할 수 있다.In various embodiments, the computing device 100 may extract one or more summaries by analyzing a message set as an important message, place one or more extracted summaries in a preset reminder registration form 21A, and register the reminder. A reminder registration form 21A in which one or more summaries are arranged may be provided to the participant through the UI 21. In addition, the computing device 100 confirms one or more summaries according to the participant's input 21B (e.g., correction, addition, deletion, and confirmation of one or more summaries) entered through the reminder registration UI 21 to provide a reminder. You can register.
여기서, 컴퓨팅 장치(100)에 의해 수행되는 리마인더 등록 방법(예: 메시지로부터 요약문 추출, 추출된 요약문을 기 설정된 양식 상에 배치, 양식 상에 배치된 요약문들에 대한 참여자의 확정 및 등록)은 도 5의 S220 단계 및 S230 단계에서 수행되는 일정 등록 방법과 동일 또는 유사한 형태로 구현될 수 있으나, 이에 한정되지 않는다.Here, the reminder registration method performed by the computing device 100 (e.g., extracting a summary from a message, placing the extracted summary on a preset form, confirming and registering the participant for the summaries placed on the form) is shown in Figure 1. It may be implemented in the same or similar form as the schedule registration method performed in steps S220 and S230 of 5, but is not limited thereto.
이후, 컴퓨팅 장치(100)는 등록된 리마인더에 따라 중요 메시지를 리마인더 대상에게 안내하는 중요 메시지 관리 서비스를 제공할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 도 9에 도시된 바와 같이 등록된 리마인더에 따라 리마인더 대상에게 중요 메시지에 대한 정보(예: 중요 메시지 내용 및 중요 메시지의 위치와 연결된 링크 등)를 출력하는 리마인더 UI(22)를 제공할 수 있다. Thereafter, the computing device 100 may provide an important message management service that guides important messages to the reminder target according to the registered reminder. For example, as shown in FIG. 9, the computing device 100 is a reminder device that outputs information about an important message (e.g., content of the important message and a link connected to the location of the important message, etc.) to the reminder target according to the registered reminder. UI 22 can be provided.
여기서, 도 8 및 도 9에 따른 중요 메시지 관리 서비스 제공 방법은 메시지의 중요도를 판단하여 참여자에게 특정 메시지를 중요 메시지로 등록할 것을 안내하는 안내 정보를 제공하고, 안내 정보에 대한 응답으로 참여자로부터 특정 메시지에 대한 중요 메시지 등록을 요청받는 경우 해당 메시지를 중요 메시지로 설정하여 리마인더를 둥록하는 것으로 설명하고 있으나, 이에 한정되지 않고, 다양한 형태로 구현될 수 있다.Here, the method of providing an important message management service according to FIGS. 8 and 9 determines the importance of a message, provides guidance information to participants to register a specific message as an important message, and provides guidance information to participants to register a specific message as an important message. When receiving a request to register an important message for a message, it is explained that the message is set as an important message and a reminder is registered, but it is not limited to this and can be implemented in various forms.
예를 들어, 컴퓨팅 장치(100)는 메시지의 중요도를 판단하여 특정 메시지가 중요 메시지인 것으로 판단되는 경우, 참여자로부터 별도의 중요 메시지 등록 요청을 얻지 않더라도 해당 메시지를 중요 메시지로 설정하여 자동으로 리마인더를 등록할 수 있다. 이하, 도 10 내지 14를 참조하여, 컴퓨팅 장치(100)가 제공하는 프로젝트 속성 정보 제공 서비스에 대해 설명하도록 한다.For example, if the computing device 100 determines the importance of the message and determines that a specific message is an important message, the computing device 100 sets the message as an important message and automatically sends a reminder even if a separate important message registration request is not obtained from the participant. You can register. Hereinafter, with reference to FIGS. 10 to 14, the project attribute information providing service provided by the computing device 100 will be described.
도 10은 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버에 의해 수행되는 프로젝트 속성 정보 제공 서비스 제공 방법의 순서도이며, 도 11 내지 도 14는 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공서버가 제공하는 프로젝트 속성 정보 제공 서비스를 도시한 도면이다.Figure 10 is a flowchart of a method of providing a project attribute information service provided by a visualized project information providing server based on conversation analysis between project participants, in various embodiments, and Figures 11 to 14 are diagrams of conversations between project participants in various embodiments. This is a diagram showing the project attribute information provision service provided by the analysis-based visualized project information provision server.
도 10 내지 도 14를 참조하면, S410 단계에서, 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 프로젝트의 속성을 판단할 수 있다.Referring to FIGS. 10 to 14 , in step S410, the computing device 100 may determine the properties of the project by analyzing messages transmitted and received between project participants.
다양한 실시예에서, 컴퓨팅 장치(100)는 프로젝트의 참여자들 간의 송수신되는 복수의 메시지의 속성(예: 긍정(positive), 부정(negative)), 프로젝트 내에 발생되는 이슈와 해당 이슈의 해결 여부 등을 이용하여 프로젝트의 분위기(mood)(예: 긍정적, 부정적 등)을 판단할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 복수의 메시지의 속성에 기초하여, 부정의 속성을 가지는 메시지의 수가 긍정의 속성을 가지는 메시지의 수보다 많을 경우, 해당 프로젝트의 분위기를 부정적인 것으로 판단할 수 있다.In various embodiments, the computing device 100 determines the properties (e.g., positive, negative) of a plurality of messages transmitted and received between project participants, issues occurring within the project, and whether the issues are resolved. You can use it to judge the mood of the project (e.g. positive, negative, etc.). For example, based on the properties of a plurality of messages transmitted and received between project participants, the computing device 100 determines the atmosphere of the project when the number of messages with negative properties is greater than the number of messages with positive properties. can be judged as negative.
또한, 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 복수의 메시지를 분석하여 프로젝트 내에 이슈가 발생하였으나, 해당 이슈가 아직 처리되지 않은 경우 프로젝트의 분위기를 부정적인 것으로 판단할 수 있다. 그러나, 이에 한정되지 않고, 프로젝트 내에 이슈가 발생하였고, 해당 이슈가 아직 처리되지 않았으나 긍정의 속성을 가지는 메시지의 수가 부정의 속성을 가지는 메시지의 수보다 기 설정된 수 이상 많을 경우, 프로젝트의 분위기를 긍정적인 것으로 판단하는 등 프로젝트의 분위기를 판단하는 다양한 방법이 적용될 수 있다.Additionally, the computing device 100 may analyze a plurality of messages transmitted and received between project participants and determine that the atmosphere of the project is negative when an issue has occurred within the project but the issue has not yet been resolved. However, it is not limited to this, if an issue has occurred within the project and the issue has not yet been dealt with, but the number of messages with positive attributes is greater than the number of messages with negative attributes than a preset number, the atmosphere of the project is changed to positive. Various methods can be applied to judge the atmosphere of the project, such as judging it to be.
다양한 실시예에서, 컴퓨팅 장치(100)는 기 설정된 기간 동안 프로젝트의 참여자들 간에 송수신된 복수의 메시지로부터 하나 이상의 요약문을 추출하고, 추출된 하나 이상의 요약문을 분석하여 프로젝트의 진행과 관련된 요약 정보를 생성할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 3시간, 6시간, 12시간 및 24시간 중 적어도 하나의 시간 내에 참여자들 간에 송수신되는 메시지를 분석하여 프로젝트의 진행과 관련된 하나 이상의 키워드를 추출할 수 있고, 추출한 하나 이상의 키워드를 이용하여 요약 정보를 생성할 수 있다. 그러나, 이에 한정되지 않는다.In various embodiments, the computing device 100 extracts one or more summaries from a plurality of messages transmitted and received between project participants over a preset period of time, and analyzes the one or more extracted summaries to generate summary information related to the progress of the project. can do. For example, the computing device 100 may analyze messages sent and received between participants within at least one of 3 hours, 6 hours, 12 hours, and 24 hours to extract one or more keywords related to the progress of the project, Summary information can be created using one or more extracted keywords. However, it is not limited to this.
S420 단계에서, 컴퓨팅 장치(100)는 프로젝트 속성 정보 제공 UI(30)를 통해 S410 단계에서 판단된 프로젝트의 속성에 대한 정보를 제공하는 프로젝트 속성 정보 제공 서비스를 제공할 수 있다.In step S420, the computing device 100 may provide a project attribute information providing service that provides information on the attributes of the project determined in step S410 through the project attribute information providing UI 30.
여기서, 프로젝트 속성 정보 제공 UI(30)는 제1 참여자가 참여 중인 복수의 프로젝트 각각에 대하여 판단된 프로젝트의 속성에 대한 정보를 포함하되, 도 11에 도시된 바와 같이 복수의 프로젝트 각각에 대응되는 복수의 카드를 격자 형태로 배치되어 출력되는 형태로 구현될 수 있다.Here, the project attribute information providing UI 30 includes information on the attributes of the project determined for each of the plurality of projects in which the first participant is participating, and as shown in FIG. 11, a plurality of projects corresponding to each of the plurality of projects. It can be implemented in a form where the cards are arranged in a grid and output.
이때, 각각의 카드의 색상은 각각의 카드에 대응되는 프로젝트의 분위기에 따라 결정될 수 있다. 예를 들어, 제3 프로젝트의 분위기가 부정적일 경우, 제3 프로젝트에 대응되는 카드(30A)의 색상을 제1 색상으로 표시할 수 있고, 제4 프로젝트의 분위기가 긍정일 경우, 제4 프로젝트에 대응되는 카드(30B)의 색상을 제2 색상으로 표시할 수 있다.At this time, the color of each card may be determined according to the atmosphere of the project corresponding to each card. For example, when the mood of the third project is negative, the color of the card (30A) corresponding to the third project can be displayed as the first color, and when the mood of the fourth project is positive, the color of the card (30A) corresponding to the third project can be displayed as the first color. The color of the corresponding card 30B may be displayed as a second color.
또한, 프로젝트의 분위기가 동일하더라도 그 정도가 다른 2개의 카드에 대해서는 서로 다른 채도를 가지도록 설정될 수 있다. 예를 들어, 제4 프로젝트의 분위기가 다소 긍정적일 경우, 제4 프로젝트에 대응되는 카드(30B)의 색상이 제1 채도를 가지도록 설정될 수 있고, 제8 프로젝트의 분위기가 매우 긍정적일 경우, 제8 프로젝트에 대응되는 카드(30C)의 색상이 제1 채도보다 큰 제2 채도를 가지도록 설정될 수 있다. 여기서, 제1 색상 및 제2 색상과 제1 채도 및 제2 채도는 프로젝트 관리자나 각각의 참여자들로부터 사전에 설정될 수 있으나, 이에 한정되지 않는다.Additionally, even if the atmosphere of the project is the same, two cards with different degrees of saturation can be set to have different saturation. For example, if the mood of the fourth project is somewhat positive, the color of the card 30B corresponding to the fourth project may be set to have the first saturation, and if the mood of the eighth project is very positive, the color of the card 30B corresponding to the fourth project may be set to have the first saturation. The color of the card 30C corresponding to the project may be set to have a second saturation greater than the first saturation. Here, the first color, the second color, and the first saturation and second saturation may be set in advance by the project manager or each participant, but are not limited to this.
또한, 복수의 프로젝트 각각에 대응되는 복수의 카드의 앞면에는 복수의 프로젝트 각각에 대한 정보(예: 프로젝트명, 프로젝트의 참여자들 간에 송수신된 메시지 중 확인하지 않은 메시지의 수 및 프로젝트의 속성 정보 중 적어도 하나를 포함)을 출력할 수 있고, 복수의 카드 각각의 뒷면에는 복수의 프로젝트 각각의 참여자들 간에 송수신된 메시지로부터 추출된 하나 이상의 키워드를 출력할 수 있다.In addition, on the front of the plurality of cards corresponding to each of the plurality of projects, information about each of the plurality of projects (e.g., project name, number of unconfirmed messages sent and received between project participants, and at least one of the project attribute information) (including one) can be printed, and on the back of each of the plurality of cards, one or more keywords extracted from messages sent and received between participants in each of the plurality of projects can be printed.
컴퓨팅 장치(100)는 복수의 프로젝트 각각에 대응되는 복수의 카드 각각이 앞면을 향하도록 출력하는 것을 기본(default)로 하되, 사용자로부터 특정 카드를 선택받는 경우(예: 특정 카드에 대한 마우스 클릭 입력), 해당 카드를 뒤집어 뒷면이 출력되도록 할 수 있다. The computing device 100 defaults to outputting each of a plurality of cards corresponding to each of a plurality of projects facing the front, but when a specific card is selected by the user (e.g., a mouse click input for a specific card) ), you can turn the card over so that the back side is printed.
예를 들어, 컴퓨팅 장치(100)는 참여자로부터 프로젝트 속성 정보 제공 서비스에 대한 요청을 얻는 것에 응답하여 도 11에 도시된 바와 같이 프로젝트 속성 정보 제공 UI(30)를 제공할 수 있다. 이때, 프로젝트 속성 정보 제공 UI(30)에 포함된 복수의 프로젝트 각각의 카드는 앞면을 바라볼 수 있으며, 이중 특정 카드(30D)를 선택하는 입력을 얻을 경우, 해당 카드(30D)를 뒤집어 뒷면이 보이도록 출력할 수 있다. 그러나, 이에 한정되지 않는다.For example, the computing device 100 may provide the project attribute information providing UI 30 as shown in FIG. 11 in response to obtaining a request for a project attribute information providing service from a participant. At this time, each card of a plurality of projects included in the project property information providing UI (30) can be faced face-down, and when an input to select a specific card (30D) is received, the card (30D) is flipped over so that the back side is turned over. It can be printed to be visible. However, it is not limited to this.
다양한 실시예에서, 컴퓨팅 장치(100)는 S410 단계에서 판단된 프로젝트의 분위기를 시각화하여 제공할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 도 12에 도시된 바와 같이 프로젝트의 분위기를 그래프 형태로 시각화하여 제공할 수 있다.In various embodiments, the computing device 100 may visualize and provide the atmosphere of the project determined in step S410. For example, the computing device 100 may provide a visualization of the atmosphere of the project in the form of a graph, as shown in FIG. 12 .
여기서, 프로젝트의 분위기는 송수신된 복수의 메시지 각각을 개별적인 제1 포인트(좌표)로 하며, 복수의 제1 포인트의 가중합에 따라 선으로 표시됨으로써, 그래프 형태로 시각화될 수 있다.Here, the atmosphere of the project can be visualized in the form of a graph by using each of the plurality of transmitted and received messages as an individual first point (coordinates) and displaying it as a line according to the weighted sum of the plurality of first points.
또한, 그래프 형태로 시각화된 프로젝트의 분위기(31) 상에 프로젝트 내에 발생되는 이슈에 대응되는 복수의 제2 포인트를 표시할 수 있다.Additionally, a plurality of second points corresponding to issues occurring within the project may be displayed on the atmosphere 31 of the project visualized in the form of a graph.
이때, 복수의 제2 포인트의 색상은 복수의 제2 포인트 각각에 대응되는 이슈의 해결 여부에 따라 결정될 수 있다. 예를 들어, 특정 제2 포인트에 대응하는 이슈가 해결될 경우, 해당 이슈에 대응하는 제2 포인트는 파란색으로 표시될 수 있고, 해결되지 않은 경우 해당 이슈에 대응하는 제2 포인트는 빨간색으로 표시될 수 있다. 그러나, 이에 한정되지 않는다.At this time, the color of the plurality of second points may be determined depending on whether the issue corresponding to each of the plurality of second points is resolved. For example, if an issue corresponding to a specific second point is resolved, the second point corresponding to that issue may be displayed in blue, and if not resolved, the second point corresponding to that issue may be displayed in red. You can. However, it is not limited to this.
제한되지 않는 실시 예에서, 메신저 대화로부터 이슈의 발생 및 해결여부를 판단하는 방법으로 요약문이나 문장구조에 기반한 분석방법이 사용될 수 있다. 예를 들어, 대화 내용에서 특정 프로젝트나 프로젝트의 하위 구성요소, 프로그램 이름, 기능이나 구조, 구성의 이름과 함께 "문제", "안 됩니다", "오류", "에러"와 같은 기 설정된 부정어 혹은 이와 유사한 요약문이 포함되어 있는 경우 이슈 발생으로 판단할 수 있다. 실시 예에 따라, 이슈 발생 메시지가 인식된 이후 대화량이 증가하는 경우 이슈를 해결하기 위한 대화가 진행중인 것으로 판단할 수 있다. 이후 이슈 해결에 대응하는 요약문(예: "해결")이 인식되는 경우 해당 이슈가 해결된 것으로 판단할 수 있으며, 마찬가지로 이슈 해결에 대응하는 요약문이 인식된 후 메시지량이 감소하는 경우, 상황이 종료된 것으로 판단할 수 있다.In a non-limiting example, an analysis method based on a summary or sentence structure may be used as a method of determining whether an issue occurs and is resolved from a messenger conversation. For example, in a conversation, the name of a specific project or its subcomponents, program name, function, structure, or configuration, along with preset negative words such as “problem,” “no,” “error,” or “error.” If a summary similar to this is included, it can be determined that an issue has occurred. Depending on the embodiment, if the conversation volume increases after the issue message is recognized, it may be determined that a conversation to resolve the issue is in progress. If a summary corresponding to resolution of the issue (e.g. "resolved") is recognized later, the issue can be judged to have been resolved. Similarly, if the message volume decreases after the summary corresponding to resolving the issue is recognized, the situation has ended. It can be judged that
상기한 방법은 예시로서 이해될 수 있으며, 이에 제한되지 않는 다양한 분석방법이 사용될 수 있다. 예를 들어, 자연어처리에 기반하여 특정한 요약문이나 용어에 제한되지 않고 이슈발생 및 해결의 흐름을 판단할 수도 있다.The above method can be understood as an example, and various analysis methods without limitation can be used. For example, based on natural language processing, it is possible to determine the flow of issue occurrence and resolution without being limited to specific summaries or terms.
이러한 방법을 통해 프로젝트별로 발생하는 이슈에 대한 정보와 이에 대한 해결까지의 메신저 대화내역을 기록할 수 있다. 이후 유사한 이슈로 판단되는 메신저 대화나 질문이 인식되는 경우, 해당 대화내역을 제공함으로써 동일하거나 유사한 이슈를 빠르게 해결하도록 도울 수 있다.Through this method, information on issues that arise for each project and messenger conversation history leading up to their resolution can be recorded. If a messenger conversation or question that appears to be a similar issue is recognized later, the conversation history can be provided to help resolve the same or similar issue quickly.
다양한 실시예에서, 컴퓨팅 장치(100)는 참여자로부터 그래프 형태로 시각화된 프로젝트의 분위기(31) 상에 어느 하나의 포인트(예: 제1 포인트 및 제2 포인트)를 선택받는 경우, 해당 포인트에 대응하는 내용을 제공할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 참여자로부터 선택받은 포인트가 제1 포인트일 경우, 제1 포인트에 대응하는 메시지 내용을 제공할 수 있고, 제2 포인트일 경우, 제2 포인트에 대응하는 이슈 내용과 해당 이슈에 대한 히스토리(예: 이슈 발생부터 이슈 해결까지의 이력 정보)를 제공할 수 있다.In various embodiments, when a point (e.g., a first point and a second point) is selected by a participant on the atmosphere 31 of the project visualized in a graph form, the computing device 100 responds to the point. Content can be provided. For example, if the point selected by the participant is the first point, the computing device 100 may provide message content corresponding to the first point, and if it is the second point, the computing device 100 may provide issue content corresponding to the second point. and the history of the issue (e.g., history information from issue occurrence to issue resolution) can be provided.
다양한 실시예에서, 컴퓨팅 장치(100)는 S410 단계에서 생성된 프로젝트의 진행과 관련된 요약 정보를 시각화하여 제공할 수 있다. 예를 들어, 컴퓨팅 장치(100)는 도 13에 도시된 바와 같이 프로젝트의 진행과 관련된 하나 이상의 키워드를 워드 클라우드(Word cloud)형태로 시각화(32)하여 제공할 수 있다. 그러나, 이에 한정되지 않는다.In various embodiments, the computing device 100 may visualize and provide summary information related to the progress of the project created in step S410. For example, as shown in FIG. 13, the computing device 100 may provide visualization 32 of one or more keywords related to the progress of a project in the form of a word cloud. However, it is not limited to this.
다양한 실시예에서, 컴퓨팅 장치(100)는 제1 참여자가 참여 중인 복수의 프로젝트 각각의 속성 정보에 관한 요약 정보를 포함하는 요약 정보 리스트(33)를 생성하고, 생성된 요약 정보 리스트를 포함하는 메시지를 제1 참여자로부터 기 설정된 시간 마다 상기 제1 참여자에게 제공할 수 있다. 예를 들어, 도 14에 도시된 바와 같이, 컴퓨팅 장치(100)는 제1 참여자가 참여 중인 복수의 프로젝트 각각에 대한 속성 정보에 관한 요약 정보(예: 프로젝트명, 프로젝트의 목적, 프로젝트의 참여자들 간에 송수신된 메시지의 수(또는 메시지 중 확인하지 않은 메시지의 수), 프로젝트의 분위기 등)를 포함하는 요약 정보 리스트(33)를 생성할 수 있고, 제1 참여자로부터 설정된 시간이 오전 9시인 경우, 오전 9시마다 요약 정보 리스트(33)를 포함하는 메시지를 제공함으로써, 참여자가 자신이 참여 중인 프로젝트들에 대한 상태 정보를 빠르게 파악할 수 있도록 한다는 이점이 있다.In various embodiments, the computing device 100 generates a summary information list 33 including summary information about attribute information of each of a plurality of projects in which the first participant is participating, and sends a message including the generated summary information list. may be provided from the first participant to the first participant at preset times. For example, as shown in FIG. 14, the computing device 100 provides summary information regarding attribute information for each of a plurality of projects in which the first participant is participating (e.g., project name, purpose of the project, participants of the project). It is possible to create a summary information list 33 including the number of messages sent and received (or the number of unconfirmed messages among messages), the atmosphere of the project, etc.), and when the time set by the first participant is 9 am, There is an advantage in that a message including a summary information list 33 is provided every 9 a.m., allowing participants to quickly obtain status information about the projects they are participating in.
전술한 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법은 도면에 도시된 순서도를 참조하여 설명하였다. 간단한 설명을 위해 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법은 일련의 블록들로 도시하여 설명하였으나, 본 발명은 상기 블록들의 순서에 한정되지 않고, 몇몇 블록들은 본 명세서에 도시되고 시술된 것과 상이한 순서로 수행되거나 또는 동시에 수행될 수 있다. 또한, 본 명세서 및 도면에 기재되지 않은 새로운 블록이 추가되거나, 일부 블록이 삭제 또는 변경된 상태로 수행될 수 있다. 이하, 도 15 및 도 16을 참조하여, 컴퓨팅 장치(100)가 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법을 수행하기 위해 사용하는 인공지능 모델의 학습 데이터를 생성하는 과정을 설명하도록 한다.The method of providing visualized project information based on conversation analysis between project participants described above was explained with reference to the flow chart shown in the drawing. For simple explanation, the method of providing visualized project information based on conversation analysis between project participants is illustrated and described as a series of blocks. However, the present invention is not limited to the order of the blocks, and some blocks are similar to those shown and performed in this specification. They may be performed in different orders or simultaneously. Additionally, new blocks not described in this specification and drawings may be added, or some blocks may be deleted or changed. Hereinafter, with reference to FIGS. 15 and 16, the process of generating learning data for an artificial intelligence model used by the computing device 100 to perform a method of providing visualized project information based on conversation analysis between project participants will be described.
도 15 및 도 16은 다양한 실시예에서, 프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법을 수행하는 인공지능 모델의 학습 데이터를 생성하는 구성을 도시한 도면이다.Figures 15 and 16 are diagrams illustrating a configuration for generating learning data for an artificial intelligence model that performs a method of providing visualized project information based on conversation analysis between project participants, in various embodiments.
먼저, 도 15를 참조하면, 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 메시지에 포함된 일정과 관련된 하나 이상의 요약문을 추출하는 인공지능 모델을 생성하기 위한 제1 학습 데이터를 생성할 수 있다.First, referring to FIG. 15, the computing device 100 analyzes messages sent and received between project participants and provides first learning data to generate an artificial intelligence model that extracts one or more summary sentences related to the schedule included in the message. can be created.
예를 들어, 컴퓨팅 장치(100)는 참여자 단말(200)로 학습 데이터 생성UI(40)를 제공할 수 있고, 학습 데이터 생성UI(40)를 통해 학습 데이터 생성을 위해 수집된 복수의 제1 메시지 각각에 포함된 요약문에 대한 레이블링을 수행할 수 있다. 여기서, 학습 데이터 생성을 위해 수집된 복수의 제1 메시지는 일정과 관련된 정보(예: 언제(when), 어디서(where), 누구와(who), 무엇을(what)에 대한 정보)를 포함하는 메시지일 수 있으나, 이에 한정되지 않는다.For example, the computing device 100 may provide a learning data generation UI 40 to the participant terminal 200, and a plurality of first messages collected to generate learning data through the learning data generation UI 40. Labeling can be performed on the summaries included in each. Here, the plurality of first messages collected to generate learning data include schedule-related information (e.g., information about when, where, who, and what). It may be a message, but is not limited to this.
참여자는 학습 데이터 생성을 위해 수집된 복수의 제1 메시지 각각에 포함된 하나 이상의 요약문에 대하여, 언제(when), 어디서(where), 누구와(who), 무엇을(what) 중 어느 하나를 레이블링함으로써 제1 학습 데이터를 생성할 수 있다.Participants label one or more summaries included in each of the plurality of first messages collected to generate learning data with one of when, where, who, and what. By doing this, first learning data can be generated.
이때, 레이블링 대상은 메시지에 포함된 각각의 요약문이며, 요약문은 하나의 단어일 수 있으나, 이에 한정되지 않고 둘 이상의 단어가 조합된 구절 및 문장 전체일 수 있다. 또한, 하나의 요약문에 대하여 둘 이상의 레이블이 레이블링될 수 있다. At this time, the labeling target is each summary included in the message, and the summary may be a single word, but is not limited to this and may be a phrase or entire sentence that is a combination of two or more words. Additionally, two or more labels may be labeled for one summary.
다음으로, 도 16을 참조하면, 컴퓨팅 장치(100)는 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 메시지 각각에 대한 중요도를 판단하는 인공지능 모델을 생성하기 위한 제2 학습 데이터를 생성할 수 있다.Next, referring to FIG. 16, the computing device 100 analyzes messages sent and received between project participants and generates second learning data to create an artificial intelligence model that determines the importance of each message. .
예를 들어, 컴퓨팅 장치(100)는 참여자 단말(200)로 학습 데이터 생성UI(40)를 제공할 수 있고, 학습 데이터 생성UI(40)를 통해 학습 데이터 생성을 위해 수집된 복수의 제2 메시지 각각에 포함된 요약문에 대한 레이블링을 수행할 수 있다. 여기서, 학습 데이터 생성을 위해 수집된 복수의 제1 메시지는 중요도(예: 일정, 요청사항 포함 여부)와 시그널(예: 이슈 발생 여부 및 발생된 이슈의 해결 여부)에 대한 정보를 포함하는 메시지일 수 있으나, 이에 한정되지 않는다.For example, the computing device 100 may provide a learning data generation UI 40 to the participant terminal 200, and a plurality of second messages collected to generate learning data through the learning data generation UI 40. Labeling can be performed on the summaries included in each. Here, the plurality of first messages collected to generate learning data are messages containing information on importance (e.g., schedule, whether requests are included) and signals (e.g., whether an issue has occurred and whether the issue has been resolved). However, it is not limited to this.
참여자는 학습 데이터 생성을 위해 수집된 복수의 제2 메시지 각각에 중요도(예: 일정, 요청사항 포함 여부)와 시그널(예: 이슈 발생 여부 및 발생된 이슈의 해결 여부)에 대응하는 요약문이 포함되어 있는지 여부에 따라 해당 메시지를 레이블링(예: important, very important, very very important, (strong positive/negative, weak positive/negative)함으로써, 제2 학습 데이터를 생성할 수 있다. 여기서, 레이블링 대상은 메시지 전체일 수 있으나, 이에 한정되지 않는다.Participants must ensure that each of the plurality of second messages collected to generate learning data includes a summary corresponding to importance (e.g., schedule, whether requests are included) and signal (e.g., whether an issue has occurred and whether the issue has been resolved). Second learning data can be generated by labeling the message (e.g., important, very important, very very important, (strong positive/negative, weak positive/negative)) depending on whether the message is present or not. Here, the labeling target is the entire message. It may be, but is not limited to this.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.Above, embodiments of the present invention have been described with reference to the attached drawings, but those skilled in the art will understand that the present invention can be implemented in other specific forms without changing its technical idea or essential features. You will be able to understand it. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive.
100 : 프로젝트 관리 서비스 제공서버(컴퓨팅 장치)
200 : 참여자 단말
300 : 외부 서버
400 : 네트워크100: Project management service provision server (computing device)
200: Participant terminal
300: external server
400: Network
Claims (1)
프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 하나 이상의 요약문을 추출하는 단계; 및
상기 추출된 하나 이상의 요약문을 기반으로 프로젝트 관리 서비스를 제공하는 단계를 포함하며,
상기 하나 이상의 요약문을 추출하는 단계는,
상기 프로젝트의 참여자들 간에 송수신된 복수의 메시지를 분석하여 상기 복수의 메시지 각각에 대한 중요도를 판단하는 단계;
상기 판단된 중요도가 기 설정된 기준 이상인 메시지를 중요 메시지로 등록할 것을 안내하는 안내 정보를 제공하는 단계; 및
상기 제공된 안내 정보에 대한 응답으로 참여자로부터 중요 메시지 등록을 요청받는 경우, 상기 중요 메시지 등록을 요청받은 메시지로부터 하나 이상의 요약문을 추출하는 단계를 포함하며,
상기 프로젝트 관리 서비스를 제공하는 단계는,
상기 추출된 하나 이상의 요약문을 이용하여 상기 중요 메시지에 대한 리마인더(Reminder)를 등록하고, 상기 등록된 리마인더에 따라 상기 중요 메시지를 리마인더 대상에게 안내하는 중요 메시지 관리 서비스를 제공하는 단계를 포함하고,
상기 복수의 메시지 각각에 대한 중요도를 판단하는 단계는,
기 저장된 요약문별 중요도 점수에 기초하여, 특정 메시지로부터 추출된 하나 이상의 요약문에 대한 중요도 점수를 합산하고, 상기 합산된 중요도 점수가 기 설정된 점수 이상인 경우, 상기 특정 메시지를 중요 메시지인 것으로 판단하는 단계를 포함하며,
상기 프로젝트 관리 서비스를 제공하는 단계는,
상기 프로젝트의 참여자들 간에 송수신되는 메시지를 분석하여 상기 프로젝트의 속성을 판단하는 단계; 및
상기 판단된 프로젝트의 속성에 대한 정보를 제공하는 프로젝트 속성 정보 제공 서비스를 제공하는 단계를 포함하고,
상기 프로젝트의 속성을 판단하는 단계는,
상기 프로젝트의 참여자들 간의 송수신되는 복수의 메시지 중 긍정의 속성을 가지는 메시지와 부정의 속성을 가지는 메시지의 수, 상기 프로젝트의 진척도 및 상기 프로젝트 내에 발생되는 이슈와 상기 이슈의 해결 여부 중 적어도 하나를 이용하여 상기 프로젝트의 분위기(mood)를 판단하는 단계를 포함하며,
상기 프로젝트 속성 정보 제공 서비스를 제공하는 단계는,
상기 판단된 프로젝트의 분위기를 시각화하여 제공하되, 상기 시각화된 프로젝트의 분위기는 상기 송수신된 복수의 메시지 각각에 대응되는 복수의 제1 포인트의 가중합에 따라 그래프 형태로 시각화된 것이며, 상기 그래프 형태로 시각화된 프로젝트의 분위기 상에 프로젝트 내에 발생되는 이슈에 대응되는 복수의 제2 포인트를 표시하되, 상기 복수의 제2 포인트 각각의 색상은 상기 복수의 제2 포인트 각각에 대응되는 이슈의 해결 여부에 따라 결정되는 것인, 단계를 포함하고,
상기 프로젝트 속성 정보 제공 서비스를 제공하는 단계는,
제1 참여자가 참여 중인 복수의 프로젝트 각각의 속성 정보에 관한 요약 정보를 포함하는 요약 정보 리스트를 생성하고, 상기 생성된 요약 정보 리스트 - 상기 생성된 요약 정보 리스트는 상기 제1 참여자가 참여 중인 복수의 프로젝트 각각의 프로젝트명, 프로젝트의 목적, 프로젝트의 참여자들 간에 송수신된 메시지 중 확인하지 않은 메시지의 수 및 프로젝트의 분위기를 포함함 - 를 포함하는 메시지를 상기 제1 참여자로부터 기 설정된 시간 마다 상기 제1 참여자에게 제공하는 단계를 포함하며,
상기 프로젝트의 속성을 판단하는 단계는,
기 설정된 기간 동안 상기 프로젝트의 참여자들 간에 송수신된 복수의 메시지로부터 하나 이상의 요약문을 추출하고, 상기 추출된 하나 이상의 요약문을 분석하여 상기 프로젝트의 진행과 관련된 요약 정보를 생성하는 단계를 포함하고,
상기 프로젝트 속성 정보 제공 서비스를 제공하는 단계는,
상기 생성된 요약 정보를 시각화하여 제공하되, 상기 시각화된 요약 정보는 상기 프로젝트의 진행과 관련된 하나 이상의 키워드를 워드 클라우드(Word cloud)형태로 시각화한 것인, 단계를 포함하는,
프로젝트 참여자 간의 대화 분석 기반 시각화된 프로젝트 정보 제공방법.In a method performed by a computing device,
Analyzing messages sent and received between project participants and extracting one or more summaries; and
It includes providing a project management service based on the one or more extracted summaries,
The step of extracting the one or more summaries includes:
Analyzing a plurality of messages transmitted and received between participants of the project and determining the importance of each of the plurality of messages;
providing guidance information instructing to register a message whose determined importance is higher than a preset standard as an important message; and
When registering an important message is requested from a participant in response to the provided guidance information, extracting one or more summary sentences from the message for which registration of the important message is requested,
The steps for providing the project management service are:
Registering a reminder for the important message using the one or more extracted summaries, and providing an important message management service that guides the important message to the reminder target according to the registered reminder,
The step of determining the importance of each of the plurality of messages is:
Based on the importance score for each summary that is already stored, adding up the importance scores for one or more summaries extracted from a specific message, and if the summed importance score is greater than or equal to a preset score, determining that the specific message is an important message. Includes,
The steps for providing the project management service are:
Analyzing messages transmitted and received between participants of the project to determine the properties of the project; and
Comprising a step of providing a project attribute information provision service that provides information on the attributes of the determined project,
The step of determining the properties of the project is,
Among the plurality of messages sent and received between participants in the project, at least one of the number of messages with positive and negative attributes, the progress of the project, and issues occurring within the project and whether or not the issues are resolved is used. It includes the step of determining the mood of the project,
The step of providing the project attribute information service is,
The atmosphere of the determined project is visualized and provided, wherein the visualized atmosphere of the project is visualized in the form of a graph according to the weighted sum of a plurality of first points corresponding to each of the plurality of messages transmitted and received, and is presented in the form of a graph. In the atmosphere of the visualized project, a plurality of second points corresponding to issues occurring within the project are displayed, and the color of each of the plurality of second points depends on whether the issue corresponding to each of the plurality of second points is resolved. Contains steps that are determined,
The step of providing the project attribute information service is,
Generating a summary information list containing summary information about the attribute information of each of the plurality of projects in which the first participant is participating, and the generated summary information list - The generated summary information list includes the plurality of projects in which the first participant is participating. A message containing the project name of each project, the purpose of the project, the number of unconfirmed messages among messages sent and received between project participants, and the atmosphere of the project - is sent from the first participant at a preset time to the first participant. It includes steps to provide participants,
The step of determining the properties of the project is,
Extracting one or more summaries from a plurality of messages transmitted and received between participants of the project during a preset period of time, analyzing the one or more extracted summaries to generate summary information related to the progress of the project,
The step of providing the project attribute information service is,
The generated summary information is visualized and provided, wherein the visualized summary information visualizes one or more keywords related to the progress of the project in the form of a word cloud, including the step of:
A method of providing visualized project information based on conversation analysis between project participants.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230071623A KR102620574B1 (en) | 2020-12-18 | 2023-06-02 | Method, server and computer program for providing visualized project information based on conversation analysis among project participants |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200179096A KR102541548B1 (en) | 2020-12-18 | 2020-12-18 | Method, server and computer program for providing project management service based on messenger dialog analysis |
KR1020230071623A KR102620574B1 (en) | 2020-12-18 | 2023-06-02 | Method, server and computer program for providing visualized project information based on conversation analysis among project participants |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200179096A Division KR102541548B1 (en) | 2020-12-18 | 2020-12-18 | Method, server and computer program for providing project management service based on messenger dialog analysis |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230084118A KR20230084118A (en) | 2023-06-12 |
KR102620574B1 true KR102620574B1 (en) | 2024-01-03 |
Family
ID=82057855
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200179096A KR102541548B1 (en) | 2020-12-18 | 2020-12-18 | Method, server and computer program for providing project management service based on messenger dialog analysis |
KR1020230071624A KR102620575B1 (en) | 2020-12-18 | 2023-06-02 | Method, server and computer program for determining and managing important message about project through message analysis among project participants |
KR1020230071622A KR102659992B1 (en) | 2020-12-18 | 2023-06-02 | Method, server and computer program for extracting summary based on message analysis, registering and managing project schedules through the summary |
KR1020230071623A KR102620574B1 (en) | 2020-12-18 | 2023-06-02 | Method, server and computer program for providing visualized project information based on conversation analysis among project participants |
KR1020240052017A KR20240072100A (en) | 2020-12-18 | 2024-04-18 | Method, server, and computer program for providing project schedule management service using summary extracted from message analysis |
KR1020240052018A KR20240072101A (en) | 2020-12-18 | 2024-04-18 | Method, server, and computer program for schedule management through analysis of conversations among project participants |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200179096A KR102541548B1 (en) | 2020-12-18 | 2020-12-18 | Method, server and computer program for providing project management service based on messenger dialog analysis |
KR1020230071624A KR102620575B1 (en) | 2020-12-18 | 2023-06-02 | Method, server and computer program for determining and managing important message about project through message analysis among project participants |
KR1020230071622A KR102659992B1 (en) | 2020-12-18 | 2023-06-02 | Method, server and computer program for extracting summary based on message analysis, registering and managing project schedules through the summary |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020240052017A KR20240072100A (en) | 2020-12-18 | 2024-04-18 | Method, server, and computer program for providing project schedule management service using summary extracted from message analysis |
KR1020240052018A KR20240072101A (en) | 2020-12-18 | 2024-04-18 | Method, server, and computer program for schedule management through analysis of conversations among project participants |
Country Status (2)
Country | Link |
---|---|
KR (6) | KR102541548B1 (en) |
WO (1) | WO2022131771A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20240039697A (en) * | 2022-09-20 | 2024-03-27 | 라인플러스 주식회사 | Method and system for controlling display of message associated with freezed chat room in instant messaging service |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101470753B1 (en) * | 2013-08-26 | 2014-12-08 | 주식회사 엘지유플러스 | Terminal, Server, Method, and Recording Medium for Auto-Scheduling based on Communication Context |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6303369B2 (en) * | 2013-09-30 | 2018-04-04 | キヤノンマーケティングジャパン株式会社 | Information processing system, information processing apparatus, information processing method, and program |
KR102076162B1 (en) * | 2016-12-14 | 2020-02-11 | 최재호 | Apparatus for processing work object and method performing the same |
KR20200016186A (en) * | 2018-08-06 | 2020-02-14 | 권순혁 | System and method for automatic generation of schedule |
KR20200070058A (en) | 2018-12-07 | 2020-06-17 | 한양대학교 산학협력단 | Method for providing collaboration service |
KR20200084385A (en) * | 2018-12-20 | 2020-07-13 | 김연지 | Managing method of work schedule based on artificial intelligence |
-
2020
- 2020-12-18 KR KR1020200179096A patent/KR102541548B1/en not_active Application Discontinuation
-
2021
- 2021-12-15 WO PCT/KR2021/019020 patent/WO2022131771A1/en active Application Filing
-
2023
- 2023-06-02 KR KR1020230071624A patent/KR102620575B1/en active IP Right Grant
- 2023-06-02 KR KR1020230071622A patent/KR102659992B1/en active IP Right Grant
- 2023-06-02 KR KR1020230071623A patent/KR102620574B1/en active IP Right Grant
-
2024
- 2024-04-18 KR KR1020240052017A patent/KR20240072100A/en active Application Filing
- 2024-04-18 KR KR1020240052018A patent/KR20240072101A/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101470753B1 (en) * | 2013-08-26 | 2014-12-08 | 주식회사 엘지유플러스 | Terminal, Server, Method, and Recording Medium for Auto-Scheduling based on Communication Context |
Also Published As
Publication number | Publication date |
---|---|
KR102620575B1 (en) | 2024-01-03 |
KR102541548B1 (en) | 2023-06-12 |
KR20230084454A (en) | 2023-06-13 |
KR20240072101A (en) | 2024-05-23 |
KR20230084118A (en) | 2023-06-12 |
WO2022131771A1 (en) | 2022-06-23 |
KR20230084455A (en) | 2023-06-13 |
KR20220088248A (en) | 2022-06-27 |
KR102659992B1 (en) | 2024-04-25 |
KR20240072100A (en) | 2024-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11663545B2 (en) | Architecture, engineering and construction (AEC) risk analysis system and method | |
US11444894B2 (en) | Systems and methods for combining and summarizing emoji responses to generate a text reaction from the emoji responses | |
US20160337295A1 (en) | Automatic extraction of commitments and requests from communications and content | |
KR20240072100A (en) | Method, server, and computer program for providing project schedule management service using summary extracted from message analysis | |
US20190171928A1 (en) | Dynamically managing artificial neural networks | |
US11450095B2 (en) | Machine learning for video analysis and feedback | |
US20160224453A1 (en) | Monitoring the quality of software systems | |
US20180018634A1 (en) | Systems and methods for assessing an individual in a computing environment | |
KR20220088252A (en) | Schedule management service providing method for co-working tool users | |
KR102500433B1 (en) | Method, apparatus and computer program for automatically generating test case for software quality assurance | |
KR102536392B1 (en) | Method, apparatus and computer program for providing guide to create user customized test case for software quality assurance | |
Patil et al. | Artificial intelligence chat bot for counselling therapy | |
KR20240110470A (en) | Method, apparatus and program for providing attorney work analysis service using ai-based big data analysis | |
KR20240062065A (en) | Method, apparatus and computer program for inspecting work quality of gig workers qa platform worker and calculating rewards | |
KR20230104788A (en) | Method, apparatus and computer program for classifying and saving data based on pre-learned object classification model | |
KR20220088253A (en) | Method for providing request management service based on message importance | |
KR20230102730A (en) | Method, apparatus and computer program for providing workflow through analysis of movement path of collaborative data | |
KR20230102727A (en) | Method, apparatus and computer program for providing highlight information through collaborative data analysis | |
KR20230102728A (en) | Method, apparatus and computer program for providing activity analysis information by category through collaborative data analysis | |
KR20230102729A (en) | Method, apparatus and computer program for providing replay information based on collaborative data history | |
KR20230163657A (en) | Method and apparatus for evaluating AI-based startup item | |
CN110689052A (en) | Session message processing method, device, computer equipment and storage medium | |
KR20190116044A (en) | Method and computer readable recording medium for actively analyzing a online chatting session between users and providing analysis results visually to a user, by a conversation understanding ai system | |
KR102583123B1 (en) | Method, apparatus and program for controlling exposure of mass traffic messages based on screening mode | |
KR102687002B1 (en) | System for providing cognitive rehabilitation program customizing service for elderly cognitive reinforcement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |