diff --git a/data/imdb.zip b/data/imdb.zip index 7083413c..dc45d13f 100644 Binary files a/data/imdb.zip and b/data/imdb.zip differ diff --git a/src/TensorFlowNET.Utility/Compress.cs b/src/TensorFlowNET.Utility/Compress.cs index c9fbe4b1..0efe59bd 100644 --- a/src/TensorFlowNET.Utility/Compress.cs +++ b/src/TensorFlowNET.Utility/Compress.cs @@ -3,6 +3,7 @@ using ICSharpCode.SharpZipLib.Tar; using System; using System.IO; using System.IO.Compression; +using System.Linq; using System.Threading; using System.Threading.Tasks; @@ -12,6 +13,9 @@ namespace TensorFlowNET.Utility { public static void UnZip(String gzArchiveName, String destFolder) { + var flag = gzArchiveName.Split(Path.DirectorySeparatorChar).Last().Split('.').First() + ".bin"; + if (File.Exists(Path.Combine(destFolder, flag))) return; + Console.WriteLine($"Extracting."); var task = Task.Run(() => { @@ -24,12 +28,16 @@ namespace TensorFlowNET.Utility Console.Write("."); } + File.Create(Path.Combine(destFolder, flag)); Console.WriteLine(""); Console.WriteLine("Extracting is completed."); } public static void ExtractTGZ(String gzArchiveName, String destFolder) { + var flag = gzArchiveName.Split(Path.DirectorySeparatorChar).Last().Split('.').First() + ".bin"; + if (File.Exists(Path.Combine(destFolder, flag))) return; + Console.WriteLine($"Extracting."); var task = Task.Run(() => { @@ -49,6 +57,7 @@ namespace TensorFlowNET.Utility Console.Write("."); } + File.Create(Path.Combine(destFolder, flag)); Console.WriteLine(""); Console.WriteLine("Extracting is completed."); } diff --git a/test/TensorFlowNET.Examples/ImageRecognition.cs b/test/TensorFlowNET.Examples/ImageRecognition.cs index 67760da0..73bf0ab1 100644 --- a/test/TensorFlowNET.Examples/ImageRecognition.cs +++ b/test/TensorFlowNET.Examples/ImageRecognition.cs @@ -88,8 +88,7 @@ namespace TensorFlowNET.Examples string zipFile = Path.Join(dir, "inception5h.zip"); Utility.Web.Download(url, zipFile); - if (!File.Exists(Path.Join(dir, pbFile))) - Utility.Compress.UnZip(zipFile, dir); + Utility.Compress.UnZip(zipFile, dir); // download sample picture string pic = Path.Join(dir, "img", "grace_hopper.jpg"); diff --git a/test/TensorFlowNET.Examples/LabelImage.cs b/test/TensorFlowNET.Examples/LabelImage.cs index a61a0cbc..afe86aec 100644 --- a/test/TensorFlowNET.Examples/LabelImage.cs +++ b/test/TensorFlowNET.Examples/LabelImage.cs @@ -106,8 +106,7 @@ namespace TensorFlowNET.Examples string zipFile = Path.Join(dir, $"{pbFile}.tar.gz"); Utility.Web.Download(url, zipFile); - if (!File.Exists(Path.Join(dir, pbFile))) - Utility.Compress.ExtractTGZ(zipFile, dir); + Utility.Compress.ExtractTGZ(zipFile, dir); // download sample picture string pic = "grace_hopper.jpg"; diff --git a/test/TensorFlowNET.Examples/TextClassificationWithMovieReviews.cs b/test/TensorFlowNET.Examples/TextClassificationWithMovieReviews.cs index 7900d06b..95ec24dc 100644 --- a/test/TensorFlowNET.Examples/TextClassificationWithMovieReviews.cs +++ b/test/TensorFlowNET.Examples/TextClassificationWithMovieReviews.cs @@ -3,12 +3,14 @@ using System.Collections.Generic; using System.IO; using System.Text; using Tensorflow; +using NumSharp.Core; namespace TensorFlowNET.Examples { public class TextClassificationWithMovieReviews : Python, IExample { string dir = "text_classification_with_movie_reviews"; + string dataFile = "imdb.zip"; public void Run() { @@ -17,17 +19,27 @@ namespace TensorFlowNET.Examples private void PrepareData() { - Directory.CreateDirectory(dir); // get model file - string url = "https://storage.googleapis.com/download.tensorflow.org/models/inception_v3_2016_08_28_frozen.pb.tar.gz"; + string url = $"https://github.com/SciSharp/TensorFlow.NET/raw/master/data/{dataFile}"; string zipFile = Path.Join(dir, $"imdb.zip"); Utility.Web.Download(url, zipFile); + Utility.Compress.UnZip(zipFile, dir); + + // prepare training dataset + NDArray x_train = File.ReadAllLines(Path.Join(dir, "x_train.txt")); + NDArray labels_train = File.ReadAllLines(Path.Join(dir, "y_train.txt")); + NDArray indices_train = File.ReadAllLines(Path.Join(dir, "indices_train.txt")); + x_train = x_train[indices_train]; + labels_train = labels_train[indices_train]; - if (!File.Exists(Path.Join(dir, zipFile))) - Utility.Compress.ExtractTGZ(zipFile, dir); + NDArray x_test = File.ReadAllLines(Path.Join(dir, "x_test.txt")); + NDArray labels_test = File.ReadAllLines(Path.Join(dir, "y_test.txt")); + NDArray indices_test = File.ReadAllLines(Path.Join(dir, "indices_test.txt")); + x_test = x_test[indices_test]; + labels_test = labels_test[indices_test]; } } }