mir.pe (일반/어두운 화면)
최근 수정 시각 : 2024-11-04 13:53:34

오리 실험

오리실험에서 넘어옴
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px)"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -1px -11px; word-break: keep-all"
<colbgcolor=#00a495,#2d2f34><colcolor=#fff>기능 대문( FrontPage) · 롤백 · 리다이렉트 · 문서 이동 · 분류 · 최근 변경 · 편집 요약 · 편집 요청 · 하이퍼링크( 역링크 · 인터위키)
편집 과정 <colbgcolor=#00a495,#2d2f34><colcolor=#fff>편집 작성( 작성 중) · 윤문 · 서술 폭주 · 저명성 · 출처 필요 · 편집 분쟁 · 동시 수정( 편집 충돌)
토론 끌올 · 닫힌 토론 · 방기 · 복구 토론 · 삭제 토론 · 프로토로너
서술 형태와 관점 독자연구( 집단연구) · POV · NPOV · MPOV · 삭제주의와 포괄주의
관리 및 운영 ACL · 긴급조치 · 다중 계정( 다중 계정 검사 · 오리 실험) · 문서 사유화 · 문서 훼손 · 반달 · 임시조치 · 작성 금지 · 즉결처분 · 차단( IP 차단 · 무기한 차단) · 통신사 IP · 투명성 보고서 · 편집 제한 · 휴지통
문서 종류 고립된 문서 · 더미 · 막다른 문서 · 메타 문서 · 빈 문서 · 없는 문서 · 오래된 문서 · 작성이 필요한 문서 · 중복 문서 · 템플릿 · 토막글 · 특수 문서 ·
구조 개요 · 각주 · 동음이의어 구분자 · 문단 · 목차 · 상세 · 예시 · 여담( 이야깃거리 · 트리비아) · 요약문
사용자 기여 · 기여자 · 사용자 문서 · 사용자 토론 · 유저박스 · 위키 금단증세 · 위키 사용자( 위키니트 · 위키페어리 · 사관) · 위키질
기타 개인 위키 · 고지달성 · 글상자 · 데스크톱 위키 · 뻘문서( 뻘토론 · 뻘분류) · 소송방지바람 · 암묵의 룰 · 애초에 · 위키프로젝트 · 이전 · 취소선 드립
관련 틀 틀:위키 서술 관점 }}}}}}}}}
<colcolor=#fff><colbgcolor=#000000> 오리 실험
The Duck Test
<nopad> 파일:오리와 토끼.png
Fliegende Blätter, 1892년 10월 23일호의 '토끼와 오리(Kaninchen und Ente)'[1]

1. 개요2. 원리3. 장단점
3.1. 장점3.2. 단점
4. 용어 상의 비판5. 기타6. 나무위키에서7. 파생 용어

[clearfix]

1. 개요

위키백과, 나무위키와 같은 여러 위키 혹은 기타 인터넷 커뮤니티에서 다중 계정을 이용한 차단 회피 등, 악성 유저에 의한 부정적인 영향을 제어하기 위해 쓰는 검증 방법으로, 오리 검사라고도 부른다. 물론 검증 방법의 일종일 뿐, 정식 관리 규칙은 아니다.

2. 원리

일단 새와 비슷하게 생긴 동물이 있다고 가정해 보자. 이 대상이 무슨 동물인지 확인을 하기 위하여
  1. 오리처럼 생겼고,
  2. 오리처럼 헤엄치고,
  3. 오리처럼 꽥꽥대므로,
  4. 이 동물은 오리라는 합리적 추론을 내릴 수 있다.
이같은 논증을 거쳐 '이 생물체는 오리일 것이다.'라고 판단하는 것이다. 논증 유형 중에 귀납법(abductive reasoning)에 해당하며, 주어진 관찰과 사실로부터 시작해서 가장 그럴듯한 최선의 설명을 도출하는 방법이다. 물론 이게 알고 보니 거위였다든지, 오리너구리라든지, 인간이 변장을 했다든지 하는 식으로 오리가 아니었을 수도 있겠지만, 일단은 대상 스스로가 '저는 오리가 아니에요!'라는 식으로 반론을 하거나 추가 검증을 필요로 하지 않는 한 오리일 것이라고 간주한다.

위키에서 어떤 이용자 A가 반달리즘을 하다가 차단당한 뒤, 훗날 이와 유사한 행위를 하는 이용자 B가 나타났을 때,
  1. B가 과거 A가 반달리즘했던 문서와 유사한 문서를 반달하고,
  2. A와 유사한 주장을 펼치며,
  3. A와 유사한 토론 태도를 보이고,
  4. A와 같은 프로젝트에 참여하고,
  5. A와 비슷한 시기에 활동하고,
  6. A와 유사한 수정 코멘트를 남기므로,
  7. A와 B는 동일인이라는 합리적 추론을 내릴 수 있다.
위와 같은 귀납논증을 통해 A와 B가 동일인이라는 사실을 추론할 수 있다.

다만 두 논증이 완전히 동일한 구조는 아니다. 오리의 예는 '특정한 개체가 오리라는 모임에 속한다'는 것을 입증하지만, 위키의 예는 '서로 다른 기호로 지칭하는 두 대상이 동일하다'는 것을 입증하기 때문이다. 그러므로 오리의 예가 합리적이므로 위키의 예 또한 합리적이라고 해서는 안되는 것이다.

위키의 예의 합리성을 보강하기 위해서 '근접한 시각에 비슷한 행위를 하는 둘은 동일하다' 라는 전제가 있다. 다만, 이 전제 역시 정확하지 못하여 A와 B가 동일인이 아닐 가능성은 엄연히 존재한다. 그래서 이와 같은 논증은 사실 강력한 제재를 가할 만한 명분으로 삼을 수가 없지만, 오리 실험 외의 다중 계정을 제어할 만한 마땅한 방법이 현실적으로 존재하지 않기 때문에 어쩔 수 없이 사용 중이다.

3. 장단점

3.1. 장점

반달을 비롯한 어그로꾼이나 트롤이 게시판이나 문서에서 분탕을 치고 다닐 때 위와 같은 검증 방법이 없다면 딱히 추가적으로 제재할 만한 사유가 없다. IP로 적발할 수 있으면 차단 회피라는 것을 쉽게 알아챌 수 있지만, 만일 우회해서 다른 IP로 돌아온다면 일반적으로는 별도의 인물로 생각하고 대처할 수밖에 없어 결과적으로 실제로 저지른 짓에 비하면 훨씬 가벼운 처벌만 받고, 혹시 또 차단되면 다시 또 다른 IP로 편집한다.

이런 허점을 이용해서 규정이나 제재를 요리조리 피하고 다니는 반달을 종종 볼 수가 있다. 정말 악질적인 사람은 몇번이고 차단해도 또 와서 분탕질을 할 정도다. 게다가 이러한 부류를 신고하거나 제재하려는 움직임이 보이면 그 즉시 위키는 누구에게나 열려 있으며 자기는 규정을 준수했다고 뻔뻔하게 반박하기도 한다. 그래도 오리 실험은 이런 악질적인 사람들을 그나마 빨리 쫓아낼 수 있는 가장 효과적인 방법이고, 사실상 다른 방법도 없어서 치명적인 단점을 감수하고서라도 사용할 가치가 있다.

3.2. 단점

파일:카리스마 대빵큰오리.jpg
잘못된 오리 실험의 예시[2]
원리 자체가 귀추법이라 결과가 잘못되었을 가능성을 배제할 수 없다. 이 논증법은 자신의 주장에 끼워 맞추기 위해서 비약할 때도 빈번히 쓰고, 당연히 왜곡해서 쓰면 열에 아홉은 문제가 생기기 마련이다. 마찬가지로 이것이 합리적이고 경험에 기초한 논리라고 할지라도 악용될 가능성. 즉, 무고한 사람이 몇 가지의 오해와 경험들로 생긴 선입견 때문에 원칙의 희생자가 될 가능성은 늘 존재하고 있다.

사용자 정보를 대조하여 진행하는 다중 계정 검사와는 달리 오리 실험은 각 이용자의 편집 성향으로만 결과를 내릴 수밖에 없기 때문에 여러모로 위험도가 높다. 두 새의 특징이 같다는 이유로 오리라는 결론을 내리는 논리라면, 막말로 편집 방향이 같은 두 이용자에게 이 논리를 적용시킨다면 무조건 동일인이라는 결론이 나오는, 어찌보면 굉장히 어처구니 없는 논리인 셈. 일단 오리 실험 요청이 들어왔다는 것 부터가 행동 양식이 비슷하다는 것이라, 이 상황에서 대상이 논리적으로 나는 다른 사람이라고 명백히 증명하는 것은 사실상 불가능하다. 설상가상으로 자기 자신이 오리가 아니라고 아무리 주장한들 이미 오리라고 머리에 박힌 사람들에게는 들리지 않기 마련이다. 따라서 그나마 현실적으로 내세울 수 있는 명백한 증거는 Apnic.net에서 다중계정사용자 A, B의 IP가 다름을 증명하는 것처럼 물증밖에 없다. 문제는 애초에 그런 물증이 명백했으면 오리 실험까지 오지도 않았을 것이라는 점.

그리고 오리 실험의 대상이 된 이용자는 십중팔구 차단당하기 때문에, 희생자가 보복으로 차단을 한 관리자를 모욕하거나 비난하기도 한다. 물론 아무리 자신이 억울하게 차단당했다고 해도 이러한 행위가 정당화되는 것은 아니기 때문에, 보복성 반달은 절대 해서는 안 된다.

게시판에 올라오는 오리실험 요청 글에서는 근거와 제재 사유만 충분하다면 대다수의 사례에서 동일인이라고 판단하고 있다. 반면에, 다중계정 검사 게시판에서는 결과가 동일인인 사례와 그렇지 않은 사례가 모두 나타나고 있다. 즉, 나무위키에서의 오리 실험은 반달과 반달로 의심되는 사람을 쳐내기 위한 도구이지만 무고한 사람에게도 해를 입힐 가능성이 농후한 양날의 검인 셈이다.

또 다른 문제는 제재 당한 이용자가 오리 실험을 회피하기 위해 행동 패턴을 바꿔 다시 올 수도 있다는 것이다. 조용히 지낸다면 큰 문제는 없지만, 이전과 다른 방향으로 문제를 일으킨다면 애매해지기 시작한다. 위의 틀 형식을 이용해 써보자면 이런 식이다.
새와 닮은 생물이 있다.

이 생물은 오리처럼 생겼고, 오리처럼 헤엄치고, 날고, 알을 낳는다.

하지만 울음소리가 "꽥꽥!" 이 아닌 "오리오리!!" 이다.

이 경우, 이 새는 오리가 아니다.
B는 A가 반달한 문서들을 반달하고, A와 비슷한 주장을 하고, A와 유사한 토론 태도를 보인다.

하지만 B는 수정 코멘트와 말투 등에서 A와 다르다.

따라서 B는 A가 아니다.
이때 B가 행동 패턴을 바꾼 A였다면 B는 오리가 아니라는 결론이 나오고, 그 이용자는 들킬 때까지 마음껏 날뛸 수 있다. 즉, 검증까지 도달하는 데 시간이 오래 걸릴 수 있다는 의미.

작정하고 악용하면 이런 짓도 불가능하지 않다. 사실 이 부분이 오리 실험 방식의 최대 맹점이기도 하다. 작정하고 한 놈 매장하려 든다면, 이런 패턴으로 오리 실험을 악용해서 이용자 관리 권한을 가진 운영진을 교란할 수 있기 때문이다.
A가 기간제 차단을 당했다.

B는 A의 차단 기간 중 A가 반달한 문서들을 반달하고, A와 비슷한 주장을 하고, A와 유사한 토론 태도를 보이며 수정 코멘트와 말투까지 비슷하다.

B는 차단 회피로 A와 함께 영구차단 당한다.

그러나 사실 B는 C가 A 행동을 그대로 따라한 사칭이었다.
애초에 B 계정은 A를 저격하고선 차단 당할 생각으로 만든 것인데 오리 실험을 사용하면 거기에 낚여서 A는 영구차단 감이 아니었는데 A를 사칭한 B라는 계정을 사용한 C 때문에 A의 차단이 영구차단으로 바뀌는 마법이 일어난다.

작정하고 악용하는 사례 중 이런 것도 존재한다.
A와 C가 토론을 하고 있었다.

그런데 B가 갑자기 나타나더니 A의 말투를 따라하고 A의 의견을 노골적으로 옹호하는 발언을 했다.

토론을 지켜보던 D는 A와 B에 대해 오리 실험을 요청했고, 그 결과 A와 B 모두 동일인으로 판단되어 영구차단되었다.

그러나 사실 B는 C가 A 행동을 그대로 따라한 사칭이었다.
정말 악질적인 방법으로, 이 역시 A를 차단시킬 목적으로 새 계정을 생성하거나 아이피로 토론에 참여한 뒤, A를 똑같이 따라하여 오리 실험으로 부정 접속으로 잘못 판단하게 만들어 차단시키는 방법이다. 나무위키 내에서 실제로 일어나는 사례로, 토론에서 불리한 상황에서 이 방법을 통해 반대자를 영구차단시키고 자기 입맛대로 문서를 바꾸는 사람들이 있어 문제가 되고 있다. 둘 다 로그인 이용자라면 다중 계정 검사로 동일인이 아니라 입증 가능하나, 다중 계정 검사가 불가능한 아이피 이용자는 동일인이 아니라고 입증할 방법이 별로 없다는 점이 문제다.

심지어 이런 사례도 존재한다.
A와 B가 토론을 하고 있다.

그런데 C가 갑자기 나타나더니 A의 말투를 따라하고 A의 의견을 노골적으로 옹호하는 발언을 했다.

토론을 지켜보던 D는 C의 예전 행적을 살펴보았더니 B와 비슷한 말투, B와 비슷한 수정 코멘트, B와 비슷한 문서 수정을 보여주었다.

D는 C와 B에 대해 오리 실험을 요청했고, 오리실험 악용과 동일인으로 판단되어 영구차단되었다.

그러나 사실 C는 A의 부계정이었다. A는 악의적으로 C가 A를 따라하는 척한 것이다.

위와 별개로 이런 사례도 존재할 수 있다.
아이피 A와 사용자(또는 아이피) C가 토론을 하고 있다.

그런데 아이피 B가 나타나더니 A와 말투가 비슷했고 A의 의견을 노골적으로 옹호하는 발언을 했으며 A와 편집한 문서, 편집한 시기가 비슷했다.

결국 아이피 A와 B는 동일인으로 판단되어 차단되었다.

그러나 사실 아이피 A와 B로 토론을 하던 사람은 동일인이 아니라 관심사가 비슷한 친구(또는 가족) 관계였다.
오리 실험이 얼마나 오류가 많은 방법인지를 보여주는 예. 괜히 법조계에서 무죄추정의 원칙이 생긴 게 아니다.

4. 용어 상의 비판

실험이라는 단어 자체가 잘못되었다는 주장이 있다. 이 오리 실험이라는 용어는 영어 위키백과 The duck test 한국어 위키백과 측에서 번역한 것인데, test는 '실험'으로 번역할 수 있지만 '검사' 혹은 '시험'으로도 번역할 수 있다. 이 주장은 해당 영어 단어의 의미 상 후자로 번역했어야 더 적절하지만 운영진(또는 차단 권한 보유자)의 권위를 위해 좀 더 과학적이게 보이는 전자의 단어로 번역했다는 것이다.

이런 류의 단어가 대부분 그렇듯 자연과학, 사회과학, 일상, 사전 중 어느 곳에서 쓰느냐에 따라 조금씩 의미가 달라지기 때문에 '실험' 역시 아주 틀렸다고는 할 수 없으나, 이 문서에서 설명하는 행위가 일반적인 의미의 '실험'이라 보기엔 여러모로 부족한 것이 사실이다. 좀 거칠게 말해서 물증도 없이 그냥 심증만으로 처분을 때리는 것이나 마찬가지다. 심증으로 판단한다는 것은 그 판단 기준이 마음대로가 될 가능성이 있음을 의미하고, 실제로 이렇게 될 경우 오히려 지극히 비과학적인 제재 조치가 된다. 재료 및 방법이 있는 것도 아니고. 사고 실험도 재료 및 방법이 없기는 하지만 사고 실험은 최소한 연역적이다.

그래서 사실상 대충 비슷해보이면 차단하는 것이나 다름없는데, 이 과정에서 운영진 마음대로 하는 것 아니냐는 불만이 많을 수 있으므로 이를 불식시키고자 마치 어떤 '정해놓은 기준'에 의해 차단하는 것 같은 인상을 심어주기 위해 '실험'이라는 용어를 쓴다는 것이다.

요컨대 오리 실험은 실험도 아니고 시험(test)도 아니다. 그보다는 일반적 이용자로부터 반달리즘 이용자를 분류해내기 위한 의사결정 알고리즘에 가까우며, 더 엄밀한 용어를 빌릴 경우 최근접이웃 분류기(nearest neighbor classifier)에 해당한다.[3] 이런 알고리즘은 나무위키 외에도 인터넷에서 완장들이 '분탕'을 가려내기 위해 고려하는 기준과 동일하고, 사회에서도 마케팅팀이 잠재적 소비자 집단으로부터 판촉 대상 고객을 분류하거나 스팸봇이 악성 메일을 분류해 차단하는 기술을 개발할 때에도 쓴다.

5. 기타

프록시 서버를 이용한 반달은 IP 검증 등을 통한 규정상의 제재만으로는 실질적인 대응이 불가능한 경우가 많기 때문에 오리 실험의 논증을 동원하여 약한 수준의 제재를 가하는 것이 일반적이다. 물론 상술했듯이 논증 자체에 맹점이 존재하기 때문에 오리 실험을 제재 판단의 근거로 삼는 것은 위험하다는 의견이 있다.

6. 나무위키에서

위키백과에서는 오리 실험에 걸렸다는 이유만으로는 강한 제재를 가할 수 없지만 나무위키에서는 영구 차단까지 가능하다. 사실 정황이 명백하지 않아도 접속 내역과 수정 내역을 보고 대략 그렇다 싶으면 광대역 차단까지 시전하기도 한다. 게다가 이게 악질 트롤러 봉쇄가 아니라 단순 규정위반자에게도 일괄 적용되는 등 리그베다 위키보다 더 엄격한 편이다.

7. 파생 용어

프로그래밍 용어로 Duck typing(덕 타이핑)이라는 용어의 어원 역시 이 오리 실험이다. 클래스 C는 T라는 타입을 갖게 하고 싶다고 하자. Java 같은 언어에서는 C라는 클래스에서 T라는 타입을 상속했다고 명시해야만 한다. 반면 Python이나 Go같은 언어에서는 클래스 C에서 T 타입의 함수들을 갖고 있다면 T 타입이라고 간주한다. 즉, 클래스 Bird가 fly, quack이라는 두 함수를 가지고 있다면 Duck이라는 타입이라고 간주하는 것이다.

어원이 어원인 관계로 보통 교육 예제를 돌릴 때는 오리라는 클래스를 만들고 오리의 특징을 가지고 함수를 짜는 경우가 많다.[4]


[1] 많은 사람들에게 반전 그림으로 유명한 작품. 진짜 오리를 찾아낼 때도 있지만 죄없는 사람(토끼)을 차단하는 경우도 생기는 오리 실험의 부작용을 나타내는 데에도 쓰인다. [2] 사진은 오리가 아닌 왜가리다. [3] 실제로 데이터 마이닝 머신러닝 분야 전공서를 보면 의사결정 알고리즘을 소개하는 대목에서 대놓고 "오리처럼 걷고, 오리처럼 꽥꽥거리고, 오리처럼 보인다면, 아마도 오리일 것이다"라는 문장이 나온다. [4] 예를 들면 'class duck'에 walk(),swim(),quack() 이런 식.

분류