12

それが私に何を望んでいるのかわかりません。私は使っている

    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-core</artifactId>
        <version>${deeplearning4j.version}</version>
    </dependency>

    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-nlp</artifactId>
        <version>${deeplearning4j.version}</version>
    </dependency>

どこ

<deeplearning4j.version>0.4-rc3.8</deeplearning4j.version>

しかし、私は得ています

Caused by: org.nd4j.linalg.factory.Nd4jBackend$NoAvailableBackendException: null
    at org.nd4j.linalg.factory.Nd4jBackend.load(Nd4jBackend.java:148) ~[nd4j-api-0.4-rc3.7.jar:na]
    at org.nd4j.linalg.factory.Nd4j.initContext(Nd4j.java:4498) ~[nd4j-api-0.4-rc3.7.jar:na]
    ... 53 common frames omitted

Google ワード ベクトル モデルを読み込もうとすると、次のようになります。

@RequestMapping("/loadModel")
public Boolean loadModel(@RequestParam(value="model") String model) {

    Resource resource = appContext.getResource("WEB-INF/word-vector-models/" + model);

    try {
        File modelFile = resource.getFile();

        System.err.println(modelFile.getAbsolutePath());
        WordVectors googleModel = WordVectorSerializer.loadGoogleModel(modelFile, true);
        this.wordVectorsMap.put(model, googleModel);
    } catch (IOException e) {
        e.printStackTrace();
        return false;
    }

    return true;
}
4

1 に答える 1

20

pom ファイルでnd4jバックエンドが指定されていないようです。1 つ持っている必要があり、1 つだけを使用する必要があります (プロファイルを使用しない限り、pom に複数のバックエンドを同時に持たないでください)。現在、バージョン 0.4-rc3.8 では、GPU 非対応の Mac、Windows、および Linux ボックスでnd4j-x86を使用できました。GPU にアクセスできる場合は、nd4j-jcublas-7.x jar のいずれかを使用できますが、Gitter に従って Cuda の大幅な書き換えが行われていることに注意ください

今のところ、

pom.xml の依存関係を設定する方法は次のとおりです。デフォルトでは ((ie mvn clean install)、nd4j-x86 で実行されますが、コードを GPU ボックスにプルするときは、プロファイル名 (so mvn clean install -P cuda) を追加するだけで、バックエンドを簡単に切り替えることができます。

<!-- Platform-dependent backend selection (netlib is default) -->
<profiles>
    <profile>
        <id>cuda</id>
        <dependencies>
            <dependency>
                <groupId>org.nd4j</groupId>
                <artifactId>nd4j-jcublas-${cuda.version}</artifactId>
                <version>${nd4j.version}</version>
            </dependency>
        </dependencies>
    </profile>
    <profile>
        <id>netlib</id>
        <dependencies>
            <dependency>
                <groupId>org.nd4j</groupId>
                <artifactId>nd4j-x86</artifactId>
                <version>${nd4j.version}</version>
            </dependency>
        </dependencies>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>
</profiles>
<!-- end platform-dependent backend selection -->


<dependencies>
<!-- dl4j dependencies -->
    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-core</artifactId>
        <version>${dl4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-ui</artifactId>
        <version>${dl4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-scaleout-api</artifactId>
        <version>${dl4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-scaleout-akka</artifactId>
        <version>${dl4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-scaleout-zookeeper</artifactId>
        <version>${dl4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-nlp</artifactId>
        <version>${dl4j.version}</version>
    </dependency>
    <dependency>
        <groupId>org.deeplearning4j</groupId>
        <artifactId>deeplearning4j-aws</artifactId>
        <version>${dl4j.version}</version>
    </dependency>
    <!-- end dl4j dependencies -->

    <!-- nd4j dependencies -->
    <dependency>
        <groupId>org.nd4j</groupId>
        <artifactId>canova-nd4j-image</artifactId>
        <version>${canova.version}</version>
    </dependency>
    <dependency>
        <groupId>org.nd4j</groupId>
        <artifactId>canova-nd4j-codec</artifactId>
        <version>${canova.version}</version>
    </dependency>
    <!-- end nd4j dependencies -->

    <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-yaml</artifactId>
        <version>${jackson.version}</version>
    </dependency>

    <dependency>
        <groupId>net.java.openjfx.backport</groupId>
        <artifactId>openjfx-78-backport</artifactId>
        <version>1.8.0-ea-b96.1</version>
    </dependency>


    <!-- logging -->
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.7.13</version>
    </dependency>
    <!-- end logging -->


    <dependency>
        <groupId>org.apache.maven.reporting</groupId>
        <artifactId>maven-reporting-api</artifactId>
        <version>2.2.1</version>
    </dependency>
</dependencies>
于 2016-02-19T20:57:29.927 に答える