Optimize Code with ActiveClassification
Considering two programs implementing the same function, construct a classifier able to predict which program is the fastest for a given input. The classifier has access to features of the program input (matrix sizes here), and is obtained using ActiveClassification, a function to learn from a "teacher" (a benchmarking function here) instead of a labeled dataset.
Consider two implementations of the same function.
In[1]:=1
✖
In[2]:=2
✖
In[3]:=3
✖
Out[3]=3
In[4]:=4
✖
Out[4]=4
Create an input sampler and benchmarking function.
In[5]:=5
✖
In[6]:=6

✖
In[7]:=7
✖
Out[7]=7

In[8]:=8
✖
Out[8]=8
Create a logistic classifier that imitates the benchmarking function.
In[9]:=9
✖
Out[9]=9

Extract the classifier and analyze its performances.
In[10]:=10
✖
Out[10]=10
In[11]:=11
✖
Out[11]=11

Use the classifier to create an optimized function.
In[12]:=12

✖
In[13]:=13
✖
Out[13]=13
Obtain a simple function from the classifier to simplify the optimized function.
In[14]:=14
✖
Out[14]=14
In[15]:=15

✖






