You are on page 1of 2

Các hàm kích hoạt:

1.Hàm nhận một mẫu dữ liệu (trong trường hợp này là một vector ngẫu nhiên) và
sử dụng Generator để tạo dữ liệu giả mạo. Sau đó, nó sử dụng Discriminator để
kiểm tra xem dữ liệu giả mạo có được xem xét là thật (không độc hại) hay giả (độc
hại) dựa trên ngưỡng 0.5. Hàm trả về thông báo về tính độc hại của dữ liệu.

def detect_malicious_data(data):

fake_data = generator.predict(np.random.randn(1, 100)) # Tạo dữ liệu giả mạo

result = discriminator.predict(fake_data) # Kiểm tra dữ liệu giả mạo bằng Discriminator

if result > 0.5: # Nếu Discriminator xác định dữ liệu là thật (không độc hại)

return "Dữ liệu không độc hại" else: return "Dữ liệu độc hại"

2.Sử dụng hàm detect_malicious_data để kiểm tra một mẫu dữ liệu cụ thể (trong
trường hợp này, một vector ngẫu nhiên). Kết quả kiểm tra được in ra để xác định
liệu dữ liệu có độc hại hay không.

data_to_check = np.random.randn(1, 100) # Dữ liệu cần kiểm

tra result = detect_malicious_data(data_to_check) print(result)

3.Xây dựng Generator dưới dạng một mô hình tuần tự sử dụng models.Sequential().
Sử dụng lớp Dense để tạo các lớp ẩn. Lớp đầu tiên có 128 nơ-ron với hàm kích hoạt
ReLU. Lớp tiếp theo có 784 nơ-ron với hàm kích hoạt sigmoid, đại diện cho ảnh
kích thước 28x28. Cuối cùng, sử dụng lớp Reshape để chuyển đổi đầu ra thành kích
thước ảnh 28x28.

def build_generator():

generator = models.Sequential([ layers.Dense(128, input_dim=100,


activation='relu'),

layers.Dense(784, activation='sigmoid'), layers.Reshape((28, 28)) ])

return generator
4.Xây dựng Discriminator dưới dạng một mô hình tuần tự. Sử dụng lớp Flatten để
chuyển đổi ảnh 28x28 thành một vector 1 chiều. Lớp tiếp theo có 128 nơ-ron với
hàm kích hoạt ReLU. Lớp cuối cùng có một nơ-ron với hàm kích hoạt sigmoid để
đưa ra xác suất là ảnh thật hay giả.

def build_discriminator():

discriminator = models.Sequential([ layers.Flatten(input_shape=(28, 28)),

layers.Dense(128, activation='relu'), layers.Dense(1, activation='sigmoid') ])

return discriminator

5.Import TensorFlow để làm việc với mạng nơ-ron. Import các lớp và models từ
TensorFlow.keras để xây dựng Generator và Discriminator. Import thư viện numpy
để làm việc với dữ liệu số học.

import tensorflow as tf from tensorflow.keras import layers,


models import numpy as np
Enter

6.Gọi các hàm xây dựng Generator và Discriminator để tạo các đối tượng mô hình.
generator = build_generator() discriminator = build_discriminator()

You might also like