<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>고양이 두 잔</title>
    <link>https://gnidinger.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Wed, 12 Aug 2026 03:07:18 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>Vagabund.Gni</managingEditor>
    <image>
      <title>고양이 두 잔</title>
      <url>https://tistory1.daumcdn.net/tistory/2718013/attach/6299a44926be4288af5ee5ca5377d266</url>
      <link>https://gnidinger.tistory.com</link>
    </image>
    <item>
      <title>Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)</title>
      <link>https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8</link>
      <description>&lt;div class=&quot;book-toc&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목차&lt;/p&gt;
&lt;ul id=&quot;toc&quot; style=&quot;list-style-type: none;&quot; data-ke-list-type=&quot;none&quot;&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;background-color: #eeeeee; padding: 10px; border-radius: 10px;&quot;&gt;
&lt;p style=&quot;font-size: 18px;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;얼굴인식과 생체인증&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4%EB%8A%94-%EC%99%9C-%EB%B3%84%EA%B0%9C%EC%9D%98-%EB%AC%B8%EC%A0%9C%EC%9D%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스는 왜 별개의 문제인가 | 얼굴인식과 생체인증 (1)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EC%9A%A9%EC%96%B4-%EC%82%AC%EC%A0%84-FAR%EB%B6%80%ED%84%B0-PAD-ISO-30107%EA%B9%8C%EC%A7%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체인증 용어 사전: FAR부터 PAD, ISO 30107까지 | 얼굴인식과 생체인증 (2)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EA%B2%80%EC%B6%9C%EA%B3%BC-%EC%A0%95%EB%A0%AC-%EC%96%BC%EA%B5%B4%EC%9D%84-%EC%B0%BE%EA%B3%A0-%EB%B0%98%EB%93%AF%ED%95%98%EA%B2%8C-%EC%84%B8%EC%9A%B0%EA%B8%B0-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 검출과 정렬: 얼굴을 찾고 반듯하게 세우기 | 얼굴인식과 생체인증 (3)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;들어가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvshyI/dJMcaiK3ACk/Yggyn9nO3fdo33VxGJ8b1k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvshyI/dJMcaiK3ACk/Yggyn9nO3fdo33VxGJ8b1k/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvshyI/dJMcaiK3ACk/Yggyn9nO3fdo33VxGJ8b1k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvshyI%2FdJMcaiK3ACk%2FYggyn9nO3fdo33VxGJ8b1k%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞선 열한 편은 얼굴로 사람을 확인하는 시스템을 부품 단위로 뜯어봤다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 그 부품들이 실제 제품에서 어떻게 조립되어 있는지를 두 사례로 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하나는 Face ID이고 다른 하나는 인천공항 스마트패스다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 시스템 모두 얼굴로 사람을 확인하지만 놓인 조건이 다섯 가지 축에서 정반대다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어느 쪽이 낫다는 비교가 아니라, 조건이 달라지면 쓸 수 있는 수단이 어떻게 달라지는지를 보는 것이 목적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막에는 등록 절차조차 통제할 수 없는 세 번째 조건을 짧게 다루고 시리즈를 마무리한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;같은 얼굴인데 왜 다른 시스템이 필요한가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;두 시스템 모두 얼굴로 사람을 확인한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 아이폰을 들어 올려 화면을 보면 잠금이 풀리는 기능이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스마트패스는 인천공항에서 여권을 꺼내지 않고 얼굴만으로 출국장을 통과하는 서비스다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;둘 다 카메라로 얼굴을 촬영하고 미리 등록된 데이터와 비교해 통과 여부를 결정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1부에서 정리한 파이프라인으로 보면 캡처와 검출과 정렬과 특징 추출과 매칭과 판정이라는 흐름이 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용자 입장에서도 카메라를 보면 문이 열린다는 경험이 동일하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기술 계보만 놓고 보면 같은 문제를 푸는 두 구현으로 읽힌다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;그런데 답하는 질문이 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;그런데 답하는 질문이.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/be4rCT/dJMcagGCAGl/v7KUHTPhgImDaALIL1ewX0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/be4rCT/dJMcagGCAGl/v7KUHTPhgImDaALIL1ewX0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/be4rCT/dJMcagGCAGl/v7KUHTPhgImDaALIL1ewX0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbe4rCT%2FdJMcagGCAGl%2Fv7KUHTPhgImDaALIL1ewX0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;그런데 답하는 질문이.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID가 답하는 질문은 하나다. 이 기기에 등록된 주인이 지금 화면을 보고 있는가다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스마트패스가 답하는 질문은 다르다. 카메라 앞의 사람이 사전 등록된 승객 중 누구이며 그 승객이 이 항공편에 탑승할 자격이 있는가다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞의 질문은 기기 하나와 사람 하나 사이의 관계를 확인하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;뒤의 질문은 눈앞의 사람을 국가가 발급한 신원 정보와 연결하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 구분으로 말하면 하나는 1:1 인증이고 다른 하나는 등록된 집단을 대상으로 하는 검색이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;질문이 다르므로 성능 지표도 다르고 실패했을 때 벌어지는 일도 다르다&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;조건이 다르면 쓸 수 있는 수단도 달라진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;조건이 다르면 쓸 수 있는 수단도.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nrQaL/dJMcaij3WJS/hvvpHcBFXK5UtEuccHZc51/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nrQaL/dJMcaij3WJS/hvvpHcBFXK5UtEuccHZc51/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nrQaL/dJMcaij3WJS/hvvpHcBFXK5UtEuccHZc51/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnrQaL%2FdJMcaij3WJS%2FhvvpHcBFXK5UtEuccHZc51%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;조건이 다르면 쓸 수 있는 수단도.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 애플이 하드웨어와 운영체제와 소프트웨어를 모두 통제하는 환경에서 동작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전용 센서를 넣을 수 있고 칩 안에 격리된 영역을 만들 수 있으며 그 안에서만 연산할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스마트패스는 공항 게이트에 설치된 장비와 승객의 스마트폰이라는 서로 다른 기기에 걸쳐 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;승객의 기기는 기종도 운영체제도 제각각이므로 특정 하드웨어를 전제할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 같은 목적을 두고도 동원할 수 있는 방어 수단의 집합이 애초에 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 차이가 두 시스템의 설계를 완전히 갈라놓는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;이 글은 열한 편의 개념을 두 사례에 걸어 본다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;섹션&amp;nbsp;2와&amp;nbsp;섹션&amp;nbsp;3은&amp;nbsp;Face&amp;nbsp;ID를&amp;nbsp;다룬다.&amp;nbsp;조건이&amp;nbsp;갖춰졌을&amp;nbsp;때&amp;nbsp;어디까지&amp;nbsp;갈&amp;nbsp;수&amp;nbsp;있고&amp;nbsp;그럼에도&amp;nbsp;무엇이&amp;nbsp;남는지를&amp;nbsp;본다.&lt;br /&gt;&lt;br /&gt;섹션&amp;nbsp;4와&amp;nbsp;섹션&amp;nbsp;5는&amp;nbsp;스마트패스를&amp;nbsp;다룬다.&amp;nbsp;조건이&amp;nbsp;갖춰지지&amp;nbsp;않은&amp;nbsp;쪽에서&amp;nbsp;무엇으로&amp;nbsp;버티는지를&amp;nbsp;본다.&lt;br /&gt;&lt;br /&gt;섹션&amp;nbsp;6은&amp;nbsp;등록&amp;nbsp;절차조차&amp;nbsp;통제할&amp;nbsp;수&amp;nbsp;없는&amp;nbsp;원격&amp;nbsp;신원확인을&amp;nbsp;짧게&amp;nbsp;다룬다.&lt;br /&gt;&lt;br /&gt;섹션&amp;nbsp;7에서&amp;nbsp;세&amp;nbsp;사례를&amp;nbsp;같은&amp;nbsp;축&amp;nbsp;위에&amp;nbsp;놓고&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;지표와&amp;nbsp;용어는&amp;nbsp;2부에서&amp;nbsp;정의한&amp;nbsp;것을&amp;nbsp;그대로&amp;nbsp;쓴다.&lt;br /&gt;&lt;br /&gt;각&amp;nbsp;섹션에서&amp;nbsp;앞선&amp;nbsp;편들의&amp;nbsp;어느&amp;nbsp;부분이&amp;nbsp;나타나는지도&amp;nbsp;함께&amp;nbsp;표시한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;어느 쪽이 낫다는 비교가 아니다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID를 기준으로 스마트패스를 평가하면 모든 항목에서 스마트패스가 뒤진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반대로 스마트패스의 요구사항을 Face ID에 적용하면 Face ID는 시작도 하지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 원격 신원확인을 할 수 없고 갤러리 검색도 할 수 없기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 시스템은 경쟁 관계가 아니라 서로 다른 문제의 해답이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 이 글의 목적은 우열을 가리는 것이 아니라 조건과 설계의 대응 관계를 보는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시스템을 설계할 때 먼저 확인해야 하는 것이 기술 선택이 아니라 조건이라는 점이 결론이 된다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;Face ID는 조건이 갖춰졌을 때의 상한이다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;3만 개의 적외선 점으로 깊이를 잰다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Face ID는 조건이 갖춰졌을 때.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Eg4LU/dJMcahleaMA/mku0pkxgvcSvnXklWASKn0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Eg4LU/dJMcahleaMA/mku0pkxgvcSvnXklWASKn0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Eg4LU/dJMcahleaMA/mku0pkxgvcSvnXklWASKn0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEg4LU%2FdJMcahleaMA%2Fmku0pkxgvcSvnXklWASKn0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;Face ID는 조건이 갖춰졌을 때.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID의 하드웨어는 TrueDepth 카메라 시스템이라 불리는 모듈이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 모듈은 얼굴을 찾는 flood illuminator와 적외선 이미지를 찍는 IR 카메라와 깊이를 재는 dot projector로 구성된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주의를 기울인 얼굴이 있다고 판단되면 3만 개가 넘는 적외선 점을 투사해 얼굴의 깊이 지도를 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 2차원 적외선 이미지도 함께 촬영한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 다룬 깊이 정보와 적외선 대역 분석이 기본 사양으로 들어 있는 셈이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄물이나 화면 재생 같은 평면 공격은 이 단계에서 걸러진다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;캡처 순서를 무작위화하고 기기마다 다른 패턴을 쏜다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;애플 보안 문서는 디지털 위조와 물리적 위조를 모두 막기 위한 장치를 명시한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;TrueDepth 카메라가 2차원 이미지와 깊이 지도를 촬영하는 순서를 무작위로 바꾼다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 기기마다 다른 무작위 패턴을 투사한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미리 준비한 영상은 어떤 순서로 무엇이 요구될지 알 수 없으므로 대응하지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 다룬 챌린지-리스폰스가 하드웨어 계층에서 구현된 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;챌린지 공간이 기기별로 다르므로 한 기기에서 통한 공격이 다른 기기로 이식되지도 않는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;캡처 데이터에 서명을 붙여 Secure Enclave로 보낸다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;촬영된 2차원 이미지와 깊이 지도는 디지털 서명이 붙은 뒤 Secure Enclave로 전송된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Secure Enclave는 애플 칩에 들어 있는 독립 보조 시스템으로 메인 프로세서와 물리적으로 분리되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;운영체제조차 접근할 수 없는 영역이므로 애플리케이션 프로세서가 손상되어도 내용이 보호된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부에서 다룬 촬영 시점 서명과 하드웨어 격리 영역이 여기서 결합되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C2PA 같은 출처 증명 표준이 아직 커버리지가 좁다고 정리했는데, 애플은 자기 생태계 안에서 같은 원리를 오래전에 구현했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서명 이후에 데이터가 바뀌면 검증이 실패하므로 중간에서 바꿔치기하는 경로가 막힌다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;매칭도 격리된 영역 안에서 끝난다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Secure Enclave 안에 있는 Neural Engine의 일부가 이 데이터를 수학적 표현으로 변환한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 표현을 등록된 얼굴 데이터와 비교하는 연산도 같은 영역 안에서 수행된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록 데이터 자체가 여러 자세에서 촬영한 얼굴의 수학적 표현이며 원본 이미지가 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 데이터는 기기를 떠나지 않으며 애플도 제삼자도 접근할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10부에서 정리한 저장하지 않는 설계의 교과서적 구현이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서버에 템플릿 데이터베이스가 존재하지 않으므로 대규모 유출이라는 사고 유형 자체가 성립하지 않는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;attention detection이 강압 상황을 일부 막는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;attention detection이 강압.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bt8bjz/dJMcabypOsz/8aa08JGIvKG1WisuMY2wF1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bt8bjz/dJMcabypOsz/8aa08JGIvKG1WisuMY2wF1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bt8bjz/dJMcabypOsz/8aa08JGIvKG1WisuMY2wF1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbt8bjz%2FdJMcabypOsz%2F8aa08JGIvKG1WisuMY2wF1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;attention detection이 강압.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 사용자가 눈을 뜨고 기기를 바라보고 있는지를 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 기능 때문에 잠든 사람이나 의식이 없는 사람의 얼굴에 기기를 들이대는 방식이 기본적으로 차단된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;애플은 단일 등록 얼굴 기준으로 무작위한 타인이 잠금을 해제할 확률을 100만 분의 1 미만으로 제시한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지문 기반 Touch ID의 5만 분의 1과 비교하면 스무 배 낮은 값이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다섯 번 연속 실패하면 암호를 요구하는 제한도 함께 걸려 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 다룬 액티브 라이브니스의 가장 가벼운 형태가 상시 작동하는 구조다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;시리즈에서 다룬 방어가 하드웨어로 구현되어 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지 나열한 것을 앞선 편들의 목차에 대응시키면 겹치는 범위가 넓다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;깊이와 적외선 기반 판정은 8부의 패시브 라이브니스에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;무작위 패턴과 순서 변경은 8부의 액티브 챌린지에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;캡처 시점 서명과 격리 영역 처리는 9부의 인젝션 방어에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;템플릿이 기기를 떠나지 않는 구조는 10부의 프라이버시 설계에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 Face ID는 이 시리즈가 다룬 방어를 대량 배포로 구현한 사실상 유일한 사례다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;그럼에도 Face ID가 답하지 않는 질문&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;답하는 질문은 이 기기의 주인인가 하나뿐이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;답하는 질문은 이 기기의 주.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bpEhvH/dJMcahleaNF/jdw8V4PiDN4SJgVdWfVP51/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bpEhvH/dJMcahleaNF/jdw8V4PiDN4SJgVdWfVP51/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bpEhvH/dJMcahleaNF/jdw8V4PiDN4SJgVdWfVP51/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpEhvH%2FdJMcahleaNF%2Fjdw8V4PiDN4SJgVdWfVP51%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;답하는 질문은 이 기기의 주.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID의 등록은 사용자가 자기 기기에서 자기 얼굴을 촬영하는 것으로 끝난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 그 사람이 실제로 누구인지는 아무도 확인하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기기를 손에 쥔 사람이 자기 얼굴을 등록했을 뿐이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 Face ID가 보증하는 것은 등록 시점의 그 사람과 인증 시점의 그 사람이 동일인이라는 사실뿐이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 사람의 이름이 무엇인지, 주민등록상 누구인지는 이 시스템이 다루는 정보가 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 신원을 확인하는 시스템이 아니라 기기의 소유관계를 확인하는 시스템이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;앱은 성공 여부만 통보받는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;애플 문서는 앱이 인증 성공 여부만 통보받는다고 명시한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앱은 등록된 얼굴과 관련된 Face ID 데이터에 접근할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 은행 앱이 받는 것은 참 또는 거짓이라는 한 비트의 정보다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유사도 점수도, 임계값도, 라이브니스 판정 결과도 받지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 지표들을 서비스 제공자가 직접 측정할 수 없다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성능을 조정하고 싶어도 조정할 손잡이가 제공되지 않는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;서비스 제공자가 검증 주체가 아니다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;서비스 제공자가 검증 주체가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cBr8Yt/dJMcahleaNP/G8KjD7tCImwKPDRwKEkzF0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cBr8Yt/dJMcahleaNP/G8KjD7tCImwKPDRwKEkzF0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cBr8Yt/dJMcahleaNP/G8KjD7tCImwKPDRwKEkzF0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcBr8Yt%2FdJMcahleaNP%2FG8KjD7tCImwKPDRwKEkzF0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;서비스 제공자가 검증 주체가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구조에서 서비스는 애플의 구현을 신뢰하는 것 외에 선택지가 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;애플이 제시한 100만 분의 1이라는 수치도 애플의 주장이지 제삼자 평가 결과가 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 다룬 NIST FRTE 같은 독립 벤치마크에 Face ID가 제출된 적이 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;iBeta PAD 인증서도 존재하지 않으므로 조달 절차에서 제출할 서류가 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;금융이나 공공 분야에서 자체 시험 성적을 요구하면 응답할 방법이 없다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기술적으로 우수한 것과 조달 요건을 충족하는 것은 별개의 문제다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;1:N 식별과 원격 신원확인은 설계 범위 밖이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 등록된 하나의 얼굴과 비교하는 1:1 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수만 명이 등록된 갤러리에서 후보를 찾아내는 1:N 식별은 이 설계로 불가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 대로 1:N은 FPIR과 FNIR이라는 다른 지표를 쓰는 다른 문제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원격 신원확인은 더 근본적으로 불가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음 만나는 사용자가 신분증의 그 사람인지를 확인하려면 비교 기준이 서버에 있어야 하는데, Face ID에는 그런 기준이 존재하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계좌 개설이나 대출 신청 같은 절차에 Face ID를 쓸 수 없는 이유가 여기에 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;지식 요소가 없어 강압에 취약하다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 가진 것과 나인 것이라는 두 요소로 구성된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기기를 가지고 있고 등록된 얼굴이면 통과한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아는 것이라는 세 번째 요소가 없으므로 물리적으로 제압당하면 저항할 수단이 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;attention detection이 잠든 상태를 막지만 눈을 뜨도록 강요하는 상황은 막지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6부에서 다룬 비밀단어 방식은 틀린 단어를 말하는 것으로 조용히 거부할 수 있다는 점이 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 차이는 성능 지표에 나타나지 않지만 위협 모델에서는 중요한 항목이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;뚫린 사례들과 그 조건&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2017년 베트남 보안업체 Bkav가 약 200달러짜리 석고 가루 마스크에 인쇄한 적외선 눈 이미지를 붙여 잠금을 해제했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습 과정 없이 즉시 열렸으며 연구진은 비즈니스 거래에 Face ID를 쓰지 말라고 권고했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2019년 Black Hat에서 Tencent Xuanwu Lab이 attention detection 메커니즘을 리버스 엔지니어링했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID가 안경을 인식하면 눈 영역에서 3차원 정보를 추출하지 않는다는 점을 이용해,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;검은 테이프로 눈 윤곽을 흰 점으로 홍채를 흉내 낸 안경을 만들었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 안경으로 잠든 피해자의 폰을 열고 금융 거래까지 승인했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 두 공격 모두 피해자에 대한 물리적 접근이 필요하므로, 9부에서 다룬 원격 대량 공격과는 층위가 완전히 다르다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;공항 게이트는 조건이 하나도 갖춰지지 않는다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;개인 기기가 아니라 공용 게이트다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;개인 기기가 아니라 공.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cJgY3q/dJMcahleaOu/p6ZDp03i4CweQqYfAs5p0k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cJgY3q/dJMcahleaOu/p6ZDp03i4CweQqYfAs5p0k/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cJgY3q/dJMcahleaOu/p6ZDp03i4CweQqYfAs5p0k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcJgY3q%2FdJMcahleaOu%2Fp6ZDp03i4CweQqYfAs5p0k%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;개인 기기가 아니라 공.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스마트패스는 인천공항 제1여객터미널과 제2여객터미널의 전용 게이트에서 동작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출국장 입구에는 일반 통로와 스마트패스 전용 통로가 나뉘어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게이트에 설치된 카메라가 승객의 얼굴을 인식하면 차단막이 자동으로 열린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 장비는 특정 개인의 소유가 아니라 하루에 수만 명이 지나가는 공용 설비다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부에서 정리한 대로 물리적 접근이 통제되지 않은 위치의 장비는 그 자체가 신뢰 범위 바깥에 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인 기기를 신뢰 기반으로 삼는 Face ID의 전략을 여기서는 쓸 수 없다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;전용 깊이 카메라가 아니라 RGB 카메라다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스마트패스에 알고리즘을 공급하는 국내 기업 알체라는 자사 기술을 RGB 카메라 기반 패시브 방식으로 설명한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;RGB 카메라는 빨강과 초록과 파랑 세 채널로 이미지를 담는 일반 카메라다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 자료가 이를 IR 카메라나 3D depth 카메라와 대비하며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;색상 정보만으로 판별하므로 주변 조명과 환경의 영향을 많이 받는다고 밝힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID가 3만 개의 적외선 점으로 깊이를 재는 것과 정확히 대척점에 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 정리한 대로 하드웨어 이점 없이 단일 RGB 센서만 쓰는 경우 실세계 일반화가 여전히 어렵다는 것이 학계의 평가다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 조건에서 공공 서비스가 운영되고 있다는 사실이 이 대비의 핵심이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;판정이 단말이 아니라 서버에서 이루어진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;판정이 단말이 아니라 서버에.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/T2ZJL/dJMcahleaOJ/VNHbAcJG0X3SfPAFjsc2Kk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/T2ZJL/dJMcahleaOJ/VNHbAcJG0X3SfPAFjsc2Kk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/T2ZJL/dJMcahleaOJ/VNHbAcJG0X3SfPAFjsc2Kk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FT2ZJL%2FdJMcahleaOJ%2FVNHbAcJG0X3SfPAFjsc2Kk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;판정이 단말이 아니라 서버에.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;승객의 얼굴 정보는 앱이나 공항 키오스크에서 등록되어 시스템에 저장된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게이트의 카메라가 촬영한 얼굴은 그 저장된 정보와 비교되어야 하므로 판정이 게이트 안에서 끝나지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID처럼 격리된 영역 안에서 모든 것이 완결되는 구조가 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부에서 다룬 대로 클라이언트와 서버 사이에 구간이 생기면 그 구간이 공격 표면이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 10부에서 다룬 보관 의무도 따라온다. 생체정보를 보유하는 주체가 생기기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 아키텍처를 서버 쪽으로 옮기는 순간 보안과 규제 양쪽의 부담이 함께 늘어난다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;사전 등록된 승객 전체가 비교 대상이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게이트 앞에 선 승객은 자기가 누구인지 먼저 밝히지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시스템은 사전 등록된 승객 정보 중에서 이 얼굴에 해당하는 사람을 찾아내야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 대로 이런 구조에서는 비교 횟수가 늘어날수록 오탐 확률이 함께 올라간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성수기에 등록 승객이 몰리면 비교 대상이 커지므로 임계값을 그만큼 엄격하게 잡아야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 게이트 통과 속도를 유지해야 하므로 거부율을 무한정 높일 수도 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID가 단 한 명과만 비교하면 되는 것과 비교하면 문제의 난이도가 다른 차원이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;등록도 본인 기기가 아니라 앱이나 키오스크에서 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록은 ICN 스마트패스 앱이나 공항의 셀프체크인 키오스크에서 이루어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앱에서는 여권을 카메라로 스캔하고 여권 전자칩을 읽은 뒤 얼굴을 등록한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;키오스크에서는 여권을 인식해 본인 인증을 마치면 등록이 완료된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;KB국민은행 고객은 별도 앱 없이 KB스타뱅킹의 국민지갑 메뉴에서도 등록할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 등록 경로가 여러 개이고 각 경로마다 신뢰 조건이 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID가 하나의 기기 안에서 등록과 인증이 모두 끝나는 것과 구조가 다르다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;그 조건에서 무엇으로 버티는가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;등록 단계를 통제해 신원의 기준을 만든다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;등록 단계를 통제해 신원의 기.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zh3X4/dJMcahleaO8/yDAkoothsdBhU7KMtVqIyK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zh3X4/dJMcahleaO8/yDAkoothsdBhU7KMtVqIyK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zh3X4/dJMcahleaO8/yDAkoothsdBhU7KMtVqIyK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fzh3X4%2FdJMcahleaO8%2FyDAkoothsdBhU7KMtVqIyK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;등록 단계를 통제해 신원의 기.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스마트패스의 핵심은 인증이 아니라 등록에 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록 시 전자여권의 IC칩을 스캔하므로 국가가 발급한 신원 정보를 직접 읽어온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 얼굴과 여권상 신원이 등록 시점에 묶인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;섹션 3에서 본 대로 Face ID는 등록자가 누구인지 확인하지 않지만&amp;nbsp;스마트패스는 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록 대상도 제한되어 있어 만 7세 이상의 전자여권 소지자여야 하고, 만 14세 미만은 보호자가 등록한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여권을 재발급받으면 즉시 재등록해야 하며 안면 정보는 최초 등록 후 5년간 유효하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;RGB 패시브 방식으로 라이브니스를 건다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하드웨어가 없다고 라이브니스를 포기한 것은 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;알체라는 자사 기술이 RGB 카메라와 패시브 방식으로 iBeta의 PAD 시험을 통과했다고 밝힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;패시브 방식은 사용자가 특별한 동작을 하지 않아도 카메라가 얼굴을 자동으로 감지하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게이트를 빠르게 통과시켜야 하는 환경에서 액티브 챌린지는 처리량을 떨어뜨리므로 이 선택이 합리적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 정리한 보안과 사용자 부담의 교환 관계가 처리량이라는 형태로 나타난 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 2부와 9부에서 정리한 대로 PAD 인증은 카메라 앞에 제시된 위조물만 보증하며 인젝션 저항력과는 별개다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;단계마다 다른 요소를 요구한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스마트패스는 모든 구간에서 같은 방식을 쓰지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출국장 입장 단계에서는 패시브 얼굴인식만으로 통과시킨다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출국심사 단계에서는 여권 판독과 지문 인식이 함께 적용된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;법무부 관할의 법적 절차이므로 출국장 입장보다 높은 보안 수준이 요구되기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;탑승게이트에서는 다시 얼굴 확인으로 돌아간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 정리한 대로 위험도에 따라 요소 조합을 바꾸는 설계가 국가 시스템에서 실제로 구현된 사례다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;결괏값만 남기고 생체정보는 보관하지 않는 설계&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;결과값만 남기고 생체정보는 보관하.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/byUGRp/dJMcai5k9lR/adYl1TOwviRdNkK49R6kYK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/byUGRp/dJMcai5k9lR/adYl1TOwviRdNkK49R6kYK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/byUGRp/dJMcai5k9lR/adYl1TOwviRdNkK49R6kYK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbyUGRp%2FdJMcai5k9lR%2FadYl1TOwviRdNkK49R6kYK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;결과값만 남기고 생체정보는 보관하.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;알체라는 신분증의 얼굴 사진과 소지자가 동일인인지 확인되면 결괏값만 저장하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증에 사용된 생체정보는 별도로 보관하거나 저장하지 않는 구조로 설계했다고 밝힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10부에서 정리한 저장하지 않는 설계를 서버 사이드 환경에서 시도한 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10부에서 다룬 대로 생체인식 특징정보는 민감정보에 해당해 별도 동의와 암호화 저장 의무가 따른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보유하지 않으면 유출될 것도 없다는 원칙이 여기서도 작동한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 이 설명은 벤더 자체 자료이며 제삼자 검증 결과가 아니라는 점을 함께 봐야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 자료도 이용자가 생체정보 삭제를 요청할 수 있는 절차가 명확히 갖추어지는 것이 신뢰성의 조건이라고 적고 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;여권과 탑승권을 여전히 소지하게 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인천국제공항공사는 스마트패스를 이용하더라도 여권과 탑승권을 위탁 수하물에 넣지 말고 직접 소지하라고 안내한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출국장은 항공사와 무관하게 이용할 수 있지만 탑승게이트는 참여 항공사의 일부 게이트에서만 가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년 4월 기준 참여 항공사는 11개이며 단계적으로 확대 중이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;법무부의 자동출입국심사는 스마트패스와 별개 시스템이므로 출국심사는 따로 진행된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 생체인증이 기존 절차를 대체한 것이 아니라 일부 구간에 병렬로 얹힌 상태다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;11부에서 다룬 폴백 설계가 여기서는 기존 절차를 그대로 남겨두는 형태로 구현되어 있다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;등록조차 통제할 수 없는 조건&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;원격 신원확인은 처음 보는 사람을 상대한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;원격 신원확인은 처음.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cqFVOE/dJMcac5bKf1/yL8OmtLglh8iD59jqeB5Qk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cqFVOE/dJMcac5bKf1/yL8OmtLglh8iD59jqeB5Qk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cqFVOE/dJMcac5bKf1/yL8OmtLglh8iD59jqeB5Qk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcqFVOE%2FdJMcac5bKf1%2FyL8OmtLglh8iD59jqeB5Qk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;원격 신원확인은 처음.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞의 두 사례는 등록 단계가 통제된 환경이라는 공통점이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 사용자가 자기 기기를 물리적으로 쥐고 있어야 등록할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스마트패스는 전자여권 IC칩을 읽어 국가 발급 신원과 대조한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원격 신원확인은 이 통제가 없는 상태에서 시작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;금융기관이 비대면으로 계좌를 개설하거나 대출을 신청받을 때 상대는 처음 보는 사람이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 사람이 신분증의 그 사람인지를 확인할 수단이 화면에 나타난 얼굴과 촬영된 신분증뿐이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;기준이 될 얼굴이 신분증 사진밖에 없다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 등록된 얼굴과 비교하고 스마트패스는 사전 등록된 정보와 비교한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원격 신원확인은 비교 기준을 그 자리에서 만들어야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용자가 촬영한 신분증 사진에서 얼굴을 추출해 그것을 기준으로 삼는 방식이 일반적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신분증 사진은 인쇄물이고 촬영 조건도 나쁘므로 3부에서 다룬 정렬 품질부터 문제가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기준 자체가 흔들리면 그 뒤의 모든 판정도 함께 흔들린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 얼굴인지를 판정하는 문제 이전에 무엇과 비교할지가 불안정한 조건이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;인젝션 공격의 주 무대가 여기다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;인젝션 공격의 주 무대가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/B1Tx1/dJMcac5bKgt/icnfkDJeMhPuIIQpMDTJI1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/B1Tx1/dJMcac5bKgt/icnfkDJeMhPuIIQpMDTJI1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/B1Tx1/dJMcac5bKgt/icnfkDJeMhPuIIQpMDTJI1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FB1Tx1%2FdJMcac5bKgt%2FicnfkDJeMhPuIIQpMDTJI1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;인젝션 공격의 주 무대가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 조건에서는 사용자가 자기 기기의 자기 카메라로 촬영한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기기도 카메라도 서비스 제공자가 통제하지 않으므로 9부에서 다룬 가상 카메라와 에뮬레이터가 그대로 통한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID처럼 하드웨어 서명을 붙일 수도 없고 스마트패스처럼 물리 게이트를 두지도 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자는 자기 방에서 시간을 들여 반복 시도할 수 있으며 실패해도 비용이 거의 들지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부에서 정리한 대로 방어의 초점이 이미지에서 캡처 경로로 옮겨가야 하는 이유가 이 조건에서 가장 선명하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MITRE ATLAS에 등재된 사례에서는 패시브와 액티브 라이브니스가 모두 우회되었다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;하루 서른세 건씩 여덟 달이라는 실측&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년 1월 발행된 한 위협 인텔리전스 보고서가 구체적 수치를 제시한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2025년 1월부터 8월까지 단일 금융기관의 디지털 신원확인 대출 신청 절차를 겨냥한 생체 인젝션 시도가 8,065건 기록되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하루 약 33건씩 여덟 달 동안 한 기관에서만 발생한 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞선 인도네시아 사례에서는 3개월간 1,100건 이상이 확인되었고 식별된 기기 45대 중 41대가 안드로이드였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 사례 모두 AI로 생성한 딥페이크 이미지를 가상 카메라로 주입하는 방식이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 수치는 산업 전체가 아니라 한 기관의 것이라는 점을 함께 읽어야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;공격 도구에 가격표가 붙어 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 보고서가 공격 도구의 시장 가격을 정리하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;딥페이크 이미지 제작 서비스가 10달러에서 50달러이고 즉시 쓸 수 있는 합성 신원이 최대 15달러다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 교체 소프트웨어는 규모에 따라 1,000달러에서 10,000달러에 임대되며 음성 복제는 월 10달러 미만이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2022년부터 2025년 9월까지 다크웹과 텔레그램에서 관련 게시물 300건 이상이 수집되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기술이 없는 공격자도 구매만으로 시도할 수 있다는 뜻이며, 이것이 시도 건수가 급증한 직접적 원인이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;방어 비용은 선형으로 늘지 않는데 공격 비용은 계속 떨어지는 구조다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;조건이 다르면 답도 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;다섯 개의 축으로 정리한 좌표&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다섯 개의 축으로 정리한.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bFVeSu/dJMcaf8B3ge/nGnGCDYeaifKr4ls8Kekr0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bFVeSu/dJMcaf8B3ge/nGnGCDYeaifKr4ls8Kekr0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bFVeSu/dJMcaf8B3ge/nGnGCDYeaifKr4ls8Kekr0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbFVeSu%2FdJMcaf8B3ge%2FnGnGCDYeaifKr4ls8Kekr0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;다섯 개의 축으로 정리한.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세 사례를 같은 축 위에 놓으면 차이가 한눈에 드러난다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;&lt;b&gt;축&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;&lt;b&gt;Face ID&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;&lt;b&gt;스마트패스&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;&lt;b&gt;원격 신원확인&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;&lt;b&gt;단말&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;개인 소유&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;공용 게이트&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;통제 불가&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;&lt;b&gt;센서&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;전용 깊이 카메라&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;RGB 카메라&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;통제 불가&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;&lt;b&gt;비교&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;1:1&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;등록 승객 대상 검색&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;신분증 대조&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;&lt;b&gt;처리&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;격리 영역 내부&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;서버&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;서버&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;&lt;b&gt;등록&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;본인이 기기에서&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;전자여권과 대조&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;그 자리에서 생성&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위에서 아래로 갈수록 통제할 수 있는 것이 하나씩 줄어든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 다섯 축을 모두 통제하고 스마트패스는 등록만 통제하며 원격 신원확인은 아무것도 통제하지 못한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;축이 하나씩 빠질 때마다 무엇이 무너지는가&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전용 센서가 빠지면 깊이와 적외선 기반 판정이 사라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 정리한 대로 남는 것은 RGB 기반 라이브니스이고 이 영역은 아직 미해결로 분류된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;격리 영역이 빠지면 캡처 시점 서명과 하드웨어 수준의 무결성 보장이 사라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부에서 정리한 대로 인젝션 방어가 소프트웨어 층의 신호 조합에 의존하게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록 통제가 빠지면 비교의 기준 자체가 불안정해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 하나의 축이 빠질 때마다 그 축이 담당하던 방어가 통째로 사라지고 남은 축에 부담이 몰린다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;립 모션이 들어설 자리&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;립 모션이 들어설 자리.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bEYdnr/dJMcaf8B3gI/bhTatR3eV2tK5EZTTxWbi0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bEYdnr/dJMcaf8B3gI/bhTatR3eV2tK5EZTTxWbi0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bEYdnr/dJMcaf8B3gI/bhTatR3eV2tK5EZTTxWbi0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEYdnr%2FdJMcaf8B3gI%2FbhTatR3eV2tK5EZTTxWbi0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;립 모션이 들어설 자리.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 좌표에서 립 모션 기반 인증이 어디에 놓이는지가 분명해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전용 센서가 없는 조건에서 시간축에 챌린지를 만드는 방법이라는 것이 첫 번째 자리다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부에서 정리한 대로 프레임 시퀀스는 한 장으로 재현할 수 없으므로 RGB 카메라만으로도 재생 공격에 저항한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지식 요소를 추가한다는 것이 두 번째 자리다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6부에서 다룬 대로 지정된 단어를 발화하게 하면 Face ID에 없는 세 번째 요소가 생기고 강압 상황에서 조용히 거부할 수단도 함께 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 9부에서 정리한 대로 인젝션 조건에서는 이 모든 것이 여전히 주입될 수 있으므로, 립 모션도 캡처 경로 검증과 함께 쓰여야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;기술을 고르기 전에 조건을 확인해야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시스템을 설계할 때 먼저 묻는 질문이 어떤 알고리즘을 쓸 것인가인 경우가 많다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글의 세 사례는 그 순서가 뒤바뀌어 있다는 것을 보여준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단말을 통제할 수 있는지, 센서를 지정할 수 있는지, 등록 시점에 신원을 확인할 수 있는지가 먼저다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 답이 정해져야 쓸 수 있는 방어 수단의 집합이 결정된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 얼굴인식 모델을 쓰더라도 세 조건에서 요구되는 나머지 구성 요소가 완전히 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조건을 확인하지 않고 기술을 고르면 방어할 수 없는 환경에서 방어했다고 주장하게 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;이 시리즈 열한 편이 다룬 것&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1부에서 라이브니스가 인식 경로 옆에 붙는 별개 경로라는 점을 정리했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부부터 4부까지는 지표와 검출과 임베딩이라는 인식 파이프라인을 다뤘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부부터 7부까지는 시간축과 발화와 융합이라는 확장을 다뤘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부부터 9부까지는 진짜인지 묻는 방어와 그 방어가 무너지는 조건을 다뤘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10부와 11부는 보관과 배포라는 운영의 문제를 다뤘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;돌아보면 열한 편 전체가 조건이 갖춰지지 않은 쪽에서 무엇을 할 수 있는지를 묻는 작업이었다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;나가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4TEUI/dJMcaaGo6nt/6pXtXjSO9DnRFDCQ9Tu1b0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4TEUI/dJMcaaGo6nt/6pXtXjSO9DnRFDCQ9Tu1b0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4TEUI/dJMcaaGo6nt/6pXtXjSO9DnRFDCQ9Tu1b0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4TEUI%2FdJMcaaGo6nt%2F6pXtXjSO9DnRFDCQ9Tu1b0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID와 공항 게이트는 같은 얼굴을 보지만 다른 질문에 답한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞의 시스템은 이 기기의 주인인지를 묻고 뒤의 시스템은 사전 등록된 승객 중 누구인지를 묻는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Face ID는 다섯 개의 축을 모두 통제할 수 있어 이 시리즈가 다룬 방어를 하드웨어로 구현했고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 대가로 원격 신원확인과 갤러리 검색을 포기했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공항 게이트는 센서도 단말도 통제하지 못하는 대신 등록 단계에서 전자여권과 대조하고 단계마다 다른 요소를 요구하는 방식으로 버틴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록조차 통제할 수 없는 원격 신원확인에서는 하루 서른세 건의 인젝션 시도가 여덟 달 동안 이어졌다는 실측이 남아 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조건이 다르면 답도 다르다. 이 시리즈 열한 편은 결국 조건이 갖춰지지 않은 쪽에서 무엇을 할 수 있는지를 묻는 작업이었다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;참고 자료&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Face ID&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Apple, Face ID Security Guide, 2017-11. TrueDepth 카메라 구성, 캡처 순서 무작위화, 기기별 무작위 패턴, 디지털 서명 후 Secure Enclave 전송.&lt;/li&gt;
&lt;li&gt;Apple Platform Security, &quot;Biometric security&quot;. Secure Neural Engine의 수학적 표현 변환 및 격리 영역 내 매칭.&lt;/li&gt;
&lt;li&gt;Apple Support, &quot;About Face ID advanced technology&quot;. 단일 등록 얼굴 기준 100만분의 1 오수락 확률, 5회 실패 제한, 앱은 성공 여부만 통보받음.&lt;/li&gt;
&lt;li&gt;Bkav Corporation, &quot;Bkav's new mask beats Face ID in twin way&quot;, 2017-11. 석고 가루 3D 마스크 및 인쇄 적외선 눈 이미지.&lt;/li&gt;
&lt;li&gt;Y. Chen, B. Ma, Z. Ma (Tencent Xuanwu Lab), Black Hat USA 2019 백서. attention detection 리버스 엔지니어링 및 X-glasses.&lt;/li&gt;
&lt;li&gt;ElcomSoft, &quot;Apple Face ID: Security Implications and Potential Vulnerabilities&quot;, 2025-09. 공개된 Face ID 공격 사례 연표.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;인천공항 스마트패스&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;인천국제공항공사, 스마트패스 안내 페이지. 등록 대상, 참여 항공사, 여권과 탑승권 소지 안내.&lt;/li&gt;
&lt;li&gt;국토교통부, 「얼굴인증 출국길 넓힌다, 인천공항 스마트패스 전용 출국장 확대」, 2026-05-27. 연말까지 전용 출국장 최대 50퍼센트 확대.&lt;/li&gt;
&lt;li&gt;알체라 기술블로그, 「인천공항이 알체라의 얼굴인식 AI로 탑승시간 40퍼센트 단축시킨 방법」. RGB 카메라 패시브 방식 및 iBeta PAD 시험 통과, RGB와 IR과 depth 카메라 대비.&lt;/li&gt;
&lt;li&gt;알체라 기술블로그, 「스마트패스 생체인증」. 출국장 얼굴인식, 출국심사 지문 결합, 탑승구 얼굴 확인의 단계별 요소 배치.&lt;/li&gt;
&lt;li&gt;알체라 기술블로그, 「인천공항 스마트패스 얼굴인식」. 결괏값만 저장하는 설계 및 생체정보 삭제 절차의 필요성.&lt;/li&gt;
&lt;li&gt;KB국민은행, 「인천공항 빠르게 출국하려면」, 2026-04. 등록 절차, 여권 IC칩 위치, 2026-04-02 기준 참여 항공사 11개.&lt;/li&gt;
&lt;li&gt;트립닷컴 가이드, 「인천공항 스마트패스」, 2026-04. 안면 정보 5년 유효, 여권 재발급 시 재등록.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;원격 신원확인&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Group-IB, Weaponized AI 백서, 2026-01. 2025년 1월부터 8월까지 단일 금융기관 대상 생체 인젝션 시도 8,065건 및 공격 도구 가격.&lt;/li&gt;
&lt;li&gt;Group-IB, &quot;Deepfake Fraud: How AI is Deceiving Biometric Security in Financial Institutions&quot;, 2024-12. 인도네시아 사례 1,100건 이상 및 기기 45대 식별.&lt;/li&gt;
&lt;li&gt;MITRE ATLAS, AML.CS0033, &quot;Live Deepfake Image Injection to Evade Mobile KYC Verification&quot;. 2024-10 iProov 레드팀 훈련, 2025-12 공개.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML+DL/Vision AI</category>
      <category>FACEID</category>
      <category>SecureEnclave</category>
      <category>TrueDepth</category>
      <category>라이브니스</category>
      <category>생체인증</category>
      <category>스마트패스</category>
      <category>안면인식</category>
      <category>원격신원확인</category>
      <category>인젝션공격</category>
      <category>인천공항</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1380</guid>
      <comments>https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8#entry1380comment</comments>
      <pubDate>Tue, 11 Aug 2026 16:47:20 +0900</pubDate>
    </item>
    <item>
      <title>온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)</title>
      <link>https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11</link>
      <description>&lt;div class=&quot;book-toc&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목차&lt;/p&gt;
&lt;ul id=&quot;toc&quot; style=&quot;list-style-type: none;&quot; data-ke-list-type=&quot;none&quot;&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;background-color: #eeeeee; padding: 10px; border-radius: 10px;&quot;&gt;
&lt;p style=&quot;font-size: 18px;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;얼굴인식과 생체인증&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4%EB%8A%94-%EC%99%9C-%EB%B3%84%EA%B0%9C%EC%9D%98-%EB%AC%B8%EC%A0%9C%EC%9D%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스는 왜 별개의 문제인가 | 얼굴인식과 생체인증 (1)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EC%9A%A9%EC%96%B4-%EC%82%AC%EC%A0%84-FAR%EB%B6%80%ED%84%B0-PAD-ISO-30107%EA%B9%8C%EC%A7%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체인증 용어 사전: FAR부터 PAD, ISO 30107까지 | 얼굴인식과 생체인증 (2)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EA%B2%80%EC%B6%9C%EA%B3%BC-%EC%A0%95%EB%A0%AC-%EC%96%BC%EA%B5%B4%EC%9D%84-%EC%B0%BE%EA%B3%A0-%EB%B0%98%EB%93%AF%ED%95%98%EA%B2%8C-%EC%84%B8%EC%9A%B0%EA%B8%B0-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 검출과 정렬: 얼굴을 찾고 반듯하게 세우기 | 얼굴인식과 생체인증 (3)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;들어가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/deU7CX/dJMcajwwqwY/yuFKhjkc1TVJFkM0Tcdxx0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/deU7CX/dJMcajwwqwY/yuFKhjkc1TVJFkM0Tcdxx0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/deU7CX/dJMcajwwqwY/yuFKhjkc1TVJFkM0Tcdxx0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdeU7CX%2FdJMcajwwqwY%2FyuFKhjkc1TVJFkM0Tcdxx0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지 열 편에 걸쳐 무엇을 만들어야 하는지를 다뤘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 그것을 어디에서 돌릴 것인가와, 그 결정이 성능에 어떤 대가를 요구하는지를 다룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체인증은 여러 이유로 사용자 단말에서 처리하는 쪽을 선호하지만, 그러려면 모델을 작고 빠르게 만들어야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 널리 쓰이는 수단이 양자화이며, 임베딩 모델에서는 이 과정이 인식 지표를 직접 건드린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코사인 유사도만 확인하고 넘어가면 문제를 놓치게 되는 이유도 함께 정리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 서버에서 처리할 수밖에 없는 조건에서의 절충을 다루며 시리즈를 마무리한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;생체인증은 왜 단말에서 처리하려 하는가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;프라이버시 관점에서 보관 대상이 사라진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;프라이버시 관점에.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c4Dl5w/dJMcabSIWTu/b6jXSoSz8FxZe4uPABbwK0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c4Dl5w/dJMcabSIWTu/b6jXSoSz8FxZe4uPABbwK0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c4Dl5w/dJMcabSIWTu/b6jXSoSz8FxZe4uPABbwK0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc4Dl5w%2FdJMcabSIWTu%2Fb6jXSoSz8FxZe4uPABbwK0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;프라이버시 관점에.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10부에서 정리한 대로 생체정보의 가장 큰 위험은 유출 시 교체가 불가능하다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서버에 템플릿을 모아두면 그 데이터베이스 자체가 공격 목표가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단말에서 처리하고 단말에만 저장하면 대규모 유출이 성립하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자가 피해를 입히려면 사용자 단말을 하나씩 탈취해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FIDO 구조가 이 원칙을 프로토콜 수준에서 구현한 사례다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;의료 영상이나 얼굴 생체정보나 음성 녹음이 단말을 떠나지 않으면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보호할 클라우드 동기화도 방어할 보관 기간도 없다는 정리가 이 접근의 요지다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;규제 관점에서 처리자의 의무가 줄어든다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10부에서 본 대로 한국 법은 생체인식 특징정보를 민감정보로 분류하고 별도 동의를 요구한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수집하고 보관하는 주체에게 암호화와 안전성 확보조치 의무도 함께 부과된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단말에서 처리하고 결과만 받는 구조에서는 사업자가 특징정보를 보유하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 어떤 의무가 실제로 면제되는지는 구체적 구현과 계약 구조에 따라 다르므로 법률 검토가 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 보관 대상이 없으면 위반 가능성도 그만큼 줄어드는 것은 분명하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BIPA 소송의 상당수가 수집과 보관 절차의 하자에서 비롯되었다는 점을 감안하면 이 차이는 작지 않다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;지연 관점에서 왕복 시간이 없어진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서버 처리 구조에서는 영상을 올리고 결과를 받아오는 왕복이 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;클라우드 왕복은 모델이 실행되기도 전에 50에서 300밀리 초를 더한다는 측정이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네트워크 상태가 나쁘면 이 값이 훨씬 커지고 편차도 커진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증은 사용자가 기다리는 동안 진행되므로 지연이 그대로 체감 품질이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단말에서 처리하면 이 왕복이 사라지고 지연이 예측 가능해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;혼잡도 타임아웃도 콜드 스타트도 없다는 것이 온디바이스의 구조적 이점이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;네트워크가 끊겨도 동작한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;네트워크가 끊겨도 동작한다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cOxyjy/dJMcacRABCw/sDtItrsebSpEunC016Wnqk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cOxyjy/dJMcacRABCw/sDtItrsebSpEunC016Wnqk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cOxyjy/dJMcacRABCw/sDtItrsebSpEunC016Wnqk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcOxyjy%2FdJMcacRABCw%2FsDtItrsebSpEunC016Wnqk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;네트워크가 끊겨도 동작한다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출입 통제 단말은 지하 주차장이나 창고처럼 통신이 불안정한 곳에 설치되는 경우가 많다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서버 의존 구조에서는 네트워크가 끊기면 문이 열리지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 상황에 대비해 우회 수단을 두면 그 우회 수단이 새로운 취약점이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단말에서 처리하면 통신 상태와 무관하게 인증이 성립한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비행기 안이나 지하실이나 통신이 불안정한 지역에서도 동작한다는 점이 이 방식의 실질적 가치로 꼽힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 등록 정보를 갱신하려면 결국 연결이 필요하므로 완전한 독립은 아니다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;9부에서 본 주입 표면이 줄어든다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부에서 인젝션 공격이 물리 세계 단서를 무력화한다는 점을 다뤘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주입이 가능한 이유는 영상이 캡처된 지점과 판정되는 지점 사이에 통로가 있기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 통로가 네트워크를 포함하면 개입 지점이 늘어난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;캡처와 판정이 같은 단말 안에서 일어나면 통로가 짧아진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;TEE와 기기 증명 같은 방어도 단말 안에서 수행되어야 효과가 있으므로 이 구조와 맞물린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 단말 자체가 루팅되었거나 에뮬레이터라면 이 이점이 사라지므로 기기 증명이 함께 필요하다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;엣지 런타임은 이름부터 바뀌었다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;TFLite는 LiteRT가 되었다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;TFLite는 LiteRT가 되.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/byxD5R/dJMcahZG0sX/lmlqXaHak6y3We9afoksXk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/byxD5R/dJMcahZG0sX/lmlqXaHak6y3We9afoksXk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/byxD5R/dJMcahZG0sX/lmlqXaHak6y3We9afoksXk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbyxD5R%2FdJMcahZG0sX%2FlmlqXaHak6y3We9afoksXk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;TFLite는 LiteRT가 되.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모바일과 임베디드 환경의 표준 추론 런타임이던 TensorFlow Lite는 2024년 9월 LiteRT로 이름이 바뀌었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존에 만들어둔 .tflite 모델 파일은 변경 없이 그대로 로드된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LiteRT 2.x의 주요 추가 사항은 하드웨어 가속을 위한 CompiledModel API와 온디바이스 언어 모델용 LiteRT-LM이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;런타임 자체가 매우 작아 가장 가벼운 빌드는 300킬로바이트 수준까지 내려간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습은 TensorFlow나 PyTorch로 하고 .tflite로 변환한 뒤 하드웨어 delegate를 붙여 실행하는 것이 기본 흐름이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2024년 이전 자료는 여전히 TFLite로 표기하므로 검색 시 두 이름을 모두 확인해야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;NNAPI는 Android 15부터 deprecated다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NNAPI는 안드로이드가 제공하던 신경망 연산 가속 API로 오랫동안 NPU 접근의 표준 경로였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Android 15부터 이 API는 deprecated 상태이며 안드로이드 공식 문서가 이를 명시하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문서는 향후 대다수 기기가 CPU 백엔드를 쓰게 될 것으로 예상하므로 성능이 중요한 작업은 다른 방식으로 이전하라고 경고한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하위 호환은 유지되어 Android 10에서 14까지의 기존 코드는 계속 동작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신규 개발에는 LiteRT의 GPU delegate나 Hexagon delegate가 권장 경로이며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NNAPI delegate에서 GPU delegate로 옮기는 것은 거의 한 줄 수정 수준이라는 보고가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Snapdragon 계열은 Qualcomm이 제공하는 QNN 경로를 쓰는 것이 현재의 실무 선택지다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;애플은 Core ML이 사실상 유일한 경로다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;애플은 Core ML이 사.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cE4mLS/dJMcahSSZU7/0cPnGXKfBjuQabRtP3CU6K/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cE4mLS/dJMcahSSZU7/0cPnGXKfBjuQabRtP3CU6K/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cE4mLS/dJMcahSSZU7/0cPnGXKfBjuQabRtP3CU6K/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcE4mLS%2FdJMcahSSZU7%2F0cPnGXKfBjuQabRtP3CU6K%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;애플은 Core ML이 사.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Core ML은 애플이 자사 기기용으로 제공하는 1차 추론 런타임이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2017년 iOS 11에서 도입된 이후 Neural Engine에 접근하는 표준 경로로 자리 잡았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CPU와 GPU와 Neural Engine 사이에서 자동으로 스케줄링하며, M3와 M4의 Neural Engine은 35에서 38 TOPS를 낸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개발자는 compute units 설정으로 이 스케줄링에 영향을 줄 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;애플 플랫폼에서 가장 네이티브 한 가속과 도구를 원한다면 기본 선택지가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 애플 기기 전용이므로 안드로이드와 하나의 모델을 공유하려면 별도의 경로가 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;ONNX Runtime은 중립을 택한 대가를 치른다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ONNX Runtime은 마이크로소프트가 만든 다중 프레임워크 추론 엔진이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PyTorch, TensorFlow, JAX, Keras에서 변환한 모델을 하나의 형식으로 다룰 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안드로이드와 iOS와 윈도우와 리눅스에 걸쳐 하나의 추론 API를 쓸 수 있다는 점이 최대 장점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PyTorch 진영과 구글 진영 사이에서 양쪽 모두와 호환되는 안전한 선택으로 평가된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대가는 양자화와 NPU 최적화에서 네이티브 런타임보다 보통 한두 걸음 뒤처진다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;플래그십 기준 MobileNet 실행 시간은 LiteRT와 비슷하게 30에서 50밀리 초 대에 들어오므로 순수 속도 차이는 크지 않다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;TensorRT는 단말이 아니라 서버와 산업용 보드의 선택지다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;TensorRT는 NVIDIA GPU에 특화된 고성능 추론 SDK다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계층 융합, 커널 자동 튜닝, 정밀도 보정, 메모리 최적화를 통해 모델을 최적화한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ONNX나 TensorFlow 모델을 파싱해 직렬화된 CUDA 엔진 파일을 만들어내는 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NVIDIA GPU가 있어야 동작하므로 일반 스마트폰에는 적용되지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jetson 계열 보드를 쓰는 산업용 장비나 서버 사이드 처리에서 사실상 표준으로 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출입 통제 단말처럼 전용 하드웨어를 설계할 수 있는 경우에는 선택지가 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;연산자 지원 범위를 먼저 확인해야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;런타임을 고를 때 가장 자주 발생하는 문제는 성능이 아니라 호환성이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ONNX Runtime의 CPU에서 잘 도는 모델이 NNAPI 실행 제공자로는 제대로 넘어가지 않을 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Core ML로 변환된 모델도 일부 연산자가 지원되지 않으면 그 부분이 CPU에서 실행된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가속기를 쓰겠다고 설계했는데 실제로는 CPU에서 도는 상황이 흔하게 벌어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;권장되는 절차는 대표 모델 하나를 실제 변환과 로드 경로까지 통과시켜 의도한 가속 경로로 실행되는지 확인하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연산자 지원 여부는 개발 후반에 발견할 문제가 아니라 첫 번째 수용 기준으로 다뤄야 한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;양자화는 무엇을 어디까지 줄이는가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;실수를 정수로 바꿔 크기와 연산량을 줄인다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;양자화는 무엇을 어디.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/RzBY8/dJMcahSSZWC/xjqAvozaNx75UrvR65ugB1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/RzBY8/dJMcahSSZWC/xjqAvozaNx75UrvR65ugB1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/RzBY8/dJMcahSSZWC/xjqAvozaNx75UrvR65ugB1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRzBY8%2FdJMcahSSZWC%2FxjqAvozaNx75UrvR65ugB1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;양자화는 무엇을 어디.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습된 모델의 가중치는 보통 32비트 부동소수점으로 저장된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양자화는 이 값을 8비트 정수 같은 낮은 정밀도로 바꾸는 작업이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;값의 범위를 스케일과 영점이라는 두 파라미터로 매핑해 정수 격자에 올린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;32비트를 8비트로 바꾸면 모델 크기가 4분의 1로 줄어든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정수 연산은 부동소수점보다 빠르고 전력도 덜 쓰므로 NPU가 이 형식을 선호한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;INT8 기준으로 비전 모델은 4메가바이트에서 200메가바이트 사이에 들어오며, 이 범위가 모바일 배포의 현실적 조건이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;학습 후에 변환하는 PTQ&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PTQ(Post-Training Quantization)는 이미 학습된 모델을 사후에 변환하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;재학습이 필요 없으므로 적용이 빠르고 비용이 거의 들지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 값의 범위를 정하려면 대표 데이터를 흘려보내 활성값 분포를 관찰해야 하며, 이 과정을 보정이라 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보정 데이터가 실제 운영 데이터와 다르면 범위가 잘못 잡혀 정확도가 크게 떨어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보정 품질이 같은 네트워크의 버전마다, 그리고 네트워크마다 달라진다는 관찰도 보고되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 PTQ를 시도해 보고 손실이 감당 범위를 넘을 때 다음 단계로 넘어가는 것이 일반적인 순서다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;학습 과정에 양자화를 넣는 QAT&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;QAT(Quantization-Aware Training)는 학습 중에 양자화로 인한 반올림 오차를 미리 흉내 내는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;순전파 과정에 가짜 양자화 노드를 삽입해 모델이 정밀도 손실에 적응하도록 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;재학습이 필요하므로 시간과 계산 비용이 들지만 정확도 회복 효과가 뚜렷하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 연구에서 INT8 QAT 모델이 같은 조건의 INT8 PTQ보다 확연히 나은 결과를 보였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 연구에서 QNN HTP를 이용한 INT8 QAT 모델의 지연이 FP16 기준 151밀리 초에서 41.8밀리 초로 약 72퍼센트 줄었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;QAT는 학습 비용을 여러 배포에 걸쳐 나눌 수 있는 기반 모델에 우선 적용하는 것이 합리적이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;INT8과 FP16은 목적이 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FP16은 부동소수점의 비트 수만 절반으로 줄인 형식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;값의 표현 방식이 그대로이므로 정확도 손실이 작고 변환도 단순하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;크기는 절반으로 줄지만 정수 연산 유닛을 쓰지 못하므로 속도 이득은 제한적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;INT8은 표현 방식 자체가 바뀌므로 손실이 크지만 NPU의 정수 연산 유닛을 온전히 활용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 FP16은 안전한 절충이고 INT8은 공격적인 최적화다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;민감한 층만 INT8로 두고 나머지를 더 낮은 정밀도로 내리는 혼합 정밀도 방식도 널리 쓰인다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;스케일을 텐서 단위로 잡을지 채널 단위로 잡을지&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스케일을 텐서 단위로 잡을.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/B1KFw/dJMcadCTi16/2t4QI0KAdW74f58Q40VWm0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/B1KFw/dJMcadCTi16/2t4QI0KAdW74f58Q40VWm0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/B1KFw/dJMcadCTi16/2t4QI0KAdW74f58Q40VWm0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FB1KFw%2FdJMcadCTi16%2F2t4QI0KAdW74f58Q40VWm0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;스케일을 텐서 단위로 잡을.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양자화는 값의 범위를 어느 단위로 묶어 계산하느냐에 따라 결과가 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;per-tensor는 텐서 전체에 하나의 스케일을 적용하므로 구현이 단순하고 빠르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;per-channel은 출력 채널마다 별도의 스케일을 두므로 값의 분포가 채널별로 다를 때 유리하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;채널 단위 스케일링이 층 단위보다 나은 정확도를 낸다는 것은 여러 연구에서 확인된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 거친 단위의 스케일링은 여러 모델에서 여전히 상당한 정확도 저하를 낳는다는 지적도 함께 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양자화는 균일한 압축이 아니라 층과 채널과 텐서 단위의 선택이 누적된 결과라는 점을 기억해야 한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;임베딩 모델은 왜 다르게 무너지는가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;분류는 순위만 맞으면 되지만 임베딩은 거리가 출력이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적인 분류 모델의 출력은 각 클래스의 점수이고 최종 판정은 가장 큰 값을 고르는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양자화로 점수가 조금씩 흔들려도 1등과 2등의 순서가 바뀌지 않으면 결과는 동일하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 분류에서는 수치 오차가 판정에 반영되지 않는 완충 구간이 넓다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 정리한 대로 얼굴인식의 출력은 임베딩 벡터이고 판정은 두 벡터 사이의 거리로 이루어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;거리 자체가 최종 판정의 근거이므로 수치 오차가 그대로 판정에 전달된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 양자화를 적용해도 분류 모델과 임베딩 모델이 다르게 반응하는 구조적 이유가 여기에 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;임계값 근처의 판정이 먼저 뒤집힌다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;임계값 근처의 판정이 먼저.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b8MQ68/dJMcagGCapi/Ot0KapFNTGkwib6pxINlUK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b8MQ68/dJMcagGCapi/Ot0KapFNTGkwib6pxINlUK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b8MQ68/dJMcagGCapi/Ot0KapFNTGkwib6pxINlUK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb8MQ68%2FdJMcagGCapi%2FOt0KapFNTGkwib6pxINlUK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;임계값 근처의 판정이 먼저.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 다룬 대로 인증은 유사도를 임계값과 비교해 결정된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대부분의 비교는 임계값에서 멀리 떨어져 있어 약간의 오차로는 결과가 바뀌지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제는 임계값 근처에 몰려 있는 비교들이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구간의 유사도가 양자화 오차만큼 이동하면 통과와 거부가 뒤바뀐다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 본 스코어 분포 그림으로 말하면 두 분포가 겹치는 구간에서 판정이 흔들리는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전체 벡터가 거의 안 변했어도 이 구간의 샘플만 뒤집히면 지표는 눈에 띄게 나빠진다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;FMR과 FNMR이 함께 나빠질 수 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임계값을 조정하면 두 오류가 반대로 움직인다는 것이 2부의 결론이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 양자화는 임계값을 건드리는 것이 아니라 분포 자체를 흐트러뜨린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 사람끼리의 유사도가 낮아지고 다른 사람끼리의 유사도가 높아지면 두 분포의 겹침이 커진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;겹침이 커지면 어떤 임계값을 골라도 이전보다 나쁜 조합밖에 얻을 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 임계값 조정으로는 회복되지 않는 성격의 손실이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 때문에 양자화 이후에는 임계값을 다시 잡는 것만으로 충분하지 않고 성능 자체를 다시 측정해야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;다만 아키텍처에 따라 결과가 갈린다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임베딩 모델이 무조건 취약하다고 말하면 부정확하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴인식 모델의 양자화를 비교한 실험에서 아키텍처별로 결과가 크게 갈렸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Transface는 FP32에서 절대 정확도가 더 높지만 INT8 정적 양자화에서 눈에 띄게 성능이 떨어졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반면 FaceNet의 합성곱 잔차 구조는 훨씬 강건해서 정확도를 유지했고 일부 경우에는 저정밀도 최적화의 이득을 보기까지 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 실험은 임베딩 벡터 자체를 양자화하면 성능에 큰 영향 없이 저장 공간을 최대 80퍼센트 줄일 수 있다고 보고했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;트랜스포머 계열이 활성값의 이상치 때문에 양자화에 더 취약하다는 것이 현재까지의 일반적 이해다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;모델이 클수록 저비트에서 급격히 무너진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;모델이 클수록 저비트에서 급격히.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bn6JH0/dJMcafHG3aG/fgsVeKFMVbY2bAkQLxNPEk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bn6JH0/dJMcafHG3aG/fgsVeKFMVbY2bAkQLxNPEk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bn6JH0/dJMcafHG3aG/fgsVeKFMVbY2bAkQLxNPEk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbn6JH0%2FdJMcafHG3aG%2FfgsVeKFMVbY2bAkQLxNPEk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;모델이 클수록 저비트에서 급격히.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비트 폭을 더 낮추면 손실이 어떻게 커지는지를 측정한 연구가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ResNet-50 규모에서 8비트와 6비트의 정확도 차이는 IJB-C의 FMR 1e-4 조건에서 3.92퍼센트였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 조건에서 ResNet-100 규모로 올리면 그 격차가 10.58퍼센트로 벌어졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파라미터가 늘수록 저비트 양자화의 손실이 급격히 커진다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연구진은 이 정도의 저하가 실용성을 제약한다고 평가했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;큰 모델을 공격적으로 양자화해 단말에 올리는 전략이 생각만큼 잘 통하지 않는 이유가 여기에 있다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;코사인 유사도만 보면 안 되는 이유&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;양자화 전후 벡터를 비교하는 것이 첫 점검이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;양자화 전후 벡터를 비.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qVvQZ/dJMcaft4usJ/27W7LiLT96RvExRzmgR5GK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qVvQZ/dJMcaft4usJ/27W7LiLT96RvExRzmgR5GK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qVvQZ/dJMcaft4usJ/27W7LiLT96RvExRzmgR5GK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqVvQZ%2FdJMcaft4usJ%2F27W7LiLT96RvExRzmgR5GK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;양자화 전후 벡터를 비.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양자화가 잘 되었는지 확인하는 가장 손쉬운 방법이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 이미지를 원본 모델과 양자화 모델에 각각 넣어 두 벡터를 얻는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 벡터의 코사인 유사도가 1에 가까우면 양자화로 인한 변화가 작다고 판단한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;구현이 간단하고 데이터도 적게 들어 실무에서 널리 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;값이 0.99를 넘으면 통과로 보는 관행도 흔하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제는 이 점검이 통과 조건이 아니라 최소 조건이라는 점이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;그런데 코사인이 보존되어도 판정은 바뀔 수 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코사인 유사도가 높다는 것은 벡터의 방향이 거의 안 바뀌었다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 인증 판정에서 문제가 되는 것은 방향의 절대적 변화가 아니라 임계값 대비 상대적 위치다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 본 대로 임계값 근처의 샘플은 아주 작은 이동만으로도 결과가 뒤집힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전체 벡터가 99.9퍼센트 보존되었어도 겹침 구간의 샘플이 뒤집히면 지표는 나빠진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게다가 이 점검은 같은 사람끼리의 거리와 다른 사람끼리의 거리가 어떻게 변했는지를 전혀 알려주지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 코사인 점검은 무언가 크게 잘못되었을 때만 걸리는 필터에 가깝다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;실제로 INT8에서 코사인이 거의 그대로인 사례가 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;벡터 저장소의 INT8 스칼라 양자화를 왕복시킨 뒤 코사인 유사도를 다시 측정한 실험이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;차원별 INT8 양자화는 시험한 모든 조건에서 코사인을 소수점 셋째 자리까지 보존했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스케일링 후 차원당 양자화 잡음이 255분의 1 수준이라 다른 교란보다 작기 때문이라는 분석이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 결과는 코사인 보존이 양자화의 안전성을 보증하지 않는다는 것을 보여준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;벡터는 거의 그대로인데 그 사실이 판정 정확도에 대해서는 아무것도 말해주지 않기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 실험에서 벡터마다 별도의 스케일을 적용하는 방식은 방향을 움직일 수 있다고 언급되어 있어,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양자화 단위 선택이 여기서도 변수가 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;2부의 지표로 다시 재는 것이 유일한 검증이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2부의 지표로 다시 재는 것이 유일.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b32dkA/dJMcaafhTtP/j7CfR3G39M0AsffaNe6hyk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b32dkA/dJMcaafhTtP/j7CfR3G39M0AsffaNe6hyk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b32dkA/dJMcaafhTtP/j7CfR3G39M0AsffaNe6hyk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb32dkA%2FdJMcaafhTtP%2Fj7CfR3G39M0AsffaNe6hyk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;2부의 지표로 다시 재는 것이 유일.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양자화 이후 성능을 확인하는 유일한 방법은 인증 지표를 처음부터 다시 측정하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 사람끼리의 비교와 다른 사람끼리의 비교를 충분한 규모로 수행해 스코어 분포를 다시 그린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 위에서 FMR과 FNMR을 계산하고 곡선을 그려 원본 모델의 곡선과 겹쳐 본다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 대로 특정 FMR 조건에서의 값을 함께 보고해야 비교가 성립한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스 모듈까지 양자화했다면 APCER과 BPCER도 별도로 재측정해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 배포 전에 2부의 측정 절차를 통째로 한 번 더 돌리는 것이 정석이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;재측정은 자체 운영 데이터로 해야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공개 벤치마크로 재측정하면 절차는 지켰지만 결론은 신뢰하기 어렵다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 확인한 대로 LFW 같은 데이터셋은 이미 포화되어 차이를 드러내지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3부에서 본 것처럼 정면 위주의 데이터는 어려운 조건에서 벌어지는 격차를 감춘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제 서비스의 사용자 구성과 촬영 환경은 공개 데이터셋과 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 양자화 손실은 특정 조건에서 집중적으로 나타나는 경우가 많아 평균값만 보면 놓친다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자체 수집 데이터가 부족하다면 그 사실 자체가 양자화를 공격적으로 밀어붙이지 말아야 할 이유가 된다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;시퀀스 모델은 예산 계산이 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;얼굴은 한 장이지만 립 모션은 수십 프레임이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;얼굴은 한 장이지만 립 모션은 수십.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/l4TIE/dJMcaafhTt8/WN8Cjk7n3OiBhvQuXgwzP1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l4TIE/dJMcaafhTt8/WN8Cjk7n3OiBhvQuXgwzP1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l4TIE/dJMcaafhTt8/WN8Cjk7n3OiBhvQuXgwzP1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl4TIE%2FdJMcaafhTt8%2FWN8Cjk7n3OiBhvQuXgwzP1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;얼굴은 한 장이지만 립 모션은 수십.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부까지 다룬 얼굴인식은 정렬된 이미지 한 장을 한 번 처리하면 끝난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부에서 다룬 립 모션 모델은 입력이 프레임 시퀀스다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초당 25 프레임으로 2초짜리 발화를 처리하면 50 프레임이 입력된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프론트엔드는 각 프레임에 대해 개별적으로 실행되어야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 같은 크기의 모델이라도 실행 횟수가 수십 배가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴인식에서 통했던 모델 크기 기준이 여기서는 통하지 않는 이유다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;프레임 수만큼 연산이 곱해진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프론트엔드의 한 프레임 처리 시간이 5밀리 초라면 50 프레임은 250밀리 초가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기에 백엔드의 시퀀스 처리 시간이 더해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MobileFaceNet 계열의 가장 빠른 모델이 모바일에서 18밀리 초의 실측 추론 시간을 보고했는데,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 값을 프레임마다 쓴다면 시퀀스 전체로는 감당할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 립 모션 모델의 프론트엔드는 얼굴인식 모델보다 훨씬 가벼워야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3D 합성곱은 시간 방향으로도 커널을 확장하므로 연산량이 2D보다 크다는 점도 부담을 더한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부에서 3D 합성곱을 앞단 한 겹에만 적용하는 것이 관행이라고 한 배경에 이 제약이 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;실시간 조건은 프레임 간격 안에 들어오는 것이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실시간이라는 말은 모호하므로 구체적 기준으로 바꿔야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초당 25 프레임으로 들어오는 영상을 실시간 처리한다는 것은 한 프레임을 40밀리 초 안에 끝낸다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 시간 안에 검출과 정렬과 프론트엔드 추론이 모두 들어가야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 플래그십 NPU에서 SSD MobileNet 계열 객체 검출이 30에서 40밀리 초, 자세 추정이 25밀리 초 수준으로 보고된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 검출 하나만으로도 예산의 대부분을 소진할 수 있다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증을 3초 안에 끝내야 한다는 요구가 있다면 이 계산을 먼저 해봐야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;프레임 레이트가 바뀌면 예산도 바뀐다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부에서 다룬 대로 실제 단말의 프레임 레이트는 기종과 설정에 따라 편차가 크다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초당 60 프레임으로 들어오면 한 프레임에 허용되는 시간이 약 17밀리 초로 줄어든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반대로 조명이 어두워 카메라가 초당 15 프레임으로 떨어지면 시간은 늘어나지만 시퀀스 품질이 나빠진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 처리 시간과 입력 품질이 같은 변수에 묶여 반대로 움직인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입력을 학습 시점의 프레임 레이트로 리샘플링하는 처리도 그 자체로 연산을 소모한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실측 없이 사양표만 보고 계산하면 배포 후에 어긋나는 대표적인 항목이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;두 경로가 같은 자원을 나눠 쓴다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;두 경로가 같은 자원을 나.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brdGjq/dJMcaft4utm/YhkJa4fSZEOkrywhDjjPzk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brdGjq/dJMcaft4utm/YhkJa4fSZEOkrywhDjjPzk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brdGjq/dJMcaft4utm/YhkJa4fSZEOkrywhDjjPzk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrdGjq%2FdJMcaft4utm%2FYhkJa4fSZEOkrywhDjjPzk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;두 경로가 같은 자원을 나.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1부에서 정리한 대로 라이브니스는 인식 경로 옆에 병렬로 붙는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 경로가 같은 프레임을 받아 각각 연산을 수행하므로 자원을 나눠 써야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 다룬 멀티모달 구성이라면 음성 경로까지 더해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NPU는 대개 한 번에 하나의 모델을 실행하므로 순차 실행되거나 일부가 CPU로 밀린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CPU로 밀린 모델은 지연이 몇 배로 늘어나 전체 예산을 초과시킨다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 모델별 지연을 따로 재는 것으로는 부족하고 전체 파이프라인을 함께 돌려 측정해야 한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;서버로 갈 수밖에 없을 때의 절충&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;1:N 식별은 갤러리를 단말에 둘 수 없다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 대로 1:N 식별은 등록된 모든 사용자와 비교하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수만 명 규모의 갤러리를 각 단말에 복제해 두는 것은 저장 공간 측면에서도 보안 측면에서도 성립하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단말 하나가 탈취되면 전체 사용자의 템플릿이 함께 유출된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10부에서 본 대로 그 템플릿에서 얼굴을 복원할 수 있으므로 피해가 영구적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 1:N이 필요한 시나리오는 갤러리를 서버에 두는 것 외에 선택지가 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 언급한 벡터 검색 인프라가 필요해지는 지점도 여기다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;VDI와 출입 통제는 처음부터 서버 구조다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;VDI와 출입 통제는 처음부터.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bc6VpQ/dJMcahldLlQ/Yco10BdfkZz4I3wygwkLo0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bc6VpQ/dJMcahldLlQ/Yco10BdfkZz4I3wygwkLo0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bc6VpQ/dJMcahldLlQ/Yco10BdfkZz4I3wygwkLo0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbc6VpQ%2FdJMcahldLlQ%2FYco10BdfkZz4I3wygwkLo0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;VDI와 출입 통제는 처음부터.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부에서 다룬 대로 가상 데스크톱 환경에서는 애플리케이션이 물리 카메라에 직접 접근하지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원격 접속 프로토콜이 로컬 카메라를 가상 장치로 전달하는 구조이므로 정상 동작 자체가 가상 카메라를 경유한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출입 통제 단말은 사용자의 개인 기기가 아니라 벽에 붙은 공용 장비다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물리적 접근이 통제되지 않은 위치에 있다면 그 단말 자체를 믿을 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 환경 모두 단말을 신뢰 기반으로 삼는 온디바이스 전략의 전제가 성립하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우 온디바이스가 최선이라는 원칙을 그대로 적용하면 오히려 위험해진다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;무엇을 단말에 남길지 나누는 설계&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전부 단말에서 처리하거나 전부 서버에서 처리하는 두 선택지만 있는 것은 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;검출과 정렬과 품질 검사를 단말에서 수행하고 그 결과만 서버로 보내는 구성이 가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스 판정을 단말에서 하고 인식만 서버에서 하는 분할도 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 나누면 전송량이 줄고 서버가 원본 영상을 보지 않아도 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 9부에서 다룬 대로 단말의 판정 결과를 그대로 신뢰하면 그 값을 조작하는 공격이 성립한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단말 판정을 신뢰하려면 기기 증명과 결과 서명이 함께 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;서버로 보낼 때 무엇을 보낼 것인가&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;서버로 보낼 때 무엇을 보낼 것인가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lFjpS/dJMcaf1RWIQ/xpTneMLvfUpPWtFrpeRuAk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lFjpS/dJMcaf1RWIQ/xpTneMLvfUpPWtFrpeRuAk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lFjpS/dJMcaf1RWIQ/xpTneMLvfUpPWtFrpeRuAk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlFjpS%2FdJMcaf1RWIQ%2FxpTneMLvfUpPWtFrpeRuAk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;서버로 보낼 때 무엇을 보낼 것인가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원본 영상을 보내면 서버가 생체정보 원본을 보유하게 되어 10부의 규제 부담이 최대가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임베딩만 보내면 전송량이 줄지만 서버는 여전히 특징정보를 보유한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10부에서 다룬 되돌릴 수 없는 변환을 단말에서 적용한 뒤 그 결과만 보내는 방식이 절충안이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우 서버는 원본도 임베딩도 갖지 않으며 변환 파라미터는 단말이나 별도 저장소가 관리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동형암호를 쓰면 서버가 암호문 상태로 비교까지 수행할 수 있으나 연산 비용이 문턱이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어느 방식이든 보내는 데이터가 무엇인지 명시하는 것이 설계의 첫 단계다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;시리즈 전체가 하나의 판단으로 수렴한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지 다룬 모든 결정에는 같은 구조가 반복된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임계값을 높이면 보안이 좋아지고 사용성이 나빠진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요소를 늘리면 FMR이 곱으로 줄고 FNMR이 합으로 늘어난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;액티브 라이브니스를 도입하면 재생 공격이 어려워지고 사용자 이탈이 늘어난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양자화를 공격적으로 하면 모델이 작아지고 인식 정확도가 떨어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체인증 시스템 설계란 이 교환 관계들을 자기 서비스의 조건에 맞게 선택하는 일이며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 선택을 근거 있게 하려면 2부의 지표로 매번 다시 재는 것 외에 방법이 없다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;나가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WS00k/dJMcajwwqCA/UK8cQKzM72BWlpVs4SYt9k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WS00k/dJMcajwwqCA/UK8cQKzM72BWlpVs4SYt9k/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WS00k/dJMcajwwqCA/UK8cQKzM72BWlpVs4SYt9k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWS00k%2FdJMcajwwqCA%2FUK8cQKzM72BWlpVs4SYt9k%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체인증이 온디바이스를 선호하는 이유는 보관할 것이 없어지고 왕복이 사라지며 공격 표면이 줄어들기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엣지 런타임은 이름과 권장 경로가 최근 크게 바뀌었으므로 오래된 자료를 그대로 따르면 안 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양자화는 모델을 작고 빠르게 만들지만 임베딩 모델에서는 거리 자체가 출력이라 수치 오차가 판정으로 직결된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 취약성의 정도는 아키텍처와 모델 크기와 비트 폭에 따라 갈리므로 일반화해서 말할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코사인 유사도 점검은 최소 조건일 뿐이며, 인증 지표를 자체 데이터로 재측정하는 것이 유일한 검증이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;열한 편에 걸쳐 다룬 것은 결국 하나의 질문이었다. 이 얼굴이 누구인지, 진짜인지, 어디서 왔는지를 각각 어떻게 확인하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 확인에 얼마의 대가를 치를 것인가다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;참고 자료&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;엣지 런타임&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Google AI Edge, LiteRT 문서. 2024년 9월 TensorFlow Lite에서 개명. CompiledModel API 및 LiteRT-LM.&lt;/li&gt;
&lt;li&gt;Android NDK, Neural Networks API 문서 및 NNAPI Migration Guide. Android 15부터 deprecated, CPU 백엔드 전환 예상 및 대안 권고.&lt;/li&gt;
&lt;li&gt;Android Open Source Project, NNAPI Runtime 문서, 2026-07-13 갱신.&lt;/li&gt;
&lt;li&gt;Apple, Core ML 문서. CPU, GPU, Neural Engine 자동 스케줄링 및 compute units 설정.&lt;/li&gt;
&lt;li&gt;Microsoft, ONNX Runtime 문서 및 ONNX Runtime Mobile. 실행 제공자 구조.&lt;/li&gt;
&lt;li&gt;NVIDIA, TensorRT 문서. 계층 융합, 커널 자동 튜닝, 정밀도 보정.&lt;/li&gt;
&lt;li&gt;Fora Soft, &quot;On-Device AI on Android: 2026 Build Guide&quot;, 2026. NNAPI에서 LiteRT delegate로의 이전, 런타임 비교, 온디바이스 지연 수치.&lt;/li&gt;
&lt;li&gt;Cursa, &quot;Deployment Runtimes: TensorFlow Lite, ONNX Runtime, and Core ML&quot;. 연산자 지원 범위를 첫 번째 수용 기준으로 다루라는 권고.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;양자화&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;S. Dai et al., &quot;VS-Quant: Per-vector Scaled Quantization for Accurate Low-Precision Neural Network Inference&quot;, MLSys 2021. per-channel과 per-layer 비교 및 보정 품질 편차.&lt;/li&gt;
&lt;li&gt;&quot;Experimental Evaluation of Quantization Methods in Facial Recognition&quot;, UFMS. FaceNet과 Transface의 INT8 양자화 강건성 차이, 임베딩 벡터 양자화의 저장 공간 절감.&lt;/li&gt;
&lt;li&gt;&quot;Ef-QuantFace: Streamlined Face Recognition with Small Data and Low-Bit Precision&quot;, arXiv:2402.18163. R50과 R100의 w8a8 대비 w6a6 정확도 격차.&lt;/li&gt;
&lt;li&gt;Bondarenko et al., EMNLP 2021 및 후속 재현 연구 arXiv:2603.04308. 트랜스포머 활성값 이상치와 PTQ 실패.&lt;/li&gt;
&lt;li&gt;&quot;Bridging the Training-Deployment Gap: Gated Encoding and Multi-Scale Refinement for Efficient Quantization-Aware Image Enhancement&quot;, arXiv:2604.21743. INT8 QAT와 PTQ 비교 및 QNN HTP 지연 개선.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;검증 방법론&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&quot;VectorSmuggle: Steganographic Exfiltration in Embedding Stores and a Cryptographic Provenance Defense&quot;, arXiv:2605.13764. 차원별 INT8 양자화의 코사인 유사도 보존 측정.&lt;/li&gt;
&lt;li&gt;ISO/IEC 19795-1:2021 및 ISO/IEC 30107-3:2023. 성능 및 PAD 지표 재측정 근거.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;온디바이스 성능&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;S. Chen et al., &quot;MobileFaceNets: Efficient CNNs for Accurate Real-Time Face Verification on Mobile Devices&quot;, arXiv:1804.07573. 4.0MB 모델, 모바일 실측 추론 18밀리초.&lt;/li&gt;
&lt;li&gt;AlephZero Labs, &quot;On-Device AI Inference in 2026: Sub-20ms on Android&quot;, 2026-04.&lt;/li&gt;
&lt;li&gt;&quot;MobileAgeNet: Lightweight Facial Age Estimation for Mobile Deployment&quot;, arXiv:2604.17007. 실기기 평균 지연 14.4밀리초 측정 방법론.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;앞선 편의 참조&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;2부: FMR, FNMR, APCER, BPCER 정의 및 측정 절차.&lt;/li&gt;
&lt;li&gt;4부: 임베딩 공간과 임계값, 벤치마크 포화.&lt;/li&gt;
&lt;li&gt;5부: 프론트엔드와 백엔드 구성, 프레임 레이트와 시퀀스 길이.&lt;/li&gt;
&lt;li&gt;7부: 다중 요소 결합의 교환 관계.&lt;/li&gt;
&lt;li&gt;9부: 인젝션 공격, 기기 증명과 TEE, VDI와 ACS 조건.&lt;/li&gt;
&lt;li&gt;10부: 생체인식 특징정보의 법적 지위, 되돌릴 수 없는 변환과 동형암호.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML+DL/Vision AI</category>
      <category>CoreML</category>
      <category>INT8</category>
      <category>LiteRT</category>
      <category>onnxruntime</category>
      <category>qat</category>
      <category>생체인증</category>
      <category>양자화</category>
      <category>얼굴임베딩</category>
      <category>엣지추론</category>
      <category>온디바이스</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1379</guid>
      <comments>https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11#entry1379comment</comments>
      <pubDate>Tue, 11 Aug 2026 12:14:26 +0900</pubDate>
    </item>
    <item>
      <title>생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)</title>
      <link>https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10</link>
      <description>&lt;div class=&quot;book-toc&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목차&lt;/p&gt;
&lt;ul id=&quot;toc&quot; style=&quot;list-style-type: none;&quot; data-ke-list-type=&quot;none&quot;&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;background-color: #eeeeee; padding: 10px; border-radius: 10px;&quot;&gt;
&lt;p style=&quot;font-size: 18px;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;얼굴인식과 생체인증&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4%EB%8A%94-%EC%99%9C-%EB%B3%84%EA%B0%9C%EC%9D%98-%EB%AC%B8%EC%A0%9C%EC%9D%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스는 왜 별개의 문제인가 | 얼굴인식과 생체인증 (1)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EC%9A%A9%EC%96%B4-%EC%82%AC%EC%A0%84-FAR%EB%B6%80%ED%84%B0-PAD-ISO-30107%EA%B9%8C%EC%A7%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체인증 용어 사전: FAR부터 PAD, ISO 30107까지 | 얼굴인식과 생체인증 (2)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EA%B2%80%EC%B6%9C%EA%B3%BC-%EC%A0%95%EB%A0%AC-%EC%96%BC%EA%B5%B4%EC%9D%84-%EC%B0%BE%EA%B3%A0-%EB%B0%98%EB%93%AF%ED%95%98%EA%B2%8C-%EC%84%B8%EC%9A%B0%EA%B8%B0-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 검출과 정렬: 얼굴을 찾고 반듯하게 세우기 | 얼굴인식과 생체인증 (3)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;들어가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dm6WTw/dJMcahyGa8S/nRqNjFkssVugphU8H1n5V0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dm6WTw/dJMcahyGa8S/nRqNjFkssVugphU8H1n5V0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dm6WTw/dJMcahyGa8S/nRqNjFkssVugphU8H1n5V0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdm6WTw%2FdJMcahyGa8S%2FnRqNjFkssVugphU8H1n5V0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부까지는 공격을 어떻게 막을 것인가를 다뤘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 시스템이 정상적으로 동작할 때에도 남는 문제를 다룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증에 성공하든 실패하든 시스템은 사용자의 얼굴에서 뽑아낸 데이터를 어딘가에 갖고 있어야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 데이터가 무엇이고, 유출되면 무슨 일이 벌어지고, 법이 무엇을 요구하며, 기술로 어디까지 막을 수 있는지가 이 편의 주제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비밀번호는 바꿀 수 있지만 얼굴은 바꿀 수 없다는 비대칭이 논의의 출발점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 애초에 저장하지 않는 설계와, 저장하되 원본이 아닌 것을 저장하는 설계를 나눠 정리한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;비밀번호는 바꿀 수 있지만 얼굴은 못 바꾼다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;유출된 비밀번호는 교체하면 끝난다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;유출된 비밀번호는 교체하.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/W3yH8/dJMcabSIJ6E/BuuKIGkMqhy7mWsPzuSWYk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/W3yH8/dJMcabSIJ6E/BuuKIGkMqhy7mWsPzuSWYk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/W3yH8/dJMcabSIJ6E/BuuKIGkMqhy7mWsPzuSWYk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FW3yH8%2FdJMcabSIJ6E%2FBuuKIGkMqhy7mWsPzuSWYk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;유출된 비밀번호는 교체하.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비밀번호가 유출되었을 때의 대응 절차는 확립되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용자는 새 비밀번호를 설정하고 서비스는 기존 값을 폐기한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유출된 값은 그 순간 아무 쓸모가 없어지므로 피해가 그 시점에서 멈춘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 비밀번호를 여러 서비스에서 쓴 경우에도 각각 바꾸면 문제가 해소된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비밀번호가 안전한 인증 수단이어서가 아니라 교체 가능하기 때문에 이 절차가 성립한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 비밀번호 체계의 안전성은 값 자체가 아니라 폐기와 재발급이 가능하다는 성질에서 나온다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;얼굴은 교체할 수단이 존재하지 않는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴은 사용자가 선택한 값이 아니라 타고난 신체적 특징이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유출되었다고 해서 새로운 얼굴을 발급받을 방법이 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지문이라면 손가락을 바꿔 열 번까지 재발급이 가능하다는 농담이 있지만 얼굴은 하나뿐이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성형수술로 바꾼다 해도 인식 모델이 여전히 동일인으로 판정할 가능성이 높다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 생체정보는 폐기와 재발급이라는 개념 자체가 성립하지 않는 인증 수단이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것이 비밀번호와 생체정보를 같은 방식으로 다룰 수 없는 근본 이유다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;한 번 유출되면 남은 평생 재사용된다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유출된 비밀번호의 가치는 사용자가 값을 바꾸는 순간 사라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유출된 얼굴 데이터의 가치는 시간이 지나도 줄어들지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10년 전에 유출된 얼굴로 지금 인증을 시도해도 상당한 확률로 통과한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;노화로 인한 변화가 있지만 4부에서 본 대로 현대 인식 모델은 나이 차이에 상당히 강건하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자 입장에서는 한 번 확보한 데이터가 만료되지 않는 자산이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유출 사고의 피해 규모를 계산할 때 이 시간 축을 반영해야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;서비스마다 다른 값을 쓸 수도 없다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보안 지침은 서비스마다 다른 비밀번호를 쓰라고 권한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 곳이 뚫려도 다른 곳으로 번지지 않게 하려는 조치다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴은 어느 서비스에 등록하든 같은 얼굴이므로 이 분리가 불가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 서비스에서 유출된 데이터가 다른 모든 서비스에 그대로 통한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용자가 등록한 서비스가 많을수록 유출 지점도 늘어나지만 피해를 격리할 방법은 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제를 기술로 풀려는 시도가 섹션 6의 주제다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;이 비대칭이 규제와 기술 양쪽의 출발점이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;이 비대칭이 규제와.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pHT5N/dJMcacjMnJP/Gz6uSPN0hvtv5fQPfW1YBK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pHT5N/dJMcacjMnJP/Gz6uSPN0hvtv5fQPfW1YBK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pHT5N/dJMcacjMnJP/Gz6uSPN0hvtv5fQPfW1YBK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpHT5N%2FdJMcacjMnJP%2FGz6uSPN0hvtv5fQPfW1YBK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;이 비대칭이 규제와.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;교체 불가능성 때문에 생체정보는 다른 개인정보보다 강한 보호를 요구받는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각국 법이 생체정보를 별도 범주로 분류하고 추가 요건을 부과하는 근거가 여기에 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기술 쪽에서는 원본을 저장하지 않는 방법을 찾는 연구가 오래 이어져 왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 방향은 같은 문제를 규범과 공학이라는 다른 수단으로 다루는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 이 논의가 실제로 시작된 계기는 비대칭 자체가 아니라 구체적인 공격의 등장이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저장된 것이 벡터일 뿐이라는 통념이 깨진 시점이 바로 그 계기다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;임베딩에서 얼굴을 되살릴 수 있는가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;저장되는 것은 원본 이미지가 아니라 벡터다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;저장되는 것은 원본 이미지.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2Xxbm/dJMcabSIJ6Q/IOw6XfDDF2zpMaj0DeKLy1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2Xxbm/dJMcabSIJ6Q/IOw6XfDDF2zpMaj0DeKLy1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2Xxbm/dJMcabSIJ6Q/IOw6XfDDF2zpMaj0DeKLy1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2Xxbm%2FdJMcabSIJ6Q%2FIOw6XfDDF2zpMaj0DeKLy1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;저장되는 것은 원본 이미지.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 정리한 대로 인식 시스템이 저장하는 것은 얼굴 사진이 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델이 얼굴에서 뽑아낸 512개의 실수값, 즉 임베딩 벡터를 저장한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 벡터를 템플릿이라 부르며 인증 시점의 비교 대상이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;숫자의 나열이므로 사람이 봐서는 어떤 얼굴인지 알 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;용량도 2킬로바이트 수준으로 원본 이미지보다 훨씬 작다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구조 때문에 많은 시스템이 원본 이미지는 폐기하고 벡터만 보관한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;벡터라서 안전하다는 통념이 오래 유지됐다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;벡터에서 원본을 되돌릴 수 없다는 전제는 오랫동안 널리 받아들여졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임베딩 추출이 정보를 크게 압축하는 과정이므로 되돌리기 어렵다는 직관이 근거였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 전제 위에서 벡터 저장은 원본 저장과 다른 취급을 받았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;암호학적 해시처럼 되돌릴 수 없는 값으로 여겨진 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제로 초기 시스템의 설계 문서에는 벡터 저장이 프라이버시 대책으로 기술되기도 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 이 전제는 검증된 것이 아니라 가정에 불과했다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;벡터만으로 얼굴을 복원하는 공격이 존재한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;벡터만으로 얼굴을 복원하.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Hdc6B/dJMcabSIJ6X/TrLMHHD1pnFTbtcMwKnfIk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Hdc6B/dJMcabSIJ6X/TrLMHHD1pnFTbtcMwKnfIk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Hdc6B/dJMcabSIJ6X/TrLMHHD1pnFTbtcMwKnfIk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHdc6B%2FdJMcabSIJ6X%2FTrLMHHD1pnFTbtcMwKnfIk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;벡터만으로 얼굴을 복원하.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임베딩 벡터를 입력받아 그에 대응하는 얼굴 이미지를 생성하는 연구가 축적되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영문 문헌은 이를 template inversion 또는 template reconstruction이라 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본 발상은 생성 모델을 학습시켜 벡터에서 이미지로 가는 역방향 함수를 근사하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인식 모델이 공개된 경우에는 그 모델을 이용해 생성 결과를 반복 개선할 수도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;복원된 이미지가 원본과 픽셀 단위로 일치하지는 않지만 같은 사람으로 알아볼 수 있는 수준에 이른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 벡터는 되돌릴 수 없는 값이 아니라 압축된 얼굴에 가깝다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;복원된 얼굴이 인증을 통과하기도 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;복원된 얼굴이 인증을.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/br4WJP/dJMcadCS6TH/LOAjyk42299t9Tvu9O5Wb1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/br4WJP/dJMcadCS6TH/LOAjyk42299t9Tvu9O5Wb1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/br4WJP/dJMcadCS6TH/LOAjyk42299t9Tvu9O5Wb1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbr4WJP%2FdJMcadCS6TH%2FLOAjyk42299t9Tvu9O5Wb1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;복원된 얼굴이 인증을.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프라이버시 관점에서 더 중요한 것은 복원 결과가 인증에 쓰일 수 있다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;복원 이미지의 임베딩이 원본 템플릿과 가까우므로 매칭 단계를 통과한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 템플릿 유출은 개인정보 유출인 동시에 인증 우회 수단의 유출이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기에 9부에서 다룬 인젝션 공격을 결합하면 복원된 얼굴을 카메라 없이 주입할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 8부에서 다룬 라이브니스가 제시 공격은 막지만, 주입 경로에서는 그 방어가 성립하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;템플릿 데이터베이스가 유출된 시스템은 사실상 전면 재등록 외에 대안이 없다는 뜻이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;이 사실이 규제 논의의 실제 출발점이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;벡터가 되돌릴 수 없는 값이라면 템플릿 저장은 규제 대상에서 상당 부분 벗어날 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;복원이 가능하다는 사실이 확인되면서 템플릿도 생체정보 본체와 같은 취급을 받게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;법이 요구하는 암호화 저장과 별도 동의가 원본뿐 아니라 특징 데이터에도 적용되는 근거다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기술적으로도 되돌릴 수 없는 변환을 별도로 적용해야 한다는 요구가 여기서 나왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;섹션 6에서 다룰 접근들이 모두 이 문제에 대한 답으로 제안된 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 법이 무엇을 요구하는지부터 확인할 필요가 있다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;한국 법은 생체정보를 세 층으로 나눈다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;생체정보와 생체인식정보와 생체인식 특징정보&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;한국 법은 생체정보를.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGpDAJ/dJMcabSIJ65/EKMuyDWUGcfR4fscDEdZOK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGpDAJ/dJMcabSIJ65/EKMuyDWUGcfR4fscDEdZOK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGpDAJ/dJMcabSIJ65/EKMuyDWUGcfR4fscDEdZOK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGpDAJ%2FdJMcabSIJ65%2FEKMuyDWUGcfR4fscDEdZOK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;한국 법은 생체정보를.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인정보보호위원회의 안내서는 관련 개념을 세 층으로 구분한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 넓은 범주가 생체정보이며 신체적, 생리적, 행동적 특징에 관한 정보를 포괄한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그중 특정 개인을 알아볼 목적으로 기술적 수단을 통해 생성한 것이 생체인식정보다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체인식정보 중에서도 원본에서 추출한 특징 데이터를 생체인식 특징정보라 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 다룬 임베딩 벡터가 바로 이 특징정보에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세 층위마다 적용되는 의무가 다르므로 자기 시스템이 어디에 해당하는지 먼저 판단해야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;민감정보 지위는 특징정보에만 붙는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인정보 보호법 제23조와 시행령 제18조가 민감정보의 범위를 정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시행령은 개인의 신체적, 생리적, 행동적 특징에 관한 정보로서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특정 개인을 알아볼 목적으로 일정한 기술적 수단을 통해 생성한 정보를 민감정보로 규정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지문, 홍채, 안면인식 데이터, 음성, 정맥 패턴이 여기에 포함된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안내서 해설에 따르면 생체인식정보 중 생체인식 특징정보가 현행법상 민감정보에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 일반적인 얼굴 사진과 그로부터 추출한 임베딩은 법적 지위가 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구분을 놓치면 필요한 절차를 빠뜨리거나 불필요한 절차를 과도하게 밟게 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;별도 동의가 필요하다는 뜻이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;민감정보는 원칙적으로 처리가 금지되며 제한된 경우에만 예외가 허용된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 일반적인 예외가 정보주체로부터 별도 동의를 받는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;별도라는 표현이 핵심인데, 다른 개인정보 수집 동의와 묶어서 받으면 요건을 충족하지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동의 화면에서 항목을 분리하고 처리 목적과 보유 기간을 따로 고지해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동의하지 않으면 서비스를 이용할 수 없게 만드는 구조도 문제가 될 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴인증을 선택 수단으로 두고 대체 수단을 함께 제공하는 설계가 이런 이유에서 권장된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;암호화 저장은 고시상의 의무다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;법률 조문만 보면 암호화 의무가 명시적으로 드러나지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제 근거는 개인정보 안전성 확보조치 기준이라는 고시에 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 고시에 따라 생체인식정보는 암호화 대상에 해당하므로 암호화하여 저장해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;민감정보 여부와 별개로 생체인식정보 전체가 대상이라는 점에 주의해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 별도 동의는 특징정보에, 암호화는 생체인식정보 전반에 적용되는 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 의무의 적용 범위가 다르므로 각각 따로 확인해야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;실제 기준은 법조문이 아니라 안내서와 고시에 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;법률과 시행령은 원칙만 제시하고 구체적 기준은 하위 문서가 담당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인정보보호위원회의 『생체정보 보호 안내서』가 실무 기준을 제공하며 2024년 12월 30일 자가 현행이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 안내서는 지문과 홍채와 얼굴인식 같은 민감한 생체인식정보를 안전하게 처리하기 위한 지침으로 마련되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년 9월 11일 시행되는 개정 개인정보 보호법이 있으나,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개정의 골자는 개인정보 보호책임자 관련 책임 강화와 일정 규모 이상 사업자의 ISMS-P 인증 의무화, 과징금 상한 상향이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;과징금 상한이 관련 매출 기준에서 전체 매출의 10퍼센트로 올라간 점이 가장 큰 변화로 꼽힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체정보 조항 자체의 변경은 확인되지 않으나, 제재 수준이 올라간 만큼 기존 의무의 이행 부담은 커진다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;해외 규제는 두 갈래로 움직인다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;EU는 용도별로 금지와 고위험을 나눈다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;해외 규제는 두 갈래로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYXMGl/dJMcaiYxP7j/XsKfKNkLfpNdMblI9sJ9I0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYXMGl/dJMcaiYxP7j/XsKfKNkLfpNdMblI9sJ9I0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYXMGl/dJMcaiYxP7j/XsKfKNkLfpNdMblI9sJ9I0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYXMGl%2FdJMcaiYxP7j%2FXsKfKNkLfpNdMblI9sJ9I0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;해외 규제는 두 갈래로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EU의 AI Act는 인공지능 시스템을 위험 수준에 따라 분류하고 차등 규제한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체인식은 용도에 따라 여러 등급에 걸쳐 있어 하나로 묶어 말할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공공장소에서의 실시간 원격 생체인식 신원확인은 원칙적으로 금지되며 제한된 예외만 허용된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반면 본인 확인 목적의 생체인증은 금지가 아니라 고위험 범주에서 요건을 부과받는 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인정보 처리 자체는 GDPR이 별도로 규율하므로 두 법이 겹쳐 적용된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 EU 시장을 겨냥한다면 어떤 용도로 쓰는지에 따라 적용 조항이 완전히 달라진다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;시행 일정이 2026년에 다시 조정되었다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AI Act는 단계적으로 시행되도록 설계되어 조항마다 적용 시점이 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년 5월 EU는 디지털 옴니버스를 통해 생체인식을 포함한 고위험 시스템의 준수 기한을 연기했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 옴니버스에서 비동의 성적 콘텐츠나 아동 성착취물을 생성하는 AI 시스템은 금지 대상으로 명시되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기업은 2026년 12월 2일까지 이 부분의 준수를 확보해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시행 일정이 반복해서 조정되고 있으므로 특정 시점의 일정표를 근거로 계획을 세우면 위험하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EU 규제를 인용할 때는 반드시 확인 시점을 함께 밝히는 편이 안전하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;미국은 주 단위 법과 집단소송으로 움직인다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미국은 연방 차원의 포괄적 생체정보 법이 없고 주별로 규율한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 영향력이 큰 것이 일리노이의 생체정보 프라이버시법인 BIPA다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 법의 특징은 개인이 직접 소송을 제기할 수 있는 권리를 부여한다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2019년 주 대법원 판결로 실제 피해를 입증할 필요 없이 통지와 동의 없는 수집 자체가 침해로 인정되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;법정 손해배상은 과실 위반 건당 1,000달러, 고의나 중과실 위반 건당 5,000달러다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2024년 개정으로 일부 손해배상이 제한되었지만 기본 구조는 유지되고 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;출입 통제와 근태 관리가 가장 흔한 소송 유형이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BIPA 소송은 대기업과 개인의 대결 구도로 알려져 있지만 실제 분포는 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 흔한 유형은 지문 출퇴근 기록기를 도입하면서 서면 동의 절차를 갖추지 않은 고용주 사례다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그다음이 사무실과 창고와 공장이 얼굴인식 출입 시스템을 도입하면서 동의 요건을 놓친 경우다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기술 자체가 문제가 아니라 통지와 동의와 보유 정책 공개라는 절차를 빠뜨린 것이 문제가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출입 통제 시장을 겨냥하는 기업에게 이 판례군은 남의 이야기가 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국 법의 별도 동의 요건도 실질적으로 같은 지점을 겨냥한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;합의 금액이 사업 존속을 위협하는 수준이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2025년 한 해에만 일리노이에서 107건 이상의 신규 BIPA 집단소송이 제기되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주요 합의를 보면 Clearview AI가 5,175만 달러, TikTok이 9,200만 달러, Google이 1억 달러 규모다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Clearview 건은 현금 지급 여력이 없어 회사 지분 약 23퍼센트를 집단에 배분하는 이례적 형태로 마무리되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;텍사스에서는 Google과 13억 7,500만 달러 규모의 합의가 이루어졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최근 판결들이 BIPA 위반에 대한 보험 보상을 제한하고 있어 기업이 합의금을 직접 부담해야 한다는 지적도 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2025년 말부터는 화자 분리 과정에서 성문을 추출하는 클라우드 회의 도구를 겨냥한 소송 물결도 관찰된다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;저장하지 않는 것이 가장 확실한 방어다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;FIDO는 생체정보를 단말 밖으로 내보내지 않는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;FIDO는 생체정보를 단.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dmFR2z/dJMcaiYxP7q/KLmQSPOX28bkar8xfQcgdk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dmFR2z/dJMcaiYxP7q/KLmQSPOX28bkar8xfQcgdk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dmFR2z/dJMcaiYxP7q/KLmQSPOX28bkar8xfQcgdk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdmFR2z%2FdJMcaiYxP7q%2FKLmQSPOX28bkar8xfQcgdk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;FIDO는 생체정보를 단.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 대로 FIDO2는 WebAuthn과 CTAP을 합쳐 부르는 인증 규격이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구조에서 얼굴이나 지문은 단말 내부에 저장된 개인키를 여는 열쇠 역할만 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체 데이터는 단말을 벗어나지 않으며 네트워크를 타고 이동하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서버는 사용자의 얼굴이 어떻게 생겼는지에 대한 정보를 전혀 받지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증이 성공하면 단말이 개인키로 서명한 값을 만들고 서버는 그 서명을 검증한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 생체 판정과 인증 프로토콜이 완전히 분리된 구조다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;서버가 갖는 것은 공개키뿐이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록 시 단말은 키 쌍을 생성하고 공개키만 서버로 보낸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공개키는 이름 그대로 공개되어도 무방한 값이므로 유출되어도 인증에 쓸 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인키는 단말의 보안 영역을 벗어나지 않으며 추출도 복제도 불가능하도록 설계된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서비스마다 다른 키 쌍이 생성되므로 한 서비스의 유출이 다른 서비스로 번지지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;섹션 1에서 지적한 서비스 간 분리 불가능 문제가&amp;nbsp;이 구조에서는 해소된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴은 하나여도 그 얼굴로 여는 열쇠는 서비스마다 다른 셈이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;유출 사고의 성격 자체가 달라진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;유출 사고의 성격 자.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xvJVz/dJMcaiRT1zn/qBRAWF0VyUR9QzQ3lKKOs0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xvJVz/dJMcaiRT1zn/qBRAWF0VyUR9QzQ3lKKOs0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xvJVz/dJMcaiRT1zn/qBRAWF0VyUR9QzQ3lKKOs0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxvJVz%2FdJMcaiRT1zn%2FqBRAWF0VyUR9QzQ3lKKOs0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;유출 사고의 성격 자.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적인 생체인증 서버가 뚫리면 사용자 전체의 템플릿이 유출된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;섹션 2에서 본 대로 그 템플릿에서&amp;nbsp;얼굴을 복원할 수 있으므로 피해가 영구적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FIDO 구조에서 서버가 뚫리면 공격자가 얻는 것은 공개키 목록뿐이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 값으로는 인증을 통과할 수도, 사용자의 얼굴을 알아낼 수도 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;피해를 입히려면 사용자 단말을 개별적으로 탈취해야 하므로 대규모 공격이 성립하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보관하지 않으면 유출될 것도 없다는 원칙이 가장 단순하고 확실한 대응이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;규제 대응 수단으로서 갖는 의미&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;섹션 3에서 정리한 별도 동의와 암호화 의무는&amp;nbsp;생체정보를 처리하는 사업자에게 부과된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FIDO 구조에서는 서비스 사업자가 생체정보를 수집하지도 보관하지도 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체 판정은 단말 제조사가 제공하는 기능이 수행하고 사업자는 그 결과만 받는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 어떤 절차가 실제로 면제되는지는 구체적 구현과 계약 구조에 따라 다르므로 법률 검토가 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 보관 대상이 없다는 사실 자체가 위험 노출을 크게 줄인다는 점은 분명하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;섹션 4에서 본 BIPA 소송의 상당수가&amp;nbsp;수집과 보관 절차의 하자에서 비롯되었다는 점을 감안하면 더욱 그렇다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;이 모델을 쓸 수 없는 경우도 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FIDO 구조는 사용자가 자기 단말을 갖고 있다는 전제 위에 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부에서 다룬 출입 통제 단말처럼 공용 장비를 쓰는 환경에서는 성립하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원격 신원확인처럼 처음 만나는 사용자가 본인임을 증명해야 하는 경우도 마찬가지다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 상황에서는 서버가 신분증 사진이나 사전 등록된 얼굴과 비교해야 하므로 보관이 불가피하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1:N 식별이 필요한 시나리오도 갤러리 전체를 서버가 갖고 있어야 하므로 이 모델을 쓸 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보관해야 하는 경우에 무엇을 어떻게 보관할지가 다음 섹션의 주제다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;저장해야 한다면 원본을 저장하지 않는다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;되돌릴 수 없는 변환을 거쳐 저장한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;되돌릴 수 없는 변환을.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/clDlmL/dJMcajiYoLk/93CklKwjEMmDkKQEucuFck/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/clDlmL/dJMcajiYoLk/93CklKwjEMmDkKQEucuFck/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/clDlmL/dJMcajiYoLk/93CklKwjEMmDkKQEucuFck/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FclDlmL%2FdJMcajiYoLk%2F93CklKwjEMmDkKQEucuFck%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;되돌릴 수 없는 변환을.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본 발상은 임베딩 벡터를 그대로 저장하지 않고 한 번 더 변형해서 저장하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 쓰는 변환은 결과에서 입력을 되돌릴 수 없어야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;변환된 값이 유출되어도 섹션 2에서 본 복원 공격이 성립하지 않는다는 것이 목표다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 같은 사람의 두 벡터는 변환 후에도 가까워야 매칭이 가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;되돌릴 수 없으면서 거리 관계는 보존해야 한다는 두 조건을 동시에 만족시키는 것이 이 분야의 핵심 과제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영문 문헌은 이 접근을 cancelable biometrics라 부르며 국내에 정착한 번역어는 아직 없다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;사용자마다 다른 파라미터를 쓴다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;변환을 모든 사용자에게 동일하게 적용하면 섹션 1에서 지적한 문제가 그대로 남는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용자별로 다른 파라미터를 부여하면 상황이 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 얼굴이라도 파라미터가 다르면 저장되는 값이 완전히 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유출이 발생하면 원본 대신 파라미터만 새로 발급해 다시 등록시킬 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;교체 불가능하던 생체정보에 사실상 재발급 개념을 도입하는 셈이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서비스마다 다른 파라미터를 쓰면 한 서비스의 유출이 다른 서비스로 번지지도 않는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;랜덤 투영 계열과 biohashing&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 널리 알려진 계열은 벡터를 무작위로 생성한 행렬에 곱해 다른 공간으로 옮기는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영문 문헌은 이를 random projection이라 부르며, 원래 차원 축소 기법으로 쓰이던 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;투영 후 차원이 낮아지면 정보가 소실되므로 되돌리기 어려워진다는 성질을 이용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기에 이진화 단계를 결합한 것이 biohashing으로, 사용자별 비밀값으로 행렬을 생성한 뒤 결과를 0과 1의 나열로 바꾼다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;구현이 단순하고 연산 비용이 낮아 실무 적용 부담이 적다는 것이 장점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 사용자별 비밀값이 함께 유출되면 보호 효과가 크게 떨어지므로 그 관리가 새로운 과제가 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;fuzzy vault와 fuzzy commitment&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다른 계열은 암호학적 구성을 빌려온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;fuzzy commitment는 생체 특징으로 비밀값을 잠그되, 충분히 비슷한 특징이면 열리도록 오류 정정 부호를 결합하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체 데이터는 측정할 때마다 조금씩 달라지므로 정확히 일치해야 열리는 일반 암호 방식을 쓸 수 없기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;fuzzy vault는 진짜 특징점 사이에 다량의 가짜 점을 섞어 저장하고, 올바른 특징으로만 진짜를 골라낼 수 있게 만드는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 방식 모두 지문처럼 특징점 집합으로 표현되는 생체 정보에서 먼저 발전했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 임베딩은 연속값 벡터라 구조가 달라 그대로 적용하기 어렵고 별도의 변환이 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;암호화한 채로 비교하는 동형암호&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 근본적인 접근은 템플릿을 암호화한 상태에서 매칭까지 수행하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동형암호는 암호문을 복호화하지 않고 연산할 수 있게 해주는 암호 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 기술을 쓰면 서버는 평문 템플릿을 한 번도 보지 않은 채 두 벡터의 유사도를 계산할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서버가 뚫려도 저장된 것은 암호 문 뿐이므로 복원 공격이 성립하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내에서도 활용 사례가 나오면서 상용화 단계에 이르렀다는 평가가 나오고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 얼굴인증처럼 실시간 응답이 필요한 서비스에 적용하려면 연산 비용이라는 문턱을 넘어야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;정확도와 연산 비용이라는 현실적 제약&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;정확도와 연산 비용.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pqI9w/dJMcaiRT1zv/VN6ckth2Eas9Vz89LlWZV0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pqI9w/dJMcaiRT1zv/VN6ckth2Eas9Vz89LlWZV0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pqI9w/dJMcaiRT1zv/VN6ckth2Eas9Vz89LlWZV0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpqI9w%2FdJMcaiRT1zv%2FVN6ckth2Eas9Vz89LlWZV0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;정확도와 연산 비용.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 장의 모든 기법은 공짜가 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;되돌릴 수 없는 변환을 거치면 원래 벡터가 갖고 있던 정보가 일부 소실된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 결과 같은 사람끼리의 거리와 다른 사람끼리의 거리가 덜 분리되어 오류율이 올라간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정의한 지표로 말하면 같은 임계값에서 FMR과 FNMR이 모두 나빠지는 방향이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동형암호 계열은 정확도 손실이 작은 대신 연산량과 응답 시간이라는 대가를 치른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 보호 기법을 고를 때는 그 기법을 적용한 뒤의 성능을 자체 데이터로 다시 측정해야 하며, 논문의 수치를 그대로 옮기면 안 된다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;나가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bejviB/dJMcad32Ggj/Y9GXxRSdwmS17U8PDPwAHK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bejviB/dJMcad32Ggj/Y9GXxRSdwmS17U8PDPwAHK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bejviB/dJMcad32Ggj/Y9GXxRSdwmS17U8PDPwAHK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbejviB%2FdJMcad32Ggj%2FY9GXxRSdwmS17U8PDPwAHK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비밀번호는 바꿀 수 있지만 얼굴은 바꿀 수 없다는 비대칭이 이 편의 출발점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저장되는 것이 벡터라서 안전하다는 통념은 그 벡터에서 얼굴을 복원하는 공격이 등장하면서 깨졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국 법은 생체정보를 세 층으로 나누고 특징정보에만 민감정보 지위를 부여하며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;별도 동의와 암호화라는 두 의무의 적용 범위가 서로 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해외에서는 EU가 용도별 규제로, 미국이 주 단위 법과 집단소송으로 움직이며 후자의 합의 금액은 사업 존속을 위협하는 수준이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 확실한 대응은 애초에 보관하지 않는 것이고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보관해야 한다면 되돌릴 수 없는 변환을 거친 값을 사용자별 파라미터와 함께 저장하는 방식이 대안이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 이 모든 처리를 어디에서 수행할 것인가, 즉 온디바이스 배포와 그 과정에서 발생하는 정확도 손실을 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;참고 자료&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;국내 법령 및 지침&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;「개인정보 보호법」 제23조, 「개인정보 보호법 시행령」 제18조. 민감정보의 범위 및 생체인식정보 규정.&lt;/li&gt;
&lt;li&gt;개인정보보호위원회, 『생체정보 보호 안내서』, 2024-12-30 개정.&lt;/li&gt;
&lt;li&gt;「개인정보의 안전성 확보조치 기준」 고시. 생체인식정보의 암호화 저장 의무.&lt;/li&gt;
&lt;li&gt;개인정보보호위원회, 「개인정보 보호법 및 시행령 개정사항 안내」. 2026-09-11 시행 개정의 CPO 책임 강화, ISMS-P 인증 의무화, 과징금 상한 상향.&lt;/li&gt;
&lt;li&gt;「개인정보 보호법 시행령 일부개정령(안) 입법예고」, 2026-06.&lt;/li&gt;
&lt;li&gt;KS X 1966, 『바이오인식 정보의 보호를 위한 기술적 관리적 지침』.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;해외 규제 및 소송&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;EU Artificial Intelligence Act. 원격 생체인식 신원확인의 금지 및 고위험 분류.&lt;/li&gt;
&lt;li&gt;&quot;EU pushes AI Act deadlines for high-risk systems, including biometrics&quot;, Biometric Update, 2026-05-13. 디지털 옴니버스에 따른 기한 연기 및 2026-12-02 준수 시한.&lt;/li&gt;
&lt;li&gt;Illinois Biometric Information Privacy Act (740 ILCS 14). 2024년 개정 SB 2909 포함.&lt;/li&gt;
&lt;li&gt;Rosenbach v. Six Flags Entertainment Corp., 2019 IL 123186.&lt;/li&gt;
&lt;li&gt;&quot;2025 Year-In-Review: Biometric Privacy Litigation&quot;, Privacy World, 2025-12.&lt;/li&gt;
&lt;li&gt;Clearview AI 집단소송 합의 (1:21-cv-00135), 2025-05 최종 승인.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;템플릿 복원 공격 및 보호 기술&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;한국정보보호학회, 「개인정보 보호를 위한 바이오인식 템플릿 보안」, KCI 등재.&lt;/li&gt;
&lt;li&gt;한국정보보호학회지, 「동형암호 기술과 활용 동향」, 2023.&lt;/li&gt;
&lt;li&gt;A. K. Jain, K. Nandakumar, A. Nagar, &quot;Biometric Template Security&quot;, EURASIP Journal on Advances in Signal Processing, 2008. fuzzy vault 및 fuzzy commitment 정리.&lt;/li&gt;
&lt;li&gt;A. Teoh, D. Ngo, A. Goh, &quot;Biohashing: two factor authentication featuring fingerprint data and tokenised random number&quot;, Pattern Recognition, 2004.&lt;/li&gt;
&lt;li&gt;&quot;OTB-morph: One-Time Biometrics via Morphing applied to Face Templates&quot;, arXiv:2111.13213. cancelable biometrics 분류 체계 및 등록과 검증 흐름.&lt;/li&gt;
&lt;li&gt;&quot;Discrete Transforms and Matrix Rotation Based Cancelable Face and Fingerprint Recognition for Biometric Security Applications&quot;, Entropy, 2020.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;FIDO&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;FIDO Alliance, FIDO2 사양. WebAuthn과 CTAP 구성 및 생체정보의 단말 내 보관 원칙.&lt;/li&gt;
&lt;li&gt;W3C Web Authentication (WebAuthn) Level 1 권고안, 2019-03.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;용어 확인 자료&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;카카오 개인정보보호 브런치, 「생체정보 처리 시 주의사항」. 생체정보, 생체인식정보, 생체인식 특징정보의 3단 구분 및 각각의 의무.&lt;/li&gt;
&lt;li&gt;「개인정보 보호법 민감정보란: 처리 제한 항목 총정리」, 2026-04. 시행령 제18조 민감정보 항목 정리.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML+DL/Vision AI</category>
      <category>BIPA</category>
      <category>euaiact</category>
      <category>FIDO2</category>
      <category>개인정보보호법</category>
      <category>동형암호</category>
      <category>민감정보</category>
      <category>생체인식정보</category>
      <category>생체정보</category>
      <category>얼굴인식</category>
      <category>템플릿보안</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1378</guid>
      <comments>https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10#entry1378comment</comments>
      <pubDate>Mon, 10 Aug 2026 22:34:26 +0900</pubDate>
    </item>
    <item>
      <title>딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)</title>
      <link>https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9</link>
      <description>&lt;div class=&quot;book-toc&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목차&lt;/p&gt;
&lt;ul id=&quot;toc&quot; style=&quot;list-style-type: none;&quot; data-ke-list-type=&quot;none&quot;&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;background-color: #eeeeee; padding: 10px; border-radius: 10px;&quot;&gt;
&lt;p style=&quot;font-size: 18px;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;얼굴인식과 생체인증&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4%EB%8A%94-%EC%99%9C-%EB%B3%84%EA%B0%9C%EC%9D%98-%EB%AC%B8%EC%A0%9C%EC%9D%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스는 왜 별개의 문제인가 | 얼굴인식과 생체인증 (1)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EC%9A%A9%EC%96%B4-%EC%82%AC%EC%A0%84-FAR%EB%B6%80%ED%84%B0-PAD-ISO-30107%EA%B9%8C%EC%A7%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체인증 용어 사전: FAR부터 PAD, ISO 30107까지 | 얼굴인식과 생체인증 (2)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EA%B2%80%EC%B6%9C%EA%B3%BC-%EC%A0%95%EB%A0%AC-%EC%96%BC%EA%B5%B4%EC%9D%84-%EC%B0%BE%EA%B3%A0-%EB%B0%98%EB%93%AF%ED%95%98%EA%B2%8C-%EC%84%B8%EC%9A%B0%EA%B8%B0-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 검출과 정렬: 얼굴을 찾고 반듯하게 세우기 | 얼굴인식과 생체인증 (3)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;들어가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sAkXz/dJMcafVcQPb/pEJUc6aNTKvicagryrybTk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sAkXz/dJMcafVcQPb/pEJUc6aNTKvicagryrybTk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sAkXz/dJMcafVcQPb/pEJUc6aNTKvicagryrybTk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsAkXz%2FdJMcafVcQPb%2FpEJUc6aNTKvicagryrybTk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부까지 다룬 방어는 모두 하나의 전제 위에 서 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;카메라가 찍은 영상이 실제로 그 카메라 앞에서 벌어진 일을 담고 있다는 전제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 전제가 무너지면 질감 분석도, rPPG도, 챌린지-리스폰스도 판정할 대상 자체를 잃는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 그 전제를 무너뜨리는 공격이 어떻게 동작하는지, 생성 기술이 어디까지 왔는지, 그리고 무엇으로 막을 수 있는지를 다룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;방어의 초점이 이미지에서 경로로 옮겨간다는 점이 이 편의 중심 논지다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 가상 데스크톱과 출입 통제라는 두 배포 환경이 왜 최악의 조건인지를 정리한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;공격은 센서 앞과 센서 뒤로 나뉜다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;8부까지의 모든 방어는 카메라를 신뢰한다는 전제 위에 있었다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;8부까지의 모든 방어는 카메라를.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PpVV4/dJMcafAREMl/LQOB40faXEIa6Q7KgeGpXk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PpVV4/dJMcafAREMl/LQOB40faXEIa6Q7KgeGpXk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PpVV4/dJMcafAREMl/LQOB40faXEIa6Q7KgeGpXk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPpVV4%2FdJMcafAREMl%2FLQOB40faXEIa6Q7KgeGpXk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;8부까지의 모든 방어는 카메라를.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스는 카메라에 들어온 영상을 분석해 진짜 얼굴인지를 판정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄물의 종이 질감, 화면의 모아레, 혈류로 인한 색 변화가 모두 물리 세계의 흔적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 흔적들은 실제 물체가 렌즈 앞에 있었기 때문에 남는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 라이브니스는 카메라가 찍은 것이 카메라 앞에 있던 것이라는 전제를 깔고 동작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 전제가 성립하는 한 8부에서 다룬 방식들은 유효하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제는 이 전제 자체를 공격 대상으로 삼는 방법이 존재한다는 점이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;스푸핑 공격은 카메라 앞에 가짜를 들이댄다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지 다룬 공격은 모두 카메라 앞에 무언가를 놓는 방식이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄된 사진, 화면에 재생한 영상, 실리콘 마스크가 여기에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 방식은 물리 세계를 거치므로 반드시 물리적 흔적을 남긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국제 표준은 이를 presentation attack이라 부르고 국내 논문과 현장은 대개 스푸핑 공격이라 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PAD의 P가 presentation의 약자이므로 이 용어가 표준 문서 곳곳에 등장한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 다룬 모든 방어 기법이 이 공격 유형을 대상으로 설계되었다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;인젝션 공격은 카메라를 아예 건너뛴다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;인젝션 공격은 카메라를 .jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b04WP0/dJMcafgAKFa/7WGNFjzqycsz2KLSOQQx00/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b04WP0/dJMcafgAKFa/7WGNFjzqycsz2KLSOQQx00/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b04WP0/dJMcafgAKFa/7WGNFjzqycsz2KLSOQQx00/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb04WP0%2FdJMcafgAKFa%2F7WGNFjzqycsz2KLSOQQx00%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;인젝션 공격은 카메라를 .jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인젝션 공격은 카메라 하드웨어를 완전히 우회한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;합성되었거나 미리 녹화된 영상 스트림을 소프트웨어 캡처 계층에 직접 밀어 넣는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체인식 SDK나 브라우저 API는 실제 카메라 피드를 한 번도 보지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;애플리케이션 입장에서는 정상적인 카메라 입력이 들어온 것과 구별되지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물리 세계를 거치지 않으므로 물리적 흔적도 남지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;카메라 앞에서 벌어진 일이 없으니 카메라 앞을 검사하는 방어는 검사할 대상이 없다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;표준도 두 공격을 다른 문서로 나눠 놓았다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1부에서 정리한 대로 ISO/IEC 30107-3은 적용 범위를 스스로 한정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문서가 다루는 공격은 제시 과정에서 생체 캡처 장치에 가해지는 것이며 그 밖의 공격은 범위 바깥이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인젝션은 센서 아래로 들어오므로 애초에 이 표준의 대상이 아니었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 CEN이 2024년 11월 CEN/TS 18099를 별도 문서로 발행했고 ISO/IEC 25456이 뒤따르고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 공격이 다른 표준으로 규정된다는 사실 자체가 방어 기술이 다르다는 증거다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한쪽 시험을 통과했다는 것이 다른 쪽에 대해 아무것도 보증하지 않는 이유이기도 하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;PAD 인증서와 인젝션 저항력은 별개의 성적표다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;업계&amp;nbsp;분석은&amp;nbsp;제시&amp;nbsp;공격&amp;nbsp;시험&amp;nbsp;통과가&amp;nbsp;인젝션&amp;nbsp;저항력에&amp;nbsp;대해&amp;nbsp;거의&amp;nbsp;아무것도&amp;nbsp;증명하지&amp;nbsp;않는다고&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;두&amp;nbsp;위협이&amp;nbsp;완전히&amp;nbsp;다른&amp;nbsp;프레임워크로&amp;nbsp;시험되기&amp;nbsp;때문이며,&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한&amp;nbsp;업체가&amp;nbsp;PAD&amp;nbsp;인증을&amp;nbsp;보유하면서도&amp;nbsp;인젝션&amp;nbsp;저항력이&amp;nbsp;0일&amp;nbsp;수&amp;nbsp;있다는&amp;nbsp;표현까지&amp;nbsp;등장한다.&lt;br /&gt;&lt;br /&gt;실제로 한 벤더는 iBeta Level 1 PAD 인증에서 360회 시도 중 공격 성공률 0퍼센트와 IAPAR 0퍼센트를 기록했다고 밝히면서,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 문서에서 Level 1은 제시 공격만 다루므로 인젝션 방어에는 별도의 신호 계층이 필요하다고 명시한다.&lt;br /&gt;&lt;br /&gt;여기서&amp;nbsp;자주&amp;nbsp;도는&amp;nbsp;오해를&amp;nbsp;하나&amp;nbsp;바로잡아야&amp;nbsp;하는데,&amp;nbsp;PAD&amp;nbsp;Level&amp;nbsp;3과&amp;nbsp;4가&amp;nbsp;인젝션을&amp;nbsp;다룬다는&amp;nbsp;서술이다.&lt;br /&gt;&lt;br /&gt;2부에서 정리한 대로 iBeta 등급은 Level 1, 2, 3뿐이고 2026년 초 신설된 Level 3는 고정밀 마스크를 다루며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Level 4는 존재하지 않는다.&lt;br /&gt;&lt;br /&gt;인젝션에&amp;nbsp;대한&amp;nbsp;답이&amp;nbsp;더&amp;nbsp;높은&amp;nbsp;PAD&amp;nbsp;등급이&amp;nbsp;아니라는&amp;nbsp;사실은&amp;nbsp;2026년&amp;nbsp;iBeta가&amp;nbsp;Level&amp;nbsp;4를&amp;nbsp;만드는&amp;nbsp;대신&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CEN/TS&amp;nbsp;18099라는&amp;nbsp;다른&amp;nbsp;표준을&amp;nbsp;기준으로&amp;nbsp;별도의&amp;nbsp;인젝션&amp;nbsp;공격&amp;nbsp;탐지&amp;nbsp;시험을&amp;nbsp;신설했다는&amp;nbsp;데서&amp;nbsp;드러난다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;인젝션은 어디로 들어오는가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;가상 카메라 드라이버&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;가상 카메라 드라이버.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CnZeo/dJMcaaM6SLG/RrZ2zcFCjirwKrXZ0BcEH0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CnZeo/dJMcaaM6SLG/RrZ2zcFCjirwKrXZ0BcEH0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CnZeo/dJMcaaM6SLG/RrZ2zcFCjirwKrXZ0BcEH0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCnZeo%2FdJMcaaM6SLG%2FRrZ2zcFCjirwKrXZ0BcEH0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;가상 카메라 드라이버.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;운영체제는 카메라를 하나의 장치로 인식하고 그 장치에서 영상을 받아온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가상 카메라는 실제 하드웨어 없이 이 장치인 척하는 소프트웨어다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원래는 화상회의에서 배경을 바꾸거나 화면을 공유하기 위해 만들어진 정당한 기술이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자는 여기에 딥페이크 영상을 흘려보내 인증 앱이 실제 카메라로 착각하게 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;iProov 보고서에 따르면 네이티브 가상 카메라 공격은 2,665퍼센트 증가해 주요 위협 벡터가 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정식 앱 마켓에 관련 도구가 유통된 것이 증가의 일부 원인으로 지목되었다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;단말 에뮬레이터와 루팅된 기기&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;에뮬레이터는 컴퓨터에서 스마트폰 환경을 통째로 흉내 내는 소프트웨어다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 안에서는 카메라도 가상이므로 어떤 영상이든 입력으로 넣을 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앱은 자신이 진짜 단말에서 돌고 있다고 믿으며 정상적으로 동작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;루팅이나 탈옥을 거친 실제 단말에서는 운영체제의 카메라 관련 함수를 직접 바꿔치기할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우 앱이 카메라를 호출할 때마다 공격자가 준비한 프레임이 반환된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;에뮬레이터 스택으로 가상의 단말과 가상의 카메라를 제시하는지 판별하는 것이 방어의 한 축이 되는 이유다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;SDK 호출 가로채기와 API 직접 호출&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증 기능은 대개 벤더가 제공하는 SDK를 앱에 붙여 구현한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 SDK가 카메라에서 프레임을 받아 서버로 보내는 구조라면 그 사이의 호출이 공격 지점이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자는 호출을 가로채 원본 프레임을 준비한 영상으로 바꿔치기할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 단계 더 나아가면 앱과 SDK를 아예 거치지 않고 서버 API를 직접 호출하는 방법도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앱이 보내는 요청의 형식만 알아내면 카메라도 단말도 필요 없어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가로채여 대체 영상으로 재생될 수 있는 SDK 호출을 감시하는 것이 인젝션 방어의 실무적 과제다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;iOS를 겨냥한 전용 도구가 등장했다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인젝션 공격은 오랫동안 안드로이드 쪽이 더 취약하다고 여겨졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2025년 9월 iOS 전용 영상 인젝션 도구가 발견되면서 이 인식이 바뀌었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 도구는 물리 카메라를 완전히 우회해 애플리케이션이 실시간 피드로 착각하게 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;피해자의 얼굴을 다른 영상에 덮어씌우는 얼굴 교체와&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정지 이미지를 다른 사람의 움직임으로 움직이게 하는 face reenactment를 모두 지원한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;발견자는 이 도구가 중국에서 만들어진 것으로 추정했으며 산업화된 공격 추세를 확인하는 사례로 평가했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후 iOS를 겨냥한 인젝션 공격은 2025년 하반기에만 전년 동기 대비 1,151퍼센트 급증했고 연간으로는 741퍼센트 증가했다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;공격 도구가 서비스 형태로 상품화되고 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;공격 도구가 서비스 형태로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVaBk5/dJMcaaM6SLR/dCnZ7t2YY4Aubps6Wdo8mk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVaBk5/dJMcaaM6SLR/dCnZ7t2YY4Aubps6Wdo8mk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVaBk5/dJMcaaM6SLR/dCnZ7t2YY4Aubps6Wdo8mk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVaBk5%2FdJMcaaM6SLR%2FdCnZ7t2YY4Aubps6Wdo8mk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;공격 도구가 서비스 형태로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인젝션 공격의 급증은 기술의 발전보다 접근성의 변화에서 왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가상 카메라와 얼굴 교체와 가짜 신원 생성이 하나의 패키지로 묶여 유통되고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;범죄 조직이 이를 서비스 형태로 판매하면서 기술이 없는 공격자도 사용할 수 있게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 지역에서 검증된 수법이 다른 지역으로 그대로 이식되는 양상도 관찰된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국은 특히 취약한 시장으로 나타나는데, 한 조사에서 2024년 1분기 기준 직전 12개월간 딥페이크 증가율이 1,625퍼센트로 집계되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 기간 미국이 303퍼센트였던 것과 비교하면 국내 서비스가 처한 조건이 다르다는 뜻이다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;물리 세계 단서가 전부 무력해진다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;질감과 모아레는 주입된 영상에 남지 않는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;질감과 모아레는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bCXucS/dJMcafOtRYA/KYmO9ewx8gsaTwkvjrKUGk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bCXucS/dJMcafOtRYA/KYmO9ewx8gsaTwkvjrKUGk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bCXucS/dJMcafOtRYA/KYmO9ewx8gsaTwkvjrKUGk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbCXucS%2FdJMcafOtRYA%2FKYmO9ewx8gsaTwkvjrKUGk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;질감과 모아레는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 다룬 패시브 방식은 위조 매체가 남기는 흔적을 찾는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;종이의 섬유 질감, 프린터의 망점, 디스플레이의 모아레가 대표적인 단서다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인젝션 공격에는 종이도 디스플레이도 존재하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성 모델이 만들어낸 영상은 처음부터 디지털 데이터로 존재하며 어떤 매체도 거치지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 이 단서들을 찾는 모델은 아무것도 발견하지 못하고 정상으로 판정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;방어의 실패가 아니라 방어의 전제가 사라진 상황이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;rPPG 신호도 생성 모델이 만들어낼 수 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;rPPG는 혈류로 인한 피부색의 미세한 변화를 관찰하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄물이나 마스크에는 이 신호가 없으므로 강력한 단서로 여겨졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 생성 모델은 실제 사람의 영상으로 학습되었으므로 그 미세한 색 변화까지 함께 배운다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원본 영상에서 얼굴만 바꾸는 얼굴 교체의 경우 배경과 목 부분의 신호가 그대로 남는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;탐지 쪽은 얼굴 영역과 다른 영역의 신호가 일치하지 않는 점을 단서로 삼지만,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 이미 rPPG 자체가 아니라 그 일관성을 보는 다른 문제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;살아 있는 사람인지가 아니라 화면 안의 신호들이 서로 앞뒤가 맞는지를 묻는 쪽으로 질문이 바뀐 것이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;챌린지-리스폰스도 실시간 생성 앞에서 흔들린다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;챌린지-리스폰스도 실시간.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dr00BL/dJMcahSSLOr/ufVS6e7Qy3ieU27jEciUx0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dr00BL/dJMcahSSLOr/ufVS6e7Qy3ieU27jEciUx0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dr00BL/dJMcahSSLOr/ufVS6e7Qy3ieU27jEciUx0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdr00BL%2FdJMcahSSLOr%2FufVS6e7Qy3ieU27jEciUx0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;챌린지-리스폰스도 실시간.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 액티브 방식이 무작위 지시로 재생 공격을 막는다고 정리했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미리 녹화한 영상은 어떤 지시가 나올지 모르므로 대응하지 못한다는 논리였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 실시간 생성이 가능해지면서 이 논리에 구멍이 생겼다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자가 자기 얼굴로 지시를 수행하면 생성 모델이 그 움직임을 피해자의 얼굴로 실시간 변환한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GAN 기반 도구는 일반 노트북에서도 대화를 유지할 만큼 낮은 지연으로 프레임 단위 교체를 수행한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;iProov 보고서가 공격자들의 초점이 라이브니스 탐지를 쓰는 시스템으로 옮겨갔다고 지적한 것도 같은 맥락이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;라이브니스 등급이 높아도 인젝션 저항력은 0일 수 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 본 대로 PAD 인증은 카메라에 제시된 위조물을 걸러내는 능력만 보증한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증 등급이 높다는 것은 더 정교한 마스크를 잡아낸다는 뜻이지 다른 경로를 막는다는 뜻이 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인젝션 공격은 그 시험 절차가 상정하는 상황 자체를 벗어나 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 Level 3 인증을 받은 시스템도 가상 카메라 앞에서는 아무 방어력이 없을 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제시 공격 방어가 기본 요건이 되면서 오히려 잘못된 안도감을 만든다는 지적도 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증서를 볼 때 무엇을 시험했는지와 함께 무엇을 시험하지 않았는지를 확인해야 하는 이유다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;사람의 눈은 이미 방어선이 아니다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;사람의 눈은 이미 방어선이.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmGcHo/dJMcahSSLPO/co9OFjrSK0542CfVRQaq60/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmGcHo/dJMcahSSLPO/co9OFjrSK0542CfVRQaq60/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmGcHo/dJMcahSSLPO/co9OFjrSK0542CfVRQaq60/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmGcHo%2FdJMcahSSLPO%2Fco9OFjrSK0542CfVRQaq60%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;사람의 눈은 이미 방어선이.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자동 탐지가 어려우면 사람이 검토하면 된다는 발상이 자연스럽게 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;측정 결과는 이 발상을 지지하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사람 검토자가 고품질 딥페이크를 잡아내는 비율은 약 24.5퍼센트로 보고되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 네 번 중 세 번은 놓치므로 수동 검토는 최후의 보루가 되지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Ponemon Institute 조사에서 조직의 41퍼센트가 임원을 겨냥한 딥페이크 공격을 경험했다고 답했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2025년 9월 Gartner 조사에서는 사이버보안 책임자의 37퍼센트가 영상 통화 중 딥페이크 사건을 겪었다고 응답했다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;생성 기술은 어디까지 왔고 무엇이 남았는가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;얼굴 교체와 face reenactment&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;페이스스왑과 모션.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVT3IC/dJMcajwv9BI/O8Tau56toyFpV0CGTeGWkK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVT3IC/dJMcajwv9BI/O8Tau56toyFpV0CGTeGWkK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVT3IC/dJMcajwv9BI/O8Tau56toyFpV0CGTeGWkK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVT3IC%2FdJMcajwv9BI%2FO8Tau56toyFpV0CGTeGWkK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;페이스스왑과 모션.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 조작 기술은 목적에 따라 몇 갈래로 나뉜다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 교체는 원본 영상 속 인물의 얼굴을 다른 사람의 얼굴로 바꾸는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;face reenactment는 인물의 정체성은 그대로 두고 표정과 움직임만 다른 사람의 동작에 맞게 옮기는 방식이며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내 문헌도 이 용어를 영문 그대로 쓴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 방식은 목적이 다르므로 남기는 흔적도 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초기 방법은 두 사람 각각의 이미지가 수백에서 수천 장 필요했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금은 한 장의 사진만으로 쓸 만한 결과를 만드는 도구가 나와 있어, 공개된 사진 한 장이면 재료가 충분하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;실시간 생성이 가능해진 시점&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증 시스템을 공격하려면 생성이 실시간으로 이루어져야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시스템이 지시를 내리면 그에 맞춰 즉시 반응해야 하기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GAN 기반 도구는 일반 노트북에서 프레임 단위 교체를 수행하며 대화를 유지할 만큼 지연이 낮다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반면 순수 확산 모델 방식은 아직 실시간에는 너무 느리다는 것이 현재 평가다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 품질이 가장 좋은 방법과 실시간으로 돌릴 수 있는 방법이 아직 갈라져 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 격차가 방어 쪽에 남은 시간이며, 좁혀지는 속도가 이 분야의 핵심 변수다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;오디오와 영상이 어긋나는 흔적&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 다룬 동기 검증이 여기서 실질적인 역할을 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사람이 말할 때 입술 움직임과 턱의 움직임과 얼굴 근육의 활성화는 음소 생성과 정확히 대응한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성 모델이 이 대응을 완벽하게 재현하려면 두 모달리티를 동시에 정확히 다뤄야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실시간이라는 시간 제약 아래에서는 한쪽을 맞추면 다른 쪽이 미세하게 어긋나는 경우가 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프레임 단위로 만들어지는 영상은 립싱크 오류를 남기기 쉽다는 관찰이 반복해서 보고된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 짚은 대로 이 접근이 언어에 의존한다는 한계는 그대로 남는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;움직임의 궤적이 평탄해지는 현상&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;움직임의 궤적이 평탄해지는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b3HOTF/dJMcajwv9BR/JB0bfh37kunUG4atDRzHR1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b3HOTF/dJMcajwv9BR/JB0bfh37kunUG4atDRzHR1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b3HOTF/dJMcajwv9BR/JB0bfh37kunUG4atDRzHR1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb3HOTF%2FdJMcajwv9BR%2FJB0bfh37kunUG4atDRzHR1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;움직임의 궤적이 평탄해지는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미리 녹화된 진짜 영상에는 일관된 미세 움직임이 담겨 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;피부 질감이 미묘하게 변하고, 머리카락과 옷이 눈에 띄지 않을 만큼 작게 흔들리며, 눈은 자연스러운 단속운동(saccade)을 보인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단속운동은 시선이 한 지점에서 다른 지점으로 건너뛸 때 나타나는 매우 빠른 안구 운동으로,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사람이 만들어낼 수 있는 가장 빠른 움직임이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실시간 딥페이크는 얼굴 경계에서 프레임마다 떨림이 나타나거나, 움직일 때 질감이 일관되지 않거나,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;합성 모델이 잘 다루지 못하는 부분이 부자연스럽게 매끄러워진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부에서 언급한 대로 상용 액티브 라이브니스 엔진이 움직임의 궤적이 시작하고 정점에 이르고 감쇠하는지를 확인하는 것도 같은 원리다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실시간 처리라는 시간 제약이 타협을 강제하고 대부분의 타협이 탐지 가능한 패턴으로 드러난다는 것이 방어 쪽의 근거이며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프레임을 반쯤 독립적으로 처리하는 구조에서 얼굴 위치가 머리에 대해 미세하게 흔들리는 현상도 같은 계열의 단서다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;미세한 얼굴 움직임의 부재&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;눈 깜빡임은 오래된 단서다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사람은 대화 중 분당 15회에서 20회 정도 눈을 깜빡인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초기 딥페이크는 눈 깜빡임을 아예 만들지 못해 눈을 오래 뜨고 있는 얼굴을 생성했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금의 모델은 깜빡임을 만들어내지만 빈도가 어긋나거나, 두 눈이 완벽히 동시에 감기거나,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제 눈꺼풀 움직임이 갖는 자연스러운 좌우 비대칭이 없는 경우가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입과 눈 주변의 미세 표정 전환도 합성이 어려운 부분으로, 시간적 일관성과 자연스러운 타이밍을 함께 유지하기 어렵기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 생리적 신호는 표정이나 발화와 조율되어야 하므로 모델이 재현하기 특히 까다롭다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;이 단서들에도 수명이 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;탐지와 생성은 별개의 분야가 아니라 하나의 최적화 문제의 양면이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성 모델의 판별기는 탐지 가능한 지문을 발견할 때마다 벌점을 주므로, 학습을 반복할수록 그 신호가 사라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 어떤 단서를 공개하면 다음 세대의 생성 모델은 그 단서를 지우도록 학습된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2020년에 종료된 대회에서 최고 성능 모델이&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습에 없던 딥페이크에 대해 65.18퍼센트의 정확도에 그쳤다는 결과도 이 어려움을 보여준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2024년의 GAN 생성 얼굴로 학습한 탐지기는 2026년의 확산 모델 출력에 고전하는데, 흔적의 성격 자체가 바뀌었기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 탐지 시스템은 작년 벤치마크가 아니라 공격자가 실제로 쓰고 있는 세대의 도구로 평가해야 한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;방어는 이미지가 아니라 경로를 검증한다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;무엇을 방어하는가에 따라 세 층으로 나뉜다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;무엇을 방어하는가에 따라.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/crX375/dJMcabkZtFl/07uTkKrIyl0flBXTN06VZ1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/crX375/dJMcabkZtFl/07uTkKrIyl0flBXTN06VZ1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/crX375/dJMcabkZtFl/07uTkKrIyl0flBXTN06VZ1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcrX375%2FdJMcabkZtFl%2F07uTkKrIyl0flBXTN06VZ1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;무엇을 방어하는가에 따라.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;업계&amp;nbsp;분석은&amp;nbsp;방어를&amp;nbsp;세&amp;nbsp;층으로&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;PAD와&amp;nbsp;라이브니스는&amp;nbsp;카메라를&amp;nbsp;방어하며,&amp;nbsp;렌즈&amp;nbsp;앞에&amp;nbsp;놓인&amp;nbsp;사진과&amp;nbsp;마스크와&amp;nbsp;조작&amp;nbsp;영상을&amp;nbsp;걸러낸다.&lt;br /&gt;&lt;br /&gt;딥페이크&amp;nbsp;탐지는&amp;nbsp;이미지를&amp;nbsp;방어하며,&amp;nbsp;화면&amp;nbsp;안의&amp;nbsp;내용이&amp;nbsp;생성된&amp;nbsp;것인지를&amp;nbsp;판별한다.&lt;br /&gt;&lt;br /&gt;IAD는&amp;nbsp;인증&amp;nbsp;파이프라인&amp;nbsp;자체를&amp;nbsp;방어하며,&amp;nbsp;정보를&amp;nbsp;나르는&amp;nbsp;디지털&amp;nbsp;통로의&amp;nbsp;무결성을&amp;nbsp;지킨다.&lt;br /&gt;&lt;br /&gt;앞의&amp;nbsp;두&amp;nbsp;층이&amp;nbsp;화면에&amp;nbsp;무엇이&amp;nbsp;담겼는지를&amp;nbsp;묻는다면&amp;nbsp;세&amp;nbsp;번째&amp;nbsp;층은&amp;nbsp;이&amp;nbsp;화면이&amp;nbsp;어디서&amp;nbsp;왔는지를&amp;nbsp;묻는다.&lt;br /&gt;&lt;br /&gt;세&amp;nbsp;층이&amp;nbsp;서로&amp;nbsp;다른&amp;nbsp;대상을&amp;nbsp;지킨다는&amp;nbsp;사실은&amp;nbsp;시험&amp;nbsp;체계에서도&amp;nbsp;확인되는데,&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년 iBeta가 CEN/TS 18099 기준의 인젝션 공격 탐지 시험을 PAD 시험과 별도로 시작하면서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 층에 대한 제3자 증거를 따로 요구할 수 있게 되었다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;기기 증명으로 단말의 무결성을 확인한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기기 증명(attestation)은 생체 데이터가 정당하고 손상되지 않은 단말에서 나왔는지를 검증하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;운영체제와 앱 실행 환경의 무결성을 확인해 조작된 환경이 위조 입력을 만들어낼 위험을 줄인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안드로이드는 Play Integrity API가 인증된 구글 단말인지와 변조되지 않았는지를 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;iOS는 App Attest와 DeviceCheck가 정당한 애플 단말에서 실행 중인지와 앱 바이너리가 수정되지 않았는지를 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;권장되는 흐름은 카메라를 열기 전에 먼저 증명 토큰을 받아 백엔드에서 검증하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내에서도 LINE이 하드웨어 기반 증명을 도입해&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신뢰할 수 없는 출처의 요청을 차단하는 기기 증명 서비스를 2023년 12월부터 운영하고 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;하드웨어 격리 영역에서 캡처를 처리한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최근 단말에는 TEE(Trusted Execution Environment)라는 하드웨어 격리 영역이 들어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 영역은 민감한 연산을 나머지 시스템과 분리해 수행하므로 앱이나 운영체제가 손상되어도 안전이 유지된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;캡처와 보안 기능을 이 안에서 처리하면 멀웨어나 조작된 앱이 인증 시스템에 도달하기 전에 데이터를 건드릴 가능성이 줄어든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 단계 더 나아간 방식은 드라이버 수준에서 카메라 피드를 암호화하고 생체 엔진의 보안 메모리 안에서만 복호화하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적인 운영체제 함수를 거치지 않으므로 가로챌 지점 자체가 줄어든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 이런 구조는 단말 제조사의 지원이 필요하므로 웹 브라우저 기반 서비스에는 적용하기 어렵다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;촬영 시점에 서명해 출처를 증명한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 근본적인 접근은 촬영한 그 순간에 영상이 진짜임을 암호학적으로 증명하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하드웨어가 사진을 찍을 때 TEE에 보관된 개인키로 이미지 데이터에 서명한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;백엔드는 제조사의 공개키로 이 서명을 검증해 해당 단말의 실제 센서에서 나왔음을 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서명 이후에 내용이 바뀌면 검증이 실패하므로 중간에 바꿔치기하는 것이 불가능해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 방식은 콘텐츠 출처 증명 표준인 C2PA의 핵심 발상이기도 하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;카메라 수준의 서명은 물리적 장치가 그 이미지를 촬영했다는 암호학적 증거를 제공한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;C2PA는 아직 커버리지가 좁다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;C2PA는 아직 커버리지가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cBtLIq/dJMcadXlnC8/rQFC891tJVO512icCESje0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cBtLIq/dJMcadXlnC8/rQFC891tJVO512icCESje0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cBtLIq/dJMcadXlnC8/rQFC891tJVO512icCESje0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcBtLIq%2FdJMcadXlnC8%2FrQFC891tJVO512icCESje0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;C2PA는 아직 커버리지가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C2PA는 유망하지만 2026년 시점의 현실은 기대에 못 미친다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;적합성 프로그램이 2025년 중반 출범해 실제 시험을 통과한 제품의 공개 등록부가 마련되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;카메라 쪽은 라이카가 2025년 1월 첫 주자로 나섰고 니콘, 캐논, 후지필름, 파나소닉이 뒤따랐다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제는 스마트폰인데, 서명 지원이 플래그십에 한정되고 중급기와 보급기는 지원하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세계 최대 스마트폰 제조사인 삼성의 갤럭시 S25는 생성형 AI로 만들거나 편집한 사진에만 자격증명을 붙이고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반 촬영에는 붙이지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 중요한 단서는 C2PA가 AI 생성 여부를 탐지하지 않고 서명 시점에 선언된 내용을 기록할 뿐이라는 점이며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마이크로소프트 정책 담당자도 모든 공격을 막거나 플랫폼이 출처 신호를 벗겨내는 것을 막는 일은 불가능하다고 밝혔다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;세션과 행동 신호를 함께 본다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞의 방법들이 모두 단말 제조사나 운영체제의 협조를 필요로 한다면, 그 협조 없이도 쓸 수 있는 층이 남는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 세션 안에서 관찰되는 여러 신호를 모아 이상 여부를 판정하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;IP 주소와 접속 경로, 단말 정보, 프레임의 도착 간격, 해상도와 압축 방식의 조합이 여기에 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가상 카메라를 거친 영상은 실제 센서가 만드는 신호 특성과 미묘하게 다른 통계를 보인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 벤더는 세션당 200개가 넘는 이상 신호를 결합해 가상 카메라 인젝션을 드러낸다고 밝힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;방어는 이미지에 점수를 매기는 것이 아니라 캡처 경로 전체에 점수를 매기는 방향으로 옮겨가고 있다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;VDI와 ACS는 최악의 조건이다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;클라이언트와 서버 사이에 네트워크가 낀다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지 다룬 방어의 상당수는 사용자 단말에서 수행되어야 효과가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;TEE도 기기 증명도 촬영 시점 서명도 모두 단말 안에서 일어나는 일이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 처리를 서버에서 하는 구조라면 영상이 네트워크를 타고 이동한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이동 구간이 생기는 순간 그 구간 어디에서든 데이터를 바꿔치기할 여지가 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전송 구간을 암호화해도 암호화 이전 시점에 주입되면 소용이 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 어디까지를 믿을 것인가를 먼저 정하는 일이 아키텍처 결정의 핵심이 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;원격 데스크톱 환경은 카메라 자체가 가상이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;원격 데스크톱 환경은.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lJ12f/dJMcafVcQRD/WjZb02f7brxBizZhLQSHq0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lJ12f/dJMcafVcQRD/WjZb02f7brxBizZhLQSHq0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lJ12f/dJMcafVcQRD/WjZb02f7brxBizZhLQSHq0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlJ12f%2FdJMcafVcQRD%2FWjZb02f7brxBizZhLQSHq0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;원격 데스크톱 환경은.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VDI(Virtual Desktop Infrastructure)는 사용자의 데스크톱 환경을 서버에서 돌리고 화면만 전송하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 환경에서 실행되는 애플리케이션은 물리 카메라에 직접 접근하지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 원격 접속 프로토콜이 로컬 단말의 카메라를 가상 장치로 전달해준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 정상 동작 자체가 이미 가상 카메라를 경유하는 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가상 카메라를 탐지해 차단하는 방어는 이 환경에서 정상 사용자까지 막게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인젝션 방어의 대표적 기법이 통째로 무력해지는 조건이라는 뜻이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;출입 통제 단말은 물리적으로 노출되어 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;출입 통제 단말은 물리적으로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bafvIQ/dJMcag7ydTO/KLEw3bSGSM2wDotVXsJuJK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bafvIQ/dJMcag7ydTO/KLEw3bSGSM2wDotVXsJuJK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bafvIQ/dJMcag7ydTO/KLEw3bSGSM2wDotVXsJuJK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbafvIQ%2FdJMcag7ydTO%2FKLEw3bSGSM2wDotVXsJuJK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;출입 통제 단말은 물리적으로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ACS(Access Control System)는 문이나 게이트에 설치된 단말로 출입을 통제하는 시스템이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 단말은 사용자의 개인 기기가 아니라 벽에 붙어 있는 공용 장비다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자가 물리적으로 접근해 케이블을 만지거나 내부에 장치를 끼워 넣을 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;카메라와 처리 보드 사이의 신호선에 개입하면 소프트웨어 방어를 전부 우회한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인 스마트폰과 달리 제조사의 기기 증명 체계를 기대하기도 어렵다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물리 보안이 확보되지 않은 위치에 설치된 단말은 애초에 믿을 수 있는 범위 바깥에 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;무엇을 신뢰할 수 있는지부터 정해야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 환경의 공통점은 기존 방어 기법의 전제가 성립하지 않는다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우 방어 기법을 고르기 전에 무엇을 믿고 무엇을 믿지 않을지를 먼저 명시해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단말을 신뢰할 수 있는가, 네트워크 구간을 신뢰할 수 있는가, 물리적 접근을 통제할 수 있는가를 각각 따진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VDI에서는 로컬 단말에서 캡처와 판정을 수행하고 결과만 서버로 보내는 구조가 대안이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ACS에서는 카메라와 처리부를 물리적으로 봉인된 하나의 모듈로 만드는 접근이 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어느 쪽이든 믿을 수 있는 범위를 명시하지 않고 기법만 나열하면 방어 설계가 성립하지 않는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;신뢰할 수 없다면 요구 조건을 바꿔야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기술적으로 믿을 수 있는 범위를 확보할 수 없는 환경도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우 선택지는 그 환경에서 생체인증을 쓰지 않거나, 다른 요소를 함께 요구하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 다룬 대로 요소를 추가하면 FMR은 곱으로 줄어들지만 사용성은 나빠진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물리 카드나 일회용 비밀번호처럼 다른 채널을 쓰는 요소를 함께 요구하면 인젝션만으로는 통과할 수 없게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;중요한 것은 인젝션 방어가 불완전하다는 사실을 인정하고 그 위에서 설계하는 태도다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;방어할 수 없는 조건에서 방어했다고 주장하는 것이 가장 위험한 선택이다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;나가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cpRSZu/dJMb998rC4g/ioKfNl5mzYPvZwTrpmCELk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cpRSZu/dJMb998rC4g/ioKfNl5mzYPvZwTrpmCELk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cpRSZu/dJMb998rC4g/ioKfNl5mzYPvZwTrpmCELk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcpRSZu%2FdJMb998rC4g%2FioKfNl5mzYPvZwTrpmCELk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8부까지의 모든 방어는 카메라가 찍은 것이 카메라 앞에 있었다는 전제 위에 서 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인젝션 공격은 그 전제 자체를 공격하므로 물리 세계의 흔적을 찾는 방어가 통째로 무력해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;표준도 두 공격을 다른 문서로 나눠 놓았고, PAD 인증서는 인젝션 저항력에 대해 아무것도 보증하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성 기술은 실시간 영역까지 들어왔고 남아 있는 흔적들도 세대가 바뀔 때마다 지워지고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;방어의 초점은 화면에 무엇이 담겼는지에서 이 화면이 어디서 왔는지로 옮겨가고 있으며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기기 증명과 하드웨어 격리와 촬영 시점 서명이 그 수단이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 지금까지 다룬 모든 시스템이 다루는 대상,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 생체정보 자체를 어떻게 보관하고 폐기할 것인가를 규제와 기술 양쪽에서 정리한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;참고 자료&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;위협 동향&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;iProov, Threat Intelligence Report 2026, 2026-04-08. iOS 대상 인젝션 공격 연 741퍼센트 증가, 2025년 하반기 1,151퍼센트 급증.&lt;/li&gt;
&lt;li&gt;iProov, Threat Intelligence Report 2025, 2025-02. 네이티브 가상 카메라 공격 2,665퍼센트, 얼굴 교체 공격 300퍼센트 증가.&lt;/li&gt;
&lt;li&gt;iProov, &quot;Threat Intelligence Uncovers New iOS Video Injection Tool for Sophisticated Deepfake Attacks&quot;, 2025-09.&lt;/li&gt;
&lt;li&gt;Sumsub, Identity Fraud Report, 2024-05. 한국 딥페이크 증가율 1,625퍼센트.&lt;/li&gt;
&lt;li&gt;Ponemon Institute 및 Gartner(2025-09) 조사. 임원 대상 딥페이크 경험률 41퍼센트, 영상 통화 중 딥페이크 사건 경험률 37퍼센트.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;공격과 방어 구조&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;J. R. McConvey, &quot;Injection attack detection critical to digital security yet often misunderstood&quot;, Biometric Update, 2026-05-27. PAD와 딥페이크 탐지와 IAD의 세 층 구분.&lt;/li&gt;
&lt;li&gt;DuckDuckGoose, &quot;How Injection Attacks Feed Deepfakes into Verification&quot;, 2026. PAD 인증과 인젝션 저항력의 분리.&lt;/li&gt;
&lt;li&gt;Aware, &quot;Beyond Liveness Detection: Defending Biometric Systems Against Injection Attacks&quot;, 2026-05. 기기 증명 및 TEE.&lt;/li&gt;
&lt;li&gt;&quot;Camera Pipe Injection: Why Your Biometric Backend is Fed Fake Data&quot;, 2026-01. Play Integrity API, App Attest, 암호화된 미디어 파이프라인.&lt;/li&gt;
&lt;li&gt;Didit, &quot;Injection Attack Detection in Biometric Verification&quot;, 2026-06. iBeta Level 1 시험 결과 및 인젝션 방어에 필요한 추가 신호 계층.&lt;/li&gt;
&lt;li&gt;LINE 기술블로그 한국어판, 「기기와 앱의 무결성 보장부터 서비스 요청 보호까지: LINE의 기기 증명 서비스」, 2024-07.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;생성 기술과 탐지 단서&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;한국정보보호학회, 「딥페이크 생성과 탐지 기술 동향 분석: 위협과 대응의 기술적 진보」, Review of KIISC, 2025-10. face reenactment 및 얼굴 교체 용어 정의.&lt;/li&gt;
&lt;li&gt;DuckDuckGoose, &quot;Real-Time Deepfakes: How They Work in 2026&quot;, 2026-06. 시간적 불일치, 눈 깜빡임 이상, 실시간 제약과 타협의 관계.&lt;/li&gt;
&lt;li&gt;DuckDuckGoose, &quot;How Face-Swap Deepfakes Work: 2026 Guide&quot;, 2026-07. 블렌딩 경계 아티팩트, 주파수 영역 지문, 실시간 가능 여부.&lt;/li&gt;
&lt;li&gt;Adaptive Security, &quot;Real-Time Deepfake Detection: The Complete Guide&quot;, 2026-07. 탐지와 생성의 적대적 최적화 관계.&lt;/li&gt;
&lt;li&gt;&quot;Deepfake Detection in Social Media: A Temporal Artifact Analysis Using 3D Convolutional Neural Networks&quot;, arXiv:2605.17573, 2026-05.&lt;/li&gt;
&lt;li&gt;&quot;Exploring the Advancements and Challenges of Deepfake Face-swap: A Survey&quot;, Multimedia Tools and Applications, 2026-01.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;표준 및 출처 증명&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;ISO/IEC 30107-3:2023. 적용 범위를 제시 과정의 캡처 장치 공격으로 한정.&lt;/li&gt;
&lt;li&gt;CEN/TS 18099:2024, Biometric data injection attack detection.&lt;/li&gt;
&lt;li&gt;ISO/IEC WD 25456. 개발 중.&lt;/li&gt;
&lt;li&gt;C2PA Specifications, &quot;Attestation in the C2PA Framework&quot;. Play Integrity, SGX, PSA, TPM 기반 증명.&lt;/li&gt;
&lt;li&gt;&quot;C2PA Adoption in 2026: Hardware Platforms and Verification Reality&quot;, 2026-04.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;용어 확인 자료&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;한국정보보호학회 리뷰, 2025-10. 얼굴 교체, 표정 전이, 시간적 일관성 한국어 표기 및 face reenactment 영문 유지.&lt;/li&gt;
&lt;li&gt;한국디지털콘텐츠학회 논문, 「아이트래킹 데이터를 활용한 한글 글꼴 가독성 분석」. 고정(fixation)과 단속운동(saccade) 표기.&lt;/li&gt;
&lt;li&gt;Corbado 한국어 용어집, 「WebAuthn의 증명(Attestation)이란 무엇인가요」.&lt;/li&gt;
&lt;li&gt;CIO Korea, 「다가온 사이버 팬데믹: AI 딥페이크와 보안 및 신원 확인의 미래」. 인젝션 공격 표기.&lt;/li&gt;
&lt;li&gt;김다빈 외, 「대조 학습과 컬러 지터링을 이용한 얼굴 안티스푸핑 기법」, 디지털포렌식연구 18(5), 2024. 스푸핑 공격 표기.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML+DL/Vision AI</category>
      <category>C2PA</category>
      <category>IAD</category>
      <category>tee</category>
      <category>가상카메라</category>
      <category>기기증명</category>
      <category>딥페이크</category>
      <category>라이브니스</category>
      <category>생체인증</category>
      <category>얼굴교체</category>
      <category>인젝션공격</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1377</guid>
      <comments>https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9#entry1377comment</comments>
      <pubDate>Mon, 10 Aug 2026 19:51:03 +0900</pubDate>
    </item>
    <item>
      <title>라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)</title>
      <link>https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8</link>
      <description>&lt;div class=&quot;book-toc&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목차&lt;/p&gt;
&lt;ul id=&quot;toc&quot; style=&quot;list-style-type: none;&quot; data-ke-list-type=&quot;none&quot;&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;background-color: #eeeeee; padding: 10px; border-radius: 10px;&quot;&gt;
&lt;p style=&quot;font-size: 18px;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;얼굴인식과 생체인증&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4%EB%8A%94-%EC%99%9C-%EB%B3%84%EA%B0%9C%EC%9D%98-%EB%AC%B8%EC%A0%9C%EC%9D%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스는 왜 별개의 문제인가 | 얼굴인식과 생체인증 (1)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EC%9A%A9%EC%96%B4-%EC%82%AC%EC%A0%84-FAR%EB%B6%80%ED%84%B0-PAD-ISO-30107%EA%B9%8C%EC%A7%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체인증 용어 사전: FAR부터 PAD, ISO 30107까지 | 얼굴인식과 생체인증 (2)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EA%B2%80%EC%B6%9C%EA%B3%BC-%EC%A0%95%EB%A0%AC-%EC%96%BC%EA%B5%B4%EC%9D%84-%EC%B0%BE%EA%B3%A0-%EB%B0%98%EB%93%AF%ED%95%98%EA%B2%8C-%EC%84%B8%EC%9A%B0%EA%B8%B0-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 검출과 정렬: 얼굴을 찾고 반듯하게 세우기 | 얼굴인식과 생체인증 (3)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;들어가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cnyo5D/dJMcaiqMfTf/p2p4w9ew27lZYLppspt5Ek/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cnyo5D/dJMcaiqMfTf/p2p4w9ew27lZYLppspt5Ek/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cnyo5D/dJMcaiqMfTf/p2p4w9ew27lZYLppspt5Ek/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcnyo5D%2FdJMcaiqMfTf%2Fp2p4w9ew27lZYLppspt5Ek%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1부에서 라이브니스가 인식 경로 옆에 병렬로 붙는 별도의 판정기라는 점을 정리했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 그 판정기가 실제로 무엇을 보고 어떻게 판정하는지를 다룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;방식은 크게 사용자에게 아무것도 요구하지 않는 쪽과 특정 행동을 요구하는 쪽으로 나뉜다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 방식은 보안 수준과 사용자 부담이 정반대로 움직이므로 선택이 곧 제품 설계다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부와 6부에서 다룬 입술 모션이 왜 액티브 방식의 상한에 가까운 지도 여기서 정리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지표는 2부에서 정의한 APCER과 BPCER을 그대로 쓰며, 이 두 값으로 곡선을 그리는 방법을 마지막에 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;라이브니스는 인식 성능을 개선해서 얻을 수 없다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;임베딩은 누구인가에만 답한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;임베딩은 누구인가에만 답한다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dy7yUu/dJMcaiqMfTn/EIKzcLst5j8Vvr8LPTwXP0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dy7yUu/dJMcaiqMfTn/EIKzcLst5j8Vvr8LPTwXP0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dy7yUu/dJMcaiqMfTn/EIKzcLst5j8Vvr8LPTwXP0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdy7yUu%2FdJMcaiqMfTn%2FEIKzcLst5j8Vvr8LPTwXP0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;임베딩은 누구인가에만 답한다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 다룬 대로 얼굴인식 모델은 이미지를 임베딩 벡터로 바꾸는 함수다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 벡터는 같은 사람끼리 가깝고 다른 사람끼리 멀도록 학습되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습 목표에 진짜인지 가짜인지를 구별하라는 항목은 들어 있지 않다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;손실 함수는 신원이 같은지만 물었고 모델은 그 질문에만 답하도록 최적화되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 임베딩에서 위조 여부를 읽어내려는 시도는 애초에 근거가 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스는 인식 모델의 부산물이 아니라 별도로 만들어야 하는 기능이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;인식기 입장에서 사진과 실제 얼굴은 같은 얼굴이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄된 사진을 카메라에 들이대면 검출기는 얼굴을 찾아내고 랜드마크를 잡는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정렬 단계도 정상적으로 동작하고 특징 추출도 문제없이 수행된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최종적으로 나온 임베딩은 원본 인물의 임베딩과 매우 가깝다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 오작동이 아니라 인식 모델이 설계대로 동작한 결과다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오히려 모델의 성능이 좋을수록 촬영 매체의 차이를 무시하도록 학습되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 언급한 대로 다양한 촬영 조건에 불변하도록 만드는 최적화가 위조 단서를 함께 지운다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;그래서 별도의 판정기를 병렬로 붙인다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스 모듈은 인식 모듈과 같은 입력을 받되 다른 질문에 답한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인식 모듈이 이 얼굴이 누구인지를 계산하는 동안 라이브니스 모듈은 이 입력이 진짜인지를 계산한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 판정은 독립적으로 수행되고 마지막에만 결합된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1부에서 정리한 대로 가장 단순한 결합은 두 결과의 논리곱이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 본 것처럼 두 점수를 가중합해 단일 임계값을 적용하는 방식도 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어느 쪽이든 두 모듈이 별도로 학습되고 별도로 측정되어야 한다는 점은 같다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;미세하고 국소적인 차이를 잡아내는 것이 이 태스크의 본질이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;미세하고 국소적인 차이를 잡.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WtNjo/dJMcaaM6TGC/ERH261sZ0W0ft2NdVpgKqK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WtNjo/dJMcaaM6TGC/ERH261sZ0W0ft2NdVpgKqK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WtNjo/dJMcaaM6TGC/ERH261sZ0W0ft2NdVpgKqK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWtNjo%2FdJMcaaM6TGC%2FERH261sZ0W0ft2NdVpgKqK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;미세하고 국소적인 차이를 잡.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스의 핵심 과제는 진짜 얼굴과 위조된 제시 사이의 미세한 차이를 찾는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 차이는 얼굴 전체의 형태가 아니라 표면의 질감이나 반사 같은 국소적인 성질에 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;종이의 독특한 질감, 디스플레이가 만드는 모아레 무늬, 실제 3차원 구조의 부재가 대표적인 단서다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인식이 얼굴 전체의 배치를 보는 문제라면 라이브니스는 표면의 물성을 보는 문제에 가깝다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 이미지를 입력받지만 주목해야 할 정보의 층위가 다르다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 인식용으로 학습된 백본을 그대로 쓰면 성능이 잘 나오지 않는 경우가 많다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;얼굴인식과 달리 라이브니스는 아직 풀리지 않았다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴인식은 대규모 공개 데이터셋이 나온 뒤 빠르게 산업화되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스는 같은 경로를 밟지 못했고 지금도 미해결 문제로 분류된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 연구 정리에 따르면 하드웨어 이점 없이 단일 RGB 센서만 쓰는 경우 실세계로의 일반화가 여전히 어렵다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄물 공격, 화면 재생 공격, 3차원 모델 공격에 모두 취약하다는 평가가 반복해서 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 격차는 데이터의 규모보다 공격 유형의 다양성에서 온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자는 계속 새로운 재료와 방법을 만들어내지만 학습 데이터는 과거의 공격만 담고 있기 때문이다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;패시브는 사용자에게 아무것도 요구하지 않는다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;인쇄물이 남기는 종이 질감과 반사&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;인쇄물이 남기는 종이.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Y6WPh/dJMcadXloNE/rmLr4FGZbQnzsWPCqCDjhk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Y6WPh/dJMcadXloNE/rmLr4FGZbQnzsWPCqCDjhk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Y6WPh/dJMcadXloNE/rmLr4FGZbQnzsWPCqCDjhk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FY6WPh%2FdJMcadXloNE%2FrmLr4FGZbQnzsWPCqCDjhk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;인쇄물이 남기는 종이.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄된 사진을 촬영하면 원본에 없던 흔적이 여러 개 추가된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프린터의 망점 패턴이 확대하면 규칙적인 점의 배열로 드러난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;종이 표면의 섬유 질감이 피부의 질감과 다른 통계적 성질을 보인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄물은 평면이므로 조명이 닿을 때 얼굴 곡면에서 나타나는 자연스러운 명암 변화가 생기지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;광택지는 특정 각도에서 강한 반사를 만들어 실제 피부와 구별되는 신호를 남긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 단서들은 사용자가 아무 행동도 하지 않아도 한 장의 이미지에서 관찰할 수 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;화면 재생이 남기는 모아레와 밝기 한계&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스마트폰이나 모니터로 얼굴 영상을 재생해 카메라에 보여주는 공격이 재생 공격이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;디스플레이의 픽셀 격자와 카메라 센서의 격자가 겹치면서 모아레 무늬가 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 무늬는 사람 눈에는 잘 안 보여도 주파수 영역에서는 뚜렷한 규칙성으로 나타난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;디스플레이는 표현할 수 있는 밝기의 범위가 실제 장면보다 좁아 명암 대비가 눌린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이벤트 카메라를 쓴 2026년 연구는 재생 공격 영상에서 평균 이벤트 발생률이 낮게 나온다고 보고했는데,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;디스플레이의 제한된 밝기가 원인이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 연구는 화면의 주사율 때문에 시간 방향으로 끊어지는 흔적과 조명 아티팩트가 함께 관찰된다고 정리했다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;혈류로 인한 미세한 색 변화를 보는 rPPG&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;살아 있는 얼굴은 심장 박동에 따라 피부의 혈류량이 주기적으로 변한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 변화는 피부색의 미세한 변동으로 나타나며, 카메라로도 관찰할 수 있을 만큼의 신호를 남긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 원격으로 측정하는 기법을 rPPG(remote photoplethysmography)라 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄물이나 마스크는 비생물학적 재료이므로 이런 생리적 성질을 갖지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 rPPG 신호가 없거나 비정상적인 패턴을 보이면 위조로 판정할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 신호가 매우 약해서 조명 변화나 얼굴의 미세한 움직임에 쉽게 묻힌다는 한계가 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;depth와 IR과 구조광은 하드웨어로 푼다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;RGB 카메라만으로 3차원 정보를 추정하는 것은 어렵지만 센서를 추가하면 직접 잴 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특정 패턴의 적외선을 얼굴에 쏘고 그 패턴이 얼굴 굴곡에 의해 얼마나 일그러지는지를 보면 깊이를 계산할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;빛이 왕복하는 시간을 재는 방식도 같은 목적을 달성하며, 스마트폰의 얼굴 잠금 해제에 널리 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;깊이 정보가 있으면 인쇄물이나 화면 같은 평면 공격은 즉시 걸러진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;적외선 대역에서는 실리콘과 피부의 반사 특성이 크게 달라 마스크 판별에도 유리하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 전용 센서가 필요하므로 일반 웹캠이나 저가 단말에서는 쓸 수 없다는 제약이 따른다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;보조 정보를 함께 학습시키는 구조&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;보조 정보를 함께 학습시.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c5UEoQ/dJMcaazAvmv/VElbGmqA74tZJ1qNJ0aMMK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c5UEoQ/dJMcaazAvmv/VElbGmqA74tZJ1qNJ0aMMK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c5UEoQ/dJMcaazAvmv/VElbGmqA74tZJ1qNJ0aMMK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc5UEoQ%2FdJMcaazAvmv%2FVElbGmqA74tZJ1qNJ0aMMK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;보조 정보를 함께 학습시.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;진짜와 가짜를 단순히 이진 분류로 학습시키면 모델이 엉뚱한 단서를 붙잡는 일이 잦다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터셋에 우연히 섞인 배경이나 조명 차이를 위조의 단서로 학습해버리는 식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 막기 위해 판정 외에 추가적인 예측 과제를 함께 부여하는 방식이 제안되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 연구는 픽셀 단위로 얼굴의 깊이를 추정하고 시퀀스 단위로 rPPG 신호를 추정하도록 감독 신호를 준 뒤 두 결과를 융합해 판정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;깊이와 혈류라는 물리적 근거를 명시적으로 학습시켜 모델이 그 단서를 보도록 유도하는 설계다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 보조 감독이 판별력 있고 일반화되는 단서로 학습을 이끈다는 것이 이 접근의 논지다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;패시브의 진짜 문제는 학습에 없던 공격이다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;실험실 정확도와 현장 정확도가 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;실험실 정확도와 현장.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bLUiZ7/dJMcaazAvmH/o4nJWJVKXdT2b5cGjMPzck/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bLUiZ7/dJMcaazAvmH/o4nJWJVKXdT2b5cGjMPzck/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bLUiZ7/dJMcaazAvmH/o4nJWJVKXdT2b5cGjMPzck/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbLUiZ7%2FdJMcaazAvmH%2Fo4nJWJVKXdT2b5cGjMPzck%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;실험실 정확도와 현장.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문에 보고된 라이브니스 성능은 대부분 같은 데이터셋 안에서 학습하고 시험한 결과다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 조건에서는 오류율이 1퍼센트 아래로 내려가는 경우도 흔하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 다른 데이터셋으로 시험하면 같은 모델의 성능이 급격히 떨어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;촬영에 쓴 카메라, 조명 조건, 피험자 구성, 사용한 위조 재료가 모두 다르기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 학습 데이터와 시험 데이터의 분포가 어긋나는 현상을 도메인 변화(domain shift)라 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스에서 이 문제가 특히 심한 이유는 판별 단서가 미세한 표면 성질에 있기 때문이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;도메인 격차를 다루는 네 가지 접근&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;도메인 격차를 다루는 네.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/O0m2A/dJMcag0KAO9/2yzdT6Wi2cRGpVJKLRL4BK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/O0m2A/dJMcag0KAO9/2yzdT6Wi2cRGpVJKLRL4BK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/O0m2A/dJMcag0KAO9/2yzdT6Wi2cRGpVJKLRL4BK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FO0m2A%2FdJMcag0KAO9%2F2yzdT6Wi2cRGpVJKLRL4BK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;도메인 격차를 다루는 네.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습 도메인과 운영 도메인의 격차를 줄이려는 시도는 크게 네 갈래로 나뉜다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도메인 일반화(Domain Generalization)는 타겟 도메인의 데이터 없이도 통하는 도메인 불변 특징을 학습하는 접근이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도메인 적응(domain adaptation)은 타겟 도메인의 데이터를 일부 확보해 함께 학습하는 접근이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소스 데이터 없이 사전학습된 모델과 타겟 데이터만으로 적응시키는 방식도 별도의 갈래로 연구된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추론 시점에 들어오는 데이터로 즉석에서 모델을 조정하는 방식도 최근 활발히 다뤄진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실무에서는 자체 수집한 데이터로 미세조정하는 도메인 적응이 가장 현실적인 선택이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;알려진 공격과 알려지지 않은 공격을 나눠 평가한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스 벤치마크는 평가 프로토콜을 두 개로 나누는 것이 관행이 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 번째 프로토콜은 학습에 등장한 공격 유형만으로 시험하며 알려진 유형 조건이라 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 번째 프로토콜은 학습에 없던 공격 유형으로 시험하며 알려지지 않은 유형 조건이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Wild Face Anti-Spoofing 데이터셋은 2차원과 3차원을 아우르는 17종의 제시 공격을 포함하고 이 두 프로토콜을 모두 제공한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 모델이라도 두 프로토콜에서의 성능 차이가 크게 벌어지는 경우가 일반적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;벤더 자료의 수치를 볼 때 어느 프로토콜인지를 확인해야 하는 이유가 여기에 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;정상 데이터만으로 학습하는 방식&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격 유형이 계속 새로 생긴다면 공격 데이터를 모으는 전략 자체가 한계에 부딪힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제를 우회하는 접근이 정상 얼굴만으로 학습하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델은 진짜 얼굴의 분포를 학습하고, 그 분포에서 벗어나는 입력을 위조로 판정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로운 공격 유형이 나와도 정상 분포에서 벗어나기만 하면 걸리므로 원리상 일반화에 유리하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 연구는 학습에 정상과 공격을 모두 쓰는 설정과 정상만 쓰는 설정을 나눠 정리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 정상 분포의 폭이 넓어 조명이나 화질이 나쁜 정상 사용자도 함께 걸린다는 문제가 남는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;RGB 카메라만으로는 아직 미해결이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;RGB 카메라만으로는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cEfhAk/dJMcagNnGbx/xBK6FFclQOxvOJvd0lMKjK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cEfhAk/dJMcagNnGbx/xBK6FFclQOxvOJvd0lMKjK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cEfhAk/dJMcagNnGbx/xBK6FFclQOxvOJvd0lMKjK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcEfhAk%2FdJMcagNnGbx%2FxBK6FFclQOxvOJvd0lMKjK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;RGB 카메라만으로는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 본 대로 깊이 센서나 적외선 센서를 쓰면 상당수의 공격이 즉시 걸러진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제는 대부분의 서비스가 사용자의 일반 스마트폰 카메라를 전제로 한다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 연구 정리는 하드웨어 이점 없이 단일 RGB 센서만 쓰는 방법들이 실세계 시나리오로의 일반화에 여전히 어려움을 겪는다고 평가한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄물과 재생과 3차원 모델 공격에 모두 노출되어 있다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 평가가 라이브니스 연구의 현재 위치를 가장 정확히 요약한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;패시브만으로 부족하다는 판단에서 액티브 방식이 다시 주목받는 배경이기도 하다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;액티브는 사용자에게 행동을 요구한다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;무작위 지시를 내리고 반응을 확인한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;무작위 지시를 내리고.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bkpYlU/dJMcacqE3Sb/XsDgkQMOtUAoNFZBOl23ak/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bkpYlU/dJMcacqE3Sb/XsDgkQMOtUAoNFZBOl23ak/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bkpYlU/dJMcacqE3Sb/XsDgkQMOtUAoNFZBOl23ak/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbkpYlU%2FdJMcacqE3Sb%2FXsDgkQMOtUAoNFZBOl23ak%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;무작위 지시를 내리고.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;액티브 방식은 인증 시점마다 사용자에게 특정 행동을 요구한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;눈을 깜빡이거나 고개를 좌우로 돌리거나 웃거나 화면의 점을 눈으로 따라가는 것이 흔한 지시다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;핵심은 이 지시가 세션마다 무작위로 바뀐다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미리 녹화한 영상은 어떤 지시가 나올지 알 수 없으므로 요구된 동작을 수행하지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구조를 챌린지-리스폰스라 부르며 보안 프로토콜 설계에서 오래 쓰인 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지시는 성인이라면 몇 초 안에 수행할 수 있을 만큼 단순해야 한다는 제약이 따른다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;실무 시스템은 여러 신호를 겹쳐서 본다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;상용 액티브 라이브니스 엔진은 하나의 단서에만 의존하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 움직임이 자연스럽게 시작되고 정점에 이르렀다가 감쇠하는 궤적을 그리는지를 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;딥페이크로 생성된 영상은 이 궤적을 평탄하게 만드는 경향이 있어 판별 단서가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음으로 눈꺼풀과 입술과 코끝 같은 랜드마크를 추적해 요청한 동작이 실제로 일어났는지를 검증한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기에 질감과 깊이 분석을 더해 평면 공격을 걸러내고, 카메라 방향과 조명과 프레임 레이트 같은 메타데이터로 마지막 층을 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격 도구가 흔히 놓치는 부분이 메타데이터이므로 이 층이 의외로 효과가 크다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;챌린지 공간의 크기가 보안 수준을 결정한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;챌린지-리스폰스의 보안은 공격자가 어떤 지시가 나올지 맞힐 확률에 달려 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가능한 지시의 개수를 챌린지 공간이라 부르면, 이 공간이 클수록 추측이 어려워진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;눈 깜빡임만 요구하는 시스템의 챌린지 공간은 사실상 하나뿐이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자는 눈을 깜빡이는 영상 하나만 준비하면 매번 통과할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;고개 돌리기와 웃기를 추가해도 조합의 수는 수십 개 수준에 머문다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미리 여러 영상을 준비해두면 대응할 수 있는 규모이므로 방어력이 제한적이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;사용자가 겪는 부담이라는 비용&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;사용자가 겪는 부담.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sBvYI/dJMcac5a62l/YIcjh3UqKCaB9JsK8IaZL1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sBvYI/dJMcac5a62l/YIcjh3UqKCaB9JsK8IaZL1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sBvYI/dJMcac5a62l/YIcjh3UqKCaB9JsK8IaZL1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsBvYI%2FdJMcac5a62l%2FYIcjh3UqKCaB9JsK8IaZL1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;사용자가 겪는 부담.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;액티브 방식의 대가는 사용자가 매번 무언가를 해야 한다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지시를 읽고 이해하고 수행하는 데 몇 초가 걸리며, 실패하면 다시 해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;밝기나 각도 때문에 동작이 인식되지 않으면 같은 지시를 반복하게 되고 이 과정에서 이탈이 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공공장소에서 고개를 돌리거나 웃는 행동을 하기 꺼리는 사용자도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 정리한 대로 요소를 늘리면 FNMR이 올라가는데, 여기에 지표에 잡히지 않는 이탈까지 더해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 온보딩처럼 이탈이 치명적인 흐름에서는 패시브 단일 프레임 방식이 선호된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;자극을 주는 쪽이 사용자가 아닌 경우&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;패시브와 액티브를 사용자의 동작 유무로만 나누면 어디에도 속하지 않는 방식이 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동공은 빛의 세기에 따라 크기가 변하는데, 이 반응을 대광반사(pupillary light reflex, PLR)라 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 의지와 무관하게 일어나는 반응이므로 흉내 낼 수 없고 인쇄물이나 화면에서는 발생하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화면을 특정 색으로 번쩍이게 한 뒤 얼굴에 반사된 빛의 색과 시점을 확인하는 방식도 같은 계열이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 경우 모두 사용자는 가만히 있고 시스템이 자극을 발생시킨다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 PLR을 라이브니스에 적용한 연구가 운영 프로토콜 기준으로 높은 오류율을 보였고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;관련 정리도 이를 외형 기반 판정의 대체가 아니라 보완으로 취급한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;입술 모션은 액티브 라이브니스의 상한에 가깝다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;눈 깜빡임과 고개 돌리기는 챌린지 공간이 작다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;눈 깜빡임과 고개 돌리기는 챌린지.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/10Jpv/dJMcaiK2Vxw/xv4cl5di4zX7uqeTCenovk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/10Jpv/dJMcaiK2Vxw/xv4cl5di4zX7uqeTCenovk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/10Jpv/dJMcaiK2Vxw/xv4cl5di4zX7uqeTCenovk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F10Jpv%2FdJMcaiK2Vxw%2Fxv4cl5di4zX7uqeTCenovk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;눈 깜빡임과 고개 돌리기는 챌린지.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 본 대로 기존 액티브 방식의 챌린지 공간은 수십 개 수준이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자가 대상 인물의 영상을 확보했다면 각 동작에 해당하는 구간을 미리 잘라둘 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지시가 나오는 순간 해당 구간을 재생하면 통과할 가능성이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;딥페이크 생성 도구가 실시간으로 동작하는 지금은 준비 자체도 어렵지 않다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 챌린지 공간이 작으면 액티브 방식의 이점이 상당 부분 사라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;액티브를 도입했다는 사실만으로 안전하다고 말할 수 없는 이유가 여기에 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;발화는 챌린지 공간이 사전 크기만큼 커진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지정된 단어를 발화하도록 요구하면 상황이 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;챌린지의 후보가 사전에 등재된 단어 전체가 되므로 공간의 크기가 수만 개 단위로 올라간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단어 두 개를 조합하면 그 제곱이 되므로 사실상 미리 준비할 수 없는 규모가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6부에서 다룬 대로 발화는 무엇을 말했는가와 누가 말했는가를 동시에 담고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 챌린지 공간의 크기만 커지는 것이 아니라 검증 축 자체가 하나 더 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 두 성질이 겹치기 때문에 발화 기반 챌린지가 구조적으로 유리하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;재생 공격이 원리적으로 실패하는 구조&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미리 녹화한 영상은 특정 발화 하나만 담고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시스템이 요구하는 단어가 그 영상에 없으면 재생해도 통과하지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자가 대상 인물의 모든 단어 발화를 확보하는 것은 현실적으로 불가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실시간 립싱크 생성으로 대응할 수 있으나 이는 6부에서 본 대로 립리딩과 화자 인증 두 축을 동시에 속여야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 화자 고유의 조음 습관까지 재현해야 하므로 난이도가 급격히 올라간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구조 덕분에 발화 기반 챌린지는 재생 공격에 원리적으로 강하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;초음파 주파수를 챌린지로 쓰는 접근&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;챌린지를 단어가 아니라 물리 신호의 주파수로 두는 연구도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FaceLip이라는 연구는 스피커로 사람이 들을 수 없는 대역의 신호를 내보내고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 신호가 입술 움직임에 의해 변조된 결과를 마이크로 받는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;챌린지는 무작위로 생성된 캐리어 신호의 주파수 조합이고, 리스폰스는 변조된 음향 신호다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문은 설계상 서로 다른 캐리어 주파수의 개수가 약 23억 개라고 밝히며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자가 이를 사전에 알아내거나 모두 맞히는 것이 사실상 불가능하다고 분석한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;챌린지 공간의 크기를 구체적 수치로 제시한 사례이고, 발화 기반 챌린지의 논리를 물리 계층으로 옮긴 것으로 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 스피커와 마이크를 함께 써야 하므로 무음 발화 시나리오와는 전제가 다르다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;6부의 두 축이 그대로 라이브니스 축이 된다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;6부의 두 축이 그대로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c5EgOQ/dJMcaiK2VxG/hHQp9ALoHPfhBAMIcnFkw1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c5EgOQ/dJMcaiK2VxG/hHQp9ALoHPfhBAMIcnFkw1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c5EgOQ/dJMcaiK2VxG/hHQp9ALoHPfhBAMIcnFkw1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc5EgOQ%2FdJMcaiK2VxG%2FhHQp9ALoHPfhBAMIcnFkw1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;6부의 두 축이 그대로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6부에서 발화 기반 인증이 무엇을 말했는가와 누가 말했는가 두 축으로 구성된다고 정리했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구조를 라이브니스 관점에서 다시 보면 세 번째 성질이 드러난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지정된 단어를 지금 이 순간 발화한다는 것은 그 행동이 실시간으로 수행되었다는 증거이기도 하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 하나의 입력이 신원 확인과 지식 확인과 실재 확인을 동시에 수행한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 다룬 다중 요소 결합의 관점에서 보면 요소 하나로 세 가지를 얻는 셈이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 사용자 부담은 눈 깜빡임보다 크므로, 이 교환이 서비스에 맞는지는 별도로 판단해야 한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;APCER과 BPCER로 곡선을 그린다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;두 지표는 하나의 임계값에서 반대로 움직인다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 대로 APCER은 공격 시도를 정상으로 잘못 통과시킨 비율이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;BPCER은 정상 사용자를 공격으로 잘못 막은 비율이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스 모델도 결국 하나의 실수 점수를 내놓고 임계값과 비교해 판정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임계값을 높이면 위조를 더 잘 걸러내지만 정상 사용자도 더 자주 막힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 APCER이 내려가면 BPCER이 올라가고, 그 반대도 성립한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 다룬 인식 지표의 교환 관계와 구조가 완전히 같다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;PAI 종류마다 난이도가 크게 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;PAI 종류마다 난이도가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dI2S6i/dJMcadprA7h/1uGyE8ZgTfafmDak9VubGk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dI2S6i/dJMcadprA7h/1uGyE8ZgTfafmDak9VubGk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dI2S6i/dJMcadprA7h/1uGyE8ZgTfafmDak9VubGk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdI2S6i%2FdJMcadprA7h%2F1uGyE8ZgTfafmDak9VubGk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;PAI 종류마다 난이도가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PAI(Presentation Attack Instrument)는 위조에 실제로 사용된 물건을 뜻한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인쇄된 사진은 평면이고 질감이 뚜렷해 가장 걸러내기 쉬운 축에 속한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화면 재생은 모아레와 밝기 한계라는 단서를 남기지만 화질이 좋아질수록 어려워진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;눈과 입 부분을 오려낸 2차원 마스크는 실제 사람의 움직임이 섞이므로 난이도가 올라간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실리콘이나 레진으로 만든 3차원 마스크는 입체 구조까지 갖추므로 깊이 정보로도 걸러내기 어렵다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 언급한 iBeta 인증이 등급을 나누는 기준도 정확히 이 난이도 차이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;표준은 가장 잘 뚫린 종류를 기준으로 잡는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PAI 종류마다 난이도가 다르므로 성능을 어떻게 집계할지가 문제가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;평균을 내면 쉬운 종류가 어려운 종류의 실패를 가려버린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ISO/IEC 30107-3은 PAI species별로 APCER을 각각 계산한 뒤 그중 최댓값을 채택하도록 정의한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자는 가장 취약한 경로를 골라 공격하므로 최악의 경우를 기준으로 삼는 것이 타당하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;열 가지 중 아홉 가지를 완벽히 막고 한 가지에 뚫리면 그 시스템의 APCER은 뚫린 값이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$\mathrm{APCER}&amp;nbsp;=&amp;nbsp;\max_{s&amp;nbsp;\in&amp;nbsp;S}&amp;nbsp;\mathrm{APCER}_s$$&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;곡선을 그려야 조합을 비교할 수 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;APCER과 BPCER을 각각 하나의 숫자로만 제시하면 어느 임계값에서 잰 값인지 알 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임계값을 훑으면서 두 값을 이어 그리면 하나의 곡선이 만들어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 곡선이 원점에 가까울수록 성능이 좋으며, 4부의 DET 곡선과 읽는 방법이 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 시스템을 비교할 때는 곡선 전체를 겹쳐 그려야 어느 구간에서 누가 나은지가 드러난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한쪽이 낮은 APCER 구간에서 유리하고 다른 쪽이 반대 구간에서 유리한 경우가 실제로 흔하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 BPCER10이나 BPCER20 같은 표기가 이 곡선 위의 특정 지점을 가리키는 방식이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;인증 등급별로 다른 지점을 선택한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;인증 등급별로 다른 지점.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/M83JZ/dJMcadCS31h/eQmmwj449ckvu90CP0oRkk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/M83JZ/dJMcadCS31h/eQmmwj449ckvu90CP0oRkk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/M83JZ/dJMcadCS31h/eQmmwj449ckvu90CP0oRkk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FM83JZ%2FdJMcadCS31h%2FeQmmwj449ckvu90CP0oRkk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;인증 등급별로 다른 지점.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하나의 시스템이 모든 상황에서 같은 임계값을 쓸 이유는 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앱을 여는 정도의 동작은 BPCER을 낮게 잡아 사용자가 막히지 않도록 하는 편이 낫다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;고액 송금이나 계정 복구는 APCER을 극단적으로 낮게 잡고 사용자 불편을 감수한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 정리한 대로 위험도에 따라 요구하는 요소의 조합 자체를 바꾸는 설계도 함께 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우 조합마다 별도의 곡선과 별도의 운영 지점이 존재하므로 지표도 조합별로 보고해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 이 편의 모든 논의는 카메라가 찍은 영상이 실제로 그 카메라에서 나왔다는 전제 위에 서 있으며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 전제가 무너지는 경우를 다음 편에서 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;나가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dmfabn/dJMcadprBat/CKrs26Sb1nv87zlQEmhTZK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dmfabn/dJMcadprBat/CKrs26Sb1nv87zlQEmhTZK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dmfabn/dJMcadprBat/CKrs26Sb1nv87zlQEmhTZK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdmfabn%2FdJMcadprBat%2FCKrs26Sb1nv87zlQEmhTZK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라이브니스는 인식 모델을 개선해서 얻을 수 있는 기능이 아니라 별도로 만들어 붙이는 판정기다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;패시브 방식은 질감과 모아레와 rPPG와 깊이 같은 단서를 사용자 동작 없이 관찰하지만, 학습에 없던 공격 유형에서 성능이 무너진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;액티브 방식은 무작위 지시로 이 문제를 우회하지만, 챌린지 공간이 작으면 이점이 상당 부분 사라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;발화 기반 챌린지는 공간의 크기가 사전 규모로 커지고 신원과 지식과 실재를 한 번에 확인한다는 점에서 구조적으로 유리하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성능은 APCER과 BPCER의 곡선으로 표현하며, PAI 종류별로 계산한 뒤 가장 잘 뚫린 값을 채택하는 것이 표준이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 카메라를 아예 건너뛰고 영상 신호를 직접 주입하는 공격을 다루며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 편의 모든 방어가 그 앞에서 어떻게 무력해지는지를 정리한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;참고 자료&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;서베이 및 벤치마크&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Z. Yu, Y. Qin, X. Li, C. Zhao, Z. Lei, G. Zhao, &quot;Deep Learning for Face Anti-Spoofing: A Survey&quot;, IEEE TPAMI, 2022.&lt;/li&gt;
&lt;li&gt;&quot;A Survey on Deep Learning-based Face Anti-Spoofing&quot;, APSIPA Transactions on Signal and Information Processing 13(1), 2024. rPPG 원리, 보조 정보 활용, 도메인 격차 대응 네 가지 시나리오 정리.&lt;/li&gt;
&lt;li&gt;&quot;Domain Generalization and Domain Adaptation Approaches for Face Anti-Spoofing: A Survey&quot;, IEEE Access, 2025.&lt;/li&gt;
&lt;li&gt;&quot;Deep Learning meets Liveness Detection: Recent Advancements and Challenges&quot;, arXiv:2112.14796.&lt;/li&gt;
&lt;li&gt;&quot;Wild Face Anti-Spoofing Challenge 2023: Benchmark and Results&quot;, CVPRW 2023, arXiv:2304.05753. 17종 제시 공격, Protocol 1과 Protocol 2 구분.&lt;/li&gt;
&lt;li&gt;&quot;Benchmarking Vision Foundation Models for Domain-Generalizable Face Anti-Spoofing&quot;, arXiv:2604.19196, 2026-04.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;패시브 방식&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Y. Liu, A. Jourabloo, X. Liu, &quot;Learning Deep Models for Face Anti-Spoofing: Binary or Auxiliary Supervision&quot;, CVPR 2018. 픽셀 단위 깊이와 시퀀스 단위 rPPG의 보조 감독.&lt;/li&gt;
&lt;li&gt;Z. Wang et al., &quot;Domain generalization via shuffled style assembly for face anti-spoofing&quot;, CVPR 2022.&lt;/li&gt;
&lt;li&gt;Y. Jia, J. Zhang, S. Shan, X. Chen, &quot;Single-side domain generalization for face anti-spoofing&quot;, CVPR 2020.&lt;/li&gt;
&lt;li&gt;&quot;Event-based Liveness Detection using Temporal Ocular Dynamics: An Exploratory Approach&quot;, arXiv:2604.26285, 2026-04. 재생 공격의 이벤트 발생률 및 디스플레이 아티팩트.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;액티브 방식&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;P. S. Prasad et al., &quot;Robust Facial Biometric Authentication System Using Pupillary Light Reflex for Liveness Detection of Facial Images&quot;, Computer Modeling in Engineering &amp;amp; Sciences 139(1), 2024.&lt;/li&gt;
&lt;li&gt;&quot;Deep Learning Models for Robust Facial Liveness Detection&quot;, arXiv:2508.09094. PLR의 운영 조건 신뢰성 한계 및 보완재 성격 정리.&lt;/li&gt;
&lt;li&gt;A. M&amp;eacute;ndez-Porras et al., &quot;A Multi-method Active Liveness Detection Approach for Spoofing Detection&quot;, FTC 2025, Springer LNNS 1675, 2026.&lt;/li&gt;
&lt;li&gt;&quot;Securing Face Liveness Detection Using Unforgeable Lip Motion Patterns&quot;, arXiv:2106.08013. FaceLip. 챌린지-리스폰스 추상화 및 캐리어 주파수 공간 규모.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;표준&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;ISO/IEC 30107-3:2023, Biometric presentation attack detection &amp;mdash; Part 3: Testing and reporting. APCER의 PAI species별 최댓값 정의.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;용어 확인 자료&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;최원준 외, 「자기 정규화를 통한 도메인 불변 특징 학습」, 한국군사과학기술학회지 24(4), 2021. 도메인 일반화(Domain Generalization), 도메인 적응(domain adaptation), 도메인 변화(domain shift) 병기 표기.&lt;/li&gt;
&lt;li&gt;나재민, 황원준, 「딥러닝 기반의 도메인 적응 기술: 서베이」, 방송공학회논문지 27(4), 2022. 소스 도메인, 타겟 도메인 표기.&lt;/li&gt;
&lt;li&gt;고려대 DMQA 연구실 세미나 자료, Domain Generalization.&lt;/li&gt;
&lt;li&gt;알체라 기술 블로그, 「얼굴 라이브니스 기술 도입 시 유의 사항」.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML+DL/Vision AI</category>
      <category>APCER</category>
      <category>BPCER</category>
      <category>rPPG</category>
      <category>도메인일반화</category>
      <category>라이브니스</category>
      <category>생체인증</category>
      <category>안티스푸핑</category>
      <category>액티브라이브니스</category>
      <category>챌린지리스폰스</category>
      <category>패시브라이브니스</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1376</guid>
      <comments>https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8#entry1376comment</comments>
      <pubDate>Sun, 9 Aug 2026 14:55:40 +0900</pubDate>
    </item>
    <item>
      <title>멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)</title>
      <link>https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7</link>
      <description>&lt;div class=&quot;book-toc&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목차&lt;/p&gt;
&lt;ul id=&quot;toc&quot; style=&quot;list-style-type: none;&quot; data-ke-list-type=&quot;none&quot;&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;background-color: #eeeeee; padding: 10px; border-radius: 10px;&quot;&gt;
&lt;p style=&quot;font-size: 18px;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;얼굴인식과 생체인증&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4%EB%8A%94-%EC%99%9C-%EB%B3%84%EA%B0%9C%EC%9D%98-%EB%AC%B8%EC%A0%9C%EC%9D%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스는 왜 별개의 문제인가 | 얼굴인식과 생체인증 (1)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EC%9A%A9%EC%96%B4-%EC%82%AC%EC%A0%84-FAR%EB%B6%80%ED%84%B0-PAD-ISO-30107%EA%B9%8C%EC%A7%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체인증 용어 사전: FAR부터 PAD, ISO 30107까지 | 얼굴인식과 생체인증 (2)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EA%B2%80%EC%B6%9C%EA%B3%BC-%EC%A0%95%EB%A0%AC-%EC%96%BC%EA%B5%B4%EC%9D%84-%EC%B0%BE%EA%B3%A0-%EB%B0%98%EB%93%AF%ED%95%98%EA%B2%8C-%EC%84%B8%EC%9A%B0%EA%B8%B0-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 검출과 정렬: 얼굴을 찾고 반듯하게 세우기 | 얼굴인식과 생체인증 (3)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;들어가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n3h3O/dJMcaasNGtx/cqnrc1jlHKk1JyUtf7vZYK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n3h3O/dJMcaasNGtx/cqnrc1jlHKk1JyUtf7vZYK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n3h3O/dJMcaasNGtx/cqnrc1jlHKk1JyUtf7vZYK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn3h3O%2FdJMcaasNGtx%2Fcqnrc1jlHKk1JyUtf7vZYK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지 다룬 것은 각각 하나의 신호를 다루는 방법이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3부와 4부는 얼굴 이미지를, 5부와 6부는 입술 움직임과 발화를 다뤘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제 인증 시스템은 이 신호들을 동시에 받아 하나의 판정을 내려야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 서로 다른 신호를 어느 단계에서 어떻게 합칠지, 그리고 그 결합이 성능 지표를 어떻게 바꾸는지를 정리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요소를 늘리면 보안이 좋아지고 편의성이 나빠진다는 교환 관계가 이 편의 중심 논지다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 입술과 음성이 시간적으로 맞아떨어지는지를 검증하는 별도의 축과, 오디오를 쓸 수 없는 조건에서의 설계를 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;하나의 모달리티로는 모든 조건을 감당하지 못한다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;얼굴은 조명과 가림에 약하다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;얼굴은 조명과 가림에 약하다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5942t/dJMcabynRtb/bPE4Ycab1jkY0R4FQHjWKK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5942t/dJMcabynRtb/bPE4Ycab1jkY0R4FQHjWKK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5942t/dJMcabynRtb/bPE4Ycab1jkY0R4FQHjWKK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5942t%2FdJMcabynRtb%2FbPE4Ycab1jkY0R4FQHjWKK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;얼굴은 조명과 가림에 약하다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴인식은 카메라가 얼굴을 제대로 담았을 때 매우 높은 정확도를 낸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제는 그 전제가 무너지는 조건이 실사용에서 자주 발생한다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;역광에서는 얼굴이 어둡게 뭉개지고 저조도에서는 노이즈가 특징을 덮는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마스크나 선글라스가 얼굴의 절반을 가리면 임베딩이 크게 이동한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3부에서 다룬 대로 검출 자체가 실패하면 FTA로 집계되어 시스템 지표를 갉아먹는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 얼굴 모달리티의 실패는 주로 시각 조건에서 온다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;음성은 소음과 변조에 약하다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음성 기반 화자 인증은 조명과 무관하게 동작하므로 얼굴의 약점을 보완한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 주변 소음이 섞이면 특징 추출 자체가 어려워진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지하철이나 카페처럼 다른 사람의 목소리가 겹치는 환경이 특히 나쁘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감기나 피로로 목 상태가 달라지면 등록 시점과 인증 시점의 특징이 벌어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최근에는 음성 합성 기술로 목소리를 흉내 내는 공격도 현실적인 위협이 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 음성 모달리티의 실패는 주로 음향 조건과 합성 공격에서 온다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;입술 모션은 두 약점을 나눠 갖는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;입술 모션은 두 약점을 나눠 갖는다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bY15oB/dJMcabrFqzT/xgwEX6PNq32DJlgU4aSA51/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bY15oB/dJMcabrFqzT/xgwEX6PNq32DJlgU4aSA51/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bY15oB/dJMcabrFqzT/xgwEX6PNq32DJlgU4aSA51/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbY15oB%2FdJMcabrFqzT%2FxgwEX6PNq32DJlgU4aSA51%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;입술 모션은 두 약점을 나눠 갖는다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입술 움직임은 영상에서 얻으므로 소음의 영향을 받지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 발화라는 행동을 요구하므로 정지된 사진으로는 재현되지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 입력이 카메라이므로 얼굴과 마찬가지로 조명과 가림에 영향을 받는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마스크를 쓰면 입술이 통째로 가려지므로 이 모달리티는 아예 동작하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부에서 확인한 대로 립리딩 성능 자체도 음성 인식에 비해 크게 뒤진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 입술 모션은 얼굴의 약점을 공유하고 음성의 약점은 피하는 중간 위치에 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;실패 모드가 겹치지 않아야 융합이 의미가 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 모달리티를 합치는 이유는 서로의 빈틈을 메우기 위해서다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소음이 심한 곳에서는 영상이 버티고 어두운 곳에서는 음성이 버티는 구조가 이상적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반대로 두 모달리티가 같은 조건에서 함께 무너지면 요소를 늘린 만큼의 이득이 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다중 생체인식 연구가 반복해서 확인한 것도 단일 모달리티 시스템이 오수락과 오거부 양쪽에서 취약하다는 점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 실험에서는 FAR 0.1퍼센트 조건에서 얼굴이 75.3퍼센트, 지문이 83.0퍼센트의 정탐률을 냈다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 조건에서 두 결과를 정규화 후 단순 합산했더니 94.9퍼센트로 올라갔다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;같은 센서에서 나온 신호는 함께 무너진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴과 입술 모션은 모두 같은 카메라의 같은 프레임에서 추출된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;카메라가 가려지거나 조명이 사라지면 두 신호가 동시에 사라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우 요소를 둘로 늘렸어도 실질적인 독립성은 확보되지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9부에서 다룰 인젝션 공격에서도 마찬가지인데, 영상 스트림을 통째로 주입하면 두 신호가 함께 위조된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 요소의 개수보다 요소가 어느 센서에서 나왔는지를 먼저 따져야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음성을 추가하는 것이 값어치가 있는 이유도 마이크라는 별도의 센서를 쓰기 때문이다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;어느 단계에서 합칠 것인가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;생체인식의 융합 레벨은 다섯 단계로 나뉜다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;생체인식의 융합 레벨은 다섯 단계로 나뉜.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ryU49/dJMcaiYwuM3/DKC5RKk6eDc67kDnFwclY0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ryU49/dJMcaiYwuM3/DKC5RKk6eDc67kDnFwclY0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ryU49/dJMcaiYwuM3/DKC5RKk6eDc67kDnFwclY0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FryU49%2FdJMcaiYwuM3%2FDKC5RKk6eDc67kDnFwclY0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;생체인식의 융합 레벨은 다섯 단계로 나뉜.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생체인식 분야는 파이프라인의 어느 지점에서 합치는지에 따라 융합을 다섯 단계로 분류한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;sensor-level은 특징 추출 이전의 원시 데이터를 합치는 것으로, 여러 각도로 찍은 얼굴을 하나로 합성하는 작업이 여기 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;feature-level은 각 모달리티에서 뽑은 특징 벡터를 합치는 단계다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;score-level은 각 모달리티가 계산한 유사도 점수를 합치는 단계이며 match score level이라고도 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;rank-level은 1:N 식별에서 각 모달리티가 내놓은 후보 순위를 결합하는 단계다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;decision-level은 각 모달리티가 내린 허용 또는 거부 판정을 결합하는 마지막 단계다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;딥러닝 쪽의 Early와 Late 구분은 다른 계보다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;멀티모달 딥러닝 문헌은 융합을 Early Fusion, Late Fusion, Joint Fusion 셋으로 나눈다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Early Fusion은 서로 다른 데이터를 하나로 합친 뒤 모델을 학습시키는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Late Fusion은 각각 다른 모델로 학습한 뒤 나온 결과를 합치는 방식으로 앙상블과 구조가 비슷하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Joint Fusion은 원하는 깊이에서 모달리티를 병합할 수 있는 유연성을 갖는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 분류 체계가 대략 대응하지만 정확히 겹치지는 않으므로 섞어 쓰면 오해가 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 인증 시스템을 다루므로 생체인식 쪽의 다섯 단계 분류를 기준으로 서술한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;특징을 이어 붙이는 feature-level&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;feature-level 융합은 각 모달리티의 특징 벡터를 연결해 하나의 긴 벡터로 만드는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 임베딩 512차원과 발화 임베딩 512차원을 이으면 1024차원 벡터가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특징 벡터가 점수나 판정보다 훨씬 풍부한 정보를 담고 있으므로 원리상 가장 효과적인 방식으로 평가된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 모달리티 사이의 상호작용을 모델이 직접 학습할 수 있다는 점도 장점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 벡터 차원이 커져 학습에 더 많은 데이터가 필요하고 과적합 위험이 늘어난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 두 모달리티의 특징 스케일이 다르면 한쪽이 학습을 지배하므로 정규화가 선행되어야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;점수를 합치는 score-level&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;score-level 융합은 각 모달리티가 독립적으로 계산한 유사도 점수를 결합한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결합 규칙은 단순 합, 가중 합, 곱, 최솟값, 최댓값 같은 것들이 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;구현이 단순하고 처리 비용이 낮아 다중 생체인식 시스템에서 가장 널리 채택되는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 모달리티의 모델을 독립적으로 학습하고 교체할 수 있다는 점이 실무에서 큰 이점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 인용한 실험에서 단순 합산 규칙이 FAR 전 구간에서 가장 좋은 성능을 냈다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 아주 낮은 FAR 조건에서는 합 규칙과 곱 규칙의 정탐률이 급격히 떨어지는 현상도 함께 보고되었다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;판정을 모으는 decision-level&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;decision-level 융합은 각 모달리티가 내놓은 허용 또는 거부라는 이진 판정을 결합한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결합 규칙으로는 다수결, AND 규칙, Dempster-Shafer 이론에 기반한 가중 투표 등이 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 모달리티가 완전히 독립적인 시스템으로 존재할 수 있으므로 결합이 가장 느슨하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서로 다른 벤더의 모듈을 조합하거나 인증 등급별로 규칙을 바꾸기에 유리하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 점수라는 연속적인 정보가 이진값으로 압축되므로 정보 손실이 가장 크다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;경계선 근처의 애매한 판정과 확실한 판정이 같은 무게로 취급된다는 점이 특히 문제가 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;정보량과 모듈 교체 가능성은 반대로 움직인다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;보량과 모듈 교체 가능성은 반대로 움직인.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/csuoxv/dJMcagsXHIr/cXNtE1kyHxedrcx8kZv2CK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/csuoxv/dJMcagsXHIr/cXNtE1kyHxedrcx8kZv2CK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/csuoxv/dJMcagsXHIr/cXNtE1kyHxedrcx8kZv2CK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcsuoxv%2FdJMcagsXHIr%2FcXNtE1kyHxedrcx8kZv2CK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;보량과 모듈 교체 가능성은 반대로 움직인.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;앞의 세 단계를 나란히 놓으면 일관된 경향이 드러난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞 단계에서 합칠수록 정보가 많이 남고 모달리티 간 상호작용을 학습할 여지가 커진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;뒤 단계에서 합칠수록 각 모듈이 독립적이어서 교체와 확장과 디버깅이 쉬워진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;feature-level에서 합치면 모달리티 하나를 교체할 때 전체를 다시 학습해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;score-level이나 decision-level에서 합치면 해당 모듈만 갈아 끼우면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스타트업처럼 모델을 자주 교체하는 환경에서 score-level이 선호되는 이유가 여기에 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;모달리티가 서로 모순되는 답을 낼 때&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지의 논의는 두 모달리티가 대체로 같은 방향을 가리킨다는 전제를 깔고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제로는 얼굴은 통과라고 하는데 음성은 거부라고 하는 상황이 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년 발표된 연구는 기존 융합 연구가 feature나 score 단계의 성능 개선에 집중해 왔다고 지적한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;decision 단계에서 불확실성을 모델링하거나 모달리티 간 모순을 명시적으로 다루는 경우는 드물었다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 결과 지배적인 모달리티가 약하지만 맥락상 중요한 신호를 덮어버리거나, 잡음이 섞인 입력이 최종 판정에 과도한 영향을 준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오수락과 오거부의 비용이 큰 출입 통제 환경에서 이 문제가 특히 심각하다는 정리다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;요소를 늘리면 보안은 좋아지고 편의성은 나빠진다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;AND로 묶으면 FMR은 대략 곱해진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;decision-level에서 AND 규칙을 쓰면 두 모달리티가 모두 통과해야 최종 허용이 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자가 통과하려면 얼굴과 음성 양쪽을 동시에 속여야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 판정이 독립이라고 가정하면 두 사건이 동시에 일어날 확률은 각 확률의 곱이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$\mathrm{FMR}_{\text{AND}}&amp;nbsp;\approx&amp;nbsp;\mathrm{FMR}_1&amp;nbsp;\times&amp;nbsp;\mathrm{FMR}_2$$&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 모달리티의 FMR이 0.1퍼센트라면 결합 후에는 0.0001퍼센트가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요소 하나를 추가하는 것만으로 보안 수준이 세 자릿수 개선되는 셈이다&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;같은 조건에서 FNMR은 대략 합쳐진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정당한 사용자가 거부되는 경우는 반대로 계산된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 모달리티 중 어느 하나만 실패해도 AND 조건이 깨지므로 거부가 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;적어도 하나가 실패할 확률은 각각의 실패 확률을 더한 값에서 겹치는 부분을 뺀 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$\mathrm{FNMR}_{\text{AND}}&amp;nbsp;=&amp;nbsp;1&amp;nbsp;-&amp;nbsp;(1-\mathrm{FNMR}_1)(1-\mathrm{FNMR}_2)&amp;nbsp;\approx&amp;nbsp;\mathrm{FNMR}_1&amp;nbsp;+&amp;nbsp;\mathrm{FNMR}_2$$&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 모달리티의 FNMR이 2퍼센트라면 결합 후에는 약 4퍼센트가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보안이 세 자릿수 좋아지는 대가로 사용자가 막히는 빈도가 두 배가 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;OR로 묶으면 정확히 반대가 된다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;OR 규칙에서는 두 모달리티 중 하나만 통과해도 최종 허용이 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정당한 사용자는 둘 중 하나만 성공하면 되므로 거부될 확률이 곱으로 줄어든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$\mathrm{FMR}_{\text{OR}}&amp;nbsp;\approx&amp;nbsp;\mathrm{FMR}_1&amp;nbsp;+&amp;nbsp;\mathrm{FMR}_2,&amp;nbsp;\qquad&amp;nbsp;\mathrm{FNMR}_{\text{OR}}&amp;nbsp;\approx&amp;nbsp;\mathrm{FNMR}_1&amp;nbsp;\times&amp;nbsp;\mathrm{FNMR}_2$$&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 사용성은 크게 좋아지고 보안은 나빠진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 특허 문헌도 이 관계를 명시하는데,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 센서가 모두 인식하도록 요구하면 FAR이 줄고 하나만 인식해도 되도록 하면 FRR이 줄어 사용성이 올라간다고 서술한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;은행 거래처럼 보안이 중요한 경우에는 AND를, 편의성이 중요한 경우에는 OR를 택하는 것이 기본 방향이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;요소마다 등록과 인증의 마찰이 누적된다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;요소마다 등록과 인증.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tvxrh/dJMcaij1Ypp/HnbbTlDzs8urjKGKFSROsK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tvxrh/dJMcaij1Ypp/HnbbTlDzs8urjKGKFSROsK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tvxrh/dJMcaij1Ypp/HnbbTlDzs8urjKGKFSROsK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ftvxrh%2FdJMcaij1Ypp%2FHnbbTlDzs8urjKGKFSROsK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;요소마다 등록과 인증.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수식에 드러나지 않는 비용이 하나 더 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요소를 추가하면 등록 단계에서 사용자가 해야 할 일이 늘어난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴만 쓰면 촬영 한 번으로 끝나지만 발화를 추가하면 단어를 정하고 여러 번 말해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증 단계에서도 매번 발화가 필요하므로 소요 시간이 길어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6부에서 다룬 대로 등록 발화 수를 늘리면 성능이 좋아지지만 이탈률도 함께 올라간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지표상의 FNMR 증가와 별개로 사용자가 아예 등록을 포기하는 비율이 생긴다는 뜻이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;실제 설계는 조건에 따라 요소를 켜고 끈다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AND와 OR 중 하나를 고정해서 쓰는 시스템은 드물다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대부분은 요청의 위험도에 따라 요구하는 요소의 조합을 다르게 가져간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앱을 여는 정도는 얼굴만으로 통과시키고 송금은 발화까지 요구하는 식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 사용자라도 새로운 기기에서 접속하거나 평소와 다른 시간대라면 요소를 추가한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 설계에서는 조합마다 서로 다른 임계값과 서로 다른 FMR 목표가 존재한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 하나의 시스템 안에 여러 개의 운영 지점이 공존하므로 지표도 조합별로 따로 보고해야 한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;스케일이 다른 점수는 그대로 더할 수 없다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;모달리티마다 점수의 범위와 분포가 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스케일이 다른 점수는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfw4O2/dJMcahrWIFy/IdsL3DGOPS8Wfkfrgpnk40/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfw4O2/dJMcahrWIFy/IdsL3DGOPS8Wfkfrgpnk40/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfw4O2/dJMcahrWIFy/IdsL3DGOPS8Wfkfrgpnk40/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbfw4O2%2FdJMcahrWIFy%2FIdsL3DGOPS8Wfkfrgpnk40%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;스케일이 다른 점수는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴인식은 코사인 유사도를 쓰므로 점수가 대체로 0과 1 사이에 놓인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화자 검증도 코사인을 쓰지만 분포의 평균과 폭이 얼굴 쪽과 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;거리 기반으로 구현된 모듈은 값이 작을수록 같은 사람이므로 부호가 반대다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;확률로 출력하는 모듈과 로그 우도비로 출력하는 모듈은 범위 자체가 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 상태에서 두 점수를 그냥 더하면 범위가 넓은 쪽이 결과를 지배한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 결합 이전에 점수들을 같은 자리에 놓는 작업이 반드시 선행되어야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;정규화는 분포를 같은 자리에 맞추는 작업이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 널리 쓰이는 방법은 min-max, z-score, tanh 세 가지다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;min-max는 최솟값과 최댓값을 기준으로 0과 1 사이로 옮기는 방식으로 계산이 가장 단순하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;z-score는 평균과 표준편차를 이용해 표준화하는 방식이며 가장 흔하게 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;tanh는 쌍곡탄젠트 함수를 이용해 이상치의 영향을 억제하는 방식으로 안정성이 높다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세 방법을 판단하는 기준은 공통 범위로 옮겨지는가, 원래 분포 형태를 유지하는가, 이상치에 강건한가 셋이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 리뷰는 min-max가 원 분포를 유지하는 유일한 방법이지만 이상치에 민감하고, tanh는 강건하지만 분포 형태를 바꾼다고 정리한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;캘리브레이션은 점수를 확률로 바꾸는 작업이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정규화가 점수의 범위를 맞추는 작업이라면 캘리브레이션은 의미를 부여하는 작업이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;캘리브레이션이 잘 된 시스템에서는 점수 0.9가 같은 사람일 확률 90퍼센트를 의미한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 확률로 바뀌면 서로 다른 모달리티의 점수를 확률 이론에 따라 결합할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우도비 기반 결합이 이론적으로 최적이라는 결과도 이 전제 위에 서 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 확률로 변환하려면 실제 운영 데이터에서 점수와 정답의 관계를 측정해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문 데이터셋에서 구한 변환을 그대로 옮기면 분포가 달라 캘리브레이션이 깨진다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;가중치를 고정할 것인가 조건에 따라 바꿀 것인가&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가중 합산에서는 각 모달리티에 얼마의 비중을 줄지를 정해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 단순한 방법은 모든 모달리티에 같은 가중치를 주는 단순 합이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 본 실험에서 단순 합이 여러 결합 규칙 중 가장 좋은 성능을 냈다는 점은 기억할 만하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 모달리티의 성능이 다르다면 성능이 좋은 쪽에 더 큰 가중치를 주는 방식이 자연스럽다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 어느 쪽이 좋은지는 조건에 따라 뒤바뀌므로 고정 가중치는 최적이 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조명이 나쁜 순간에는 얼굴 가중치를 낮추고 소음이 심한 순간에는 음성 가중치를 낮추는 것이 이상적이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;품질 신호를 가중치에 반영하는 방식&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;품질 신호를 가중치에 반.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cM3S5l/dJMcahrWIFN/XoZK5v9c6aecK3zgscrXCK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cM3S5l/dJMcahrWIFN/XoZK5v9c6aecK3zgscrXCK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cM3S5l/dJMcahrWIFN/XoZK5v9c6aecK3zgscrXCK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcM3S5l%2FdJMcahrWIFN%2FXoZK5v9c6aecK3zgscrXCK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;품질 신호를 가중치에 반.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조건에 따라 가중치를 바꾸려면 지금 이 입력의 품질을 측정해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 다룬 feature norm이 얼굴 쪽 품질의 근삿값으로 쓰일 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음성 쪽에서는 신호 대 잡음비가 직관적인 품질 지표가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입술 모션에서는 얼굴 검출 신뢰도와 랜드마크의 프레임 간 안정성을 쓸 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;품질이 낮은 모달리티의 가중치를 낮추면 그 모달리티가 결과를 흐리는 것을 막을 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;품질을 결합에 반영하는 접근은 지문과 홍채 조합에서 이미 효과가 확인되었고 얼굴과 음성 조합에도 그대로 적용된다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;입술과 음성이 어긋나는지를 본다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;동기 여부 자체가 별도의 검증 축이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;동기 여부 자체가 별도의.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bV5EHp/dJMb99N4g3V/ppHwFre77XZASRa3F3yiyK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bV5EHp/dJMb99N4g3V/ppHwFre77XZASRa3F3yiyK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bV5EHp/dJMb99N4g3V/ppHwFre77XZASRa3F3yiyK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbV5EHp%2FdJMb99N4g3V%2FppHwFre77XZASRa3F3yiyK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;동기 여부 자체가 별도의.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지의 융합은 각 모달리티가 같은 사람을 가리키는지를 확인하는 작업이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 두 신호 사이에는 확인할 것이 하나 더 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사람이 말할 때 입술 움직임과 소리는 물리적으로 같은 순간에 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영상과 음성을 따로 조작해 붙이면 이 동시성이 미세하게 깨진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년 리뷰는 저수준 시각 아티팩트와 뚜렷한 오디오 왜곡이 포렌식 증거로서 신뢰도를 잃고 있다고 정리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 입술 움직임과 음소 사이의 시간적, 조음적, 의미적 연결이라는 발화의 근본 속성에 탐지가 더 의존하게 되었다는 평가다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;오프셋을 재는 SyncNet 계열&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SyncNet은 2016년에 제안된 방식으로 이 접근의 출발점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영상 구간과 음성 구간을 각각 벡터로 바꾼 뒤 둘 사이의 거리를 계산한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음성을 시간축에서 조금씩 밀어가며 거리가 가장 작아지는 지점을 찾으면 그 값이 오프셋이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원본 영상에서는 오프셋이 0에 가깝고 조작된 영상에서는 값이 커지거나 최솟값 자체가 뚜렷하지 않다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 방식은 라벨 없이 학습할 수 있는데, 원본 영상 자체가 정답 쌍을 제공하기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금도 립싱크 생성 모델의 학습 루프에 고정된 판별기로 들어가며 생성 품질을 강제하는 역할을 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;자가지도 표현으로 불일치를 잡는 최근 접근&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;자가지도 표현으로 불일치.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PAYqG/dJMb99N4g32/WZ30WyGiqpWy7dfGkucLO1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PAYqG/dJMb99N4g32/WZ30WyGiqpWy7dfGkucLO1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PAYqG/dJMb99N4g32/WZ30WyGiqpWy7dfGkucLO1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPAYqG%2FdJMb99N4g32%2FWZ30WyGiqpWy7dfGkucLO1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;자가지도 표현으로 불일치.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최근 연구는 오프셋이라는 단일 수치 대신 학습된 표현으로 불일치를 잡는 방향으로 갔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AV-Lip-Sync+는 6부에서 다룬 AV-HuBERT를 특징 추출기로 써서 입술 영역과 오디오 사이의 불일치를 포착한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 모델이 립리딩에서 좋은 성능을 내므로 두 모달리티의 대응 관계를 이미 학습했다는 발상이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;TISAN은 사전학습된 시각 인코더를 고정한 채 실제 데이터만으로 학습하는 방식을 택했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;합성 위조물을 학습에 쓰지 않으므로 새로운 생성 기법에 대한 일반화가 낫다는 것이 주장이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내에서는 Interspeech 2024에 발표된 SyncVSR이 오디오 토큰과의 동기를 종단 간으로 학습해&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터 효율을 높이는 방식을 제안했다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;동기 기반 탐지는 언어에 의존한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 접근에는 국내 서비스에서 특히 중요한 한계가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년 발표된 연구가 립싱크 딥페이크 탐지 모델의 언어 의존성을 정면으로 지적했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 모델은 영어 벤치마크에서 95퍼센트를 넘는 정확도를 냈지만 중국어에서는 성능이 크게 떨어졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원인은 이 모델이 멜 스펙트로그램 형태의 오디오 입력을 요구해 음소와 viseme의 연관을 학습하기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6부에서 정리한 대로 그 연관 관계는 언어마다 크게 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국어는 평음과 경음과 격음의 구분이 시각적으로 드러나지 않으므로, 영어 기준으로 만든 탐지기를 그대로 옮기면 성능을 보장할 수 없다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;오디오를 쓰면 성문 정보가 함께 들어온다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 연구가 프라이버시 측면의 문제도 함께 제기했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오디오 신호에는 발화 내용뿐 아니라 화자의 성문 정보가 담긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동기 검증만을 위해 오디오를 서버로 보내면 그 서버가 성문 정보까지 보유하게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10부에서 다룰 생체정보 규제 관점에서는 처리 목적을 넘어선 수집으로 볼 여지가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 때문에 오디오도 픽셀도 쓰지 않고 입술 모션의 기하 정보만으로 판별하는 접근이 대안으로 제시되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동기 검증의 이점과 오디오 수집의 부담을 함께 저울에 올려야 한다는 뜻이다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;오디오가 없을 때를 설계해야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;무음 발화는 오디오 경로가 아예 비는 조건이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;무음 발화는 오디오 경로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mnlqG/dJMcacqDHms/EtKKbPkwL0bekVT3ullAJk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mnlqG/dJMcacqDHms/EtKKbPkwL0bekVT3ullAJk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mnlqG/dJMcacqDHms/EtKKbPkwL0bekVT3ullAJk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmnlqG%2FdJMcacqDHms%2FEtKKbPkwL0bekVT3ullAJk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;무음 발화는 오디오 경로.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6부에서 다룬 lip password 방식은 소리를 내지 않고 입만 움직여도 동작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공공장소에서 암호를 소리 내어 말하지 않아도 된다는 점이 이 방식의 이점으로 언급된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 이 조건에서는 오디오 신호가 존재하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음성 기반 화자 검증도, 앞 절의 동기 검증도 모두 입력이 없어 동작하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 이 모드는 요소 하나가 빠진 것이 아니라 검증 축 두 개가 동시에 사라진 상태다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;무음 모드를 지원하겠다는 결정은 곧 이 상태를 설계하겠다는 결정이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;소음과 공공장소에서 오디오를 못 쓰는 경우&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;무음 모드를 지원하지 않더라도 오디오를 쓸 수 없는 상황은 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지하철이나 공사장에서는 신호 대 잡음비가 너무 낮아 특징 추출이 실패한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회의실이나 도서관에서는 사용자가 소리 내기를 꺼려 아예 시도하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마이크 권한을 거부한 사용자도 상당수 존재한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 경우 오디오 모듈은 낮은 품질 점수를 내거나 아예 실패를 반환한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 다룬 품질 기반 가중치는 이 상황을 부분적으로 흡수하지만 완전히 처리하지는 못한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;폴백은 요소를 빼는 것이 아니라 조합을 바꾸는 것이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 위험한 설계는 오디오가 없을 때 그냥 그 요소를 무시하고 나머지로 통과시키는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3장의 계산에 따르면 요소를 하나 빼는 순간 FMR이 곱셈 하나만큼 커진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 요소로 0.0001퍼센트였던 값이 요소 하나를 잃으면 0.1퍼센트로 돌아간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자는 마이크를 막거나 소음을 유발해 의도적으로 이 상태를 만들 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 폴백은 남은 요소의 임계값을 높이거나 다른 요소를 추가로 요구하는 방식이어야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;무음 모드에서는 발화 단어의 길이를 늘이거나 액티브 라이브니스를 추가하는 식의 보완이 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;요소가 줄면 임계값도 다시 잡아야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;요소가 줄면 임계값도 다시.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cxzsDc/dJMcaheovvo/lNgVpPeXlBEhQPXoqdn3Hk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cxzsDc/dJMcaheovvo/lNgVpPeXlBEhQPXoqdn3Hk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cxzsDc/dJMcaheovvo/lNgVpPeXlBEhQPXoqdn3Hk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcxzsDc%2FdJMcaheovvo%2FlNgVpPeXlBEhQPXoqdn3Hk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;요소가 줄면 임계값도 다시.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 조합은 서로 다른 FMR과 FNMR 곡선을 갖는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 요소를 쓸 때의 임계값을 한 요소만 쓰는 조합에 그대로 적용하면 보안 수준이 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 시스템이 지원하는 모든 조합에 대해 목표 FMR을 정하고 각각 임계값을 계산해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 작업은 조합의 수만큼 반복되므로 지원하는 폴백 경로가 많을수록 운영 부담이 커진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정리한 대로 임계값은 자체 운영 데이터의 점수 분포를 보고 정해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조합별로 충분한 데이터를 모으기 어렵다면 지원하는 조합의 수를 줄이는 것이 현실적인 선택이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;어느 경로로 통과했는지를 남겨야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 허용 판정이라도 어떤 요소 조합으로 통과했는지는 서로 다른 사실이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 요소를 모두 통과한 인증과 폴백 경로로 통과한 인증은 신뢰 수준이 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 정보를 남겨두지 않으면 사고가 났을 때 어느 경로가 뚫렸는지 추적할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 특정 사용자가 항상 폴백 경로로만 통과한다면 그 자체가 이상 신호일 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;로그에는 사용한 모달리티, 각 모달리티의 점수, 적용한 임계값, 품질 지표를 함께 기록하는 것이 좋다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 원본 신호나 임베딩을 그대로 저장하면 10부에서 다룰 생체정보 보관 문제가 발생하므로 기록 범위를 신중히 정해야 한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;나가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AKpSS/dJMcacqDHmK/Wtbc8INytcbstzFVSmk7Q1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AKpSS/dJMcacqDHmK/Wtbc8INytcbstzFVSmk7Q1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AKpSS/dJMcacqDHmK/Wtbc8INytcbstzFVSmk7Q1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAKpSS%2FdJMcacqDHmK%2FWtbc8INytcbstzFVSmk7Q1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하나의 모달리티로는 모든 조건을 감당할 수 없으므로 융합이 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 실패 모드가 겹치지 않아야 의미가 있으며, 같은 센서에서 나온 신호는 함께 무너진다는 점을 먼저 따져야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;합치는 지점은 feature, score, decision 단계로 나뉘고 앞 단계일수록 정보가 많이 남고 뒤 단계일수록 모듈 교체가 쉽다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AND로 묶으면 FMR은 대략 곱해지고 FNMR은 대략 합쳐지므로, 요소를 늘리는 결정은 곧 사용성을 내주는 결정이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서로 다른 모달리티의 점수는 정규화와 캘리브레이션을 거쳐야 결합할 수 있고, 품질 신호를 가중치에 반영하면 조건 변화를 흡수할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 이 모든 판정이 전제하는 조건, 즉 카메라 앞에 있는 것이 살아 있는 사람인지를 확인하는 라이브니스를 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;참고 자료&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;융합 레벨과 결합 규칙&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;A. Ross, K. Nandakumar, A. K. Jain, Handbook of Multibiometrics, Springer, 2006.&lt;/li&gt;
&lt;li&gt;&quot;A Comprehensive Overview of Biometric Fusion&quot;, arXiv:1902.02919. sensor, feature, score, rank, decision 다섯 단계 분류.&lt;/li&gt;
&lt;li&gt;&quot;Multimodal Biometric Fusion Strategies: A Comparative Review of Current Trends, Challenges, and Future Directions&quot;, 2026.&lt;/li&gt;
&lt;li&gt;&quot;Context-Aware Decision Fusion for Multimodal Access Control Under Contradictory Biometric Evidence&quot;, Computers 15(4), 2026-03. decision 단계의 불확실성 모델링 부재 및 모달리티 간 모순 문제.&lt;/li&gt;
&lt;li&gt;&quot;Multimodal Biometric Systems: Study to Improve Accuracy and Performance&quot;, arXiv:1011.6220. FAR 0.1퍼센트 조건 얼굴 75.3퍼센트, 지문 83.0퍼센트, 융합 후 94.9퍼센트.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;스코어 정규화&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;A. Jain, K. Nandakumar, A. Ross, &quot;Score normalization in multimodal biometric systems&quot;, Pattern Recognition 38(12), 2270-2285, 2005.&lt;/li&gt;
&lt;li&gt;&quot;Review on Fusion Algorithms for Multimodal Authentication System&quot;, IJEDR. min-max, tanh, double sigmoid의 세 성질 비교표.&lt;/li&gt;
&lt;li&gt;K. Nandakumar et al., 품질을 반영한 우도비 기반 score-level 융합, 2006.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;동기 검증&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;J. S. Chung, A. Zisserman, &quot;Out of time: automated lip sync in the wild&quot;, ACCV 2016. SyncNet.&lt;/li&gt;
&lt;li&gt;&quot;AV-Lip-Sync+: Leveraging AV-HuBERT to Exploit Multimodal Inconsistency for Deepfake Detection of Frontal Face Videos&quot;, arXiv:2311.02733.&lt;/li&gt;
&lt;li&gt;Y. He, S. Wang, &quot;Towards Highly Generalized Lip-Sync Deepfake Detection via Detailed Audio-Visual Inconsistency Analysis&quot;, PRCV 2025, Springer LNCS 16282, 2026. TISAN.&lt;/li&gt;
&lt;li&gt;Y. J. Ahn, J. Park, S. Park, J. Choi, K. E. Kim, &quot;SyncVSR: Data-Efficient Visual Speech Recognition with End-to-End Crossmodal Audio Token Synchronization&quot;, Interspeech 2024.&lt;/li&gt;
&lt;li&gt;&quot;Audio-Visual Synchronization Analysis for Deepfake Detection: A Comprehensive Review&quot;, IJCT 13(2), 2026-04.&lt;/li&gt;
&lt;li&gt;&quot;Modeling Biomechanical Constraint Violations for Language-Agnostic Lip-Sync Deepfake Detection&quot;, arXiv:2604.16808, 2026-04. 립싱크 탐지의 언어 의존성 및 오디오 사용에 따른 성문 정보 문제.&lt;/li&gt;
&lt;li&gt;M. Bohacek, H. Farid, &quot;Lost in translation: Lip-sync deepfake detection from audio-video mismatch&quot;, CVPRW 2024.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;용어 확인 자료&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;나무위키 멀티모달 모델 문서. Early Fusion, Late Fusion, Joint Fusion 영문 표기 및 융합, 모달리티 한국어 표기.&lt;/li&gt;
&lt;li&gt;IBM 한국어 기술 문서, 「멀티모달 AI란 무엇인가요」. 초기, 중기, 후기 융합 서술.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML+DL/Vision AI</category>
      <category>FMR</category>
      <category>FNMR</category>
      <category>ScoreLevelFusion</category>
      <category>SyncNet</category>
      <category>립싱크탐지</category>
      <category>멀티모달융합</category>
      <category>생체인증</category>
      <category>스코어정규화</category>
      <category>얼굴인식</category>
      <category>캘리브레이션</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1375</guid>
      <comments>https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7#entry1375comment</comments>
      <pubDate>Sat, 8 Aug 2026 16:25:04 +0900</pubDate>
    </item>
    <item>
      <title>난파선 / 최하연</title>
      <link>https://gnidinger.tistory.com/entry/%EB%82%9C%ED%8C%8C%EC%84%A0-%EC%B5%9C%ED%95%98%EC%97%B0</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 꿈마다 포스트잇을&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 붙여놓았어야 했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 알래스카의 얼음집에 녹슨 타자기를 놓고 나온 날 난 알아차렸어야 했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 다는 당신을 처음 만났거나 보았으며, 말하자면 끝도 없이 펼쳐진 호수는 잔잔했다고 끝났지만,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 정오의 햇살 아래에선 왜 습관적으로 이가 시린지 집 안 모든 서랍이 왜 한꺼번에 잠겨 있는지&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 알아차렸어야 했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 비늘 다듬어진 물고기를 따라 바다로 나가던 날&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 회전목마가 있는 그 벌판에 서서 나는 영원히&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 당신을 기다리겠노라고 말했어야 했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 저녁마다 붉어지는 서쪽 하늘의 어느 페이지에 당신을 위한 갈피를 꽂아 넣을 것인지,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 잠든 내 얼굴이 지워지기 시작한 첫날만큼은 기억해두었어야 했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 밑줄 긋기조차 무서운 날이 왔고 나는&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 다시 처음부터&amp;mdash;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 잠들지 말았어야 했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;lt;팅커벨 꽃집&amp;gt;, 문학과지성사&lt;/p&gt;</description>
      <category>한국/-</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1374</guid>
      <comments>https://gnidinger.tistory.com/entry/%EB%82%9C%ED%8C%8C%EC%84%A0-%EC%B5%9C%ED%95%98%EC%97%B0#entry1374comment</comments>
      <pubDate>Sat, 8 Aug 2026 01:21:40 +0900</pubDate>
    </item>
    <item>
      <title>립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)</title>
      <link>https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6</link>
      <description>&lt;div class=&quot;book-toc&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목차&lt;/p&gt;
&lt;ul id=&quot;toc&quot; style=&quot;list-style-type: none;&quot; data-ke-list-type=&quot;none&quot;&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;background-color: #eeeeee; padding: 10px; border-radius: 10px;&quot;&gt;
&lt;p style=&quot;font-size: 18px;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;얼굴인식과 생체인증&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4%EB%8A%94-%EC%99%9C-%EB%B3%84%EA%B0%9C%EC%9D%98-%EB%AC%B8%EC%A0%9C%EC%9D%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스는 왜 별개의 문제인가 | 얼굴인식과 생체인증 (1)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EC%9A%A9%EC%96%B4-%EC%82%AC%EC%A0%84-FAR%EB%B6%80%ED%84%B0-PAD-ISO-30107%EA%B9%8C%EC%A7%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체인증 용어 사전: FAR부터 PAD, ISO 30107까지 | 얼굴인식과 생체인증 (2)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EA%B2%80%EC%B6%9C%EA%B3%BC-%EC%A0%95%EB%A0%AC-%EC%96%BC%EA%B5%B4%EC%9D%84-%EC%B0%BE%EA%B3%A0-%EB%B0%98%EB%93%AF%ED%95%98%EA%B2%8C-%EC%84%B8%EC%9A%B0%EA%B8%B0-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 검출과 정렬: 얼굴을 찾고 반듯하게 세우기 | 얼굴인식과 생체인증 (3)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;들어가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b82TmY/dJMcabZy3hH/VpjLpLtXkEqxnmyy6T3cn1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b82TmY/dJMcabZy3hH/VpjLpLtXkEqxnmyy6T3cn1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b82TmY/dJMcabZy3hH/VpjLpLtXkEqxnmyy6T3cn1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb82TmY%2FdJMcabZy3hH%2FVpjLpLtXkEqxnmyy6T3cn1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부는 입술 움직임을 시퀀스로 표현하고 모델링하는 방법까지 다뤘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 시퀀스를 넣으면 무엇이 나오는가가 이 편의 주제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 입술 영상에서 완전히 다른 두 가지 출력이 나올 수 있는데, 하나는 무엇을 말했는지이고 다른 하나는 누가 말했는 지다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전자를 립리딩 또는 VSR(Visual Speech Recognition)이라 부르고, 후자는 음성 쪽의 화자 검증 구조를 그대로 빌려온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 두 축을 따로 세운 뒤, 비밀단어 방식이 왜 둘을 한 번에 통과시키는 설계인지를 정리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국어가 영어와 다른 문제를 낸다는 점도 별도로 다루는데, 국내 서비스를 만든다면 이 차이가 곧 설계 조건이 되기 때문이다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;하나의 입술 영상에 두 개의 질문이 들어 있다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;무엇을 말했는가와 누가 말했는가는 다른 태스크다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;무엇을 말했는가와 누가 말했는가는 다른 태스크다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cLDxcK/dJMcag0IJjY/zUB9zSz7JTgvV3hNKulXP0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cLDxcK/dJMcag0IJjY/zUB9zSz7JTgvV3hNKulXP0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cLDxcK/dJMcag0IJjY/zUB9zSz7JTgvV3hNKulXP0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcLDxcK%2FdJMcag0IJjY%2FzUB9zSz7JTgvV3hNKulXP0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;무엇을 말했는가와 누가 말했는가는 다른 태스크다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩은 입술 영상을 받아 텍스트를 내놓는 태스크다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력이 글자나 단어의 시퀀스이므로 음성 인식과 같은 형태의 문제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화자 인증은 같은 영상을 받아 등록된 사용자와 동일인인지를 판정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력이 텍스트가 아니라 하나의 유사도 점수이므로 4부에서 다룬 얼굴인식과 같은 형태다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 태스크는 입력이 같지만 목표도 다르고 성능을 재는 지표도 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩은 WER로, 화자 인증은 EER과 minDCF로 측정한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;두 정보가 실제로 한 임베딩 안에 섞여 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 태스크가 개념적으로 분리된다고 해서 신호가 분리되는 것은 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음성 쪽에서 화자 임베딩 모델인 ECAPA-TDNN의 출력을 프로빙 한 실험이 이를 보여준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화자 신원만 담도록 학습한 벡터에서 단어 수준의 내용 정보가 91.4퍼센트 정확도로 복원되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세션 단위의 채널 정보는 85.6퍼센트, 감정 정보는 53.7퍼센트가 함께 남아 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화자 임베딩이 화자 정보만 담고 있다는 통념이 실측으로 반박된 사례다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 두 축은 개념상 나뉘지만 벡터 안에서는 얽혀 있으므로, 분리는 설계로 만들어야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;모델의 층마다 두 정보의 비중이 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시청각 사전학습 모델인 AV-HuBERT를 층별로 분석한 연구들이 흥미로운 패턴을 보고했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 모델은 발화 내용을 맞히도록 학습되었는데도 앞쪽 층에서 풍부한 화자 정보를 학습한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해석은 뒤쪽 층에서 음소 정보를 추론하기 위해 앞쪽 층에서 화자 정보를 먼저 정리해 둔다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화자마다 조음 방식이 다르므로 그 차이를 먼저 파악해야 발화 내용을 안정적으로 뽑아낼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결과적으로 하나의 백본에서 층 깊이에 따라 두 정보의 비중이 갈린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 성질 덕분에 한 모델의 서로 다른 층에서 두 태스크를 함께 뽑아내는 설계가 가능해진다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;인증이 성립하려면 두 질문에 모두 답해야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;인증이 성립하려면 두 질문에 모두 답해야 한다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WUPyh/dJMcabynisb/ss3mYEIy6sqnu8pYiy7RK1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WUPyh/dJMcabynisb/ss3mYEIy6sqnu8pYiy7RK1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WUPyh/dJMcabynisb/ss3mYEIy6sqnu8pYiy7RK1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWUPyh%2FdJMcabynisb%2Fss3mYEIy6sqnu8pYiy7RK1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;인증이 성립하려면 두 질문에 모두 답해야 한다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴인식만 쓰는 시스템은 누구인가에만 답하고 진짜인가에는 답하지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1부에서 정리한 대로 라이브니스가 별도 경로로 필요한 이유가 여기에 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;발화를 요구하는 방식은 두 질문에 한 번에 답할 수 있다는 점이 특징이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지정된 단어를 말하게 하면 그 단어를 알고 있어야 하므로 지식 기반 검증이 성립한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 말하는 방식이 등록된 사람과 같아야 하므로 생체 기반 검증도 함께 성립한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 조건이 모두 통과해야 인증이 완료되는 구조이며, 이 설계는 7장에서 자세히 다룬다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;이 편은 두 축을 따로 세운 뒤 다시 합친다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2장부터 5장까지는 립리딩, 즉 무엇을 말했는가를 다룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시각 정보가 애초에 부족하다는 점, 프레임과 글자의 길이를 맞추는 방법, 한국어의 특수성, 모델 계보 순서로 진행한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6장은 화자 인증, 즉 누가 말했는가를 다루며 음성 화자 검증의 구조를 그대로 가져온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7장에서 두 축을 합쳐 비밀단어 방식이 어떤 설계인지 정리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지표는 2부에서 정의한 것을 그대로 쓰되, 화자 검증 쪽 지표인 minDCF는 이 편에서 새로 정의한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이프라인 위치는 1부의 도식에서 특징 추출과 매칭 블록에 해당한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;립리딩은 시각 정보가 원래 부족한 태스크다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;viseme와 음소는 다대일로 대응한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;립리딩은 시각 정보가 원래 부족한 태스크다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czbpbS/dJMcaasM8zg/2xkVYmmtBLKxJkOVcxiink/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czbpbS/dJMcaasM8zg/2xkVYmmtBLKxJkOVcxiink/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czbpbS/dJMcaasM8zg/2xkVYmmtBLKxJkOVcxiink/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczbpbS%2FdJMcaasM8zg%2F2xkVYmmtBLKxJkOVcxiink%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;립리딩은 시각 정보가 원래 부족한 태스크다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음소는 말의 의미를 구별하는 최소 소리 단위이며, 한국어의 ㄱ이나 영어의 p 같은 것이 여기 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;viseme은 그 음소를 발음할 때 겉으로 드러나는 얼굴과 입의 모양을 가리킨다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마이크로소프트 문서는 이를 음소의 시각적 설명으로 정의하며, 각 viseme이 특정 음소 집합에 대응한다고 서술한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 집합이라는 표현이 핵심인데, 하나의 viseme에 여러 음소가 몰려 들어가기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Fisher는 1968년 연구에서 영어 초성 자음 음소 23개 중 사람이 입만 보고 흔히 혼동하는 것들을 5개 범주로 묶었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;23개가 5개로 줄어든다는 것은 소리로는 구별되는 정보가 시각에서는 사라진다는 뜻이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;다른 음소가 같은 입 모양으로 보인다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장&amp;nbsp;자주&amp;nbsp;인용되는&amp;nbsp;예가&amp;nbsp;영어의&amp;nbsp;p,&amp;nbsp;b,&amp;nbsp;m&amp;nbsp;세&amp;nbsp;음소다.&lt;br /&gt;&lt;br /&gt;셋&amp;nbsp;다&amp;nbsp;두&amp;nbsp;입술을&amp;nbsp;붙였다가&amp;nbsp;떼면서&amp;nbsp;내는&amp;nbsp;소리이므로&amp;nbsp;입&amp;nbsp;모양이&amp;nbsp;사실상&amp;nbsp;같다.&lt;br /&gt;&lt;br /&gt;차이는&amp;nbsp;성대가&amp;nbsp;떨리는지와&amp;nbsp;코로&amp;nbsp;공기가&amp;nbsp;빠지는지에&amp;nbsp;있으며&amp;nbsp;둘&amp;nbsp;다&amp;nbsp;밖에서&amp;nbsp;보이지&amp;nbsp;않는다.&lt;br /&gt;&lt;br /&gt;한국어는&amp;nbsp;상황이&amp;nbsp;더&amp;nbsp;나쁜데,&amp;nbsp;두&amp;nbsp;입술로&amp;nbsp;내는&amp;nbsp;소리가&amp;nbsp;ㅂ,&amp;nbsp;ㅃ,&amp;nbsp;ㅍ,&amp;nbsp;ㅁ&amp;nbsp;네&amp;nbsp;개이기&amp;nbsp;때문이다.&lt;br /&gt;&lt;br /&gt;앞의&amp;nbsp;셋은&amp;nbsp;각각&amp;nbsp;평음,&amp;nbsp;경음,&amp;nbsp;격음이라&amp;nbsp;불리며&amp;nbsp;조음&amp;nbsp;위치가&amp;nbsp;같고&amp;nbsp;기식의&amp;nbsp;세기와&amp;nbsp;성문의&amp;nbsp;긴장도로만&amp;nbsp;갈린다.&lt;br /&gt;&lt;br /&gt;불과&amp;nbsp;뿔과&amp;nbsp;풀이&amp;nbsp;서로&amp;nbsp;다른&amp;nbsp;단어인&amp;nbsp;것이&amp;nbsp;이&amp;nbsp;셋의&amp;nbsp;대립&amp;nbsp;덕분이다.&lt;br /&gt;&lt;br /&gt;영어를&amp;nbsp;비롯한&amp;nbsp;다수&amp;nbsp;언어가&amp;nbsp;유성과&amp;nbsp;무성의&amp;nbsp;두&amp;nbsp;갈래로&amp;nbsp;나뉘는&amp;nbsp;것과&amp;nbsp;달리&amp;nbsp;한국어는&amp;nbsp;무성음&amp;nbsp;안에서&amp;nbsp;다시&amp;nbsp;셋으로&amp;nbsp;나뉜다.&lt;br /&gt;&lt;br /&gt;문제는&amp;nbsp;기식의&amp;nbsp;세기와&amp;nbsp;성문의&amp;nbsp;긴장도가&amp;nbsp;모두&amp;nbsp;입술&amp;nbsp;안쪽에서&amp;nbsp;결정된다는&amp;nbsp;점이다.&lt;br /&gt;&lt;br /&gt;결과적으로&amp;nbsp;영어&amp;nbsp;화자가&amp;nbsp;셋을&amp;nbsp;구분하지&amp;nbsp;못하는&amp;nbsp;자리에서&amp;nbsp;한국어&amp;nbsp;화자는&amp;nbsp;넷을&amp;nbsp;구분하지&amp;nbsp;못한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;동시 조음 때문에 같은 음소도 입 모양이 달라진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;동시 조음 때문에 같은 음소도 입 모양이 달라진다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DmnKR/dJMcaasM8Bf/YevVs7iJdEy4ZKRtmnaEaK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DmnKR/dJMcaasM8Bf/YevVs7iJdEy4ZKRtmnaEaK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DmnKR/dJMcaasM8Bf/YevVs7iJdEy4ZKRtmnaEaK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDmnKR%2FdJMcaasM8Bf%2FYevVs7iJdEy4ZKRtmnaEaK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;동시 조음 때문에 같은 음소도 입 모양이 달라진다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음소와&amp;nbsp;viseme의&amp;nbsp;대응이&amp;nbsp;다대일인&amp;nbsp;것만으로도&amp;nbsp;문제인데,&amp;nbsp;그&amp;nbsp;대응&amp;nbsp;자체가&amp;nbsp;고정되어&amp;nbsp;있지도&amp;nbsp;않다.&lt;br /&gt;&lt;br /&gt;앞뒤에&amp;nbsp;어떤&amp;nbsp;소리가&amp;nbsp;오는지에&amp;nbsp;따라&amp;nbsp;입&amp;nbsp;모양이&amp;nbsp;미리&amp;nbsp;변형되는&amp;nbsp;현상을&amp;nbsp;동시&amp;nbsp;조음이라&amp;nbsp;한다.&lt;br /&gt;&lt;br /&gt;비,&amp;nbsp;부,&amp;nbsp;배는&amp;nbsp;모두&amp;nbsp;초성이&amp;nbsp;ㅂ이지만&amp;nbsp;입술을&amp;nbsp;붙이는&amp;nbsp;순간의&amp;nbsp;모양이&amp;nbsp;서로&amp;nbsp;다르다.&lt;br /&gt;&lt;br /&gt;부는&amp;nbsp;뒤따르는&amp;nbsp;ㅜ의&amp;nbsp;영향으로&amp;nbsp;입술이&amp;nbsp;이미&amp;nbsp;둥글게&amp;nbsp;오므라진&amp;nbsp;채&amp;nbsp;닫히고,&amp;nbsp;비는&amp;nbsp;옆으로&amp;nbsp;벌어진&amp;nbsp;채&amp;nbsp;닫힌다.&lt;br /&gt;&lt;br /&gt;즉&amp;nbsp;같은&amp;nbsp;음소가&amp;nbsp;문맥에&amp;nbsp;따라&amp;nbsp;여러&amp;nbsp;viseme으로&amp;nbsp;나타나므로&amp;nbsp;대응&amp;nbsp;관계는&amp;nbsp;다대다에&amp;nbsp;가까워진다.&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;때문에&amp;nbsp;프레임&amp;nbsp;하나를&amp;nbsp;보고&amp;nbsp;음소를&amp;nbsp;맞히는&amp;nbsp;방식이&amp;nbsp;성립하지&amp;nbsp;않고&amp;nbsp;문맥을&amp;nbsp;함께&amp;nbsp;봐야&amp;nbsp;한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;정보 부족이 성능의 한계선을 만든다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩이 어려운 이유는 모델이 부족해서가 아니라 입력에 정보가 없기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사람도 마찬가지여서, LipNet 연구가 측정한 청각장애인 립리더 세 명의 WER은 각각 57.3퍼센트, 50.4퍼센트, 35.5퍼센트였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;통제된 데이터셋에서 사람이 절반 가까이 틀린다는 뜻이며, 이는 태스크 자체의 난이도를 보여준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부에서 확인한 대로 최신 모델도 LRS3 기준 영상만으로는 WER 25퍼센트대에 머문다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 조건에서 음성 모델은 0.7퍼센트이므로 격차가 30배를 넘는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델 개선으로 좁힐 수 있는 폭과 입력의 한계에서 오는 폭을 구분해서 봐야 한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;프레임과 글자의 길이가 안 맞는 문제를 CTC가 푼다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;프레임 수와 글자 수는 일치하지 않는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;프레임 수와 글자 수는 일치하지 않는다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cdOiTp/dJMcaasM8CZ/azJKkjYWrO3C5LFQ43hkeK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cdOiTp/dJMcaasM8CZ/azJKkjYWrO3C5LFQ43hkeK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cdOiTp/dJMcaasM8CZ/azJKkjYWrO3C5LFQ43hkeK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcdOiTp%2FdJMcaasM8CZ%2FazJKkjYWrO3C5LFQ43hkeK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;프레임 수와 글자 수는 일치하지 않는다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초당 25 프레임으로 2초짜리 발화를 찍으면 입력은 50 프레임이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 발화의 내용이 안녕하세요라면 출력은 다섯 글자다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;50개의 입력에서 5개의 출력을 만들어야 하므로 길이가 열 배 차이 난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;게다가 이 비율은 발화마다 다르고 같은 사람도 말하는 속도에 따라 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적인 분류 모델은 입력 하나에 출력 하나를 대응시키므로 이 구조를 다루지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가변 길이 입력을 가변 길이 출력으로 바꾸는 별도의 장치가 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;어느 프레임이 어느 글자인지에 대한 정답이 없다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 단순한 해법은 각 프레임에 정답 글자를 붙여두고 학습하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러려면 안녕의 첫 글자가 3번 프레임부터 11번 프레임 까지라는 식의 정보가 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 정보를 사람이 일일이 표시하는 작업은 대규모 데이터에서 현실적이지 않다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 글자 사이의 경계가 물리적으로 명확하지 않아 사람마다 다르게 표시하게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 학습 데이터에는 영상과 전사된 텍스트만 있고 둘을 짝짓는 정보는 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 짝짓기까지 모델이 스스로 학습해야 한다는 것이 문제의 핵심이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;blank를 끼워 넣고 가능한 모든 경우의 확률을 더한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CTC(Connectionist Temporal Classification)는 이 문제를 해결하는 손실 함수다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 출력 후보에 blank라는 특수 기호를 추가하는데, 이는 지금 아무 글자도 내놓지 않는다는 표시다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 프레임은 글자 하나를 내놓거나 blank를 내놓으며, 같은 글자가 여러 프레임에 걸쳐 반복될 수도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결과에서 반복을 합치고 blank를 지우면 최종 텍스트가 나오는데, 같은 텍스트를 만드는 경우의 수는 매우 많다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CTC는 그중 하나를 고르지 않고 정답 텍스트를 만드는 모든 경우의 확률을 더해서 그것을 최대화한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;경우의 수가 지수적으로 많으므로 전방 후방 알고리즘이라는 동적 계획법으로 효율적으로 계산한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;CTC는 출력 사이의 독립을 가정한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CTC의 계산이 간단해지는 이유는 각 프레임의 예측이 서로 독립이라고 가정하기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 경로의 확률이 각 프레임 확률의 단순 곱으로 계산되는 것도 이 가정 덕분이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 실제 언어에서는 앞 글자가 다음 글자를 강하게 제약한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국어에서 초성 ㅎ 다음에 올 수 있는 중성은 정해져 있고, 단어 사전도 조합을 제한한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CTC는 이런 제약을 스스로 학습하지 못하므로 출력이 문법적으로 어색해지는 경우가 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 실제 시스템은 외부 언어 모델을 붙여 디코딩 단계에서 이 제약을 반영한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;어텐션 디코더와 함께 쓰는 하이브리드 구성&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;어텐션 디코더와 함께 쓰는 하이브리드 구성.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/y2Xf9/dJMcadiLEe3/NSkkCPUApuO3G63QMFxqk1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/y2Xf9/dJMcadiLEe3/NSkkCPUApuO3G63QMFxqk1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/y2Xf9/dJMcadiLEe3/NSkkCPUApuO3G63QMFxqk1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fy2Xf9%2FdJMcadiLEe3%2FNSkkCPUApuO3G63QMFxqk1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;어텐션 디코더와 함께 쓰는 하이브리드 구성.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CTC의 대안은 어텐션 기반 디코더를 쓰는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;디코더는 이전에 출력한 글자를 보면서 다음 글자를 결정하므로 출력 사이의 의존 관계를 다룰 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 입력과 출력의 순서가 어긋나도 손실이 발생하지 않아 학습 초반에 수렴이 불안정하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩은 입력과 출력의 순서가 반드시 일치하는 태스크이므로 이 자유도가 오히려 부담이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 인코더 위에 CTC 손실을 함께 걸어 순서를 강제하고, 디코더가 언어적 제약을 담당하게 하는 구성이 널리 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AV-HuBERT의 미세조정 단계에서도 CTC와 시퀀스 대 시퀀스 디코더를 선택적으로 얹는다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;한국어는 영어와 다른 문제를 낸다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;한글은 자모를 음절 블록으로 묶어 표기한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;한국어는 영어와 다른 문제를 낸다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bUqYKS/dJMcai5iDGP/0KhULlzAQ44u3W3n10TLYK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bUqYKS/dJMcai5iDGP/0KhULlzAQ44u3W3n10TLYK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bUqYKS/dJMcai5iDGP/0KhULlzAQ44u3W3n10TLYK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbUqYKS%2FdJMcai5iDGP%2F0KhULlzAQ44u3W3n10TLYK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;한국어는 영어와 다른 문제를 낸다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영어는 글자가 한 줄로 이어지므로 출력 단위가 자연스럽게 알파벳이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한글은 초성과 중성과 종성을 하나의 네모 안에 모아 쓰는 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국어 음성 인식 연구는 이 음절 블록이 51개의 자모 단위로 구성된다고 정리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 모델의 출력 단위를 자모로 둘 수도 있고 음절 블록으로 둘 수도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자모를 쓰면 출력 후보가 51개 안팎으로 적고, 음절을 쓰면 수천 개가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 선택은 CTC의 출력 후보 집합을 무엇으로 둘 것인가와 정확히 같은 문제다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;자모 단위로 갈지 음절 단위로 갈지 정해야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 후보가 적으면 각 후보의 학습 데이터가 많아지므로 개별 예측은 안정적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 하나의 글자를 만들려면 두세 번의 예측이 모두 맞아야 하므로 오류가 누적된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 후보가 많으면 예측 한 번에 글자 하나가 나오지만 희귀 음절의 학습 데이터가 부족해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국어 음성 인식에서 모델링 단위를 비교한 선행 연구는 대부분의 경우 음절 기반이 자모 기반보다 낫다고 보고한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반면 2024년 발표된 한국어 립리딩 연구는 문장 단위 인식에 자모 기반 트랜스포머를 채택했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 정답이 정해지지 않은 설계 선택이며, 음성에서의 결론을 영상에 그대로 옮길 수 있는지는 검증이 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;받침 유무가 시퀀스에 불규칙을 만든다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국어 음절은 받침이 있을 수도 있고 없을 수도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자모 단위로 출력하면 어떤 음절은 두 개의 기호로, 어떤 음절은 세 개의 기호로 표현된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 불규칙성 때문에 언어 모델이 음절 경계를 학습하기 어려워진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국어 음성 인식 연구는 받침이 없는 음절에 특수 토큰을 끼워 넣어 항상 세 기호가 되도록 만드는 방식을 제안했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입력 패턴이 규칙적으로 바뀌면서 언어 모델이 언어적 특성을 더 잘 학습했고 WER이 개선되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영어에는 없는 문제이므로 영어 파이프라인을 그대로 가져오면 이 부분에서 손해를 본다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;한국어 viseme 집합은 아직 합의된 표준이 없다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;한국어 viseme 집합은 아직 합의된 표준이 없다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IyveJ/dJMcahZEVCH/w2rVDYE41iH7aQAsSrnzoK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IyveJ/dJMcahZEVCH/w2rVDYE41iH7aQAsSrnzoK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IyveJ/dJMcahZEVCH/w2rVDYE41iH7aQAsSrnzoK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIyveJ%2FdJMcahZEVCH%2Fw2rVDYE41iH7aQAsSrnzoK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;한국어 viseme 집합은 아직 합의된 표준이 없다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영어는 Fisher의 분류를 비롯해 viseme 집합에 대한 오랜 논의가 쌓여 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국어는 모음을 기준으로 10개의 viseme을 정의한 시도 같은 개별 연구가 있으나 표준으로 자리 잡은 것은 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2장에서 본 두 입술소리 네 개의 문제에 더해, 종성은 입을 닫는 동작으로 끝나는 경우가 많아 시각 정보가 특히 빈약하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 종성은 입을 닫는 동작으로 끝나는 경우가 많아 시각 정보가 특히 빈약하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;viseme 집합이 정해지지 않으면 모델이 무엇을 구별해야 하고 무엇은 포기해야 하는지 설계 기준이 없어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국어 립리딩의 성능 상한을 논하려면 이 작업이 선행되어야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;공개 데이터셋은 OLKAVS와 KMSAV 정도다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;OLKAVS는 1,107명의 한국어 화자로부터 수집한 1,150시간 규모의 시청각 음성 데이터셋이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스튜디오에서 아홉 개의 시점으로 촬영했고 여러 잡음 조건을 포함하며, 공개된 시청각 데이터셋 중 최대 규모다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시청각 음성 인식과 립리딩 두 태스크의 사전학습 모델도 함께 제공하며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다중 시점 학습이 정면 시점만 쓴 학습보다 낫다는 결과를 보고했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;KMSAV는 ETRI가 구축한 다화자 자유발화 시청각 데이터셋이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2024년에는 뉴스와 다큐멘터리와 드라마 방송에서 12만 발화 이상을 수집한 문장 단위 한국어 립리딩 데이터셋도 공개되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영어의 LRS3가 433시간 규모임을 감안하면 데이터 자체는 부족하지 않으나 활용 사례가 아직 적다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;방송 자유발화는 낭독체 데이터셋보다 훨씬 어렵다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;KMSAV 논문은 자체 데이터셋의 얼굴 랜드마크 검출 실패율이 LRS3보다 높다고 밝힌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;검출에 성공한 프레임의 각도 분포는 비슷했으나 실패 자체가 잦다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 이 데이터셋의 발화 방식이 낭독체가 아니라 자유발화이므로 오류율이 상당히 높을 것으로 예상한다고 서술한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LRS3는 최신 시청각 모델에서 WER이 2퍼센트 미만인데, 같은 기술을 자유발화에 적용하면 그 수준이 나오지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;말을 더듬거나 문장을 중간에 바꾸거나 다른 사람과 겹쳐 말하는 상황이 실제 발화에서는 흔하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증 시나리오는 지정된 단어를 또박또박 말하는 조건이므로 이 문제에서는 상대적으로 유리하다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;립리딩 계보는 라벨 부족과 싸워온 역사다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;문장 단위 학습을 처음 보인 LipNet&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;문장 단위 학습을 처음 보인 LipNet.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b0rBas/dJMcai5iDHW/eJNnw8MbvBAzlyu0qHjRB0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b0rBas/dJMcai5iDHW/eJNnw8MbvBAzlyu0qHjRB0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b0rBas/dJMcai5iDHW/eJNnw8MbvBAzlyu0qHjRB0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb0rBas%2FdJMcai5iDHW%2FeJNnw8MbvBAzlyu0qHjRB0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;문장 단위 학습을 처음 보인 LipNet.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2016년 발표된 LipNet은 영상에서 문장을 바로 출력하는 첫 종단 간 모델이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시공간 합성곱과 순환 신경망과 CTC를 결합했고 글자 단위로 동작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GRID 데이터셋의 화자 중복 분할 조건에서 문장 단위 정확도 95.2퍼센트를 기록했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전 최고 성능이 단어 단위 86.4퍼센트였으므로 문제 자체의 수준이 한 단계 올라간 결과다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습에 없던 화자로 시험한 조건에서도 WER 11.4퍼센트로, 2D 합성곱 기준선의 26.7퍼센트보다 크게 나았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시공간 합성곱으로 특징을 뽑는 것이 프레임별 공간 특징을 모으는 것보다 낫다는 점을 수치로 보인 셈이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;통제된 환경에서 in the wild로 넘어간 단계&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LipNet의 결과가 인상적이었던 만큼 GRID 데이터셋의 한계도 함께 지적되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 데이터셋은 문장 구조가 정해진 틀을 따르고 어휘도 제한되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;명령 다음에 색깔, 전치사, 글자, 숫자, 부사가 정해진 순서로 오는 형식이라 조합의 수가 적다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델이 언어 구조를 외워서 성능을 내는 부분이 있으므로 실제 대화에는 그대로 적용되지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후 연구는 방송 영상에서 수집한 LRW, LRS2, LRS3 같은 데이터셋으로 옮겨갔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어휘가 열려 있고 촬영 조건이 통제되지 않은 조건을 in the wild라 부르며, 여기서 성능이 크게 떨어졌다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;라벨 없이 사전학습하는 AV-HuBERT&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;in the wild 데이터셋으로 옮기면서 전사 라벨의 부족이 병목이 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AV-HuBERT는 라벨 없는 시청각 데이터로 먼저 사전학습하는 방식으로 이 문제에 접근했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입력의 일부를 가린 뒤 그 구간의 군집 번호를 맞히도록 학습하며, 이 군집은 반복적으로 정제된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;구조는 오디오 인코더와 3D 합성곱 기반 ResNet-18 비디오 인코더, 융합 모듈, 트랜스포머로 구성된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습 중 한쪽 모달리티만 넣는 modality dropout이 핵심 장치인데, 이것이 영상만 있는 조건에서도 동작하게 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LRS3의 433시간 중 라벨이 30시간만 있어도 WER 32.5퍼센트를 달성해 라벨 효율을 크게 끌어올렸다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;기계가 만든 라벨로 학습 데이터를 불린 Auto-AVSR&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Auto-AVSR은 같은 문제를 반대 방향에서 풀었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사전학습된 음성 인식 모델로 라벨 없는 영상의 음성을 자동 전사해 학습 데이터를 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사람이 붙인 라벨이 아니므로 오류가 섞이지만 규모를 크게 늘릴 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩에서는 음성이 함께 녹음되어 있는 경우가 많으므로 이 방식이 특히 잘 맞는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부에서 언급한 대로 이 계열의 영상 전용 모델은 파라미터가 250.4M 규모다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AV-HuBERT가 라벨 없이 표현을 배우는 접근이라면 Auto-AVSR은 라벨을 기계로 만들어내는 접근이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;2026년 시점에 제기된 한계&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;2026년 시점에 제기된 한계.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cN5p4J/dJMcabkXxax/N3VDAb9G0SO8x0Kot7P0sk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cN5p4J/dJMcabkXxax/N3VDAb9G0SO8x0Kot7P0sk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cN5p4J/dJMcabkXxax/N3VDAb9G0SO8x0Kot7P0sk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcN5p4J%2FdJMcabkXxax%2FN3VDAb9G0SO8x0Kot7P0sk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;2026년 시점에 제기된 한계.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AV-HuBERT가 인간의 시청각 음성 지각을 설명하는 모델이라는 해석에 대한 반론이 2025년과 2026년에 걸쳐 나왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 모델이 결정론적인 범주 편향을 보이며, 입술 움직임과 발성 사이의 자연스러운 시간 비동기에 대한 민감도가 제한적이라는 지적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공학적으로는 강력한 표현 모델이지만 생물학적 지각의 기전 모델로는 불완전하다는 정리다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시간 비동기 민감도 문제는 인증 관점에서 특히 중요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입술과 음성이 어긋나 있는지를 판별하는 능력이 딥페이크 탐지의 핵심 단서이기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 논의는 7부의 융합과 동기성 검증에서 다시 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;화자 인증은 음성 쪽 구조를 그대로 빌려온다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;등록 과정과 인증 과정으로 나뉜다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;등록 과정과 인증 과정으로 나뉜다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XMQSY/dJMcaaM4TyN/rwtBbnk6iCRK4HQ8YrvbCK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XMQSY/dJMcaaM4TyN/rwtBbnk6iCRK4HQ8YrvbCK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XMQSY/dJMcaaM4TyN/rwtBbnk6iCRK4HQ8YrvbCK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXMQSY%2FdJMcaaM4TyN%2FrwtBbnk6iCRK4HQ8YrvbCK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;등록 과정과 인증 과정으로 나뉜다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화자 인증 시스템은 등록 과정과 인증 과정의 두 단계로 구성된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록 과정에서는 사용자의 발화로부터 특징을 뽑아 저장하며, 이를 화자 임베딩 추출이라 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증 과정에서는 새로 들어온 발화의 임베딩을 저장된 것과 비교해 동일인 여부를 판정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 다룬 얼굴인식의 등록과 인증 구조와 완전히 같은 형태다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;과거에는 i-vector나 x-vector 같은 방식으로 특징을 뽑았고 지금은 신경망 임베딩이 표준이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입술 기반 화자 인증은 이 구조에서 입력만 음성에서 영상으로 바꾼 것이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;발화 임베딩을 뽑아 코사인 유사도로 비교한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;발화 하나에서 뽑은 임베딩은 고정 길이의 실수 벡터다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;발화 길이가 제각각이어도 벡터의 차원은 같아야 하므로 시간축을 요약하는 연산이 들어간다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;풀링 방식이 여러 가지인데, 각 프레임의 중요도를 학습해 가중 평균을 내는 방식이 널리 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5부에서 본 대로 단순 평균은 화자 정보를 지울 수 있으므로 이 선택이 중요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임베딩을 길이 1로 정규화한 뒤 코사인 유사도로 점수를 매기는 것이 현재의 표준 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내 기업이 제출한 화자 인식 대회 시스템도 512차원 임베딩을 길이 정규화해 사용했다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;문장 종속과 문장 독립의 차이&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;문장 종속과 문장 독립의 차이.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cqNkEc/dJMcaaM4Tza/l5vDm4D2pkWrI1qF3MfuGK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cqNkEc/dJMcaaM4Tza/l5vDm4D2pkWrI1qF3MfuGK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cqNkEc/dJMcaaM4Tza/l5vDm4D2pkWrI1qF3MfuGK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcqNkEc%2FdJMcaaM4Tza%2Fl5vDm4D2pkWrI1qF3MfuGK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;문장 종속과 문장 독립의 차이.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화자 인증은 등록과 인증에 쓰는 발화 내용을 고정하는지에 따라 두 갈래로 나뉜다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특정 문장을 읽게 해서 특징을 뽑는 방식을 문장 종속이라 하고 영문으로는 text-dependent라 쓴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임의의 발화에서 특징을 뽑는 방식은 문장 독립이며 text-independent에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문장 종속은 비교 대상이 되는 발화 내용이 같으므로 발화 내용에서 오는 변동이 사라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 조건에서 문장 독립보다 짧은 발화로도 높은 성능을 낼 수 있다는 것이 장점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;호출어 인식처럼 항상 같은 말을 하는 서비스가 문장 종속 방식의 대표적인 적용처다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;등록 발화를 몇 개 받을 것인가&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록을 한 번만 받으면 그 시점의 컨디션이 임베딩에 그대로 반영된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목이 잠겼거나 조명이 나빴던 조건이 기준이 되면 이후 인증에서 거부가 잦아진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여러 번 받아 평균을 내면 이런 변동이 상쇄되어 더 안정적인 기준이 만들어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 다룬 얼굴 등록의 다중 촬영과 같은 원리다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 등록 횟수가 늘면 사용자가 이탈하므로 실무에서는 세 번에서 다섯 번 정도로 타협한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;품질이 낮은 발화가 섞이면 평균이 오염되므로 등록 단계의 품질 검사가 함께 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;코호트를 이용해 점수 분포를 맞추는 AS-Norm&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 모델이라도 사용자마다 유사도 점수의 분포가 다르게 형성된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목소리나 입 모양이 평범한 사람은 다른 사람과의 점수도 전반적으로 높게 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 사용자에게 전체 공통 임계값을 적용하면 오수락이 늘어난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AS-Norm은 이 편차를 보정하는 방식으로, 입력 화자와 비슷한 타인들의 점수를 이용해 기준을 다시 맞춘다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 쓰는 타인 집단을 비교 대상 화자 집합(cohort)이라 하며, 실무에서는 코호트라 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내 기업의 대회 제출 시스템은 VoxCeleb2 개발 셋의 5,994명을 코호트로 두고 상위 100명으로 점수를 보정했다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;EER만으로 부족해 minDCF를 함께 본다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 정의한 EER은 두 종류의 오류가 같아지는 지점의 오류율이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;값 하나로 요약되어 비교가 편하지만 두 오류를 같은 비중으로 취급한다는 전제가 깔려 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보안 시스템에서는 타인을 본인으로 통과시키는 오류가 그 반대보다 훨씬 비싸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;minDCF는 두 오류에 서로 다른 비용을 매기고 사전 확률까지 반영해 계산한 최소 비용이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화자 인증 대회와 논문은 EER과 minDCF를 함께 보고하는 것이 관례다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2025년 발표된 학습 가능한 AS-Norm 연구도 두 지표에서 각각 4.11퍼센트와 10.62퍼센트의 상대 개선을 보고했다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;비밀단어 방식은 두 축을 한 번에 통과시키는 설계다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;지정된 단어를 발화하게 하는 것은 문장 종속 설계다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;지정된 단어를 발화하게 하는 것은 문장 종속 설계다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/RIIQO/dJMcaaM4Tz2/DlzfaTJKkw1zMwgPAkT091/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/RIIQO/dJMcaaM4Tz2/DlzfaTJKkw1zMwgPAkT091/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/RIIQO/dJMcaaM4Tz2/DlzfaTJKkw1zMwgPAkT091/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRIIQO%2FdJMcaaM4Tz2%2FDlzfaTJKkw1zMwgPAkT091%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;지정된 단어를 발화하게 하는 것은 문장 종속 설계다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용자가 미리 정한 단어를 발화하도록 요구하는 방식이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록과 인증에서 같은 단어를 쓰므로 앞서 정리한 문장 종속에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 발상의 원류는 홍콩침례대에서 제안한 lip password이며 2015년 미국 특허로 등록되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소리를 내지 않고 입만 움직여도 동작한다는 점이 이 방식의 특징으로 언급된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공공장소에서 암호를 소리 내어 말하지 않아도 되므로 음성 기반 방식의 약점을 피한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입술 모양만으로 인증하는 상용 시스템도 이 구조를 따른다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;문장 종속이 성능에 유리한 이유&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문장 독립 방식은 무슨 말을 하든 같은 사람으로 판정해야 하므로 발화 내용의 영향을 지워야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1장에서 본 대로 임베딩에는 내용 정보가 강하게 남으므로 이 분리는 쉽지 않다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문장 종속에서는 등록과 인증의 발화 내용이 같으므로 이 변동 자체가 발생하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델은 같은 단어를 말하는 방식의 차이에만 집중하면 되므로 학습 문제가 단순해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 이유로 짧은 발화에서도 안정적인 성능이 나온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증에 3초 이내가 요구되는 실서비스 조건에서 이 차이는 결정적이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;단어가 유출되면 무엇이 남는가&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문장 종속 방식은 단어를 알고 있어야 통과할 수 있다는 점에서 지식 기반 요소를 포함한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 이 단어는 비밀번호와 달리 촬영으로 관찰될 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자가 사용자의 인증 장면을 촬영하면 립리딩으로 단어를 복원할 시도를 할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 2장에서 본 대로 립리딩의 성능이 아직 낮으므로 이 복원이 쉽지는 않다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단어가 유출되더라도 말하는 방식이라는 생체 요소가 남으므로 시스템이 통째로 무너지지는 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;역으로 말하면 단어 유출 시의 안전성이 전적으로 화자 인증 성능에 달려 있다는 뜻이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;두 축이 함께 통과해야 인증이 성립한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;두 축이 함께 통과해야 인증이 성립한다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QX3C3/dJMcag0IJqH/r6vdDlo1HtLKzetx3j4Es0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QX3C3/dJMcag0IJqH/r6vdDlo1HtLKzetx3j4Es0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QX3C3/dJMcag0IJqH/r6vdDlo1HtLKzetx3j4Es0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQX3C3%2FdJMcag0IJqH%2Fr6vdDlo1HtLKzetx3j4Es0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;두 축이 함께 통과해야 인증이 성립한다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 설계에서 시스템은 두 가지를 각각 판정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩 계열 모델이 등록된 단어를 말했는지를 확인하고, 화자 인증 모델이 등록된 사람인지를 확인한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 결과가 모두 통과해야 최종 허용이 나오는 구조이며, 1부에서 정리한 논리곱 형태와 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원 논문의 정의도 사용자가 틀린 암호를 말한 경우와 공격자가 맞는 암호를 말한 경우를 모두 거부하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 판정기를 별도로 학습해 결합하는 구성과 하나의 모델에서 두 출력을 뽑는 구성이 모두 시도되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;후자의 경우 1장에서 본 층별 정보 분포를 활용해 서로 다른 층에서 두 출력을 뽑는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;틀린 단어를 말한 본인과 맞는 단어를 말한 타인&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 축을 결합하면 거부되는 경우가 두 종류로 나뉜다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록된 본인이지만 다른 단어를 말한 경우는 립리딩 축에서 걸린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단어는 맞지만 다른 사람이 말한 경우는 화자 인증 축에서 걸린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용자 입장에서는 두 실패가 완전히 다른 상황이므로 안내 문구도 달라야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 어느 축에서 걸렸는지를 그대로 알려주면 공격자에게 정보를 주는 셈이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;7부에서 다룰 다중 요소 결합의 수학에 따르면 두 축을 논리곱으로 묶을 때 FMR은 낮아지고 FNMR은 높아진다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;나가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SimPc/dJMcag0IJrz/ch8QNrMsIUx2cCn0PZDOi1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SimPc/dJMcag0IJrz/ch8QNrMsIUx2cCn0PZDOi1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SimPc/dJMcag0IJrz/ch8QNrMsIUx2cCn0PZDOi1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSimPc%2FdJMcag0IJrz%2Fch8QNrMsIUx2cCn0PZDOi1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;나가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하나의 입술 영상에는 무엇을 말했는가와 누가 말했는가라는 두 질문이 함께 들어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 정보는 개념적으로 나뉘지만 임베딩 안에서는 얽혀 있으므로 분리는 설계로 만들어야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩은 viseme과 음소의 다대일 대응과 동시 조음 때문에 입력 자체에 정보가 부족한 태스크다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프레임과 글자의 길이가 맞지 않는 문제는 CTC가 풀지만, 한국어에서는 출력 단위를 자모로 둘지 음절로 둘지가 추가 선택으로 남는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화자 인증은 음성 쪽의 등록과 인증 구조를 그대로 빌려오며, 문장 종속 설계가 짧은 발화에서 유리하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 얼굴과 입술과 음성처럼 서로 다른 입력을 결합하는 방식과, 그 결합이 성능 지표에 미치는 영향을 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;참고 자료&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;립리딩 계보&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Y. M. Assael, B. Shillingford, S. Whiteson, N. de Freitas, &quot;LipNet: End-to-End Sentence-level Lipreading&quot;, arXiv:1611.01599, 2016. GRID 문장 단위 95.2퍼센트, 미학습 화자 WER 11.4퍼센트, 사람 립리더 WER 35.5에서 57.3퍼센트.&lt;/li&gt;
&lt;li&gt;C. G. Fisher, &quot;Confusions among visually perceived consonants&quot;, Journal of Speech and Hearing Research, 1968. 영어 초성 자음 음소 23개에 대한 5개 viseme 범주.&lt;/li&gt;
&lt;li&gt;B. Shi, W. N. Hsu, K. Lakhotia, A. Mohamed, &quot;Learning Audio-Visual Speech Representation by Masked Multimodal Cluster Prediction&quot;, ICLR 2022. AV-HuBERT. LRS3 라벨 30시간으로 WER 32.5퍼센트.&lt;/li&gt;
&lt;li&gt;B. Shi, W. N. Hsu, A. Mohamed, &quot;Robust Self-Supervised Audio-Visual Speech Recognition&quot;, arXiv:2201.01763, 2022.&lt;/li&gt;
&lt;li&gt;P. Ma et al., &quot;Auto-AVSR: Audio-Visual Speech Recognition with Automatic Labels&quot;, ICASSP 2023.&lt;/li&gt;
&lt;li&gt;N. Papadopoulos et al. (2025-09), L&amp;oacute;pez (2026-01), Wang et al. (2025-06). AV-HuBERT의 범주 편향 및 시간 비동기 민감도 한계에 대한 분석.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;화자 인증&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;B. Desplanques, J. Thienpondt, K. Demuynck, &quot;ECAPA-TDNN&quot;, Interspeech 2020.&lt;/li&gt;
&lt;li&gt;Zhao et al., 2022. ECAPA-TDNN 임베딩 프로빙. 세션 채널 85.6퍼센트, 단어 수준 내용 91.4퍼센트, 감정 53.7퍼센트.&lt;/li&gt;
&lt;li&gt;B. Shi, A. Mohamed, W. N. Hsu, &quot;Learning Lip-Based Audio-Visual Speaker Embeddings with AV-HuBERT&quot;, arXiv:2205.07180, 2022.&lt;/li&gt;
&lt;li&gt;ReturnZero, &quot;The ReturnZero System for VoxCeleb Speaker Recognition Challenge 2022&quot;, arXiv:2209.10147. 512차원 임베딩, VoxCeleb2 5,994명 코호트, 상위 100명 보정.&lt;/li&gt;
&lt;li&gt;J. H. Choi, J. S. Seong, Y. R. Jeoung, J. H. Chang (한양대), &quot;Trainable Adaptive Score Normalization for Automatic Speaker Verification&quot;, arXiv:2504.04512, 2025.&lt;/li&gt;
&lt;li&gt;Y. M. Cheung et al., lip password 관련 미국 특허, 2015. 홍콩침례대.&lt;/li&gt;
&lt;li&gt;&quot;Lip-password based speaker verification without a priori knowledge of speech language&quot;, EURASIP Journal on Audio, Speech, and Music Processing, 2020.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;한국어 데이터셋 및 모델링 단위&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;J. Park et al., &quot;OLKAVS: An Open Large-Scale Korean Audio-Visual Speech Dataset&quot;, ICASSP 2024, arXiv:2301.06375. 1,107명, 1,150시간, 9개 시점.&lt;/li&gt;
&lt;li&gt;Park et al., &quot;KMSAV: Korean multi-speaker spontaneous audiovisual dataset&quot;, ETRI Journal, 2024.&lt;/li&gt;
&lt;li&gt;&quot;Korean Lip-Reading: Data Construction and Sentence-Level Lip-Reading&quot;, 2024. 방송 기반 12만 발화 이상, 자모 단위 트랜스포머.&lt;/li&gt;
&lt;li&gt;&quot;Korean Grapheme Unit-based Speech Recognition Using Attention-CTC Ensemble Network&quot;. 51개 자모 단위, 종성 없는 음절에 대한 특수 토큰.&lt;/li&gt;
&lt;li&gt;M. H. Lee, J. H. Chang, &quot;Korean speech recognition based on grapheme&quot;, 한국음향학회지 38(5), 2019.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;용어 확인 자료&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;배아라, 김우일, 「Attention-long short term memory 기반의 화자 임베딩과 I-vector를 결합한 원거리 및 잡음 환경에서의 화자 검증 알고리즘」, 한국음향학회지 39(2), 2020. 문장 종속, 문장 독립, 화자 임베딩, 화자 검증 표기.&lt;/li&gt;
&lt;li&gt;액션파워 기술블로그, 「음성인식 서비스: 화자 검증」. 등록 과정, 인증 과정, EER, Min DCF 표기.&lt;/li&gt;
&lt;li&gt;포스테키안, 「청각과 시각을 잡는 음성 합성 기술」. viseme 정의 및 동시 조음의 한국어 예시.&lt;/li&gt;
&lt;li&gt;마이크로소프트 Azure 음성 서비스 한국어 문서, 「viseme으로 얼굴 위치 가져오기」.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML+DL/Vision AI</category>
      <category>AVHuBERT</category>
      <category>ctc</category>
      <category>viseme</category>
      <category>VSR</category>
      <category>동시조음</category>
      <category>립리딩</category>
      <category>문장종속</category>
      <category>생체인증</category>
      <category>한국어립리딩</category>
      <category>화자검증</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1373</guid>
      <comments>https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6#entry1373comment</comments>
      <pubDate>Fri, 7 Aug 2026 16:20:08 +0900</pubDate>
    </item>
    <item>
      <title>립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)</title>
      <link>https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5</link>
      <description>&lt;div class=&quot;book-toc&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목차&lt;/p&gt;
&lt;ul id=&quot;toc&quot; style=&quot;list-style-type: none;&quot; data-ke-list-type=&quot;none&quot;&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;background-color: #eeeeee; padding: 10px; border-radius: 10px;&quot;&gt;
&lt;p style=&quot;font-size: 18px;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;얼굴인식과 생체인증&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4%EB%8A%94-%EC%99%9C-%EB%B3%84%EA%B0%9C%EC%9D%98-%EB%AC%B8%EC%A0%9C%EC%9D%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스는 왜 별개의 문제인가 | 얼굴인식과 생체인증 (1)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EC%9A%A9%EC%96%B4-%EC%82%AC%EC%A0%84-FAR%EB%B6%80%ED%84%B0-PAD-ISO-30107%EA%B9%8C%EC%A7%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체인증 용어 사전: FAR부터 PAD, ISO 30107까지 | 얼굴인식과 생체인증 (2)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EA%B2%80%EC%B6%9C%EA%B3%BC-%EC%A0%95%EB%A0%AC-%EC%96%BC%EA%B5%B4%EC%9D%84-%EC%B0%BE%EA%B3%A0-%EB%B0%98%EB%93%AF%ED%95%98%EA%B2%8C-%EC%84%B8%EC%9A%B0%EA%B8%B0-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 검출과 정렬: 얼굴을 찾고 반듯하게 세우기 | 얼굴인식과 생체인증 (3)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;들어가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cOQJh7/dJMcagsWKFl/GQ1aaoMaklY0cOQiqCu7AK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cOQJh7/dJMcagsWKFl/GQ1aaoMaklY0cOQiqCu7AK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cOQJh7/dJMcagsWKFl/GQ1aaoMaklY0cOQiqCu7AK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcOQJh7%2FdJMcagsWKFl%2FGQ1aaoMaklY0cOQiqCu7AK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부까지의 파이프라인은 얼굴 한 장을 임베딩 벡터 하나로 바꾸는 것으로 끝났다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 편부터는 입력이 한 장이 아니라 여러 프레임으로 이어진 영상이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입술 움직임은 정지된 형태가 아니라 시간에 따른 변화 자체가 정보이기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 입술을 숫자로 만드는 두 가지 방식과 그 전처리, 그리고 시퀀스를 다루는 신경망 구조를 정리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신체 키포인트 시퀀스를 다뤄본 경험이 있다면 여기서 상당 부분이 그대로 옮겨온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 이 태스크의 현재 성능 수준을 수치로 확인하는데, 기대보다 훨씬 어려운 문제라는 점이 드러난다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;얼굴은 한 장으로 되지만 입술은 안 된다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;프레임 한 장에는 움직임 정보가 들어 있지 않다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;프레임 한 장에는 움직임 정보가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oyD9C/dJMcagsWKFC/l3bd8x1Q2ETHE3ukt8Sbek/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oyD9C/dJMcagsWKFC/l3bd8x1Q2ETHE3ukt8Sbek/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oyD9C/dJMcagsWKFC/l3bd8x1Q2ETHE3ukt8Sbek/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoyD9C%2FdJMcagsWKFC%2Fl3bd8x1Q2ETHE3ukt8Sbek%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;프레임 한 장에는 움직임 정보가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴인식은 사진 한 장만 있으면 성립하는 태스크다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴의 생김새는 시간에 따라 변하지 않는 성질이므로 한 시점의 관측으로 충분하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반면 입술 움직임은 정의상 두 시점 이상의 차이로만 표현된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입을 벌린 순간의 프레임 한 장은 그 사람이 무슨 말을 하는 중인지, 얼마나 빠르게 움직이는지를 담지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 입 모양이 서로 다른 발화의 서로 다른 지점에서 나타날 수도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 입력 단위가 이미지에서 시퀀스로 바뀌는 것이 이 편의 출발점이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;프레임별 특징을 평균 내면 그 정보가 사라진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여러 프레임을 다루는 가장 단순한 방법은 각 프레임에서 특징을 뽑아 평균 내는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 다룬 등록 시 여러 장의 임베딩을 평균 내는 방식과 형태가 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 얼굴에서 통했던 이 방식이 입술에서는 통하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;발화 중 입술 형상이 크게 변형되기 때문에 프레임 특징의 평균값은 신뢰할 수 없다는 분석이 보고되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;평균을 내는 순간 프레임 사이의 순서와 변화량이 통째로 사라지기 때문이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 얼굴에서 노이즈를 지우던 연산이 입술에서는 신호 자체를 지운다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;같은 말을 해도 개폐 궤적의 폭과 지속 시간이 사람마다 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 의미의 발화는 사람이 달라도 비슷한 입 열림과 닫힘의 궤적을 그린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 그 궤적의 폭이 얼마나 큰지, 각 구간이 얼마나 오래 유지되는지는 화자마다 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 차이가 조음 습관이며, 개인을 구별하는 신호로 쓸 수 있는 성분이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정지된 입 모양은 얼굴 생김새에 가까워 발화 내용과 뒤섞여 있지만, 변화의 방식은 개인에 더 가깝게 붙어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 평균이 지우는 것이 바로 이 성분이며, 그래서 시간축을 버릴 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 관찰이 립 모션을 인증에 쓸 수 있다는 주장의 근거가 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;시간적 특징 자체가 인증 신호가 되는 구조&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;시간적 특징 자체가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ccwjky/dJMcaaM4spE/pfPkptZqEVgZ4qJa0JKkSk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ccwjky/dJMcaaM4spE/pfPkptZqEVgZ4qJa0JKkSk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ccwjky/dJMcaaM4spE/pfPkptZqEVgZ4qJa0JKkSk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fccwjky%2FdJMcaaM4spE%2FpfPkptZqEVgZ4qJa0JKkSk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;시간적 특징 자체가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 사진은 촬영해서 다시 보여주면 그대로 재현되는 정적인 정보다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반면 지정된 단어를 발화하는 입술 움직임은 그 순간 실제로 수행되어야 만들어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공격자가 사용자의 얼굴 사진을 확보해도 그 사람이 특정 단어를 말할 때의 궤적까지 얻지는 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 무엇을 말했는지가 암호 역할을 하므로 알고 있어야 통과할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 두 조건이 겹쳐 하나의 입력에서 두 가지 검증이 동시에 이루어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소리를 내지 않고 입만 움직여도 동작한다는 점 때문에 공공장소에서 쓸 수 있다는 이점도 함께 언급된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;이 문제는 액션 인식과 뼈대가 같다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프레임 시퀀스를 입력받아 하나의 라벨이나 벡터를 내놓는 구조는 립리딩만의 것이 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영상에서 사람의 동작을 분류하는 액션 인식이 정확히 같은 형태의 문제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신체 키포인트 시퀀스를 입력으로 쓰는 동작 분석도 마찬가지 구조를 갖는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입력이 전신 관절 좌표냐 입술 주변 좌표냐가 다를 뿐 시간축을 다루는 방식은 공유된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 키포인트 시퀀스를 다뤄본 경험이 있다면 백엔드 설계와 전처리 감각이 그대로 이식된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제로 립리딩에서 쓰는 3D 합성곱과 TCN 계열은 액션 인식 문헌에서 먼저 자리를 잡은 구조다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;입술을 숫자로 만드는 방식은 두 갈래다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;픽셀을 그대로 쓰는 입술 영역 시퀀스&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;픽셀을 그대로 쓰는 입술 영역 시퀀스.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cwXguY/dJMcagzHFYj/7PBcYXHbkTLnCqS44EEk1K/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cwXguY/dJMcagzHFYj/7PBcYXHbkTLnCqS44EEk1K/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cwXguY/dJMcagzHFYj/7PBcYXHbkTLnCqS44EEk1K/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcwXguY%2FdJMcagzHFYj%2F7PBcYXHbkTLnCqS44EEk1K%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;픽셀을 그대로 쓰는 입술 영역 시퀀스.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 번째 방식은 각 프레임에서 입 주변을 잘라내 픽셀 값을 그대로 쓰는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영문 문헌은 이 잘라낸 영역을 mouth ROI라 부르며, ROI는 관심 영역을 뜻한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩 공개 구현체의 표준 설정은 96 곱하기 96 크기의 그레이스케일 이미지다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입력의 형태는 프레임 수 곱하기 세로 곱하기 가로가 되어 3차원 배열이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;픽셀을 그대로 쓰므로 입술 안쪽, 치아, 혀의 위치 같은 정보가 함께 들어온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;랜드마크로는 표현되지 않는 미세한 외형 변화까지 담을 수 있다는 점이 이 방식의 강점이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;좌표만 쓰는 랜드마크 시퀀스&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;좌표만 쓰는 랜드마크 시퀀스.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lPWmv/dJMb99N3jUr/Zi24LGccDt3ITtCpL7Y6Q0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lPWmv/dJMb99N3jUr/Zi24LGccDt3ITtCpL7Y6Q0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lPWmv/dJMb99N3jUr/Zi24LGccDt3ITtCpL7Y6Q0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlPWmv%2FdJMb99N3jUr%2FZi24LGccDt3ITtCpL7Y6Q0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;좌표만 쓰는 랜드마크 시퀀스.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 번째 방식은 3부에서 다룬 랜드마크 중 입술 주변 좌표만 뽑아 쓰는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MediaPipe의 얼굴 메시는 입술 안쪽과 바깥쪽 윤곽을 따라 조밀한 점을 이미 포함하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프레임마다 이 좌표들을 뽑아 시간순으로 늘어놓으면 좌표 시퀀스가 만들어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 계보는 립 생체 특징을 contour 기반과 area 기반으로 나누던 초기 분류의 앞쪽에 해당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입 면적, 둘레, 높이와 너비 같은 기하 파라미터를 좌표에서 계산해 쓰는 방식도 여기 속한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내 특허 문헌도 이 표현을 립 랜드마크로 부르며 발화의 시작점과 끝점을 잡는 데 사용한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;두 방식의 데이터양 차이&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;96 곱하기 96 그레이스케일 이미지 한 장은 9,216개의 값을 갖는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초당 25프레임으로 2초를 담으면 50 프레임이 되어 총 46만 개가 넘는 값이 입력된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반면 입술 랜드마크를 40점으로 잡고 2차원 좌표만 쓰면 프레임당 80개, 50 프레임에 4,000개다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 방식의 데이터량 차이가 백 배 이상 벌어진다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 차이는 학습에 필요한 데이터 규모, 모델 크기, 추론 속도에 그대로 반영된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;온디바이스 실행이 전제인 인증 시스템에서는 이 격차가 설계를 좌우하는 변수가 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;조명과 화질에 대한 강건성은 어느 쪽이 유리한가&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;랜드마크 좌표는 이미 추상화된 값이므로 조명 변화나 피부색 차이에 덜 흔들린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좌표만 남기면 화장, 수염, 카메라 색 특성 같은 변수가 대부분 제거된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반대로 픽셀 방식은 이런 변화를 그대로 받아들이므로 학습 데이터의 다양성이 부족하면 일반화가 어렵다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 랜드마크의 강건성은 랜드마크 검출기의 정확도에 전적으로 의존한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;검출기가 흔들리면 좌표가 프레임마다 진동하고, 그 진동이 곧 시퀀스의 노이즈가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 랜드마크 방식은 강건해서 안전한 것이 아니라 위험을 앞 단계로 옮긴 것에 가깝다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;둘을 함께 넣는 구성&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 표현은 서로를 배제하지 않으므로 함께 쓰는 구성도 가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;랜드마크로 입술 영역을 안정적으로 잘라낸 뒤 그 픽셀을 모델에 넣는 방식이 가장 흔하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 경우 랜드마크는 표현이 아니라 전처리 도구로 쓰이는 것이며, 실제 표준 파이프라인이 이 형태다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 걸음 더 나아가 픽셀 특징과 좌표 특징을 각각 뽑아 뒤에서 결합하는 구성도 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좌표는 전체적인 움직임을, 픽셀은 국소적인 외형 변화를 담당하게 나누는 발상이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 분기가 늘면 연산량과 학습 난이도가 함께 올라가므로 비용 대비 효과를 따져야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;키포인트 시퀀스를 다뤄봤다면 그대로 옮겨오는 부분&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;랜드마크 시퀀스는 형태상 신체 키포인트 시퀀스와 완전히 같은 자료 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프레임 수 곱하기 점 개수 곱하기 좌표 차원이라는 배열이며, 관절이 입술 윤곽으로 바뀐 것뿐이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좌표를 기준점 대비 상대 위치로 바꾸는 정규화, 프레임 간 차분을 추가 채널로 넣는 기법이 그대로 통한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시퀀스 길이를 맞추는 처리와 결측 프레임을 다루는 방식도 동일하게 적용된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;백엔드로 쓰는 양방향 LSTM이나 TCN 계열도 두 분야가 같은 계보를 공유한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;키포인트 검출 경험은 이 편에서 새로 배워야 할 양을 크게 줄여주는 자산이다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;전처리가 시퀀스 품질을 결정한다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;3부의 얼굴 정렬이 그대로 전제가 된다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3부의 얼굴 정렬이 그대로 전제가 된다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/biNaMe/dJMcaft1SZ5/uxQcHMO0I26qiEJPyYWwXK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/biNaMe/dJMcaft1SZ5/uxQcHMO0I26qiEJPyYWwXK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/biNaMe/dJMcaft1SZ5/uxQcHMO0I26qiEJPyYWwXK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiNaMe%2FdJMcaft1SZ5%2FuxQcHMO0I26qiEJPyYWwXK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;3부의 얼굴 정렬이 그대로 전제가 된다.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입술 영역을 잘라내려면 먼저 얼굴이 어디 있고 어떤 자세인지 알아야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 3부에서 다룬 얼굴 검출과 랜드마크 검출과 정렬이 그대로 앞단에 붙는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정렬을 건너뛰고 원본 프레임에서 바로 자르면 고개가 기울 때마다 입술이 회전한 채로 들어온다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 회전은 발화와 무관한 변동이므로 모델이 학습해야 할 신호를 흐린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정렬 품질이 인식 정확도를 좌우한다는 3부의 결론이 여기서도 그대로 성립한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오히려 프레임마다 반복되므로 정렬의 흔들림이 시퀀스 전체에 누적된다는 점에서 더 민감하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;평균 얼굴 형상에 맞춘 뒤 고정 크기로 잘라낸다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩 공개 구현체가 쓰는 절차는 여러 논문에서 거의 동일하게 반복된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 각 프레임에서 얼굴을 검출하고 랜드마크를 뽑는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음으로 미리 정해둔 평균 얼굴 형상에 각 프레임을 맞추는 정렬을 수행한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정렬된 좌표계에서 입 주변을 96 곱하기 96 크기로 고정해 잘라낸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 그레이스케일로 변환해 모델 입력으로 넘긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 절차가 사실상 업계 표준이므로 자체 데이터를 만들 때도 같은 순서를 따르는 편이 안전하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;입술 영역이 프레임마다 흔들리면 시퀀스가 오염된다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;랜드마크 검출은 프레임마다 독립적으로 수행되므로 같은 얼굴에서도 좌표가 미세하게 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 흔들림은 잘라내는 위치와 크기에 그대로 전달된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결과적으로 입술은 가만히 있는데 잘라낸 영역이 몇 픽셀씩 이동하는 상황이 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델은 이 이동을 실제 입술 움직임과 구별하지 못하므로 잘못된 신호를 학습한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;완화책으로 여러 프레임의 랜드마크를 시간축으로 평활화한 뒤 잘라내는 방식이 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시퀀스 단위로 하나의 정렬 변환을 계산해 전 프레임에 동일하게 적용하는 방법도 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;프레임 레이트가 다르면 같은 발화도 길이가 달라진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공개 데이터셋은 대부분 초당 25 프레임으로 통일되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 실제 단말의 카메라는 기종과 설정에 따라 초당 15 프레임에서 60 프레임까지 편차가 크다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 1초짜리 발화가 프레임 레이트에 따라 15개에서 60개까지 다른 개수의 프레임으로 기록된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습은 25프레임 기준으로 하고 추론은 60 프레임으로 들어오면 모델이 보는 변화 속도가 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 입력을 학습 시점의 프레임 레이트로 리샘플링하는 처리가 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조명이 어두울 때 카메라가 자동으로 프레임 레이트를 낮추는 경우가 있어 실측 확인이 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;발화 속도 차이를 흡수하는 시간 정규화&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프레임 레이트를 통일해도 사람마다 말하는 속도가 다르다는 문제가 남는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 단어를 빠르게 말하면 20프레임, 천천히 말하면 40 프레임에 걸쳐 기록된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 사람도 상황에 따라 속도가 달라지므로 이 변동은 등록과 인증 사이에서도 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 본 대로 궤적의 지속 시간 차이는 화자를 구별하는 신호이기도 하므로 무조건 지우면 안 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 발화 내용을 맞히는 립리딩에서는 속도 변동을 흡수해야 하고, 화자를 가리는 인증에서는 일부 남겨야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 목표가 충돌하는 지점이며, 이 문제의 구조는 6부에서 다시 다룬다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;시퀀스 길이를 맞추는 패딩과 크롭&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;시퀀스 길이를 맞추는 패딩과 크롭.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b8iraO/dJMcacRyfgm/k4mpyE8PxVGDvFUBqTGJP1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b8iraO/dJMcacRyfgm/k4mpyE8PxVGDvFUBqTGJP1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b8iraO/dJMcacRyfgm/k4mpyE8PxVGDvFUBqTGJP1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb8iraO%2FdJMcacRyfgm%2Fk4mpyE8PxVGDvFUBqTGJP1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;시퀀스 길이를 맞추는 패딩과 크롭.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신경망은 배치 단위로 학습하므로 한 배치 안의 샘플 길이가 같아야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;길이가 제각각인 시퀀스를 다루려면 짧은 쪽을 늘리거나 긴 쪽을 줄여야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;짧은 시퀀스 뒤에 빈 프레임을 채우는 것을 패딩이라 하고, 긴 시퀀스를 자르는 것을 크롭이라 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;패딩으로 채운 구간은 실제 데이터가 아니므로 마스크를 함께 넘겨 계산에서 제외해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;크롭 할 때는 발화의 앞뒤가 잘려나가지 않도록 시작점과 끝점을 먼저 찾아야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내 특허 문헌도 립 랜드마크로 발화의 시작점과 끝점을 잡는 단계를 별도로 두고 있다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;프론트엔드는 공간적 특징을, 백엔드는 시간적 특징을 맡는다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;두 단계로 나누는 표준 구성&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;두 단계로 나누는 표준 구성.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7dXvu/dJMcaft1S1e/ozm82lxcmRNtsZuD4jUpYk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7dXvu/dJMcaft1S1e/ozm82lxcmRNtsZuD4jUpYk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7dXvu/dJMcaft1S1e/ozm82lxcmRNtsZuD4jUpYk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7dXvu%2FdJMcaft1S1e%2Fozm82lxcmRNtsZuD4jUpYk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;두 단계로 나누는 표준 구성.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩 모델은 거의 예외 없이 두 단계로 나뉜 구조를 쓴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞쪽은 각 프레임에서 공간적 특징을 뽑고, 뒤쪽은 프레임 사이의 시간적 특징을 학습한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문은 이 두 단계를 frontend와 backend라 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;웹 개발에서 쓰는 같은 단어와 달리 코드가 어디서 실행되는지가 아니라 하나의 모델 안에서의 연산 순서를 가리킨다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 백엔드는 논문에 따라 temporal model이라는 이름으로도 등장한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구분이 명확하기 때문에 두 단계를 따로 교체하며 성능을 비교하는 실험이 가능하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;프레임을 독립적으로 처리하면 안 되는 이유&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 단순한 구현은 각 프레임을 일반 CNN에 따로 넣고 결과를 이어 붙이는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 구조에서는 각 프레임이 다른 프레임의 존재를 모른 채로 처리된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞 프레임보다 입이 더 벌어졌는지 다물어졌는지에 대한 정보가 특징 단계에서 만들어지지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;뒤쪽 백엔드가 그 관계를 뒤늦게 학습해야 하는데, 이미 공간 정보가 압축된 뒤라 복원할 수 없는 부분이 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 입술 안쪽의 미세한 변화처럼 압축 과정에서 버려지기 쉬운 성분이 그렇다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 앞단에서부터 여러 프레임을 함께 보는 연산이 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;앞단에 3D 합성곱을 한 겹 얹는 이유&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;앞단에 3D 합성곱을 한 겹 얹는 이유.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kPnpV/dJMcaaGl37U/xVxiAnIukaZEfyFobKHAIk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kPnpV/dJMcaaGl37U/xVxiAnIukaZEfyFobKHAIk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kPnpV/dJMcaaGl37U/xVxiAnIukaZEfyFobKHAIk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkPnpV%2FdJMcaaGl37U%2FxVxiAnIukaZEfyFobKHAIk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;앞단에 3D 합성곱을 한 겹 얹는 이유.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3D 합성곱은 가로와 세로에 더해 시간 방향으로도 커널을 확장한 연산이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩 표준 구성은 ResNet-18의 첫 합성곱을 커널 크기 5 곱하기 7 곱하기 7의 3D 합성곱으로 교체한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시간 방향 크기가 5이므로 인접한 다섯 프레임을 한 번에 보면서 특징을 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;덕분에 프레임 간의 짧은 변화가 특징 단계에서부터 반영된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3D 합성곱은 연산량이 크기 때문에 모든 층에 쓰지 않고 앞단 한 겹에만 적용하는 것이 관행이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 한 겹만으로는 입술 움직임을 충분히 담지 못한다는 지적도 함께 제기되어 있다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;백엔드 계보는 양방향 LSTM에서 TCN으로 옮겨갔다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초기 구성은 프레임 특징을 순서대로 넣는 순환 신경망을 백엔드로 썼다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양방향 LSTM이나 양방향 GRU를 써서 앞뒤 문맥을 함께 보는 방식이 오래 쓰였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후 합성곱으로 시간축을 처리하는 TCN 계열이 등장하면서 무게중심이 옮겨갔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;순환 구조는 프레임을 순차적으로 처리해야 하지만 합성곱은 병렬 처리가 가능하다는 점이 결정적이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공개 구현 기준으로 3D 합성곱과 ResNet-18에 MS-TCN을 붙인 구성이 LRW에서 89.6퍼센트를 낸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 조건에서 양방향 GRU를 백엔드로 쓴 구성보다 높은 값이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;팽창률로 수용 영역을 넓히는 MS-TCN과 DC-TCN&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;합성곱으로 긴 시간 범위를 보려면 층을 아주 깊게 쌓아야 한다는 문제가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 해결하는 것이 팽창 합성곱으로, 커널 요소 사이에 간격을 두어 한 번에 넓은 범위를 훑는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 간격을 팽창률이라 하며, 층이 깊어질수록 두 배씩 키우는 것이 일반적인 설계다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파라미터 수를 늘리지 않으면서 수용 영역을 지수적으로 확장할 수 있다는 것이 핵심이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MS-TCN은 서로 다른 팽창률의 가지를 병렬로 두어 짧은 변화와 긴 변화를 함께 잡는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;DC-TCN은 여기에 dense skip connection을 더했고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년 발표된 TD3Net은 연결된 특징마다 다른 팽창률을 적용해 수용 영역의 빈 구간을 없애는 방향으로 나아갔다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;Conformer가 프론트엔드 무용론을 꺼낸 지점&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지의 서술은 프론트엔드를 정교하게 만드는 방향의 발전사다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 이 전제 자체를 반박하는 결과가 나와 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Conformer를 백엔드로 쓰면 복잡한 프론트엔드가 필수적이지 않으며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단순한 선형 사영만으로도 LRS3에서 최고 수준에 도달한다는 보고다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Conformer는 합성곱과 어텐션을 결합한 구조로 국소적 변화와 전역적 문맥을 동시에 다룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;백엔드의 표현력이 충분히 커지면 프론트엔드가 하던 일을 흡수할 수 있다는 뜻이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 이 결과는 대규모 학습 데이터를 전제로 한 것이므로, 데이터가 제한된 조건에서도 성립하는지는 별개의 문제다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;이 태스크는 실제로 얼마나 어려운가&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;단어 단위 LRW 정확도와 문장 단위 LRS3 WER&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;단어 단위 LRW 정확도와.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LV6vT/dJMcaaGl39r/P0sRJFhnLT3rDsCp8dm320/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LV6vT/dJMcaaGl39r/P0sRJFhnLT3rDsCp8dm320/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LV6vT/dJMcaaGl39r/P0sRJFhnLT3rDsCp8dm320/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLV6vT%2FdJMcaaGl39r%2FP0sRJFhnLT3rDsCp8dm320%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;단어 단위 LRW 정확도와.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LRW는 영어 단어 500개를 분류하는 데이터셋으로 립리딩 연구의 기본 벤치마크다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 상위 모델의 정확도는 90퍼센트 안팎이며, STDNet이 90.2퍼센트를 보고했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 구조를 중국어 데이터셋인 LRW-1000에 적용하면 53.56퍼센트로 크게 떨어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;언어에 따라 시각적으로 구별 가능한 정도가 다르다는 뜻이며, 이 문제는 6부에서 다시 다룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문장 단위 인식은 LRS3에서 WER로 측정하는데, WER은 단어 오류율을 뜻한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정확도가 높을수록 값이 커지는 지표가 아니라 낮을수록 좋은 지표라는 점에 주의해야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;음성 모델과의 격차는 아직 수십 배다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Fast Conformer 기반 모델은 LRS3에서 음성만 쓸 때 0.7퍼센트, 음성과 영상을 함께 쓸 때 0.8퍼센트의 WER을 기록했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 논문의 영상 전용 모델은 25.5퍼센트에 머물렀다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영상만으로는 음성 대비 오류가 30배 이상 난다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Auto-AVSR의 영상 전용 모델은 파라미터가 250.4M이며 추가 데이터와 외부 언어 모델을 함께 쓰는 조건에서 측정된 값이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잡음이 심한 환경에서는 최고 성능 시스템도 WER 18퍼센트 부근에서 정체되어 있다는 정리가 나와 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩이 음성 인식을 대체한다는 식의 서술은 현재 수준과 맞지 않는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;인증 쪽 데이터셋은 수십 명 규모 closed-set이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;인증 쪽 데이터셋은.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yUzqH/dJMcag7vYby/k7zSXvlLMkSC1ClXcXnvT1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yUzqH/dJMcag7vYby/k7zSXvlLMkSC1ClXcXnvT1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yUzqH/dJMcag7vYby/k7zSXvlLMkSC1ClXcXnvT1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyUzqH%2FdJMcag7vYby%2Fk7zSXvlLMkSC1ClXcXnvT1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;인증 쪽 데이터셋은.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립 모션 인증 연구에서 영상만으로 EER 1.6퍼센트를 보고한 사례가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴인식 기준으로 보면 낮지 않은 값이지만 측정 조건을 함께 봐야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 실험은 50명 규모였고 등록된 사용자가 전부 미리 알려져 있는 closed-set 프로토콜이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 이전 연구들은 각각 9명, 20명, 43명, 40명 규모의 비공개 데이터셋을 사용했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4부에서 다룬 IJB-C가 negative pair를 1,500만 개 쓴다는 점과 비교하면 층위가 완전히 다르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 립 모션 인증의 성능 수치는 얼굴인식 수치와 같은 자리에 놓고 읽을 수 없다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;발화 내용과 화자 정체성이 한 신호에 섞여 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입술 영상 하나에는 무엇을 말했는가와 누가 말했는가가 함께 들어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증 시스템은 두 가지를 모두 확인해야 하므로 이 얽힘이 문제가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 연구는 화자 고유의 조음 습관을 의미 내용과 분리하기 위해 두 특징 사이를 Gram 행렬로 직교화하는 방식을 제안했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;립리딩 모델이 뽑은 의미 특징과 신원 특징이 서로 다른 방향을 향하도록 강제하는 발상이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 방향의 원류는 홍콩침례대에서 나온 lip password 개념이며 2015년 미국 특허로 등록되어 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;틀린 단어를 말한 정당한 사용자와 맞는 단어를 말한 공격자를 모두 거부한다는 것이 그 요지이고, 이 구조는 6부에서 본격적으로 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;나가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴은 한 장으로 되지만 입술 움직임은 두 시점 이상의 차이로만 표현된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프레임 특징을 평균 내면 화자를 구별하는 성분이 함께 사라지므로 시간축을 유지해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입술을 숫자로 만드는 방식은 픽셀 시퀀스와 랜드마크 시퀀스로 나뉘며, 데이터량이 백 배 이상 차이 난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전처리는 3부의 얼굴 정렬 위에 얹히고, 프레임 레이트와 발화 속도라는 두 종류의 길이 변동을 다뤄야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델은 공간적 특징을 맡는 프론트엔드와 시간적 특징을 맡는 백엔드로 나뉘며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;백엔드가 강해지면 프론트엔드의 역할이 줄어든다는 결과도 나와 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 같은 입술 영상에서 갈라져 나오는 두 태스크,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 무엇을 말했는지를 읽는 립리딩과 누가 말했는지를 판정하는 화자 검증을 구분한다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;참고 자료&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;전처리와 데이터셋&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;J. S. Chung, A. Zisserman, &quot;Lip Reading in the Wild&quot;, ACCV 2016. LRW 데이터셋.&lt;/li&gt;
&lt;li&gt;S. Yang et al., &quot;LRW-1000: A Naturally-Distributed Large-Scale Benchmark for Lip Reading in the Wild&quot;, FG 2019.&lt;/li&gt;
&lt;li&gt;T. Afouras et al., &quot;LRS3-TED: A Large-Scale Dataset for Visual Speech Recognition&quot;, arXiv:1809.00496.&lt;/li&gt;
&lt;li&gt;mpc001/Lipreading_using_Temporal_Convolutional_Networks 공식 저장소. 얼굴 검출, 평균 얼굴 형상 정렬, 96 곱하기 96 그레이스케일 입술 영역 크롭 절차.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;모델 구조&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;B. Martinez et al., &quot;Lipreading Using Temporal Convolutional Networks&quot;, ICASSP 2020. MS-TCN, LRW 89.6퍼센트.&lt;/li&gt;
&lt;li&gt;P. Ma et al., &quot;Training Strategies for Improved Lip-Reading&quot;, ICASSP 2022. DC-TCN.&lt;/li&gt;
&lt;li&gt;&quot;TD3Net: A Temporal Densely Connected Multi-Dilated Convolutional Network for Lipreading&quot;, 2026-01. 교신저자 한성원(고려대). 양방향 GRU, MS-TCN, DC-TCN 동일 조건 재구현 비교표 포함.&lt;/li&gt;
&lt;li&gt;&quot;STDNet: Spatio-Temporal Decomposed Network for Video Lipreading&quot;. LRW 90.2퍼센트, LRW-1000 53.56퍼센트.&lt;/li&gt;
&lt;li&gt;O. Chang et al., &quot;Conformers are All You Need for Visual Speech Recognition&quot;, ICASSP 2024. 단순 선형 사영 프론트엔드로 LRS3 최고 수준 달성.&lt;/li&gt;
&lt;li&gt;P. Ma et al., &quot;Auto-AVSR: Audio-Visual Speech Recognition with Automatic Labels&quot;, ICASSP 2023.&lt;/li&gt;
&lt;li&gt;&quot;Fast Conformer-based Audio-Visual Speech Recognition&quot;. LRS3 기준 음성 0.7퍼센트, 시청각 0.8퍼센트, 영상 25.5퍼센트 WER.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;립 모션 인증&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Y. M. Cheung et al., lip password 관련 미국 특허, 2015. 홍콩침례대.&lt;/li&gt;
&lt;li&gt;&quot;Visual speaker authentication via lip motions with semantic decoupling&quot;, 2025-11. 프레임 특징 평균의 한계, 화자별 궤적 차이, Gram 행렬 직교화.&lt;/li&gt;
&lt;li&gt;&quot;Lip-password based speaker verification without a priori knowledge of speech language&quot;, EURASIP Journal, 2020. 50명 closed-set EER 1.6퍼센트.&lt;/li&gt;
&lt;li&gt;&quot;One-shot lip password based on 3D convolution and BiLSTM with triplet loss&quot;, Springer.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;용어 확인 자료&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;한국방송미디어공학회, 「MobileNet을 이용한 한국어 입모양 인식 시스템」. Lip Reading(독순술) 병기.&lt;/li&gt;
&lt;li&gt;국내 특허 KR20210054961A, 「영상을 활용한 딥러닝 모델 기반의 실시간 립리딩 인터페이스 시스템」. 립리딩, 립 랜드마크(lip landmark), 발화 시점 및 종점 표기.&lt;/li&gt;
&lt;li&gt;스마트미디어저널 게재 논문. 공간적 특징과 시간적 특징 표기.&lt;/li&gt;
&lt;li&gt;대한원격탐사학회, 「작물 분류에서 시공간 특징을 고려하기 위한 2D CNN과 양방향 LSTM의 결합」.&lt;/li&gt;
&lt;li&gt;나무위키 합성곱 신경망 문서. 수용 영역(Receptive Field), 팽창률(dilation rate) 병기.&lt;/li&gt;
&lt;li&gt;PseudoLab Tutorial Book, 「데이터 전처리」. 시퀀스 길이(sequence length) 표기.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML+DL/Vision AI</category>
      <category>3D합성곱</category>
      <category>Conformer</category>
      <category>LRS3</category>
      <category>LRW</category>
      <category>TCN</category>
      <category>립리딩</category>
      <category>립모션</category>
      <category>생체인증</category>
      <category>시공간특징</category>
      <category>입모양인식</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1372</guid>
      <comments>https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5#entry1372comment</comments>
      <pubDate>Fri, 7 Aug 2026 11:45:25 +0900</pubDate>
    </item>
    <item>
      <title>얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)</title>
      <link>https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4</link>
      <description>&lt;div class=&quot;book-toc&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목차&lt;/p&gt;
&lt;ul id=&quot;toc&quot; style=&quot;list-style-type: none;&quot; data-ke-list-type=&quot;none&quot;&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;background-color: #eeeeee; padding: 10px; border-radius: 10px;&quot;&gt;
&lt;p style=&quot;font-size: 18px;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;얼굴인식과 생체인증&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4%EB%8A%94-%EC%99%9C-%EB%B3%84%EA%B0%9C%EC%9D%98-%EB%AC%B8%EC%A0%9C%EC%9D%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스는 왜 별개의 문제인가 | 얼굴인식과 생체인증 (1)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EC%9A%A9%EC%96%B4-%EC%82%AC%EC%A0%84-FAR%EB%B6%80%ED%84%B0-PAD-ISO-30107%EA%B9%8C%EC%A7%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체인증 용어 사전: FAR부터 PAD, ISO 30107까지 | 얼굴인식과 생체인증 (2)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EA%B2%80%EC%B6%9C%EA%B3%BC-%EC%A0%95%EB%A0%AC-%EC%96%BC%EA%B5%B4%EC%9D%84-%EC%B0%BE%EA%B3%A0-%EB%B0%98%EB%93%AF%ED%95%98%EA%B2%8C-%EC%84%B8%EC%9A%B0%EA%B8%B0-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 검출과 정렬: 얼굴을 찾고 반듯하게 세우기 | 얼굴인식과 생체인증 (3)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;얼굴 임베딩: 좌표가 아니라 거리를 배운다 | 얼굴인식과 생체인증 (4)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD-%EB%AA%A8%EC%85%98-%EB%AA%A8%EB%8D%B8%EB%A7%81-%EC%A0%95%EC%A7%80-%EC%98%81%EC%83%81%EC%97%90%EC%84%9C-%EC%8B%9C%EA%B0%84%EC%B6%95%EC%9C%BC%EB%A1%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립 모션 모델링: 정지 영상에서 시간축으로 | 얼굴인식과 생체인증 (5)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A6%BD%EB%A6%AC%EB%94%A9%EA%B3%BC-%ED%99%94%EC%9E%90-%EC%9D%B8%EC%A6%9D-%EB%AC%B4%EC%97%87%EC%9D%84-%EB%A7%90%ED%96%88%EB%82%98-%EB%88%84%EA%B0%80-%EB%A7%90%ED%96%88%EB%82%98-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;립리딩과 화자 인증: 무엇을 말했나, 누가 말했나 | 얼굴인식과 생체인증 (6)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%A9%80%ED%8B%B0%EB%AA%A8%EB%8B%AC-%EC%9C%B5%ED%95%A9-%EC%96%BC%EA%B5%B4%EA%B3%BC-%EC%9E%85%EC%88%A0%EA%B3%BC-%EC%9D%8C%EC%84%B1%EC%9D%84-%ED%95%A9%EC%B9%98%EB%8A%94-%EB%B2%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;멀티모달 융합: 얼굴과 입술과 음성을 합치는 법 | 얼굴인식과 생체인증 (7)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%8B%88%EC%8A%A4-%ED%83%90%EC%A7%80-%ED%8C%A8%EC%8B%9C%EB%B8%8C%EC%99%80-%EC%95%A1%ED%8B%B0%EB%B8%8C%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%B4-%EB%8B%A4%EB%A5%B8%EA%B0%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;라이브니스 탐지: 패시브와 액티브는 무엇이 다른가 | 얼굴인식과 생체인증 (8)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EB%94%A5%ED%8E%98%EC%9D%B4%ED%81%AC%EC%99%80-%EC%9D%B8%EC%A0%9D%EC%85%98-%EA%B3%B5%EA%B2%A9-%EC%B9%B4%EB%A9%94%EB%9D%BC%EB%8F%84-%EB%AA%BB-%EB%AF%BF%EB%8A%94-%EC%8B%9C%EB%8C%80-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-9&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;딥페이크와 인젝션 공격: 카메라도 못 믿는 시대 | 얼굴인식과 생체인증 (9)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%83%9D%EC%B2%B4%EC%A0%95%EB%B3%B4-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C%EC%99%80-%EC%B7%A8%EC%86%8C-%EA%B0%80%EB%8A%A5%ED%95%9C-%EC%9D%B8%EC%A6%9D-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;생체정보 프라이버시와 취소 가능한 인증 | 얼굴인식과 생체인증 (10)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/%EC%98%A8%EB%94%94%EB%B0%94%EC%9D%B4%EC%8A%A4-%EB%B0%B0%ED%8F%AC%EC%99%80-%EC%96%91%EC%9E%90%ED%99%94%EC%9D%98-%ED%95%A8%EC%A0%95-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-11&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;온디바이스 배포와 양자화의 함정 | 얼굴인식과 생체인증 (11)&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://gnidinger.tistory.com/entry/Face-ID%EC%99%80-%EA%B3%B5%ED%95%AD-%EA%B2%8C%EC%9D%B4%ED%8A%B8-%EA%B0%99%EC%9D%80-%EC%96%BC%EA%B5%B4-%EB%8B%A4%EB%A5%B8-%EB%AC%B8%EC%A0%9C-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-%EB%B2%88%EC%99%B8&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Face ID와 공항 게이트: 같은 얼굴, 다른 문제 | 얼굴인식과 생체인증 (번외)&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;들어가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SgQwE/dJMcaccZMLC/wfk0Ph7dMuKZBruwA18CV1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SgQwE/dJMcaccZMLC/wfk0Ph7dMuKZBruwA18CV1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SgQwE/dJMcaccZMLC/wfk0Ph7dMuKZBruwA18CV1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSgQwE%2FdJMcaccZMLC%2Fwfk0Ph7dMuKZBruwA18CV1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;들어가는 글.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3부까지의 파이프라인은 정렬된 112 곱하기 112 크기의 얼굴 이미지를 만들어냈다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글은 그 이미지가 벡터 하나로 바뀌는 과정과, 그 벡터가 놓이는 공간이 어떻게 학습되는지를 다룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;키포인트 검출처럼 정답 좌표를 맞히는 태스크를 다뤄본 사람에게 이 지점은 관점을 바꿔야 하는 구간이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 인식에는 맞혀야 할 정답 출력이 없고, 대신 같은 사람끼리 가깝고 다른 사람끼리 먼 공간을 만드는 것이 목표가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;손실 함수의 계보는 이 목표를 달성하는 방식이 샘플 간 비교에서 분류 문제로 옮겨온 과정이며, 그 전환이 성능을 결정적으로 끌어올렸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막으로 학습 데이터셋과 벤치마크의 현재 상태를 정리하는데, 이 영역은 절반 이상이 이미 사용 불가 상태다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;좌표를 맞히는 문제와 거리를 배우는 문제는 다르다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;키포인트 회귀에는 맞혀야 할 정답 좌표가 있다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;키포인트 회귀에는 맞혀야.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JLEOq/dJMcacxj516/2QRfHNdB04sYnA9ypekAAK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JLEOq/dJMcacxj516/2QRfHNdB04sYnA9ypekAAK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JLEOq/dJMcacxj516/2QRfHNdB04sYnA9ypekAAK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJLEOq%2FdJMcacxj516%2F2QRfHNdB04sYnA9ypekAAK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;키포인트 회귀에는 맞혀야.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신체 키포인트 검출이나 얼굴 랜드마크 검출은 정답이 좌표값으로 주어지는 태스크다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주석자가 어깨나 코끝의 위치를 픽셀 단위로 표시해 두고, 모델은 그 좌표를 예측하도록 학습된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;손실 함수는 예측 좌표와 정답 좌표의 차이를 재는 것으로 충분하며, 대개 L1이나 L2 거리를 쓴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;평가도 단순해서 정답에서 얼마나 벗어났는지를 정규화한 오차로 계산하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 학습과 평가가 모두 하나의 절대적인 기준점을 공유하는 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델의 출력은 그 자체로 의미를 가지며 다른 샘플과 비교할 필요가 없다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;얼굴 인식에는 정답에 해당하는 출력값이 없다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 인식에서 정답은 두 이미지가 같은 사람인지 여부이며, 이는 좌표처럼 표현되지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특정 인물에게 부여할 고정된 출력 벡터가 미리 정해져 있는 것도 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델이 어떤 벡터를 내놓든, 같은 사람의 벡터끼리 가깝기만 하면 목적은 달성된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 학습 목표는 개별 출력값이 아니라 출력값들 사이의 상대적 배치가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 사람의 이미지를 넣었을 때 나온 두 벡터의 거리가 짧으면 성공이고 길면 실패다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정답이 절대 좌표가 아니라 관계로 정의된다는 점이 이 태스크의 근본 성격이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;학습 때 본 적 없는 사람도 인식해야 하는 open-set 문제다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적인 분류 모델은 학습에 등장한 클래스 중 하나를 고르는 방식으로 동작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 인증 시스템에 등록되는 사용자는 학습 데이터에 존재하지 않는 사람이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수십만 명으로 학습한 모델이 그와 무관한 신규 사용자를 처리해야 하므로 분류 출력은 쓸모가 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 조건을 open-set 문제라 부르며, 학습 클래스와 운영 클래스가 겹치지 않는다는 뜻이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새 사용자를 추가할 때마다 모델을 재학습할 수는 없으므로 다른 구조가 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해법은 모델을 특징 추출기로만 쓰고 판정은 벡터 비교로 처리하는 것이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;그래서 출력이 라벨이 아니라 벡터가 된다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습이 끝난 모델에서 분류 층을 떼어내고 그 직전 층의 출력만 사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 출력이 임베딩 벡터이며, 얼굴 한 장을 고정 길이의 숫자 배열로 요약한 값이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록 시에는 사용자의 얼굴에서 뽑은 벡터를 저장하고, 인증 시에는 새로 뽑은 벡터와 비교한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비교는 두 벡터 사이의 코사인 유사도를 계산해 임계값과 대조하는 방식으로 이루어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신규 사용자 추가는 벡터를 하나 더 저장하는 것에 불과하므로 재학습이 필요 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 다룬 지표들이 모두 이 벡터 거리의 분포 위에서 정의된다는 점도 여기서 연결된다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;초기에는 샘플끼리 직접 비교했다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;같은 쌍은 당기고 다른 쌍은 미는 contrastive loss&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;같은 쌍은 당기고 다른 쌍은.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/crBhB6/dJMcacxj53c/j5Z5a4nChOUJrEk7U9LKb1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/crBhB6/dJMcacxj53c/j5Z5a4nChOUJrEk7U9LKb1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/crBhB6/dJMcacxj53c/j5Z5a4nChOUJrEk7U9LKb1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcrBhB6%2FdJMcacxj53c%2Fj5Z5a4nChOUJrEk7U9LKb1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;같은 쌍은 당기고 다른 쌍은.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 직관적인 접근은 이미지 두 장을 짝지어 넣고 관계에 따라 손실을 다르게 주는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 사람의 쌍이면 두 벡터의 거리를 줄이는 방향으로 손실을 설계한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다른 사람의 쌍이면 거리가 일정 값 이상 벌어지도록 밀어내는 손실을 준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 일정 값을 마진이라 부르며, 이미 충분히 멀어진 쌍에는 손실을 부과하지 않는 역할을 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 데이터가 같은 클래스에 속하는지 여부에 따라 거리에 대한 손실 배분을 다르게 하는 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제는 절대적인 거리 기준을 정해야 한다는 점이며, 이 값이 데이터 전체에 일률적으로 맞기는 어렵다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;anchor, positive, negative를 한 번에 묶는 triplet loss&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FaceNet은 쌍 대신 이미지 세 장을 한 번에 사용하는 방식을 제안했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기준이 되는 anchor, 같은 사람의 positive, 다른 사람의 negative를 하나의 triplet으로 묶는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;손실은 anchor와 positive의 거리가 anchor와 negative의 거리보다 마진만큼 작아지도록 설계된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;절대 거리가 아니라 상대 거리를 다루므로 contrastive loss의 기준값 문제가 완화된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;triplet을 고르는 과정이 번거롭지만 성능이 좋아 오랫동안 메트릭 러닝의 기본형으로 쓰였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FaceNet이 임베딩 하나로 인식과 검증과 군집화를 동시에 처리할 수 있음을 보인 것도 이 시기다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;조합 수가 폭발하고 hard sample mining이 병목이 된다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;조합 수가 폭발하고.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmRQbl/dJMcadJFCui/trOkhMgNwKdwJ4sdW5SZj0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmRQbl/dJMcadJFCui/trOkhMgNwKdwJ4sdW5SZj0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmRQbl/dJMcadJFCui/trOkhMgNwKdwJ4sdW5SZj0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmRQbl%2FdJMcadJFCui%2FtrOkhMgNwKdwJ4sdW5SZj0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;조합 수가 폭발하고.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;샘플이 N개일 때 가능한 triplet의 수는 N의 세제곱에 비례해 늘어난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수백만 장 규모의 데이터에서는 모든 triplet을 보는 것이 계산적으로 불가능하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대부분의 triplet은 이미 조건을 만족하고 있어 학습 신호를 전혀 만들지 못한다는 문제도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 어려운 triplet만 골라 쓰는 hard sample mining이 필수가 되는데, 이 선별 자체가 난제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지나치게 어려운 조합만 고르면 학습이 발산하고, 쉬운 조합이 섞이면 수렴이 느려진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결국 학습 성능이 손실 함수보다 조합 선택 전략에 좌우되는 상황이 벌어진다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;클래스 중심을 함께 학습하는 center loss&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;center loss는 클래스마다 중심 벡터를 하나씩 두고 이를 파라미터로 함께 학습하는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;손실은 각 샘플이 자기 클래스 중심에서 멀어진 정도로 계산된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조합을 뽑을 필요가 없어지므로 앞서 말한 폭발 문제가 사라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 클래스 간 거리를 직접 벌리는 항이 없어 단독으로는 분리 성능이 부족하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 실제로는 softmax 손실과 더해서 보조 항으로 쓰는 것이 일반적이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;샘플 대 샘플 비교에서 샘플 대 중심 비교로 관점을 옮긴 것이 이 방식의 기여다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;두 계열이 공통으로 부딪힌 한계&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;contrastive loss와 triplet loss는 미니배치 안에서 국소적인 샘플 대 샘플 비교만 수행한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전체 데이터 분포를 보지 못하므로 배치 구성에 따라 학습 신호가 크게 흔들린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반면 중심 기반 방식은 클래스 전체를 대표하는 하나의 벡터와 비교하므로 신호가 안정적이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ArcFace 연구진의 ablation은 triplet loss가 정규화만 적용한 softmax보다 낫다는 결과를 보이며 마진의 중요성을 확인했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 triplet 내부에 마진을 넣는 것보다 샘플과 중심 사이에 넣는 편이 더 효과적이라는 점도 함께 밝혔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 두 관찰이 다음 세대의 손실 함수 설계를 결정했다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;분류 문제로 바꾸자 성능이 올라갔다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;softmax로 분류를 학습해도 중간층에 임베딩이 남는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습 단계에서는 데이터셋에 있는 수십만 명을 분류하는 문제로 모델을 훈련한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막에 분류 층을 붙이고 각 이미지가 어느 신원인지 맞히도록 하는 평범한 구조다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습이 끝나면 분류 층을 떼어내고 그 직전 층의 출력만 임베딩으로 사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;분류를 잘하려면 같은 사람의 특징이 비슷하게 모여야 하므로 임베딩 공간이 함께 정리된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조합을 뽑을 필요가 없고 배치 구성에 덜 민감하다는 점이 실무적으로 큰 장점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 평범한 softmax만으로는 학습에 없던 사람을 구분할 만큼 변별력이 생기지 않는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;마지막 층의 가중치 벡터가 사실상 클래스 중심 역할을 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;마지막 층의 가중치 벡터가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tEPFb/dJMcajpyps3/BiItej6ZhA5KI9gJhrKyn0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tEPFb/dJMcajpyps3/BiItej6ZhA5KI9gJhrKyn0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tEPFb/dJMcajpyps3/BiItej6ZhA5KI9gJhrKyn0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtEPFb%2FdJMcajpyps3%2FBiItej6ZhA5KI9gJhrKyn0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;마지막 층의 가중치 벡터가.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;분류 층은 임베딩 벡터와 클래스별 가중치 벡터의 내적으로 로짓을 계산한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어떤 클래스의 로짓이 크려면 임베딩이 그 클래스의 가중치 벡터와 방향이 비슷해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 학습이 진행되면 가중치 벡터는 해당 클래스 샘플들이 모인 방향으로 이동한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 별도로 중심을 두지 않아도 분류 층의 가중치가 center loss의 중심과 같은 역할을 수행한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ArcFace 논문은 이 정렬 정도를 각도로 측정해 제시하는데, ArcFace에서는 가중치 벡터와 임베딩 중심이 14.29도 차이에 그친다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 측정에서 정규화만 적용한 softmax는 44.26도로 크게 어긋나며, 마진이 중심 정렬을 강제한다는 점을 보여준다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;정규화로 크기를 없애면 각도만 남는다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내적은 두 벡터의 크기와 사잇각에 함께 의존하므로 크기가 판정에 개입한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가중치 벡터와 임베딩 벡터를 모두 L2 정규화하면 크기가 1로 고정된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 내적은 두 벡터가 이루는 각도의 코사인 값과 정확히 같아진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후 정규화된 임베딩에 상수 s를 곱해 다시 키우는데, 이는 로짓의 크기를 학습 가능한 범위로 되돌리기 위한 조정이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결과적으로 모든 임베딩은 반지름 s인 구면 위에 놓이고 판정은 오직 방향으로만 결정된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추론 시 코사인 유사도로 매칭하는 방식과 학습 시 최적화하는 대상이 이 시점에서 일치하게 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;마진은 쌍 사이가 아니라 샘플과 중심 사이에 넣는 편이 효과적이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;마진은 쌍 사이가 아니라.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Pm7q3/dJMcajpyptl/nEM0tGk9PjEQ1FsyI3OKQK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Pm7q3/dJMcajpyptl/nEM0tGk9PjEQ1FsyI3OKQK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Pm7q3/dJMcajpyptl/nEM0tGk9PjEQ1FsyI3OKQK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPm7q3%2FdJMcajpyptl%2FnEM0tGk9PjEQ1FsyI3OKQK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;마진은 쌍 사이가 아니라.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정규화만으로는 서로 다른 클래스가 경계선에 바짝 붙어 있어도 손실이 발생하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 정답 클래스의 로짓에만 페널티를 주어 더 큰 각도 차이를 요구하는 방식이 도입되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정답 클래스로 분류되려면 원래보다 더 확실하게 가까워야 하므로 클래스 사이에 여유가 생긴다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 여유가 학습에 없던 사람에 대한 일반화 성능으로 이어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ArcFace 연구진은 Intra-loss, Inter-loss, triplet loss를 ArcFace에 추가로 결합해도 개선이 없었다고 보고했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 각도 마진 하나가 클래스 내 응집과 클래스 간 분리를 이미 모두 강제하고 있다는 뜻이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;신원 수가 늘면 분류 층이 먼저 터진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;분류 층의 가중치 행렬은 임베딩 차원과 신원 수의 곱만큼 크기를 갖는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 신원 수가 늘면 이 행렬이 선형으로 커지며 GPU 메모리를 그만큼 더 소모한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;360K 신원을 512차원으로 학습하면 분류 층 하나가 수억 개의 파라미터를 차지한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델 본체보다 분류 층이 먼저 메모리를 소진하는 상황이 실제로 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 해결하기 위해 분류 층을 여러 GPU에 쪼개고 매 스텝마다 일부 클래스만 사용하는 Partial FC 같은 기법이 쓰인다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대규모 학습에서는 손실 함수 설계만큼이나 이 구현 문제가 실질적인 제약이 된다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;마진을 어디에 넣느냐가 계보를 갈랐다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;세 방식은 하나의 식으로 정리된다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;세 방식은 하나의.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rmODD/dJMcacxj56m/OlT6AaGVrslFfV2zgj4rd1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rmODD/dJMcacxj56m/OlT6AaGVrslFfV2zgj4rd1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rmODD/dJMcacxj56m/OlT6AaGVrslFfV2zgj4rd1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrmODD%2FdJMcacxj56m%2FOlT6AaGVrslFfV2zgj4rd1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;세 방식은 하나의.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SphereFace, CosFace, ArcFace는 각각 다른 위치에 마진을 넣지만 구조는 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ArcFace 논문은 이 셋을 세 개의 하이퍼파라미터로 통합한 형태를 제시한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$L&amp;nbsp;=&amp;nbsp;-\frac{1}{N}\sum_{i=1}^{N}\log\frac{e^{s(\cos(m_1\theta_{y_i}+m_2)-m_3)}}{e^{s(\cos(m_1\theta_{y_i}+m_2)-m_3)}+\sum_{j\neq&amp;nbsp;y_i}e^{s\cos\theta_j}}$$&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 $&lt;span&gt;&lt;span&gt;&amp;theta;$&lt;/span&gt;&lt;/span&gt;는 임베딩과 클래스 가중치 벡터가 이루는 각도이고 $&lt;span&gt;&lt;span&gt;s$&lt;/span&gt;&lt;/span&gt;는 구면의 반지름에 해당하는 스케일이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;span&gt;$m_1$&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;​&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;은 각도에 곱하는 마진, $&lt;span&gt;&lt;span&gt;m_2$&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;​&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;는 각도에 더하는 마진, $&lt;span&gt;&lt;span&gt;m_3$&lt;/span&gt;&lt;/span&gt;는 코사인 값에서 빼는 마진이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세 값을 각각 1, 0, 0으로 두면 마진 없는 정규화 softmax가 되며, 어느 하나만 켜면 각 계열이 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;각도에 곱하는 SphereFace&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SphereFace는 $&lt;span&gt;&lt;span&gt;m_1$&lt;/span&gt;&lt;span aria-hidden=&quot;true&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;​&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;에 해당하는 마진을 처음 도입한 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각도에 1보다 큰 수를 곱하므로 정답 클래스에 요구되는 각도 조건이 배수로 엄격해진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각도가 커질수록 코사인 값의 단조성이 깨지는 문제가 있어 이를 보정하는 근사가 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 근사 때문에 계산이 복잡해지고 학습이 불안정해지는 현상이 보고되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논문 저자들도 안정화를 위해 일반 softmax를 섞은 형태를 함께 써야 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개념적으로는 중요한 출발점이지만 지금 실무에서 단독으로 쓰이는 경우는 드물다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;코사인 값에서 빼는 CosFace&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CosFace는 각도가 아니라 코사인 값에서 상수를 빼는 방식으로 마진을 준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코사인 값은 항상 -1과 1 사이에 있으므로 단조성이 깨지지 않고 계산도 단순하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근사가 필요 없어 학습이 안정적이며 구현 난이도가 크게 낮아졌다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적으로 쓰이는 마진 값은 0.35이고, 이 설정에서 SphereFace보다 뚜렷하게 나은 성능을 낸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 코사인 공간에서 일정한 마진은 각도 공간에서는 일정하지 않다는 기하학적 한계가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각도가 작은 구간과 큰 구간에서 실제로 요구되는 여유가 달라진다는 뜻이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;각도에 더하는 ArcFace&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ArcFace는 코사인을 취하기 전에 각도 자체에 상수를 더한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각도 공간에서 마진이 일정하므로 구면 위의 측지 거리(geodesic distance)와 정확히 대응된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 때문에 결정 경계 전 구간에 걸쳐 일정한 선형 각도 마진이 유지된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SphereFace와 CosFace는 각도 공간에서 보면 마진이 비선형으로 변한다는 점이 대비된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적인 설정은 마진 0.5, 스케일 64이며 이 조합이 사실상의 기본값으로 굳었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세 마진을 섞은 조합도 실험되었으나 개별 SphereFace와 CosFace보다는 낫고 ArcFace보다는 낮은 수준에 머물렀다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;같은 벤치마크에서도 조건에 따라 격차가 달라진다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ArcFace 논문의 동일 조건 비교 결과는 다음과 같다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 68px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;손실 함수&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;LFW&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;CFP-FP&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;AgeDB-30&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;SphereFace (1.35)&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;99.11&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;94.38&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;91.70&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;CosFace (0.35)&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;99.51&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;95.44&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;94.56&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;ArcFace (0.5)&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;99.53&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;95.56&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 17px; text-align: center;&quot;&gt;95.15&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LFW에서 세 방식의 차이는 0.42퍼센트에 그쳐 사실상 구분되지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반면 나이 차이가 큰 쌍을 다루는 AgeDB-30에서는 격차가 3.45퍼센트까지 벌어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3부에서 정렬 방식별 성능을 비교했을 때와 정확히 같은 패턴이 나타난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쉬운 조건의 벤치마크는 방법론 사이의 차이를 감추고, 어려운 조건에서 실제 차이가 드러난다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;이미지 품질에 따라 마진을 바꾸는 AdaFace&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;이미지 품질에 따라 마진을 바꾸는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/BYsZf/dJMcafHDOfn/rK6gbmR1ypQkSjapZbGGT0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/BYsZf/dJMcafHDOfn/rK6gbmR1ypQkSjapZbGGT0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/BYsZf/dJMcafHDOfn/rK6gbmR1ypQkSjapZbGGT0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBYsZf%2FdJMcafHDOfn%2FrK6gbmR1ypQkSjapZbGGT0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;이미지 품질에 따라 마진을 바꾸는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세 방식은 모두 마진을 고정된 상수로 둔다는 공통점이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AdaFace는 이미지 품질에 따라 마진을 다르게 적용하는 적응형 방식을 제안했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;품질을 가늠하는 신호로는 정규화 이전 임베딩의 크기, 즉 feature norm을 사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;품질이 낮은 이미지에서는 쉬운 샘플을 강조해 식별 자체가 불가능한 이미지에 끌려가지 않도록 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;품질이 높으면 반대로 어려운 샘플을 강조해 변별력을 끌어올린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;IJB-B와 IJB-C에서 차순위 방법 대비 오류를 각각 11퍼센트와 9퍼센트 줄였고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저품질 데이터셋에서는 평균 3.5퍼센트의 향상을 보고했다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;임베딩은 정규화된 512차원 벡터다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;512차원과 112 곱하기 112가 사실상 표준이 된 배경&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초기 모델들은 임베딩 차원을 128이나 256으로 잡는 경우가 많았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ArcFace 이후 512차원이 널리 채택되면서 대부분의 공개 모델이 이 값을 따르게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입력 크기도 112 곱하기 112로 수렴했는데, 이는 3부에서 다룬 정렬 기준 좌표와 짝을 이룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;차원을 늘리면 표현력이 커지지만 저장 공간과 비교 연산 비용도 함께 증가한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;512차원 float32 벡터 하나는 2킬로바이트이며, 백만 명 갤러리면 약 2기가바이트가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;온디바이스 배포에서는 이 크기가 실질적인 제약이 되므로 차원 축소나 양자화를 검토하게 된다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;L2 정규화가 벡터를 구면 위에 올린다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;L2 정규화가 벡터를.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mCDJ8/dJMcajpypvy/KsYifSZKCiPaaqCpj4kM0k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mCDJ8/dJMcajpypvy/KsYifSZKCiPaaqCpj4kM0k/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mCDJ8/dJMcajpypvy/KsYifSZKCiPaaqCpj4kM0k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmCDJ8%2FdJMcajpypvy%2FKsYifSZKCiPaaqCpj4kM0k%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;L2 정규화가 벡터를.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;L2 정규화는 벡터를 그 크기로 나누어 길이를 1로 맞추는 연산이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정규화 후의 모든 임베딩은 원점에서 같은 거리에 놓이므로 단위 구면 위에 분포한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 상태에서는 두 벡터의 차이가 오직 방향, 즉 사잇각으로만 표현된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조명이나 화질 때문에 생기는 크기 변화가 판정에서 제거된다는 부수 효과도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습 시 구면 위에 특징을 밀어 넣는 것과 추론 시 코사인으로 비교하는 것이 같은 기하 구조를 공유한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정규화를 빠뜨리면 학습된 공간의 성질이 추론에서 재현되지 않으므로 반드시 적용해야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;정규화 이후 코사인 유사도와 유클리드 거리는 같은 순서를 만든다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정규화된 두 벡터의 유클리드 거리 제곱은 코사인 유사도로 간단히 표현된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$\|a-b\|^2&amp;nbsp;=&amp;nbsp;2&amp;nbsp;-&amp;nbsp;2\cos\theta&amp;nbsp;\quad&amp;nbsp;(\|a\|=\|b\|=1)$$&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코사인 유사도가 커지면 거리는 반드시 작아지므로 두 지표는 완전히 같은 순위를 만든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 어느 쪽을 쓰든 매칭 결과와 성능 지표는 동일하며 임계값의 스케일만 달라진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;구현체마다 유사도를 쓰기도 하고 거리를 쓰기도 하는데, 부등호 방향이 반대이므로 주의가 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임계값을 이관할 때 이 변환 관계를 놓쳐 부호가 뒤집히는 실수가 자주 발생한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;feature norm이 버려지지 않고 품질 신호로 쓰이는 이유&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정규화 과정에서 벡터의 크기는 버려지지만 그 값 자체가 정보를 담고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델이 확신하는 선명한 얼굴일수록 정규화 이전 벡터의 크기가 크게 나오는 경향이 관찰된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;흐릿하거나 가려진 얼굴에서는 크기가 작아지므로 이 값을 품질의 근사치로 쓸 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AdaFace가 마진 조절에 feature norm을 사용한 것이 이 성질을 활용한 대표 사례다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 원리로 등록 시 품질이 낮은 이미지를 걸러내는 필터로도 쓸 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 품질 평가는 별도의 표준과 벤치마크를 갖고 있는 영역이므로 여기서는 존재만 짚어둔다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;갤러리와 임계값은 모델이 아니라 운영의 문제다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;등록은 임베딩 하나를 저장하는 일이다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록 단계에서 시스템은 사용자의 얼굴을 촬영해 임베딩을 계산하고 저장한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저장되는 것은 원본 이미지가 아니라 512개의 실수값이며, 이를 템플릿이라 부른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인증 시에는 새로 계산한 임베딩과 저장된 템플릿의 코사인 유사도를 구한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록된 템플릿 전체를 갤러리라 부르며, 1:N 식별에서는 이 갤러리 전체를 검색한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델 재학습 없이 사용자를 추가하거나 삭제할 수 있다는 점이 이 구조의 핵심 이점이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 모델을 교체하면 기존 템플릿이 모두 무효가 되므로 전체 재등록이 필요하다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;여러 장을 평균 내어 등록하면 무엇이 좋아지는가&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;여러 장을 평균 내어 등록하면.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvRtrh/dJMcaf1OU9j/OKYhn8SxO59GRtPLe6JDFK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvRtrh/dJMcaf1OU9j/OKYhn8SxO59GRtPLe6JDFK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvRtrh/dJMcaf1OU9j/OKYhn8SxO59GRtPLe6JDFK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvRtrh%2FdJMcaf1OU9j%2FOKYhn8SxO59GRtPLe6JDFK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;여러 장을 평균 내어 등록하면.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 장으로 등록하면 그 시점의 조명과 각도와 표정이 템플릿에 그대로 반영된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후 다른 조건에서 인증할 때 거리가 벌어져 거부가 발생할 확률이 높아진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여러 장에서 임베딩을 뽑아 평균 낸 뒤 다시 정규화하면 이 편향이 완화된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;평균 벡터는 개별 촬영 조건의 변동이 상쇄된 위치에 놓이므로 더 안정적인 기준이 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 품질이 나쁜 이미지가 섞이면 평균이 오염되므로 등록 단계의 품질 검사가 함께 필요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 사람에 대해 여러 템플릿을 따로 저장하고 최댓값을 취하는 방식도 대안으로 쓰인다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;임계값은 모델이 정하지 않고 서비스가 정한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델이 내놓는 것은 유사도 값 하나뿐이며 통과 여부는 임계값이 결정한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 값을 높이면 FMR이 내려가고 FNMR이 올라가며, 낮추면 정반대가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 다룬 대로 어느 지점을 택할지는 보안 요구 수준과 사용자 마찰의 균형 문제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;금융 거래 인증과 사내 출입 관리가 같은 모델을 쓰면서도 다른 값을 설정하는 이유가 여기에 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임계값은 자체 수집한 운영 데이터의 스코어 분포를 보고 정해야 하며 논문 값을 옮겨오면 안 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인구 구성이나 촬영 환경이 다르면 같은 모델이라도 분포가 이동하기 때문이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;갤러리가 커지면 임계값을 다시 잡아야 한다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2부에서 다룬 대로 1:N 검색의 오탐은 갤러리 크기에 비례해 증가한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1:1 인증에 적합했던 임계값을 그대로 두면 갤러리가 커질수록 오탐이 늘어난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 등록자 수가 증가할 때마다 목표 FPIR을 다시 설정하고 임계값을 조정해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동시에 갤러리 전체와 벡터를 비교하는 연산량도 선형으로 증가한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수십만 규모를 넘어가면 근사 최근접 이웃(ANN) 검색이나 벡터 데이터베이스 도입을 검토하게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 시점부터 얼굴인식은 모델 문제가 아니라 검색 인프라 문제로 성격이 바뀐다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;학습 데이터와 벤치마크는 이미 절반이 사용 불가다&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;MS-Celeb-1M은 2019년에 내려갔고 파생본만 남았다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MS-Celeb-1M은 2016년 마이크로소프트가 공개한 약 10만 신원 1천만 장 규모의 데이터셋이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인터넷에서 수집한 유명인 사진이라는 설명이었으나, 유명인의 정의가 넓어 언론인과 활동가와 학자가 다수 포함되어 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마이크로소프트는 2019년 6월 이 데이터셋을 웹사이트에서 내렸고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이낸셜 타임스 질의에 연구 챌린지가 종료되었기 때문이라고 답했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원본이 내려간 뒤에도 정제본은 여러 저장소를 통해 계속 유통되고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금 논문이 인용하는 MS1MV2는 85K 신원 5.8M 장이고, InsightFace가 정제한 MS1M은 93K 신원 5.1M 장이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;둘 다 철회된 원본의 파생본이므로 이 사실을 알고 다뤄야 한다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;철회되지 않은 최대 공개 학습 셋 Glint360K&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Glint360K는 MS-Celeb-1M과 Celeb-500K를 병합한 뒤 자동 정제를 거친 데이터셋이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정제는 사전학습된 ArcFace 모델을 이용해 클래스 내부와 클래스 사이의 노이즈를 걸러내는 방식으로 수행되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모든 이미지는 RetinaFace가 예측한 5점 랜드마크로 112 곱하기 112 크기에 맞춰 전처리되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최종 규모는 17,091,657장 360,232 신원이며 2021년 InsightFace 팀이 공개했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;철회되지 않은 것 중에서는 가장 큰 공개 학습 셋으로 평가되며, 2021년 이후의 오픈소스 체크포인트 상당수가 여기서 학습되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 원본 계보에 MS-Celeb-1M이 포함되어 있다는 점은 그대로 남는다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;4M 신원 260M 장 규모의 WebFace260M과 정제본 WebFace42M&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;WebFace260M은 현재 공개된 얼굴인식 데이터셋 중 최대 규모로 노이즈 포함 4M 신원 260M 장이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유명인 이름 목록은 MS1M에서 가져온 100만 명과 IMDB에서 수집한 300만 명으로 구성되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 이름으로 검색 엔진에서 이미지를 내려받는 방식으로 수집되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CAST라는 자가학습 기반 정제 파이프라인을 거친 결과가 WebFace42M으로 2M 신원 42M 장이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정제 후 노이즈 비율은 10퍼센트 미만이며, 코사인 유사도 0.95를 넘는 중복은 제거되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학계와 산업계의 데이터 격차를 좁히는 시도로 평가되며 최근 대형 모델들의 기본 학습 셋이 되었다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;LFW는 변별력을 잃었고 MegaFace는 철회되었다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LFW는 오랫동안 표준 벤치마크였으나 상위 모델들이 모두 99.5퍼센트를 넘기면서 포화되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞의 표에서 보듯 손실 함수가 달라도 LFW 수치는 0.4퍼센트 안에 몰려 순위를 가르지 못한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정면에 가까운 사진 위주라 자세와 나이 변화 같은 실제 난점을 반영하지 못한다는 한계도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;100만 장 규모의 distractor를 쓰던 MegaFace는 현재 철회되어 배포되지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 MegaFace 수치를 인용한 자료는 재현이 불가능한 실험을 근거로 삼고 있는 셈이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;벤치마크 역시 데이터셋과 마찬가지로 사용 가능 여부를 먼저 확인해야 하는 상황이다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;IJB-B와 IJB-C가 표준 자리를 물려받은 이유&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;IJB-B는 1,845 신원의 정지영상 21.8K장과 7,011개 영상에서 추출한 55K 프레임으로 구성된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1:1 검증에 positive pair 10,270개와 negative pair 800만 개를 사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;IJB-C는 그 확장판으로 3,500 신원, 31K 이미지, 117K 프레임을 담고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;positive pair 19,557개와 negative pair 15,638,932개를 쓰므로 FMR 1e-6 같은 극단적 조건에서 성능을 측정할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 규모의 negative pair가 있어야 실제 서비스가 쓰는 임계값 영역을 평가할 수 있다는 점이 LFW와의 결정적 차이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;InsightFace가 운영하는 MFR-Ongoing은 여기에 마스크, 아동, 다인종 테스트 셋을 더해 조건별로 나눠 본다.&lt;/p&gt;
&lt;h3 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #BB742B 8px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span&gt;&lt;b&gt;상업적으로 쓸 수 있는 공개 데이터셋은 사실상 없다&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;상업적으로 쓸 수 있는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGsEuz/dJMcajpypv3/hQYbdXUaWjbnKq25XS3yy0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGsEuz/dJMcajpypv3/hQYbdXUaWjbnKq25XS3yy0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGsEuz/dJMcajpypv3/hQYbdXUaWjbnKq25XS3yy0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGsEuz%2FdJMcajpypv3%2FhQYbdXUaWjbnKq25XS3yy0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;335&quot; data-filename=&quot;상업적으로 쓸 수 있는.jpeg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;WebFace260M, VGGFace2, CASIA-WebFace, CelebA는 모두 연구 전용이거나 동일 조건 배포 라이선스다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MS-Celeb-1M과 MegaFace는 배포 자체가 중단된 상태다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 컴플라이언스 검토에서 데이터 출처와 촬영 동의 여부를 물으면 답할 수 있는 공개 데이터셋이 거의 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제를 우회하는 접근으로 마이크로소프트 리서치가 파라메트릭 얼굴 모델로 렌더링 한 DigiFace-1M이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;11만 신원 122만 장의 합성 이미지이며 실제 사람을 촬영하지 않으므로 동의 문제가 애초에 성립하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;상업 제품을 만든다면 라이선스가 명시된 데이터를 직접 확보하거나 합성 데이터를 검토해야 하며, 이 논의는 10부에서 다시 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;나가며&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;얼굴 인식은 정답 좌표를 맞히는 문제가 아니라 같은 사람끼리 가깝고 다른 사람끼리 먼 공간을 만드는 문제다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;학습 때 본 적 없는 사람을 처리해야 하므로 출력은 라벨이 아니라 임베딩 벡터가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;손실 함수의 계보는 샘플 간 비교에서 분류 기반 각도 마진으로 옮겨왔고, 이 전환이 성능을 결정적으로 끌어올렸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SphereFace, CosFace, ArcFace는 마진을 넣는 위치만 다른 하나의 식으로 정리되며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최근에는 마진을 이미지 품질에 따라 조절하는 방향으로 이동하고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임계값과 갤러리 운영은 모델이 아니라 서비스가 결정하는 영역이고, 학습 데이터는 철회와 라이선스 문제로 선택지가 크게 좁아져 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 정지 영상 한 장이라는 전제를 버리고, 시간축을 따라 움직이는 입술을 어떻게 표현하고 모델링할지를 다룬다.&lt;/p&gt;
&lt;h2 style=&quot;box-sizing: border-box; border-right-width: 0px; border-top-width: 0px; border-left: #6DABE4 10px solid; border-bottom: #FFD8D8 0px solid; line-height: 1.7; margin-right: 0px; padding: 3px 5px 3px 10px;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span&gt;&lt;b&gt;참고 자료&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;손실 함수&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;F. Schroff, D. Kalenichenko, J. Philbin, &quot;FaceNet: A Unified Embedding for Face Recognition and Clustering&quot;, CVPR 2015.&lt;/li&gt;
&lt;li&gt;Y. Wen et al., &quot;A Discriminative Feature Learning Approach for Deep Face Recognition&quot;, ECCV 2016. center loss.&lt;/li&gt;
&lt;li&gt;W. Liu et al., &quot;SphereFace: Deep Hypersphere Embedding for Face Recognition&quot;, CVPR 2017.&lt;/li&gt;
&lt;li&gt;H. Wang et al., &quot;CosFace: Large Margin Cosine Loss for Deep Face Recognition&quot;, CVPR 2018.&lt;/li&gt;
&lt;li&gt;J. Deng, J. Guo, N. Xue, S. Zafeiriou, &quot;ArcFace: Additive Angular Margin Loss for Deep Face Recognition&quot;, CVPR 2019, arXiv:1801.07698. 통합 마진 식, 각도 통계, ablation 표.&lt;/li&gt;
&lt;li&gt;M. Kim, A. K. Jain, X. Liu, &quot;AdaFace: Quality Adaptive Margin for Face Recognition&quot;, CVPR 2022 (Oral), arXiv:2204.00964.&lt;/li&gt;
&lt;li&gt;F. Boutros et al., &quot;ElasticFace: Elastic Margin Loss for Deep Face Recognition&quot;, CVPRW 2022. 마진 하이퍼파라미터 선택 문제 정리.&lt;/li&gt;
&lt;li&gt;X. An et al., &quot;Partial FC: Training 10 Million Identities on a Single Machine&quot;, ICCVW 2021.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;학습 데이터셋&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Y. Guo et al., &quot;MS-Celeb-1M: A Dataset and Benchmark for Large-Scale Face Recognition&quot;, ECCV 2016. 2019년 6월 배포 중단.&lt;/li&gt;
&lt;li&gt;X. An et al., Glint360K. 17,091,657장 360,232 신원. MS-Celeb-1M과 Celeb-500K 병합 정제.&lt;/li&gt;
&lt;li&gt;Z. Zhu et al., &quot;WebFace260M: A Benchmark Unveiling the Power of Million-Scale Deep Face Recognition&quot;, CVPR 2021. CAST 정제 파이프라인 및 WebFace42M.&lt;/li&gt;
&lt;li&gt;G. Bae et al., &quot;DigiFace-1M: 1 Million Digital Face Images for Face Recognition&quot;, WACV 2023.&lt;/li&gt;
&lt;li&gt;&quot;Investigating the Impact of Inclusion in Face Recognition Training Data on Individual Face Identification&quot;, arXiv:2001.03071. MS-Celeb-1M 철회 경위 정리.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;벤치마크&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;C. Whitelam et al., &quot;IARPA Janus Benchmark-B Face Dataset&quot;, CVPRW 2017.&lt;/li&gt;
&lt;li&gt;B. Maze et al., &quot;IARPA Janus Benchmark-C: Face Dataset and Protocol&quot;, ICB 2018.&lt;/li&gt;
&lt;li&gt;InsightFace, Masked Face Recognition Challenge 리포트 (InsightFace 트랙 및 WebFace260M 트랙), ICCVW 2021.&lt;/li&gt;
&lt;li&gt;InsightFace, MFR-Ongoing 벤치마크. Mask, Children, Multi-Racial 테스트셋 포함.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;국내 용례 확인 자료&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;이스트소프트 AI PLUS Tech Blog, 「메트릭러닝 기반 안경 검색 서비스 개발기」. 메트릭 러닝, 임베딩 벡터, 클래스 중심, margin값 표기 확인.&lt;/li&gt;
&lt;li&gt;「얼굴 인식 알고리즘 조합에 따른 성능 비교 분석 연구」, KCI 등재. 코사인 유사도 및 임베딩 벡터 표기.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>ML+DL/Vision AI</category>
      <category>AdaFace</category>
      <category>ArcFace</category>
      <category>CosFace</category>
      <category>Glint360K</category>
      <category>WebFace260M</category>
      <category>각도마진</category>
      <category>메트릭러닝</category>
      <category>얼굴인식</category>
      <category>얼굴임베딩</category>
      <category>코사인유사도</category>
      <author>Vagabund.Gni</author>
      <guid isPermaLink="true">https://gnidinger.tistory.com/1371</guid>
      <comments>https://gnidinger.tistory.com/entry/%EC%96%BC%EA%B5%B4-%EC%9E%84%EB%B2%A0%EB%94%A9-%EC%A2%8C%ED%91%9C%EA%B0%80-%EC%95%84%EB%8B%88%EB%9D%BC-%EA%B1%B0%EB%A6%AC%EB%A5%BC-%EB%B0%B0%EC%9A%B4%EB%8B%A4-%EC%96%BC%EA%B5%B4%EC%9D%B8%EC%8B%9D%EA%B3%BC-%EC%83%9D%EC%B2%B4%EC%9D%B8%EC%A6%9D-4#entry1371comment</comments>
      <pubDate>Thu, 6 Aug 2026 14:38:30 +0900</pubDate>
    </item>
  </channel>
</rss>