논문 전문 : https://ieeexplore.ieee.org/document/9445018
[출처] Z. Ye, J. Yu and L. Mao, "Multisource Domain Adaption for Health Degradation Monitoring of Lithium-Ion Batteries," in IEEE Transactions on Transportation Electrification, vol. 7, no. 4, pp. 2279-2292, Dec. 2021, doi: 10.1109/TTE.2021.3085430.
※ The picture and content of this article are from the original paper.
This article is more of an intuitive understanding than academic analysis.
[논문 요약]
Multisource Domain Adaption for Health Degradation Monitoring of Lithium-Ion Batteries
올해 Nature에 Multi-Domain Adaption 관련된 논문도 하나 나왔었는데요,
그 논문에서도 레퍼런스로 남긴 2년정도 된 논문입니다.
Working Condition이 다른 경우들에 대해 Domain이 다르다고 가정하고, Domain Adaption을 하는방식입니다.
예를들면, 1C/2C/3C/5C 충전데이터를 학습시켜서, 4C일때를 예측해봐 이런식입니다.
Transfer Learning이라고 불리긴 하지만, 세부적으로는 배터리는 화학적 복잡도 때문에 일반적으로 DaNN(Domain adversarial Neural Network)을 많이 사용하는것 같습니다.
본 논문은 이러한 방식으로 기존 데이터만으로 새로운 Domain 데이터에 대해 HI(본 논문에서는 SOH를 HI라고 부름.)를 추정하는 연구입니다.
Contents
본 논문은 Figure가 공개되지 않았습니다.
제가 생각하기에도, 이 논문은 Figure가 전부이기 때문입니다.. 공짜로 풀고싶진 않았겠죠..
따라서, 제가 다른 곳의 이미지를 활용해서 간략하게 정리를 할것이긴 하지만, Domain Adaption Battery 쪽으로 연구를 해보고싶으시다면 원논문을 읽어보심을 추천드립니다.
본 논문에서 제안하는 Transfer Learning에 대한 방식은 다음과 같습니다.
입력데이터(Source Domain/Target Domain)에 대해 동일한 Network를 두고 이를 Feature Extractor라고 부릅니다.
※Source Domain : 기존에 가지고 있는 데이터, Target Domain : 추정하고자 하는 데이터
즉, Source/Target Domain 둘다 동시에 사용하는 네트워크이기때문에, 두 데이터의 특징을 모두 학습합니다.
Feature Extractor의 결과물에 대해, Domain Adaption을 할수있도록 MMD Loss, Domain Classifier(DaNN)네트워크를 설계합니다.
Source Domain 데이터에 대해서만 완벽한 정보를 가지고있으니, 이에 대해 학습을 하고, Source Domain과 Target Domain의 분포 유사도를 학습하기 위해 MMD라는 네트워크를 설계하여 학습하는 방식입니다.
즉, 정리하자면 이렇습니다.
Source Domain 데이터와 Target Domain 데이터를 각각 Feature Extract Network에 통과시킵니다. (단, 파라미터 동일)
그리고, 그렇게 나온 데이터들을 두갈래로 나누어 설계하는데
첫번째로, Specific Feature Extractor라고 하는곳에 입력으로 넣습니다.
이 네트워크는, 각각의 Source Domain과 Target Domain데이터를 입력으로 하여 SOH를 학습합니다.
두번째로, MMD란 데이터의 분포 유사도를 측정하는 기술입니다.
GAN에서 사용되는 KL-Divergence와 같이 데이터의 분포를 추정하고 분포간 차이를 추정하는 기술입니다.
이를 통해, 각 Source Domain과 Target Domain의 MMD Loss를 추가하게되면, 각 도메인간 분포 차이를 최소화하는 방향으로 학습됩니다. 저자는 이 부분에서 Domain Adaption 효과가 난다고 합니다.
즉, Feed Forward로 흘러들어갈때는 상기와 같이 됩니다.
그리고 Error Back-propagation을 할때는 하기와 같이 됩니다.
즉, Source Domain의 SOH 데이터에 대한 Back Propagation과 더불어, Source Domain과 Target Domain의 분포 유사도에 대한 MMD Loss도 Back Propagation으로 흘러들어갑니다.
그리고, 가장 중요한 DaNN에 대한 테크닉이 있습니다. 위 그림에는 포함되지 않았는데, Domain Classifier라는것을 통해 Loss값을 하나 더 추가하여 학습합니다.
DaNN의 컨셉은 Adversarial Network, 즉 GAN과 비슷합니다. 이게 무슨의미냐면, Target Domain과 Source Domain을 넣어 학습할때 Domain을 구분하는 Classificaation 모델을 만들고, 이 것의 Loss를 Maximize 하는 방향으로 학습합니다.
일반적으로는 Loss를 Minimize하는 방향으로 학습하는데요, 즉 이를 통해 Classification을 제대로 할수없게만들고 Domain간 구분이 안되는 방향으로 Back Propagation을 해서 학습이 됩니다. 그러면 결국 Domain간 구분성이 모호해져 Domain Adaption에 도움을 준다는 논리입니다.
위 과정을 iteration 하다보면, Feature Extractor Network가 두 다른 도메인간의 유사성도 학습하고, 이를 통해 SOH도 추정할수있게 된다는 연구입니다.
이 네트워크를 어떻게 설계했는지, 1D-CNN Network와 Bi-GRU Network를 병렬로 연결하여 시간/공간적 Feature를 모두 Extracting하도록 했는지.. 이런 테크닉들도 있지만, 이런건 논문을 보면 직관적으로 이해하실수 있고 부차적인것이기에, 전체적인 논문의 흐름은 상기와 같습니다.
배터리의 Domain Adaption에 대해 깊게 생각해보신다면, 가장 중요한것은 바로 "Data"이고 이 논문을 읽었을때 직관적으로 이해가 되지 않는 이유도 그것때문일것입니다.
① 학습하는데 Target Domain 데이터를 왜써?? Target Domain SOH를 알고있는데 왜 다시 추정하겠다는거야??
이런 의문이 드신다면, 정확하게 본질을 꿰뚫으신것입니다.
이 논문은 불친절하기때문에, Domain Adaption 분야에 대한 사전지식 없이 보면 이런 질문이 당연히 생길수밖에없습니다.
명확하게 말씀드리자면, Source Domain은 SOH 100~70%데이터를 모두쓰고, Target Domain은 100%시점의 데이터만 사용합니다.
이를 통해, Target Domain은 비록 SOH 100% 데이터밖에 없지만, Source Domain과의 비교학습을 통해 SOH 70%까지 추정할수있게 됩니다. 이게 DaNN이라는 테크닉의 일반적인 컨셉입니다.
본 논문에서는 "Working Condition"이 다른것(전류 부하/외기온)을 다른 Domain으로 가정했기에,
예를들면 1C/2C/3C/5C 충전데이터 SOH 100%~70%모두 가지고있을때(Source Domain) 4C SOH 100%데이터만 학습해서 4C충전시 다른 SOH를 추정해볼수있을까? 라는 방식입니다.
정리하자면, Source Domain데이터는 전 SOH에 대해 다 학습하지만, Target Domain은 100%조건일때의 데이터만 학습합니다.
② Source/Target Domain Data의 실험조건이 동일해야 하는거아니야??
배터리 엔지니어라면 잘아시겠지만, 전류/온도조건에따라 동일한 SOH라도 과전압이 달라져 전압이 달라지는 등 실험 조건을 완벽하게 동일하게 통제해주지 않으면 변수가 너무 많이 발생한다는 문제점이 있습니다.
제가 Domain Adaption을 배터리에 적용하여 연구하는 주제는 다르지만, 본 논문처럼 "Working Condition"을 이종 도메인의 기준으로 삼는 경우, 이외 조건들에 대해서는 모두 통일해주어야합니다.
즉, Source/Target을 구분하는 조건을 제외하고는 모든 다른 조건은 동일해야합니다. 따라서, 이런 이유때문에 EV같은 Dynamic 동작 필드에서는 사용이 불가능합니다.
ESS정도는 시도해볼수있겠네요
Results
이정도 수준의 논문이면, 이게 배터리 논문인지 AI 논문인지에 대해 혼동이 오는 정도입니다.
많은 배터리에 AI를 접목하는 연구가 그냥 Regression의 용도로, Tool로 쓰는 느낌이 강한데, 이런식으로 배터리에 아주 Deep한 부분을 탐구하고, AI를 적용하고 그에맞는 네트워크를 새로 설계하고... 이렇게 되기때문입니다.
따라서, 본 논문은 배터리/AI 모두 일정 이상 경험이 있지않으면 완벽하게 이해하기는 어려운 논문입니다.
본 논문의 Figure가 공개되어있지않아, 위에 제가 그려가며 간략하게 작성했지만
원 논문의 내용 및 디테일한 부분까지 따지면 아주 빙산의 일각에 불과한 정도의 정리입니다.
배터리 Domain Adaption에 관심있으신분은, 이 논문을 직접읽어보시는것을 권장드립니다.
참조
[1] Z. Ye, J. Yu and L. Mao, "Multisource Domain Adaption for Health Degradation Monitoring of Lithium-Ion Batteries," in IEEE Transactions on Transportation Electrification, vol. 7, no. 4, pp. 2279-2292, Dec. 2021, doi: 10.1109/TTE.2021.3085430.
[2] https://arxiv.org/abs/1505.07818
댓글