Home 데이터 윤리를 위한 데이터 추상화 개요
Post
Cancel

데이터 윤리를 위한 데이터 추상화 개요

이 글을 보시는 분들에게 ‘데이터’의 필요성에 대해 굳이 설명해야 할 필요가 있을까. 이제는 ‘데이터’라는 단어는 거의 일상용어에 가깝다. 데이터는 많은 곳에서, 다각도로 더욱 더 자세하게 활용되고 있고, 사람들은 데이터를 통해서 더욱 더 많은 것을 알기를 원하며, 이를 통해서 많은 것들을 판단하려고 한다. 그리고 판단을 위한 근거로, 혹은 호기심으로 더욱 더 자세히 데이터를 들여다 보려고 한다. 그리고 이를 위해서 데이터는 최대한 많이 기록하고 저장해 두려고 한다.

물론 분석가의 입장에서는 데이터는 상세하게 잘 남아있을 수록 좋다. 그러다보니 사생활 침해, 정보 보안, 개인 정보 활용 이슈 등의 여러 데이터 관련 윤리 문제가 대두되게 되었고, 데이터를 ‘잘’ 쓰는 만큼 데이터를 ‘바르게’ 사용하는 것에 대한 이슈도 점차 커지고 있다. 또한 데이터 윤리 관련 문제는 많은 사람들이 흔히 걱정하는 ‘인공지능의 윤리’, ‘로봇 윤리’보다도 훨씬 현재 진행형이다. 다만 당장 사용해야 하는 것에 대해 어렵기도 하고 귀찮기도 하기 때문에 많은 곳에서는 이에 대한 화두를 피하고 싶어한다. 하지만 그러기에는 매우 중요한 부분이며, 처음에 제대로 된 규칙과 방안을 가져가지 않으면 나중에 큰 사고로 돌아올 수 있는 부분이기도 하다.

이에 대해서도 이미 다양한 고민과 연구가 진행되어 왔으며, 이 중 가장 기본적인 주제 중 하나가 ‘데이터 추상화’다.


전산 전공인 사람들은 ‘데이터 추상화’ 라는 말을 접해보았을 지도 모르겠다. 일반적으로 데이터 추상화(혹은 자료 추상화, data abstraction) 라고 하면, 데이터 구조 및 프로그램 구조를 현실 세계의 프로세스를 개념화해서 객체, 데이터, 기능 등을 정의하는 것을 의미한다. 그리고 기술과 학문의 발달로, 이런 추상화 및 복제가 더욱 고해상도로 이루어지고 있다. 이 때 객체나 기능의 경우 현실의 윤리적 문제가 있는 경우 그 것이 정보공간(Infosphere)으로 그대로 복제되어 오는 문제가 발생한다. 다만 데이터의 경우에는, 이런 현실의 윤리 문제 복제 뿐만 아니라, 현실에서 어떤 문제가 없더라도 ‘기록’ 및 ‘정보’로 사용되게 되는 데이터의 경우 이를 활용하는 데에 있어서 문제가 발생하게 된다. 이런 측면에 대해서 다루는 것이 ‘데이터 윤리’다. (사실 이에 대해서는 정보 윤리 쪽에서 다루는 내용이 크지만 이 부분은 겹치는 것으로도 보이고 논문 등에서 모호하게 사용하고 있으니 유사하게 다루고 있다고 생각한다.)

데이터 윤리에서 이런 데이터 추상화를 다룰 때 하나의 관점으로 데이터 추상화 단계(Level of Abstraction, LoA) 를 이야기한다. 이 때 기본적인 데이터 추상화 단계인 개념적 모델 – 물리적 모델 등을 벗어나지는 않는다. 기존의 데이터 추상화의 경우 정보 단계에서 데이터 단계로, 이후 컴퓨터를 사용한 정보 처리의 시대로 오면서 컴퓨터 중심 정의 단계로 진행되어 왔다. (이 안에서도 세부적으로 달라지는 내용이 있지만 이에 대해서는 생략한다.) 그리고 데이터 윤리 등의 문제로 개인 정보 및 데이터의 비식별화, 이에 대응하는 데이터의 투명성, 신뢰성 등의 이슈가 등장하면서 기존의 데이터 추상화 단계보다 세부적인 데이터 추상화를 이야기하게 되었다.

이런 경우는 해상도 조절의 문제로, LoA를 추상화 정도(Gradient of Abstraction, GoA) 로 표현한다. GoA를 정의하여 동일한 LoA 상에서도 데이터의 해상도를 보다 섬세하게 조절하면서 데이터를 사용할 수 있다. GoA는 어떤 구현 방법이나, 알고리즘, 혹은 어떤 규칙을 사용해서 해당 데이터의 LoA를 맞출 것인지에 대한 설명이다. 여러 개념이 있지만, 이를 실제에 적용할 때는 어떤 조직에서는 어느 레벨까지 어떻게 표현된 데이터를 보면 어떤 업무를 할 수 있고 어떤 문제를 예방할 수 있다, 라고 할 수 있는가 정도로 풀기만 해도 사실 실제로 사용하는 데에는 크게 무리가 없을 것이다.

이를 실제로 적용하는 것은 어려운 일은 아니다. 흔히 이와 관련해서 실제로 많이 사용하고 있는 방법은 마스킹이나 일부 항목 변조나 제거 등일 것이다. 하지만 이런 방식은 보통 문제나 감사가 발생할 때 급하게 적용하는 것이고, 사실은 데이터 기록 시, 혹은 데이터 모델링을 할 때에 미리 고려되어 있어야 하는 부분이다. 데이터 모델링의 경우에는 이를 일반화해서 논리적 모델링을 하고, 이를 기반으로 데이터 적재 시에 집계 및 암호화 등을 적용하는 것이 바람직하다. 하지만 대부분의 경우 이런 식으로 처음부터 데이터 모델링을 적용했을 리 없다. 그리고 사실 데이터 모델을 뜯어고치는 것은 서비스와 데이터를 새로 구성하는 것 만큼이나 어려운 작업이다-거의 불가능에 가깝다. 다만 이런 경우라고 하더라도 현재 데이터의 접근 권한과 데이터의 형태에 대한 모델링을 역으로 해 보고 이를 가능한 한 일반화하고, 거기서 각 데이터의 추상화 정도를 정의하고, 이를 수정하는 식으로 데이터를 조금씩 개선해 나가는 방식을 적용하는 것도 하나의 방법이 될 수 있을 것이다.

이 때 고려해야 할 것은, 앞서 설명한 것처럼 그 GoA가 모든 목적에 부합되어야 하는 것이다. 보통 목적은 데이터를 남기고 사용하는 조직과 서비스의 구조를 명확히 반영해야 하고, GoA가 적용된 데이터는 이 데이터를 사용하는 일에 대해서 충분한 설명력을 가지는 것으로 나타난다 (설명력의 경우는 설명력 정도(Level of Explanation, LoE)를 따로 정의하게 되는데, 이에 대한 설명 역시 이 글에서는 생략하도록 한다). 또한 이런 것이 데이터를 남기고 관리하는 데 있어서 구현 상에서도 문제가 없어야 할 것이다.


이 글에서는 우선 데이터 추상화에 대해서 이런 게 있다고 소개해 보았다. 다만 데이터 추상화에 대해서는 꽤 다양한 주변 정의와 이에 대한 수학적, 논리적, 철학적 개념이 들어가지만 여기서는 이런 논의에 대해서는 다루지 않고, 기초적이고 실용적으로 이해할 수 있는 선에서 화두를 꺼내 본 정도다. 이에 대해서 관심이 있으신 분들은 레퍼런스의 논문들을 보셔도 좋을 것이라고 생각한다. 그리고 그렇게 학문적으로 접근하지 않더라도, 실제로 추상화 정도를 정의한 후 이에 대한 방안 정도를 정리해두고 이를 데이터 사용 시에 참고하면 굳이 윤리 뿐만이 아니더라도 많은 면에서 도움이 될 것이라고 생각한다. 흔히 어떤 이슈가 생겼을 때 급하게 데이터 보안 관련해서 암호화, 권한 관리, 극단적인 경우 데이터 삭제를 진행한다. 하지만 이 외에도 고려할 수 있는 다양한 방안이 있고, 언 발에 오줌누기 식이 아니라 다양한 관점으로 체계적이고 일반적인 개념을 적용해서 고민해 볼 수 있다. 이런 방법도 필요한 때마다 언 발에 오줌누기 식으로 적용하는 것이 아니라 어떤 원칙을 세워두면 좋을 것이다.

Reference

Floridi L. ,2008, The method of levels of abstraction. Minds Mach. 18, 303–329.

Floridi L. ,2006, Information ethics, its nature and scope. SIGCAS Comput. Soc. 36, 21–36.

Floridi L, Taddeo M. , 2016, What is data ethics?Phil. Trans. R. Soc. A 374

    This post is licensed under CC BY 4.0 by the author.

    제주 올레 후기

    201810-201812 책 로그