我正在使用卷积神经网络,在使用顺序神经网络时,我在训练数据时遇到了问题。使用顺序是不可能获得最好的分数吗?
from numpy import array
from numpy import reshape
import numpy as np
def model_CNN(X_train,Y_train,X_test,Y_test):
model = Sequential()
model.add(Conv1D(filters=512, kernel_size=32, padding='same', kernel_initializer='normal', activation='relu', input_shape=(256, 1)))
model.add(Conv1D(filters=512, kernel_size=32, padding='same', kernel_initializer='normal', activation='relu'))
model.add(Dropout(0.2)) # This is the dropout layer. It's main function is to inactivate 20% of neurons in order to prevent overfitting
model.add(Conv1D(filters=256, kernel_size=32, padding='same', kernel_initializer='normal', activation='relu'))
model.add(Dropout(0.2))
model.add(Conv1D(filters=256, kernel_size=32, padding='same', kernel_initializer='normal', activation='relu'))
model.add(Flatten())
optimizer = keras.optimizers.SGD(lr=0.01, momentum=0.5)
model.compile(loss='binary_crossentropy', optimizer=optimizer, metrics=['accuracy'])
convolutional_model = model.fit(X_train, Y_train, epochs=5,batch_size=64,verbose=1, validation_data=(X_test, Y_test))
print(convolutional_model.score(X_train,Y_train))
model.summary()
return …Run Code Online (Sandbox Code Playgroud) 我已经构建了一个 LSTM 模型(见下文)并对其进行了训练。当我进行二元分类时,我的损失函数是二元交叉熵。训练 y 数据是一组 0 和 1。
当我运行时,model.predict(x_test_scaled)我得到一组值范围在 0 和 1 之间的单个系列。我猜这是一个概率,但它是输出 = 0 的概率还是输出 = 1 的概率?
model = Sequential()
model.add(LSTM(units=512, input_shape = (X_train.shape[1],X_train.shape[2]), return_sequences=True))
model.add(Dropout(0.3))
model.add(LSTM(units=512, return_sequences=False))
model.add(Dropout(0.3))
model.add(Dense(264), activation = 'tanh')
model.add(Dense(1))
Run Code Online (Sandbox Code Playgroud) 我正在使用 Java Spring 和 Oracle DB 创建一个应用程序。
在应用程序中,我想生成一个唯一且有序且没有间隙的主键值:1,2,3,4,5而不是1,2,5,7,8,9.
我曾一度用于max(id) + 1获取 id 的最大值以及下一个/当前事务的 id。但是我知道在多个用户或多个会话并发的情况下它并不完美。
我尝试过使用序列,但即使使用标签,ORDER它仍然可能会产生间隙,从而可能导致事务失败。
REATE SEQUENCE num_seq
START WITH 1
INCREMENT BY 1
ORDER NOCACHE NOCYCLE;
Run Code Online (Sandbox Code Playgroud)
我需要有无间隙的值作为要求,但是我不确定在多个用户/多个会话的情况下如何可能。
我有一个模型,它有多个条件并返回一个值,该值取决于下一个预测。假设给定 A 和 B 的时间序列,模型返回 C 变量的值,该值又用于估计 D 的值。在沿着新 A 和 B 的下一次迭代中,模型还使用估计的 D 作为输入:
df = data.frame(A = sample(-5:5, 10000, replace = TRUE),
B = sample(-5:5, 10000, replace = TRUE),
C = 0,
D=0)
for(i in 1:nrow(df)){
if (df$A[i]< 0 & df$B[i]>0){
df$C[i]<-df$B[i]
} else if(df$A[i]==0 & df$B[i]==0 ){
df$C[i]<-0
} else {
df$C[i]<-df$A[i]+df$B[i]-df$D[i]
}
df$D[i+1]<-ifelse(df$D[i]<=-df$C[i],0,df$D[i]+df$C[i]) # this is a cumulative sum-reset function
}
Run Code Online (Sandbox Code Playgroud)
尽管代码运行良好,但由于我有数十万个观察结果,所以速度非常慢。我将不胜感激任何可以加快速度的建议。
sequential ×4
python ×2
database ×1
keras ×1
loops ×1
numpy ×1
oracle ×1
performance ×1
primary-key ×1
r ×1
sql ×1
tensorflow ×1