platform/core/ml/nntrainer.git
3 years ago[tflite] implement build operations in subgraph
Jihoon Lee [Mon, 19 Apr 2021 11:52:39 +0000 (20:52 +0900)]
[tflite] implement build operations in subgraph

This patch implements build operation in the subgraph

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[context/optimizer] Enable plugged optimizer
Parichay Kapoor [Tue, 1 Jun 2021 04:47:17 +0000 (13:47 +0900)]
[context/optimizer] Enable plugged optimizer

Enable plugged optimizer with the app_context

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[optimizer] Update optimizer setProperty interface
Parichay Kapoor [Tue, 1 Jun 2021 02:30:01 +0000 (11:30 +0900)]
[optimizer] Update optimizer setProperty interface

Update optimizer setProperty interface based on the requirement
from the custom optimizer.

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[Example] Concat example
Jihoon Lee [Thu, 27 May 2021 07:44:40 +0000 (16:44 +0900)]
[Example] Concat example

This patch adds concat example with embedding

The structure is

      (input)
     /       \
  (embed1)   (embed2)
    \         /
      (concat)
         |
      (flatten)
         |
        (fc)

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Fix] Prevent creating multiout for split
Jihoon Lee [Tue, 1 Jun 2021 04:51:21 +0000 (13:51 +0900)]
[Fix] Prevent creating multiout for split

This patch make an exception for split layer to not create multiout
layer. While fixing trivial build error of sign compare

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[split/test] Added unittests for split layer
Parichay Kapoor [Mon, 31 May 2021 09:44:43 +0000 (18:44 +0900)]
[split/test] Added unittests for split layer

Added unittests for split layer covering initialization,
forwarding and backwarding. Corresponding bug fixes are
also added.
This has revealed an issue with concat layer #1226
which will be resolved soon.

Also add split layer to android build

Resolves #1208

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[split layer] Add forwarding and backwarding
Parichay Kapoor [Fri, 21 May 2021 11:07:23 +0000 (20:07 +0900)]
[split layer] Add forwarding and backwarding

Add forwarding and backwarding for the split layer

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[split layer] Added split layer scaffolding
Parichay Kapoor [Fri, 21 May 2021 11:04:52 +0000 (20:04 +0900)]
[split layer] Added split layer scaffolding

Added split layer scaffolding with its properties and initialization

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[App] Make embedding golden data optional
Jihoon Lee [Thu, 27 May 2021 05:22:06 +0000 (14:22 +0900)]
[App] Make embedding golden data optional

This patch makes embedding golden data optional while changing return
status

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[ LSTM ] Fix implementation & add backwarding testcase
jijoong.moon [Thu, 13 May 2021 04:03:49 +0000 (13:03 +0900)]
[ LSTM ] Fix implementation & add backwarding testcase

This commits includes:
  . fix implementation ( apply actvation )
  . add one unittest to check functionality of backwarding

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years ago[ LSTM ] Backwarding Implementation
jijoong.moon [Tue, 11 May 2021 04:18:03 +0000 (13:18 +0900)]
[ LSTM ] Backwarding Implementation

This commit includes
 . calDerivative & calGradient of LSTM Layer
 . Modification of Forwarding of LSTM Layer

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years ago[VarGrad] Add clone Transpose
Jihoon Lee [Fri, 30 Apr 2021 04:06:35 +0000 (13:06 +0900)]
[VarGrad] Add clone Transpose

This patch adds clone transpose to `var_grad`, this function clones the
current `var_grad` but transpose and save

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Tflite] Add model input, output
Jihoon Lee [Fri, 16 Apr 2021 08:09:08 +0000 (17:09 +0900)]
[Tflite] Add model input, output

This patch add model to track input and output

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Fix/graph] fix index after removing node
Jihoon Lee [Thu, 27 May 2021 07:35:07 +0000 (16:35 +0900)]
[Fix/graph] fix index after removing node

**Changes proposed in this PR:**
- After removing last node, adj node after the target node becomes not
correct, this patch fixes the issue

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Test/Model] Prepare addition model
Jihoon Lee [Thu, 20 May 2021 04:18:41 +0000 (13:18 +0900)]
[Test/Model] Prepare addition model

This patch add addition model test

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Fix] Output layer setup correctly
Jihoon Lee [Mon, 24 May 2021 11:21:25 +0000 (20:21 +0900)]
[Fix] Output layer setup correctly

There was a bug that output layer is not set correctly because of the
timing issue and overlapping checker issue.
This patch sets output layer correctly.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[LayerNode] Add print function
Jihoon Lee [Mon, 24 May 2021 10:14:33 +0000 (19:14 +0900)]
[LayerNode] Add print function

This patch adds simple print function to be used for debugging
Note that, input_layers are from `layer_internal` for now, but it's
private so it is commented out

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Test/models] prepare to support non-linear models
Jihoon Lee [Tue, 18 May 2021 12:18:37 +0000 (21:18 +0900)]
[Test/models] prepare to support non-linear models

**Changes proposed in this PR:**
- Make `transLayer` from proxy to a legit layer
- Add output map so that in each layer can locate it's output from model
- Support non-linear output generation
- Add support for multi input, multi output

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[graph] Add non-const iterators
Parichay Kapoor [Mon, 17 May 2021 10:09:53 +0000 (19:09 +0900)]
[graph] Add non-const iterators

Add non-const iterators for the graph.
Most of the locations use const-iterators.
This will be updated when layer_node is updated to use its
properties than layer.

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[graph] Graph cleanup getNodes()
Parichay Kapoor [Mon, 17 May 2021 06:50:52 +0000 (15:50 +0900)]
[graph] Graph cleanup getNodes()

Graph remove support for getNodes() but rather
use iterators to iterator over the graph.

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[graph] Cleanup graph usage
Parichay Kapoor [Mon, 17 May 2021 05:19:58 +0000 (14:19 +0900)]
[graph] Cleanup graph usage

Cleanup graph usage

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[graph] Migrate to graph core
Parichay Kapoor [Mon, 17 May 2021 05:07:43 +0000 (14:07 +0900)]
[graph] Migrate to graph core

Migrate neural network independent and generic sections of the graph
to graph core. This is not yet complete and will be done over a few commits.
This will cleanup NetworkGraph class and will allow optimizations to
be done on the GraphCore/NetworkGraph class easily, and simplify
the classes as well.

Now, graph related structures can move out from layer to layer node.

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[Addition] fix forwarding
hyeonseok lee [Tue, 25 May 2021 09:19:56 +0000 (18:19 +0900)]
[Addition] fix forwarding

Correct initialization of output

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years ago[Tflite] Fix tf shape building
Jihoon Lee [Wed, 14 Apr 2021 11:02:18 +0000 (20:02 +0900)]
[Tflite] Fix tf shape building

This patch fixes tf shape building, by adding `eff_dim_flag` and
`dyn_dim_flag`.

`eff_dim_flag` checks which dimension are actually used so that to be
squeezed.
`dyn_dim_flag` checks which dimension should be set to -1 (meaning it is
not fixed)

With those flag set, our tensor dim is able to convert to the dimension
representation that supports `-1` and not fixed size

Those fixes are apply to fc layer for now

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Fix] Add missing header
Jihoon Lee [Mon, 24 May 2021 07:35:37 +0000 (16:35 +0900)]
[Fix] Add missing header

This patch adds missing header for logger when `enable_logging=false`

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Props] Add Name validator and unittest
Jihoon Lee [Fri, 14 May 2021 09:13:14 +0000 (18:13 +0900)]
[Props] Add Name validator and unittest

**Changes proposed in this PR:**
- Add name validator
- Add source file for `common_properties`
- Change name of `unittest_properties.cpp` ->
`unittest_base_properties.cpp`
- Add `unittest_common_properties.cpp`

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Conv2d/Test] Add more test
Jihoon Lee [Mon, 10 May 2021 06:33:39 +0000 (15:33 +0900)]
[Conv2d/Test] Add more test

This patch adds test suggested at #1042

Resolves #1054

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Conv2d] Clean up conv2d relates
Jihoon Lee [Mon, 10 May 2021 03:57:22 +0000 (12:57 +0900)]
[Conv2d] Clean up conv2d relates

This patch handles issue left at #1042

**Changes proposed in this PR:**
- [x] move commented code upward
- [x] remove channel argument
- [x] Add conv negative test
- [ ] Add more test

See also: #1042, #1054

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Tflite] Implement `BuildTensors`
Jihoon Lee [Wed, 14 Apr 2021 08:21:16 +0000 (17:21 +0900)]
[Tflite] Implement `BuildTensors`

This patch add `BuildTensors` which build tensors into *.tflite file.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[fc] Make bias derivative in-place
Parichay Kapoor [Fri, 21 May 2021 06:11:46 +0000 (15:11 +0900)]
[fc] Make bias derivative in-place

Make bias derivative in-place for fc layer

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[tensor] Update tensor sum
Parichay Kapoor [Fri, 21 May 2021 06:01:14 +0000 (15:01 +0900)]
[tensor] Update tensor sum

Update tensor sum to support in-place sum when done over
multiple dimensions.
Also update arguments order to have output tensor as a latter
argument.

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[tflite] Implement `buildBuffers`
Jihoon Lee [Wed, 14 Apr 2021 06:27:26 +0000 (15:27 +0900)]
[tflite] Implement `buildBuffers`

This patch implements buildBuffers, now our generated tflite file has
buffers attached.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[android] Fix android build
Parichay Kapoor [Tue, 18 May 2021 03:41:39 +0000 (12:41 +0900)]
[android] Fix android build

Fix android build error for file not found
add tensorflow new version to .gitignore

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[time_dist] setProperty for time distribution layer
Parichay Kapoor [Tue, 18 May 2021 01:08:56 +0000 (10:08 +0900)]
[time_dist] setProperty for time distribution layer

Added setProperty for time distribution layer, which passes
the properties to its underlying layer.

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[model] Model inference should not catch throw
Parichay Kapoor [Tue, 18 May 2021 01:15:21 +0000 (10:15 +0900)]
[model] Model inference should not catch throw

Model inference should not catch throw, and must throw errors
so that the callers can catch it and detect errors.

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[graph] Add graph core class
Parichay Kapoor [Wed, 12 May 2021 04:39:33 +0000 (13:39 +0900)]
[graph] Add graph core class

Add graph core class
This is mainly separating the existing implementation of core part
of the graph from NetworkGraph.
This patch does not contain new implementation but mostly contain
borrowed implementation from existing graph.

See Also #1176

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[Props] Add vector/array handler
Jihoon Lee [Mon, 3 May 2021 08:37:49 +0000 (17:37 +0900)]
[Props] Add vector/array handler

This patch add vector property handler.

vectored property have sementics that number of size is not defined
arrayed property have sementics that number of size must match

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Svace] Fix dangling reference issue
Jihoon Lee [Tue, 18 May 2021 07:22:49 +0000 (16:22 +0900)]
[Svace] Fix dangling reference issue

This patch fixes dangling reference caused from Sorted.pop_back();
tracking id: 1229992

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Tflite] Implement serializing opcode
Jihoon Lee [Wed, 14 Apr 2021 04:47:12 +0000 (13:47 +0900)]
[Tflite] Implement serializing opcode

This patch implements implementing serialize opcode by
`buildOperatorCodes`

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[TfLite] Implement TfOpIdxMap
Jihoon Lee [Tue, 13 Apr 2021 13:16:11 +0000 (22:16 +0900)]
[TfLite] Implement TfOpIdxMap

This patch implments TfOpIdxMap
Please note that graph::initialize has been extracted for modularity and
testability within this patch.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Tflite] Implement TfOpNode
Jihoon Lee [Tue, 13 Apr 2021 09:45:51 +0000 (18:45 +0900)]
[Tflite] Implement TfOpNode

This patch implements TfOpNode which will be used to deserialize layer
node to a mere chunk of informations. Please note that those methods are
tentative and subject to change wile implementing other methods

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Props] Add dimension property
Jihoon Lee [Mon, 3 May 2021 06:10:51 +0000 (15:10 +0900)]
[Props] Add dimension property

This patch add dimension property

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Update] update daily build badge
Jihoon Lee [Thu, 13 May 2021 06:12:56 +0000 (15:12 +0900)]
[Update] update daily build badge

Daily build has been fixed and badge has been reset. This patch update
badge path and update the information.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[graph] Bug fix for addLossLayer
Parichay Kapoor [Tue, 11 May 2021 07:25:05 +0000 (16:25 +0900)]
[graph] Bug fix for addLossLayer

Removing the last activation is guaranteed to be the last
layer in the Sorted list, but not in the adj graph.
This patch fixes the way the last node is removed from the adj.

Also add some cleanup.

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[graph] Update graph node
Parichay Kapoor [Thu, 8 Apr 2021 10:30:22 +0000 (19:30 +0900)]
[graph] Update graph node

Update graph node to use the updated LayerNode
Also add minor bug fix for the graph

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[Fix] Add compiler complaining types
Jihoon Lee [Wed, 12 May 2021 04:51:59 +0000 (13:51 +0900)]
[Fix] Add compiler complaining types

This patch fixes compiler complaning types

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[tflite] implement serialize
Jihoon Lee [Tue, 13 Apr 2021 07:58:05 +0000 (16:58 +0900)]
[tflite] implement serialize

This patch implements serialize with bunch of NYI functions, structures

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[test] Resolve golden data of size 0
Parichay Kapoor [Wed, 12 May 2021 02:17:28 +0000 (11:17 +0900)]
[test] Resolve golden data of size 0

This patch resolves the issue of golden data of size 0.
This happened as a tensor of size 0 was trying to load the data.
As the size was 0, no data was loaded.
Further, this size was used for comparison as well, which led to
faulty testcases being passed as well.

Also batchnormalization layers test were not loading the data.
That is also resolved here.

Resolves #769 #1172
See Also #1180

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[Tf/Skeleton] Add basic meta data
Jihoon Lee [Tue, 13 Apr 2021 02:05:39 +0000 (11:05 +0900)]
[Tf/Skeleton] Add basic meta data

This patch adds basic meta data to tflite file for startup

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Props] Change is_valid function signature
Jihoon Lee [Thu, 6 May 2021 04:36:22 +0000 (13:36 +0900)]
[Props] Change is_valid function signature

**Changes proposed in this PR:**
- s/is_valid/isValid
- change the function to const

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Props] Add cast operator
Jihoon Lee [Thu, 6 May 2021 02:41:15 +0000 (11:41 +0900)]
[Props] Add cast operator

**Changes proposed in this PR:**
- Add cast operator to property base for easier use
- Add corresponding test

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Props] Separate base_propeties to a source
Jihoon Lee [Mon, 3 May 2021 05:08:47 +0000 (14:08 +0900)]
[Props] Separate base_propeties to a source

This patch separate base_properties into some specialization to source
file

The purpose is to save compile time and redundant doxygen, and clean up
length header.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years agoHandle PARAMETER_HIDDEN, NULL_RETURNS issue
hyeonseok lee [Mon, 10 May 2021 08:26:46 +0000 (17:26 +0900)]
Handle PARAMETER_HIDDEN, NULL_RETURNS issue

1. Check return value of malloc function
2. Rename function parameter of lambda function

resolve: 1216568, 12126575, 1222077, 1222080, 1227326, 1227327

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years ago[Skeleton] Add Tflite interpreter skeleton
Jihoon Lee [Mon, 12 Apr 2021 11:15:30 +0000 (20:15 +0900)]
[Skeleton] Add Tflite interpreter skeleton

This patch adds tflite interpreter skeleton

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Trivial] Add tflite schema
Jihoon Lee [Mon, 12 Apr 2021 10:33:36 +0000 (19:33 +0900)]
[Trivial] Add tflite schema

This patch add tflite schema and corresponding skeleton.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years agoAdded try catch statement
hyeonseok lee [Fri, 7 May 2021 04:27:59 +0000 (13:27 +0900)]
Added try catch statement

Added try catch on getLoss, readModel, loadFile function
resolve: 1143556

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years agoHandle Uncaught exception issue
hyeonseok lee [Thu, 6 May 2021 12:47:45 +0000 (21:47 +0900)]
Handle Uncaught exception issue

Added try catch statement
resolve: 1143556

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years ago[IniSerializer] Add `serialize` to ini
Jihoon Lee [Mon, 12 Apr 2021 09:33:10 +0000 (18:33 +0900)]
[IniSerializer] Add `serialize` to ini

**Changes proposed in this PR:**
- implements ini interpreter::serialize
- add corresponding test (reference shoud be equal to
serialize->deserialized graph)
- Fix some const correctness

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years agoHandle Uninitialized pointer field issue
hyeonseok lee [Tue, 4 May 2021 08:28:22 +0000 (17:28 +0900)]
Handle Uninitialized pointer field issue

Initialize pointer
resolve: 1227126

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years agoHandle Uncaught exception issue
hyeonseok lee [Tue, 4 May 2021 08:13:54 +0000 (17:13 +0900)]
Handle Uncaught exception issue

Added try catch statement

resolves: 1143556, 1144840

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years agoHandle NO_EFFECT issue
hyeonseok lee [Tue, 4 May 2021 06:16:20 +0000 (15:16 +0900)]
Handle NO_EFFECT issue

Delete not effective condition
The type of variable i is unsigned int so i < 0 always false

resolves: 461267, 461268

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years agoHandle GTEST.NO_ASSERTION issue
hyeonseok lee [Mon, 3 May 2021 06:13:36 +0000 (15:13 +0900)]
Handle GTEST.NO_ASSERTION issue

Added EXPECT_NO_THROW to handle No Assert Statement Found issue

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years ago[Layer/props] Convert name to props.
Jihoon Lee [Mon, 12 Apr 2021 06:06:54 +0000 (15:06 +0900)]
[Layer/props] Convert name to props.

**Changes proposed in this PR:**
- Convert name to props
- Add std::string specialization for property

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[TensorDim/Tensor] Update transpose relates
Jihoon Lee [Thu, 29 Apr 2021 09:54:11 +0000 (18:54 +0900)]
[TensorDim/Tensor] Update transpose relates

**Changes proposed in this PR:**
- Add tensorDim::transpose(out)
- Add tensor::transpose
- Add test about tensor::transpose

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[NDK] Add frtti to application build
Jihoon Lee [Mon, 12 Apr 2021 03:40:15 +0000 (12:40 +0900)]
[NDK] Add frtti to application build

As real time type information is used in nntrainer, frtti flag is turned
on to fix build issue

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Props] Implement load properties
Jihoon Lee [Fri, 9 Apr 2021 13:46:58 +0000 (22:46 +0900)]
[Props] Implement load properties

This patch implement `load_properties` which helps loading properties
for a tuple of properties.

Please note that `getKeyVal` is taken from `parse_util` because there is
a build option issue with android build

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Doxygen] Add doxygen to tensordim
Jihoon Lee [Tue, 27 Apr 2021 12:16:03 +0000 (21:16 +0900)]
[Doxygen] Add doxygen to tensordim

This patch adds doxygen to tensordim.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Fix] handle edge case for countNonTrainable
Jihoon Lee [Mon, 26 Apr 2021 08:59:55 +0000 (17:59 +0900)]
[Fix] handle edge case for countNonTrainable

**Changes proposed in this PR:**
- Handle edge case when every layer is non trainable
for `countNonTrainableLayersAtBegin`
- Trivial code cleans on simpleshot task_runner / neuralnetwork

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[graph] Bug fix for duplicate output connections
Parichay Kapoor [Wed, 28 Apr 2021 02:25:12 +0000 (11:25 +0900)]
[graph] Bug fix for duplicate output connections

Added bugfix for duplicate output connections

Resolves #1140

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[Doxygen] Add missing function tags
Jihoon Lee [Tue, 27 Apr 2021 05:01:39 +0000 (14:01 +0900)]
[Doxygen] Add missing function tags

This patch adds missing function tags detected from doxygen

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[FC/props] Wrap properties with properties
Jihoon Lee [Fri, 9 Apr 2021 10:25:25 +0000 (19:25 +0900)]
[FC/props] Wrap properties with properties

**Changes proposed in this PR:**
- Add base_properties for common use
- Change fc unit to property
- Add export test
- Add `uint_prop_tag` and it's handler

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[ TIME DIST ] Implement Backwarding of TimeDistLayer
jijoong.moon [Mon, 26 Apr 2021 04:51:51 +0000 (13:51 +0900)]
[ TIME DIST ] Implement Backwarding of TimeDistLayer

This commit includes
  - implementation of TimeDistLayer Backwarding

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years ago[ TIME DIST ] add example
jijoong.moon [Thu, 22 Apr 2021 00:41:18 +0000 (09:41 +0900)]
[ TIME DIST ] add example

Describe a commit content (Until 80 colums per line) in detail ASAP.

**Changes proposed in this PR:**
- Added TOC generator for README.md

Resolves:

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years ago[ TIME DIST ] Forwarding Implementation
jijoong.moon [Thu, 22 Apr 2021 00:38:57 +0000 (09:38 +0900)]
[ TIME DIST ] Forwarding Implementation

This commit includes
 . Implementation of Forwarding Implementation of Time Dist Layer

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years ago[ TIME DIST ] Implement Initialization of Time Dist Layer
jijoong.moon [Mon, 12 Apr 2021 04:54:58 +0000 (13:54 +0900)]
[ TIME DIST ] Implement Initialization of Time Dist Layer

This commit includes,
  - Time Dist Layer initialization
  - Some modification of network graph

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years agoRevert "[ TIME DIST ] Implement Initialization of Time Dist Layer"
Jijoong Moon [Fri, 30 Apr 2021 02:16:02 +0000 (11:16 +0900)]
Revert "[ TIME DIST ] Implement Initialization of Time Dist Layer"

This reverts commit a386b1113cacf8652ebc2bf3765bb470dcc6ea10.

3 years agoRevert "[ TIME DIST ] Forwarding Implementation"
Jijoong Moon [Fri, 30 Apr 2021 02:16:02 +0000 (11:16 +0900)]
Revert "[ TIME DIST ] Forwarding Implementation"

This reverts commit c2122d5a5256fa31ffc39d8f5be70f56ee77ff05.

3 years agoRevert "[ TIME DIST ] add example"
Jijoong Moon [Fri, 30 Apr 2021 02:16:02 +0000 (11:16 +0900)]
Revert "[ TIME DIST ] add example"

This reverts commit 5c486995b44be42f1734a1b7423c932eee364aa4.

3 years agoRevert "[ TIME DIST ] Implement Backwarding of TimeDistLayer"
Jijoong Moon [Fri, 30 Apr 2021 02:16:02 +0000 (11:16 +0900)]
Revert "[ TIME DIST ] Implement Backwarding of TimeDistLayer"

This reverts commit 11d08996944f755af909f7a2bfce8996268d05b2.

3 years ago[ TIME DIST ] Implement Backwarding of TimeDistLayer
jijoong.moon [Mon, 26 Apr 2021 04:51:51 +0000 (13:51 +0900)]
[ TIME DIST ] Implement Backwarding of TimeDistLayer

This commit includes
  - implementation of TimeDistLayer Backwarding

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years ago[ TIME DIST ] add example
jijoong.moon [Thu, 22 Apr 2021 00:41:18 +0000 (09:41 +0900)]
[ TIME DIST ] add example

Describe a commit content (Until 80 colums per line) in detail ASAP.

**Changes proposed in this PR:**
- Added TOC generator for README.md

Resolves:

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years ago[ TIME DIST ] Forwarding Implementation
jijoong.moon [Thu, 22 Apr 2021 00:38:57 +0000 (09:38 +0900)]
[ TIME DIST ] Forwarding Implementation

This commit includes
 . Implementation of Forwarding Implementation of Time Dist Layer

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years ago[ TIME DIST ] Implement Initialization of Time Dist Layer
jijoong.moon [Mon, 12 Apr 2021 04:54:58 +0000 (13:54 +0900)]
[ TIME DIST ] Implement Initialization of Time Dist Layer

This commit includes,
  - Time Dist Layer initialization
  - Some modification of network graph

**Self evaluation:**
1. Build test:  [X]Passed [ ]Failed [ ]Skipped
2. Run test:  [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
3 years ago[Fix] Reorder error in layernode
Jihoon Lee [Thu, 29 Apr 2021 03:50:37 +0000 (12:50 +0900)]
[Fix] Reorder error in layernode

This patch fixes trivial build warning which is treated as error.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Competibility] Change test reference value
Jihoon Lee [Thu, 22 Apr 2021 08:23:07 +0000 (17:23 +0900)]
[Competibility] Change test reference value

This patch change tolerance for the `model->getValidationLoss` which
affects in i586

resolves #1125

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years agoHandle Undecieded issue
hyeonseok lee [Wed, 28 Apr 2021 08:01:41 +0000 (17:01 +0900)]
Handle Undecieded issue

Init variables in constructor
resolve: 460230

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years ago[doxygen] Var_Grad doxygen fix
Parichay Kapoor [Wed, 28 Apr 2021 01:59:14 +0000 (10:59 +0900)]
[doxygen] Var_Grad doxygen fix

Added doxygen fix for var_grad

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[Exporter] Add exporter test to prop test
Jihoon Lee [Fri, 9 Apr 2021 08:55:03 +0000 (17:55 +0900)]
[Exporter] Add exporter test to prop test

This patch adds exporter test to prop test to ensure that it is working
fine.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Exporter] Add string vector exporter
Jihoon Lee [Fri, 9 Apr 2021 07:13:20 +0000 (16:13 +0900)]
[Exporter] Add string vector exporter

This patch adds string vector exporter implementation

Exporter will iterate through props (`iterate_props`) and will pass a
generic lambda to be called.

Later, We can retrieve the result by `get_result` if needed.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Docs] Fix doxygen
Juyeong Lee [Tue, 27 Apr 2021 11:07:42 +0000 (20:07 +0900)]
[Docs] Fix doxygen

- Fix some doxygen errors
- Fix author email typo

Signed-off-by: Juyeong Lee <2jy22@naver.com>
3 years ago[README] Replace nnsuite to nnstreamer
hyeonseok lee [Wed, 21 Apr 2021 07:26:14 +0000 (16:26 +0900)]
[README] Replace nnsuite to nnstreamer

Since web page of TAOS-CI has been changed replace nnsuite to nnstreamer

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years ago[test] Doxygen fix
Parichay Kapoor [Mon, 26 Apr 2021 04:45:46 +0000 (13:45 +0900)]
[test] Doxygen fix

Added doxygen fix for the unittests.

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[graph] Update graph node
Parichay Kapoor [Thu, 8 Apr 2021 10:30:22 +0000 (19:30 +0900)]
[graph] Update graph node

Update graph node to use the updated LayerNode

**Self evaluation:**
1. Build test: [x]Passed [ ]Failed [ ]Skipped
2. Run test: [x]Passed [ ]Failed [ ]Skipped

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
3 years ago[Test/Props] Add basic property tests
Jihoon Lee [Fri, 9 Apr 2021 04:57:56 +0000 (13:57 +0900)]
[Test/Props] Add basic property tests

This patch adds basic property test to demonstrate specification and
cover some test cases

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Props] Add base properties
Jihoon Lee [Fri, 9 Apr 2021 04:05:29 +0000 (13:05 +0900)]
[Props] Add base properties

Add base properties to be used for the property implementation

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Android/mk] Fix includes
Jihoon Lee [Fri, 9 Apr 2021 02:46:22 +0000 (11:46 +0900)]
[Android/mk] Fix includes

This patch adds utils to the include header so to pass android build

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Serializer] Add exporter to export node
Jihoon Lee [Thu, 8 Apr 2021 12:12:22 +0000 (21:12 +0900)]
[Serializer] Add exporter to export node

This patch adds exporter to export node. This exploits visitor pattern
because, exporting need templated function to be executed, but virtual
functions does not allow templated function.

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
3 years ago[Addition_layer] Set output to zero in forward
hyeonseok lee [Thu, 8 Apr 2021 12:15:05 +0000 (21:15 +0900)]
[Addition_layer] Set output to zero in forward

Before adding inputs output should be set zero

Self evaluation:

Build test: [X]Passed [ ]Failed [ ]Skipped
Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>
3 years agoFix indent in the SPDX identifier
Juyeong Lee [Tue, 27 Apr 2021 08:04:06 +0000 (17:04 +0900)]
Fix indent in the SPDX identifier

Change tab indents to spaces in the SPDX identifier.
Resolves #1083

Signed-off-by: Juyeong Lee <2jy22@naver.com>
3 years ago[Ini/Serialize] Implement logic to serialize
Jihoon Lee [Thu, 8 Apr 2021 11:08:31 +0000 (20:08 +0900)]
[Ini/Serialize] Implement logic to serialize

This patch implements general concept of serializing a node.

Below is the plan to implement this logic

0. Implement logic to serialize [*]
1. Add export api
2. Add exporter
3. Add export test
4. Implement properties
5. combine with export
6. Add extra test

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>