java.lang.NoClassDefFoundError:org/nd4j/linalg/api/ops/impl/transforms/floating/Histogram

java.lang.NoClassDefFoundError:org/nd4j/linalg/api/ops/impl/transforms/floating/Histogram,java,deep-learning,deeplearning4j,dl4j,nd4j,Java,Deep Learning,Deeplearning4j,Dl4j,Nd4j,为什么我会出错 java.lang.NoClassDefFoundError: org/nd4j/linalg/api/ops/impl/transforms/floating/Histogram 在尝试设置侦听器时,如gan.setListeners(新的StatsListener(statsStorage))用于 这样的GAN网络(来自的示例代码): 这种类型的错误通常仅在存在不匹配的依赖项版本时发生。确保所有dl4j依赖项(即nd4j、datavec等)都在beta6上。@PaulDub

为什么我会出错

java.lang.NoClassDefFoundError: org/nd4j/linalg/api/ops/impl/transforms/floating/Histogram
在尝试设置侦听器时,如
gan.setListeners(新的StatsListener(statsStorage))用于

这样的GAN网络(来自的示例代码):


这种类型的错误通常仅在存在不匹配的依赖项版本时发生。确保所有dl4j依赖项(即nd4j、datavec等)都在beta6上。@PaulDubs我已经在其中添加了pom.xml详细信息,正如我所说的,将所有依赖项更新到beta6。和注意事项(来自发行说明):将deeplearning4j-ui_2.1x替换为deeplearning4j-ui@PaulDubs将版本更改为beta6后,以前进行过一些矩阵计算broken@PaulDubs在我修复了矩阵计算之后,web ui仍然没有启动;我看不出有什么错误,只是没有悄无声息地开始。
generator = generatorSupplier.get();
        generator.init();

        Layer[] genLayers = generator.getLayers();
        int numGenLayers = genLayers.length;

        discriminator = discriminatorSupplier.provide(updater);
        discriminator.init();

        MultiLayerNetwork ganDiscriminator = discriminatorSupplier.provide(UPDATER_ZERO);
        ganDiscriminator.init();

        Layer[] disLayers = ganDiscriminator.getLayers();
        Layer[] layers = ArrayUtils.addAll(genLayers, disLayers);
        MultiLayerConfiguration genConf = generator.getLayerWiseConfigurations();
        MultiLayerConfiguration disConf = ganDiscriminator.getLayerWiseConfigurations();
        org.deeplearning4j.nn.conf.layers.Layer[] confLayers = new org.deeplearning4j.nn.conf.layers.Layer[layers.length];

        Map<Integer, InputPreProcessor> preProcessors = new HashMap<>();
        for (int i = 0; i < layers.length; i++) {
            confLayers[i] = layers[i].conf().getLayer();
            if (i < numGenLayers) {
                preProcessors.put(i, genConf.getInputPreProcess(i));
            } else {
                preProcessors.put(i, disConf.getInputPreProcess(i - numGenLayers));
            }
        }

        MultiLayerConfiguration ganConf = new NeuralNetConfiguration.Builder()
                .seed(seed)
                .updater(updater)
                .biasUpdater(biasUpdater)
                .optimizationAlgo(optimizer)
                .gradientNormalization(gradientNormalizer)
                .gradientNormalizationThreshold(gradientNormalizationThreshold)
                .activation(Activation.IDENTITY)
                .trainingWorkspaceMode(trainingWorkSpaceMode)
                .inferenceWorkspaceMode(inferenceWorkspaceMode)
                .cacheMode(cacheMode)
                .list(confLayers)
                .inputPreProcessors(preProcessors)
                .build();
        gan = new MultiLayerNetwork(ganConf);
        gan.init();

Exception in thread "main" java.lang.NoClassDefFoundError: org/nd4j/linalg/api/ops/impl/transforms/floating/Histogram
    at org.deeplearning4j.ui.stats.BaseStatsListener.getHistograms(BaseStatsListener.java:766)
    at org.deeplearning4j.ui.stats.BaseStatsListener.onForwardPass(BaseStatsListener.java:267)
    at org.deeplearning4j.ui.stats.BaseStatsListener.onForwardPass(BaseStatsListener.java:257)
    at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.computeGradientAndScore(MultiLayerNetwork.java:2633)
    at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.computeGradientAndScore(MultiLayerNetwork.java:2587)
    at org.deeplearning4j.optimize.solvers.BaseOptimizer.gradientAndScore(BaseOptimizer.java:160)
    at org.deeplearning4j.optimize.solvers.StochasticGradientDescent.optimize(StochasticGradientDescent.java:63)
    at org.deeplearning4j.optimize.Solver.optimize(Solver.java:52)
    at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.fitHelper(MultiLayerNetwork.java:2169)
    at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.fit(MultiLayerNetwork.java:2126)
    at org.deeplearning4j.nn.multilayer.MultiLayerNetwork.fit(MultiLayerNetwork.java:2194)
    at io.skymind.example.GAN.fit(GAN.java:175)
    at io.skymind.example.MnistSimpleGAN.main(MnistSimpleGAN.java:132)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: java.lang.ClassNotFoundException: org.nd4j.linalg.api.ops.impl.transforms.floating.Histogram
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 18 more
       <dependency>
            <groupId>org.deeplearning4j</groupId>
            <artifactId>deeplearning4j-ui_2.10</artifactId>
            <version>1.0.0-beta4</version>
        </dependency> 
<dependency>
        <groupId>org.nd4j</groupId>
        <artifactId>nd4j-native-platform</artifactId>
        <version>1.0.0-beta3</version>
    </dependency>
    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-core</artifactId>
        <version>1.0.0-beta3</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.25</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.7.25</version>
    </dependency>
Exception in thread "main" java.lang.RuntimeException: org.nd4j.shade.jackson.databind.JsonMappingException: Type id handling not implemented for type java.lang.Object (through reference chain: org.deeplearning4j.nn.conf.MultiLayerConfiguration["inputPreProcessors"]->java.util.HashMap["0"])