Apple Turicreate Always Return The Same Label

How can I tell if my intent is running in the Shortcuts app?

I may be wrong, but I don't think iOS exposes such information (originator, e.g. Siri or ShortCuts), as this would allow developers to define app behaviours that are different from the static definitions of their Intents (in which Siri/ShortCuts are supposed to act transparently). I doubt Apple would ever agree to that.

IMO, if this is really what you want, the only option is to take a stack trace, identify if/where the calling function exhibits differences between Siri/ShortCuts are, and work it from there.

Ugly, but it'll work.

How can I tell if my intent is running in the Shortcuts app?

I may be wrong, but I don't think iOS exposes such information (originator, e.g. Siri or ShortCuts), as this would allow developers to define app behaviours that are different from the static definitions of their Intents (in which Siri/ShortCuts are supposed to act transparently). I doubt Apple would ever agree to that.

IMO, if this is really what you want, the only option is to take a stack trace, identify if/where the calling function exhibits differences between Siri/ShortCuts are, and work it from there.

Ugly, but it'll work.

How to visualize a Regression Tree in Python

As I commented, there is no functional difference between a classification and a regression decision tree plot. Adapting the regression toy example from the docs:

from sklearn import tree
X = [[0, 0], [2, 2]]
y = [0.5, 2.5]
clf = tree.DecisionTreeRegressor()
clf = clf.fit(X, y)

and then, similarly, some code from the classification docs regarding graphviz:

import graphviz 
dot_data = tree.export_graphviz(clf, out_file='tree.dot')

we end up with a file tree.dot, looking like that:

digraph Tree {
node [shape=box] ;
0 [label="X[0] <= 1.0\nmse = 1.0\nsamples = 2\nvalue = 1.5"] ;
1 [label="mse = 0.0\nsamples = 1\nvalue = 0.5"] ;
0 -> 1 [labeldistance=2.5, labelangle=45, headlabel="True"] ;
2 [label="mse = 0.0\nsamples = 1\nvalue = 2.5"] ;
0 -> 2 [labeldistance=2.5, labelangle=-45, headlabel="False"] ;
}

Now, you can proceed to visualize it as shown in the docs - but if for whatever reason you cannot render Graphviz objects, you can use the handy service WebGraphviz (+1 to the relevant answer in the linked question); the result looks like this:

Sample Image

Your own answer, i.e. going all the way to install graphlab just for the visualization, sounds like overkill...

Last remark: don't get deceived by the superficial differences in the tree layouts, which reflect only design choices of the respective visualization packages; the regression tree you have plotted (which, admittedly, does not look much like a tree) is structurally similar to the classification one taken from the docs - simply imagine a top-down tree, with your odor node at the top, followed by your green nodes and terminating to your blue & orange nodes (and replace "yes/no" with "True/False")...



Related Topics



Leave a reply



Submit