fei-dataiter: mxnet dataiters

[ ai, bsd3, library, machine-learning, program ] [ Propose Tags ]

Providing the mxnet dataiters as Stream or Conduit


[Skip to Readme]
Versions [faq] 0.2.0.0
Dependencies base (>=4.7 && <5), conduit (>=1.2 && <1.4), conduit-combinators (>=1.1.2 && <1.4), directory (==1.3.*), fei-base, fei-nn, filepath (==1.4.*), haskell-src-exts (>=1.20), hslogger (>=1.2), mtl, optparse-applicative (==0.14.*), streaming (>=0.1.4.5), template-haskell (>=2.10.0.0), text (>=1.2.0 && <1.3) [details]
License BSD-3-Clause
Copyright 2018 Jiasen Wu
Author Jiasen Wu
Maintainer jiasenwu@hotmail.com
Category Machine Learning, AI
Home page https://github.com/pierric/fei-dataiter#readme
Bug tracker https://github.com/pierric/fei-dataiter/issues
Source repo head: git clone https://github.com/pierric/fei-dataiter
Uploaded by JiasenWu at Tue Sep 17 16:08:07 UTC 2019
Distributions NixOS:0.2.0.0
Executables mxnet-dataiter-gen
Downloads 65 total (21 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2019-09-17 [all 3 reports]

Modules

  • MXNet
    • NN
      • DataIter
        • MXNet.NN.DataIter.Conduit
        • MXNet.NN.DataIter.Streaming

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for fei-dataiter-0.2.0.0

[back to package description]

mxnet-dataiter

Here is an example of making a Conduit from MNIST dataset.

mnistIter (add @"image" "data/train-images-idx3-ubyte" $ 
           add @"label" "data/train-labels-idx1-ubyte" $
           add @"batch_size" 128 
           nil) :: ConduitData IO (NDArray Float, NDArray Float)

The first argument is provides named parameters for the MXNet Data Iterators. Detailed specification can be found in MXNet API 's python document.

Below is a snapshot of current support in this package.

type CSVIter_Args = 
    '[ "data_csv" := String, "data_shape" := [Int], "label_csv" := String, "label_shape" := [Int]
     , "batch_size" := Int, "round_batch" := Bool, "prefetch_buffer" := Integer, "dtype" := String] 

type MNISTIter_Args = 
    '[ "image" := String, "label" := String, "batch_size" := Int, "shuffle" := Bool, "flat" := Bool
     , "seed" := Int, "silent" := Bool, "num_parts" := Int, "part_index" := Int
     , "prefetch_buffer" := Integer, "dtype" := String]

type ImageRecordIter_Args = 
    '[ "path_imglist" := String, "path_imgrec" := String, "path_imgidx" := String, "aug_seq" := String
     , "label_width" := Int, "data_shape" := [Int], "preprocess_threads" := Int, "verbose" := Bool
     , "num_parts" := Int, "part_index" := Int, "shuffle_chunk_size" := Integer
     , "shuffle_chunk_seed" := Int, "shuffle" := Bool, "seed" := Int, "batch_size" := Int
     , "round_batch" := Bool, "prefetch_buffer" := Integer, "dtype" := String, "resize" := Int
     , "rand_crop" := Bool, "max_rotate_angle" := Int, "max_aspect_ratio" := Float
     , "max_shear_ratio" := Float, "max_crop_size" := Int, "min_crop_size" := Int
     , "max_random_scale" := Float, "min_random_scale" := Float, "max_img_size" := Float
     , "min_img_size" := Float, "random_h" := Int, "random_s" := Int, "random_l" := Int, "rotate" := Int
     , "fill_value" := Int, "inter_method" := Int, "pad" := Int, "mirror" := Bool, "rand_mirror" := Bool
     , "mean_img" := String, "mean_r" := Float, "mean_g" := Float, "mean_b" := Float, "mean_a" := Float
     , "std_r" := Float, "std_g" := Float, "std_b" := Float, "std_a" := Float, "scale" := Float
     , "max_random_contrast" := Float, "max_random_illumination" := Float]
     
type ImageDetRecordIter_Args = 
    '[ "path_imglist" := String, "path_imgrec" := String, "aug_seq" := String, "label_width" := Int
     , "data_shape" := [Int], "preprocess_threads" := Int, "verbose" := Bool, "num_parts" := Int
     , "part_index" := Int, "shuffle_chunk_size" := Integer, "shuffle_chunk_seed" := Int
     , "label_pad_width" := Int, "label_pad_value" := Float, "shuffle" := Bool, "seed" := Int
     , "batch_size" := Int, "round_batch" := Bool, "prefetch_buffer" := Integer, "dtype" := String
     , "resize" := Int, "rand_crop_prob" := Float, "min_crop_scales" := [Float]
     , "max_crop_scales" := [Float], "min_crop_aspect_ratios" := [Float]
     , "max_crop_aspect_ratios" := [Float], "min_crop_overlaps" := [Float], "max_crop_overlaps" := [Float]
     , "min_crop_sample_coverages" := [Float], "max_crop_sample_coverages" := [Float]
     , "min_crop_object_coverages" := [Float], "max_crop_object_coverages" := [Float]
     , "num_crop_sampler" := Int, "crop_emit_mode" := String, "emit_overlap_thresh" := Float
     , "max_crop_trials" := [Int], "rand_pad_prob" := Float, "max_pad_scale" := Float
     , "max_random_hue" := Int, "random_hue_prob" := Float, "max_random_saturation" := Int
     , "random_saturation_prob" := Float, "max_random_illumination" := Int
     , "random_illumination_prob" := Float, "max_random_contrast" := Float, "random_contrast_prob" := Float
     , "rand_mirror_prob" := Float, "fill_value" := Int, "inter_method" := Int, "resize_mode" := String
     , "mean_img" := String, "mean_r" := Float, "mean_g" := Float, "mean_b" := Float, "mean_a" := Float
     , "std_r" := Float, "std_g" := Float, "std_b" := Float, "std_a" := Float, "scale" := Float]

type ImageRecordUInt8Iter_Args = 
    '[ "path_imglist" := String, "path_imgrec" := String, "path_imgidx" := String, "aug_seq" := String
     , "label_width" := Int, "data_shape" := [Int], "preprocess_threads" := Int, "verbose" := Bool
     , "num_parts" := Int, "part_index" := Int, "shuffle_chunk_size" := Integer
     , "shuffle_chunk_seed" := Int, "shuffle" := Bool, "seed" := Int, "batch_size" := Int
     , "round_batch" := Bool, "prefetch_buffer" := Integer, "dtype" := String, "resize" := Int
     , "rand_crop" := Bool, "max_rotate_angle" := Int, "max_aspect_ratio" := Float
     , "max_shear_ratio" := Float, "max_crop_size" := Int, "min_crop_size" := Int
     , "max_random_scale" := Float, "min_random_scale" := Float, "max_img_size" := Float
     , "min_img_size" := Float, "random_h" := Int, "random_s" := Int, "random_l" := Int, "rotate" := Int
     , "fill_value" := Int, "inter_method" := Int, "pad" := Int]

type LibSVMIter_Args = 
    '[ "data_libsvm" := String, "data_shape" := [Int], "label_libsvm" := String, "label_shape" := [Int]
     , "num_parts" := Int, "part_index" := Int, "batch_size" := Int, "round_batch" := Bool
     , "prefetch_buffer" := Integer, "dtype" := String]