-
Notifications
You must be signed in to change notification settings - Fork 1
Add help documentation and docstrings #29
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
Changes from 5 commits
18a60c6
341d104
1eb3c4f
840d30e
63d787c
6b03f6a
c54d903
69336c5
9f629a9
8d21e61
b1e10db
4ccb8af
98c09f0
82076b8
8f5502e
831fdd9
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1,15 @@ | ||
| {} | ||
| { | ||
| "ml.getCertainty": "Get the certainty of an ML event in percent.", | ||
| "ml.getCertainty|param|event": "one of the actions the machine learning model was trained on", | ||
| "ml.isDetected": "Tests if an ML event is currently detected.", | ||
| "ml.isDetected|param|event": "one of the actions the machine learning model was trained on", | ||
| "ml.onStart": "Do something when an ML event is detected.", | ||
| "ml.onStart|param|body": "code to execute", | ||
| "ml.onStart|param|event": "one of the actions the machine learning model was trained on", | ||
| "ml.onStop": "Do something when an ML event is no longer detected.", | ||
| "ml.onStopDetailed": "Do something when an ML event is no longer detected.", | ||
microbit-robert marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| "ml.onStopDetailed|param|body": "code to execute", | ||
| "ml.onStopDetailed|param|event": "one of the actions the machine learning model was trained on", | ||
| "ml.onStop|param|body": "code to execute", | ||
| "ml.onStop|param|event": "one of the actions the machine learning model was trained on" | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,31 @@ | ||
| # on ML start | ||
|
|
||
| Gets the latest certainty value for an ML action. | ||
|
|
||
| ```sig | ||
| ml.getCertainty(ml.event.Unknown) | ||
| ``` | ||
|
|
||
| The ML model runs several times a second and calculates a certainty value for each action. The estimated action is the action with the highest certainty. An action cannot be the estimated action when its certainty is below the recognition point. Some programs may need to use the certainty values directly, for example to display or log them. Most programs can use the estimated action instead of certainty values. | ||
|
|
||
| ## Parameters | ||
|
|
||
| - **event**: one of the actions the machine learning model was trained on. | ||
|
|
||
| ## Returns | ||
|
|
||
| - a percentage as a [number](/types/number) from 0 to 100, representing the ML model’s certainty that this is the action being performed. The certainty for `unknown` is always 0. | ||
|
|
||
| ## Example | ||
|
|
||
| This example displays the ML model's certainty that the current action is `unknown` every second. | ||
|
|
||
| ```blocks | ||
| loops.everyInterval(1000, function () { | ||
| basic.showNumber(ml.getCertainty(ml.event.Unknown)) | ||
| }) | ||
| ``` | ||
|
|
||
| ```package | ||
| machine-learning=github:microbit-foundation/pxt-microbit-ml | ||
|
||
| ``` | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| # is ML detected | ||
|
|
||
| Checks if an ML action is the estimated action. | ||
|
|
||
| ```sig | ||
| ml.isDetected(ml.event.Unknown) | ||
| ``` | ||
|
|
||
| The ML model updates its estimated action several times a second. This function compares the latest value of the estimated value to the action you choose. Use the boolean value to make logical decisions in your program. | ||
|
|
||
| Some programs will be easier to write using the “on ML start” and “on ML stop” event handlers instead. | ||
|
|
||
| ## Parameters | ||
|
|
||
| - **event**: one of the actions the machine learning model was trained on. The special value `unknown` represents the case where no action has a certainty above the recognition point. | ||
|
|
||
| ## Returns | ||
|
|
||
| - a [boolean](/types/boolean) value that is `true` if the ML action is the estimated action, `false` if the ML action is not the estimated action. | ||
|
|
||
| ## Example | ||
|
|
||
| This example will show a tick icon on the LED display if the estimated action is `unknown` at the time the conditional statement is checked. | ||
|
|
||
| ```blocks | ||
| basic.forever(function () { | ||
| if (ml.isDetected(ml.event.Unknown)) { | ||
| basic.showIcon(IconNames.Yes) | ||
| } | ||
| }) | ||
| ``` | ||
|
|
||
| ```package | ||
| machine-learning=github:microbit-foundation/pxt-microbit-ml | ||
| ``` |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,28 @@ | ||
| # on ML start | ||
|
|
||
| Start an [event handler](/reference/event-handler) (part of the program that will run when something happens). This handler works when when the ML model’s estimated action changes to the action you select. | ||
|
|
||
| ```sig | ||
| ml.onStart(ml.event.Unknown, function () { | ||
| }) | ||
| ``` | ||
|
|
||
| The ML model updates its estimated action several times a second, but this event handler only runs when the estimated action changes. | ||
|
|
||
| ## Parameters | ||
|
|
||
| - **event**: one of the actions the machine learning model was trained on. The special value `unknown` represents the case where no action has a certainty above the recognition point. | ||
|
|
||
| ## Example | ||
|
|
||
| This example uses the special `unknown` value and plays a musical melody in the background when no action has a certainty above the recognition point. | ||
|
|
||
| ```blocks | ||
| ml.onStart(ml.event.Unknown, function () { | ||
| music._playDefaultBackground(music.builtInPlayableMelody(Melodies.Dadadadum), music.PlaybackMode.InBackground) | ||
| }) | ||
| ``` | ||
|
|
||
| ```package | ||
| machine-learning=github:microbit-foundation/pxt-microbit-ml | ||
| ``` |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,30 @@ | ||
| # on ML stop | ||
|
|
||
| Start an [event handler](/reference/event-handler) (part of the program that will run when something happens). This handler works when when the ML model’s estimated action changes to the action you select. | ||
|
|
||
| ```sig | ||
| ml.onStop(ml.event.Unknown, function () { | ||
| }) | ||
| ``` | ||
|
|
||
| When an action changes, the stop event handler for the previous action will run, followed by the start event handler for the next action. | ||
|
|
||
| For example, if your start event handler for an action starts music playing in the background, you could use a stop event handler to stop it. | ||
|
|
||
| ## Parameters | ||
|
|
||
| - **event**: one of the actions the machine learning model was trained on. The special value `unknown` represents the case where no action has a certainty above the recognition point. | ||
|
|
||
| ## Example | ||
|
|
||
| This example uses the special `unknown` option and stops playing a musical melody when the estimated action changes to any other action. | ||
|
|
||
| ```blocks | ||
| ml.onStop(ml.event.Unknown, function () { | ||
| music.stopMelody(MelodyStopOptions.All) | ||
| }) | ||
| ``` | ||
|
|
||
| ```package | ||
| machine-learning=github:microbit-foundation/pxt-microbit-ml | ||
| ``` |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,33 @@ | ||
| # on ML stop | ||
|
|
||
| Start an [event handler](/reference/event-handler) (part of the program that will run when something happens). This handler works when when the ML model’s estimated action changes to the action you select. | ||
|
|
||
| ```sig | ||
| ml.onStopDetailed(ml.event.Unknown, function (duration) { | ||
| }) | ||
| ``` | ||
|
|
||
| When an action changes, the stop event handler for the previous action will run, followed by the start event handler for the next action. | ||
|
|
||
| For example, if your start event handler for an action starts music playing in the background, you could use a stop event handler to stop it. | ||
|
|
||
| The event handler is passed a `duration` parameter. The duration is the number of milliseconds since this action became the estimated action. You can use the duration parameter in your code, for example displaying it or using a variable to keep a running total. | ||
|
|
||
| ## Parameters | ||
|
|
||
| - **event**: one of the actions the machine learning model was trained on. The special value `unknown` represents the case where no action has a certainty above the recognition point. | ||
| - **duration**: the [number](/types/number) of milliseconds the action was the estimated action. | ||
microbit-matt-hillsdon marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| ## Example | ||
|
|
||
| This example uses the special `unknown` option and shows the duration that `unknown` was the estimated action for in seconds when the estimated action changes to any other action. | ||
|
|
||
| ```blocks | ||
| ml.onStopDetailed(ml.event.Unknown, function (duration) { | ||
| basic.showNumber(duration / 1000) | ||
| }) | ||
| ``` | ||
|
|
||
| ```package | ||
| machine-learning=github:microbit-foundation/pxt-microbit-ml | ||
| ``` | ||
Uh oh!
There was an error while loading. Please reload this page.