Welcome to the deep dive. Today, we're really getting into the weeds of artificial intelligence.
Specifically for dot net developers.
Right exactly, we're looking at how you can actually use things like speech, language and search.
All powered by Microsoft's cognitive services based on the source material we've got.
Yeah, so think of this as well, moving past the buzzwords.
Right from the big ideas down to the practical tools you can use to build smarter apps.
Our goal here is, you know, to cut through the noise, pull out the really key concepts, get.
Those aha moments, maybe uncover some surprising bits.
And do it without you needing to like write a single line of code. Right now, it's.
About understanding the essentials, the foundation, the services, so you know what's possible.
Okay, so let's lay that foundation AI. It's everywhere often sounds like science fiction. What's the real deal.
Well, at its core, it's about building systems that do things needing human.
Like intelligence, but maybe not sentient robots just yet.
Hah No, it's much more grounded. Think specific tasks, specific capabilities that are available now.
And getting here wasn't exactly a smooth ride, was it. There were these AI winters.
That's right, two main periods, sort of mid seventies to early eighties and then again late eighties to early nineties. What happened there, Basically, the hype got way ahead of the actual technology. Promises were made that just couldn't be delivered with the computing power.
Back then, so uh, funding dried up, progress stalled exactly.
People got disillusioned. But then things started picking up again.
Why what changed?
Computers got faster, cheaper, you know Moore's law and action. Suddenly some older ideas became.
Feasible, and we started seeing these specialized systems achieving big things.
Yes, like IBM's Deep Blue beating Gary kaspar Off at chess in ninety seven.
That was huge, a machine beating the world champ in such a complex game.
It showed that focused DAI could really excel. But the current boom that really kicked off more recently.
Driven by the tech giants and testing heavily.
Absolutely, and then you had moments like IBM Watson winning Jeopardy Yeah in twenty eleven.
Right, that really showcased natural language processing in a big way.
It did, and after that companies really started productizing these AI capabilities, making them available as services.
Which brings us to today, where AI feels like it's baked into so much tech.
Your phone, websites, even video game characters reacting to what you do.
So it went from big dreams, some setbacks, and now it's practical, usable tech.
Pretty much, and that practicality is changing how we even interact with computers.
Let's talk about user interfaces. We started way back with the command line, the CLI.
Powerful, yeah if you knew the commands, but super intimidating for beginners.
Like learning a secret code kind of yeah.
Then came the GUI, the graphical user interface.
Total game changer, Windows icons, the mouse.
Building on work from places like Xerox PRC, then popularized by Apple and Microsoft. It made computing accessible.
You could see what you were doing exactly.
But now there's another shift happening towards conversation.
The conversational user interface or see y right.
The idea is you just talk or type to the system, like messaging a friend. No clicking through menus.
So ordering pizzas just typing get me a large pepperoni.
That's the goal, simple natural interaction. Messaging apps have made us really comfortable.
With this, Okay, but that sounds like it needs some serious smarts behind it.
It absolutely does. This is where AI is crucial, specifically Natural language understanding NLU.
Because the system has to figure out what you actually mean, not just what you typed.
Precisely, it needs NLU in the back end to interpret that conversational input.
So what's the weather and forecast for today mean the same thing to the system.
A good NLU system should understand that. Yes, it identifies the user's goal, the intent.
It pulls out the important bits of information.
Those are the entities. So weather in London tomorrow. The intena is get weather entities are London and tomorrow.
Seems intuitive for us, but you mentioned CUIs aren't perfect.
There are challenges, Oh definitely. They struggle with really complex, nuanced conversations, and there are risks.
Remember Tay, Microsoft's Twitter bot. Oh yeah, that one sideways fast.
It learned from interactions, but unfortunately it learned toxic stuff very quickly and started spewing offensive tweets.
Had to be shut down almost immediately.
A really stark reminder that AI learning from the real world needs careful controls. You can't just let it loose without safeguards.
So maybe it mixes better for now combining CUI and GUI.
Yeah, the source suggests a hybrid approach often makes sense. Use conversation for simple things, stick to graphical interfaces for more complex tasks.
Okay, let's dig into that NLU piece more. It's fundamental. Why is it considered an AIHRD problem.
Because human language is just incredibly complex and subtle. Getting a machine to grasp it properly isn't just one algorithm.
It's like computer vision or machine translation requires lots of different techniques working together.
Exactly, there are multiple layers of difficulty like way, Well, first, there's syntax, the grammar, the structure of sentences. Machines need to parse that correctly.
Okay, sentence rules makes sense.
Then semantics. That's the meaning of words and sentences, synonyms, words with multiple meanings.
I like apples versus I'm fond of apples, same meaning, different words.
Right, The machine needs to get that underlying concept.
Any sounds tricky, what's.
Next, pragmatics. This is maybe the toughest bit. It's understanding the implied meaning the context that's not being explicitly sex Exactly, if I say wow, it's hot in here, I might actually mean can you open a window? The machine needs situational awareness.
Which computers usually lack. They don't have our common sense or world knowledge precisely.
And then you've got just plain.
Ambiguity words meaning different things.
Yeah, like bank riverbank or financial bank, or sentences that can be read multiple ways like I saw a man on a fill with a telescope.
The classic who has the telescope? Right?
And finally just the sheer variation in language spoken versus written dialects, slang, typos. It's messy, very messy for a machine to handle consistently.
So syntax, semantics, pragmatics, ambiguity variation quite a challenge. Were their early attempts to crack this.
Yeah, some famous ones Eliza back in the sixties mimicked a therapist using pattern matching. It seems smart, but didn't really.
Understand, more like clever tricks.
Kind of a bigger step was SHRDLU around nineteen seventy.
SHRDLU what did it do?
It operated in a tiny virtual world of blocks. You could tell it pick up the blue pyramid or ask questions about the blocks, and understood within that very limited world. Yes, remarkably well. It showed that NLU was possible if you constrain the domain significantly.
Okay, so NLU is hard but vital. How do developers like our listeners actually use it today without building it all themselves.
That's where cloud services come in, like Microsoft's LUIS Language Understanding Intelligence Service elleweeds.
So it's like NLU as a service pretty much.
You don't need to be the deep learning expert. Your job is mainly to train it for your specific application.
How does that training work?
You feeded example sentences. They're called utterances that your users might.
Say things like find me a nearby Italian restaurant.
Exactly, And for each utterance you tell owe with the user's goal. The intent is like fine restaurant, and you label the key info the.
Entities, so Italian would be cuisine type, nearby implies location precisely.
You provide lots of examples, Louis learns from them using machine learning algorithms. Then when a new sentence comes in, it predicts the intent and extracts the entities.
What are the main bits you can figure in LA?
You define your intents the actions users can take, and you define your entities the data points you need.
Are there different types of entities?
Yes, quite a few, simple entities are ones you define like product category. But Louis also has pre built entities which are super useful.
What do they cover?
Common stuff like dates, times, numbers, locations, email addresses, percentages. Saves you a lot of effort. It already knows how to recognize next Tuesday at three pm.
That's handy. What else?
You can create composite entities to group related entities like an order entity containing item and quantity, and hierarchical entities for parent child relationships like person name having first name and last name help.
Structure the extracted data. What about phrase lists?
Think of them as giving ellewe hints. You list words or phrases that are strong indicators for certain intents or entities, like a list of all your product names or synonyms for book a meeting.
It helps boost the signal for important terms exactly.
And then there's active learning. This is really important.
After you launch, what does that do?
Elliwei identifies utterances it wasn't very sure about. It shows them to you. You clarify the correct intents and entities, and that feedback helps retrain and improve the model over time.
So the model gets smarter based on real user interactions.
Correct It's a continuous improvement cycle and.
The overall flow for an app Using Alleyway, your.
App gets the user's text sense, sends it to the Louis API. Louis sends back Jason with the predicted intent and entities. Your app uses that info to.
Do the right thing, like calling another API, querying a database, whatever.
The action is exactly. It integrates nicely with things like the Microsoft Bought framework for building chatbots.
Okay. LAOS handles the core understanding. What other text analysis tools are there in cognitive services?
Several useful ones. There's the Bing's spell check API, just basic spell check. It's smarter than that. It's contextual. It understands that booking is correct in booking a flight, but maybe not somewhere else. It gets proper nouns like Microsoft, even if slightly misspelled ah.
So it considers the surrounding words useful for cleaning up U input definitely.
It even handles some slang and common brand name misspellings.
What else in the text suite?
The text Analytics API bundles a few things. Language detection figures out what language the text is in, useful for routing, support tickets, or filtering content.
And sentiment analysis that seems really popular.
It is analyzing if text is positive, negative, or neutral. Companies use it constantly for customer reviews, social media monitoring.
Getting a pulse on customer opinion at scale.
Right, it usually gives a score like point nine for very positive, point one for very negative.
Does it do summarization too?
Not exactly summarization, but key phrase extraction pulls out the main talking points, the important noun phrases, and topic detection can group large amounts of text like reviews, into underlying themes.
The source also mentioned something called the Web language model or web LM.
Yeah, that's a language model trained on well huge amounts of web data from bing. It understands common word sequences and probabilities.
What's that use?
For things like word breaking, splitting buy tickets now into buy tickets now, calculating joint probability? How likely is the phrase natural language processing versus say natural language pineapple okay?
Measuring how natural a phrase sounds.
And conditional probability predicting the next word given artificial how likely is intelligence to follow? This powers things like autocorrect and tax suggestions.
Wow, quite a toolbox for text. Now, what about turning speech into text and back.
That's where the speech APIs come in. Speech to text STT converts audio to text text to speech TTS does the reverse.
How does STT work? Generally?
It analyzes the audio signal, breaks it down into basic sound units called phonemes, and uses acoustic and language models to figure out the most likely sequence of words. Usually gives a confidence score.
Two and Microsoft's offerings.
There are standard speech APIs, but the really interesting one is the Custom Speech Service criis custom. Howso CRES let's use adapt the speech recognition model to your specific scenario.
What does that mean?
You can upload your own audio data and accurate transcripts. If your app will be used in a noisy factory or involves lots of specific jargon or product names, you can train a model that's much better at understanding that specific audio environment and vocabulary.
Ah, so you tailor it to overcome background noise or specialized language exactly.
It can make a huge difference in accuracy for specific use cases compared to a general purpose model.
And what about recognizing who is talking?
That's speaker recognition two main types. Verification confirms if a voice matches a known person like voice log in usually needs enrollment where the person says specific phrases.
Okay, one to one matching.
And identification, which tries to figure out which speaker from a pre enrolled group is the one talking. Useful for transcription that notes who said.
What, and for the other way text to speech, making the computer talk naturally. Yeah.
TTS takes text and generates audio. The source mentions ssmls each synthesis markup language, what's that for? It lets you control how the text is spoken. Things like emphasis, pitch, speaking rate, pauses, even pronunciation of specific words helps make the synthesized voice sound less.
Robotic speech text feels like it's gotten way better recently.
It really has, largely thanks to deep learning bottles, but accuracy is still a challenge, especially in noisy places or with strong accents. The source notes that even with claims of low error rates like Google's four point nine percent, that's often in ideal conditions.
Which is why that custom speech service is valuable for bridging the gap in real world scenarios.
Precisely.
Okay, shifting focus again, let's talk search and recommendations making information findable.
Right, we have explicit search. You type a query, but AI enables implicit search.
Where the system anticipates what you need.
Yeah, like Amazon showing customers who bought this also bought or related items. It's proactive.
The source mentioned the three piece of search.
Right search everywhere, predictive, anticipating needs, proactive, giving answers before you ask.
That's the ideal, and Microsoft has bing APIs for web image news search. Let's focus on recommendations though, how do those work?
The main goal is usually to increase sales or engagement by suggesting relevant things.
What kinds are there?
Frequent bought together FBT is common items often bought in the same transaction, like a camera and a memory card makes sense. Then item to item, which is a type of collaborative filtering. It suggests items based on what other similar users liked. People who viewed this also viewed.
Based on collective behavior.
And user to item, which is more personalized. It looks at your past history, views, purchases to recommend things specifically for you.
How do you build these using the Microsoft service?
You need data two main types. Catalog data, which is info about your items, products, articles, whatever, including features and usage data records of user interactions like clicks, purchases, ratings, so you feed it.
Your product list and how people.
Interact with exactly. Then you train different recommendation models called builds on that data. There are specific builds for FBT and others like SAR that handle itemed item and user to item, and.
The quality of recommendations depends heavily on that input data.
Absolutely, good data, good quantity leads to better recommendations.
The source also mentioned ranking and offline evaluation.
Ranking is crucial how do you order the results. It's often based on relevant scores derived from usage data and item features. Offline evaluation lets you test your train models on historical data before deploying them to see which build performs best.
Okay, so we've covered a lot of ground from AI history to interfaces and LU with LIS text analysis, speech tech search recommendations.
It's quite a journey, but the key takeaway, I think, is how these advanced AI capabilities are becoming accessible right.
Things that needed huge research teams are now available as APIs like cognitive services.
Especially for developers already in the dot net world. It lowers the barrier significantly to adding intelligence.
It makes you really think about where AI is already working behind the scenes in.
Your life or how these tools could reshape industries think about customer service, retail, healthcare.
Definitely yeah, and that brings us to the future. The source touches on this idea of AI first organizations.
Yeah, companies embedding AI into their core strategy, their products, how their people work.
And it addresses the big question about jobs.
The perspective offered is interesting tasks, not jobs, will be eliminated. The focus shifts to how human roles will change and work alongside AI.
Augmented intelligence not just artificial intelligence replacing humans exactly.
Combining the strengths of both human and machines working together can achieve way more than either could alone.
It's a vision of AI becoming woven into everything, cars, factories, shopping, daily life.
A fundamental transformation.
So to wrap up, we've seen how AI is evolve, how tools like cognitive services make it practical for developers, especially with dot net, to build apps that understand language, speech, and user needs through search and recommendations.
It really puts powerful capabilities within reach.
And thinking about that future, that augmented intelligence idea where tasks change and humans partner with AI. Here's a final thought for you to consider. If AI is set to transform our tasks and merge with our capabilities. What completely new roles, new kinds of expertise, or maybe even entirely new opportunities might emerge from this human machine partnership in the coming years, Things we perhaps can't even quite imagine
Today, something definitely worth pondering.
