
이번 글에서는 Nilm 기술의 개념에 대해 설명하고, 심화적인 이해에 필요한(필요할지도 모르는?) 교류전력 개념을 설명합니다. 교류전력 파트의 경우 제가 아는 모든 지식을 최대한 쉽게 풀어 설명해 보았습니다.
목차
- Nilm 기술이란 무엇인가?
- Non-intrusive 의 장점
- NILMTK 라이브러리
- 교류회로의 기본 지식
- 교류회로 지식이 왜 필요한가?
Nilm 기술이란 무엇인가?
Nilm 이란, Non-intrusive Load Monitering의 약자로 번역하면 '비침입형 부하 모니터링'이라고 합니다. 한국에서도 연구가 어느 정도는 이루어지고 있는 분야인데 굳이 한글 명칭을 쓰는 것 같진 않고 Nilm 혹은 NILM이라는 표기로 주로 쓰이는 것 같습니다.
위키피디아 문서가 존재하기는 한데, (한국어는 없고 영어밖에 없음ㅠㅠ) 대부분이 특허 원문 관련 설명이라 한 번에 이해하기는 어렵습니다.
https://en.wikipedia.org/wiki/Nonintrusive_load_monitoring
Nonintrusive load monitoring - Wikipedia
From Wikipedia, the free encyclopedia Electric energy use monitoring technique Nonintrusive load monitoring (NILM), nonintrusive appliance load monitoring (NIALM),[1] or energy disaggregation[2] is a process for analyzing changes in the voltage and current
en.wikipedia.org
핵심은 간단합니다. 그리고 이해하기도 쉽습니다.

Nilm 기술이란 '전체 전력반에서 각 가전기기의 전력 사용 상태를 판단하는 기술'입니다. 좀 더 자세히 설명하자면, 가정의 총 전력 사용량을 하나의 센서로 측정 후, 이를 개별적인 가전기기의 전력 사용량으로 분해하는 기술입니다.
간단히 정리하자면 Nilm의 흐름은 다음과 같습니다.
Input → 전체 전력량 측정 기기 하나
Output → 개별 전자기기의 ON/OFF 상태
기술 자체는 1992년 George W.Hart에 의해 처음 제시되었고 이에 대한 특허가 존재합니다.
https://patents.google.com/patent/US4858141
US4858141A - Non-intrusive appliance monitor apparatus - Google Patents
14. A method for non-intrusive measurement of energy usage and operating circuit load characteristics of each of a plurality of individual electric units coupled to an electrical power circuit in a facility, which power circuit receives electrical power fr
patents.google.com
특허 기술은 클러스터링 기계학습 기반 기술인데, 대략 2000년 이후 다양한 도구를 활용한 기계학습 및 딥러닝 기반 연구가 진행 중입니다. 최근 연구 동향을 살펴보면, 대략 2010년대(2015~)부터 활발한 연구가 진행 중입니다.
더 자세한 최근 연구 동향 관련 내용은 다음 글 '(2)-데이터에 대한 이해'에 정리되어 있습니다.
Non-intrusive의 장점
Nilm 기술에 대해 더 자세히 이해하기 위해,
Non-intrusive Load Monitering에서의 Non-intrusive에 대해 알아봅시다.
Nilm 기술은 기본적으로 전력량 센서 데이터를 통해 진행되는 기술입니다. 이때의 '센서' 중에서는 Intrusive Sensor가 있고 Non-intrusive Sensor가 있습니다.
굳이 번역하자면 침입형 센서와 비침입형 센서가 되겠지만, 번역된 용어는 잘 안 쓰이는 것 같습니다..

설명을 위한 사진을 찾아봤는데 저런 사진들밖에 없네요..
Intrusive와 Non-intrusive 센서의 차이점은 말 그대로 '시스템 안에 침입하는 센서를 두느냐 침입하지 않는 센서를 두느냐'가 되겠습니다. 밑의 예시를 보면 쉽게 이해 가능합니다.
Intrusive Sensors Examples:
- Thermocouples placed inside engines to measure temperature. → 엔진 안의 열감지 센서 설치
- Flow sensors inserted into a pipe. → 파이프 안에유량 센서 설치
Non-intrusive Sensors Examples:
- Infrared thermometers → 적외선 열감지 센서
- Ultrasonic flow meters clamped outside pipes. → 파이프 외부에 유량감지 센서 설치
이를 우리가 하려는 전력량 예측에 적용하면 다음과 같습니다.

위 사진은 밑의 영상에서 가져온 건데, Nilm에 대해 제일 잘 설명해둔 편이니 참고하시면 좋을 것 같습니다.
https://www.youtube.com/watch?v=oJIwbn7ozeo&t=31s
NILMTK 라이브러리
이 Nilm 기술을 위한 라이브러리인 NILMTK: Non-intrusive Load Monitoring ToolKit 도 존재합니다. 저의 경우에는 해당 라이브러리를 사용하지 않았지만, 간단하게 소개해보고자 합니다.
https://github.com/nilmtk/nilmtk
GitHub - nilmtk/nilmtk: Non-Intrusive Load Monitoring Toolkit (nilmtk)
Non-Intrusive Load Monitoring Toolkit (nilmtk). Contribute to nilmtk/nilmtk development by creating an account on GitHub.
github.com

github의 설명에 따르면 다음과 같이 여러 데이터셋 및 전력량 분해를 위한 기본적인 알고리즘을 제공하는 것을 확인할 수 있습니다. 라이브러리를 활용할 경우 대용량 데이터를 직접 다운로드 받아서 직접 분석하는 것보다 훨씬 더 간단하게 분석 및 모델링을 할 수 있다는 장점이 존재합니다.

이 NILMTK 라이브러리가 제공하는 전력량 분해 알고리즘은 다음과 같습니다.
보시면 가장 초기 모델인 Hart의 1985년 모델부터 초기 연구가 활발히 진행되었던 FHMM 모델 등등을 제공하고, Zhong의 베이지안 모델이나, Jake Kelly의 Neural NILM 모델까지 제공하고 있는 걸 확인 가능합니다.
(저의 경우는 기본 제공 모델이 아닌 다른 모델을 시도하였기 때문에, NILMTK 라이브러리는 사용하지 않았습니다.)
교류회로의 기본 지식
흔히들 중학교 혹은 고등학교 때 배웠을 만한 회로 지식들은 대부분 직류회로 지식들입니다.
두 개 공식만 알면 됩니다. 전압(V)공식과 전력(P) 공식입니다. 여기서 I는 전류(current)이고 R는 저항입니다.

여기서 우리가 주목해야 할 것은 전력입니다. 전력은 영어로 Power인데, 물리학에서의 Power는

으로 정의됩니다. Power는 '전력'으로도 번역되지만 '동력'으로도 번역됩니다.
동력이든 전력이든, Power라는 개념은 '시간당 에너지 전달량' 즉 에너지 효율의 의미를 담고 있는 물리량이기에 물리학에서 어느 분야이든 중요하게 다뤄지는 개념 중 하나입니다. Nilm에서 전력량 분석이 기본적으로 전력 기준으로 진행되기 때문에 이에 대한 개념을 명확히 할 필요가 있다고 생각했습니다.
위에서의 설명은 직류회로 기준의 설명입니다.
여기서 함정은 우리가 사용하는 거의 모든 회로는 교류회로라는 점입니다. 따라서 모든 공식이 조금씩 다르게 표현됩니다.

교류 전압은 기본적으로 사인(sin)형태의 전압을 공급합니다. 이는 회로에 흐르는 전압이 시간에 따라 크기와 방향이 변한다는 뜻입니다. 그리고 이에 따라 전류도 사인형태로 흐르게 됩니다.
sin 함수를 사용한 복잡한 공식으로 전압과 전류를 표현할 수도 있겠지만 공식은 그닥 중요한 것이 아니니 넘어가겟습니다.
일상생활에서 사용되는 대부분의 회로에는 에너지를 순간적으로 저장하거나 방출하는 부품(= 인덕터 L 혹은 축전기 C의 경우를 말합니다.) 이 포함되어 있습니다. 이로 인해 흐르던 사인파의 전압과 전류 사이 위상차가 (즉, 약간의 시간 차)가 발생하게 됩니다. 이떄의 위상차를 그리스 문자 Φ(phi)로 표현하고, 이 위상차에 코사인값 cos(Φ)를 역률이라 합니다.
원래 전력은 P=IV였는데 회로에서 I와 V의 위상차가 생겼습니다.
위상차가 생겼다는 건, 위에서의 설명과 같이 전압과 전류 사이의 시간적인 흐름의 차이가 생겼다는 뜻입니다.

여기서 유효전력과 무효전력이라는 새로운 개념이 등장합니다.
이 부분을 이해하려면 전압과 전류를 벡터(와 비슷한 무언가)로 바라보아야 합니다.
(정확히 말하자면 벡터가 아니라 phasor라는 개념입니다. 그런데 우리는 전기전자과 아니니까요^^)
핵심은 '전압과 전류는 같은 방향(더 정확히 말하자면, 같은 '위상')으로 흐를 떄만 유효하고, 그렇지 않으면 무효하다.' 입니다.
전압과 전류가 같은 방향(위상)으로 흐를 때의 전력을 유효전력(active power, P), 그렇지 않을 때의 전력을 무효전력(reactive power, Q)라 합니다. 전압과 전류의 위상적인 차이를 Φ로 정의하였으니 '같은 방향'은 cos(Φ) (즉, 위에서 정의한 역률)로 표현 가능합니다.

그리고 이 둘의 벡터합을 피상전력(apparent power, S)라 합니다.

교류회로 지식이 왜 필요한가?
Nilm 기술을 설명하다가 갑자기 교류회로 지식에 대해 길게 설명했습니다. 이렇게까지 교류회로에 대해 자세히 설명한 건 도메인 지식의 필요성 차원도 있지만, 기본적으로 Nilm의 연구 과정에서 유효전력(active power)와 무효전력(reactive power) 그리고 피상전력(apparent power)에 대한 지식이 어느정도 필요하기 때문입니다.
일례로 제가 다루려는 데이터는 다음과 같이 생겼습니다.

데이터의 열(column)들을 살펴보면, 순서대로 유효전력(active power), 전압(voltage), 전류(current), 주파수(frequency), 피상전력(apparent power), 무효전력(reactive power), 역률(power factor), 위상차(phase difference), 전류위상(current phase), 전압위상(voltage phase) 순입니다.
데이터 처리 과정에서 어느 열이 필요하고 어느 열이 필요하지 않은지, 특정 열이 다른 열과 어떤 연관성이 있는지 파악하기 위해 교류회로 지식이 필요하다고 판단하였습니다.
위에서 Nilm 기술에 대해 다음과 같이 정리하였습니다.
Input → 전체 전력량 측정 기기 하나
Output → 개별 전자기기의 ON/OFF 상태
여기서 변수가 될 수 있는 Feature들을 포함해 정리하면 Nilm 기술을 다음과 같이 설명 가능합니다.
Input → 전체 전력량 측정 기기 하나
Input에서의 변수들 → 유효전력, 무효전력, 피상전력 등의 Feature들
Output → 개별 전자기기의 ON/OFF 상태
지금까지 Nilm 기술에 대한 간단한 소개와 교류전력에 대한 기본 지식에 대해 정리하였습니다.
다음 글에서는 Nilm 을 다루기 위한 데이터에 대해 정리해두었습니다.
https://powderblue0.tistory.com/15
[Nilm] (2)-데이터에 대한 이해
지난 글에 이어 Nilm을 이해하기 위한 기초지식들을 정리하겠습니다. 지난 글에서는 Nilm 기술이 무엇인지 그리고 회로 관련 기초지식에 대해 설명하였고 아래 링크 들어가시면 확인 가능합니다.
powderblue0.tistory.com
'Nilm 및 전력예측' 카테고리의 다른 글
| [Nilm] (6)-UK-DALE 데이터 (0) | 2026.01.31 |
|---|---|
| [Nilm] (5)-1D CNN 베이스라인 모델 (1) | 2026.01.30 |
| [Nilm] (4)-FFT와 이상탐지 (0) | 2026.01.28 |
| [Nilm] (3)-데이터 선정과 전처리 (0) | 2026.01.25 |
| [Nilm] (2)-데이터에 대한 이해 (2) | 2026.01.25 |