일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- database
- 알고리즘
- 유니온파인드
- 자바
- 싸피
- DP
- 백준
- BFS
- 다익스트라
- JUnit
- 코드트리
- 다시보기
- 그리디
- 코딩테스트실력진단
- Spring
- Union Find
- 코테
- 완전탐색
- 항해플러스ai후기
- 코딩테스트
- JPA
- 항해플러스ai
- 그래프
- SSAFY
- 알고리즘기본개념
- 항해솔직후기
- DFS
- Java
- 트러블슈팅
- SWEA
- Today
- Total
HwangHub
패스트캠퍼스 환급챌린지 1일차 : 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 초격차 패키지 Online. 강의 후기 (1) 본문
패스트캠퍼스 환급챌린지 1일차 : 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 초격차 패키지 Online. 강의 후기 (1)
HwangJerry 2025. 3. 5. 21:47
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
패스트캠퍼스 링크: https://bit.ly/4hTSJNB
오늘 공부 시작은 오후 7시 경, 퇴근은 못했지만 이미지 빌드하는 등의 짬짬이 아무것도 할 수 없는 시간부터 슬슬 시작했다.

마친 시각은 9시 20분, 기록해야 할 시간이 필요하기 때문에 멈추고 글을 작성하는 중이다.

지난 주에 part 1을 열심히 들었고, 이번 주부터 본론으로 들어가고 있다. Part 1에서는 연구용 ML vs. 상품용 ML을 비교하며 우리가 이번 코스를 통해 MLOPS를 공부할 때 어떤 부분에 중점을 두고 파이프라인을 구성해야 하는지를 알 수 있었다.

Part 1을 공부하면서 AI 공정성이 필요하다는 이야기를 이해할 수 있었다. 무슨 말인고 하니, 머신러닝 / 딥러닝 모델은 모두 데이터를 기반으로 '학습'이라는 과정을 거쳐 추론 그래프를 완성하는 형식으로 구성된다. 즉, 개발자가 직접 연산 로직을 구성하는 방식과 달리, 연산 로직을 데이터를 기반으로 모델이 완성해가는 방식이다. (음... 디테일하게 파고 들면 아 다르고 어 다를 수 있지만, 러프하게는 모두 동의할 수 있다고 생각한다.)
그래서 학습 데이터에 편향이 존재하게 되면 모델의 추론 로직에도 편향이 발생할 수 있다. 따라서 이를 방지하기 위해 데이터 전처리 단계에서 민감할 수 있는 feature에 대하여 마스킹을 하는 등의 기법을 바탕으로 학습에 편향이 생기지 않도록 처리할 수 있도록 fairness pipeline을 구성하는 것이 실제 production AI에서는 중요하다고 한다.
대충 '공정성'이라는 말만 들었을 때는 응당 "그래, 중요하지." 라고 말할 수 있지만, "근데 그렇게 중요해? 정확도나 성능 뭐 그런게 중요하지 않나?" 라고도 의문이 들 수 있다고 생각한다. 일단 내가 그랬다. 자, 예를 들어 금융권에서 신용 평가 모델을 운영한다고 가정해 보자. 만약 특정 인종이나 성별에 따라 차별적인 결과가 나온다면 이는 법적 문제로 이어질 수도 있으며, 기업의 신뢰도에도 큰 타격을 줄 수 있다. 따라서 AI 모델을 운영하는 기업이라면 이러한 공정성을 신경 써야만 한다. 또한 최근 많은 기업이 AI 모델을 채용 프로세스에 적용중인데 만약 특정 성별에게 높은 점수를 주게끔 학습이 된 모델을 사용한다면, 이 또한 논란을 피할 수 없을 것이다.
이번 수업을 들으며 AIF360 이라는 라이브러리를 바탕으로 간단한 Fairness pipeline을 구성해 보았다. 아래는 내가 만든 '공정성 파이프라인'의 일부 캡쳐본이다.
AIF360을 활용하면서 특히 흥미로웠던 점은, 단순히 민감한 feature를 제거하는 방식만이 아니라 다양한 공정성 지표를 제공하고, 이를 개선할 수 있는 여러 가지 방법을 지원한다는 점이었다. 예를 들면, Disparate Impact Remover, Reweighing 기법을 활용하면 모델 학습 전에 데이터의 편향을 줄이는 처리를 할 수 있고, Post-processing 기법을 활용하면 모델이 생성한 결과를 조정하는 방식으로 공정성을 개선할 수도 있다.
물론, 이 과정에서 완벽한 해결책이란 없다는 점도 명확히 알게 되었다. Fairness를 높이는 과정에서 Accuracy가 희생되는 경우도 있고, 반대로 Accuracy를 최우선으로 하다 보면 Fairness가 떨어지는 경우도 있다. 결국, 최적의 균형점을 찾는 것이 관건이며, 이 과정에서 도메인 전문가와 협업하는 것이 필수적이다.
또한, AIF360을 적용하는 과정에서 데이터 전처리 단계가 얼마나 중요한지도 다시 한번 깨닫게 되었다. 편향이 포함된 데이터를 무작정 모델에 넣는 것은 리스크가 클 수밖에 없다. 따라서 데이터 분석 단계에서부터 어떤 feature가 공정성 문제를 일으킬 가능성이 있는지, 이를 어떻게 조정할 것인지에 대한 고민이 필요하다.
AI를 조금씩 공부하면서 신기하다고 느끼는 점은, AI 모델 개발에서 중요하게 봐야 하는 점이 알고리즘 성능 최적화가 아니었다는 점이다. 모델이 실제 환경에서 어떻게 작동할 것인지, 그리고 어떤 영향을 미칠 것인지를 고려하는 것이 진짜 실력이라는 생각이 든다. Fairness를 비롯한 Responsible AI의 개념은 앞으로 더욱 중요해질 것이며, 나 역시 이에 대한 이해를 쌓아야 할 필요성을 느끼게 되는 수업이었다.