我在用Tensorflow建造一个GAN。
一开始,我创建了一个生成32x32图像的GAN。
修改模型以添加一个图层以创建128x128图像。
顺便说一句,32x32 GAN G,D的损耗值是可以的,但随着层数和图像尺寸的增加,损耗值很高。
我修改了层和修改了其他超参数以降低损耗,但它仍然很高。
我想知道如何减少G和D的损失。
import os.path
import numpy as np
from keras.models import *
from keras.layers import *
from keras.optimizers import *
from keras.layer
我目前正在尝试TensorFlow和机器学习,作为一个挑战,我决定尝试并在Kaggle网站上编写一个机器学习软件,它可以分析脑部MRI扫描结果,并预测肿瘤是否存在。我用下面的代码这样做了,并开始训练模型。然而,在训练过程中显示的文本显示,没有一个损失值(训练或验证)具有正确的值,并且精确度平坦,或在两个数字之间波动(每次相同的数字)。
我看过其他帖子,但找不到任何能给我提示的东西。我更改了损失函数(从sparse_categorical_crossentropy改为binary_crossentropy)。但这些都不会改变这些值。
import numpy as np # linear alg
我正在构建一个GAN来检测图像中的异常。我在keras上构建了我的模型,因为我只熟悉keras。生成器和鉴别器都是自动编码器,我定义了自己的损失函数。该模型的概念是这样的:该模型仅在正常图像上进行训练,并在正常图像和异常图像上进行测试,由于该模型在训练期间仅看到正常图像,因此它不能像正常图像一样重建出良好的异常图像,因此可以使用较大的重建误差作为异常的指示。使用2个自动编码器的原因是,第二个重建图像将具有比原始输入更大的距离,因此它可以更好地分离异常图像。
我不知道哪里出了问题,但无论我训练多少批,模型都不会收敛。我尝试构建只有一个输出的鉴别器和gan,但它没有改善结果。
# Build mo
我试着训练SRGAN。(超分辨率GAN)然而,不管输入是什么,鉴频器的输出都会收敛到0或1。鉴别器的损失函数
D_loss = 0.5*(D_net(fake) + 1 - D_net(real))
D_net(fake)和D_net(real)都变成0或1。(乙状结肠)
我怎么才能修好它?
for epoch_idx in range(epoch_num):
for batch_idx, data in enumerate(data_loader):
D_net.zero_grad()
#### make real, low, fake
我正在尝试用TensorflowJS制作python版本的Tensorflow的相同示例。不幸的是,当我运行脚本时,我不知道为什么训练时记录的损失值是NaN。
我想要实现的是一个简单的文本分类,它根据训练好的模型返回0或1。这是我正在关注的Python教程
这是我到目前为止已经翻译过的代码:
import * as tf from '@tensorflow/tfjs'
// Load the binding:
//require('@tensorflow/tfjs-node'); // Use '@tensorflow/tfjs-node-gpu&