Open drguthals opened 5 years ago
Add a section called “What is Cognitive?”. This is a high-level description of models and their data, as context for the “easy button” Azure Cognitive APIs. Since these are smart kids we want them to know what they’re really looking at.
I like this idea, I think giving them some background/context is great.
Add a section called How does Cognitive Work?”. After the cool demos, get into the details of how a model is created, what machine learning is, how that factors into AI.
I think this is OK, just as long as it isn't too detailed, it's OK to stay a bit high level and hand-wavy at this stage since they won't actually be building the models themselves.
Add “Real World AI”. Show some case studies, not code, of real-world applications of cognitive.
Yes, I like this.
Do we need to do a quick GitHub primer?
Everything the students will see will be on Azure Notebooks, so we don't need to worry about GitHub.
The biggest weakness of most our code demos is that the output is long-form JSON. There are a couple of methods like “describe_image” that return human-readable results but many don’t. I’m wondering if we can’t provide a better JSON parser to give them more options for using the output, or if that idea will overcomplicate this project.
Yeah this isn't really nice. If you are able to create some simple Python code to better parse the JSON and have them copy that along with the code they are copying for making the call to the API, that would be great! (Or find something that already exists). Otherwise, I think we need to just have very clear examples of what the JSON looks like and what they are looking for and they can do pattern matching.
What are you using to create the markup? In the past I’ve used Visual Studio Code but it looks like it may be better to use that for test, heavy documents then interactive code docs use Notebook/Jupyter?
I've just been putting them in Azure Notebooks, which you can use for free here. That's what the students will be using also. If you want to just put them in this GitHub repo though, that is completely fine and I can move them over to Notebooks when we're ready 😄
If you can round this out, please don’t hesitate. In “Real World AI” case studies, what would be fun here, I wonder?
No problem 😄 I think these are fairly interesting! Maybe not the financial ones, but just knowing that AI is already pervasive in their world today is sometimes shocking to students. Smart cars, Alexa/Google Home/Siri/Cortana devices, video games.
Great, ok, one question:
About the whole Github/Notebooks thing. Your response makes sense for the students, provided that we give ALL the code examples in markdown Python. Is that what you're thinking?
However, the teacher is demoing SDK examples, some of which are in Github, none of which I've been able to get working yet because I'm not clear on how 'pip' is working on Notebooks. I don't want to spin my wheels on things I could skip or do another way. Wouldn't we need the instructor to be able to install Github Azure examples on Notebooks? Have you thought about this?
OK, I guess that's three questions.
Also, what is the student computer setup? Will they have a PC or laptop at every desk at all times?
Students will most likely be on a laptop the entire time, but we want to make the experience all in Azure Notebooks, so it should also work on a Chromebook.
However, the teacher is demoing SDK examples, some of which are in Github, none of which I've been able to get working yet because I'm not clear on how 'pip' is working on Notebooks.
The examples I made here were able to work in Notebooks, which are you trying to get to work that you haven't had success with?
The examples I made here were able to work in Notebooks, which are you trying to get to work that you haven't had success with?
Thanks for your responses. Yes, Notebook examples like yours are cool. Those work fine.
It's Python projects like these. They need to be installed with pip, which I can do, but curiously am not certain where to run them from. I am using the Terminal. All these:
https://azure.microsoft.com/en-us/resources/samples/cognitive-services-python-sdk-samples/
And all the Quickstarts: https://docs.microsoft.com/en-us/azure/cognitive-services/ https://docs.microsoft.com/en-us/azure/cognitive-services/Face/Tutorials/FaceAPIinPythonTutorial
I'm certain I could get this running with a bit more time but I'm trying to be extra careful with time on this project. Maybe we want to avoid those, but there are so many great examples in Python packages. Perhaps inline python in Notebooks is the way?
Yeah, we have two options:
It was my intention to go with #1, so I would say let's scope it to there. For next year we may want to move to #2 :)
I am clear on that for the students. Good call.
I was also wondering about the teacher demos. I can look at moving everything into Notebooks that the teach may demo. I think that's what you're implying...
Ah, thanks for clarifying. I think having everything in teacher demos is fine. For actual applications that we may want to show off, we can just use: https://www.what-dog.net/ https://www.how-old.net/ https://videoindexer.ai/ or the demos that are at: https://azure.microsoft.com/en-us/services/cognitive-services/directory/vision/ https://azure.microsoft.com/en-us/services/cognitive-services/directory/
I'm using all of those in Week 1 already, except videoindexer, which never seems to work.
I'm talking about code walkthroughs.
Oh got it, the code walkthroughs like actually calling the APIs with Python. Yes, a Demo notebook that the teacher could show makes perfect sense :)
Questions:
Do we need to do a quick GitHub primer?
The biggest weakness of most our code demos is that the output is long-form JSON. There are a couple of methods like “describe_image” that return human-readable results but many don’t. I’m wondering if we can’t provide a better JSON parser to give them more options for using the output, or if that idea will overcomplicate this project.
What are you using to create the markup? In the past I’ve used Visual Studio Code but it looks like it may be better to use that for test, heavy documents then interactive code docs use Notebook/Jupyter?
BTW I think I’m probably stronger on the serious coolness factor of these technologies than on lightness and fun. I looked at the Pokemon example and that was awesome but I would never think of that (not to mention the time crunch). If you can round this out, please don’t hesitate. In “Real World AI” case studies, what would be fun here, I wonder?