KR102309026B1 - Blockchain based Machine learning training model trading method without trust - Google Patents
Blockchain based Machine learning training model trading method without trust Download PDFInfo
- Publication number
- KR102309026B1 KR102309026B1 KR1020190156371A KR20190156371A KR102309026B1 KR 102309026 B1 KR102309026 B1 KR 102309026B1 KR 1020190156371 A KR1020190156371 A KR 1020190156371A KR 20190156371 A KR20190156371 A KR 20190156371A KR 102309026 B1 KR102309026 B1 KR 102309026B1
- Authority
- KR
- South Korea
- Prior art keywords
- model
- mlc
- machine learning
- learning model
- mlsp
- Prior art date
Links
Images
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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/08—Auctions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0613—Third-party assisted
- G06Q30/0619—Neutral agent
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Entrepreneurship & Innovation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템가 개시되어 있다. 본 발명은, 기계학습 모델 개발을 요청하는 클라이언트이며 웹 서버에 학습 데이터를 등록하고, 학습 모델 개발이 끝나면 블록체인에서 학습 모델을 다운로드하여 정확도를 검증하고 비용을 지불하는 주체이며 블록체인 및 웹서버와 연동하는 웹 어플리케이션 로직을 포함하는 기계학습 클라이언트(MLC); 기계학습 모델 개발을 수행하는 주체이며, MLC가 웹 서버에 학습데이터를 등록하면 다운로드하여 학습 모델을 개발하고, 개발이 끝나면 블록체인에 학습 모델을 등록하고 개발비용을 지불 받는 주체이며, 블록체인 등과 연동하는 웹 어플리케이션 로직을 포함하는 기계학습 모델개발자(MLSP); 한번 등록하면 변조할 수 없고 기록이 영구적으로 지속되는 분산 원장 기술이며, MLC와 MLSP가 모델을 등록하고, 토큰을 관리하고, 평판을 관리할 수 있는 스마트 컨트랙트 로직을 포함하는 블록체인; 및 상기 기계학습 클라이언트가 암호화된 학습데이터를 등록하는 웹서버이며 업로드 및 다운로드의 기능을 수행하는 데이터베이스 로직을 포함하는 웹서버;를 포함하는 것을 특징으로 한다.A blockchain-based machine learning learning model trustless transaction system is disclosed. The present invention is a client requesting machine learning model development, registering learning data in the web server, downloading the learning model from the block chain when the learning model development is finished, verifying the accuracy and paying the cost, and is a block chain and web server A machine learning client (MLC) including a web application logic that interoperates with; It is the entity that develops the machine learning model, and when the MLC registers the learning data on the web server, it downloads and develops the learning model. Machine learning model developer (MLSP) including interworking web application logic; It is a distributed ledger technology that cannot be tampered with once registered and records are permanently persistent, blockchain containing smart contract logic that allows MLC and MLSP to register models, manage tokens, and manage reputation; and a web server in which the machine learning client registers encrypted learning data, and a web server including database logic performing upload and download functions.
Description
본 발명은 머신러닝 학습 모델을 거래하는 방법에 관한 것으로, 더욱 상세하게는 서로 신뢰하지 않는 클라이언트와 머신러닝 모델 개발자가 블록체인(Blockchain) 기반 웹 어플리케이션을 이용하여 서로 손해보지 않고 기계학습 모델의 거래를 수행할 수 있도록 한 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템 및 거래 방법에 관한 것이다.The present invention relates to a method of transacting a machine learning learning model, and more particularly, a client and a machine learning model developer who do not trust each other using a blockchain-based web application to trade a machine learning model without harming each other. It is about a trustless-based transaction system and transaction method, a blockchain-based machine learning learning model that can perform
종래의 기술로 딥러닝 학습모델을 거래하고자 한다면, 학습모델 요청자인 클라이언트는 학습 모델의 정확도를 확인하여야만 모델 개발 비용을 지불할 것이다. 그러나 학습 모델은 학습모델 개발자의 중요한 자산인데도 불구하고, 비용을 지불 받기 전에 학습 모델을 공개하는 결과를 초래하게 된다. 학습모델을 공개하지 않고 테스트 데이터의 성능을 측정하고자 한다면 클라이언트는 테스트 데이터의 정답 레이블을 학습모델 개발자에게 공개하여야 한다. 이 경우에는, 테스트 데이터의 정답을 공개하고 얻은 학습 모델의 정확도에 신뢰가 떨어진다. If a deep learning learning model is to be traded in the prior art, the client, who is the requester of the learning model, will pay the model development cost only after confirming the accuracy of the learning model. However, although the learning model is an important asset of the learning model developer, it results in the disclosure of the learning model before payment is received. If the client wants to measure the performance of the test data without disclosing the learning model, the client should disclose the correct label of the test data to the learning model developer. In this case, the accuracy of the learning model obtained by disclosing the correct answer of the test data is lowered.
이러한 무신뢰 기반의 기계학습 모델을 종래의 기술로 거래한다면, 기계학습 모델 개발자의 입장에서는 학습모델 개발자가 개발한 학습모델을 모두 공개하고 원하는 정확도가 나왔음에도 불구하고 지불을 거절할 수 있고, 성능이 좋은 모델을 개발했는데도 변심으로 지불을 거절할 수 있어 손해를 볼 가능성이 있다. 또한 지불 받지 못할 뿐만 아니라 힘들게 개발한 모델을 공개해야 하는 위험을 안고 있다. 기계학습 클라이언트 입장에서는 개발한 모델의 성능을 확인하여야만 지불을 할 수 있으므로 성능을 확인하기 위한 테스트 데이터를 제공하여야 한다. 그러나 성능을 확인하기 위해서는 테스트 데이터의 정답 레이블을 함께 제공하게 되는데, 클라이언트의 정답을 공개하고 얻은 성능은 신뢰도가 떨어질 수 있으므로 클라이언트 역시 중요한 테스트 데이터의 자산을 공개해야 하는 위험을 안고 있다. 이러한 기계학습 개발자와 기계학습 클라이언트의 위험을 모두 제거하면서, 무신뢰 기반의 공정한 거래를 가능하게 하는 방법이 필요하다.If such a trustless-based machine learning model is traded with the conventional technology, the machine learning model developer can disclose all the learning models developed by the learning model developer and refuse payment even though the desired accuracy is obtained, and the performance Even after developing this good model, there is a possibility of losing money because you can refuse to pay with a change of heart. They also run the risk of not only getting paid, but also having to release the hard-developed model. As a machine learning client can pay only by checking the performance of the developed model, test data to check the performance must be provided. However, in order to check the performance, the correct answer label of the test data is provided together. Since the performance obtained by disclosing the client's correct answer may be less reliable, the client also has a risk of having to disclose the assets of the important test data. There is a need for a method that enables fair trade based on trust while removing all the risks of these machine learning developers and machine learning clients.
본 발명의 목적을 상기 문제점을 해결하기 위하여 안출된 것으로, 머신러닝 학습 모델을 거래하는 방법에 관한 것으로, 더욱 상세하게는 서로 신뢰하지 않는 클라이언트와 머신러닝 모델 개발자가 블록체인(Blockchain) 기반 웹 어플리케이션을 이용하여 서로 손해보지 않고 기계학습 모델의 거래를 수행할 수 있도록 한 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템 및 거래 방법을 제공하는 데 있다.The object of the present invention was devised to solve the above problems, and relates to a method of transacting a machine learning learning model, and more specifically, a client and a machine learning model developer who do not trust each other are a blockchain-based web application It is to provide a blockchain-based machine learning learning model trustless transaction system and transaction method that can perform machine learning model transactions without harming each other using
본 발명의 다른 목적은 기계학습 모델 개발을 의뢰한 클라이언트가 기계학습 모델 개발 서비스 제공자에게 학습데이터를 제공하고, 학습된 모델의 성능이 만족스러운 상황일 때 비용을 지불하고 학습한 모델을 구매할 수 있고, 기계학습 모델 개발자는 개발한 학습 모델의 핵심 내용을 공개하지 않으면서 성능을 테스트할 수 있는 은닉 모델을 제공하고, 개발 비용을 지불 받은 후 온전한 학습 모델을 고객에게 제시할 수 있도록 한 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템 및 거래 방법을 제공하는 데 있다.Another object of the present invention is that a client who has requested machine learning model development provides learning data to a machine learning model development service provider, and when the performance of the learned model is satisfactory, it can purchase the learned model by paying a fee, , a blockchain-based machine learning model developer that provides a hidden model that can test performance without revealing the core contents of the developed learning model, and provides a complete learning model to customers after receiving payment for development It is to provide a trustless trading system and trading method based on the machine learning learning model of
본 발명의 또 다른 목적은 기계학습 모델 개발자와 클라이언트가 서로 신뢰하지 않는 온라인 상의 어플리케이션을 통해 거래하면서 어느 한쪽이 거짓으로 진행하여도 손해보지 않는 공정한 거래를 보장하기 위한 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템 및 거래 방법을 제공하는 데 있다.Another object of the present invention is a block-chain-based machine learning learning model to ensure a fair transaction that does not lose even if either side proceeds falsely while transacting through an online application where the machine learning model developer and the client do not trust each other. It is to provide a trustless-based trading system and trading method.
상기 목적을 달성하기 위하여, 본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템은,In order to achieve the above object, the blockchain-based machine learning learning model trustless transaction system according to the present invention,
기계학습 모델 개발을 요청하는 클라이언트이며 웹 서버에 학습 데이터를 등록하고, 학습 모델 개발이 끝나면 블록체인에서 학습 모델을 다운로드하여 정확도를 검증하고 비용을 지불하는 주체이며 블록체인 및 웹서버와 연동하는 웹 어플리케이션 로직을 포함하는 기계학습 클라이언트(MLC); 기계학습 모델 개발을 수행하는 주체이며, MLC가 웹 서버에 학습데이터를 등록하면 다운로드하여 학습 모델을 개발하고, 개발이 끝나면 블록체인에 학습 모델을 등록하고 개발비용을 지불 받는 주체이며, 블록체인 등과 연동하는 웹 어플리케이션 로직을 포함하는 기계학습 모델개발자(MLSP); 한번 등록하면 변조할 수 없고 기록이 영구적으로 지속되는 분산 원장 기술이며, MLC와 MLSP가 모델을 등록하고, 토큰을 관리하고, 평판을 관리할 수 있는 스마트 컨트랙트 로직을 포함하는 블록체인; 및 상기 기계학습 클라이언트가 암호화된 학습데이터를 등록하는 웹서버이며 업로드 및 다운로드의 기능을 수행하는 데이터베이스 로직을 포함하는 웹서버;를 포함하는 것을 특징으로 한다.It is a client requesting machine learning model development, it registers learning data in the web server, downloads the learning model from the block chain when the learning model development is finished, verifies the accuracy and pays the cost. a machine learning client (MLC) containing application logic; It is the entity that develops the machine learning model, and when the MLC registers the learning data on the web server, it downloads and develops the learning model. Machine learning model developer (MLSP) including interworking web application logic; It is a distributed ledger technology that cannot be tampered with once registered and records are permanently persistent, blockchain containing smart contract logic that allows MLC and MLSP to register models, manage tokens, and manage reputation; and a web server in which the machine learning client registers encrypted learning data, and a web server including database logic performing upload and download functions.
본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법은, a) MLC가 ML(기계학습) 모델 작업을 선언하고 MLSP가 모델 작업에 동의하는 ML 모델 개발 계약 단계; b) MLSP가 동의한 모델의 개발을 선언하고 개발 후 개발된 학습 모델의 은닉 모델을 블록체인에 등록하는 ML 모델 개발 단계; c) MLC가 ML 모델 작업의 성능을 검증하고 정답 없는 테스트 데이터를 등록하면 그 데이터를 기반으로 테스트 데이터 결과를 등록하고 다시 MLC가 테스트 데이터 성능을 검증하는 ML 모델 성능 검증 단계; 및 d) MLC와 MLSP의 신뢰도를 검증하는 MLC/MLSP 신뢰 검증 단계;를 포함하는 것을 특징으로 한다.The blockchain-based machine learning model trustless transaction method according to the present invention comprises: a) an ML model development contract step in which the MLC declares ML (machine learning) model work and the MLSP agrees to the model work; b) ML model development stage, in which the MLSP declares the development of the agreed-upon model and registers the hidden model of the developed learning model in the blockchain after development; c) an ML model performance verification step in which the MLC verifies the performance of the ML model task and registers the test data without correct answers, registers the test data results based on the data, and the MLC verifies the test data performance again; and d) an MLC/MLSP trust verification step of verifying the reliability of the MLC and the MLSP.
상기 a) ML 모델 개발 계약 단계는, MLC가 ML 작업을 선언하며 작업의 조건(정확도), 훈련 모델의 해시, 벌금액수, 보증금액수 등을 스마트 컨트랙트에 등록하고 보증금을 예치하는 ML 작업 선언 단계(a-1); 및 MLSP가 ML 작업 수주에 동의하며 보증금을 예치하는 ML작업 수주 동의 단계(a-2);를 포함하고,In the above a) ML model development contract step, the MLC declares the ML work, registers the condition (accuracy) of the work, the hash of the training model, the amount of fine, the number of guarantees, etc. in the smart contract, and deposits the deposit in the ML work declaration step ( a-1); and an ML work order agreement step (a-2) in which the MLSP agrees to accept the ML work order and deposits a deposit;
상기 ML 작업 선언 단계(a-1)는, MLSP의 공개키로 암호화된 학습 데이터(ED)를 웹 서버에 등록하는 단계와, 학습 모델이 등록된 웹서버의 URL을 스마트 컨트랙트에 등록하는 단계를 포함하는 것을 특징으로 한다.The ML task declaration step (a-1) includes the steps of registering the learning data (ED) encrypted with the public key of the MLSP in the web server, and registering the URL of the web server where the learning model is registered in the smart contract. characterized in that
상기 b) ML모델 개발 단계는, MLC가 등록한 학습 데이터를 다운로드하여 ML 모델 개발을 선언하며, 이후에는 변심하여도 보증금을 회수할 수 없도록 하는 MLSP의 ML모델 개발 선언 단계(b-1); 및 학습 모델을 개발하고 개발이 완료되면 완료된 학습 모델의 은닉 입력파트와 이에 해당하는 출력 파트를 포함하는 VD와 MLC의 공개키로 암호화된 은닉모델(EM) 포함하는 은닉학습모델(TD)을 등록하는 ML 은닉모델 등록 단계;(b-2)를 포함하는 것을 특징으로 한다.The b) ML model development step includes a ML model development declaration step (b-1) of the MLSP in which the MLC downloads the registered learning data, declares the ML model development, and then makes it impossible to recover the deposit even if you change your mind; And when the learning model is developed and the development is completed, registering the hidden learning model (TD) including the hidden model (EM) encrypted with the public key of VD and MLC including the hidden input part of the completed learning model and the corresponding output part. ML hidden model registration step; (b-2) is characterized.
상기 c) ML모델 성능 검증 단계는, MLSP가 등록한 학습 모델의 성능을 MLC가 검증하고 조건에 제시한 성능(정확도)를 만족하는 경우, 다음 단계인 테스트 데이터를 통한 성능 검증을 하기 위해 정답이 없는 테스트 데이터를 MLSP의 공개키로 암호화한 데이터(UD)를 등록하는 단계인 학습 모델 성능 검증 단계(c-1); MLSP가 테스트 데이터(UD)를 다운로드하여 MLC가 테스트데이터로 성능을 검증할 수 있도록 하는 테스트 데이터의 은닉 파트에 대한 입력과 출력의 해시 값을 포함하는 테스트 결과(SD)를 등록하는 ML 테스트 결과 등록 단계(c-2); 및 테스트 데이터(SD)의 성능을 검증하는 테스트 데이터(UD) 성능 검증 및 결과의 해시 값을 구비하는 결과(UDR)을 포함하는 테스트 데이터(UD) 성능 검증 단계(c-3)를 포함하는 것을 특징으로 한다.In the c) ML model performance verification step, if the MLC verifies the performance of the learning model registered by the MLSP and satisfies the performance (accuracy) presented in the condition, there is no correct answer to verify the performance through the test data, which is the next step. Learning model performance verification step (c-1), which is a step of registering data (UD) in which the test data is encrypted with the public key of the MLSP; ML test result registration which registers the test result (SD) containing hash values of inputs and outputs for the hidden part of the test data by which the MLSP downloads the test data (UD) so that the MLC can verify the performance with the test data step (c-2); and a test data (UD) performance verification step (c-3) including a test data (UD) performance verification for verifying the performance of the test data (SD) and a result (UDR) having a hash value of the result characterized.
상기 d) MLC/MLSP 신뢰 검증 단계는, MLC가 테스트 데이터의 성능을 검증한 후 조건에 제시한 정확도가 나오지 않았을 경우 테스트 데이터의 정답을 등록하는 테스트 데이터 정답(AD) 등록 단계(d-1); MLC가 등록한 테스트 데이터의 정답을 다운로드하여 테스트 데이터의 성능이 조건에 미치지 못하는지를 검증하는 모델 성능 검증 및 조건에 만족하는 성능이 나왔는데도 테스트 데이터의 성능이 조건에 미치지 못하였다고 하는 MLC의 신뢰도를 검증하기 위해 MLC가 등록한 테스트 데이터 성능 검증 결과(UDR)과 자신이 등록한 테스트 결과인 SD의 해시를 비교하는 MLC 신뢰도 검증 단계(d-2); 및 MLC가 MLSP의 신뢰도를 검증하는 MLSP 신뢰도 검증 단계(d-3)를 포함하는 것을 특징으로 한다.In the above d) MLC/MLSP trust verification step, the test data correct answer (AD) registration step (d-1) in which the correct answer of the test data is registered when the accuracy suggested in the condition does not come out after the MLC verifies the performance of the test data ; Model performance verification that downloads the correct answer of the test data registered by MLC to verify whether the performance of the test data does not meet the condition MLC reliability verification step (d-2) of comparing the test data performance verification result (UDR) registered by the MLC to the hash of the SD, which is the test result registered by the MLC; and an MLSP reliability verification step (d-3) in which the MLC verifies the reliability of the MLSP.
본 발명에 따르면, 블록체인 기반의 머신러닝 학습 모델을 거래하는 방법으로서, 기계학습 모델 개발자(MLSP)가 자신이 개발한 소중한 자산인 모델의 내부를 공개하지 않고 성능을 확인시켜 주게 되므로, 개발 비용을 지불 받을 때까지 안전하게 자산을 보호할 수 있게 되고, 기계학습 모델 고객은 개발자가 개발한 모델의 성능을 확인한 후 비용을 지불할 수 있게 되므로 안전한 거래를 보장받게 되는 효과가 있다.According to the present invention, as a method of trading a block chain-based machine learning learning model, the machine learning model developer (MLSP) confirms the performance without disclosing the inside of the model, which is a valuable asset developed by him, so the development cost Assets can be safely protected until payment is received, and machine learning model customers can pay after checking the performance of the model developed by the developer, thereby ensuring secure transactions.
또한, 본 발명에 따르면, 기계 학습 모델 개발 능력이 있는 기계학습 제공자에게 온라인 비즈니스 기회를 통한 수익을 창출할 수 있는 기회를 제공하고, 서로 신뢰하지 않는 거래자 간 상호 이익이 되는 아웃소싱 작업의 체계를 제공하여 기계학습 분야 개발을 활성화 될 수 있고, 기계학습 기법을 실제 현장에 적용할 수 있는 기회가 늘어 온라인 비즈니스가 향후 크게 증가할 것으로 예상된다.In addition, according to the present invention, it provides an opportunity to generate revenue through online business opportunities for machine learning providers with machine learning model development ability, and provides a system of outsourcing work that is mutually beneficial between traders who do not trust each other Therefore, the development of the machine learning field can be activated, and the opportunity to apply machine learning techniques to the actual field increases, and the online business is expected to increase significantly in the future.
또한, 본 발명에 따르면, 기계학습 모델을 개발할 능력이 안 되는 사용자들에게도 기계학습 도입의 기회를 제공할 수 있게 되고, 성능 평가 위주의 안전한 아웃소싱 기법은 질적 연구를 장려하는 효과를 거둘 수 있을 것이고, 기계 학습의 발달은 지적 활동의 자동화에 대한 가능성을 열고 있다는 점에서 파급 효과가 매우 크고 광범위 하며 기계학습 모델 개발자의 수익 창출은 급격한 기계학습 기술의 실용화 및 기술 발전으로 이어지고 이는 지능형 시스템에 한발 더 다가설 수 있을 것이다.In addition, according to the present invention, it is possible to provide an opportunity to introduce machine learning to users who do not have the ability to develop machine learning models, and a safe outsourcing technique centered on performance evaluation will have the effect of encouraging qualitative research. , the development of machine learning has a very large and extensive ripple effect in that it opens the possibility for the automation of intellectual activities, and the profit generation of machine learning model developers leads to the rapid practical use of machine learning technology and technological development, which is a step forward for intelligent systems. you will be able to approach
도 1은 본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템으로서, 블록체인, 웹서버, 기계학습 클라이언트(MLC), 기계학습 모델 개발자(MLSP) 간의 구조를 설명한 도면이다.
도 2는 본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법으로서, MLC와 MLSP간의 ML 모델 작업 계약을 하고, ML모델을 개발하고, ML 모델 성능을 검증하고, MLC와 MLSP 의 신뢰를 검증할 수 단계를 포함하는 대표 단계를 보여주는 다이어그램이다.
도 3은 도 1과 도 2를 기반으로 어떤 과정을 거쳐 거래를 하는지 상세하게 설명하는 시퀀스 다이어그램이다.
도 4는 본 발명에 따라서, MLSP가 기계학습 모델의 은닉 모델의 배포 및 시험을 설명하기 위한 신경망 구조도이다.1 is a block-chain-based machine learning model trustless transaction system according to the present invention, and is a diagram illustrating the structure between a block chain, a web server, a machine learning client (MLC), and a machine learning model developer (MLSP).
Figure 2 is a block chain-based machine learning model trustless transaction method according to the present invention, making an ML model work contract between MLC and MLSP, developing an ML model, verifying ML model performance, and Diagram showing representative steps including steps to verify trust.
FIG. 3 is a sequence diagram illustrating in detail a process through which a transaction is made based on FIGS. 1 and 2 .
4 is a neural network structure diagram for explaining the distribution and testing of a hidden model of a machine learning model by an MLSP according to the present invention.
이하, 첨부된 도면을 참조하여 본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템 및 거래 방법에 대하여 상세히 설명한다.Hereinafter, a block chain-based machine learning learning model trustless transaction system and transaction method according to the present invention will be described in detail with reference to the accompanying drawings.
종래의 기술로 딥러닝 학습모델을 거래하고자 한다면, 학습모델 요청자인 클라이언트는 학습 모델의 정확도를 확인하여야만 모델 개발 비용을 지불할 것이다. 그러나 학습 모델은 학습모델 개발자의 중요한 자산인데도 불구하고, 비용을 지불 받기 전에 학습 모델을 공개하는 결과를 초래하게 된다. 학습모델을 공개하지 않고 테스트 데이터의 성능을 측정하고자 한다면 클라이언트는 테스트 데이터의 정답 레이블을 학습모델 개발자에게 공개하여야 한다. 이 경우에는, 테스트 데이터의 정답을 공개하고 얻은 학습 모델의 정확도에 신뢰가 떨어진다. If a deep learning learning model is to be traded in the prior art, the client, who is the requester of the learning model, will pay the model development cost only after confirming the accuracy of the learning model. However, although the learning model is an important asset of the learning model developer, it results in the disclosure of the learning model before payment is received. If the client wants to measure the performance of the test data without disclosing the learning model, the client should disclose the correct label of the test data to the learning model developer. In this case, the accuracy of the learning model obtained by disclosing the correct answer of the test data is lowered.
따라서, 이러한 무신뢰 기반의 기계학습 모델을 종래의 기술로 거래한다면, 기계학습 모델 개발자의 입장에서는 학습모델 개발자가 개발한 학습모델을 모두 공개하고 원하는 정확도가 나왔음에도 불구하고 지불을 거절할 수 있고, 성능이 좋은 모델을 개발했는데도 변심으로 지불을 거절할 수 있어 손해를 볼 가능성이 있다. 또한 지불 받지 못할 뿐만 아니라 힘들게 개발한 모델을 공개해야 하는 위험을 안고 있다. 기계학습 클라이언트 입장에서는 개발한 모델의 성능을 확인하여야만 지불을 할 수 있으므로 성능을 확인하기 위한 테스트 데이터를 제공하여야 한다. 그러나 성능을 확인하기 위해서는 테스트 데이터의 정답 레이블을 함께 제공하게 되는데, 클라이언트의 정답을 공개하고 얻은 성능은 신뢰도가 떨어질 수 있으므로 클라이언트 역시 중요한 테스트 데이터의 자산을 공개해야 하는 위험을 안고 있다. 이러한 기계학습 개발자와 기계학습 클라이언트의 위험을 모두 제거하면서, 무신뢰 기반의 공정한 거래를 가능하게 하는 방법이 필요하다.Therefore, if such a trustless-based machine learning model is traded with conventional technology, the machine learning model developer can disclose all the learning models developed by the learning model developer and refuse payment even though the desired accuracy is obtained. , even if you develop a model with good performance, you can refuse to pay with a change of heart, and there is a possibility of losing money. They also run the risk of not only getting paid, but also having to release the hard-developed model. As a machine learning client can pay only by checking the performance of the developed model, test data to check the performance must be provided. However, in order to check the performance, the correct answer label of the test data is provided together. Since the performance obtained by disclosing the client's correct answer may be less reliable, the client also has a risk of having to disclose the assets of the important test data. There is a need for a method that enables fair trade based on trust while removing all the risks of these machine learning developers and machine learning clients.
도 1은 본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템으로서, 블록체인, 웹서버, 기계학습 클라이언트(MLC), 기계학습 모델 개발자(MLSP) 간의 구조를 설명한 도면이다.1 is a block-chain-based machine learning model trustless transaction system according to the present invention, and is a diagram illustrating the structure between a block chain, a web server, a machine learning client (MLC), and a machine learning model developer (MLSP).
도 1을 참조하면, 본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템은, 기계학습 클라이언트(MLC: 1), 기계학습 모델 개발자(MLSP: 2), 블록체인(3) 및 웹서버(4)로 구성된다.1, the blockchain-based machine learning model trustless transaction system according to the present invention is a machine learning client (MLC: 1), a machine learning model developer (MLSP: 2), a block chain (3) and It consists of a web server (4).
상기 기계학습 클라이언트(MLC: 1)는 기계학습 모델 개발을 요청하는 클라이언트이며 웹 서버에 학습 데이터를 등록하고, 학습 모델 개발이 끝나면 블록체인에서 학습 모델을 다운로드하여 정확도를 검증하고 비용을 지불하는 주체이며 블록체인 및 웹서버와 연동하는 웹 어플리케이션 로직을 포함한다.The machine learning client (MLC: 1) is a client requesting machine learning model development, and the subject that registers learning data in the web server and downloads the learning model from the block chain after the learning model development is completed to verify the accuracy and pay the cost and includes web application logic that works with blockchain and web server.
상기 기계학습 모델개발자(MLSP: 2)는 기계학습 모델 개발을 수행하는 주체이며, MLC가 웹 서버에 학습데이터를 등록하면 다운로드하여 학습 모델을 개발하고, 개발이 끝나면 블록체인에 학습 모델을 등록하고 개발비용을 지불 받는 주체이며, 블록체인 등과 연동하는 웹 어플리케이션 로직을 포함한다.The machine learning model developer (MLSP: 2) is the subject of machine learning model development, and when the MLC registers learning data in the web server, it downloads and develops the learning model, and when the development is completed, the learning model is registered in the block chain and It is the entity that receives the development cost, and includes web application logic that works with block chains, etc.
상기 블록체인(Blockchain: 3)은 한번 등록하면 변조할 수 없고 기록이 영구적으로 지속되는 분산 원장 기술이며, MLC와 MLSP가 모델을 등록하고, 토큰을 관리하고, 평판을 관리할 수 있는 스마트 컨트랙트 로직을 포함한다.The above blockchain (Blockchain: 3) is a distributed ledger technology that cannot be tampered with once registered and records are permanently maintained, and smart contract logic that allows MLC and MLSP to register models, manage tokens, and manage reputation includes
상기 웹서버(Web Server: 4)는 상기 기계학습 클라이언트(1)가 암호화된 학습데이터를 등록하는 웹서버이며 업로드 및 다운로드의 기능을 수행하는 데이터베이스 로직을 포함한다.The web server (Web Server: 4) is a web server in which the
따라서, 상기 기계학습 클라이언트(1)가 상기 웹서버(4)에 학습데이터를 등록할 수 있고, 상기 기계학습 모델 개발자(2)가 상기 웹서버(4)로부터 등록된 학습데이터를 다운로드받을 수 있다. 아울러, 상기 기계학습 모델 개발자(2)가 상기 블록체인(3)에 완료된 학습 모델을 등록할 수 있고, 상기 기계학습 클라이어트(1)가 상기 블록체인(3)으로부터 등록된 학습 모델을 다운로드받을 수 있는 것이다.Accordingly, the
도 2는 본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법으로서, MLC와 MLSP간의 ML 모델 작업 계약을 하고, ML모델을 개발하고, ML 모델 성능을 검증하고, MLC와 MLSP 의 신뢰를 검증할 수 단계를 포함하는 대표 단계를 보여주는 다이어그램이다.Figure 2 is a block chain-based machine learning model trustless transaction method according to the present invention, making an ML model work contract between MLC and MLSP, developing an ML model, verifying ML model performance, and Diagram showing representative steps including steps to verify trust.
이때, MLC는 기계학습 클라이언트, MLSP는 기계학습 모델 개발자, ML은 기계학습을 의미한다.In this case, MLC stands for machine learning client, MLSP stands for machine learning model developer, and ML stands for machine learning.
도 2를 참조하면, 본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법은, a) ML 모델 개발 계약 단계, b) ML 모델 개발 단계, c) ML 모델 성능 검증 단계 및 d) MLC/MLSP 신뢰 검증 단계를 포함한다.Referring to FIG. 2 , the blockchain-based machine learning model trustless transaction method according to the present invention includes: a) ML model development contract step, b) ML model development step, c) ML model performance verification step, and d) MLC/MLSP trust verification step.
상기 a) ML 모델 개발 계약 단계는, MLC가 ML 모델 작업을 선언하고 MLSP가 모델 작업에 동의하는 단계를 포함하며, 블록체인과 웹서버와 연동하는 어플리케이션 로직과 블록체인 서버 로직을 포함한다.The above a) ML model development contract step includes the steps in which the MLC declares the ML model work and the MLSP agrees to the model work, and includes application logic and block chain server logic interworking with the blockchain and web server.
상기 b) ML 모델 개발 단계는, MLSP가 동의한 모델의 개발을 선언하고 개발 후 개발된 학습 모델의 은닉 모델을 블록체인에 등록하는 단계를 포함하며, 이를 수행하는 어플리케이션 로직과 블록체인 서버 로직을 포함한다.b) The ML model development step includes a step of declaring the development of the model agreed upon by the MLSP and registering the hidden model of the developed learning model in the block chain after development. include
상기 c) ML 모델 성능 검증 단계는, MLC가 ML 모델 작업의 성능을 검증하고 정답 없는 테스트 데이터를 등록하면 그 데이터를 기반으로 테스트 데이터 결과를 등록하고 다시 MLC가 테스트 데이터 성능을 검증하는 단계를 포함하고, 이를 수행하는 어플리케이션 로직과 블록체인 서버 로직을 포함한다.c) the ML model performance verification step includes the step of, when the MLC verifies the performance of the ML model task and registers test data without correct answers, registers the test data results based on the data, and then the MLC verifies the test data performance again. and includes application logic and blockchain server logic that perform this.
상기 d) MLC/MLSP 신뢰 검증 단계는, MLC와 MLSP의 신뢰도를 검증하는 단계이다.The step d) verifying the MLC/MLSP trust is a step of verifying the reliability of the MLC and the MLSP.
도 3를 참조하여, 본 발명에 따른 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법을 단계별로 보다 구체적으로 살펴보면 다음과 같다.Referring to FIG. 3, the block chain-based machine learning learning model trustless-based transaction method according to the present invention will be described in more detail step by step as follows.
상기 ML 모델 개발 계약 단계(a)는, MLC가 ML 작업을 선언하며 작업의 조건(정확도), 훈련 모델의 해시, 벌금액수, 보증금액수 등을 스마트 컨트랙트에 등록하고 보증금을 예치하는 ML 작업 선언 단계(a-1)와, MLSP가 ML 작업 수주에 동의하며 보증금을 예치하는 ML작업 수주 동의 단계(a-2)를 포함한다.The ML model development contract step (a) is a ML job declaration step in which the MLC declares the ML job, registers the condition (accuracy) of the job, the hash of the training model, the amount of fine, the number of guarantees, etc. in the smart contract and deposits the deposit (a-1), and the ML work order agreement step (a-2) in which the MLSP agrees to accept the ML work order and deposits a deposit.
이때, 상기 ML 작업 선언 단계(a-1)는, MLSP의 공개키로 암호화된 학습 데이터(ED)를 웹 서버에 등록하는 단계와, 학습 모델이 등록된 웹서버의 URL을 스마트 컨트랙트에 등록하는 단계를 더 포함할 수 있다.At this time, the ML task declaration step (a-1) includes the steps of registering the learning data (ED) encrypted with the public key of the MLSP in the web server, and registering the URL of the web server where the learning model is registered in the smart contract. may further include.
일예로서, 계약에 대한 조건(정확도), 훈련 모델에 대한 해시 값, 벌금액수, 보증금액수 등의 파라미터를 정의하고, 부정한 행동을 했을 때 벌금으로 제공할 목적으로 스마트 컨트랙트 계좌에 보증금을 예치한다. 이때, MLSP가 ML 모델 개발에 동의하며 상기에서 정의한 보증금 액수에 해당하는 금액을 스마트 컨트랙트 계좌에 예치한다.As an example, parameters such as conditions (accuracy) for the contract, hash value for the training model, the amount of fines, and the number of guarantees are defined, and a deposit is deposited in a smart contract account for the purpose of providing a penalty for illegal actions. At this time, the MLSP agrees to the development of the ML model and deposits the amount corresponding to the deposit amount defined above in the smart contract account.
상기 등록한 훈련 모델의 해시를 만든 원본인 훈련 모델을 MLSP 의 공개키로 암호화하여 웹 서버에 등록하고, 등록한 웹 서버의 URL을 스마트 컨트랙트에 등록한다.The training model, which is the original hash of the registered training model, is encrypted with the public key of the MLSP and registered in the web server, and the URL of the registered web server is registered in the smart contract.
상기 ML모델 개발 단계(b)는 MLC가 등록한 학습 데이터를 다운로드하여 ML 모델 개발을 선언하며, 이후에는 변심하여도 보증금을 회수할 수 없도록 하는 MLSP의 ML모델 개발 선언 단계(b-1)와, 학습 모델을 개발하고 개발이 완료되면 완료된 학습 모델의 은닉 입력파트와 이에 해당하는 출력 파트를 포함하는 VD와 MLC의 공개키로 암호화된 은닉모델(EM) 포함하는 은닉학습모델(TD)을 등록하는 ML 은닉모델 등록 단계(b-2)를 포함한다.In the ML model development step (b), the ML model development declaration step (b-1) of the MLSP, in which the MLC downloads the registered learning data, declares the ML model development, and makes it impossible to recover the deposit even if you change your mind afterwards (b-1); ML that develops the learning model and registers the hidden learning model (TD) including the hidden model (EM) encrypted with the public key of the VD and MLC including the hidden input part of the completed learning model and the corresponding output part when the development is completed A hidden model registration step (b-2) is included.
일예로서, MLSP가 ML 모델 개발을 선언하며, 이후 MLC가 변심하여도 ML 모델 개발을 취소할 수 없도록 스마트 컨트랙트에 등록하고, MLC가 등록한 암호화된 학습데이터(ED)를 다운로드하여 모델을 개발한다. 개발한 학습 모델의 학습 내용 중 가중치, 노드, 레이어 등의 일부 혹은 전체를 은닉하고 그에 해당하는 출력(VD)를 생성하며, 생성한 VD와 은닉 모델을 MLC의 공개키로 암호화한 EM을 은닉학습 모델로 스마트 컨트랙트에 등록한다.As an example, the MLSP declares ML model development, and then registers it in the smart contract so that the ML model development cannot be canceled even if the MLC changes its mind, and downloads the encrypted learning data (ED) registered by the MLC to develop the model. Among the learning contents of the developed learning model, some or all of the weights, nodes, and layers are hidden and the corresponding output (VD) is generated. registered in the smart contract with
상기 ML모델 성능 검증 단계(c)는 MLSP가 등록한 학습 모델의 성능을 MLC가 검증하고 조건에 제시한 성능(정확도)를 만족하는 경우, 다음 단계인 테스트 데이터를 통한 성능 검증을 하기 위해 정답이 없는 테스트 데이터를 MLSP의 공개키로 암호화한 데이터(UD)를 등록하는 단계인 학습 모델 성능 검증 단계(c-1)와, MLSP가 테스트 데이터(UD)를 다운로드하여 MLC가 테스트데이터로 성능을 검증할 수 있도록 하는 테스트 데이터의 은닉 파트에 대한 입력과 출력의 해시 값을 포함하는 테스트 결과(SD)를 등록하는 ML 테스트 결과 등록 단계(c-2)와, 테스트 데이터(SD)의 성능을 검증하는 테스트 데이터(UD) 성능 검증 및 결과의 해시 값을 포함하는 결과(UDR)을 포함하는 테스트 데이터(UD) 성능 검증 단계(c-3)를 포함한다.In the ML model performance verification step (c), if the MLC verifies the performance of the learning model registered by the MLSP and satisfies the performance (accuracy) presented in the condition, there is no correct answer to verify the performance through the test data, which is the next step. The learning model performance verification step (c-1), which is the step of registering the test data encrypted data (UD) with the public key of the MLSP, and the MLSP downloading the test data (UD) so that the MLC can verify the performance with the test data. The ML test result registration step (c-2) of registering the test result (SD) including the hash values of the input and output for the hidden part of the test data that allows to and a test data (UD) performance verification step (c-3) including a (UD) performance verification and a result (UDR) including a hash value of the result.
일예로서, MLSP 가 등록한 은닉 모델을 자신의 비밀키로 복호화하여 MLC가 학습 모델의 성능을 검증하고, 계약조건을 만족하는 성능(정확도)가 나왔을 경우 웹 서버에 정답레이블이 없는 테스트 데이터를 MLSP의 공개키로 암호화하여 등록하한다. MLSP가 테스트 데이터를 다운로드하여 테스트하고 테스트 데이터에 대한 은닉 모델의 입력 파트(in(di))과 출력 파트 (out(di))에 해당하는 값(HM)과 그 값의 해시 값(HD)을 등록하고, MLC가 등록한 테스트 결과(HM)을 이용하여 테스트 데이터의 성능을 시험하고 조건에 만족하는 결과가 나왔으면 그대로 거래를 종료하고 비용을 지불하며, 조건에 만족하는 성능이 나오지 않았으면 테스트 데이터 성능 결과의 해시를 스마트 컨트랙트에 등록한다.As an example, the MLC verifies the performance of the learning model by decrypting the hidden model registered by the MLSP with its own private key. Encrypted with a key and registered. The MLSP downloads the test data, tests it, and calculates the value (HM) corresponding to the input part (in(di)) and the output part (out(di)) of the hidden model for the test data and the hash value (HD) of that value. After registration, the test data performance is tested using the test result (HM) registered by MLC. If the condition is satisfied, the transaction is terminated and payment is made. If the condition is not met, the test data Register the hash of the performance result in the smart contract.
상기 MLC/MLSP 신뢰 검증 단계(d)는 MLC가 테스트 데이터의 성능을 검증한 후 조건에 제시한 정확도가 나오지 않았을 경우 테스트 데이터의 정답을 등록하는 테스트 데이터 정답(AD) 등록 단계(d-1)와, MLC가 등록한 테스트 데이터의 정답을 다운로드하여 테스트 데이터의 성능이 조건에 미치지 못하는지를 검증하는 모델 성능 검증 및 조건에 만족하는 성능이 나왔는데도 테스트 데이터의 성능이 조건에 미치지 못하였다고 하는 MLC의 신뢰도를 검증하기 위해 MLC가 등록한 테스트 데이터 성능 검증 결과(UDR)과 자신이 등록한 테스트 결과인 SD의 해시를 비교하는 MLC 신뢰도 검증 단계(d-2)와, MLC가 MLSP의 신뢰도를 검증하는 MLSP 신뢰도 검증 단계(d-3)를 포함한다.The MLC/MLSP trust verification step (d) is a test data correct answer (AD) registration step (d-1) of registering the correct answer of the test data if the accuracy suggested in the condition does not come out after the MLC verifies the performance of the test data Wow, the model performance verification that verifies whether the performance of the test data does not meet the conditions by downloading the correct answer of the test data registered by the MLC The MLC reliability verification step (d-2) in which the MLC compares the test data performance verification result (UDR) registered by the MLC to the hash of the SD, which is the test result registered by the MLC, and MLSP reliability verification in which the MLC verifies the reliability of the MLSP. step (d-3).
일 예로서, 테스트 데이터의 성능이 작업선언시에 제시한 정확도에 미치지 못한 경우, 테스트 데이터의 정답을 등록하고, 등록한 테스트 데이터의 정답을 다운로드하여 MLSP가 모델의 성능을 검증한다. 검증한 성능이 MLC가 검증한 결과와 다를 경우, MLC가 등록한 해시 함수(UDR)을 HD와 비교하여 MLC의 신뢰도를 검증한다. 상기에서 MLC의 신뢰도에 문제가 있는 경우, MLC가 제공한 보증금을 MLSP에게 벌금으로 전송하고, MLC의 신뢰도에 이상이 없는 경우 MLSP가 등록한 해시결과(SD)를 비교하여 MLSP의 신뢰도를 검증한다. MLSP의 신뢰도가 거짓인 경우, MLSP가 제공한 보증금을 MLC에게 전송하고 계약을 종료하고, MLSP의 신뢰도에 이상이 없으면, MLC와 MLSP가 모두 신뢰도에 이상이 없는 것이므로 보증금을 각자에게 반환하고 계약을 종료한다.As an example, if the performance of the test data does not reach the accuracy presented at the time of work declaration, the correct answer of the test data is registered, and the correct answer of the registered test data is downloaded, and the MLSP verifies the performance of the model. If the verified performance is different from the verified result of the MLC, the MLC's reliability is verified by comparing the hash function (UDR) registered by the MLC with the HD. In the above case, if there is a problem with the reliability of the MLC, the deposit provided by the MLC is transmitted as a fine to the MLSP. If the trustworthiness of the MLSP is false, the deposit provided by the MLSP is transferred to the MLC and the contract is terminated. quit
도 4는 본 발명에 따라서, MLSP가 기계학습 모델의 은닉 모델의 배포 및 시험을 설명하기 위한 신경망 구조도이다.4 is a neural network structural diagram for explaining the distribution and testing of a hidden model of a machine learning model by an MLSP according to the present invention.
도 4는 기계학습 모델 개발자인 MLSP가 자신이 개발한 모델의 핵심 부분 중 일부를 공개하지 않고, MLC에게 전달하였을 때 정확도를 검증할 수 있도록 하는 기계학습 은닉 모델의 테스트 방법에 관한 것이다.FIG. 4 relates to a testing method of a machine learning hidden model that allows an MLSP, a machine learning model developer, to verify accuracy when delivered to the MLC without disclosing some of the core parts of the model developed by him.
도 4에 있어서, 가중치(Weight: 9)는 노드에 입력되는 가중치를 의미하며 학습된 기계학습 모델의 가중치는 중요한 정보이므로 은닉의 대상이 된다.In FIG. 4, a weight (Weight: 9) means a weight input to a node, and since the weight of the learned machine learning model is important information, it is a target of hiding.
노드(Node: 10)는 각 레이어에 있는 j개의 노드를 의미하며, 모든 노드의 입력(), 편향(), 가중치()가 연산되어 다음레이어의 각 노드에 입력된다.A node (Node: 10) means j nodes in each layer, and the input ( ), bias ( ), weight( ) is calculated and input to each node of the next layer.
레이어(Layer: 11)는 신경망에 입력 층에서 출력층까지의 각 출력을 갖는 층을 의미한다.A layer (Layer: 11) means a layer having each output from the input layer to the output layer in the neural network.
입력값(in(dj): 12)는 은닉 층의 j 번째 노드에 입력되는 입력을 의미하고, 특정 노드의 웨이트를 은닉하면 은닉한 노드의 입력인 in(dj)가 달라지게 된다.The input value (in(d j ): 12) means an input input to the j-th node of the hidden layer, and when the weight of a specific node is hidden, in(d j ), the input of the hidden node, changes.
출력파트(out(dj): 13)는 은닉 층의 j 번째 노드에서 출력되는 출력을 의미하고, 특정 노드의 입력인 in(dj)가 달라지게 되면 해당 노드의 출력인 out(dj)도 달라지게 된다.The output part (out(d j ): 13) means the output from the j-th node of the hidden layer, and when the input in(d j ) of a specific node changes, the output of the node out(d j ) will also change.
도면 부호 14는 출력 층의 전체 출력(OM(in(di)))을 의미한다.
학습된 모델의 일부를 은닉하기 위해 가중치(weight: 9)의 일부를 은닉할 수 있고, 노드(Node: 10)의 입력 전체를 은닉할 수 있으며, 이때 은닉된 입력 값으로 변경된 출력 값을 MLC에게 제공하여 테스트에 지장이 없도록 하며, 모델에서 레이어(layer: 11) 전체를 은닉할 수 있고, 이경우 레이어 전체 출력(14 (OM(in(di))))을 ML 클라이언트에게 제공하여 은닉 모델의 성능을 검증할 수 있도록 MLC에게 제공한다. In order to hide a part of the trained model, part of the weight (weight: 9) can be hidden, and the entire input of the node (Node: 10) can be hidden, and at this time, the output value changed by the hidden input value is sent to the MLC provided so that there is no hindrance to testing, and the entire layer (layer: 11) can be hidden in the model, in this case, the entire layer output (14 ( OM (in(d i )))) is provided to the ML client to provide the hidden model It is provided to the MLC to verify the performance of
기계학습(Machine Learning, ML)기법을 실제 현장에 적응하려는 수요가 크게 증가하고 있으나 성공적인 적용을 위해서는 기계학습에 대한 충분한 이해와 적용 경험이 필요하고, 학습을 위한 컴퓨팅 자원이 많이 요구되기 때문에 기술 적용의 장벽이 존재한다. 기계학습 기법 적용의 수요는 많으나 도입 장벽이 크기 때문에, 기계학습 모델 개발 서비스를 제공하는 온라인 비즈니스가 향후 크게 증가할 것으로 기대된다. Demand for adapting machine learning (ML) techniques to the actual field is increasing significantly, but for successful application, sufficient understanding and application experience of machine learning is required, and computing resources for learning are required. barriers exist. Although there is a lot of demand for the application of machine learning techniques, the introduction barrier is large, so it is expected that the online business that provides machine learning model development services will increase significantly in the future.
기계학습 모델 개발을 의뢰한 고객은 기계학습 모델 개발 서비스 제공자에게 학습데이터를 제공하고, 서비스 제공자가 학습 모델이 만족스러운 상황일 때 비용을 지불하고 학습한 모델을 구매할 것이다. 학습된 모델의 성능을 평가하기 위해 테스트 데이터(Test Data)를 사용하는데 이를 직접 서비스 개발자에게 공개하면 안 되고, 서비스 개발자는 적정한 대가를 받지 않고 학습한 모델을 고객에게 제공하지 않을 것이다. 신뢰 관계가 없는 온라인상의 기계학습 모델개발 서비스 제공자와 고객 간의 공정한 거래를 보장하는 방법이 필수적이다. Customers who request machine learning model development will provide learning data to a machine learning model development service provider, and when the service provider is satisfied with the learning model, they will pay and purchase the learned model. Test data is used to evaluate the performance of the trained model, but it should not be directly disclosed to the service developer, and the service developer will not provide the learned model to the customer without receiving a reasonable price. It is essential to develop a machine learning model online without a trust relationship.
이상 본 발명자에 의해서 이루어진 발명을 상기 실시 예에 따라 구체적으로 설명하였지만, 본 발명은 상기 실시 예에 한정되는 것은 아니고 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 이 기술분야에서 통상의 지식을 가진 자에게 자명하다.Although the invention made by the present inventor has been described in detail according to the above embodiment, the present invention is not limited to the above embodiment, and it is common knowledge in the art that various changes can be made without departing from the gist of the present invention. self-evident to those who have
1: 기계학습 클라이언트
2: 기계학습 모델 개발자
3: 블록체인
4: 웹서버1: Machine Learning Client
2: Machine Learning Model Developer
3: Blockchain
4: web server
Claims (6)
기계학습 모델 개발을 요청하는 클라이언트이며 웹 서버에 학습 데이터를 등록하고, 학습 모델 개발이 끝나면 블록체인에서 학습 모델을 다운로드하여 정확도를 검증하고 비용을 지불하는 주체이며 블록체인 및 웹서버와 연동하는 웹 어플리케이션 로직을 포함하는 기계학습 클라이언트(MLC);
기계학습 모델 개발을 수행하는 주체이며, MLC가 웹 서버에 학습데이터를 등록하면 다운로드하여 학습 모델을 개발하고, 개발이 끝나면 블록체인에 학습 모델을 등록하고 개발비용을 지불 받는 주체이며, 블록체인 및 웹서버와 연동하는 웹 어플리케이션 로직을 포함하는 기계학습 모델개발자(MLSP);
한번 등록하면 변조할 수 없고 기록이 영구적으로 지속되는 분산 원장 기술이며, MLC와 MLSP가 모델을 등록하고, 토큰을 관리하고, 평판을 관리할 수 있는 스마트 컨트랙트 로직을 포함하는 블록체인; 및
상기 기계학습 클라이언트가 암호화된 학습데이터를 등록하는 웹서버이며 업로드 및 다운로드의 기능을 수행하는 데이터베이스 로직을 포함하는 웹서버;를 포함하는 것을 특징으로 하는 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 시스템.As a blockchain-based machine learning learning model trustless transaction system,
It is a client that requests machine learning model development, registers learning data in the web server, and downloads the learning model from the block chain when the learning model development is finished, verifies the accuracy and pays the cost. a machine learning client (MLC) containing application logic;
It is the entity that performs machine learning model development, and when MLC registers learning data on the web server, it downloads and develops the learning model. Machine learning model developer (MLSP) including a web application logic interworking with a web server;
It is a distributed ledger technology that cannot be tampered with once registered and records are permanently persistent, blockchain containing smart contract logic that allows MLC and MLSP to register models, manage tokens, and manage reputation; and
The machine learning client is a web server that registers encrypted learning data, and a web server including database logic that performs upload and download functions. system.
a) MLC가 ML(기계학습) 모델 작업을 선언하고 MLSP가 모델 작업에 동의하는 ML 모델 개발 계약 단계;
b) MLSP가 동의한 모델의 개발을 선언하고 개발 후 개발된 학습 모델의 은닉 모델을 블록체인에 등록하는 ML 모델 개발 단계;
c) MLC가 ML 모델 작업의 성능을 검증하고 정답 없는 테스트 데이터를 등록하면 그 데이터를 기반으로 테스트 데이터 결과를 등록하고 다시 MLC가 테스트 데이터 성능을 검증하는 ML 모델 성능 검증 단계; 및
d) MLC와 MLSP의 신뢰도를 검증하는 MLC/MLSP 신뢰 검증 단계;를 포함하는 것을 특징으로 하는 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법.A blockchain-based machine learning learning model as a trustless transaction method,
a) ML model development contract stage, where the MLC declares the ML (machine learning) model work and the MLSP agrees to the model work;
b) ML model development stage in which the MLSP declares the development of the agreed-upon model and registers the hidden model of the developed learning model in the blockchain after development;
c) the ML model performance verification step in which the MLC verifies the performance of the ML model task and registers the test data without correct answers, registers the test data results based on the data, and the MLC verifies the test data performance again; and
d) MLC / MLSP trust verification step of verifying the reliability of MLC and MLSP; Blockchain-based machine learning model trustless transaction method comprising a.
상기 a) ML 모델 개발 계약 단계는,
MLC가 ML 작업을 선언하며 작업의 조건(정확도), 훈련 모델의 해시, 벌금액수 및 보증금액수를 스마트 컨트랙트에 등록하고 보증금을 예치하는 ML 작업 선언 단계(a-1); 및
MLSP가 ML 작업 수주에 동의하며 보증금을 예치하는 ML작업 수주 동의 단계(a-2);를 포함하고,
상기 ML 작업 선언 단계(a-1)는, MLSP의 공개키로 암호화된 학습 데이터(ED)를 웹 서버에 등록하는 단계와, 학습 모델이 등록된 웹서버의 URL을 스마트 컨트랙트에 등록하는 단계를 포함하는 것을 특징으로 하는 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법.3. The method of claim 2,
In the above a) ML model development contract stage,
The ML task declaration step (a-1) in which the MLC declares the ML task, registers the condition (accuracy) of the task, the hash of the training model, the amount of fine and the amount of the guarantee in the smart contract, and deposits the deposit; and
Including the ML work order agreement step (a-2) in which the MLSP agrees to accept the ML work order and deposits a deposit;
The ML task declaration step (a-1) includes the steps of registering the learning data (ED) encrypted with the public key of the MLSP in the web server, and registering the URL of the web server where the learning model is registered in the smart contract. A block chain-based machine learning learning model trustless transaction method, characterized in that
상기 b) ML모델 개발 단계는,
MLC가 등록한 학습 데이터를 다운로드하여 ML 모델 개발을 선언하며, 이후에는 변심하여도 보증금을 회수할 수 없도록 하는 MLSP의 ML모델 개발 선언 단계(b-1); 및
학습 모델을 개발하고 개발이 완료되면 완료된 학습 모델의 은닉 입력파트와 이에 해당하는 출력 파트를 포함하는 VD와 MLC의 공개키로 암호화된 은닉모델(EM) 포함하는 은닉학습모델(TD)을 등록하는 ML 은닉모델 등록 단계;(b-2)를 포함하는 것을 특징으로 하는 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법.3. The method of claim 2,
b) The ML model development step is,
Declare ML model development by downloading the learning data registered by MLC, and after that, MLSP's ML model development declaration step (b-1) in which the deposit cannot be recovered even if you change your mind; and
ML that develops the learning model and registers the hidden learning model (TD) including the hidden model (EM) encrypted with the public key of the VD and MLC including the hidden input part of the completed learning model and the corresponding output part when the development is completed A block chain-based machine learning learning model trustless transaction method comprising a hidden model registration step; (b-2).
상기 c) ML모델 성능 검증 단계는,
MLSP가 등록한 학습 모델의 성능을 MLC가 검증하고 조건에 제시한 성능(정확도)를 만족하는 경우, 다음 단계인 테스트 데이터를 통한 성능 검증을 하기 위해 정답이 없는 테스트 데이터를 MLSP의 공개키로 암호화한 데이터(UD)를 등록하는 단계인 학습 모델 성능 검증 단계(c-1);
MLSP가 테스트 데이터(UD)를 다운로드하여 MLC가 테스트데이터로 성능을 검증할 수 있도록 하는 테스트 데이터의 은닉 파트에 대한 입력과 출력의 해시 값을 포함하는 테스트 결과(SD)를 등록하는 ML 테스트 결과 등록 단계(c-2); 및
테스트 데이터(SD)의 성능을 검증하는 테스트 데이터(UD) 성능 검증 및 결과의 해시 값을 구비하는 결과(UDR)을 포함하는 테스트 데이터(UD) 성능 검증 단계(c-3)를 포함하는 것을 특징으로 하는 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법.3. The method of claim 2,
c) ML model performance verification step,
When the MLC verifies the performance of the learning model registered by the MLSP and satisfies the performance (accuracy) presented in the condition, the test data without the correct answer is encrypted with the public key of the MLSP to verify the performance through the test data, which is the next step. Learning model performance verification step (c-1), which is a step of registering (UD);
ML test result registration that registers test results (SD) containing hash values of inputs and outputs for the hidden part of the test data, allowing the MLSP to download the test data (UD) so that the MLC can verify performance with the test data step (c-2); and
and a test data (UD) performance verification step (c-3) including a test data (UD) performance verification for verifying the performance of the test data (SD) and a result (UDR) having a hash value of the result A blockchain-based machine learning learning model trustless-based transaction method.
상기 d) MLC/MLSP 신뢰 검증 단계는,
MLC가 테스트 데이터의 성능을 검증한 후 조건에 제시한 정확도가 나오지 않았을 경우 테스트 데이터의 정답을 등록하는 테스트 데이터 정답(AD) 등록 단계(d-1);
MLC가 등록한 테스트 데이터의 정답을 다운로드하여 테스트 데이터의 성능이 조건에 미치지 못하는지를 검증하는 모델 성능 검증 및 조건에 만족하는 성능이 나왔는데도 테스트 데이터의 성능이 조건에 미치지 못하였다고 하는 MLC의 신뢰도를 검증하기 위해 MLC가 등록한 테스트 데이터 성능 검증 결과(UDR)과 자신이 등록한 테스트 결과인 SD의 해시를 비교하는 MLC 신뢰도 검증 단계(d-2); 및
MLC가 MLSP의 신뢰도를 검증하는 MLSP 신뢰도 검증 단계(d-3)를 포함하는 것을 특징으로 하는 블록체인 기반의 머신러닝 학습 모델 무 신뢰 기반 거래 방법.
3. The method of claim 2,
The step d) MLC / MLSP trust verification step,
A test data correct answer (AD) registration step (d-1) of registering the correct answer of the test data when the accuracy suggested in the condition does not come out after the MLC verifies the performance of the test data;
Model performance verification that downloads the correct answer of the test data registered by the MLC to verify whether the performance of the test data does not meet the conditions MLC reliability verification step (d-2) of comparing the test data performance verification result (UDR) registered by the MLC to the hash of the SD, which is the test result registered by the MLC; and
A block-chain-based machine learning learning model trustless transaction method, characterized in that it includes an MLSP reliability verification step (d-3) in which the MLC verifies the reliability of the MLSP.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190156371A KR102309026B1 (en) | 2019-11-29 | 2019-11-29 | Blockchain based Machine learning training model trading method without trust |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190156371A KR102309026B1 (en) | 2019-11-29 | 2019-11-29 | Blockchain based Machine learning training model trading method without trust |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210067094A KR20210067094A (en) | 2021-06-08 |
KR102309026B1 true KR102309026B1 (en) | 2021-10-07 |
Family
ID=76399739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190156371A KR102309026B1 (en) | 2019-11-29 | 2019-11-29 | Blockchain based Machine learning training model trading method without trust |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102309026B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102595185B1 (en) * | 2021-12-23 | 2023-10-27 | 현대건설(주) | Motion-Controlled Pneumatic Stabilized Platform |
CN116308348B (en) * | 2023-02-27 | 2024-01-02 | 广州芳禾数据有限公司 | Machine learning model safe transaction method, system and equipment based on blockchain |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101779036B1 (en) | 2016-01-08 | 2017-09-15 | 한국인터넷진흥원 | Apparatus for detecting fraudulent transactions using machine learning and method thereof |
KR20190125683A (en) * | 2018-04-30 | 2019-11-07 | 김민규 | System and method for verifying forgery of contract information or legal information based on block chain |
-
2019
- 2019-11-29 KR KR1020190156371A patent/KR102309026B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20210067094A (en) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230004964A1 (en) | Method and system for the secure transfer of entities on a blockchain | |
Xu et al. | Architecture for blockchain applications | |
US11797982B2 (en) | Digital ledger authentication using address encoding | |
JP7254701B2 (en) | Computer-implemented system and method for generating and extracting user-related data stored on a blockchain | |
Cohney et al. | Transactional scripts in contract stacks | |
CN107993047B (en) | Policy sales commission rights and interests management method based on block chain | |
JP7522807B2 (en) | COMPUTER-IMPLEMENTED METHODS AND SYSTEMS | |
TW202007118A (en) | Method and computer device for processing personal data base on block chain | |
US11461771B2 (en) | Hybrid digital ledger control with address encoding | |
KR101941989B1 (en) | Project matching method, apparatus and program using blockchain | |
US11475420B2 (en) | System and method for true peer-to-peer automatic teller machine transactions using mobile device payment systems | |
US20200320490A1 (en) | Method and system for conducting a transaction using private blockchain | |
KR101949510B1 (en) | Method, apparatus and program for collecting task matching information using block chain and cryptocurrency, and cross validating the collected information | |
Islam et al. | A novel framework for implementation of land registration and ownership management via blockchain in Bangladesh | |
KR101949508B1 (en) | Method, apparatus and program for recording task performance information in a block chain | |
KR102309026B1 (en) | Blockchain based Machine learning training model trading method without trust | |
Baset et al. | Blockchain Development with hyperledger: build decentralized applications with hyperledger fabric and composer | |
KR101972554B1 (en) | Agency matching method, apparatus and program | |
KR20200031857A (en) | A method of operating Advertising services system based on Blockchain and a system for implementing the service environment | |
US20230013074A1 (en) | System and method for true peer-to-peer automatic teller machine transactions using mobile device payment systems | |
Gómez et al. | Blockverse: A cloud blockchain-based platform for tracking in affiliate systems | |
Antal et al. | Distributed Ledger Technology Review and Decentralized Applications Development Guidelines. Future Internet 2021, 13, 62 | |
KR102540291B1 (en) | Method and device for blockchain-based contest work management | |
KR102389922B1 (en) | Cryptocurrency payment gateway and its payment method | |
Osuntokun et al. | Lightning pool: A non-custodial channel lease marketplace |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |