小编Evg*_*pov的帖子

DriverManager在gradle自定义插件的任务中看不到依赖项

我正在编写一些gradle插件,现在我遇到了一个问题,即DriverManager没有看到在buildscript依赖项中定义的JDBC驱动程序:

我有下一个build.gradle文件:

buildscript {
   repositories {
      mavenCentral()
   }
   dependencies {
      classpath("com.h2database:h2:1.4.196")
   }
}
plugins {
   id "someplugin"
}
apply plugin: 'groovy'
Run Code Online (Sandbox Code Playgroud)

当我调用在任务中定义的扩展DefaultTask的命令时

DriverManager.getConnection("jdbc:h2:mem:", "sa", "")
Run Code Online (Sandbox Code Playgroud)

我收到例外

No suitable driver found for jdbc:h2:mem:
Run Code Online (Sandbox Code Playgroud)

当我对这些类进行单元测试时没有问题 - 只有当我调用调用DriverManager.getConnection的插件任务时才会发生这种情况.

我在这里错过了什么?谢谢!

groovy jdbc gradle gradle-plugin

4
推荐指数
1
解决办法
555
查看次数

使用steps_per_epoch参数时,Keras的训练速度极慢

当我steps_per_epoch在model.fit(..)方法中指定参数时,我注意到训练模型的速度会大大降低 。当我指定steps_per_epoch为None(或不使用它)时,纪元的ETA是连续2秒:

9120/60000 [===> ......................................]-ETA:2秒-损失:0.7055-acc:0.7535

当我添加steps_per_epoch参数时,ETA会增加5个小时,并且训练速度变得非常慢:

5/60000 [.....................]-预计到达时间:5:50:00-损失:1.9749-累积: 0.3437

这是可复制的脚本:

import tensorflow as tf
from tensorflow import keras
import time

print(tf.__version__)


def get_model():
    model = keras.Sequential([
        keras.layers.Flatten(input_shape=(28, 28)),
        keras.layers.Dense(128, activation='relu'),
        keras.layers.Dense(10, activation='softmax')
    ])
    model.compile(optimizer='adam',
                  loss='sparse_categorical_crossentropy',
                  metrics=['accuracy'])
    return model


(train_images, train_labels), (test_images, test_labels) = keras.datasets.fashion_mnist.load_data()
train_images = train_images / 255.0

model = get_model()

# Very quick - 2 seconds
start = time.time()
model.fit(train_images, train_labels, epochs=1)
end = time.time()
print("{} seconds", end - start) …
Run Code Online (Sandbox Code Playgroud)

python keras tensorflow

2
推荐指数
1
解决办法
2507
查看次数

标签 统计

gradle ×1

gradle-plugin ×1

groovy ×1

jdbc ×1

keras ×1

python ×1

tensorflow ×1