尝试利用Keras/Tensorflow建立小波神经网络。对于这个神经网络,我应该使用一个小波函数作为我的激活函数。
我尝试通过简单地调用创建一个自定义激活函数来做到这一点。然而,在反向传播方面似乎存在一个问题。
import numpy as np
import pandas as pd
import pywt
import matplotlib.pyplot as plt
import tensorflow as tf
from keras.models import Model
import keras.layers as kl
from keras.layers import Inpu
我在Keras中构建了一个神经网络,以了解4个坐标x,y,z,d (使用d=sqrt(x**2+y**2+z**2))和标量值之间的映射。我的训练集由1500个x,y,z,d值组成,与标量函数的1500个值相关联。我的测试集有500个样本。
我的神经网络产生了正确的数据“趋势”,但不是正确的幅度。下面的图表应该清楚地说明在什么意义上。它们显示了训练和测试集的标量函数的值;在每个图中,显示了原始样本和NN预测。我想问一下如何让神经网络正确地学习振幅,避免在图中清晰可见的‘插值’效果。
from __future__ import division
from tensorflow.keras.la
我试着在tf中建立一个神经网络,作为初学者的挑战,而且我的模型不是很好,很多时候它不会很精确(虽然有时精度是1,但大多数时候不是,即使这样损失也很高。)
所以我有两个问题:
我如何改进这个神经网络?
使用Input作为输入层和使用Dense有什么区别?
以下是代码:
import tensorflow as tf
from tensorflow import keras
model = keras.Sequential()
model.add(tf.keras.Input(shape=(2,)))
#model.add(keras.layers.Dense(2))
model
我用R实现了简单的神经网络,但这是我第一次用Keras实现,所以我希望能给出一些建议。
我在Keras中开发了一个神经网络函数来预测汽车销售(数据集是可用的)。CarSales是因变量。
据我所知,Keras用于开发用于分类目的的神经网络,而不是回归。在我到目前为止看到的所有例子中,输出在0到1之间是有界的。
下面是我开发的代码,您将看到输出使用'sigmoid‘函数:
from tensorflow.python.keras.models import Sequential
from tensorflow.python.keras.layers import Dense
from t
假设我有一个自定义层Node,它继承自keras.layers.Layer,应该表示神经网络中的单个节点。
据我所知,为了在keras中提供一个层,你需要向它传递一个张量,但我想要的语法是这样的:
n1 = Node()
n2 = Node()
n2(n1) # Instead of n2(n1.output) where n1.output is a Tensor
做这样的事情会被认为是不好的做法吗?
我编写了人工神经网络程序来解决凯格尔犬和猫的核问题,但在训练过程中,它显示出loss=nan和较差的精度。我的代码可以在找到
以下是关于错误的详细信息
from tensorflow import keras
# First apply Artificial neural network (ANN)
ann = keras.Sequential([
keras.layers.Flatten(input_shape=(IMG_SIZE, IMG_SIZE, 3)), # Flaten 3d to 1d
keras.layers.Dense(3000, activation=
我试图用keras和tensorflow实现一个二值化的神经网络。以下是我的当前代码:
import tensorflow as tf
from tensorflow import keras
from keras import datasets
from keras.utils.vis_utils import plot_model
from keras.layers import Activation
from keras import backend as K
from keras.utils.generic_utils import get_custom_objects
def
我有几个模型将输入(字嵌入)分类为几个类。我的问题是,我需要分别训练这些模型,并需要将这些模型的输出合并在一起才能得到标签。
为了简单起见,假设只有两种模型:
Model 1: predicts A, B or C
Model 2: predicts D or E
然后,我需要对输入X进行分类,以便得到A、B、C、D和E上的联合概率。
我在Keras/Python中尝试了这段代码,在该代码中,我定义了神经网络并在训练后删除了softmax激活函数:
inputs = tf.keras.Input(shape=dim_in)
x = layers.Dense(dim_out)(inputs)
o