Skip to content

Latest commit

 

History

History
27 lines (20 loc) · 1016 Bytes

README.md

File metadata and controls

27 lines (20 loc) · 1016 Bytes

Mockingjay

Documentation

Implementation of Microsoft's Hummingbird library for converting trained Decision Tree models into tensor computations.

How to Use

Implement the DecisionTree protocol for any data source you would like to compile. Then you can use Mockingjay.convert/1 to generate an Nx.Defn prediction function that makes inferences. The output of convert will be a function with the signature fn x -> predict(x). The three strategies are GEMM, TreeTraversal, and PerfectTree traversal. You can specify the strategy using the :strategy option in convert or use a heuristic strategy by default. The heuristic used is generally:

  • GEMM: Shallow Trees (<=3)
  • PerfectTreeTraversal: Tall trees where depth <= 10
  • TreeTraversal: Tall trees unfit for PTT (depth > 10)

Installation

def deps do
  [
    {:mockingjay, "~> 0.1"}
  ]
end