What Do We Mean By Conversation? A Software Approach
We're going to be talking a lot about "talking" in these next few posts, so it's important that we're all on the same page about what we mean by "talking" and "conversation"—especially when we discuss how it relates to software. In my last post, I had this to say:
Conversation is a tricky subject. It's not linguistics. It's not language acquisition. We're not going to sit here and argue with AI philosophers and researchers on the neocortical representation of language processing. We're talking about how we talk. We're talking about some level of discourse, although I hesitate to use that word since discourse encompasses more than just person-to-person conversation. When we talk about talking—when we talk about conversing with one another—it's a very specific dance.
I have a future post queued up that talks about the differences between conversation, discourse, and language as it relates to certain scientific studies and social science analyses on "words," but I wanted to start small as we eased ourselves into the theories behind conversation and how software picks up the torch of those theories for software initiatives in personality, chatbots, and natural language understanding.
Merriam-Webster defines conversation as:
oral exchange of sentiments, observations, opinions, or ideas
That's a light definition, isn't it? In fact, it seems to focus on an oral exchange, implying verbal or voice interaction. Although we could argue that "oral" is simply being used to imply the use of words in some manner.
Dictionary.com gives us:
informal interchange of thoughts, information, etc., by spoken words; oral communication between persons; talk; colloquy.
Once again, we're focusing on oral, and Dictionary.com explicitly says spoken words at this point. I do like that first half though: information interchange of thoughts, information, etc. That sounds ideal to me.
The Cambridge Dictionary, meanwhile, defines it as:
(a) talk between two or more people in which thoughts, feelings, and ideas are expressed, questions are asked and answered, or news and information is exchanged.
This is a little better. At least it's more defined. We see "talk" being used instead of "oral," and although "talk" implies verbally speaking, Merriam-Webster gives two parts to their first definition, and the second one provides us with some insight:
to convey information or communicate in any way (as with signs or sounds)
So to Merriam-Webster, at least, talking is not just spoken, but also an action through sounds, signs, or any other way, including text.
If we consider "talk" to mean more than just spoken words, then the Cambridge Dictionary definition of a conversation tells us that a conversation is any form of communication between two or more people that consists of thoughts, feelings, and other expressions where there is a question and answer pattern or other information is potentially exchanged.
Let's repeat that because it's going to be important in a future post:
Conversation can be defined as any form of communication between two or more participants that consists of the exchange of thoughts, feelings, information, and other expressions that can sometimes (but not always) be presented in question/answer pairs.
Now we're starting to see the relationship with chatbots and conversational software.
Why are we diving into the semantics of "conversation" and "talk" so much in this post? Many of our most successful innovations and applications in the technology industry are successful because we've observed something in the natural world, and mimicked it in the digital world. Not only does it present a successful pattern for us to learn from, but it helps with the ubiquity of the technology as it's introduced to non-technical end users.
In my opinion, it's important to understand the semantics here because successful conversational software MUST learn from everyday conversation: The same patterns; the same ideas; the natural flow.
The approach we're going to take in this conversational software series of posts is to look at conversation in real life and in social analysis to see how our conversational software needs to be designed.
When we talk about conversational software, we're implying that our software can carry on the same approach to communication that humans can. This means that for software to successfully be "conversational" it has to consist of an exchange of qualitative and quantitative information and nuance that follows the precepts of human communication, including patterns of questions and answers, requests and responses, etc.
We've made a point to talk about patterns and pairs, but we also need to keep in mind that conversation can consist of narratives, storrytelling, and other elements. This means that although our "chatbots" can easily follow the aforementioned pairs, how do we handle cases of monologues? How do we handle mistakes?
Throughout this series, we'll make note of areas where our current collection of conversational software frameworks inadequately address these needs on the periphery, and what we can do to resolve that.