Mặc dù giá thành rẻ và công nghệ dễ dàng tiếp cận, nhưng cộng đồng mạng cũng không dễ bị lừa.
Dựa trên bài viết được đăng trên Arstechnica của nhà báo công nghệ, tiến sĩ khoa học máy tính Timothy B. Lee.
Deepfake là một loại công nghệ sử dụng mạng thần kinh nhân tạo đa lớp để giả dạng khuôn mặt của ai đó trong một video. Người ta dễ dàng sử dụng công nghệ này cho mục đích xấu và nó ngày càng trở nên phổ biến hơn. Nhiều bài viết đã cảnh báo cộng đồng về tác động tiêu cực của deepfake lên xã hội.
Nhưng chúng ta không đi sâu vào đó. Thay vào đó, chúng ta sẽ tìm hiểu sâu hơn về cách hoạt động của loại công nghệ này: Phần mềm deepfake hoạt động như thế nào? Có khó sử dụng? Và quan trọng nhất là khả năng giả dạng của nó tốt đến đâu?
Tôi đã nghĩ rằng cách tốt nhất để trả lời những câu hỏi này là tự khám phá thế giới deepfake. Tôi đã dành vài ngày để nghiên cứu phần mềm deepfake cùng với một ngân sách 1.000 USD để thuê máy chủ điện toán đám mây để nghiên cứu. Và sau vài tuần, kết quả là đây: tôi đã thay thế khuôn mặt của Mark Zuckerberg trong video chất vấn trước Quốc hội Mỹ bằng khuôn mặt của Phó Chỉ huy Data (do Brent Spiner thủ vai) trong bộ phim Star Trek: The Next Generation. Tôi đã chi ra tổng cộng 552 USD cho sản phẩm này.
Đoạn video trên không hoàn hảo, nhiều chi tiết của Data bị mất và toàn bộ khuôn mặt vẫn trông rất giả. Tuy nhiên, điều đáng ngạc nhiên là tôi, một người không có kinh nghiệm, đã có thể dễ dàng tạo ra một đoạn video giả dạng khuôn mặt người khác trong một khoảng thời gian ngắn và với chi phí tương đối thấp. Chúng ta có lý do để tin rằng trong tương lai, loại công nghệ này sẽ trở nên tốt hơn, nhanh hơn và rẻ hơn nhiều.
Trong bài viết này, tôi sẽ đưa bạn vào cuộc hành trình khám phá thế giới deepfake mà tôi đã trải qua, giải thích các bước cần thiết để tạo ra một đoạn video giả dạng khuôn mặt. Điều này bao gồm cách hoạt động của công nghệ này và những hạn chế của nó.
Deepfake đòi hỏi máy tính mạnh và cơ sở dữ liệu lớn
Cụm từ Deepfake xuất phát từ mạng thần kinh nhân tạo đa lớp (deep neural networks). Trong những năm gần đây, các nhà nghiên cứu trong lĩnh vực công nghệ thông tin đã khám phá ra rằng mạng thần kinh nhân tạo trở nên mạnh mẽ hơn với mỗi lớp thần kinh được thêm vào. Để tạo ra một mạng thần kinh nhân tạo đa lớp, ta cần một cơ sở dữ liệu lớn và một máy tính mạnh mẽ.
Do đó, để tạo ra đoạn video trên, tôi đã phải thuê một hệ thống máy ảo sử dụng bốn card đồ họa đắt tiền. Tuy nhiên, ngay cả với máy tính mạnh như vậy, việc huấn luyện mạng thần kinh với một lượng dữ liệu lớn vẫn mất đến một tuần.
Ngoài ra, tôi cũng cần phải thu thập rất nhiều hình ảnh khuôn mặt của Mark Zuckerberg và Data. Mặc dù đoạn clip chỉ dài 38 giây, nhưng để tạo ra nó cần một lượng video với mặt của cả hai đối tượng rất lớn. Mục đích là để máy tính có đủ dữ liệu để huấn luyện. Tôi đã thu thập mười bốn video từ bộ phim Star Trek: The Next Generation với mặt của Data và chín video với Mark Zuckerberg. Video của Zuckerberg bao gồm các bài phát biểu và một số phỏng vấn, cũng như một đoạn anh ấy nướng thịt trong sân sau nhà.

Tôi đã đưa tất cả các video này vào iMovie và cắt đi những phần không có mặt của cả hai. Tôi cũng đã cắt bớt những video quá dài. Phần mềm deepfake cần không chỉ là nhiều hình ảnh mà còn cần là nhiều hình ảnh khác nhau. Nó cần thấy khuôn mặt từ nhiều góc độ, với nhiều biểu hiện và trong các điều kiện ánh sáng khác nhau.
Một đoạn video phát biểu dài một tiếng của Mark Zuckerberg có thể chỉ tương đương với thời lượng năm phút của nó, bởi vì trong suốt 60 phút, cảnh quay đều có góc độ giống nhau, điều kiện ánh sáng và biểu hiện. Vì vậy, hàng giờ video đã bị cắt xuống còn chín phút cho Data và bảy phút cho Mark Zuckerberg.
Faceswap: Công cụ deepfake tối ưu nhất
Đã đến lúc sử dụng Faceswap. Ban đầu, tôi dùng DeepFaceLab và tạo ra video khá cơ bản. Nhưng khi tôi chia sẻ lên subreddit SFWdeepfakes, nhiều người khuyên tôi nên sử dụng Faceswap vì tính năng nhiều hơn, khả năng ghi dữ liệu tốt hơn và hỗ trợ trực tuyến. Vậy nên tôi chuyển sang sử dụng Faceswap theo gợi ý của họ.
Faceswap có thể chạy trên Linux, Windows và Mac. Nó bao gồm tất cả công cụ cần thiết để tạo video deepfake, từ việc nhập video gốc đến xuất video hoàn thiện. Mặc dù cách sử dụng hơi phức tạp, nhưng may mắn là có hướng dẫn chi tiết, giải thích từng bước của quá trình. Hướng dẫn được viết bởi Matt Tora, nhà phát triển của Faceswap, người đã hỗ trợ tôi rất nhiều khi chúng tôi trò chuyện trên Discord của Deepfake.

Faceswap yêu cầu card đồ họa mạnh mẽ, nên tôi đã thuê máy Linux ảo từ một nhà cung cấp điện toán đám mây. Ban đầu tôi dùng máy với card Nvidia K80 và sau đó nâng cấp lên máy với hai card, sau đó là bốn card Nvidia T4 Tensor Core. Quá trình này tốn 552 USD trong hai tuần.
Theo Matt Tora, card đồ họa tốt nhất cho deepfake hiện nay là Nvidia GTX 1070 và 1080 với ít nhất 8 GB bộ nhớ. Mặc dù có thể mua card như vậy với vài trăm đô, nhưng hiệu suất không thể so sánh với bốn card tôi sử dụng. Tuy nhiên, kết quả cuối cùng là tương tự nhau.
Quá trình sử dụng Faceswap bao gồm ba bước:
- Phân tách ảnh: chia video thành từng khung hình, xác định khuôn mặt ở từng khung và cắt chúng ra.
- Huấn luyện: Sử dụng ảnh đã thu thập để huấn luyện một mạng thần kinh đa lớp - mục tiêu cuối cùng là thay thế hình ảnh khuôn mặt của một người bằng hình ảnh khuôn mặt của người khác có cùng tư thế, biểu cảm và ánh sáng phản xạ.
- Chuyển đổi: Sử dụng mạng đã được huấn luyện từ bước trên và áp dụng vào video để tạo ra một video deepfake. Sau khi mạng thần kinh được huấn luyện thành công, nó có thể được sử dụng trên bất kỳ video nào có sự xuất hiện của hai đối tượng đã được sử dụng.

Thời gian thực hiện ba bước này khác biệt và tùy thuộc vào người dùng và máy tính. Phần mềm trích xuất thông tin từ video chỉ mất vài phút, nhưng việc kiểm tra kết quả có thể mất vài tiếng. Phần mềm ghi nhận tất cả các khuôn mặt trong khung hình, bất kể đó có phải là khuôn mặt của đối tượng muốn thay đổi hay không. Để đạt được kết quả tốt, người dùng phải kiểm tra từng hình ảnh đã cắt và loại bỏ những khuôn mặt không phải của đối tượng hoặc nhận dạng sai.
Ngược lại, quá trình huấn luyện khá dễ thiết lập và không cần sự giám sát nhiều. Tuy nhiên, nó mất rất nhiều ngày, thậm chí vài tuần để máy tính cho ra kết quả tốt. Tôi bắt đầu huấn luyện mẫu của mình từ ngày 7 tháng 12 đến ngày 13 tháng 12. Nếu tôi để nó chạy thêm một tuần, chất lượng video deepfake của tôi có thể cải thiện hơn nữa. Điều này là khi tôi sử dụng một máy ảo mạnh mẽ có bốn card đồ họa cao cấp. Nếu bạn sử dụng một máy tính cá nhân với card đồ họa yếu hơn, việc huấn luyện một mẫu tốt có thể mất nhiều tuần.
Bước cuối cùng là chuyển đổi, không tốn nhiều thời gian và không đòi hỏi nhiều ở người dùng cũng như máy tính. Một khi bạn đã có một mạng thích hợp, việc xuất ra video deepfake có thể chỉ mất chưa đầy một phút.
Cách hoạt động của chương trình deepfake là gì?
Trước khi đi vào quá trình mò mẫm Faceswap của tôi, hãy để tôi giải thích về cách hoạt động của công nghệ này trước.
Tính chất cốt lõi của Faceswap, cũng như các phần mềm deepfake khác, chính là một bộ mã tự động. Bộ mã chính là một mạng thần kinh đã được huấn luyện, nhiệm vụ của nó là nén hình ảnh đầu vào và tạo ra một hình ảnh tương tự. Mặc dù có vẻ không hữu ích, nhưng đó lại là thành phần quan trọng để tạo ra video thay mặt.

Bộ mã tự động được cấu trúc như hai cái phễu được nối lại với nhau. Một phía chứa bộ mã hóa và chịu trách nhiệm thu thập và nén hình ảnh thành biến số - với phần mềm Faceswap tôi sử dụng, nó tạo ra 1024 giá trị số thực dấu phẩy động 32-bit. Phía còn lại của bộ mã chứa bộ giải mã. Nhiệm vụ của nó là giải nén các biến đã nén, được gọi là 'không gian ẩn', và mở rộng chúng để giống với hình ảnh ban đầu.
Bằng cách hạn chế dữ liệu mà bộ mã hóa truyền cho bộ giải mã, phần mềm yêu cầu cả hai bên phát triển ra một bộ biến chứa các chi tiết của khuôn mặt. Bạn có thể hiểu bộ mã hóa như một thuật toán nén không hoàn chỉnh - nó cố gắng lưu lại càng nhiều thông tin về khuôn mặt vào một không gian lưu trữ hạn chế. Không gian ẩn này phải ghi lại chi tiết như hướng mà đối tượng đối mặt, mắt mở hoặc nhắm, và liệu đối tượng có nhăn mặt hay mỉm cười.
Tuy nhiên, điều quan trọng nhất là bộ mã hóa cần ghi lại sự thay đổi về diện mạo của một người theo thời gian. Nó không cần ghi lại các chi tiết cố định như màu mắt hay dáng mũi. Nếu tất cả hình ảnh của Mark Zuckerberg đều có màu mắt xanh, bộ giải mã sẽ tự động tạo ra màu mắt xanh, mà không cần bộ mã hóa ghi nó vào không gian ẩn với dung lượng hạn chế. Điều này là một yếu tố quan trọng trong quá trình tạo ra video deepfake.
Mọi thuật toán sử dụng để huấn luyện mạng thần kinh cần các biện pháp đánh giá hiệu suất để có thể cải thiện. Trong nhiều trường hợp, người ta sử dụng phương pháp gọi là huấn luyện có giám sát, nơi người dùng cung cấp câu trả lời chuẩn cho từng phần của dữ liệu huấn luyện. Nhưng bộ mã tự động khác, vì nó chỉ cố gắng tái tạo lại dữ liệu đã nhập vào, nên phần mềm huấn luyện có thể tự đánh giá hiệu suất hiện tại. Đây được gọi là huấn luyện không giám sát.
Giống như mọi mạng thần kinh khác, bộ mã của Faceswap sử dụng thuật toán truy ngược để huấn luyện. Thuật toán này cung cấp một hình ảnh cụ thể cho mạng và tìm các pixel trong đầu ra không trùng khớp với đầu vào. Sau đó, nó tính toán xem dây thần kinh nào ở lớp cuối tạo ra nhiều lỗi nhất và điều chỉnh nó để cải thiện kết quả.
Hệ thống sẽ truy ngược lại lỗi về lớp trước, để điều chỉnh lại các dây thần kinh một lần nữa. Quá trình này lặp đi lặp lại cho đến khi mọi giá trị của mạng thần kinh, cả ở đầu ra và đầu vào, đã được điều chỉnh. Sau khi hoàn thành với một hình ảnh, thuật toán huấn luyện sẽ đưa cho mạng thần kinh hình ảnh khác và quá trình lặp lại. Để bộ mã tự động hoạt động tốt, quá trình truy ngược có thể lặp lại hàng nghìn lần.

Phần mềm deepfake hoạt động bằng cách huấn luyện hai bộ biên mã song song, một cho mặt gốc và một cho mặt ghép. Mỗi bộ chỉ phân tích bức hình của một người và được luyện để tái tạo hình ảnh tương tự với hình ảnh đã nhập vào.
Tuy nhiên, điều quan trọng là cả hai mạng thần kinh đều chia sẻ một bộ mã hóa duy nhất. Chỉ có bộ giải mã, chứa các dây thần kinh nằm ở bên phải, là riêng biệt và mỗi bộ nhằm tái tạo hai khuôn mặt khác nhau. Các dây thần kinh ở bên trái, vì chúng chia sẻ cùng một giá trị, nên sẽ bị ảnh hưởng bởi cả hai quá trình. Khi mạng phân tích mặt của Zuckerberg, nó cũng tạo ra thay đổi trong mạng phân tích mặt của Data. Mỗi lần mạng phân tích mặt Data, mạng Zuckerberg sẽ kế thừa những thay đổi đã được thực hiện để hoàn thiện sản phẩm cuối cùng.
Kết quả là, cả hai bộ biên mã đều sở hữu bộ giải mã có khả năng đọc dữ liệu của cả hai khuôn mặt, của Zuckerberg và Data. Mục tiêu ở đây là để bộ giải mã sử dụng chung phương pháp để ghi lại thông tin về các khía cạnh như góc khuôn mặt và vị trí chân mày, cho dù đó là ảnh của Zuckerberg hay Data. Điều này có nghĩa là sau khi nén hình ảnh thành biến, có thể sử dụng một trong hai bộ giải mã để phát triển sản phẩm cuối cùng.

Sau khi đã luyện hai bộ biên mã như trên, bước tiếp theo khá đơn giản: bạn chỉ cần thay đổi bộ giải mã. Bạn mã hóa hình ảnh của Mark Zuckerberg nhưng lại sử dụng bộ giải mã của Data để tạo ra mặt giả. Kết quả, bạn sẽ có được một bức hình của Data với biểu cảm khuôn mặt của Mark Zuckerberg.
Nên nhớ rằng không gian ẩn chỉ ghi lại thông tin về thần sắc, bao gồm biểu cảm, hướng mặt và vị trí chân mày, trong khi các chi tiết của khuôn mặt như màu mắt hoặc dáng mũi được tái tạo ở bộ giải mã. Điều này có nghĩa là nếu mã hóa khuôn mặt của Mark Zuckerberg và sử dụng bộ giải mã của Data, bạn sẽ có một khuôn mặt với các chi tiết cố định của Data nhưng lại có thần sắc của Mark Zuckerberg.
Nếu áp dụng kỹ thuật này cho các khung hình video của Mark Zuckerberg, bạn sẽ tạo ra một video hoàn toàn mới với mặt của Data thực hiện các hành động của Zuckerberg - như cười, nháy mắt hoặc quay đầu.
Đáng chú ý, đây là một tình huống tương đối đối xứng. Khi luyện mạng mã hóa mặt của Zuckerberg và giải mã thành mặt của Data, bạn cũng có thể mã hóa mặt của Data và biến nó thành mặt của Zuckerberg. Trong Faceswap, có một tùy chọn gọi là 'swap model' (đổi mô hình) mà bạn có thể chọn để phần mềm thay đổi bộ giải mã. Như vậy, thay vì thay mặt Data vào mặt Zuckerberg, bạn có thể thực hiện ngược lại. Kết quả là video sẽ được tạo ra.
Dữ liệu để huấn luyện mạng neural
Thực tế, tạo ra kết quả ưng ý bằng phần mềm deepfake không dễ dàng.
Sau khi thu thập dữ liệu, tôi đã tách ra các phần có mặt của Data và Mark Zuckerberg từ video.
Công cụ giải nén gặp phải nhiều sai sót, và tôi phải dành nhiều thời gian để sửa chúng.
Hiện tại, Faceswap có mười thuật toán khác nhau hỗ trợ các kích thước ảnh và yêu cầu sức mạnh máy tính khác nhau.
Ban đầu tôi sử dụng thuật toán DFL-SAE, nhưng sau đó chuyển sang Villain vì lỗi của DFL-SAE.
Sau sáu ngày, mạng deepfake của tôi đã có thể giả dạng khuôn mặt khá tốt.
Phần mềm Faceswap được thiết kế với tính linh hoạt cao, cho phép người dùng luyện mạng bằng cả giao diện đồ họa và dòng lệnh.
Đánh giá về công nghệ deepfake?
Trong quá trình luyện tập, Faceswap hiển thị một chỉ số gọi là độ mất chi tiết, cho thấy khả năng tái tạo khuôn mặt của Zuckerberg và Data.
Khả năng chuyển đổi mặt Zuckerberg thành mặt Data của bộ giải mã Data là điều quan trọng nhất. Chúng ta chỉ có thể đánh giá qua kết quả cuối cùng và quyết định tính thực giả của nó.
Đoạn video cho thấy mức độ giả dạng khuôn mặt ở bốn thời điểm khác nhau, với sự cải thiện rõ rệt qua thời gian luyện tập.
Sau ba ngày luyện tập, tôi đã chia sẻ một đoạn video deepfake, nhận được phản hồi tiêu cực từ bậc thầy đồ họa của Arstechnica.
'Nhìn chung rất tệ', anh ta nhận xét, mô tả nó là 'không thuyết phục. Tôi chưa bao giờ thấy một video deepfake nào mà trông nó không giả cả.'
Tôi đồng ý với quan điểm của anh ta. Faceswap thực hiện việc thay mặt Zuckerberg bằng Data một cách nhanh chóng, nhưng có dấu hiệu rõ ràng của sự chỉnh sửa trong đoạn video.
Trong một số trường hợp, khuôn mặt Data không khớp hoàn toàn với đầu của Zuckerberg, và việc chỉnh sửa video để làm cho chúng khớp nhau là cần thiết.
Mặc dù Faceswap tạo ra cấu trúc khuôn mặt của Data rất chuẩn, nhưng vẫn còn những vấn đề về việc tái tạo chi tiết khuôn mặt ở mức độ cao.
Các thuật toán deepfake gặp khó khăn trong việc tái tạo chi tiết ở độ phân giải cao, nhưng có thể sẽ có những tiến bộ trong tương lai để vượt qua giới hạn này.
Mặc dù deepfake không dựa trên mạng nghịch tạo (GAN) nhưng tiến triển trong công nghệ này cũng đóng vai trò quan trọng trong sự phát triển của deepfake.
Các nghiên cứu gần đây về mạng nghịch tạo đã tạo ra khả năng sản xuất hình ảnh có độ phân giải cao, mở ra nhiều tiềm năng cho sự phát triển của deepfake.
Mặc dù deepfake không phụ thuộc vào GAN, nhưng các tiến triển trong công nghệ này cung cấp cơ sở cho sự phát triển của deepfake trong tương lai.
Nhận biết và ngăn chặn deepfake
Sự bùng nổ của deepfake đã làm nảy sinh nhiều lo ngại. Trước đây, chúng ta có thể tin tưởng vào nội dung của video, nhưng giờ đây với sự xuất hiện của deepfake, chúng ta phải luôn cẩn trọng với sự chính xác của các tấm ảnh và video.
Trải qua thử nghiệm, tôi nhận thấy rõ những hạn chế của deepfake hiện tại. Để tạo ra một khuôn mặt ảo thực tế, cần rất nhiều kiến thức và công sức.

Tuy nhiên, các công cụ như Faceswap chỉ thay đổi khuôn mặt mà không thay đổi các phần khác của cơ thể, điều này có thể là yếu điểm giúp nhận biết deepfake.
Tuy nhiên, các giới hạn của deepfake có thể sẽ biến mất trong tương lai. Trong vài năm tới, có thể sẽ có các phần mềm tạo ra deepfake không thể phân biệt được với video thật.
Trong trường hợp đó, chúng ta cần nhớ rằng đã có nhiều phương tiện truyền thông khác có thể được làm giả từ trước. Chúng ta cần phải dùng chứng cứ để xác minh tính xác thực của thông tin.
Mọi người cần nhận ra khả năng làm giả của các phương tiện truyền thông và tìm kiếm chứng cứ xác thực từ bên ngoài để đảm bảo tính chính xác.
Một lần dối gạt là đủ
Cũng như với video, công chúng sẽ học cách nghi ngờ mọi thứ họ thấy trong các video, tìm hiểu về nhân chứng và kiểm tra tính xác thực của chúng.

Sự lạm dụng deepfake trong video khiêu dâm không chỉ là sai trái mà còn là sự khinh rẻ nhân phẩm. Tuy nhiên, việc kết luận ngay rằng một video là deepfake có thể chưa hẳn là đúng.
Trên mạng, tấm ảnh ghép mặt người nổi tiếng vào cơ thể khỏa thân không làm người xem kết luận ngay rằng đó là hình ảnh thật, bởi chúng ta biết Photoshop có thể làm điều đó.
Sự xuất hiện của video khiêu dâm deepfake, dù không tích cực, cũng không làm mất đi chứng cứ và tính xác thực nếu công chúng học được cách kiểm tra và nghi ngờ tính thật giả của video.
Matt Tora, nhà phát triển Faceswap, tin rằng việc phát triển phần mềm deepfake là tất yếu và hy vọng rằng việc giáo dục công chúng về khả năng và giới hạn của nó sẽ giúp nâng cao nhận thức và phản ứng của xã hội.
Dần dần, công chúng có thể sẽ mất đi sự tin tưởng vào video, nhưng việc này cũng có thể đẩy mạnh sự nâng cao nhận thức và cẩn trọng khi tiếp cận thông tin trên mạng.
