KR102201650B1 - Method and apparatus for providing labor management based on deep learning network - Google Patents

Method and apparatus for providing labor management based on deep learning network Download PDF

Info

Publication number
KR102201650B1
KR102201650B1 KR1020200063707A KR20200063707A KR102201650B1 KR 102201650 B1 KR102201650 B1 KR 102201650B1 KR 1020200063707 A KR1020200063707 A KR 1020200063707A KR 20200063707 A KR20200063707 A KR 20200063707A KR 102201650 B1 KR102201650 B1 KR 102201650B1
Authority
KR
South Korea
Prior art keywords
information
keyword
target keyword
condition
target
Prior art date
Application number
KR1020200063707A
Other languages
Korean (ko)
Inventor
이선희
Original Assignee
주식회사 휴램프로
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 휴램프로 filed Critical 주식회사 휴램프로
Priority to KR1020200063707A priority Critical patent/KR102201650B1/en
Application granted granted Critical
Publication of KR102201650B1 publication Critical patent/KR102201650B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/105Human resources
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Signal Processing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The present invention relates to a device and a method for providing labor management based on a deep learning network. The device includes: at least one processor; and a memory storing instructions for the at least one processor to perform at least one step. The at least one step includes: a step of receiving a consultation request message from a user terminal; a step of driving an interactive agent in response to the consultation request message; a step of receiving a query word from the user terminal; a step of extracting a keyword from the query word based on the deep learning network and using the interactive agent; a step of classifying the extracted keyword as at least one of object, condition, and target keywords; a step of generating an answer word with respect to the target keyword based on the result of the classification; and a step of transmitting the answer word to the user terminal.

Description

딥러닝 네트워크에 기반하여 노무 관리를 제공하는 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING LABOR MANAGEMENT BASED ON DEEP LEARNING NETWORK}Method and apparatus for providing labor management based on deep learning network {METHOD AND APPARATUS FOR PROVIDING LABOR MANAGEMENT BASED ON DEEP LEARNING NETWORK}

본 발명은 딥러닝 네트워크에 기반하여 노무 관리를 제공하는 방법 및 장치에 관한 것으로, 더욱 상세하게는 노무 관리와 관련한 질의어에 대하여 딥러닝 네트워크에 기반하여 응답어를 생성함으로써 최적의 노무 관리를 제공하는 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for providing labor management based on a deep learning network, and more particularly, to provide optimal labor management by generating a response word based on a deep learning network for a query word related to labor management. It relates to a method and apparatus.

각 회사의 인사 관리 담당자들은 근태 기록을 기초로 초과 근무수당을 지급하거나, 4대 보험을 포함하는 급여 명세서를 근로자에게 제공한다. 그러나, 빈번하게 변경되는 근로 기준법을 준수하면서 정확한 근태 관리 및 근로 환경을 근로자에게 제공하기에는, 인사 관리 담당자의 업무 부담이 크게 가중되는 문제가 있다.Personnel managers at each company pay overtime pay based on their time and attendance records or provide workers with pay stubs that include four major insurance policies. However, in order to provide an accurate time and attendance management and working environment to workers while complying with the frequently changed Labor Standards Act, there is a problem that the work burden of the personnel manager is greatly increased.

이러한 문제를 해결하기 위하여, 근태, 연차, 휴직, 퇴직, 급여 등을 관리할 수 있는 프로그램이 일부 보급되어 사용되고 있으나, 여전히 인사 관리 담당자가 필요한 정보를 입력하고, 입력된 정보를 기초로 인사 관리 담당자가 직접 근태 관리 등의 업무를 진행하는 형태이기 때문에 노무 관리를 보조하는 역할을 수행하는 데 그치고 있다.In order to solve this problem, some programs to manage time and attendance, annual leave, leave, retirement, salary, etc. have been spread and used, but the person in charge of personnel management still inputs necessary information, and the person in charge of personnel management based on the entered information In the form of directly performing work such as time and attendance management, it is only playing a role of assisting labor management.

최근에는 기계학습법의 발전된 형태인 딥러닝 네트워크가 각광받고 있다. 딥러닝 네트워크는 지도 학습 또는 비지도 학습을 기반으로 입력된 데이터를 분류하고 패턴을 추론하여 가장 적합한 판별 결과를 도출한다. 이러한 딥러닝 네트워크는 이미지를 기초로 사물을 인식하거나 음성을 인식하는 데 주로 활용되고 있으나 법률 서비스에 적용하는 데 어려움이 많다.
국내 등록특허공보 제10-2011-0112041호(공개일자 2011.10.12)에는 통합 노무 관리 시스템이 개시되어 있다.
상기 문헌에서의 시스템은 각종 노무를 제공하는 노무자 또는 노무제공업체로부터 노무자에 대한 정보를 등록받아 노무자정보DB(31)에 저장하고, 노무자에게 고유번호가 부여된 회원카드를 제공하는 노무자 등록모듈(21)과; 노무자로부터 노무를 제공받고자 하는 업체로부터 각종 정보를 등록받아 업체정보DB(32)에 저장하고 관리하는 업체 등록모듈(22)과; 등록된 업체로부터 노무의 제공받아 예약정보DB(33)에 저장하고 관리하는 주문 및 예약 관리모듈(23)과; 노무를 제공하고자 하는 노무자로부터 노무 제공을 위한 출석정보를 제공받아 출석정보DB(34)에 저장하고 관리하는 출석 확인모듈(24)과; 등록된 업체의 노무에 대한 정보에 대하여 출석한 노무자를 대응시켜 배치하는 노무 관리모듈(25)과; 노무 관리모듈(25)에 의해 업체별로 노무자의 배치가 완료되면, 노무자가 확인할 수 있도록 배치된 노무자에게 SMS문자를 제공하는 업체투입 통보모듈(26)과; 노무자를 고용한 업체로부터 제공된 비용에 대한 정보를 제공받아 비용정보DB(35)에 저장되고 관리하는 비용 관리모듈(27)과; 기간에 따른 업체별 노무비지급 명세서와 노무자에 대한 정보를 관리하는 노임대장 관리모듈(28)를 포함하는 것을 특징으로 한다.
In recent years, deep learning networks, an advanced form of machine learning methods, are in the spotlight. The deep learning network classifies the input data based on supervised learning or unsupervised learning and infers patterns to derive the most suitable discrimination result. These deep learning networks are mainly used to recognize objects or voices based on images, but there are many difficulties in applying them to legal services.
Korean Patent Publication No. 10-2011-0112041 (published date 2011.10.12) discloses an integrated labor management system.
The system in the above document is a laborer registration module that receives information on laborers from laborers or labor providers who provide various labor, stores them in the laborer information DB 31, and provides a member card with a unique number assigned to the laborers ( 21) and; A company registration module 22 that receives various types of information from a company that wants to receive labor from a laborer, stores it in the company information DB 32 and manages it; An order and reservation management module 23 that receives labor from a registered company and stores and manages it in the reservation information DB 33; An attendance check module 24 which receives attendance information for labor provision from a labor worker who intends to provide labor, stores and manages attendance information DB 34; A labor management module 25 which corresponds to and arranges the laborers who attended with respect to information on labor of a registered company; A company input notification module 26 that provides an SMS text to the assigned workers so that the workers can check when the assignment of workers for each company is completed by the labor management module 25; A cost management module 27 that receives information on costs provided from a company that employs laborers and stores and manages the cost information DB 35; It characterized in that it comprises a labor ledger management module 28 for managing labor cost payment statements and information on laborers according to the period.

국내 등록특허공보 제10-2011-0112041호(2011.10.12.)Korean Patent Publication No. 10-2011-0112041 (2011.10.12.) 국내 공개특허공보 제10-2010-0073793호(2010.07.01.)Korean Patent Publication No. 10-2010-0073793 (2010.07.01.) 국내 공개특허공보 제10-2002-0007106호(2002.01.26.)Korean Patent Application Publication No. 10-2002-0007106 (2002.01.26.)

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 노무 관리 제공 장치를 제공하는 데 있다.An object of the present invention for solving the above problems is to provide an apparatus for providing labor management.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 노무 관리 제공 방법을 제공하는 데 있다.Another object of the present invention for solving the above problems is to provide a method for providing labor management.

상기 목적을 달성하기 위한 본 발명은, 노무 관리 제공 장치를 제공한다.The present invention for achieving the above object provides an apparatus for providing labor management.

상기 노무 관리 제공 장치는, 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함할 수 있다.The labor management providing apparatus may include at least one processor; And a memory for storing instructions instructing the at least one processor to perform at least one step.

상기 적어도 하나의 단계는, 사용자 단말로부터 상담 요청 메시지를 수신하는 단계; 상기 상담 요청 메시지에 대한 응답으로 대화형 에이전트를 구동하는 단계; 상기 사용자 단말로부터 질의어를 수신하는 단계; 상기 대화형 에이전트를 이용하여 딥러닝 네트워크를 기초로 상기 질의어로부터 키워드를 추출하는 단계; 추출된 키워드를 대상 키워드, 조건 키워드, 타겟 키워드 중 적어도 하나로 분류하는 단계; 분류 결과에 기초하여 상기 타겟 키워드에 대한 응답어를 생성하는 단계; 및 상기 응답어를 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.The at least one step may include receiving a consultation request message from a user terminal; Driving an interactive agent in response to the consultation request message; Receiving a query word from the user terminal; Extracting a keyword from the query language based on a deep learning network using the interactive agent; Classifying the extracted keyword into at least one of a target keyword, a condition keyword, and a target keyword; Generating a response word for the target keyword based on the classification result; And transmitting the response word to the user terminal.

상기 대상 키워드는, 상기 타겟 키워드의 대상을 나타내는 말뭉치를 포함할 수 있다.The target keyword may include a corpus indicating the target of the target keyword.

상기 조건 키워드는, 상기 타겟 키워드를 결정하는데 필요한 조건(condition)을 나타내는 말뭉치를 포함할 수 있다.The condition keyword may include a corpus indicating a condition required to determine the target keyword.

상기 타겟 키워드는, 상기 질의어가 요구하는 목적 정보를 나타내는 말뭉치를 포함할 수 있다.The target keyword may include a corpus indicating target information requested by the query word.

상기 적어도 하나의 단계는, 상기 타겟 키워드를 결정하기 위한 타겟 키워드 결정식을 저장 장치에 미리 저장하는 단계를 더 포함할 수 있다.The at least one step may further include storing a target keyword determination formula for determining the target keyword in a storage device in advance.

상기 적어도 하나의 단계는, 상기 대화형 에이전트를 이용하여 상기 타겟 키워드와 대응하는 타겟 키워드 결정식을 획득하고, 획득된 타겟 키워드 결정식을 산출하는 데 필요한 기준 조건 키워드들을 획득하는 단계; 및 상기 기준 조건 키워드들에 상기 조건 키워드를 대입하여 상기 응답어를 생성하는 단계를 더 포함할 수 있다.The at least one step may include obtaining a target keyword determination formula corresponding to the target keyword by using the interactive agent, and obtaining reference condition keywords necessary for calculating the obtained target keyword determination formula; And generating the response word by substituting the condition keyword into the reference condition keywords.

상기 적어도 하나의 단계는, 상기 기준 조건 키워드들을 획득하는 단계 이후에, 상기 조건 키워드가 상기 기준 조건 키워드들과 1:1로 대응하지 않는 경우, 상기 대상 키워드와 대응하는 고용 정보로부터 추가 조건 키워드를 획득하는 단계를 더 포함할 수 있다.In the at least one step, after the step of acquiring the reference condition keywords, when the condition keyword does not correspond 1:1 with the reference condition keywords, an additional condition keyword is provided from employment information corresponding to the target keyword. It may further include the step of obtaining.

상기 고용 정보는, 업종 코드, 고용 형태, 임금, 근무 지역, 근무 조건, 근무 시간 중 적어도 하나를 포함할 수 있다.The employment information may include at least one of an industry code, employment type, wage, work area, working condition, and working hours.

상기 딥러닝 네트워크는, 상기 질의어에서 특징 키워드 벡터를 추출하는 컨볼루셔널 네트워크; 및 상기 특징 키워드 벡터를 상기 대상 키워드, 상기 조건 키워드 및 상기 타겟 키워드 중 하나로 분류하는 LSTM 네트워크를 포함할 수 있다.The deep learning network may include a convolutional network for extracting a feature keyword vector from the query term; And an LSTM network that classifies the feature keyword vector into one of the target keyword, the condition keyword, and the target keyword.

상기 적어도 하나의 단계는, 상기 사용자 단말로부터 구인 고용 정보와 희망 고용 정보를 수집하는 단계; 상기 구인 고용 정보를 수집하여 획득된 구인 리스트에서 상기 희망 고용 정보와 대응하는 구인 고용 정보를 선택하는 단계; 및 선택된 구인 고용 정보를 상기 사용자 단말에 제공하는 단계를 포함할 수 있다.The at least one step may include collecting job information and desired employment information from the user terminal; Selecting the job offer information corresponding to the desired employment information from the job list obtained by collecting the job offer information; And providing the selected job offer employment information to the user terminal.

상기 목적을 달성하기 위한 본 발명의 다른 측면은, 노무 관리를 제공하는 방법을 제공한다.Another aspect of the present invention for achieving the above object provides a method of providing labor management.

상기 노무 관리를 제공하는 방법은, 사용자 단말로부터 상담 요청 메시지를 수신하는 단계; 상기 상담 요청 메시지에 대한 응답으로 대화형 에이전트를 구동하는 단계; 상기 사용자 단말로부터 질의어를 수신하는 단계; 상기 대화형 에이전트를 이용하여 딥러닝 네트워크를 기초로 상기 질의어로부터 키워드를 추출하는 단계; 추출된 키워드를 대상 키워드, 조건 키워드, 타겟 키워드 중 적어도 하나로 분류하는 단계; 분류 결과에 기초하여 상기 타겟 키워드에 대한 응답어를 생성하는 단계; 및 상기 응답어를 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.The method of providing labor management includes: receiving a consultation request message from a user terminal; Driving an interactive agent in response to the consultation request message; Receiving a query word from the user terminal; Extracting a keyword from the query language based on a deep learning network using the interactive agent; Classifying the extracted keyword into at least one of a target keyword, a condition keyword, and a target keyword; Generating a response word for the target keyword based on the classification result; And transmitting the response word to the user terminal.

상기 대상 키워드는, 상기 타겟 키워드의 대상을 나타내는 말뭉치를 포함할 수 있다.The target keyword may include a corpus indicating the target of the target keyword.

상기 조건 키워드는, 상기 타겟 키워드를 결정하는데 필요한 조건(condition)을 나타내는 말뭉치를 포함할 수 있다.The condition keyword may include a corpus indicating a condition required to determine the target keyword.

상기 타겟 키워드는, 상기 질의어가 요구하는 목적 정보를 나타내는 말뭉치를 포함할 수 있다.The target keyword may include a corpus indicating target information requested by the query word.

상기 노무 관리를 제공하는 방법은, 상기 타겟 키워드를 결정하기 위한 타겟 키워드 결정식을 저장 장치에 미리 저장하는 단계를 더 포함할 수 있다.The method of providing labor management may further include pre-storing a target keyword determination formula for determining the target keyword in a storage device.

상기 노무 관리를 제공하는 방법은, 상기 대화형 에이전트를 이용하여 상기 타겟 키워드와 대응하는 타겟 키워드 결정식을 획득하고, 획득된 타겟 키워드 결정식을 산출하는 데 필요한 기준 조건 키워드들을 획득하는 단계; 및 상기 기준 조건 키워드들에 상기 조건 키워드를 대입하여 상기 응답어를 생성하는 단계를 더 포함할 수 있다.The method of providing the labor management includes: obtaining a target keyword determination formula corresponding to the target keyword using the interactive agent, and obtaining reference condition keywords necessary for calculating the obtained target keyword determination formula; And generating the response word by substituting the condition keyword into the reference condition keywords.

상기 노무 관리를 제공하는 방법은, 상기 기준 조건 키워드들을 획득하는 단계 이후에, 상기 조건 키워드가 상기 기준 조건 키워드들과 1:1로 대응하지 않는 경우, 상기 대상 키워드와 대응하는 고용 정보로부터 추가 조건 키워드를 획득하는 단계를 더 포함할 수 있다.The method for providing labor management includes, after the step of obtaining the reference condition keywords, if the condition keyword does not correspond 1:1 with the reference condition keywords, an additional condition from employment information corresponding to the target keyword It may further include the step of obtaining the keyword.

상기 고용 정보는, 업종 코드, 고용 형태, 임금, 근무 지역, 근무 조건, 근무 시간 중 적어도 하나를 포함할 수 있다.The employment information may include at least one of an industry code, employment type, wage, work area, working condition, and working hours.

상기 딥러닝 네트워크는, 상기 질의어에서 특징 키워드 벡터를 추출하는 컨볼루셔널 네트워크; 및 상기 특징 키워드 벡터를 상기 대상 키워드, 상기 조건 키워드 및 상기 타겟 키워드 중 하나로 분류하는 LSTM 네트워크를 포함할 수 있다.The deep learning network may include a convolutional network for extracting a feature keyword vector from the query term; And an LSTM network that classifies the feature keyword vector into one of the target keyword, the condition keyword, and the target keyword.

상기 노무 관리를 제공하는 방법은, 상기 사용자 단말로부터 구인 고용 정보와 희망 고용 정보를 수집하는 단계; 상기 구인 고용 정보를 수집하여 획득된 구인 리스트에서 상기 희망 고용 정보와 대응하는 구인 고용 정보를 선택하는 단계; 및 선택된 구인 고용 정보를 상기 사용자 단말에 제공하는 단계를 포함할 수 있다.The method of providing the labor management includes: collecting job information and desired employment information from the user terminal; Selecting the job offer information corresponding to the desired employment information from the job list obtained by collecting the job offer information; And providing the selected job offer employment information to the user terminal.

상기와 같은 본 발명에 따른 딥러닝 네트워크에 기반하여 노무 관리를 제공하는 방법 및 장치를 이용할 경우에는 질의어에 대하여 딥러닝 네트워크를 기반으로 최적의 분류를 통해 응답어를 생성하기 때문에 가장 적합한 응답어를 생성할 수 있다.In the case of using the method and apparatus for providing labor management based on the deep learning network according to the present invention as described above, the most appropriate response word is generated through the optimal classification based on the deep learning network for the query word. Can be generated.

도 1은 본 발명의 일 실시예에 따른 딥러닝 네트워크에 기반하여 노무 관리를 제공하는 방법이 수행되는 개요도이다.
도 2는 도 1에 따른 노무 관리 제공 장치에서 근태 관리 정보를 생성한 결과를 예시적으로 나타낸 도면이다.
도 3은 도 1에 따른 노무 관리 제공 장치에서 대화형 에이전트를 구동하여 상담 챗봇을 제공하는 예시도이다.
도 4는 딥러닝 네트워크를 이용하여 키워드를 추출 및 분류하기 위한 딥러닝 네트워크를 나타낸 개념도이다.
도 5는 도 1에 따른 노무 관리 제공 장치에서 구인 고용 정보와 구직 고용 정보를 서로 매칭하는 방법을 설명하기 위한 흐름도이다.
도 6은 도 1에 따른 노무 관리 제공 장치의 하드웨어 구성을 예시적으로 나타낸 블록도이다.
1 is a schematic diagram of a method for providing labor management based on a deep learning network according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating a result of generating time and attendance information by the apparatus for providing labor management according to FIG. 1.
3 is an exemplary diagram of providing a counseling chatbot by driving an interactive agent in the labor management providing apparatus according to FIG. 1.
4 is a conceptual diagram showing a deep learning network for extracting and classifying keywords using a deep learning network.
FIG. 5 is a flowchart illustrating a method of matching job-seeking employment information and job-seeking employment information in the apparatus for providing labor management according to FIG. 1.
6 is a block diagram illustrating an exemplary hardware configuration of the apparatus for providing labor management according to FIG. 1.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. In the present invention, various modifications may be made and various embodiments may be provided, and specific embodiments will be illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to a specific embodiment, it is to be understood to include all changes, equivalents, and substitutes included in the spirit and scope of the present invention. In describing each drawing, similar reference numerals have been used for similar elements.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various elements, but the elements should not be limited by the terms. These terms are used only for the purpose of distinguishing one component from another component. For example, without departing from the scope of the present invention, a first element may be referred to as a second element, and similarly, a second element may be referred to as a first element. The term and/or includes a combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it is understood that it may be directly connected or connected to the other component, but other components may exist in the middle. Should be. On the other hand, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there is no other component in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present application, terms such as "comprise" or "have" are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof, does not preclude in advance.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs. Terms as defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and should not be interpreted as an ideal or excessively formal meaning unless explicitly defined in this application. Does not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 딥러닝 네트워크에 기반하여 노무 관리를 제공하는 방법이 수행되는 개요도이다.1 is a schematic diagram of a method for providing labor management based on a deep learning network according to an embodiment of the present invention.

도 1을 참조하면, 딥러닝 네트워크에 기반하여 노무 관리를 제공하는 방법은, 노무 관리 제공 장치(100)와 적어도 하나의 사용자 단말(200) 사이의 데이터 통신으로 수행될 수 있다.Referring to FIG. 1, a method of providing labor management based on a deep learning network may be performed through data communication between a labor management providing apparatus 100 and at least one user terminal 200.

적어도 하나의 사용자 단말(200)은 노무 관리 서비스를 제공받고자 하는 개별 수요자들의 단말일 수 있다.At least one user terminal 200 may be a terminal of individual consumers who wish to receive labor management service.

예를 들어, 사용자 단말(200)은, 근로를 제공받는 고용자 단말(210) 및 근로를 제공하는 근로자 단말(220)을 포함할 수 있다. 고용자 단말(210)은 노무 관리 제공 장치(100)에 근로 계약서를 요청하고, 요청에 상응하는 근로 계약서를 수신할 수 있다. 구체적으로, 고용자 단말(210)은 고용 정보를 포함하는 근로 계약서 요청 메시지를 노무 관리 제공 장치(100)로 전송하고, 노무 관리 제공 장치(100)로부터 고용 정보에 상응하는 근로 계약서를 수신할 수 있다. 예를 들어, 고용 정보는, 업종 코드, 고용 형태(일반 근로시간제, 교대 근로시간제, 간주 근로시간제), 임금, 근무 지역, 근무 조건(정규직, 파트타임, 파견직, 인턴, 개인 사업자, 프리랜서 등), 근무 시간 중 적어도 하나를 포함할 수 있다. 여기서 고용 정보에 상응하는 근로 계약서는 전문가 단말(300)에 의해 미리 업종 코드별로 입력되어 저장 장치에 저장될 수 있다.For example, the user terminal 200 may include an employee terminal 210 receiving work and a worker terminal 220 providing work. The employee terminal 210 may request a labor contract from the labor management providing device 100 and receive a labor contract corresponding to the request. Specifically, the employee terminal 210 may transmit a labor contract request message including employment information to the labor management providing device 100 and receive a labor contract corresponding to the employment information from the labor management providing device 100 . For example, employment information may include industry code, employment type (general working hours, shift working hours, deemed working hours), wages, working area, working conditions (regular workers, part-time, dispatched workers, interns, individual entrepreneurs, freelancers, etc.) , May include at least one of working hours. Here, the labor contract corresponding to the employment information may be input by the expert terminal 300 in advance for each industry type and stored in the storage device.

또한, 고용자 단말(210)은 구인 고용 정보를 포함하는 구인 요청 메시지를 노무 관리 제공 장치(100)로 전송하고, 노무 관리 제공 장치(100)로부터 추천 근로자 리스트를 제공받을 수 있다. 구인 고용 정보는 상술한 고용 정보에 대해 고용자측에서 제공하는 정보일 수 있다.In addition, the employee terminal 210 may transmit a job offer request message including job information for employment to the labor management providing apparatus 100 and receive a list of recommended workers from the labor management providing apparatus 100. The job offer employment information may be information provided by an employee for the above-described employment information.

고용자 단말(210)은 현재 사업장에 대한 근태 정보를 입력하고, 근태 정보를 기초로 생성된 근태 관리 정보를 수신할 수 있다.The employee terminal 210 may input time and attendance information for the current workplace, and receive time and attendance management information generated based on the time and attendance information.

근로자 단말(220)은 노무 관리 제공 장치(100)로 희망 고용 정보를 포함하는 구직 요청 메시지를 전송하고, 노무 관리 제공 장치(100)로부터 추천 고용자 리스트를 제공받을 수 있다. 희망 고용 정보는 상술한 고용 정보에 대해 근로자측에서 희망하는 정보일 수 있다.The worker terminal 220 may transmit a job search request message including desired employment information to the labor management providing device 100 and receive a list of recommended employees from the labor management providing device 100. The desired employment information may be information desired by a worker for the above-described employment information.

고용자 단말(210)이나 근로자 단말(220)은 근로 계약서를 포함하는 법률 검토 요청 메시지를 노무 관리 제공 장치(100)로 전송하고, 노무 관리 제공 장치(100)로부터 법률 검토 결과 메시지를 수신할 수 있다. 또한, 고용자 단말(210)이나 근로자 단말(220)은 노무 관리 제공 장치(100)에 상담 요청 메시지를 전송하고, 노무 관리 제공 장치(100)에 의해 구동되는 대화형 에이전트를 통해 상담 챗봇 서비스를 제공받거나, 노무 관리 제공 장치(100)를 통해 전문가(예를 들어, 노무사나 변호사 등)의 전문가 단말(300)과 연결되어 전문가 단말과 채팅 메시지를 송수신할 수 있다.The employee terminal 210 or the worker terminal 220 may transmit a legal review request message including a labor contract to the labor management providing device 100 and receive a legal review result message from the labor management providing device 100 . In addition, the employee terminal 210 or the worker terminal 220 transmits a counseling request message to the labor management providing device 100, and provides a counseling chatbot service through an interactive agent driven by the labor management providing device 100 It may receive or be connected to the expert terminal 300 of an expert (for example, a labor manager or a lawyer) through the labor management providing device 100 to transmit and receive a chat message with the expert terminal.

노무 관리 제공 장치(100)는, 사용자 단말(200)로부터 법률 검토 요청 메시지를 수신하면, 수신된 법률 검토 요청 메시지에 포함된 근로 계약서를 전문가 단말(300)로 전송하고, 전문가 단말(300)로부터 법률 검토 결과 메시지를 수신하여 사용자 단말(200)로 전송할 수 있다. When receiving the legal review request message from the user terminal 200, the labor management providing apparatus 100 transmits the labor contract included in the received legal review request message to the expert terminal 300, and from the expert terminal 300 The legal review result message may be received and transmitted to the user terminal 200.

노무 관리 제공 장치(100)는, 사용자 단말(200)로부터 상담 요청을 수신하면, 저장 장치에 저장된 전문가 단말 리스트를 참조하여 응답 가능한 전문가 단말(300)을 검색하고, 검색된 전문가 단말(300)과 사용자 단말(200) 사이에 채팅 메시지를 중계할 수 있다. 한편, 노무 관리 제공 장치(100)는, 응답 가능한 전문가 단말(300)이 검색되지 않은 경우(또는 디폴트 설정으로), 대화형 에이전트를 구동하고, 구동된 대화형 에이전트를 통해 사용자 단말(200)에 상담 챗봇 서비스를 제공할 수 있다. When receiving a consultation request from the user terminal 200, the labor management providing apparatus 100 searches for a respondable expert terminal 300 by referring to a list of expert terminals stored in the storage device, and searches the expert terminal 300 and the user. A chat message may be relayed between the terminals 200. On the other hand, when the expert terminal 300 capable of responding is not found (or by default setting), the labor management providing device 100 drives the interactive agent, and sends it to the user terminal 200 through the driven interactive agent. Consultation chatbot service can be provided.

노무 관리 제공 장치(100)는 사용자 단말(200)로부터 구인 요청 메시지 또는 구직 요청 메시지를 수신하면, 사용자 단말(200)들 중에서 근로자 단말(220)과 고용자 단말(210)을 서로 매칭하고, 매칭 결과에 따라 추천 고용자 리스트 또는 추천 근로자 리스트를 사용자 단말(200)로 제공할 수 있다.When the labor management providing device 100 receives a job offer request message or a job search request message from the user terminal 200, the worker terminal 220 and the employee terminal 210 are matched among the user terminals 200, and the matching result According to the user terminal 200 may be provided with a list of recommended employees or a list of recommended workers.

노무 관리 제공 장치(100)는 미리 수집된 최신 법률과 정책을 기초로 고용자 단말(210)로부터 수신한 고용 정보를 분석하고, 노무 알람 서비스를 고용자 단말(210)에 제공할 수 있다. 예를 들어, 노무 관리 제공 장치(100)는 고용 정보에 포함된 임금과 법정 최저 임금을 비교하여 최저 임금보다 낮은 경우 최저 임금 위반을 알리는 메시지를 고용자 단말(210)에 전송하거나, 법정 의무 교육 수강에 대한 메시지를 고용자 단말(210)에 전송할 수 있다.The labor management providing apparatus 100 may analyze the employment information received from the employee terminal 210 based on the latest laws and policies collected in advance, and provide a labor alarm service to the employee terminal 210. For example, the labor management providing apparatus 100 compares the wage included in the employment information with the legal minimum wage and transmits a message notifying the violation of the minimum wage to the employee terminal 210 when it is lower than the minimum wage, or taking legal compulsory education A message about may be transmitted to the employee terminal 210.

또한, 노무 관리 제공 장치(100)는 고용 정보를 기초로 임금에 따른 금융상품, 휴가시즌에 따른 여행 상품, 업종에 따른 필수 상품 등을 사용자 단말(200)에 추천하는 광고 서비스를 제공할 수 있다.In addition, the labor management providing apparatus 100 may provide an advertisement service for recommending financial products according to wages, travel products according to vacation season, essential products according to business type, etc. to the user terminal 200 based on employment information. .

사용자 단말(200) 및 전문가 단말(300)의 예를 들면, 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), PDA(Personal Digital Assistant) 등일 수 있다.For example, the user terminal 200 and the expert terminal 300, a desktop computer that can communicate, a laptop computer, a notebook (notebook), a smart phone (smart phone), a tablet PC (tablet PC) , Mobile phone, smart watch, smart glass, e-book reader, portable multimedia player (PMP), portable game console, navigation device, digital camera, DMB (digital multimedia broadcasting) player, digital audio recorder, digital audio player, digital video recorder, digital video player, PDA (Personal Digital Assistant) Etc.

상술한 것처럼, 노무 관리 제공 장치(100)는 전문가 단말(300)과 사용자 단말(200)을 중계함과 동시에 딥러닝 네트워크를 기반으로 근로 계약서에 대한 법률 검토를 1차적으로 수행할 수 있으며, 근로자 단말(220)과 고용자 단말(210)을 서로 매칭하여 구인구직 서비스를 제공할 수 있다. 그 뿐만 아니라 노무 관리 제공 장치(100)는 고용자 단말(210)로부터 수신한 근태 정보를 기초로 근태 관리 정보를 생성하고 근태 관리 정보를 고용자 단말(210) 또는 근로자 단말(220)에 제공할 수 있다.As described above, the labor management providing apparatus 100 may relay the expert terminal 300 and the user terminal 200 and at the same time perform a first legal review of the labor contract based on a deep learning network. A job search service may be provided by matching the terminal 220 and the employee terminal 210 with each other. In addition, the labor management providing apparatus 100 may generate time and attendance information based on the time and attendance information received from the employee terminal 210 and provide the time and attendance management information to the employee terminal 210 or the worker terminal 220. .

도 2는 도 1에 따른 노무 관리 제공 장치에서 근태 관리 정보를 생성한 결과를 예시적으로 나타낸 도면이다.FIG. 2 is a diagram illustrating a result of generating time and attendance information by the apparatus for providing labor management according to FIG. 1.

도 2를 참조하면, 사용자 단말(200)로부터 근태 정보를 수신하면, 노무 관리 제공 장치(100)는 수신된 근태 정보를 기초로 근태 관리 정보를 생성할 수 있다. Referring to FIG. 2, upon receiving time and attendance information from the user terminal 200, the labor management providing apparatus 100 may generate time and attendance management information based on the received time and attendance information.

예를 들어, 근태 정보는, 근로자의 고유 식별 정보, 고용 정보 및/또는 근로 제공 정보를 포함할 수 있다. 고유 식별 정보는, 사번, 이름, 부서, 직위 등을 포함할 수 있다. 고용 정보는, 고용 형태(11), 임금, 근무 지역, 근무 조건(정규직, 파트타임, 파견직, 인턴, 개인 사업자, 프리랜서 등), 근무 시간 중 적어도 하나를 포함할 수 있다. 근로 제공 정보는, 실제 업무 시간, 야간/휴일 근무 여부와 근무 시간, 연차나 휴직 여부 등을 포함할 수 있다. For example, the time and attendance information may include worker's unique identification information, employment information and/or work provision information. The unique identification information may include an employee number, name, department, position, and the like. Employment information may include at least one of employment type (11), wages, work area, working conditions (regular workers, part-time, dispatched workers, interns, individual entrepreneurs, freelancers, etc.), and working hours. The work provision information may include actual working hours, night/holiday work and working hours, annual leave or non-working status.

노무 관리 제공 장치(100)는 근태 정보를 기초로 근태 관리 정보를 생성할 수 있다. 여기서 근태 관리 정보는, 지각과 조퇴 여부 및 그 횟수, 추가 수당 지급 여부 및 그 액수, 잔여 연차 갯수 등을 포함할 수 있다. 예를 들어, 노무 관리 제공 장치(100)는, 근로 제공 정보와 고용 정보를 서로 비교하여 지각과 조퇴 여부 및 그 횟수를 생성하거나, 야근/휴일 근무에 따른 추가 수당 지급액, 잔여 연차 개수, 퇴직금 지급액 등을 생성할 수 있다. The labor management providing apparatus 100 may generate time and attendance management information based on the time and attendance information. Here, the time and attendance management information may include whether or not to be late and leave early, the number of times, whether or not additional allowances are paid and the amount thereof, and the number of remaining annual leave. For example, the labor management providing device 100 compares the labor provision information and the employment information to generate lateness and early leave and the number of times, or the additional allowance payment amount according to night work/holiday work, the number of remaining annual leave, the amount of severance pay And so on.

상술한 것처럼, 노무 관리 제공 장치(100)는 근태 정보를 입력하면, 고용 정보와 근로 제공 정보를 서로 비교하여 근태 관리 정보를 생성하기 때문에 각 인사 관리 담당자가 직접 횟수나 액수를 산정하는 등의 업무 부담과 리스크를 최소화할 수 있다.As described above, since the labor management providing device 100 generates time and attendance management information by comparing employment information and labor provision information when entering time and attendance information, each personnel management person in charge directly calculates the number or amount. The burden and risk can be minimized.

도 3은 도 1에 따른 노무 관리 제공 장치에서 대화형 에이전트를 구동하여 상담 챗봇을 제공하는 예시도이다.3 is an exemplary diagram of providing a counseling chatbot by driving an interactive agent in the labor management providing apparatus according to FIG. 1.

도 3을 참조하면, 노무 관리 제공 장치(100)는 대화형 에이전트를 구동할 수 있다. 예를 들어, 대화형 에이전트는, 근로계약서, 초과수당 계산, 미사용 연차, 퇴직 연금, 주 52시간 위반(또는 근로기준법 위반)을 포함하는 각종 근로 조건과 고용 지원 정보(또는 구인구직 서비스)와 관련된 질의어(20)에 대하여 응답어(30)를 생성하거나, 실시간 알림을 제공할 수 있다.Referring to FIG. 3, the apparatus 100 for providing labor management may drive an interactive agent. For example, an interactive agent can be used for a variety of working conditions and employment support information (or job search services), including work contracts, overtime calculations, unused annuals, retirement annuities, and 52-hour per week violations (or violations of the Labor Standards Act). A response word 30 may be generated for the query word 20 or a real-time notification may be provided.

대화형 에이전트는, 노무 관리 제공 장치(100)의 저장소에 구축된 정보뿐만 아니라 외부 서버와 연동하거나 웹 크롤링(web crawling)을 이용하여 데이터를 획득할 수 있다. 예를 들어, 외부 서버는 네이버 지식인, 노동 기관, 중앙 경제 등의 운영 서버를 포함할 수 있다. 여기서 획득된 데이터는 질의어(20)에 대한 응답어(30)를 생성하기 위한 참조 데이터로서 후술하는 타겟 키워드를 결정하기 위한 기준식, 각 기업의 근로 계약서, 노동 관계법, 노동 관련 행정기관의 해석 등을 포함할 수 있다. 또한, 획득된 데이터는 전문가 단말(300)에 의해 수정이나 편집됨으로써 공인된 전문가의 검증을 거칠 수 있다.The interactive agent may acquire data by interworking with an external server or using web crawling, as well as information built in the storage of the labor management providing device 100. For example, the external server may include operating servers such as Naver intellectuals, labor organizations, and central economy. The data obtained here are reference data for generating the response word 30 for the query word 20, a standard formula for determining the target keyword to be described later, the labor contract of each company, the labor relations law, interpretation of the labor-related administrative agency, etc. It may include. In addition, the acquired data may be modified or edited by the expert terminal 300 to undergo verification by a certified expert.

대화형 에이전트는 자연어 처리 엔진이 통합되어 있는 코드형 봇 빌더에 의해 생성된 후 구동될 수 있다. 예를 들어, 애플(apple), 아마존(amazon), 페이스북(facebook), 구글(google) 등에서 제공하는 상용 소프트웨어 개발 키트(SDKs)를 이용하여 대화형 에이전트를 생성 및 구동할 수 있다. 예를 들어, 대화형 에이전트는 구글(google)의 딥러닝 기반의 오픈소스 소프트웨어인 텐서 플로(Tensor Flow)를 이용하여 구현되고, 아마존의 AWS(amazon web service)에서 제공하는 클라우드 인프라 상에서 동작할 수 있다.The interactive agent can be created and driven by a code-type bot builder in which a natural language processing engine is integrated. For example, you can create and run an interactive agent using commercial software development kits (SDKs) provided by Apple, Amazon, Facebook, and Google. For example, the interactive agent is implemented using Tensor Flow, Google's deep learning-based open source software, and can operate on the cloud infrastructure provided by Amazon's amazon web service (AWS). have.

코드형 봇 빌더 이외에 프로그래밍에 대한 지식 없이 대화형 에이전트를 생성할 수 있는 봇 빌더가 사용될 수도 있다. 예를 들어, 모션.AI(Motion.ai), 채퓨얼(Chatfuel), IBM 왓슨(IBM Waston Conversation) 등에 의해 제공되는 봇 빌더를 사용하여 대화형 에이전트를 생성하여 구동시킬 수도 있다.In addition to the coded bot builder, a bot builder that can create an interactive agent without programming knowledge may be used. For example, you can create and run an interactive agent using a bot builder provided by Motion.ai, Chatfuel, or IBM Waston Conversation.

한편, 상술한 대화형 에이전트를 생성하기 위한 봇 빌더들은 대화형 에이전트의 답변을 자동으로 생성하지 못한다. 따라서, 대화형 에이전트의 답변에 해당하는 다이얼로그(dialogue)를 개발자가 직접 작성하는 것이 필요하지만, 다이얼로그를 다양하고 생성하고 질의어와 매칭하는 데는 많은 노력이 필요할 수 있다.On the other hand, bot builders for creating the above-described interactive agent cannot automatically generate the answer of the interactive agent. Therefore, it is necessary for a developer to directly create a dialog corresponding to an answer of an interactive agent, but a lot of effort may be required to create a variety of dialogs and match them with query words.

이러한 문제를 해결하기 위해, 본 발명의 일 실시예에 따른 대화형 에이전트는 사용자 단말(200)로부터 질의어(20)를 수신하고, 수신된 질의어(20)에서 대상 키워드(21), 조건 키워드(22, 23), 타겟 키워드(24, 25)을 추출할 수 있다. 여기서 대상 키워드(21)는 타겟 키워드의 대상을 나타내는 말뭉치(코퍼스, corpus)로서, 예를 들면 노동자의 이름, 사번, 직위 중 적어도 하나를 포함할 수 있다. 조건 키워드(22, 23)는 타겟 키워드(24, 25)를 결정하는 데 필요한 조건(condition)을 나타내는 말뭉치로서, 예를 들면 타겟 키워드를 결정하는 데 필요한 시기(도 3의 이번달 말), 행위(도 3의 퇴사 행위) 등을 포함할 수 있다. 타겟 키워드(24, 25)는, 질의어(20)가 궁극적으로 요구하는 목적 정보를 나타내는 말뭉치로서, 예를 들면 퇴직금 액수(24), 연차 휴가 수당(25) 등을 포함할 수 있다.In order to solve this problem, the interactive agent according to an embodiment of the present invention receives a query word 20 from the user terminal 200, and selects a target keyword 21 and a condition keyword 22 from the received query word 20. , 23), target keywords (24, 25) can be extracted. Here, the target keyword 21 is a corpus (corpus) representing the target of the target keyword, and may include at least one of, for example, a worker's name, employee number, and position. The condition keywords (22, 23) are corpuses representing conditions required to determine the target keywords (24, 25). For example, the time required to determine the target keyword (the end of this month in Fig. 3), the action ( 3), and the like. The target keywords 24 and 25 are corpuses representing purpose information ultimately requested by the query language 20, and may include, for example, a severance pay amount 24, an annual leave allowance 25, and the like.

이때, 대화형 에이전트가 적절한 응답어(30)를 생성하기 위하여 노무 관리 제공 장치(100)는 다수의 타겟 키워드(24, 25)들 및 타겟 키워드들을 결정하는 데 필요한 타겟 키워드 결정식을 저장 장치(storage)에 미리 저장할 수 있다. 여기서 타겟 키워드 결정식은 타겟 키워드를 결정하기 위한 기준식과 정보로서, 예를 들면 퇴직금을 산출하기 위한 수식 및/또는 퇴직금을 산출하는 데 필요한 정보(예를 들어, 퇴직금을 산출하는 데 필요한 현재 임금, 재직기간 등으로서 기준 조건 키워드로 지칭될 수 있음)을 의미할 수 있다.In this case, in order for the interactive agent to generate an appropriate response word 30, the labor management providing device 100 stores a plurality of target keywords 24 and 25 and a target keyword determination formula necessary for determining the target keywords ( storage) in advance. Here, the target keyword determination formula is a standard formula and information for determining the target keyword, for example, a formula for calculating a severance pay and/or information required to calculate a severance pay (for example, the current wage required to calculate the severance pay, employment It may refer to a reference condition keyword as a period or the like).

대화형 에이전트(20)는, 미리 구축된 저장 장치에서 타겟 키워드와 대응하는 타겟 키워드 결정식을 획득하고, 타겟 키워드 결정식을 산출하는 데 필요한 기준 조건 키워드들을 획득할 수 있다. 예를 들어, 퇴직금이 타겟 키워드라고 할 경우, 퇴직금을 결정하기 위한 수식을 획득하고, 획득된 수식에 대입해야 하는 기준 조건 키워드들을 획득할 수 있다. 대화형 에이전트(20)는, 기준 조건 키워드들에 조건 키워드를 대입하여 타겟 키워드에 대한 응답어(30)을 생성할 수 있다. 예를 들어, 퇴직금을 결정하기 위한 수식과 연차휴가 수당을 결정하기 위한 수식에 조건 키워드들을 대입하여 퇴직금과 연차휴가 수당을 지시하는 응답어(30)을 생성하고, 생성된 응답어(30)를 사용자 단말(200)에 제공할 수 있다.The interactive agent 20 may obtain a target keyword determination formula corresponding to the target keyword from a pre-built storage device, and obtain reference condition keywords necessary for calculating the target keyword determination formula. For example, when the severance pay is a target keyword, a formula for determining the severance pay may be obtained, and reference condition keywords to be substituted into the obtained formula may be obtained. The interactive agent 20 may generate a response word 30 for the target keyword by substituting the condition keyword into the reference condition keywords. For example, by substituting condition keywords in the formula for determining the severance pay and the formula for determining the annual leave allowance, a response word 30 instructing the severance pay and the annual leave allowance is generated, and the generated response word 30 is used. It can be provided to the user terminal 200.

한편, 질의어(20)에서 획득한 조건 키워드가 타겟 키워드 결정식에 대입해야 하는 기준 조건 키워드들과 1:1로 대응하지 않는 경우, 저장 장치에서 대상 키워드(21)와 대응하는 고용 정보를 참조하여 추가 조건 키워드를 획득할 수 있다. On the other hand, if the conditional keyword obtained from the query language 20 does not correspond 1:1 with the reference conditional keywords to be substituted in the target keyword determination formula, the storage device refers to the employment information corresponding to the target keyword 21 Additional condition keywords can be obtained.

또한, 대화형 에이전트(20)는, 조건 키워드(22, 23) 및 추가 조건 키워드가 기준 조건 키워드들에 1:1로 대응하지 않는 경우, 질의어(20)와 고용 정보를 통해 획득되지 못한 기준 조건 키워드를 질의하는 추가 질의어를 생성할 수 있다. 예를 들어, 퇴직금을 결정하기 위한 시기가 질의어(20)에 포함되어 있지 않은 경우, '언제'퇴직(조건 키워드 중 행위 키워드와 대응)하는지를 질의하는 추가 질의어를 생성할 수 있다.In addition, the interactive agent 20, when the condition keywords 22 and 23 and the additional condition keywords do not correspond 1:1 to the reference condition keywords, the reference condition that was not obtained through the query language 20 and employment information You can create additional query words that query keywords. For example, if the timing for determining the severance pay is not included in the query language 20, an additional query word for querying whether'when' retirement (corresponds to an action keyword among condition keywords) may be generated.

이때, 대상 키워드(21), 조건 키워드(22, 23) 및 타겟 키워드(24, 25)의 동의어나 유의어의 경우 현존하는 자연어 처리 엔진들 중 하나를 이용하여 동일한 키워드로 처리할 수가 있다. 그런데, 상술한 대화형 에이전트는 대상 키워드(21), 조건 키워드(22, 23) 및 타겟 키워드(24, 25)를 질의어(20)에서 잘못 추출하거나 분류하는 경우 응답어(30)의 정확성이 상당히 떨어질 수 있다. 예를 들어, 동일한 단어라고 하더라도 표현 형태에 따라 타겟 키워드와 조건 키워드에 모두 속할 수 있기 때문에 질의어(20)에서 정확하게 대상 키워드(21), 조건 키워드(22, 23) 및 타겟 키워드(24, 25)를 추출 및 분류해야 높은 정확도로 응답어(30)을 생성할 수 있다. 이하에서는 딥러닝 네트워크를 이용하여 질의어(20)로부터 대상 키워드, 조건 키워드, 및 타겟 키워드를 추출 및 분류하는 과정을 설명한다.In this case, synonyms or synonyms of the target keyword 21, condition keywords 22, 23, and target keywords 24, 25 may be processed as the same keyword using one of existing natural language processing engines. However, in the above-described interactive agent, if the target keyword 21, condition keywords 22, 23, and target keywords 24, 25 are incorrectly extracted or classified from the query language 20, the accuracy of the response word 30 is considerably It can fall. For example, even if the word is the same, it can belong to both the target keyword and the condition keyword according to the expression type, so the target keyword (21), the condition keyword (22, 23), and the target keyword (24, 25) accurately in the query language (20). The response word 30 can be generated with high accuracy only by extracting and classifying. Hereinafter, a process of extracting and classifying a target keyword, conditional keyword, and target keyword from the query language 20 using a deep learning network will be described.

도 4는 딥러닝 네트워크를 이용하여 키워드를 추출 및 분류하기 위한 딥러닝 네트워크를 나타낸 개념도이다.4 is a conceptual diagram showing a deep learning network for extracting and classifying keywords using a deep learning network.

도 4를 참조하면, 본 발명의 일 실시예에 따른 딥러닝 네트워크는 질의어(20)에서 특징 키워드 벡터(W_vecf)를 추출하는 컨볼루셔널 네트워크(convolutional neural network, CNN) 및 컨볼루셔널 네트워크(CNN)에서 출력된 특징 키워드 벡터(W_vectf)를 대상 키워드, 조건 키워드, 및 타겟 키워드 중 하나로 분류하는 LSTM 네트워크(LSTMN)를 포함할 수 있다.4, a deep learning network according to an embodiment of the present invention includes a convolutional neural network (CNN) and a convolutional network (CNN) for extracting a feature keyword vector (W_vecf) from a query word 20. An LSTM network (LSTMN) for classifying the feature keyword vector W_vectf output from) into one of a target keyword, a condition keyword, and a target keyword may be included.

여기서 컨볼루셔널 네트워크(CNN)는 질의어(20)에 포함된 다수의 키워드들 중에서 타겟 키워드, 조건 키워드, 대상 키워드와 같이 유의미한 단어로 사용될 수 있는 특징 키워드와 대응하는 특징 키워드 벡터(W_vectf)를 추출할 수 있다. 이때, 통상적인 컨볼루셔널 네트워크는 이미지 인식을 위해 발전되어 왔기 때문에 이미지를 입력받는 것이 일반적이다. 이러한 문제를 해결하기 위해 본 발명의 일 실시예에 따른 딥러닝 네트워크는 컨볼루셔널 네트워크(CNN)의 전단에 워드-벡터 변환 계층(W2V layer)를 더 포함할 수 있다.Here, the convolutional network (CNN) extracts a feature keyword vector (W_vectf) corresponding to a feature keyword that can be used as a meaningful word such as a target keyword, condition keyword, and target keyword from among a number of keywords included in the query word 20. can do. At this time, since a conventional convolutional network has been developed for image recognition, it is common to receive an image. In order to solve this problem, the deep learning network according to an embodiment of the present invention may further include a word-vector transformation layer (W2V layer) at a front end of the convolutional network (CNN).

워드-벡터 변환 계층(W2V layer)은 질의어(20)에 포함된 단어들을 벡터로 변환할 수 있다. 예를 들어, 미리 구성된 단어 사전들에 포함된 단어들의 개수(n)에 해당하는 차원을 갖는 벡터로 질의어(20)에 포함된 단어들을 변환할 수 있다. 즉, 미리 구성된 단어 사전들에 포함된 단어들은 각각 하나의 성분이 1인 n 차원의 원-핫 벡터들과 대응되며, 질의어(20)에 포함된 단어들은 대응 관계를 기반으로 각각 대응하는 원-핫 벡터로 변환될 수 있다. 여기서 단어 사전들은 전문가 단말(300)과 사용자 단말(200) 사이의 채팅 데이터로부터 수집되어 구성될 수 있다. 따라서, 전문가 단말(300)에 의해 수행되는 노무 전문가의 채팅 데이터를 활용하기 때문에 노무 법률 서비스에 가장 적합단 단어들로 단어 사전들이 구성될 수 있다.The word-vector conversion layer (W2V layer) may convert words included in the query word 20 into vectors. For example, words included in the query word 20 may be transformed into a vector having a dimension corresponding to the number n of words included in pre-configured word dictionaries. That is, words included in the pre-configured word dictionaries correspond to n-dimensional one-hot vectors, each of which has one component of 1, and words included in the query word 20 correspond to each corresponding circle- It can be converted to a hot vector. Here, the word dictionaries may be collected and configured from chat data between the expert terminal 300 and the user terminal 200. Accordingly, since the chat data of the labor expert performed by the expert terminal 300 is used, word dictionaries can be configured with words that are most suitable for the labor legal service.

워드-벡터 변환 계층(W2V layer)는 질의어(20)에 포함된 단어들을 벡터로 변환하고, 변환된 단어 벡터들(W_vect)를 컨볼루셔널 네트워크(CNN)로 출력할 수 있다. The word-vector transformation layer (W2V layer) may convert words included in the query word 20 into vectors, and output the transformed word vectors (W_vect) to a convolutional network (CNN).

컨볼루셔널 네트워크(CNN)는, 단어 벡터들(W_vect)을 입력받아 필터(filter)와의 컨볼루션을 수행하는 컨볼루션 계층(CL) 및 컨볼루션 계층(CL)의 출력을 커널(kernel)을 이용하여 맥스 풀링(max-pooling)함으로써 특징 키워드 벡터(W_vecf)를 출력하는 풀링 계층(PL)을 포함할 수 있다.The convolutional network (CNN) receives word vectors (W_vect) and uses a kernel to output the output of the convolutional layer (CL) and the convolutional layer (CL) that perform convolution with the filter. Thus, the pooling layer PL outputting the feature keyword vector W_vecf may be included by performing max-pooling.

여기서, 컨볼루션 계층(CL)의 필터(filter)는, 미리 컨볼루셔널 네트워크(CNN)에 입력된 학습 데이터를 학습함으로써 결정될 수 있다. 예를 들어, 학습 데이터는 미리 저장 장치에 수집한 타겟 키워드, 조건 키워드, 고용 정보와 대응하는 대상 키워드를 포함할 수 있다. 따라서, 컨볼루션 계층(CL)은 타겟 키워드, 조건 키워드, 고용 정보와 대응하는 대상 키워드를 학습하여 생성된 필터와 단어 벡터들(W_vect) 사이에 대한 컨볼루션을 수행하여 단어 벡터들(W_vect)의 특징들을 추출할 수 있다.Here, the filter of the convolutional layer CL may be determined by learning training data previously input to the convolutional network CNN. For example, the learning data may include target keywords, condition keywords, and target keywords corresponding to employment information collected in the storage device in advance. Therefore, the convolutional layer CL performs convolution between the filter generated by learning the target keyword, the condition keyword, the employment information and the corresponding target keyword, and the word vectors W_vect, Features can be extracted.

풀링 계층(PL)은 컨볼루션 계층(CL)에서 출력된 특징들 중에서 가장 큰 특징을 추출할 수 있다. 이때, 풀링 계층(PL)은 이미지 처리를 수행하는 경우와 달리 1차원의 커널을 사용하여 1차원 맥스 풀링(maxpooling)을 수행하고, LSTM 계층의 입력 차원에 맞도록 패딩(padding)을 수행할 수 있다. 패딩은 LSTM에 입력되는 차원에 상응하도록 나머지 차원들에 0을 추가하는 과정일 수 있다. The pooling layer PL may extract the largest feature among features output from the convolutional layer CL. At this time, unlike the case of performing image processing, the pooling layer (PL) may perform 1D maxpooling using a 1D kernel and padding to fit the input dimension of the LSTM layer. have. Padding may be a process of adding 0 to the remaining dimensions to correspond to the dimension input to the LSTM.

특징 키워드 벡터(W_vecf)가 컨볼루셔널 네트워크(CNN)로부터 출력되면, 출력된 특징 키워드 벡터(W_vectf)는 LSTM 네트워크(LSTMN)를 이용하여 타겟 키워드, 조건 키워드, 대상 키워드 중 하나로 분류할 수 있다. When the feature keyword vector W_vecf is output from the convolutional network (CNN), the output feature keyword vector W_vectf may be classified into one of a target keyword, a condition keyword, and a target keyword using the LSTM network (LSTMN).

LSTM 네트워크(LSTMN)는 RNN 계열의 인공 신경망인 LSTM(Long-short Term Memory)이 적어도 2개 포함되고, 상기 LSTM의 입력과 출력이 서로 의존 관계(dependency)를 유지하도록 구성될 수 있다. 예를 들어, LSTM 네트워크(LSTMN)는 2개의 LSTM을 포함하고, 2개의 LSTM들 각각의 출력은 다시 피드백 입력되도록 구성될 수 있다. LSTM의 구성은 Sepp Hochreiter; Jurgen Schmidhuber (1997). "Long short-term memory". Neural Computation. 9 (8): 1735-1780.를 참조할 수 있으며, 그 밖에도 인공신경망 기술분야에서 널리 접할 수 있으므로 자세한 설명은 생략한다.The LSTM network (LSTMN) includes at least two long-short term memory (LSTM), which is an artificial neural network of an RNN series, and may be configured such that the input and output of the LSTM maintain a dependency relationship with each other. For example, the LSTM network LSTMN may include two LSTMs, and an output of each of the two LSTMs may be configured to be fed back. The composition of LSTM is Sepp Hochreiter; Jurgen Schmidhuber (1997). "Long short-term memory". Neural Computation. 9 (8): 1735-1780. may be referred to, and a detailed description thereof will be omitted since it can be widely accessed in the field of artificial neural network technology.

한편, 2개의 LSTM 중 마지막 LSTM의 출력으로 얻어지는 은닉 벡터(hidden vector, h)는 완전 연결층(fully-connected layer, FCL)으로 입력될 수 있다. 완전 연결층(FCL)은, 은닉 벡터를 타겟 키워드, 조건 키워드, 대상 키워드 각각에 대응하는 출력 벡터(각 출력 벡터는 각 키워드에 대한 확률을 지시할 수 있음)로 표현하여 활성화 계층(AL)으로 출력할 수 있다. 활성화 계층(AL)은 활성화 함수를 이용하여 출력 벡터를 0과 1 사이의 값으로 정규화하여 출력할 수 있다. 예를 들어, 활성화 함수는 소프트맥스(softmax) 함수를 포함할 수 있다. 따라서, 활성화 계층(AL)의 출력 중 가장 큰 값에 대응하는 키워드(타겟 키워드, 조건 키워드, 대상 키워드 중 하나)를 통해 질의어에 포함된 단어들에서 타겟 키워드, 조건 키워드, 대상 키워드를 분류할 수 있다.Meanwhile, a hidden vector (h) obtained as an output of the last LSTM among the two LSTMs may be input as a fully-connected layer (FCL). The fully connected layer (FCL) expresses the hidden vector as an output vector corresponding to each of a target keyword, a condition keyword, and a target keyword (each output vector can indicate a probability for each keyword) as an activation layer (AL). Can be printed. The activation layer AL may normalize the output vector to a value between 0 and 1 using an activation function, and then output it. For example, the activation function may include a softmax function. Therefore, it is possible to classify the target keyword, condition keyword, and target keyword from words included in the query word through the keyword (one of the target keyword, condition keyword, and target keyword) corresponding to the largest value among the output of the activation layer (AL). have.

상술한 것처럼, 본 발명의 일 실시예에 따른 딥러닝 네트워크는 컨볼루셔널 네트워크(CNN)와 LSTM 네트워크(LSTMN)를 함께 이용하여 질의어로부터 타겟 키워드, 조건 키워드, 대상 키워드를 추출 및 분류하기 때문에 높은 정확도로 응답어(30)를 생성할 수가 있다.As described above, the deep learning network according to an embodiment of the present invention uses a convolutional network (CNN) and an LSTM network (LSTMN) together to extract and classify target keywords, condition keywords, and target keywords from query words. The response word 30 can be generated with accuracy.

도 5는 도 1에 따른 노무 관리 제공 장치에서 구인 고용 정보와 구직 고용 정보를 서로 매칭하는 방법을 설명하기 위한 흐름도이다.FIG. 5 is a flowchart illustrating a method of matching the job search employment information and the job search employment information in the apparatus for providing labor management according to FIG. 1.

도 5를 참조하면, 노무 관리 제공 장치(100)는 먼저 근로자 단말(220)에서 수신한 희망 고용 정보를 기초로 구인 리스트를 전처리할 수 있다(S100). 여기서 구인 리스트는 구인 고용 정보를 제공한 고용자들에 대한 리스트일 수 있다. 구체적으로, 전처리하는 단계(S100)는, 구인 리스트에 따른 구인 고용 정보들에 포함된 업종 코드들을 필터링하여 희망 고용 정보에 포함된 업종 코드와 동일하거나 유사한 업종 코드를 갖는 구인 고용 정보들을 획득할 수 있다. Referring to FIG. 5, the apparatus 100 for providing labor management may first pre-process a job listing based on the desired employment information received from the worker terminal 220 (S100). Here, the job listing may be a list of employees who have provided job posting information. Specifically, the step of pre-processing (S100), by filtering the industry code included in the job offer employment information according to the job listing, it is possible to obtain the job offer employment information having the same or similar industry code as the industry code included in the desired employment information. have.

또한, 전처리하는 단계(S100)는 구인 리스트에 따른 구인 고용 정보들에 포함된 근무 지역들과 희망 고용 정보에 포함된 희망 근무 지역 사이의 거리를 산출하고, 산출된 거리(또는 거리에 상응하는 도달 시간)가 임계값 이하인 구인 고용 정보들을 획득할 수 있다.In addition, the pre-processing step (S100) calculates the distance between the working areas included in the job offer information according to the job list and the desired working area included in the desired employment information, and the calculated distance (or reach corresponding to the distance) It is possible to obtain job information and employment information whose time) is below a threshold.

전처리가 완료되면, 전처리된 구인 리스트에 포함된 구인 고용 정보들을 희망 고용 정보와 비교하여 유사도를 산출할 수 있다(S110).When the pre-processing is completed, the degree of similarity may be calculated by comparing the job information and the desired employment information included in the pre-processed job list (S110).

유사도를 산출하는 단계(S110)는, 구인 고용 정보와 희망 고용 정보 사이의 속성(attribute)을 기초로 유사도를 산출할 수 있다. 여기서 속성은 범주형과 수치형을 포함할 수 있다. 예를 들어, 구인 고용 정보 또는 희망 고용 정보에 포함된 고용 형태, 근무 조건은 동일한 범주에 속하는지에 따라 결정될 수 있도록 범주형일 수 있다. 또한, 구인 고용 정보 또는 희망 고용 정보에 포함된 임금, 근무 시간은 수치형일 수 있다.In the step of calculating the similarity (S110), the similarity may be calculated based on an attribute between the job offer information and the desired employment information. Here, attributes can include categorical and numeric types. For example, the employment type and working conditions included in the job offer information or the desired employment information may be categorical so that they can be determined according to whether they belong to the same category. In addition, wages and working hours included in the job offer information or the desired employment information may be numerical.

예를 들어, 유사도를 산출하는 단계(S110)는 다음의 수학식 1에 따른 유사도를 산출할 수 있다.For example, the step of calculating the similarity (S110) may calculate the similarity according to Equation 1 below.

Figure 112020053666978-pat00001
Figure 112020053666978-pat00001

수학식 1을 참조하면, i번째 구인 고용 정보와 j번째 희망 고용 정보 사이의 유사도(Sij)는 각 속성 사이의 유사도(sijm)와 가중치(wijm) 사이의 곱을 모든 속성들(1 이상 p 이하의 개수를 갖는 속성, m으로 표시)에 대하여 산출하고, 산출된 값을 모든 속성들에 대한 가중치(wijm)의 합으로 나눈 값일 수 있다.Referring to Equation 1, the similarity (S ij ) between the i-th job offer information and the j-th desired employment information is the product of the similarity (s ijm ) and weight (w ijm ) between the properties of all properties (1 or more It may be a value calculated for an attribute having a number of p or less, expressed as m ), and dividing the calculated value by the sum of weights w ijm for all attributes.

수학식 1에서, 가중치(wijm)는 구인 고용 정보와 희망 고용 정보 사이에 동일한 속성이 있는 경우 1이고, 없는 경우 0 일 수 있다. 수학식 1에서, 속성 사이의 유사도(sijm)는, 범주형과 수치형에 따라 달리 결정될 수 있다.In Equation 1, the weight w ijm may be 1 when there is the same attribute between the job offer information and the desired employment information, and may be 0 when there is no. In Equation 1, the degree of similarity (s ijm ) between attributes may be determined differently according to a categorical type and a numerical type.

범주형에 따른 속성 사이의 유사도(sijm)는 비교하고자 하는 2개의 속성이 서로 동일한 범주에 속하면 1이고, 속하지 않으면 0일 수 있다. 예를 들어, 구인 고용 정보와 희망 고용 정보의 고용 형태나 근무 조건이 동일하면 1이고 동일하지 않으면 0일 수 있다.The similarity (s ijm ) between attributes according to the categorical type may be 1 if the two attributes to be compared belong to the same category, and may be 0 if they do not. For example, if the employment type or working conditions of the job offer information and the desired employment information are the same, it may be 1, and if not, it may be 0.

수치형에 따른 속성 사이의 유사도(sijm)는 다음의 수학식 2와 같이 결정될 수 있다.The degree of similarity (sijm) between attributes according to the numeric type may be determined as in Equation 2 below.

Figure 112020053666978-pat00002
Figure 112020053666978-pat00002

수학식 2를 참조하면, 수치형에 따른 속성 사이의 유사도(sijm)는 구인 고용 정보의 속성값(xim)과 희망 고용 정보의 속성값(xjm) 사이의 거리를 모든 구인 고용 정보들의 해당 속성값에 대한 최대값과 최소값 사이의 차분값으로 나누고, 나눈 값을 1에서 뺀 값일 수 있다.Referring to Equation 2, the similarity between the attributes according to the numerical type (s ijm ) is the distance between the attribute value (x im ) of the job offer information and the attribute value (x jm ) of the desired employment information. It may be a value that is divided by a difference value between the maximum value and the minimum value for the corresponding attribute value, and subtracted from 1 the divided value.

상술한 수학식 1과 2에 따라 유사도를 산출하는 경우, 구인 고용 정보 또는 희망 고용 정보에 포함되는 각 속성이 수치인 경우이든 수치가 아닌 경우이든 관계없이 유사도를 결정할 수 있는 장점이 있다.When calculating the similarity according to Equations 1 and 2 described above, there is an advantage of being able to determine the degree of similarity regardless of whether each attribute included in the job offer information or the desired employment information is a numerical value or not.

유사도를 산출하는 단계(S110) 이후에, 유사도가 가장 높은 순서로, 적어도 하나의 구인 고용 정보를 선택할 수 있다(S120). 다음으로, 선택된 적어도 하나의 구인 고용 정보를 근로자 단말에 제공할 수 있다(S130). After the step of calculating the similarity (S110), at least one job offer information may be selected in the order of the highest similarity (S120). Next, it is possible to provide at least one selected employment information to the worker terminal (S130).

도 6은 도 1에 따른 노무 관리 제공 장치의 하드웨어 구성을 예시적으로 나타낸 블록도이다.6 is a block diagram illustrating an exemplary hardware configuration of the apparatus for providing labor management according to FIG. 1.

도 6을 참조하면, 노무 관리 제공 장치(100)는, 적어도 하나의 프로세서(110); 및 상기 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함할 수 있다.Referring to FIG. 6, the apparatus 100 for providing labor management includes at least one processor 110; And a memory for storing instructions instructing the at least one processor to perform at least one step.

여기서 적어도 하나의 프로세서(110)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(120) 및 저장 장치(160) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중에서 적어도 하나로 구성될 수 있다.Here, the at least one processor 110 means a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor in which the methods according to the embodiments of the present invention are performed. I can. Each of the memory 120 and the storage device 160 may be configured with at least one of a volatile storage medium and a nonvolatile storage medium. For example, the memory 120 may be formed of at least one of read only memory (ROM) and random access memory (RAM).

또한, 노무 관리 제공 장치(100)는, 무선 네트워크를 통해 통신을 수행하는 송수신 장치(transceiver)(130)를 포함할 수 있다. 또한, 노무 관리 제공 장치(100)는 입력 인터페이스 장치(140), 출력 인터페이스 장치(150), 저장 장치(160) 등을 더 포함할 수 있다. 노무 관리 제공 장치(100)에 포함된 각각의 구성 요소들은 버스(bus)(170)에 의해 연결되어 서로 통신을 수행할 수 있다.In addition, the labor management providing apparatus 100 may include a transceiver 130 performing communication through a wireless network. In addition, the labor management providing device 100 may further include an input interface device 140, an output interface device 150, and a storage device 160. Each of the components included in the labor management providing apparatus 100 may be connected by a bus 170 to perform communication with each other.

상기 적어도 하나의 단계는, 사용자 단말로부터 상담 요청 메시지를 수신하는 단계; 상기 상담 요청 메시지에 대한 응답으로 대화형 에이전트를 구동하는 단계; 상기 사용자 단말로부터 질의어를 수신하는 단계; 상기 대화형 에이전트를 이용하여 딥러닝 네트워크를 기초로 상기 질의어로부터 키워드를 추출하는 단계; 추출된 키워드를 대상 키워드, 조건 키워드, 타겟 키워드 중 적어도 하나로 분류하는 단계; 분류 결과에 기초하여 상기 타겟 키워드에 대한 응답어를 생성하는 단계; 및 상기 응답어를 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.The at least one step may include receiving a consultation request message from a user terminal; Driving an interactive agent in response to the consultation request message; Receiving a query word from the user terminal; Extracting a keyword from the query language based on a deep learning network using the interactive agent; Classifying the extracted keyword into at least one of a target keyword, a condition keyword, and a target keyword; Generating a response word for the target keyword based on the classification result; And transmitting the response word to the user terminal.

상기 대상 키워드는, 상기 타겟 키워드의 대상을 나타내는 말뭉치를 포함할 수 있다.The target keyword may include a corpus indicating the target of the target keyword.

상기 조건 키워드는, 상기 타겟 키워드를 결정하는데 필요한 조건(condition)을 나타내는 말뭉치를 포함할 수 있다.The condition keyword may include a corpus indicating a condition required to determine the target keyword.

상기 타겟 키워드는, 상기 질의어가 요구하는 목적 정보를 나타내는 말뭉치를 포함할 수 있다.The target keyword may include a corpus indicating target information requested by the query word.

상기 적어도 하나의 단계는, 상기 타겟 키워드를 결정하기 위한 타겟 키워드 결정식을 저장 장치에 미리 저장하는 단계를 더 포함할 수 있다.The at least one step may further include storing a target keyword determination formula for determining the target keyword in a storage device in advance.

상기 적어도 하나의 단계는, 상기 대화형 에이전트를 이용하여 상기 타겟 키워드와 대응하는 타겟 키워드 결정식을 획득하고, 획득된 타겟 키워드 결정식을 산출하는 데 필요한 기준 조건 키워드들을 획득하는 단계; 및 상기 기준 조건 키워드들에 상기 조건 키워드를 대입하여 상기 응답어를 생성하는 단계를 더 포함할 수 있다.The at least one step may include obtaining a target keyword determination formula corresponding to the target keyword by using the interactive agent, and obtaining reference condition keywords necessary for calculating the obtained target keyword determination formula; And generating the response word by substituting the condition keyword into the reference condition keywords.

상기 적어도 하나의 단계는, 상기 기준 조건 키워드들을 획득하는 단계 이후에, 상기 조건 키워드가 상기 기준 조건 키워드들과 1:1로 대응하지 않는 경우, 상기 대상 키워드와 대응하는 고용 정보로부터 추가 조건 키워드를 획득하는 단계를 더 포함할 수 있다.In the at least one step, after the step of acquiring the reference condition keywords, when the condition keyword does not correspond 1:1 with the reference condition keywords, an additional condition keyword is provided from employment information corresponding to the target keyword. It may further include the step of obtaining.

상기 고용 정보는, 업종 코드, 고용 형태, 임금, 근무 지역, 근무 조건, 근무 시간 중 적어도 하나를 포함할 수 있다.The employment information may include at least one of an industry code, employment type, wage, work area, working condition, and working hours.

상기 딥러닝 네트워크는, 상기 질의어에서 특징 키워드 벡터를 추출하는 컨볼루셔널 네트워크; 및 상기 특징 키워드 벡터를 상기 대상 키워드, 상기 조건 키워드 및 상기 타겟 키워드 중 하나로 분류하는 LSTM 네트워크를 포함할 수 있다.The deep learning network may include a convolutional network for extracting a feature keyword vector from the query term; And an LSTM network that classifies the feature keyword vector into one of the target keyword, the condition keyword, and the target keyword.

상기 적어도 하나의 단계는, 상기 사용자 단말로부터 구인 고용 정보와 희망 고용 정보를 수집하는 단계; 상기 구인 고용 정보를 수집하여 획득된 구인 리스트에서 상기 희망 고용 정보와 대응하는 구인 고용 정보를 선택하는 단계; 및 선택된 구인 고용 정보를 상기 사용자 단말에 제공하는 단계를 포함할 수 있다.The at least one step may include: collecting job information and desired employment information from the user terminal; Selecting a job offer information corresponding to the desired employment information from a job list obtained by collecting the job offer information; And providing the selected job offer employment information to the user terminal.

그 밖에도 도 6에 따른 노무 관리 제공 장치(100)는 도 1 내지 도 5를 참조하여 설명한 동작이나 구성을 더 포함할 수 있다.In addition, the labor management providing apparatus 100 according to FIG. 6 may further include the operation or configuration described with reference to FIGS. 1 to 5.

본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The methods according to the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the computer-readable medium may be specially designed and configured for the present invention, or may be known and usable to those skilled in computer software.

컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer-readable media may include hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions may include high-level language codes that can be executed by a computer using an interpreter or the like, as well as machine language codes such as those produced by a compiler. The above-described hardware device may be configured to operate as at least one software module to perform the operation of the present invention, and vice versa.

또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다. In addition, the above-described method or apparatus may be implemented by combining all or part of its configuration or function, or may be implemented separately.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to preferred embodiments of the present invention, those skilled in the art will variously modify and change the present invention within the scope not departing from the spirit and scope of the present invention described in the following claims. You will understand that you can do it.

100: 노무 관리 제공 장치 110: 프로세서
120: 메모리 130: 송수신 장치
140: 입력 인터페이스 장치 150: 출력 인터페이스 장치
160: 저장 장치 200: 사용자 단말
210: 고용자 단말 220: 근로자 단말
20: 질의어 21: 대상 키워드
22, 23: 조건 키워드 24, 25: 타겟 키워드
30: 응답어 CNN: 컨볼루셔널 네트워크
LSTMN: LSTM 네트워크
100: labor management providing device 110: processor
120: memory 130: transmitting and receiving device
140: input interface device 150: output interface device
160: storage device 200: user terminal
210: employee terminal 220: worker terminal
20: query language 21: target keyword
22, 23: condition keyword 24, 25: target keyword
30: Response Word CNN: Convolutional Network
LSTMN: LSTM network

Claims (5)

적어도 하나의 프로세서(processor); 및
상기 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함하는, 노무 관리 제공 장치로서,
상기 적어도 하나의 프로세서는,
고용인 단말로부터 상담 요청 메시지를 수신하고,
상기 상담 요청 메시지에 대한 응답으로 대화형 에이전트를 구동하되, 상기 대화형 에이전트는 상기 메모리에 미리 저장된 적어도 하나의 제1 대상 키워드, 적어도 하나의 제1 조건 키워드 및 적어도 하나의 제1 타겟 키워드를 학습 데이터로써 이용하여 학습된 LSTM(Long-short Term Memory) 기반의 인공 신경망을 이용하고,
상기 고용인 단말로부터 질의어를 수신하고,
상기 학습된 인공 신경망에 상기 질의어를 입력하여 상기 학습된 인공 신경망으로부터 추출되는 제2 대상 키워드, 제2 조건 키워드 및 제2 타겟 키워드를 획득하되, 상기 적어도 하나의 제1 타겟 키워드와 상기 제2 타겟 키워드는 특정 피고용인을 나타내는 내용을 포함하고, 상기 적어도 하나의 제1 타겟 키워드와 상기 제2 타겟 키워드는 상기 질의어가 문의하는 퇴직금 액수 또는 연차 휴가 수당 중 적어도 어느 하나를 포함하고, 상기 적어도 하나의 제1 조건 키워드와 제2 조건 키워드는 상기 퇴직금 액수 또는 상기 연차 휴가 수당을 결정하는데 기준이 되는 시기를 나타내는 내용을 포함하고,
상기 제2 대상 키워드, 상기 제2 조건 키워드 및 상기 제2 타겟 키워드에 기초하여 상기 제2 타겟 키워드에 대한 응답어를 생성하고,
상기 응답어를 상기 고용인 단말에게 전송하고,
상기 적어도 하나의 프로세서는,
복수의 구인 고용 정보를, 상기 고용인 단말을 포함하는 복수의 제1 사용자 단말로부터 수신하고, 상기 복수의 구인 고용 정보 각각의 속성을 범주형 또는 수치형으로 구분하고,
복수의 희망 고용 정보를, 근로자 단말을 포함하는 복수의 제2 사용자 단말로부터 수신하고, 상기 복수의 희망 고용 정보 각각의 속성을 범주형 또는 수치형으로 구분하고,
상기 범주형은 고용 형태 또는 근무 조건 중 적어도 어느 하나에 상응하고, 상기 수치형은 임금 또는 근무 시간 중 적어도 어느 하나에 상응하고,
[수학식 1]
Figure 112020113980222-pat00009

[수학식 2]
Figure 112020113980222-pat00010

수학식 1에 기반하여 i번째 구인 고용 정보와 j번째 희망 고용 정보 사이의 제1 유사도(Sij)를 산출하되, wijm은 m번째 속성이 i번째 구인 고용 정보와 j번째 희망 고용 정보에 모두 포함되는 경우에는 1로 설정하고, 아닌 경우에는 0으로 설정하며, p는 i번째 구인 고용 정보와 j번째 희망 고용 정보 각각에 포함되는 속성의 개수 중 최대값에 상응하고,
제2 유사도(Sijm)는,
상기 m번째 속성이 상기 범주형인 경우, 상기 고용 형태 또는 상기 근무 조건이 동일한 경우에는 1로 설정되며, 상이한 경우에는 0으로 설정되고,
상기 m번째 속성이 상기 수치형인 경우, 수학식 2와 i번째 구인 고용 정보의 속성 수치값(xim)과 j번째 희망 고용 정보의 속성 수치값(xjm)에 기반하여 산출되고, max(xm)는 상기 복수의 구인 고용 정보와 상기 복수의 희망 고용 정보에 포함되는 상기 m번째 속성 중에서 최대값에 상응하고, min(xm)은 상기 복수의 구인 고용 정보와 상기 복수의 희망 고용 정보에 포함되는 상기 m번째 속성 중에서 최소값에 상응하고,
상기 적어도 하나의 프로세서는,
상기 제1 유사도가 가장 높은 순서로, 상기 복수의 구인 고용 정보 중에서 적어도 하나의 구인 고용 정보를 선택하고,
상기 선택된 적어도 하나의 구인 고용 정보를 상기 근로자 단말에게 전달하는,
노무 관리 제공 장치.
At least one processor; And
As a labor management providing apparatus comprising a memory (memory) for storing instructions (instructions) instructing the at least one processor to perform at least one step,
The at least one processor,
Receiving a consultation request message from the employee terminal,
Driving an interactive agent in response to the consultation request message, wherein the interactive agent learns at least one first target keyword, at least one first condition keyword, and at least one first target keyword previously stored in the memory Using an artificial neural network based on LSTM (Long-Short Term Memory) learned using as data,
Receive a query word from the employee terminal,
Obtaining a second target keyword, a second condition keyword, and a second target keyword extracted from the learned artificial neural network by inputting the query word into the learned artificial neural network, wherein the at least one first target keyword and the second target The keyword includes content indicating a specific employee, and the at least one first target keyword and the second target keyword include at least one of a severance pay amount or an annual leave allowance to be inquired by the query word, and the at least one target keyword The first condition keyword and the second condition keyword include content indicating a time period as a standard for determining the amount of the severance pay or the annual leave allowance,
Generating a response word for the second target keyword based on the second target keyword, the second condition keyword, and the second target keyword,
Transmit the response word to the employee terminal,
The at least one processor,
Receiving a plurality of job offer employment information from a plurality of first user terminals including the employee terminal, and classifying the attributes of each of the plurality of job offer employment information into a categorical or numerical type,
Receiving a plurality of desired employment information from a plurality of second user terminals including a worker terminal, and classifying the attributes of each of the plurality of desired employment information into a categorical or numerical type,
The categorical type corresponds to at least one of an employment type or working condition, and the numerical type corresponds to at least one of wages or working hours,
[Equation 1]
Figure 112020113980222-pat00009

[Equation 2]
Figure 112020113980222-pat00010

Calculate the first similarity (S ij ) between the i-th job offer information and the j-th desired employment information based on Equation 1, but w ijm is the m-th attribute in both the i-th job information and the j-th desired employment information. If it is included, it is set to 1, and if not, it is set to 0, and p corresponds to the maximum value of the number of attributes included in each of the i-th job offer information and the j-th desired employment information,
The second degree of similarity (S ijm ) is,
When the m-th attribute is the categorical type, it is set to 1 when the employment type or the working condition is the same, and is set to 0 when it is different,
When the m-th attribute is the numerical type, it is calculated based on Equation 2 and the attribute numerical value (x im ) of the i-th job offer information and the attribute numerical value (x jm ) of the j-th desired employment information, and max(x m ) corresponds to the maximum value of the m-th attribute included in the plurality of job offer information and the plurality of desired employment information, and min(x m ) is the plurality of job information and the plurality of desired employment information It corresponds to the minimum value among the m-th attributes included,
The at least one processor,
In the order of the first degree of similarity highest, selecting at least one job offer information from among the plurality of job offer information,
Delivering the selected at least one job offer employment information to the worker terminal,
Labor management provision device.
삭제delete 삭제delete 삭제delete 삭제delete
KR1020200063707A 2020-05-27 2020-05-27 Method and apparatus for providing labor management based on deep learning network KR102201650B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200063707A KR102201650B1 (en) 2020-05-27 2020-05-27 Method and apparatus for providing labor management based on deep learning network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200063707A KR102201650B1 (en) 2020-05-27 2020-05-27 Method and apparatus for providing labor management based on deep learning network

Publications (1)

Publication Number Publication Date
KR102201650B1 true KR102201650B1 (en) 2021-01-12

Family

ID=74129660

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200063707A KR102201650B1 (en) 2020-05-27 2020-05-27 Method and apparatus for providing labor management based on deep learning network

Country Status (1)

Country Link
KR (1) KR102201650B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102418004B1 (en) 2021-12-21 2022-07-06 노무법인 더원인사노무컨설팅 Method, device and system for self diagnosis labor risk based on artificial intelligence
KR20230121519A (en) 2022-02-11 2023-08-18 주식회사 케이블러썸 Labor management system and method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020007106A (en) 2000-07-13 2002-01-26 박세호 Regional Charge Service System by Integration Expert and Thereof The Method
KR20100073793A (en) 2008-12-23 2010-07-01 주식회사 케이티 Apparatus and method for knowledge structuralization using collective intelligence, and method for providing knowledge service using it
KR20110112041A (en) 2010-04-06 2011-10-12 기민호 Total labor management system
KR101858206B1 (en) * 2017-12-07 2018-05-15 디비손해보험 주식회사 Method for providing conversational administration service of chatbot based on artificial intelligence

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020007106A (en) 2000-07-13 2002-01-26 박세호 Regional Charge Service System by Integration Expert and Thereof The Method
KR20100073793A (en) 2008-12-23 2010-07-01 주식회사 케이티 Apparatus and method for knowledge structuralization using collective intelligence, and method for providing knowledge service using it
KR20110112041A (en) 2010-04-06 2011-10-12 기민호 Total labor management system
KR101858206B1 (en) * 2017-12-07 2018-05-15 디비손해보험 주식회사 Method for providing conversational administration service of chatbot based on artificial intelligence

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102418004B1 (en) 2021-12-21 2022-07-06 노무법인 더원인사노무컨설팅 Method, device and system for self diagnosis labor risk based on artificial intelligence
KR20230121519A (en) 2022-02-11 2023-08-18 주식회사 케이블러썸 Labor management system and method

Similar Documents

Publication Publication Date Title
Kazak et al. Artificial intelligence in the tourism sphere
CN107958317B (en) Method and device for selecting crowdsourcing participants in crowdsourcing project
US9990609B2 (en) Evaluating service providers using a social network
US10402913B2 (en) Generation of personalized and hybrid responses to queries submitted from within tax return preparation system during preparation of electronic tax return
CN107851097B (en) Data analysis system, data analysis method, data analysis program, and storage medium
AU2018271296A1 (en) Methods systems and articles of manufacture for using a predictive model to determine tax topics which are relevant to a taxpayer in preparing an electronic tax return
US10832347B1 (en) Methods and systems for smart claim routing and smart claim assignment
US20160132830A1 (en) Multi-level score based title engine
KR101914620B1 (en) Automatic journalizing method using big data and machine learning and implementing server
KR102201650B1 (en) Method and apparatus for providing labor management based on deep learning network
US11675750B2 (en) User generated tag collection system and method
US20210383261A1 (en) Machine learning systems for collaboration prediction and methods for using same
CN111737546A (en) Method and device for determining entity service attribute
Abrahams et al. Audience targeting by B-to-B advertisement classification: A neural network approach
CN112633690A (en) Service personnel information distribution method, service personnel information distribution device, computer equipment and storage medium
US20230034820A1 (en) Systems and methods for managing, distributing and deploying a recursive decisioning system based on continuously updating machine learning models
CN113112282A (en) Method, device, equipment and medium for processing consult problem based on client portrait
US20230120206A1 (en) Enrichment pipeline for machine learning
US11698811B1 (en) Machine learning-based systems and methods for predicting a digital activity and automatically executing digital activity-accelerating actions
Zhang Measuring algorithmic bias in job recommender systems: An audit study approach
US11379430B2 (en) File management systems and methods
CN113946649A (en) Providing method of mediation plan, training method, related device and storage medium
US20220076139A1 (en) Multi-model analytics engine for analyzing reports
US20220309578A1 (en) System and method for autonomously generating service proposal response
US20240127912A1 (en) Systems and methods for generating customizable digital data structures

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant