Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test coverage #17

Open
RenatoGeh opened this issue Jan 8, 2019 · 0 comments
Open

Test coverage #17

RenatoGeh opened this issue Jan 8, 2019 · 0 comments
Labels
good first issue Good first contribution help wanted

Comments

@RenatoGeh
Copy link
Owner

GoSPN currently has little to no coverage of modules. Go has a native unit test library, which we should use.

Though marked as good first issue, we obviously do not expect a single PR with all changes. Instead, please send PRs addressing one checkbox at a time.

The following is our goal coverage list:

  • app module:
    • Classification: should achieve at least a certain percentage of accuracy in an artificial dataset (e.g. DigitsX) (app/image.go)
    • Completion: should not pass a certain mean square error threshold of the original image's crop (app/image.go)
  • common module:
    • HSV to RGB (common/color.go)
    • ApproxEqual (common/equal.go)
    • Queue tests (common/queue.go)
      • Enqueue
      • Dequeue
      • Stress test
    • Stack tests (common/stack.go)
      • Enqueue
      • Dequeue
      • Stress test
  • conc module:
    • SingleQueue tests on race condition (conc/queue.go)
  • data module:
    • Dataset manipulation (data/manipulate.go)
      • Cascade Rounding
      • ExtractLabels
      • Partition
      • PartitionByLabels
      • Split
      • Copy
      • Shuffle
      • Join
      • SubtractLabel
      • SubtractVariable
      • Identical
      • MergeLabel
      • Divide
    • Dataset download test
  • io module:
    • ARFF dataset (io/arff.go)
      • ARFFToData
      • ParseArff
    • HTTP (io/http.go)
      • DownloadFromURL
    • Image I/O (io/images.go)
      • SplitHalf
    • DATA dataset (io/input.go)
      • ParseData
      • ParseDataNL
      • ParseEvidence
      • ParsePartitionedData
    • NPY dataset (io/npy.go)
      • ReadBalanced
      • ReadAll
      • Read
      • Reset
    • Output (io/output.go)
      • DrawGraphTools
      • DrawGraph
    • SPN I/O (io/spn.go)
      • SaveSPN
      • LoadSPN
  • learn module:
    • SPN derivation (learn/derive.go)
      • DeriveSPN
      • DeriveWeights
      • DeriveWeightsBatch
      • DeriveApplyWeights
      • DeriveHard
    • Discriminative gradient descent (learn/discriminative.go)
      • DiscriminativeGD
      • DiscriminativeHardGD
      • DiscriminativeBGD
      • DiscriminativeHardBGD
      • applyDGD
      • storeDGD
      • applyDGDFrom
      • applyHDGD
    • Generative gradient descent (learn/generative.go)
      • GenerativeGD
      • GenerativeHardGD
      • GenerativeBGD
      • GenerativeHardBGD
      • applyFastGD
      • applyGD
      • applyFastHGD
      • applyHGD
    • Variable and scope (learn/variable.go)
      • GobEncode
      • GobDecode
      • ExtractInstance
      • CompleteDataToMatrix
      • DataToMatrix
      • MatrixToData
      • ReflectScope
      • CopyScope
      • DataToVarData
    • Dennis-Ventura clustering structure learning
    • Gens-Domingos LearnSPN structure learning
    • Poon-Domingos dense architecture
  • score module:
    • Confusion matrix
    • Score registration
  • spn module:
    • Gaussian node (spn/gaussian.go)
    • Product node (spn/product.go)
    • Sum node (spn/sum.go)
    • Indicator node (spn/indicator.go)
    • Multinomial node (spn/multinom.go)
    • Breadth and depth first search (spn/search.go)
    • SPN serialization (spn/serial.go)
    • Dynamic programming storing (spn/storer.go)
    • Topological sorting (spn/topo.go)
    • Exact inference bottom-up pass (spn/utils.go)
      • Inference
      • InferenceY
      • StoreInference
    • Max-product algorithm (spn/utils.go)
      • StoreMAP
      • TraceMAP
    • NormalizeSPN (spn/utils.go)
    • ComputeHeight (spn/utils.go)
    • ComputeScope (spn/utils.go)
    • Complete (spn/utils.go)
    • Decomposable (spn/utils.go)
  • sys module:
    • RandComb (sys/rand.go)
  • utils module:
    • Logarithmic operations (utils/log.go)
      • LogSumLog
      • LogSum
      • LogProd
      • LogSumPair
      • Trim
      • LogSumExp
      • LogSumExpPair
    • Statistic functions (utils/stats.go)
      • Mean
      • StdDev
      • MuSigma
      • PartitionQuantiles
    • UnionFind (utils/unionfind.go)
    • Clustering algorithms
      • Auxiliary clustering functions (utils/cluster.go)
      • DBSCAN
      • K-means
      • K-medoid
      • K-mode
      • OPTICS
    • Variable independence tests
      • Chi-square Pearson test
      • G-test
      • Independence graph
@RenatoGeh RenatoGeh added help wanted good first issue Good first contribution labels Jan 8, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good first contribution help wanted
Projects
None yet
Development

No branches or pull requests

1 participant