KR20220063923A - 연합 학습 기반 측위 단말, 서버 및 시스템 - Google Patents
연합 학습 기반 측위 단말, 서버 및 시스템 Download PDFInfo
- Publication number
- KR20220063923A KR20220063923A KR1020200149882A KR20200149882A KR20220063923A KR 20220063923 A KR20220063923 A KR 20220063923A KR 1020200149882 A KR1020200149882 A KR 1020200149882A KR 20200149882 A KR20200149882 A KR 20200149882A KR 20220063923 A KR20220063923 A KR 20220063923A
- Authority
- KR
- South Korea
- Prior art keywords
- terminal
- weight information
- information
- signal strength
- received signal
- Prior art date
Links
- 230000013016 learning Effects 0.000 title claims abstract description 83
- 238000000034 method Methods 0.000 claims abstract description 49
- 230000006870 function Effects 0.000 claims description 38
- 238000004422 calculation algorithm Methods 0.000 claims description 24
- 238000013528 artificial neural network Methods 0.000 claims description 23
- 230000004913 activation Effects 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000010801 machine learning Methods 0.000 abstract description 10
- 230000035045 associative learning Effects 0.000 abstract 3
- 238000010586 diagram Methods 0.000 description 10
- 238000012549 training Methods 0.000 description 8
- 238000010295 mobile communication Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012886 linear function Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G06N3/0454—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
본 실시 예들은 연합 학습 기반 단말, 서버 및 시스템에 관한 것으로서, 특히 분산형 학습의 종류인 연합 학습 기반의 머신 러닝 기법을 이용한 핑거프린팅 실내 측위 방법을 제공할 수 있다. 구체적으로 각 단말들이 얻은 수신신호강도 정보를 서버로 전송하는 대신에 각 단말로부터 학습된 가중치를 서버로 전송하여 측위함으로써, 학습 속도 향상과 개인 정보 유출을 보호하는 연합 학습 기반 측위 단말, 서버 및 시스템을 제공할 수 있다.
Description
본 실시 예들은 연합 학습 기반 측위 단말, 서버 및 시스템에 관한 것이다.
전세계적으로 모바일 단말을 사용하면서 생성되는 사용자의 센서(GPS, 카메라, 마이크 등) 및 5G 이동통신 데이터를 이용한 다양한 머신 러닝 연구가 활발히 진행되고 있다. 또한, 머신 러닝 연구에 이용되는 사용자들의 다양하고 막대한 양의 데이터에는 개인정보에 민감한 데이터들이 포함되어 있어 보안성과 데이터의 익명성이 보장되어야 한다.
또한, 이러한 상황에서 모바일 단말의 현재 위치를 측정하기 위한 기술을 필요로 하고 있다. 특히, 모바일 단말의 현재 위치를 측정하기 위해서 GPS를 이용한 위치 추정 또는 특정 신호를 이용하여 삼각 측량을 이용하는 위치 추정과 같이 다양한 방식의 위치 추정 기술이 연구되고 있으나, 기기의 정확한 위치를 추정하기 어려운 건물 내부와 같이 실내 상황에서의 위치 추정에 대한 중요성이 높아지고 있는 실정이다.
따라서 이를 해결하기 위한 방법으로 분산형 학습을 통해 개인 정보를 보호하면서 실내 측위가 가능한 측위 방법을 필요로 하고 있다.
이러한 배경에서, 본 실시 예들은 사용자의 프라이버시 보호가 가능한 연합 학습(federated learning) 기반 측위 단말, 서버 및 시스템을 제공할 수 있다.
일 측면에서, 본 실시 예들은 연합 학습 기반 측위 시스템을 구성하는 서버에 있어서, 수신신호강도 정보를 입력으로 하고 단말의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델을 생성하는 모델 생성부, 둘 이상의 단말로 광역 모델 및 초기 가중치 정보를 송신하는 송신부, 둘 이상의 단말 각각으로부터 광역 모델의 학습을 통해 획득된 단말 가중치 정보를 수신하는 가중치 수신부 및 둘 이상의 단말 각각으로부터 수신한 단말 가중치 정보와 둘 이상의 단말 별 광역 모델의 입력으로 사용된 수신신호강도 정보 개수를 이용하여 갱신 가중치 정보를 생성하고, 갱신 가중치 정보를 이용하여 광역 모델을 갱신하는 모델 갱신부를 포함하며, 송신부는 갱신 가중치 정보를 상기 둘 이상의 단말로 전송하는 것을 특징으로 하는 서버를 제공할 수 있다.
다른 측면에서, 본 실시 예들은 연합 학습 기반 측위 시스템을 구성하는 단말에 있어서, 액세스 포인트로부터 전송되는 신호에 기초하여 수신신호강도(Received Signal Strength Indicator, RSSI) 정보를 측정하는 정보 측정부, 서버로부터 수신신호강도 정보를 입력으로 하고, 단말의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델 및 초기 가중치 정보를 수신하는 수신부, 광역 모델에 수신신호강도 정보를 입력하여 단말의 추정 위치 좌표를 출력하되, 광역 모델을 통한 추정 위치 좌표와 단말의 실제 좌표의 오차가 최소화되는 단말 가중치 정보를 산출하는 단말 가중치 정보 산출부 및 단말 가중치 정보를 서버로 전송하는 송신부를 포함하되, 수신부는 단말 가중치 정보에 기초하여 갱신된 갱신 가중치 정보를 서버로부터 더 수신하고 단말 가중치 정보 산출부는 광역 모델에 갱신 가중치 정보를 적용하여 오차가 최소가 되는 단말 가중치 정보를 산출하는 것을 특징으로 하는 단말을 제공할 수 있다.
또 다른 측면에서, 본 실시 예들은 연합 학습 기반 측위 시스템에 있어서, 수신신호강도 정보를 입력으로 하고 단말의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델을 생성하고, 둘 이상의 단말로 광역 모델, 초기 가중치 정보 및 갱신 가중치 정보를 송신하며, 둘 이상의 단말 각각으로부터 수신된 단말 가중치 정보와 둘 이상의 단말 별 광역 모델의 입력으로 사용된 수신신호강도 정보 개수를 이용하여 갱신 가중치 정보를 생성하는 서버 및 서버로부터 수신된 광역 모델에 초기 가중치 정보 또는 갱신 가중치 정보를 적용하여, 단말 가중치 정보를 생성하고, 광역 모델 및 액세스 포인트로부터 전송되는 신호에 기초하여 측정된 수신신호강도 정보를 이용하여 단말의 위치 좌표를 측정하는 단말을 포함하는 측위 시스템을 제공할 수 있다.
본 실시 예들에 의하면, 각 단말들이 얻은 수신신호강도 정보를 서버로 전송하여 학습하는 대신에 각 단말로부터 학습된 가중치를 서버로 전송하여 학습 속도 향상과 개인 정보 유출을 보호하는 연합 학습 기반 측위 단말, 서버 및 시스템을 제공할 수 있다.
도 1은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템을 개략적으로 도시한 도면이다.
도 2는 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 서버의 구성을 도시한 도면이다.
도 3은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 단말의 구성을 도시한 도면이다.
도 4는 본 개시의 일 실시 예에 따른 핑거프린팅 측위 방법을 설명하기 위한 도면이다.
도 5는 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템의 광역 모델의 알고리즘을 설명하기 위한 도면이다.
도 6은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템의 동작을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 단말과 서버의 동작을 설명하기 위한 흐름도이다.
도 8은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템의 측위 오차를 설명하기 위한 도면이다.
도 2는 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 서버의 구성을 도시한 도면이다.
도 3은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 단말의 구성을 도시한 도면이다.
도 4는 본 개시의 일 실시 예에 따른 핑거프린팅 측위 방법을 설명하기 위한 도면이다.
도 5는 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템의 광역 모델의 알고리즘을 설명하기 위한 도면이다.
도 6은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템의 동작을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 단말과 서버의 동작을 설명하기 위한 흐름도이다.
도 8은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템의 측위 오차를 설명하기 위한 도면이다.
본 개시는 연합 학습 기반 측위 단말, 서버 및 시스템에 관한 것이다.
이하, 본 개시의 일부 실시 예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성 요소들에 참조부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가질 수 있다. 또한, 본 실시 예들을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 기술 사상의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다. 본 명세서 상에서 언급된 "포함한다", "갖는다", "이루어진다" 등이 사용되는 경우 "~만"이 사용되지 않는 이상 다른 부분이 추가될 수 있다. 구성 요소를 단수로 표현한 경우에 특별한 명시적인 기재 사항이 없는 한 복수를 포함하는 경우를 포함할 수 있다.
또한, 본 개시의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질, 차례, 순서 또는 개수 등이 한정되지 않는다.
구성 요소들의 위치 관계에 대한 설명에 있어서, 둘 이상의 구성 요소가 "연결", "결합" 또는 "접속" 등이 된다고 기재된 경우, 둘 이상의 구성 요소가 직접적으로 "연결", "결합" 또는 "접속" 될 수 있지만, 둘 이상의 구성 요소와 다른 구성 요소가 더 "개재"되어 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다. 여기서, 다른 구성 요소는 서로 "연결", "결합" 또는 "접속" 되는 둘 이상의 구성 요소 중 하나 이상에 포함될 수도 있다.
구성 요소들이나, 동작 방법이나 제작 방법 등과 관련한 시간적 흐름 관계에 대한 설명에 있어서, 예를 들어, "~후에", "~에 이어서", "~다음에", "~전에" 등으로 시간적 선후 관계 또는 흐름적 선후 관계가 설명되는 경우, "바로" 또는 "직접"이 사용되지 않는 이상 연속적이지 않은 경우도 포함할 수 있다.
한편, 구성 요소에 대한 수치 또는 그 대응 정보(예: 레벨 등)가 언급된 경우, 별도의 명시적 기재가 없더라도, 수치 또는 그 대응 정보는 각종 요인(예: 공정상의 요인, 내부 또는 외부 충격, 노이즈 등)에 의해 발생할 수 있는 오차 범위를 포함하는 것으로 해석될 수 있다.
본 명세서에서의 epoch는 인공 신경망에서 전체 데이터 셋에 대해 순방향 패스 및 역방향 패스과정을 거친 것을 의미할 수 있다. 즉, epoch는 전체 데이터 셋에 대해 한번 학습을 완료한 상태를 의미할 수 있다. 여기서 순방향 패스(Forward pass)는 신경망에서 사용되는 역전파 알고리즘(backpropagation algorithm)의 파라미터를 사용하여 입력부터 출력까지의 각 계층의 가중치를 계산하는 과정을 수행하는 것이다. 또한, 역방향 패스(backward pass)는 순방향 패스를 반대로 거슬러 올라가며 다시 한 번 계산 과정을 거처 기존의 가중치를 수정하는 과정을 수행하는 것이다. 따라서, 전체 데이터 셋에 대해 해당과정(순방향 패스와 역방향 패스)이 완료되면 한번의 epoch가 수행되었음을 의미할 수 있다.
도 1은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템을 개략적으로 도시한 도면이다.
도 1을 참조하면, 본 개시는 연합 학습 기반 측위 시스템(100)에 대한 것으로, 단말(110) 및 서버(130)에 구현될 수 있다. 본 개시의 연합 학습 측위 시스템을 구성하는 서버(130)는 수신신호강도(Received Signal Strength Indicator, RSSI) 정보를 입력으로 하고 단말(110)의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델을 생성할 수 있다
또한, 서버(130)는 둘 이상의 단말(110,120)로 광역 모델, 초기 가중치 정보 및 갱신 가중치 정보를 전송하며, 둘 이상의 단말(110,120) 각각으로부터 수신된 단말 가중치 정보와 둘 이상의 단말(110,120) 별 광역 모델의 입력으로 사용된 수신신호강도 정보 개수를 이용하여 갱신 가중치 정보를 생성할 수 있다. 서버(130)는 갱신 가중치 정보가 수렴할 때까지, 둘 이상의 단말(110,120) 각각으로부터 수신되는 단말 가중치 정보를 이용하여 갱신 가중치 정보를 생성하는 과정을 반복할 수 있다.
또한, 단말(110)은 서버(130)로부터 수신된 광역 모델에 초기 가중치 정보 또는 갱신 가중치 정보를 적용하여, 단말 가중치 정보를 생성할 수 있다. 또한, 단말(110)은 서버로부터 수신되는 상기 갱신 가중치 정보를 상기 광역 모델에 적용하여, 상기 단말 가중치 정보를 생성하여 전송하는 과정을 반복할 수 있다. 단말(110)은 광역 모델 및 액세스 포인트로부터 전송되는 신호에 기초하여 측정된 수신신호강도 정보를 이용하여 단말의 추정 위치 좌표를 측정할 수 있다.
이 경우에 둘 이상의 단말(110,120)과 서버(130)는 네트워크를 통해서 연결될 수 있다.
전술한 단말(110)은, 일반적인 데스크 탑이나 노트북 등의 일반 PC를 포함하고, 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기 등을 포함할 수 있으며, 이에 제한되지 않고, 서버(130)와 통신 가능한 어떠한 전자 기기로 폭넓게 해석되어야 할 것이다.
전술한 서버(130)는 하드웨어적으로는 통상적인 웹 서버(Web Server) 또는 웹 어플리케이션 서버(Web Application Server) 또는 왑 서버(WAP Server)와 동일한 구성을 하고 있다. 그러나, 소프트웨어적으로는, 아래에서 상세하게 설명할 바와 같이, C, C++, Java, PHP, .Net, Python, Ruby 등 여하한 언어를 통하여 구현되어 여러 가지 기능을 하는 프로그램 모듈(Module)을 포함할 수 있다.
또한, 서버(130)는, 네트워크를 통하여 사용자의 단말(110) 또는 다른 다수의 단말(120)과 연결될 수 있는데, 이에 따라, 서버(130)는 클라이언트의 작업수행 요청을 접수하고 그에 대한 작업 결과를 도출하여 제공하는 컴퓨터 시스템 또는 이러한 컴퓨터 시스템을 위하여 설치되어 있는 컴퓨터 소프트웨어(서버 프로그램)를 뜻하는 것일 수도 있다.
또한, 서버(130)는, 전술한 서버 프로그램 이외에도, 서버(130) 상에서 동작하는 일련의 응용 프로그램(Application Program)과, 경우에 따라서는 내부 또는 외부에 구축되어 있는 각종 데이터베이스를 포함하는 넓은 개념으로 이해되어야 할 것이다. 여기서, 데이터베이스는, 서버 또는 다른 장치 등에 의해 사용될 목적으로 정보나 자료 등의 데이터가 구조화되어 관리되는 데이터의 집합체를 의미할 수 있으며, 이러한 데이터의 집합체를 저장하는 저장매체를 의미할 수도 있다.
경우에 따라서, 데이터베이스는 정보나 자료 등을 추가, 수정, 삭제 등을 할 수 있도록 해주는 소프트웨어인 데이터베이스 관리시스템(Database Management System, DBMS)을 포함할 수도 있다.
또한, 서버(130)는 컨텐츠, 각종 정보 및 데이터를 데이터베이스에 저장시키고 관리할 수 있다. 여기서, 데이터베이스는 서버(130)의 내부 또는 외부에 구현될 수 있다. 또한, 서버(130)는 일반적인 서버용 하드웨어에 도스(DOS), 윈도우(windows), 리눅스(Linux), 유닉스(UNIX), 매킨토시(Macintosh) 등의 운영체제에따라 다양하게 제공되고 있는 서버 프로그램을 이용하여 구현될 수 있으며, 대표적인 것으로는 윈도우 환경에서 사용되는 웹 사이트(Website), IIS(Internet Information Server)와 유닉스환경에서 사용되는 Apache, Nginx, Light HTTP 등이 이용될 수 있다.
한편, 네트워크는 서버(130)와 단말(110)을 연결해주는 망(Network)으로서, LAN(Local Area Network), WAN(Wide Area Network)등의 폐쇄형 네트워크일 수도 있으나, 인터넷(Internet)과 같은 개방형 네트워크일 수도 있다. 여기서, 인터넷은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(HyperText Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service)를 제공하는 전 세계적인 개방형 컴퓨터 네트워크 구조를 의미한다.
또한, 단말(110)이 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기를 포함하는 경우, 네트워크는 이동 통신망이나 와이파이(WiFi) 망 등의 무선 액세스 망을 더 포함할 수도 있다.
간략하게 전술한 본 발명의 일 실시 예에 따른 연합 학습 기반 측위를 수행하는 방법에 대하여, 이하에서 더욱 상세하게 설명한다.
도 2는 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 서버의 구성을 도시한 도면이다.
도 2를 참조하면, 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템(100)을 구성하는 서버(130)는 수신신호강도 정보를 입력으로 하고 단말의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델을 생성하는 모델 생성부(210), 둘 이상의 단말(110,120)로 광역 모델, 초기 가중치 정보 및 갱신 가중치 정보를 전송하는 송신부(220), 둘 이상의 단말(110,120) 각각으로부터 광역 모델의 학습을 통해 획득된 단말 가중치 정보를 수신하는 가중치 수신부(230), 둘 이상의 단말(110,120) 각각으로부터 수신한 단말 가중치 정보와 둘 이상의 단말(110,120) 별 광역 모델의 입력으로 사용된 수신신호강도 정보 개수를 이용하여 갱신 가중치 정보를 생성하고, 갱신 가중치 정보를 이용하여 광역 모델을 갱신하는 모델 갱신부(240)를 포함할 수 있다.
모델 생성부(210)는 수신신호강도 정보를 입력으로 하고 단말의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델을 생성할 수 있다. 예를 들어, 모델 생성부(210)는 수신신호강도 정보와 라벨링된 위치 좌표를 학습 데이터로 이용하여 광역 모델을 생성할 수 있다. 또한, 광역 모델은 입력층과 출력층 사이에 하나 이상의 중간층으로 구성되는 다층 신경망 알고리즘을 이용하되, 수신신호강도 정보를 입력층에 입력하여 출력층의 활성 함수에 의해 추정 위치 좌표를 추정할 수 있다. 이 때, 활성 함수는 수신신호강도 정보에 비례하는 추정 위치 좌표를 출력할 수 있다.
송신부(220)는 둘 이상의 단말(110,120)로 초기 가중치 정보가 포함된 광역 모델 또는 갱신 가중치 정보가 포함된 광역 모델을 전송할 수 있다. 예를 들어, 송신부(220)는 초기의 가중치 정보를 가진 광역 모델을 전송한 이후, 둘 이상의 단말(110,120) 각각으로부터 학습이 완료된 단말 가중치 정보를 수신하면, 이를 이용하여 광역 모델을 갱신하여 다시 둘 이상의 단말(110,120)로 전송할 수 있다.
가중치 수신부(230)는 둘 이상의 단말(110,120) 각각으로부터 단말 가중치 정보와 수신신호강도 정보 개수를 수신할 수 있다. 예를 들어, 수신신호강도 정보 개수는 각 단말(110)에서 광역 모델의 입력으로 사용된 학습 데이터의 개수를 의미할 수 있다. 또한, 단말 가중치 정보는 단말(110)에서 액세스 포인트로부터 전송되는 신호에 기초하여 측정한 수신신호 강도 정보를 이용하여 광역 모델의 손실함수 값이 최소화되는 가중치 정보를 의미할 수 있다. 이 때, 손실함수 값은 수신신호강도 정보에 기초하여 추정된 추정 위치 좌표와 단말(110)이 위치하는 실제 좌표의 오차 절대값 평균일 수 있다.
모델 갱신부(240)는 둘 이상의 단말(110,120) 각각으로부터 수신한 단말 가중치 정보와 둘 이상의 단말(110,120) 별 광역 모델의 입력으로 사용된 수신신호강도 정보 개수를 이용하여 갱신 가중치 정보를 생성하고, 갱신 가중치 정보를 이용하여 광역 모델을 갱신할 수 있다. 예를 들어, 모델 갱신부(240)는 둘 이상의 단말(110,120) 각각에 대한 단말 가중치 정보, 둘 이상의 단말(110,120) 별 광역 모델의 입력으로 사용된 수신신호강도 정보 개수 및 전체 수신신호강도 정보 개수를 이용하여 갱신 가중치 정보를 생성할 수 있다. 이는 각 단말마다 학습에 사용된 수신신호강도 정보의 개수가 다르므로, 학습된 수신신호강도 정보의 개수에 비례하여 단말 가중치 정보의 비중을 변경하여 갱신 가중치 정보를 생성하기 위해서이다.
구체적인 예를 들어, 모델 갱신부(240)는 둘 이상의 단말(110,120)로부터 수신된 수신신호강도 정보 개수를 모두 합하여 전체 수신신호강도 정보 개수를 산출하고, 둘 이상의 단말(110,120) 각각에 대한 전체 수신신호강도 정보 개수 대비 수신신호강도 정보 개수 비율을 산출하며, 단말 가중치 정보에 수신신호강도 정보 개수 비율을 적용하여 갱신 가중치 정보를 생성할 수 있다.
다른 예를 들어, 모델 갱신부(240)는 갱신 가중치 정보가 수렴할 때까지, 둘 이상의 단말(110,120) 각각으로부터 수신되는 단말 가중치 정보를 이용하여 갱신 가중치 정보를 생성하는 과정을 반복할 수 있다. 이는, 갱신 가중치 정보가 각 단말들의 학습을 거치고 서버로 단말 가중치 정보를 전송하는 과정이 반복될 때마다 갱신되는 것을 의미할 수 있다. 또한, 모델 갱신부(240)는 갱신 가중치 정보에 기초하여 광역 모델을 갱신하면, 갱신된 광역 모델은 각 단말들이 이전에 진행한 과정을 다시 반복하는데 사용될 수 있다. 따라서, 단말(110)은 갱신 가중치 정보를 적용한 광역 모델을 이용하여 단말 가중치 정보를 생성하여 전송하는 과정을 다시 반복할 수 있다. 모델 갱신부(240)의 광역 모델 갱신에 관한 상세한 내용은 도6 내지 도8을 참조하여 후술한다.
도 3은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 단말의 구성을 도시한 도면이다.
도 3을 참조하면, 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템(100)을 구성하는 단말(110)은 액세스 포인트로부터 전송되는 신호에 기초하여 수신신호강도(Received Signal Strength Indicator, RSSI) 정보를 측정하는 정보 측정부(310), 서버(130)로부터 수신신호강도 정보를 입력으로 하고, 단말(110)의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델 및 초기 가중치 정보를 수신하는 수신부(320), 광역 모델에 수신신호강도 정보를 입력하여 단말(110)의 추정 위치 좌표를 출력하되, 광역 모델을 통한 추정 위치 좌표와 단말(110)이 위치하는 실제 좌표의 오차가 최소화되는 단말 가중치 정보를 산출하는 단말 가중치 정보 산출부(330) 및 단말 가중치 정보를 서버(130)로 전송하는 송신부(340)를 포함할 수 있다.
정보 측정부(310)는 액세스 포인트로부터 전송되는 신호에 기초하여 수신신호강도 정보를 측정할 수 있다. 예를 들어, 정보 측정부(310)는 복수의 기준 지점에서 수신신호강도 정보를 측정한 결과인 무선 맵(Radio Map)과 비교하여 단말(110)의 위치를 추정하기 위해 수신신호강도 정보를 측정할 수 있다. 따라서, 정보 측정부(310)는 미리 임의로 여러 개의 기준 지점을 선정하고 선정한 지점에서 수신신호강도 정보를 측정할 수 있다. 수신신호강도 정보를 이용하여 실내 측위하는 방법에 관한 상세한 내용은 도4를 참조하여 후술한다.
수신부(320)는 서버(130)로부터 수신신호강도 정보를 입력으로 하고, 단말(110)의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델 및 초기 가중치 정보를 수신할 수 있다. 또한, 수신부(320)는 서버(130)으로부터 단말 가중치 정보에 기초하여 갱신된 갱신 가중치 정보 및 갱신된 광역 모델을 더 수신할 수 있다. 예를 들어, 갱신 가중치 정보는 광역 모델을 사용하는 둘 이상의 단말(110,120) 각각으로부터 수신된 단말 가중치 정보에 광역 모델의 입력으로 사용된 상기 수신신호강도 정보 개수를 모두 합하여 산출된 전체 수신신호강도 정보 개수 대비 둘 이상의 단말(110,120) 별 수신신호강도 정보 개수 비율을 적용하여 생성할 수 있다.
단말 가중치 정보 산출부(330)는 광역 모델에 수신신호강도 정보를 입력하여 상기 단말(110)의 추정 위치 좌표를 출력하되, 광역 모델을 통한 추정 위치 좌표와 단말(110)이 위치하는 실제 좌표의 오차가 최소화되는 단말 가중치 정보를 산출할 수 있다. 또한, 단말 가중치 정보 산출부(330)는 광역 모델에 갱신 가중치 정보를 적용하여 오차가 최소가 되는 단말 가중치 정보를 산출할 수 있다.
예를 들어, 단말 가중치 정보 산출부(330)는 광역 모델의 손실함수 값이 최소화되는 단말 가중치 정보를 생성하며, 손실함수 값은 수신신호강도 정보에 기초하여 추정된 추정 위치 좌표와 단말(110)이 위치하는 실제 좌표의 오차 절대값 평균일 수 있다. 또한, 단말 가중치 정보 산출부(330)는 수신신호강도 정보를 입력층에 입력하여 출력층의 활성 함수에 의해 추정 위치 좌표를 추정하되, 활성 함수는 수신신호강도 정보에 비례하는 추정 위치 좌표를 출력할 수 있다.단말 가중치 정보 산출부(330)에서 단말 가중치 정보를 생성하는 방법에 관한 상세한 내용은 도5를 참조하여 후술한다.
송신부(340)는 단말 가중치 정보를 서버(130)로 다시 전송할 수 있다. 예를 들어, 단말은 갱신 가중치 정보를 적용한 광역 모델로부터 단말 가중치 정보를 생성하여 전송하는 과정을 반복할 수 있다.
도 4는 본 개시의 일 실시 예에 따른 핑거프린팅 측위 방법을 설명하기 위한 도면이다.
도 4를 참조하면, 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템(100)은 핑거프린팅 기법을 사용하여 단말(110)의 위치 좌표를 추정할 수 있다. 예를 들어, 핑거프린팅 기법은 실내 측위에서 대표적으로 사용하는 방법으로, 측정된 수신신호의 강도를 이용하여 단말의 위치를 추정할 수 있다. 구체적으로 핑거프린팅 기법은 액세스 포인트가 가지고 있는 고유의 값인 MAC 주소를 사용하는 것으로 데이터베이스를 이용할 수 있다. 이 때, 데이터베이스는 각 액세스 포인트가 가지는 고유의 MAC 주소를 저장하고 있는 실내 공간을 작은 셀(cell) 단위로 나뉜 무선 맵((Radio map)을 의미할 수 있다. 또한, 무선 맵(Radio map)은 각 셀에서 액세스 포인트들의 MAC 주소, 수신신호강도 정보를 수집하여 데이터베이스화한 것을 의미할 수 있다. 이 때, 측위 정밀도는 많은 수의 액세스 포인트가 조밀하게 배치될수록 향상될 수 있다. 구체적으로, 핑거프린팅 기법은 실내에 단말(110)이 위치하는 경우, 무선 맵의 액세스 포인트들의 수신신호강도 정보와 단말(110)이 측정한 수신신호강도 정보를 비교하였을 때 가장 유사한 신호강도 정보를 가지는 셀 정보를 반환하여 단말(110)의 위치로 추정할 수 있다.
연합 학습 기반 측위 시스템(100)은 측정된 수신신호강도 정보와 라벨링된 정확한 위치를 학습 데이터로 이용하여 단말(110)의 위치를 추정하는 광역 모델을 설계할 수 있다. 예를 들어, 단말(110)의 광역 모델은 단말(110)이 측정한 수신신호강도 정보로부터 추정된 단말(110)의 추정 위치 좌표와 무선맵의 액세스 포인트들의 수신신호강도 정보 및 라벨링된 정확한 위치를 이용하여 학습을 수행할 수 있다.
도 5는 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템의 광역 모델의 알고리즘을 설명하기 위한 도면이다.
도 5를 참조하면, 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템(100)에서 사용되는 광역모델은 다층 신경망 알고리즘으로 이루어질 수 있다. 예를 들어 광역 모델은 서버(130)에서 초기 광역 모델이 생성되고 각 단말(110)로 전송되어 학습을 진행할 수 있다. 또한, 광역 모델은 서버(130)에서 각 단말(110)로부터 수신된 단말 가중치 정보를 이용하여 갱신될 수 있다.
광역 모델은 입력에 대응하는 출력을 제공할 수 있다. 예를 들어, 광역 모델로부터 출력된 단말의 좌표는 입력된 수신신호강도 정보에 대응하는 결과일 수 있다. 예를 들어, 광역 모델은 학습 데이터와 그에 대응하는 출력 데이터를 함께 신경망 알고리즘에 입력하고, 학습 데이터에 대응하는 출력 데이터가 출력되도록 연결선들의 연결 가중치를 갱신할 수 있다. 즉, 광역 모델은 오차를 줄이기 위해 갱신을 통해 신경망 내의 연결 가중치인 단말 가중치 정보를 생성할 수 있다.
광역 모델은 입력층(Input layer)과 출력층(Output layer)사이에 하나 이상의 중간층(Hidden layer)으로 구성되는 다층 신경망 알고리즘을 이용할 수 있다. 예를 들어, 광역 모델은 신경망의 출력 오차를 출력층에서 시작해서 입력층 바로 앞 중간층까지 역순으로 이동시키는 역전파 알고리즘(backpropagation)을 이용할 수 있다. 또한, 광역 모델은 중간층들의 오차를 결정한 다음 규칙에 따라 이 오차들로 가중치들을 조절할 수도 있다. 여기서 중간층들의 오차는 델타를 역전파시켜 얻은 가중합으로 구하고, 이 값에 활성함수의 도함수 값을 곱해 해당 측의 델타를 구하여 계산할 수 있다(delta rule).
다른 예를 들어, 광역 모델은 다층 신경망 알고리즘의 가중치를 최적화하기 위해서 Adam(Adaptive Moment Estimation)을 이용하여 각 파라미터를 다른 크기로 갱신할 수 있다. 즉, 단말 가중치 정보는 학습과 역전파 과정을 통해 갱신될 수 있다.
또한, 광역 모델은 수신신호강도 정보를 입력층에 입력하여 출력층의 활성 함수에 의해 추정 위치 좌표를 추정할 수 있다. 여기서 활성 함수는 이전 층들에서 출력된 결과 값을 다음 층의 입력값의 형태로 변환시켜주는 함수를 의미할 수 있다. 예를 들어, 활성 함수는 신경망 알고리즘에서 학습 데이터에 기초하여 출력한 출력 값과 출력 되기로 원하는 기대값 간의 오류를 계산하기 위한 오류 함수 일수 있고, 광역 모델은 오류 함수의 값을 줄이는 방향으로 연결 가중치들을 갱신할 수 있다. 구체적인 예를 들어 활성 함수는 시그모드(sigmoid) 함수를 이용할 수 있다. 시그모드 함수는 입력 데이터 셋이 음수와 양수를 모두 가지는 경우, 평균이 0.5인 0부터 1사이의 값으로 연속된 값을 출력하는 함수일 수 있다. 또한, 활성 함수는 계단 함수, 하이퍼볼릭 탄젠트 함수 또는 ReLU 함수일 수 있고, 이에 한정되는 것은 아니다.
또한 다른 예를 들어, 활성함수는 마지막 출력층에서 명확한 좌표로 변환하는 경우에는 선형 함수를 이용할 수 있다. 이는 수신신호강도 정보가 거리에 비례하는 것을 고려한 것으로, 마지막 출력층의 활성함수는 선형함수를 이용하여 좌표를 출력할 수 있다.
도 6은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템의 동작을 설명하기 위한 도면이다.
도 6을 참조하면, 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템(100)은 각 단말(110)이 학습된 광역 모델의 단말 가중치 정보를 서버(130)로 전송하고, 서버(130)는 수신한 모든 단말 가중치 정보들을 통합할 수 있다. 예를 들어, 연합 학습 기반 측위 시스템(100)은 N명의 사용자 단말이 데이터 수집과 학습에 참여하는 경우, 광역 모델은 서버(130)에서 생성되지만, 모든 단말들은 각자가 가진 데이터들만을 학습에 이용할 수 있다. 이는 데이터가 아닌 단말 가중치 정보만을 서버(130)로 전송하여 사용자의 프라이버시를 보호하는 효과를 제공할 수 있다.
서버(130)는 수신신호강도 정보를 입력으로 하고 단말의 추정 위치 좌표를 출력으로 하는 머신 러닝 알고리즘으로 이루어진 최초의 광역 모델(Global model)을 생성할 수 있다.
단말(110)의 정보 측정부(310)는 총 J개의 Wi-Fi 액세스 포인트가 분포되어 있는 학습 데이터 수집을 위한 네트워크에서 각 액세스 포인트로부터 수신신호강도 정보를 수집할 수 있다. 이 때, 단말(110)의 i 번째 샘플의 입력 벡터는 수학식 1과 같이 표현할 수 있다.
여기서 ri,j 는 j 번째 Wi-Fi 액세스 포인트가 수신하는 단말의 수신신호강도 정보를 의미할 수 있다.
단말(110)의 단말 가중치 정보 산출부(330)는 각 단말(110)이 각자 측정한 데이터를 광역 모델의 입력과 출력으로 사용하여 손실함수(loss function)을 최소화하기 위한 단말 가중치 정보를 획득할 수 있다. 손실함수는 최적의 단말 가중치 정보를 획득하기 위해 평균절대오차 값(mean absolute error, MAE)을 이용할 수 있다. 즉, 평균절대오차 값은 추정한 값과 실제 값 사이의 절대 오차들을 구해 평균을 구하는 것을 의미할 수 있다. 손실함수를 최소화하는 방식은 수학식 2와 같이 표현할 수 있다.
여기서 w는 가중치 값으로 단말 가중치 정보를 의미할 수 있고, xi는 입력되는 수신신호강도 정보, yi는 출력되는 단말의 좌표, m은 데이터의 개수를 의미할 수 있다. 또한 단말의 좌표는 위도와 경도로 이루어질 수 있다.
단말(110)의 단말 가중치 정보 산출부(330)는 단말 가중치 정보를 추정하기 위해서 각자의 데이터를 사용하여 학습을 진행할 수 있다. 이 때, 광역 모델은 학습에 사용되는 데이터의 형태에 따라 매번 다르게 변경될 수 있다. 또한 연합 학습 기반 측위 단말(110)의 송신부(340)는 학습을 마친 자신들의 단말 가중치 정보를 서버(130)로 전송할 수 있다.
서버(130)는 수신된 단말 가중치 정보들을 각 단말(110)마다 학습시킨 데이터의 개수의 비율을 곱하여 평균을 취할 수 있다. 이 때, 광역 모델의 갱신 가중치 정보는 수학식3 및 수학식4와 같이 표현할 수 있다.
여기서, m은 학습 데이터들의 개수, H는 전체 학습 데이터들의 개수, t는 각 단말(110)들의 학습을 거치고 서버(130)로 돌아오는 광역 모델 epoch이다.
서버(130)는 단말 가중치 정보들의 평균을 통해 갱신 가중치 정보를 생성하는 1번의 epoch를 거친 후 첫 번째 학습을 완료할 수 있다. 이 때, 서버(130)는 단말 가중치 정보들을 평균을 구하는데 있어서, 수학식 3과 같이 각자 학습을 진행한 데이터 수를 적용하여 평균을 취할 수 있다. 이는 더 많은 데이터를 이용하여 학습한 사용자들에게 적절한 보상을 곱하여 평균을 취하기 위함이다.
또한, 서버(130)는 갱신 가중치 정보를 이용하여 초기의 광역 모델을 갱신하고, 갱신된 광역 모델은 각 단말(110)들이 이전에 진행한 epoch의 일련의 과정들을 다시 거치는데 사용될 수 있다. 이러한 과정들은 광역 모델의 갱신 가중치 정보가 수렴할 때까지 반복해서 학습을 진행할 수 있다.
도 7은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 단말과 서버의 동작을 설명하기 위한 흐름도이다.
도 7을 참조하면, 연합 학습 기반 측위 서버(130)의 모델 생성부(210)는 광역 모델을 생성할 수 있다(S810). 도 5 및 도 6을 참조하여 전술한 바와 같이, 생성된 광역 모델은 서버(130)로부터 둘 이상의 단말(110,120)으로 전송될 수 있다. 여기서, 단말의 개수는 본 개시의 일 실시 예에 한정되는 것이 아니며, 다수 개의 단말을 포함할 수 있다.
연합 학습 기반 측위 단말(110)의 정보 측정부(310)는 수신신호강도 정보를 측정할 수 있다(S820). 예를 들어, 정보 측정부(310)는 센서를 이용하여 RF신호를 수신하며, 수신된 RF 신호의 강도를 감지할 수 있다. 이 때 감지된 신호의 강도를 수신신호강도((Received Signal Strength Indication) 정보라 할 수 있다. 수신신호강도 정보는 Wi-Fi 통신일 경우 신호세기를 보통 dBm으로 표시하고 수치가 클수록 강도가 높음을 의미할 수 있다.
연합 학습 기반 측위 단말(110)의 단말 가중치 정보 산출부(330)는 서버(130)부터 수신된 광역 모델과 단말(110)이 측정한 수신신호강도 정보를 이용하여 단말 가중치 정보를 산출할 수 있다(S830). 예를 들어, 단말 가중치 정보 산출부(330)는 다양한 환경과 특성이 반영된 수신신호강도 정보를 광역 모델에 입력하여 학습할 수 있다. 단말 가중치 정보 산출부(330)는 광역 모델의 학습을 통해 출력된 단말(110)의 추정 위치 좌표와 실제 단말(110)이 위치하는 실제 좌표의 오차가 최소화되는 단말 가중치 정보를 산출할 수 있다. 따라서 단말 가중치 정보 산출부(330)는 광역 모델의 마지막 출력 값에서부터 단말 가중치 정보의 조절을 통해 오차를 줄여 정확한 출력을 할 수 있는 효과를 제공할 수 있다. 둘 이상의 단말(110,120)으로부터 산출된 각각의 단말 가중치 정보는 다시 서버(130)으로 전송될 수 있다.
연합 학습 기반 측위 서버(130)의 모델 갱신부(240)는 각 단말(110)이 학습한 데이터의 비율에 기초하여 수신된 단말 가중치 정보를 이용하여 갱신 가중치 정보를 산출할 수 있다(S840). 예를 들어, 모델 갱신부(240)는 모든 단말들이 보유한 전체 데이터와 각 단말(110)이 학습한 데이터 비율을 계산할 수 있다. 또한, 모델 갱신부(240)는 계산된 데이터 비율을 기반으로 서버(130)의 광역 모델의 가중치인 갱신 가중치 정보를 산출할 수 있다. 이는 각 단말마다 학습된 데이터의 개수가 다르고, 학습된 데이터가 많은 단말의 단말 가중치 정보의 중요도가 더 큼을 의미할 수 있다.
연합 학습 기반 측위 서버(130)의 모델 갱신부(240)는 생성된 갱신 가중치 정보를 이용하여 광역 모델을 갱신할 수 있다(S850). 즉, 모델 갱신부(240)는 각 단말로부터 수신된 단말 가중치 정보를 이용하여 공통된 광역 모델을 개선할 수 있다. 또한, 개선된 광역 모델은 다시 둘 이상의 단말(110,120)로 전송되고 각 단말들로부터 재학습하는 단계를 반복하면서 공통된 광역 모델을 성능을 발전시키고 공유할 수 있는 효과를 제공할 수 있다.
연합 학습 기반 측위 서버(130)의 모델 갱신부(240)는 갱신 가중치 정보의 수렴여부를 판단할 수 있다(S860). 예를 들면, 모델 갱신부(240)는 갱신 가중치 정보가 수렴하지 않는다고 판단되면, 단말(110)로부터 갱신된 광역 모델을 이용하여 데이터를 재학습하여 다시 산출된 단말 가중치 정보를 토대로 서버(130)의 갱신된 광역 모델을 재갱신할 수 있다.
반면에, 연합 학습 기반 측위 서버(130)의 모델 갱신부(240)는 갱신 가중치 정보가 수렴한다고 판단되면, 광역 모델을 더 이상 갱신하지 않을 수 있다. 따라서, 연합 학습 기반 측위 단말(110)은 마지막 갱신 가중치 정보에 기반한 광역 모델에 기초하여 단말의 추정 위치 좌표를 출력할 수 있다(S870).
도 8은 본 개시의 일 실시 예에 따른 연합 학습 기반 측위 시스템의 측위 오차를 설명하기 위한 도면이다.
도 8을 참조하면, 일 실시 예에 따른 연합 학습 기반 측위 시스템에서 측위 오차와 기존 머신 러닝 기반 측위 시스템에서 측위 오차 결과를 비교할 수 있다. 예를 들어, 연합 학습 기반 측위 시스템의 학습 모델((Federated Learnng) 구조는 기존 머신 러닝 기반 측위 시스템의 학습 모델(Centralized Learning) 구조와 매개변수를 동일하게 구성하여 비교할 수 있다. 구체적으로, 각각의 학습에 사용되는 데이터 베이스는 520개의 액세스 포인트에서 전송되는 신호로부터 각 단말이 측정한 수신신호강도 정보들을 입력 데이터로 할 수 있다. 또한, 측정되지 않은 수신신호강도 정보는 일정한 상수 c=100으로 설정할 수 있다.
서버(130)는 광역 모델을 기존의 머신 러닝 기반의 학습과 동일한 다층 신경망 알고리즘으로 구현하고, 각 단말(110)은 각각의 단말(110)들이 가지고 있는 수신신호강도 정보들이 갖는 특징을 얻기 위한 학습을 수행할 수 있다. 이 때 출력 레이블은 UTM좌표계(미터 단위)로 표현된 위도와 경도로 단말(110)들의 위치 좌표를 표시할 수 있고, 시뮬레이션에 사용되는 데이터 베이스로는 UJIIndoorLoc data set을 이용할 수 있다.
연합 학습 기반 측위 시스템(100)의 광역 모델에 사용된 매개변수들은 표 1과 같다.
연합 학습 기반 측위 시스템(100)은 서버(130)로부터 생성된 광역 모델과 단말(110)의 데이터로 계산을 진행하고, 이를 서버(130)의 광역 모델에 다시 반영할 수 있다. 또한, 서버(130)는 광역 모델에 다시 반영하기 위해 단말 가중치 정보에 가중치를 주어 평균을 취하는 방식으로 갱신 가중치 정보를 생성하고 새로운 광역 모델의 가중치에 적용할 수 있다. 예를 들어, 각 단말(110)은 각 단말(110)에서 수집한 데이터로 20번은 epoch 를 수행하고 15개의 단말들이 각자 학습시킨 데이터를 자신의 데이터 개수에 비례하여 단말 가중치 정보를 도출할 수 있다. 다만, 수행 횟수와 단말의 개수는 일 예로 이에 한정되지 않는다. 이러한 과정 동안 서버(130)와 단말(110)은 연결된 상태를 유지할 수 있다.
도 8을 참조하면, 연합 학습 기반 측위 시스템(100)의 결과는 데이터 프라이버스를 보존함과 동시에 측위 오차 또한 기존의 머신 러닝 기반 측위 시스템과 근접함을 확인할 수 있다. 예를 들어, 연합 학습 기반 측위 시스템(100)의 학습 결과는 오차 평균이 약 10m 정도로 기존의 머신 러닝 기반 측위 시스템의 학습 결과와 2~3m 차이가 발생하는 것을 확인할 수 있다.
이상에서 설명한 바와 같이 본 개시에 의하면, 연합 학습 기반 단말, 서버 및 시스템을 제공할 수 있다. 특히 수신신호강도 데이터 학습을 통한 연합 학습 기반의 머신 러닝 기법을 이용한 측위 방법을 제공할 수 있다. 구체적으로, 각 단말들이 얻은 수신신호강도 정보를 서버로 전송하는 대신에 각 단말로부터 학습된 가중치를 서버로 전송하여 측위함으로써, 학습 속도 향상과 개인 정보 유출을 보호하는 연합 학습 기반 측위 단말, 서버 및 시스템을 제공할 수 있다.
이상의 설명은 본 개시의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 기술 사상의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 또한, 본 실시 예들은 본 개시의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이므로 이러한 실시 예에 의하여 본 기술 사상의 범위가 한정되는 것은 아니다. 본 개시의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 개시의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.
Claims (14)
- 연합 학습 기반 측위 시스템을 구성하는 서버에 있어서,
수신신호강도 정보를 입력으로 하고 단말의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델을 생성하는 모델 생성부;
둘 이상의 단말로 상기 광역 모델 및 초기 가중치 정보를 전송하는 송신부;
상기 둘 이상의 단말 각각으로부터 상기 광역 모델의 학습을 통해 획득된 단말 가중치 정보를 수신하는 가중치 수신부; 및
상기 둘 이상의 단말 각각으로부터 수신한 상기 단말 가중치 정보와 상기 둘 이상의 단말 별 상기 광역 모델의 입력으로 사용된 상기 수신신호강도 정보 개수를 이용하여 갱신 가중치 정보를 생성하고, 상기 갱신 가중치 정보를 이용하여 상기 광역 모델을 갱신하는 모델 갱신부;를 포함하되,
상기 송신부는,
상기 갱신 가중치 정보를 상기 둘 이상의 단말로 전송하는 것을 특징으로 하는 서버. - 제 1 항에 있어서,
상기 모델 갱신부는,
상기 둘 이상의 단말 각각에 대한 상기 단말 가중치 정보, 상기 둘 이상의 단말 별 상기 광역 모델의 입력으로 사용된 상기 수신신호강도 정보 개수 및 전체 수신신호강도 정보 개수를 이용하여 상기 갱신 가중치 정보를 생성하는 것을 특징으로 하는 서버. - 제 2 항에 있어서,
상기 모델 갱신부는,
상기 둘 이상의 단말로부터 수신된 상기 수신신호강도 정보 개수를 모두 합하여 상기 전체 수신신호강도 정보 개수를 산출하고,
상기 둘 이상의 단말 각각에 대한 전체 수신신호강도 정보 개수 대비 수신신호강도 정보 개수 비율을 산출하며,
상기 단말 가중치 정보에 상기 수신신호강도 정보 개수 비율을 적용하여 상기 갱신 가중치 정보를 생성하는 것을 특징으로 하는 서버. - 제 1 항에 있어서,
상기 모델 갱신부는,
상기 갱신 가중치 정보가 수렴할 때까지, 상기 둘 이상의 단말 각각으로부터 수신되는 상기 단말 가중치 정보를 이용하여 상기 갱신 가중치 정보를 생성하는 과정을 반복하는 것을 특징으로 하는 서버. - 제 1 항에 있어서,
상기 단말은,
액세스 포인트로부터 전송되는 신호에 기초하여 상기 수신신호강도 정보를 측정하고, 상기 수신신호강도 정보를 이용하여 상기 광역 모델의 손실함수 값이 최소화되는 상기 단말 가중치 정보를 생성하며,
상기 손실함수 값은,
상기 수신신호강도 정보에 기초하여 추정된 상기 추정 위치 좌표와 상기 단말이 위치하는 실제 좌표의 오차 절대값 평균인 것을 특징으로 하는 서버. - 제 1 항에 있어서,
상기 단말은,
입력층과 출력층 사이에 하나 이상의 중간층으로 구성되는 상기 다층 신경망 알고리즘을 이용하되, 상기 수신신호강도 정보를 상기 입력층에 입력하여 상기 출력층의 활성 함수에 의해 상기 추정 위치 좌표를 추정하되,
상기 활성 함수는,
상기 수신신호강도 정보에 비례하는 상기 추정 위치 좌표를 출력하는 것을 특징으로 하는 서버. - 제 1 항에 있어서,
상기 단말은,
상기 갱신 가중치 정보를 상기 광역 모델에 적용하여 상기 단말 가중치 정보를 생성하여 전송하는 과정을 반복하는 것을 특징으로 하는 서버. - 연합 학습 기반 측위 시스템을 구성하는 단말에 있어서,
액세스 포인트로부터 전송되는 신호에 기초하여 수신신호강도 정보를 측정하는 정보 측정부;
서버로부터 상기 수신신호강도 정보를 입력으로 하고, 단말의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델 및 초기 가중치 정보를 수신하는 수신부;
상기 광역 모델에 상기 수신신호강도 정보를 입력하여 상기 단말의 추정 위치 좌표를 출력하되, 상기 광역 모델을 통한 상기 추정 위치 좌표와 상기 단말이 위치하는 실제 좌표의 오차가 최소화되는 단말 가중치 정보를 산출하는 단말 가중치 정보 산출부; 및
상기 단말 가중치 정보를 상기 서버로 전송하는 송신부를 포함하되,
상기 수신부는,
상기 단말 가중치 정보에 기초하여 갱신된 갱신 가중치 정보를 상기 서버로부터 더 수신하고,
상기 단말 가중치 정보 산출부는,
상기 광역 모델에 상기 갱신 가중치 정보를 적용하여 상기 오차가 최소가 되는 상기 단말 가중치 정보를 산출하는 것을 특징으로 하는 단말. - 제 8 항에 있어서,
상기 단말 가중치 정보 산출부는,
상기 광역 모델의 손실함수 값이 최소화되는 상기 단말 가중치 정보를 생성하며,
상기 손실함수 값은,
상기 수신신호강도 정보에 기초하여 추정된 상기 추정 위치 좌표와 상기 단말이 위치하는 실제 좌표의 오차 절대값 평균인 것을 특징으로 하는 단말. - 제 8 항에 있어서,
상기 단말 가중치 정보 산출부는,
상기 수신신호강도 정보를 입력층에 입력하여 출력층의 활성 함수에 의해 상기 추정 위치 좌표를 추정하되,
상기 활성 함수는,
상기 수신신호강도 정보에 비례하는 상기 추정 위치 좌표를 출력하는 것을 특징으로 하는 단말. - 제 8 항에 있어서,
상기 서버는,
상기 광역 모델을 사용하는 둘 이상의 단말 각각으로부터 상기 단말 가중치 정보 및 상기 광역 모델의 입력으로 사용된 상기 수신신호강도 정보 개수를 수신하고,
상기 수신신호강도 정보 개수를 모두 합하여 산출된 전체 수신신호강도 정보 개수 대비 상기 단말 별 상기 수신신호강도 정보 개수 비율을 산출하며,
상기 단말 가중치 정보에 상기 수신신호강도 정보 개수 비율을 적용하여 상기 갱신 가중치 정보를 생성하는 것을 특징으로 하는 단말. - 연합 학습 기반 측위 시스템에 있어서,
수신신호강도 정보를 입력으로 하고 단말의 추정 위치 좌표를 출력으로 하는 다층 신경망 알고리즘으로 이루어진 광역 모델을 생성하고,
둘 이상의 단말로 상기 광역 모델, 초기 가중치 정보 및 갱신 가중치 정보를 전송하며,
상기 둘 이상의 단말 각각으로부터 수신된 단말 가중치 정보와 상기 둘 이상의 단말 별 상기 광역 모델의 입력으로 사용된 상기 수신신호강도 정보 개수를 이용하여 상기 갱신 가중치 정보를 생성하는 서버; 및
상기 서버로부터 수신된 상기 광역 모델에 상기 초기 가중치 정보 또는 상기 갱신 가중치 정보를 적용하여, 상기 단말 가중치 정보를 생성하고,
상기 광역 모델 및 액세스 포인트로부터 전송되는 신호에 기초하여 측정된 상기 수신신호강도 정보를 이용하여 상기 단말의 추정 위치 좌표를 측정하는 단말을 포함하는 측위 시스템. - 제 12 항에 있어서,
상기 서버는,
상기 갱신 가중치 정보가 수렴할 때까지, 상기 둘 이상의 단말 각각으로부터 수신되는 상기 단말 가중치 정보를 이용하여 상기 갱신 가중치 정보를 생성하는 과정을 반복하는 것을 특징으로 하는 측위 시스템. - 제 12 항에 있어서,
상기 단말은,
상기 서버로부터 수신되는 상기 갱신 가중치 정보를 상기 광역 모델에 적용하여, 상기 단말 가중치 정보를 생성하여 전송하는 과정을 반복하는 것을 특징으로 하는 측위 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200149882A KR20220063923A (ko) | 2020-11-11 | 2020-11-11 | 연합 학습 기반 측위 단말, 서버 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200149882A KR20220063923A (ko) | 2020-11-11 | 2020-11-11 | 연합 학습 기반 측위 단말, 서버 및 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220063923A true KR20220063923A (ko) | 2022-05-18 |
Family
ID=81800560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200149882A KR20220063923A (ko) | 2020-11-11 | 2020-11-11 | 연합 학습 기반 측위 단말, 서버 및 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20220063923A (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102644669B1 (ko) * | 2023-08-14 | 2024-03-06 | 재단법인 서울디지털재단 | 학습 수렴속도 향상을 위한 연합학습 시스템 및 그 방법 |
KR20240142789A (ko) | 2023-03-22 | 2024-10-02 | 이화여자대학교 산학협력단 | 거리 기반 탐지에 따른 가중치의 거리를 이용하여 연합 학습의 성능을 개선하는 서버, 시스템 및 방법 |
-
2020
- 2020-11-11 KR KR1020200149882A patent/KR20220063923A/ko not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20240142789A (ko) | 2023-03-22 | 2024-10-02 | 이화여자대학교 산학협력단 | 거리 기반 탐지에 따른 가중치의 거리를 이용하여 연합 학습의 성능을 개선하는 서버, 시스템 및 방법 |
KR102644669B1 (ko) * | 2023-08-14 | 2024-03-06 | 재단법인 서울디지털재단 | 학습 수렴속도 향상을 위한 연합학습 시스템 및 그 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhou et al. | Bluetooth indoor positioning based on RSSI and Kalman filter | |
Zou et al. | Adaptive localization in dynamic indoor environments by transfer kernel learning | |
CN103874118B (zh) | WiFi室内定位中基于贝叶斯回归的Radio Map校正方法 | |
Vaghefi et al. | Cooperative received signal strength-based sensor localization with unknown transmit powers | |
KR20220063923A (ko) | 연합 학습 기반 측위 단말, 서버 및 시스템 | |
Phoemphon et al. | Optimized hop angle relativity for DV-hop localization in wireless sensor networks | |
Misal et al. | Indoor positioning system (IPS) Using ESP32, MQTT and bluetooth | |
Chen et al. | Calculation of weighted geometric dilution of precision | |
CN108459298A (zh) | 一种基于LoRa技术的室外定位方法 | |
Gupta et al. | Study of range free centroid based localization algorithm and its improvement using particle swarm optimization for wireless sensor networks under log normal shadowing | |
Li et al. | Unsupervised learning of indoor localization based on received signal strength | |
Xie et al. | BPNN based indoor fingerprinting localization algorithm against environmental fluctuations | |
Slijepcevic et al. | Characterization of location error in wireless sensor networks: analysis and applications | |
Middya et al. | Spatial interpolation techniques on participatory sensing data | |
Ciavarrini et al. | Smartphone-based geolocation of Internet hosts | |
Etiabi et al. | Federated learning based hierarchical 3D indoor localization | |
Dabbakuti et al. | Design and Development of Artificial Intelligence Enabled IoT Framework for Satellite Based Navigation Services | |
Tao et al. | CBWF: A lightweight circular boundary based WiFi fingerprinting localization system | |
CN110971323B (zh) | 传播路径模型地图系统及路径损耗确定系统 | |
Malik et al. | The indoor positioning system using fingerprint method based deep neural network | |
Diao et al. | Enhancing trilateration localization by adaptive selecting distances | |
Chen et al. | Neural network for WGDOP approximation and mobile location | |
Obaid et al. | Internet of things and wireless sensor networks for environmental noise sensing: Issues and challenges | |
Wu et al. | Infrastructureless signal source localization using crowdsourced data for smart-city applications | |
Sangrit et al. | Distance estimation between wireless sensor nodes using RSSI and CSI with bounded-error estimation and theory of evidence for a landslide monitoring system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal |