Deepfakes는 무엇이며 어떻게 생성합니까?

Deepfakes에 대한 원스톱 설명자 및 Faceswap으로 쉽게 만들 수 있습니다.

인공지능은 더 이상 ‘인공’이 아닙니다. 이 시대는 그것을 우리 인간에게 위험할 정도로 가까이 두었습니다.

그것은 제안하고, 쓰고, 예술을 창조할 수 있으며, 이제는 살아있는 것처럼 보이고 이야기합니다.

이것은 우리가 활용해야 하는 이 영역의 가장 최근 개발 중 하나입니다. 그러나 이것 또한 우리가 주의해야 할 것입니다.

딥페이크란?

딥페이크(Deepfake)는 딥러닝(Deep Learning)과 페이크(Fake)를 합성한 신조어다. 간단히 말해서 전문적으로 조작되거나 심하게 위조된 미디어라고 가정할 수도 있습니다.

Wikipedia에 따르면 이것은 기존 이미지, 오디오 또는 비디오를 수정하여 완전히 다른 사람을 나타내는 합성 미디어라고도 합니다.

일반적으로 딥페이크는 저명한 인물이 하지 않았을 말을 하는 것처럼 보이게 합니다.

제작자의 기술에 따라 진짜인지 가짜인지 구분하기가 매우 어려울 수 있습니다.

딥페이크는 어떻게 작동합니까?

간단히 말해서 원본 비디오의 일부(예: 얼굴)가 유사하게 보이는 가짜로 대체됩니다. 그런 경우에는 이 ‘오바마’ 영상처럼 페이스스왑이라고도 할 수 있습니다.

그러나 비디오에만 국한되지 않고 딥페이크 이미지와 오디오도 있습니다(그리고 가까운 미래에 딥페이크 VR 아바타도 가능할 것입니다).

출처: 디즈니

이러한 속임수 뒤에 숨겨진 작업 방법론은 주로 응용 프로그램과 기본 알고리즘에 따라 다릅니다.

Disney의 이 연구 논문에 따르면 인코더-디코더, GAN(Generative Adversarial Networks), 기하학 기반 딥페이크 등 다양한 기술이 있습니다.

그러나 다음 섹션은 Facewap과의 작동 방식에 크게 영향을 받습니다. 이것은 여러 알고리즘이 예상된 결과를 얻을 수 있도록 허용하는 무료 오픈 소스 Deepfake 소프트웨어입니다.

딥페이크를 생성하는 세 가지 주요 프로세스는 추출, 교육 및 전환입니다.

#1. 추출

이것은 미디어 샘플, 원본 및 교체용 샘플에서 관심 있는 주제 영역을 감지하고 짜내는 것입니다.

하드웨어 기능에 따라 효율적인 탐지를 위한 많은 알고리즘이 있을 수 있습니다.

예를 들어 Faceswap에는 CPU 또는 GPU 효율성에 따라 추출, 정렬 및 마스킹을 위한 몇 가지 옵션이 있습니다.

추출은 단순히 전체 비디오에서 얼굴을 식별합니다. 모든 얼굴의 중요한 특징(눈, 코, 턱 등)을 정렬합니다. 마지막으로 마스킹은 관심 영역을 제외한 이미지의 다른 요소를 차단합니다.

평범한 하드웨어에서 리소스 집약적인 알고리즘을 선택하면 수용 가능한 결과를 렌더링하는 데 실패하거나 상당히 오랜 시간이 걸릴 수 있으므로 출력에 걸리는 전체 시간은 옵션을 선택하는 데 중요합니다.

하드웨어 외에도 선택은 입력 비디오가 손 움직임 또는 안경과 같은 얼굴 장애물로 인해 어려움을 겪는지 여부와 같은 매개변수에 따라 달라집니다.

결국 필요한 요소는 추출에 몇 가지 잘못된 긍정이 있기 때문에 출력을 청소(나중에 설명)하는 것입니다.

결국 원본 영상과 가짜 영상(교환에 사용)에 대해 추출이 반복됩니다.

#2. 훈련

이것이 딥페이크를 만드는 핵심입니다.

교육은 인코더와 디코더로 구성된 신경망에 관한 것입니다. 여기에서 추출된 데이터를 알고리즘에 공급하여 나중에 변환할 모델을 만듭니다.

인코더는 입력을 벡터 표현으로 변환하여 알고리즘이 디코더에서 수행한 것처럼 벡터에서 얼굴을 다시 생성하도록 훈련합니다.

그런 다음 신경망은 반복을 평가하고 손실 점수를 할당하여 원본과 비교합니다. 이 손실 값은 알고리즘이 계속 반복됨에 따라 시간이 지남에 따라 떨어지고 미리보기가 허용될 때 중지합니다.

  3 프런트 엔드 개발을 위한 최고의 JavaScript 프레임워크/라이브러리

교육은 시간이 많이 걸리는 프로세스이며 일반적으로 수행하는 반복과 입력 데이터의 품질에 따라 출력이 향상됩니다.

예를 들어 Faceawap은 원본 이미지와 스왑 이미지 각각 최소 500개를 제안합니다. 또한 이미지는 서로 크게 달라야 하며 최상의 재현을 위해 고유한 조명에서 가능한 모든 각도를 포함해야 합니다.

훈련 길이에 따라 일부 응용 프로그램(예: Faceswap)을 사용하면 훈련을 중간에 중지하거나 나중에 계속할 수 있습니다.

특히 출력의 포토리얼리즘은 알고리즘의 효율성과 입력에 따라 달라집니다. 그리고 하나는 다시 하드웨어 기능에 의해 제한됩니다.

#삼. 변환

딥페이크 생성의 마지막 챕터입니다. 변환 알고리즘에는 소스 비디오, 훈련된 모델 및 소스 정렬 파일이 필요합니다.

결과적으로 색상 보정, 마스크 유형, 원하는 출력 형식 등과 관련된 몇 가지 옵션을 변경할 수 있습니다.

이러한 몇 가지 옵션을 구성한 후 최종 렌더링을 기다리면 됩니다.

언급했듯이 Faceswap은 많은 알고리즘과 함께 작동하며 허용 가능한 faceswap을 얻기 위해 사이에서 재생할 수 있습니다.

그게 다야?

아니요!

이것은 단지 딥페이크 기술의 하위 집합인 얼굴 교환이었습니다. 문자 그대로의 의미와 마찬가지로 얼굴 교환은 딥페이크가 무엇을 할 수 있는지에 대한 희미한 아이디어를 제공하기 위해 얼굴의 일부만 대체합니다.

신뢰할 수 있는 교환을 위해 다음과 같이 오디오(음성 복제로 더 잘 알려짐)와 프레임에 맞는 모든 것을 포함하여 전체 체격을 모방해야 할 수도 있습니다.

그래서 여기서 무슨 일이 일어나고 있습니까?

일어날 수 있는 일은 딥페이크 제작자가 비디오를 직접 촬영하고(지난 몇 초에 표시된 대로) 모건 프리먼의 합성 음성과 대화를 립싱크하고 머리를 교체한 것입니다.

결론적으로, 그것은 얼굴 교환에 관한 것이 아니라 오디오를 포함한 전체 프레임에 관한 것입니다.

무엇을 믿어야 할지 두려울 정도로 YouTube에서 수많은 딥페이크를 찾을 수 있습니다. 그리고 효율적인 그래픽 카드가 장착된 강력한 컴퓨터만 있으면 시작할 수 있습니다.

그러나 완벽함은 달성하기 어려우며 딥페이크의 경우 특히 그렇습니다.

청중을 오도하거나 열광시킬 수 있는 설득력 있는 딥페이크를 위해서는 기술이 필요하며 비디오의 1~2분을 처리하는 데 며칠에서 몇 주가 소요됩니다.

흥미롭게도 이것이 현재 이러한 알고리즘이 얼마나 가능한지입니다. 그러나 이러한 응용 프로그램이 저사양 하드웨어에서 얼마나 효과적일 수 있는지를 포함하여 미래가 어떻게 될지는 정부 전체를 불안하게 만들었습니다.

그러나 향후 영향에 대해서는 다루지 않을 것입니다. 대신 소소한 재미로 직접 해보는 방법을 확인해보자.

(기본) Deepfake 동영상 만들기

이 딥페이크 앱 목록에서 밈을 만들기 위한 많은 애플리케이션을 확인할 수 있습니다.

그중 하나는 우리가 사용할 Faceswap입니다.

진행하기 전에 확인해야 할 몇 가지 사항이 있습니다. 첫째, 다양한 감정을 묘사하는 대상에 대한 양질의 비디오가 있어야 합니다. 다음으로 대상으로 전환할 소스 비디오가 필요합니다.

또한 Faceswap을 진행하기 전에 브라우저나 게임과 같이 그래픽 카드를 많이 사용하는 모든 애플리케이션을 닫으십시오. VRAM(비디오 RAM)이 2기가 미만인 경우 특히 그렇습니다.

1단계: 얼굴 추출

이 프로세스의 첫 번째 단계는 비디오에서 얼굴을 추출하는 것입니다. 이를 위해 Input Dir에서 대상 비디오를 선택하고 추출을 위한 Output Dir을 나열해야 합니다.

또한 검출기, 얼라이너, 마스커 등 몇 가지 옵션이 있습니다. 각각에 대한 설명은 Faceawap FAQ에 있으며 여기에서 정보를 다시 해시하는 것은 낭비입니다.

  나중에 보낼 문자 메시지를 예약하는 방법

출처: Faceswap FAQ

일반적으로 더 나은 이해와 적절한 출력을 위해 문서를 검토하는 것이 좋습니다. 그러나 Faceswap에는 특정 옵션 위로 마우스를 가져가면 찾을 수 있는 유용한 텍스트가 있습니다.

간단히 말해서 보편적인 방법은 없으며 최고의 알고리즘으로 시작하여 설득력 있는 딥페이크를 만들기 위해 성공적으로 작업해야 합니다.

컨텍스트를 위해 다른 모든 옵션을 그대로 유지하면서 Mtcnn(감지기), Fan(정렬기) 및 Bisenet-Fp(마스커)를 사용했습니다.

원래는 S3Fd(최상의 검출기)와 몇 가지 다른 마스크를 결합하여 시도했습니다. 그러나 내 2Gb Nvidia GeForce GTX 750Ti는 정면을 견딜 수 없었고 프로세스가 반복적으로 실패했습니다.

마지막으로, 나는 그것을 통해 볼 수 있도록 내 기대와 설정을 낮췄습니다.

적절한 감지기, 마스커 등을 선택하는 것 외에도 설정 > 설정 구성에는 하드웨어를 돕기 위해 개별 설정을 추가로 조정하는 데 도움이 되는 몇 가지 추가 옵션이 있습니다.

간단히 말해서 가능한 가장 낮은 Batch-Size, Input Size 및 Output Size를 선택하고 LowMem 등을 확인합니다. 이러한 옵션은 보편적으로 사용할 수 없으며 특정 섹션을 기반으로 합니다. 또한 도움말 텍스트는 최상의 옵션을 선택하는 데 도움이 됩니다.

이 도구는 얼굴을 추출하는 작업을 훌륭하게 수행하지만 출력 프레임은 모델을 훈련(나중에 설명)하는 데 필요한 것보다 훨씬 더 많은 것을 가질 수 있습니다. 예를 들어, 모든 얼굴(비디오에 둘 이상이 있는 경우)과 대상 얼굴이 전혀 없는 일부 부적절한 감지가 있습니다.

이로 인해 데이터 세트가 정리됩니다. 출력 폴더를 확인하고 자신을 삭제하거나 Faceswap 정렬을 사용하여 도움을 받을 수 있습니다.

앞서 언급한 도구를 사용하면 여러 면을 순서대로 정렬하여 필요한 면을 하나의 폴더에 모으고 나머지는 삭제할 수 있습니다.

참고로 소스 비디오에 대한 추출도 반복해야 합니다.

2단계: 모델 훈련

이것은 딥페이크를 만드는 데 가장 긴 과정입니다. 여기서 입력 A는 대상 면을 나타내고 입력 B는 소스 면에 관한 것입니다. 게다가 Model Dir은 트레이닝 파일이 저장되는 곳입니다.

여기서 가장 중요한 옵션은 트레이너입니다. 개별 확장 옵션에는 많은 옵션이 있습니다. 그러나 내 하드웨어에 효과가 있었던 것은 구성 설정이 가장 낮은 Dfl-H128 및 경량 트레이너입니다.

다음은 배치 크기입니다. 배치 크기가 클수록 전체 훈련 시간은 줄어들지만 더 많은 VRAM을 소비합니다. 반복은 출력에 고정된 영향을 미치지 않으며 충분히 높은 값을 설정하고 미리 보기가 허용되면 교육을 중지해야 합니다.

미리 설정된 간격으로 시간 경과를 만드는 것을 포함하여 몇 가지 설정이 더 있습니다. 그러나 나는 최소한으로 모델을 훈련시켰다.

3단계: 원본으로 교체

이것은 딥페이크 생성의 마지막 위업입니다.

이 작업은 일반적으로 시간이 많이 걸리지 않으며 다양한 옵션을 사용하여 원하는 출력을 빠르게 얻을 수 있습니다.

위의 이미지에 표시된 대로 변환을 시작하기 위해 선택해야 하는 몇 가지 옵션입니다.

입력 및 출력 디렉토리, 모델 디렉토리 등과 같은 대부분의 옵션은 이미 논의되었습니다. 한 가지 중요한 것은 대상 비디오의 정렬 파일(.fsa)을 참조하는 Alignments입니다. 추출하는 동안 입력 디렉토리에 생성됩니다.

특정 파일이 이동되지 않은 경우 정렬 필드를 비워 둘 수 있습니다. 그렇지 않으면 파일을 선택하고 다른 옵션으로 이동할 수 있습니다. 그러나 이전에 추출을 정리한 경우 정렬 파일을 정리해야 합니다.

  브라우저 목업을 위한 8가지 아름다운 스크린샷 도구

이를 위해 이 미니 도구는 도구 > 정렬에 있습니다.

작업 섹션에서 Remove-Faces를 선택하여 시작하고 원본 정렬 파일과 정리된 대상 면 폴더를 선택한 다음 오른쪽 하단에서 Alignments를 클릭합니다.

이렇게 하면 최적화된 얼굴 폴더와 일치하는 수정된 정렬 파일이 생성됩니다. 교체하려는 대상 비디오에 이것이 필요하다는 것을 기억하십시오.

몇 가지 추가 구성에는 색상 조정 및 마스크 유형이 포함됩니다. 색상 조정은 마스크 블렌딩을 지시하며 몇 가지를 시도하고 미리보기를 확인하고 최적의 옵션을 선택할 수 있습니다.

마스크 종류가 더 중요합니다. 이것은 다시 귀하의 기대치와 사용 가능한 하드웨어에 따라 다릅니다. 일반적으로 입력 비디오 특성도 고려해야 합니다. 예를 들어 Vgg-Clear는 장애물이 없는 정면 얼굴에서 잘 작동하는 반면 Vgg-Obstructed는 손짓, 안경 등과 같은 장애물에서도 잘 작동합니다.

다음으로 작성기는 원하는 출력에 따라 몇 가지 선택 사항을 제시합니다. 예를 들어 비디오 렌더링을 위해 Ffmpeg를 선택합니다.

전반적으로 성공적인 딥페이크의 핵심은 몇 가지 출력을 미리 보고 시간 가용성과 하드웨어의 성능에 따라 최적화하는 것입니다.

딥페이크의 응용

좋은 것, 나쁜 것, 그리고 위험한 딥페이크 응용 프로그램이 있습니다.

좋은 것은 더 큰 참여를 위해 실제로 있었던 사람들이 역사 수업을 재창조하는 것입니다.

또한 텍스트에서 비디오를 생성하기 위해 온라인 학습 플랫폼에서 사용되고 있습니다.

그러나 가장 큰 수혜자 중 하나는 영화 산업이 될 것입니다. 여기에서 실제 리드가 스턴트를 수행하는 모습을 쉽게 상상할 수 있습니다. 심지어 스턴트맨이 목숨을 걸고 있는 경우에도 마찬가지입니다. 또한 다국어 영화 제작이 그 어느 때보다 쉬워질 것입니다.

불행하게도 나쁜 사람들이 많이 있습니다. 현재까지 가장 큰 딥페이크 응용 프로그램은 사실 96%(이 Deeptrace 보고서에 따라)가 포르노 업계에서 유명인의 얼굴을 포르노 배우로 바꾸는 것입니다.

또한 딥페이크는 ‘표준’ 비연예인 여성에 대해서도 무기화됩니다. 일반적으로 이러한 피해자는 딥페이크 생성에 사용되는 고품질 사진이나 비디오를 소셜 미디어 프로필에 가지고 있습니다.

또 다른 무서운 애플리케이션은 비싱, 일명 보이스 피싱입니다. 그러한 경우 중 하나는 영국에 기반을 둔 회사의 CEO가 독일 모회사의 ‘CEO’의 명령으로 243,000달러를 이체했지만 나중에 그것이 실제로 딥페이크 전화였음을 알게 된 것입니다.

그러나 더 위험한 것은 딥페이크로 전쟁을 유발하거나 항복을 요구하는 것입니다. 가장 최근의 시도는 우크라이나 대통령 Volodymyr Zelenskyy가 자신의 군대와 국민에게 진행 중인 전쟁에서 항복하라고 말하는 것을 보았습니다. 그러나 이번에는 수준 이하의 영상으로 진실이 드러났다.

결론적으로 많은 딥페이크 애플리케이션이 있으며 이제 막 시작되었습니다.

이것은 백만 달러짜리 질문으로 이어집니다…

딥페이크는 합법인가요?

이것은 주로 지역 행정에 달려 있습니다. 그러나 허용되는 것과 허용되지 않는 것을 포함하여 잘 정의된 법률은 아직 보이지 않습니다.

그럼에도 불구하고 분명한 것은 딥페이크를 사용하는 목적, 즉 의도에 따라 다르다는 것입니다. 교환 대상을 화나게 하지 않고 누군가를 즐겁게 하거나 교육하려는 경우 거의 해가 없습니다.

반면에 악성 애플리케이션은 관할권에 관계없이 법으로 처벌해야 합니다. 또 다른 회색 영역은 적절한 고려가 필요한 저작권 침해입니다.

그러나 다시 한 번 말하지만, 합법적인 딥페이크 애플리케이션에 대해 지방 정부 기관에 확인해야 합니다.

눈을 떼지 마십시오!

Deepfkaes는 인공 지능을 활용하여 누구나 말하게 만듭니다.

인터넷에서 보는 어떤 것도 믿지 마십시오. 이것이 우리가 행동해야 할 첫 번째 조언입니다. 수많은 잘못된 정보가 있으며 그 효능은 증가하고 있습니다.

그리고 그것들을 만드는 것이 더 쉬울 것이기 때문에 딥페이크를 식별하는 방법을 배울 때입니다.