This is an automated email from the ASF dual-hosted git repository.

zkaoudi pushed a commit to branch rel/1.0.0-rc5
in repository https://gitbox.apache.org/repos/asf/incubator-wayang.git


The following commit(s) were added to refs/heads/rel/1.0.0-rc5 by this push:
     new 6980739e updating Tensorflow versioning
6980739e is described below

commit 6980739e9b7c59ae4454ed19a341232843764fcc
Author: Zoi Kaoudi <[email protected]>
AuthorDate: Fri Feb 21 14:09:02 2025 +0100

    updating Tensorflow versioning
---
 wayang-api/wayang-api-scala-java/pom.xml           |  2 +-
 .../java/operators/JavaTextFileSourceTest.java     |  5 +-
 wayang-platforms/wayang-tensorflow/pom.xml         |  2 +-
 .../tensorflow/model/TensorflowModelTest.java      | 81 ++++++++++++++++++++++
 .../wayang/tests/TensorflowIntegrationIT.java      |  2 +-
 .../org/apache/wayang/tests/TensorflowIrisIT.java  |  9 +--
 6 files changed, 92 insertions(+), 9 deletions(-)

diff --git a/wayang-api/wayang-api-scala-java/pom.xml 
b/wayang-api/wayang-api-scala-java/pom.xml
index d26d130f..b4c206a1 100644
--- a/wayang-api/wayang-api-scala-java/pom.xml
+++ b/wayang-api/wayang-api-scala-java/pom.xml
@@ -34,7 +34,7 @@
 
     <properties>
         <java-module-name>org.apache.wayang.api</java-module-name>
-        <tensorflow.version>0.4.2</tensorflow.version>
+        <tensorflow.version>1.0.0-rc.2</tensorflow.version>
     </properties>
 
     <dependencyManagement>
diff --git 
a/wayang-platforms/wayang-java/src/test/java/org/apache/wayang/java/operators/JavaTextFileSourceTest.java
 
b/wayang-platforms/wayang-java/src/test/java/org/apache/wayang/java/operators/JavaTextFileSourceTest.java
index 4f68f23d..7dacdb6b 100644
--- 
a/wayang-platforms/wayang-java/src/test/java/org/apache/wayang/java/operators/JavaTextFileSourceTest.java
+++ 
b/wayang-platforms/wayang-java/src/test/java/org/apache/wayang/java/operators/JavaTextFileSourceTest.java
@@ -34,6 +34,7 @@ import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.Ignore;
 
 import java.io.File;
 import java.io.IOException;
@@ -97,7 +98,7 @@ public class JavaTextFileSourceTest extends 
JavaExecutionOperatorTestBase {
         }
     }
 
-    // @Test
+    @Ignore
     /**
      * Requires a local HTTP Server running, in the project root ...
      *
@@ -128,7 +129,7 @@ public class JavaTextFileSourceTest extends 
JavaExecutionOperatorTestBase {
         }
     }
 
-    @Test
+    @Ignore
     public void testReadRemoteFileHTTPS() throws IOException, 
URISyntaxException {
         final String testFileURL = 
"https://kamir.solidcommunity.net/public/ecolytiq-sustainability-profile/profile2.ttl";;
 
diff --git a/wayang-platforms/wayang-tensorflow/pom.xml 
b/wayang-platforms/wayang-tensorflow/pom.xml
index 9062841a..5d8be096 100644
--- a/wayang-platforms/wayang-tensorflow/pom.xml
+++ b/wayang-platforms/wayang-tensorflow/pom.xml
@@ -36,7 +36,7 @@
     <properties>
         <maven.compiler.source>11</maven.compiler.source>
         <maven.compiler.target>11</maven.compiler.target>
-        <tensorflow.version>0.4.2</tensorflow.version>
+        <tensorflow.version>1.0.0-rc.2</tensorflow.version>
     </properties>
 
     <dependencies>
diff --git 
a/wayang-platforms/wayang-tensorflow/src/test/java/org/apache/wayang/tensorflow/model/TensorflowModelTest.java
 
b/wayang-platforms/wayang-tensorflow/src/test/java/org/apache/wayang/tensorflow/model/TensorflowModelTest.java
new file mode 100644
index 00000000..e1e03588
--- /dev/null
+++ 
b/wayang-platforms/wayang-tensorflow/src/test/java/org/apache/wayang/tensorflow/model/TensorflowModelTest.java
@@ -0,0 +1,81 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.wayang.tensorflow.model;
+
+import org.apache.wayang.basic.model.DLModel;
+import org.apache.wayang.basic.model.op.*;
+import org.apache.wayang.basic.model.op.nn.CrossEntropyLoss;
+import org.apache.wayang.basic.model.op.nn.Linear;
+import org.apache.wayang.basic.model.op.nn.Sigmoid;
+import org.apache.wayang.basic.model.optimizer.GradientDescent;
+import org.apache.wayang.basic.model.optimizer.Optimizer;
+import org.junit.Test;
+import org.junit.Ignore;
+import org.tensorflow.ndarray.FloatNdArray;
+import org.tensorflow.ndarray.IntNdArray;
+import org.tensorflow.ndarray.NdArrays;
+import org.tensorflow.ndarray.Shape;
+import org.tensorflow.op.Ops;
+import org.tensorflow.types.TFloat32;
+import org.tensorflow.types.TInt32;
+public class TensorflowModelTest {
+    @Ignore
+    public void test() {
+        FloatNdArray x = NdArrays.ofFloats(Shape.of(6, 4))
+                .set(NdArrays.vectorOf(5.1f, 3.5f, 1.4f, 0.2f), 0)
+                .set(NdArrays.vectorOf(4.9f, 3.0f, 1.4f, 0.2f), 1)
+                .set(NdArrays.vectorOf(6.9f, 3.1f, 4.9f, 1.5f), 2)
+                .set(NdArrays.vectorOf(5.5f, 2.3f, 4.0f, 1.3f), 3)
+                .set(NdArrays.vectorOf(5.8f, 2.7f, 5.1f, 1.9f), 4)
+                .set(NdArrays.vectorOf(6.7f, 3.3f, 5.7f, 2.5f), 5)
+                ;
+        IntNdArray y = NdArrays.vectorOf(0, 0, 1, 1, 2, 2);
+        Op l1 = new Linear(4, 64, true);
+        Op s1 = new Sigmoid();
+        Op l2 = new Linear(64, 3, true);
+        s1.with(l1.with(new Input(Input.Type.FEATURES)));
+        l2.with(s1);
+        DLModel model = new DLModel(l2);
+        Op criterion = new CrossEntropyLoss(3);
+        criterion.with(
+                new Input(Input.Type.PREDICTED, Op.DType.FLOAT32),
+                new Input(Input.Type.LABEL, Op.DType.INT32)
+        );
+        Op acc = new Mean(0);
+        acc.with(new Cast(Op.DType.FLOAT32).with(new Eq().with(
+                new ArgMax(1).with(new Input(Input.Type.PREDICTED, 
Op.DType.FLOAT32)),
+                new Input(Input.Type.LABEL, Op.DType.INT32)
+        )));
+        Optimizer optimizer = new GradientDescent(0.02f);
+        try (TensorflowModel tfModel = new TensorflowModel(model, criterion, 
optimizer, acc)) {
+            System.out.println(tfModel.getOut().getName());
+            tfModel.train(x, y, 100, 6);
+            TFloat32 predicted = tfModel.predict(x);
+            Ops tf = Ops.create();
+            org.tensorflow.op.math.ArgMax<TInt32> argMax = 
tf.math.argMax(tf.constantOf(predicted), tf.constant(1), TInt32.class);
+            final TInt32 tensor = argMax.asTensor();
+            System.out.print("[ ");
+            for (int i = 0; i < tensor.shape().size(0); i++) {
+                System.out.print(tensor.getInt(i) + " ");
+            }
+            System.out.println("]");
+        }
+        System.out.println();
+    }
+}
diff --git 
a/wayang-tests-integration/src/test/java/org/apache/wayang/tests/TensorflowIntegrationIT.java
 
b/wayang-tests-integration/src/test/java/org/apache/wayang/tests/TensorflowIntegrationIT.java
index 3a7f0364..7adf7e6e 100644
--- 
a/wayang-tests-integration/src/test/java/org/apache/wayang/tests/TensorflowIntegrationIT.java
+++ 
b/wayang-tests-integration/src/test/java/org/apache/wayang/tests/TensorflowIntegrationIT.java
@@ -30,8 +30,8 @@ import org.apache.wayang.core.api.WayangContext;
 import org.apache.wayang.core.plan.wayangplan.WayangPlan;
 import org.apache.wayang.java.Java;
 import org.apache.wayang.tensorflow.Tensorflow;
-import org.junit.Ignore;
 import org.junit.Test;
+import org.junit.Ignore;
 
 import java.util.ArrayList;
 import java.util.Arrays;
diff --git 
a/wayang-tests-integration/src/test/java/org/apache/wayang/tests/TensorflowIrisIT.java
 
b/wayang-tests-integration/src/test/java/org/apache/wayang/tests/TensorflowIrisIT.java
index eb428ffe..f8c08b75 100644
--- 
a/wayang-tests-integration/src/test/java/org/apache/wayang/tests/TensorflowIrisIT.java
+++ 
b/wayang-tests-integration/src/test/java/org/apache/wayang/tests/TensorflowIrisIT.java
@@ -24,22 +24,23 @@ import org.apache.wayang.basic.model.op.nn.CrossEntropyLoss;
 import org.apache.wayang.basic.model.op.nn.Linear;
 import org.apache.wayang.basic.model.op.nn.Sigmoid;
 import org.apache.wayang.basic.model.optimizer.Adam;
-import org.apache.wayang.basic.model.optimizer.GradientDescent;
 import org.apache.wayang.basic.model.optimizer.Optimizer;
 import org.apache.wayang.basic.operators.*;
 import org.apache.wayang.core.api.WayangContext;
 import org.apache.wayang.core.plan.wayangplan.Operator;
 import org.apache.wayang.core.plan.wayangplan.WayangPlan;
 import org.apache.wayang.core.util.Tuple;
-import org.apache.wayang.core.util.WayangCollections;
 import org.apache.wayang.java.Java;
 import org.apache.wayang.tensorflow.Tensorflow;
-import org.junit.Ignore;
 import org.junit.Test;
+import org.junit.Ignore;
 
 import java.net.URI;
 import java.net.URISyntaxException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Random;
 
 /**
  * Test the Tensorflow integration with Wayang.

Reply via email to