MACPA Building bot brain ebook

+ Full Text

MACPA Presentation Enrico Palmerino, CEO December 6, 2018, Baltimore, MD

botkeeper.com

The following pages include the transcribed presentation given by Enrico Palmerino, botkeeper CEO, to the Maryland Association of Certified Public Accountants on December 6, 2018, in Baltimore, Maryland. The full video and slide deck can be found on the botkeeper blog (https://www.botkeeper. com/blog). If you have any questions, don’t hesitate to reach out to us. Our bots—and humans—are standing by, ready to help!

TABLE OF CONTENTS Introduction: Building a BotBrain | 3 Deploying Machine Learning + AI in Your Practice | 4 Two Kinds of Bots: Software & Mechanical | 5 What Is AI? | 8 Components of AI | 9 Prediction—What Can I Avoid? | 10 Situational Awareness—What Do I Need To Do Right Now? | 11 What AI Is Not | 12 Training AI vs. Training a New Bookkeeper | 14 What Should I Automate? | 15 Train & Retrain | 16 What Is ML and AI Good For? | 19 How Do You Build Your Own AI? | 20

botkeeper.com

|

2

INTRODUCTION BUILDING A BOTBRAIN

I think the most ironic thing is I hate bookkeeping, and yet I’ve owned two accounting firms, and this is my second one. And I think a lot of that stems from the fact that the part about bookkeeping that I hated was the complexity of bookkeeping doesn’t really vary whether you’re a small startup or a Fortune 5000 company. What the key difference is between the two businesses is the volume of transactions that you have to process so you have the same complexity—just way more data entry points that you have to get through, and you have to also figure out how to parse it. If I gave you a static list of 100 names, and I said, “Enter all these names into the system,” you would probably enter A through E, F through whatever, but when data is moving and dynamic and happening all the time, that sort of parsing or divvying up of work gets a lot more complicated, and also then the reconciliation of that work and making sure that all the pieces that you divided come back together as a whole and nothing is missing. It also gets complicated. In typical accounting—1 plus 1 actually equals 1.75 or less than two, verses in a lot of venture-backed software companies, one plus one—you want to equal three. With that said, I decided to build a company to solve my own need—my own problem or my own lack of education or understanding of bookkeeping. I called that company botkeeper because the biggest issue I saw in the accounting space was hiring and retaining good talent, for the most part. And I think I said this in the last talk—I’ll do another quick hand raise: Who here wants to be a bookkeeper? Exactly. No one wants to be a bookkeeper. If you are a bookkeeper, it’s probably a transitionary role; you’re doing it temporarily. It’s a stepping stone to accountant, senior level accountant, controller, CFO, etc. That means that 1) No one wants a position that needs to be filled, and 2) People used to get trained on being great bookkeepers. That doesn’t happen anymore. We have a very large vacancy for this position of manual data entry or brute force processing of data. And at the end of the day, in order to do great accounting and analytics and advising and consulting, you need bookkeeping to be done, because without the data in, you can’t take that data out and then provide some sort of context or analytics to it. What I want to do in today’s session is basically walk through it. And I find a lot of us speakers talk about A.I. but we talk about it at a really, really high level. No one actually takes the time to dive into what is AI. How is it built? How does it work? What are the fundamentals of it? Today I basically want to dive through that, and explore how you build, how you operate, how you train and maintain AI, and then show you how you can basically deploy that in your practice.

botkeeper.com

|

3

DEPLOYING MACHINE LEARNING

  • AI IN YOUR PRACTICE STEP

1

STEP

2

STEP

3

Hire engineers. Engineers aren’t cheap, so be ready to spend millions of dollars hiring engineers to build your own AI. You’re all probably looking at me, like, “This is not the room I signed up for because I am not ready to spend anywhere near millions of dollars building my own AI.” The good news is you don’t have to build your own. You can license AI, and the real value provided to AI is you train it. So you teach it to do the nuances and understand your practice and your clients, and that’s where all the IP and the value is created. It’s not around actually building the AI. Companies like ours can build AI because we know we’re going to leverage it across hundreds and thousands of accounting firms and tens of thousands or millions of businesses. Companies like PWC and EY can build AI because they have very large budgets, and they support enough clients that they can look at very particular things to automate away and get the ROI that they need. So, find or hire those engineers.

Find an accountant.

Prepare a computer. Basically, you need to find a computer or some sort of computing stack, server, etc., that’s going to be able to process the machine learning algorithms that you’re running. If you ever see me walk around with this brick—it weighs, like, 20 pounds—it’s not because I love dealing with an old piece of hardware. This is actually very new. But it has the compute power of 9,400 computers in this little bad boy, and that’s needed in order to run the machine learning models that we process and operate. 3—and I will warn you that this is going to get very graphic, so if you’re squeamish, this is a really good time to step out.

STEP

4

You take the accountant’s brain, and you put it in the computer, and then it’s alive. AI. That’s it—I’m done. Thank you very much for the time.

botkeeper.com

|

4

TWO KINDS OF BOTS: SOFTWARE & MECHANICAL But in all seriousness, let’s talk about bots. There are two kinds of bots: You have mechanical bots, which are the actual robots, the physical beings that move about, do things pick up stuff, and then you have software bots which are just code. The two look very, very different.

Mechanical work robots—they give a bad name to software bots. There’s a video of mechanical robots, and a company in Boston actually built this robot to go and pick things up and put them down. Very simple task, except in the video, this bot basically goes and knocks everything over, tries to pick up one thing and doesn’t but falls down. It’s kind of close to picking things up and putting it down, not picking anything up, throwing it on the ground, and falling down on itself. And the problem with that is that’s the perception I think most people have of bots. They think these robots don’t actually do what people say they do.

botkeeper.com

|

5

They claim a whole lot of things: Robots can carry a whole lot of weight. They’ll be able to march into Desert Storm and take care and save us. But in reality, we’re not talking Star Wars yet or anywhere near it. These bots have a hard enough time standing upright and not falling over. Software bots, on the other hand, are way far advanced than what people think. So it’s like the exact opposite conundrum. Software robots are already doing things—there’s a great video, and I would show it here but I’m going to reenact it. Ready? I’ll get my acting skills together.

Software bots—lightyears ahead of where you think There’s a video of Google—and you can Google this. Google a video by Google calling and booking a hair salon appointment. What’s really cool about that is basically someone says into a Google phone, “Hey, book me a hair salon appointment between the hours of 10 and noon.” And Google says back, “Sure, no problem.” Then Google calls the closest local hair salon on behalf of that person, so they didn’t tell which hair salon to call. They just called the closest and most local. They interact with the person on the other end. That person picks up and says, “Hey, thank you for calling the salon so I can help you. I’m looking to do this.” And the bot, ironically, is like, “I’d like to book an appointment for a whatever haircut.” The person walks through: “Here’s the different things that we offer. Here’s the times we have available.” The bot tells the hair salon designer, the stylist, that, “I want to do sometime between 10 and noon.” The stylist says back, “Well, we have 1p.m. available.” The bot says back, “No, unfortunately that won’t work. I’m looking for something between these hours. Do you have anything available for this?”

botkeeper.com

|

6

It goes back and forth between, “What would you like for a service?” “I just want a haircut.” At the end of the day, it books a haircut at 11a.m. for the individual that said, “Okay, Google, please book me a haircut between the hours of 10 and noon, and the other individual on the other end of the phone has no idea that the person they had been talking to—because they responded back in a very human form and even like paused or was like, “Mhmm” and said all the things that a human would—was not a human. That’s scary because now when people call you and book a tax appointment, it may not be an actual person booking that tax appointment, but that is where software bots are. Software robots are way ahead of what people expect or realize to the point where if you were to go online and Google a location or an address or a business restaurant and, you know how it tells you the hours of operation? Take a guess how it figures out those hours of operation. The business owner does not enter their hours of operation. A bot calls every single business listed on Google and confirms on an ongoing basis what their hours of operation are during the week, on the weekend, during seasonality/holiday time. There is someone literally calling this hair salon saying, “Hey, are you open? I know it’s the holidays and Christmas. Are you still open for business Saturday and Sunday?” That person responds back and says, “Yes, we are, but we’ve got Christmas hours on Sunday, and we’re only open for two hours.” And then it updates Google. So when you search it, and it says it’s closed, that’s happening on a relatively real-time basis because there’s a bot going out and calling all these people. With that said. How many of you are afraid of bots? If I didn’t make you afraid you should leave the room because you should be afraid. These things are going to take over and essentially ruin our lives. But in reality—no. All bots do is they take busy work—mundane tasks—provide you with scale, provide you with efficiency, provide you with the time and flexibility to do the things you love. We all raised our hands or didn’t raise our hand. No one raise their hand and said, “I love bookkeeping.” Well guess what: You don’t do bookkeeping anymore because bots are capable of doing it, which means all the time that you’re currently spending on bookkeeping could be time you’re spending on finding more clients, advising clients, working closely with clients, working with your family, spending time with your family, taking a vacation, enjoying a piña colada. You name it. And they’re going to make you more profitable. Once again. Who wants to make more money this year? Next year? I know there’s only a month left, but what’s cool with bots is bots take hours to train, not weeks. You could actually deploy bots before the year end and realize profitability or increased margins before the year is over. They’re going to increase the accuracy, which means your clients are going to be happier because why are bots more accurate? Well, bots don’t do one thing that humans do, which is make random mistakes. Bots make consistent mistakes, so they will make the same mistake again and again and again and again, just like that bot that tried to pick up stuff in the video I didn’t show you and fell over, it did that same sort of tried-to-pick-up-and-fall-over again and again and again. Software robots are the same. If it’s not programmed properly, it’s going to repeat the same mistake. Good news about that is repeated mistake is easy to pick up and identify, and it’s easy to correct. Random human error is impossible to pick up and impossible to correct because every time you

botkeeper.com

|

7

correct it, someone finds a way to make some other mistake that you didn’t just correct. Or they wait six months to make that same mistake again, so they’re going to be repeatable. They’re going to be more accurate. They’re going to not have the same sort of transcription, but like a calculator, if you put the wrong equation in, you’re going to get the wrong equation out. If you have the right equation, it’s going to tell you exactly what you’re expecting it to every single time.

WHAT IS AI? So what is AI? We talked a lot about bots, we talked a lot about automation, we talked about how they’re going to take over the world. Reality: This is what AI is. AI starts at data. And what is data? That’s raw numbers. Imagine just taking some random set of numbers, putting them in an Excel sheet. That’s data. It has no context, no understanding, there’s no information behind it. No analytics. There’s no graphs, nothing that tells you why that data means anything. You apply meaning to it. That basically means you take the data and you start sorting or filtering it or moving it into columns in such a manner that basically says the data set that we’re looking at is purely for transactions—debits and credits—that this client is operating against. And not only are they debits and credits, but they’re not prepaid debits and credits. So you start getting like a little bit specific, and that specificity actually provides context around the data and gives you knowledge around the data set that you have such that you can now run filters or sorts against that data. You start to learn. What you’re seeing happen now or hearing me explain is how you take random data and you start making that random data more valuable to the end user or to your firm. And all the while that you’re making that data more valuable, what you’re starting to do is build that essence or the foundation of AI.

botkeeper.com

|

8

COMPONENTS OF AI Wisdom. Imagine if you took that data, you took the understanding—you know the categorizations, you know that it’s not prepaid, you know that those categorizations are only for transactions that happened within this period of time. Now you say, “These transactions are in this Excel sheet, and that needs to go here, and that ‘here’ is Quickbooks, Xero—the accounting software. How do I take transactions from one system and put it in the other system. Not only how do I take them from that one system and put in the other system, but how do I automatically categorize or classify those based on the data set that I have?” The way that you do that is you start layering in AI and algorithms. How do you layer in AI? Well first you start teaching that dataset using algorithms which are just like X plus Y to the square, divided by so on and so forth. Who here loves algebra? That class you took once and you hated— that’s what makes a AI. And you wonder why no one understands how AI works, except the few people that are nerdy enough or geeky enough to love those algorithms. You start providing perception. And what you’re basically doing is you’re taking that data and you’re giving it context, and you’re saying what is this data and why should it care or why does it matter? Next thing you provide is you basically say given this dataset, I want to know something. I want to know when a transaction is within a given range in terms of dollar amount, or range and some day amount—like the day in which it was processed or entered—or I want to know that the vendor is one of five vendors or that somewhere in the memo it says this word. At this point in time, you’re teaching the data to give you a notification of something.

botkeeper.com

|

9

You’re basically saying, “If I see this, then I do that.” And all that is is notify—make me aware. Then you teach that notification. Should it notify me always? Should it notify me sometimes? Should it notify me in certain situations, like if the transaction’s one million dollars and the business only does a few hundred thousand dollars a year? Make sure you notify me that they just did that transaction because it’s either fraud or this is going to bust the company. Then, what can I expect to happen as a result of doing that transaction, or as a result of that action that’s taking place? And can I take that notification and make that notification do something for me? It’s one thing to notify me that a transaction has taken place. It’s another thing to take that notification and make me aware, but then do something. In that million dollar transaction situation, block that transaction from executing.

PREDICTION — WHAT CAN I AVOID? This is basically prediction. At this point in time, what you’re doing is you’re saying, “Given my situational awareness, my understanding of this dataset, what can I avoid is similar data?” If you were to give me another dataset, how do I identify similarities that I would then generate notifications for that I would then take action for that I would then basically say in any situation whether it’s this dataset or a future dataset, if a million dollar transaction is attempted to process, block it. And I put what can I avoid again, because prevention. In a lot of times, AI is really about preventing an action from taking place. It’s like security. That’s why AI, when it was initially launched, it was doing predominantly data security functionality. Most banks were using some form of AI long before we started hearing the word AI because what they were doing is they were saying anytime a user or an IP address from here attempts to get through our server, do this thing, which most cases block.

botkeeper.com

|

10

SITUATIONAL AWARENESS — WHAT DO I NEED TO DO RIGHT NOW? Finally, what do I need to do right now? It’s one thing to notify me and make me aware that an action should be taken. It’s another thing to know what action should be taken. But really, AI is only being AI when it’s taking action because we as humans are good at basically perceiving situational awareness or an understanding and then enacting or acting on that understanding. So how do you tell AI to then do something in the way that AI does something is through predominantly a Python script and all python is is a string of code that executes a command against a piece of software. In the situation where there is a million dollar transaction attempted like in processing from the bank, AI would identify that and say 1) I need to block this, and they would understand that it needs to block this because either there wasn’t a million dollars in the bank account, or 2) this is an abnormal transaction that shouldn’t be processed. And 3) What it’s doing is it basically then goes and says, “Execute this command,” and that command could be something as simple as sending an email to the bank telling this person to block this transaction from being fully processed, and most AI as it pertains to accounting is learn and understand what that transaction is, and then take action on that understanding. So it’s a debit. This is an expense. What is my understanding of the expense? Which bucket or category should it go into, and how should I then treat it? Is it an expense that’s already been incurred? An expense that’s about to be incurred and therefore this needs to go down a bill pay workflow such as bill.com? Is this a prepaid expense in which I have to book it as a prepaid? Then I basically have to debit against that prepaid, divide by 12 on a monthly basis, and then book those debits against it. All those actions are the actions that AI is taking in this form.

botkeeper.com

|

11

WHAT AI IS NOT Oftentimes it is a little frustrating. I talk to enough accounts and accounting firms and I ask if they are using AI today. “Yes, I use AI.” Oh really? How many engineers do you have? And they usually go, “Oh, I don’t have any engineers.” And that’s usually the first tell that they’re not using any AI because most AI—the only way you can actually deploy it is if you have engineers because even the AI models that you can license off of online and you can download still require engineers to actually implement or make use of because the most complicated thing with AI is not the algorithms that process the data. It’s the pipeline and the data cleansing of the data in a manner that basically makes sure that there is consistency in the data and that your understanding of what that data is is accurate and therefore the machine learning can take your understanding and properly execute against it. Intuit—a common misperception—in Intuit or Quickbooks Online or any Quickbooks or Xero product, when you tell it to always classify this vendor as this category that is not AI. And so many people think that it is. “I use AI all the time. I use Intuit’s AI. How are you different than Intuit’s AI?” And I’m like wait, I don’t understand. What did Intuit roll out that I had no idea about? And they’ll be like, “Oh I use the mapping AI, automatically.” The misperception is automated action is not AI. All that is is automated action, and more often than not automated action is robotic process automation. But I wouldn’t even say what Intuit does is actually robotic process automation. All Intuit’s actually doing in that case is one-to-one vendor mapping. So you’re telling Intuit every time I buy something from Amazon, it’s food. Waiting for the chuckles because we all know that’s false. You could buy prescriptions from Amazon and you can buy hosting services from Amazon. You can buy desks, video games, and food from Amazon. But that’s what one-to-one vendor mapping is. That’s what Intuit has. That’s what “if this, then that” is, that’s what decision trees are. That’s what robotic process automation is. That’s what Blue Prism is, that’s what Black Pond is. See the common theme here? Most things that we hear as automation and doing a task are not AI. They’re just robotic process automation. Zapier is not AI. Once again—all you’re teaching Zapier to do is take this and do that to it. Why is that bad? It may sound like I’m being a jerk and being mean about Intuit or being mean about Blue Prism. I think they’re great products. But the key difference between robotic process automation and AI is a robotic process automation does this one thing you taught it the same way every single time regardless of changes that have occurred with the dataset, with the software being used, or where the interpretation of that data. For instance, that basically means you file taxes exactly the same every single year regardless of whether laws change. Does that sound like a good idea? No. Why? Because laws always change, software always changes, datasets always change. The common theme there is robotic process automation is really good temporarily, or it’s really good if you’re a business that doesn’t change. If you work at a big business like that—let’s just say we’ll use PWC—if you work at PWC, they move so fast. Right? They’re implementing the latest technology, changing things, right? No, wrong. They don’t change. They move slowly because they’re such a big company, it takes a lot to actually move or change or adapt. Good news with that is companies that take a while to move, change,

botkeeper.com

|

12

or adapt are great companies to use robotic process automation because they basically say we invoice all of our clients this way every single time regardless of what the client buys from us. We piss off a lot of clients. That’s why you guys all have clients. So we do that and we send them the exact same form every single time. We’ve been doing that for the last 10 years, and it’s this Lotus one-two-three form. You have to teach the RPA to use that form, so it works very well in those cases. It does not work with small practices and firms that adapt, change, use new software, adapt to clients because basically if you want to use RPA—you can only use RPA on essentially a per-client basis because if I asked you how do you invoice all your clients is exactly the same way for every single client? Anyone here—exactly the same way you invoice all your clients every single client, regardless of anything? No. You tailor it, and therefore that action cannot be automated with RPA, but it can be automated with AI, because AI’s nuance, or the key difference between AI and RPA, is it’s not automation—it’s learning understanding and application. It basically learns the difference between how you invoice client A from client B from client C, and it may not actually understand why there’s a difference there, but it starts to see a pattern. It sees the pattern that the time sheet comes in, and you always discount client B’s time sheet by 20 or 30 percent. It doesn’t understand that client B is a friend of yours, or they are annoying so you discount it and you just don’t want to hear from them. All it understands is that every single time, you apply some sort of discount. Really, really cool and intuitive AI starts to take that learning and then test against it. It basically says, “Well, what if I discounted at 19 percent? Does that change things? Does a client get mad? Can I still send the same invoice?” And what that intuitive AI does is asks the user or the practice owner, “Hey, would you mind if I send a 19 percent discount to this client?” And God forbid they come back and they say, “Where is my 20 percent discount?” I will immediately respond and send a 20 percent discount with some automated sorry-I-made-a-mistake email. What’s cool about that is it starts doing A/B testing and figuring out how it gets you more margin. And that’s a key difference between AI. AI is learning and trying to adapt and improve the way you do things now and also understanding the subtle nuances of how you do that. AI is not perfect, though, because in order for it to understand and learn, it needs two things. One—it needs a history of doing things relatively consistent or even if it’s inconsistent, if the inconsistencies are consistent. It’s kind of ironic or a conundrum that you do consistent inconsistencies, but we all know we do them. The AI will pick up on that, and then take action appropriately, but it will require training.

botkeeper.com

|

13

TRAINING AI vs. TRAINING A NEW BOOKKEEPER AI doesn’t just out-of-the-box, I click the magic button and automate my business. I go on vacation and have my piña colada. You have to train it. But the training, what’s really cool, is who can tell me—keep your hand in the air—I want to start counting back in terms of quantity of weeks that it takes to train a new hire on accounting or to do bookkeeping for your firm. I’m going to start at four weeks. Put your hand in the air if you agree. Four weeks is how long it takes for you to train that new hire, and get them up to speed in your firm. Three weeks? Two weeks? One week? Two days? One day? (More than four weeks!) Okay. Ironically, I was not trying to prove that point. I was starting at four weeks thinking that’s a long time. Eight weeks? 12 weeks? We’re going to keep going—16? 20? 24? A year? (Close to two years!) Take a guess at how long it takes for you to train AI to do bookkeeping or bookkeeper’s job. Raise your hand, throw out a quote—a suggestion. Come on. Someone. Two days. Anyone have any other suggestions? I can tell you it’s lower, so guess. Four hours. Somewhere between two and four hours is actually how long it takes to train AI to do the job of a bookkeeper. In two to four hours, you will teach AI all the nuances of your practice—the kind of clients that you use, the clients that you work with, the services that you offer, how you engage with those clients. And then it takes about anywhere from 10 to 30 minutes per client for you to teach AI the nuances of that client, in particular, compared to how your firm operates. Can anyone name the last time it took you 30 minutes to train a bookkeeper how to do all the work for a given client? Raise your hand if that’s even possible today with people. No, it’s not. This is why AI is so cool because what did AI do? How did it figure all that out? History. In most cases, a business didn’t start the day that it became a client of yours. And even if it didn’t start booking stuff into Xero or QuickBooks until they became a client of yours, they still have history that lives in bank accounts and credit cards. When you set up AI, oftentimes you link data sources—credit cards, bank accounts. What’s cool with AI is that unlike people who can see patterns and datasets that are this big, AI can see patterns and datasets that are infinite, so you can connect Google Analytics, social media, banks, credit cards, payroll, benefits, bill pay, expense reports, timesheets, etc. The AI will look across all those datasets and understand the nuances that you alter the payment of payroll tax based on cash on hand. AI will learn those nuances, and we all know that we should never do that, right? How often do companies want to do that? I think you had a question. What you just said is it can’t be learned until they actually do it. But how often is something that is done, done only the first time now versus it had been done in the past?

botkeeper.com

|

14

The learning that you’re teaching—the only way you learn or the only way you can say that this is how you do something—our primal brain of, “In these situations, do this thing.” The only way we get that knowledge is by having done—these situations—and knowing to do that thing. It usually takes about four hours for you to train it to replace typical bookkeeper work, which is categorizations, classifications, reconciliations, bill pay, processing of expense reports, tracking or accruing revenue, tracking depreciation schedules…I could keep going. Everything a bookkeeper does—what we call a full-charge bookkeeper—what your definition in your mind of what a bookkeeper is is the thing I’m actually talking about replacing with AI. What’s cool about AI is AI isn’t AI and it doesn’t work if it has no data. Businesses you’ll find that excel at AI are companies that have been around for some number of years or companies that have a lot of clients. In this case, the AI that’s going to automate bookkeeping basically learns from the thousands of clients that it currently supports but then learns and tailors itself to the custom nuances of that individual client. And I actually have the model that I’ll walk through in a second.

WHAT SHOULD I AUTOMATE? What tasks should we automate? Let’s do exactly what you just described, which is taking an example of automating categorizations and classifications. The first thing you need to do is take a dataset. Just take a bank feed export, dump that into an Excel sheet, and then you’re going to upload that into an AI model. Before you upload, it you map it. What you’re doing is you’re showing that there’s a lot of dots, and it looks like there’s some sort of pattern here where there’s a clustering of those dots in one direction. Then you basically tweak the dataset, or you clean the dataset and you make sure you get rid of outliers or the random situations where a business raises capital, right? $18 million or $20 million coming into the bank account is not an everyday occurrence. It is a random situation, so let’s not apply a lot of attention to that when we’re building the AI model. Let’s apply a lot of attention to the transactions that look relatively similar, which are bank and revenue transactions within dollar amounts that are perceived to be regular. Then what you do is you write an algorithm. Remember Algebra I or II? All you’re doing is you’re basically writing an X-Y sentence with some sort of calculation in it that says if you apply this formula and you enter a number, every single number you enter is going to tell you an X-Y coordinate in this direction. You make sure that that formula or that algorithm fits the normalized correlation of data as tightly as possible so as few dots way below it, as few dots way above it.

botkeeper.com

|

15

TRAIN & RETRAIN Next you train and you retrain. It looks like I copied and pasted “train and retrain,” because I was maybe training and retraining my deck. But you train and retrain that algorithm on those data points such that you then teach it the predictive nature that I described in one of the earlier slides, such that when it sees data that looks very different it’s able to look at that data and understand the pattern or the correlation of that data. This would be, for instance, these are all hosting vendors. Google, AWS, Right Networks, so on and so forth, and what it’s doing is spotting a pattern between certain transactions either of similar dollar amount, similar vendor name. In reality, it’s not really just looking at vendor name, because remember, we all learned vendor mapping is not AI. What it’s doing is it’s saying if there is a negative transaction in a bank from Google, and that negative transaction says somewhere in the memo description, “Archive,” and then it also is between the dollar amount of $150 and $175, and it occurred between the first and the fifth of the month, then I know that that transaction from Google is “hosting.” How did it know that it was hosting? Human accountants—because we still need humans; the bots aren’t replacing all of us, they’re just replacing who—raise your hand if you love bookkeeping. A trick question because if you raise your hand, you’re getting replaced. But if you love accounting, you still got a job because the accountants are the ones training our model and basically saying, “Hey, this is a similarity amongst Google and Right Networks and AWS, and this is a similarity amongst a dollar amount. This client should never purchase hosting services for any more than a $150, and they always invoice between the first and the fifth of the month, so if it happens after the month—that’s a weird situation. Maybe Google screwed up. We all know Google doesn’t screw up. You find those anomalies, point them out, and then have a human look at them and make sure or figure out why it’s an anomaly. But what is basically happening here is it’s clustering similarities of transactions and not similarities of vendors—similarities of strings of transactions. So it has to have multiple fields that look like another string of multiple fields. What does this look like? This is what it looks like for botkeeper, which is my company, and the AI that we’ve created. And what you’ll realize here is this AI thinks about transactions and categorizations because, once again, we’re just doing an example of categorizations; this isn’t the only thing our AI does, but for categorizations, this is how an accountant should think of categorizations. The first ML model runs against the individual client and says, “Let me crawl through all the history and figure out where that individual client takes a transaction from Amazon with AWS in the memo field that’s negative of $125 to $150, charged on the first or the fifth of the month. Where do they put that transaction? What it learns is this client has always put—or eight times out of 10, seven times out of 10, maybe when they actually had someone that knew anything about bookkeeping—put it in “computing” as a bucket. Right? That is the classification or categorization—whatever you want to call it. We’re going to call it “classification” because I think of categorization as a different thing; it’s an abstract understanding. So that is a classification and therefore we know that we put a string of transaction computing into the “computing” bucket. We store that. Then we look across all of our clients and we

botkeeper.com

|

16

say, “Looking across all of our clients, whenever we see a string that looks like this: Amazon AWS, somewhere between that dollar range, somewhere between this month of purchasing—what have our human accountants taught our system to interpret that to be? And our human accountants have said that’s hosting, that is a hosting fee. Amazon AWS is hosting. Same thing as Google— archive as hosting. Same thing as Right Networks cloud is hosting, so on and so forth, and that when they see that string. Now if it was Amazon AWS $5,250, it would probably say, “That’s not hosting, that’s data processing.” Right? Because our accountants would be like, “You only spend that amount of money when you’re actually processing data, even if all the other fields match up.” That’s the human brain training it and telling our system what this thing is, which is hosting, and then storing it in another database. Now what happens—and here’s where AI is taking effect, where AI is teaching itself—is the first machine learning model. (Machine learning/AI—interchangeable. You use machine learning to do AI, you can’t do a AI without machine learning. If you hear someone say, “Oh, we do machine learning,” they do AI. And if you hear someone say they do AI— machine learning. So the first machine learning model says, “Hey, this client classifies this string of transactions under ‘computing.’ What is this transaction?” Out of this database it says, “We know and understand that string to be’ hosting.’” And then it goes back and it teaches the first database that this client does not put Amazon AWS, $125 to $250, between the first and the fifth of the month under “computing.” But rather, it puts hosting fees under “computing.” Notice that subtle difference? Or that very, very important nuance? That’s what accountants should be doing. Accountants should not be trying to take things that look alike and put them in like places. Accountants should say, “What is that thing? And let me understand what that thing is. And then let me understand why I’m putting that thing in the place.” That’s what all of you guys do, and that’s the difference between bookkeeping and accounting. So now that we’ve learned that nuance, we’ve taught our system to basically say, “Anytime there’s a hosting related expense, regardless of whether this client has ever in their life transacted with Right Networks or Google or Tom Smith Hosting Company or any other hosting company—any time this database understands that transaction to be ‘hosting,’ it knows exactly where to put it.” That is AI because you didn’t have to tell the system that you put this there, and you didn’t have to tell the system that you put this there. The system taught itself that it put that that is this, and that this goes there.

botkeeper.com

|

17

botkeeper.com

|

18

WHAT IS ML AND AI GOOD FOR? What is machine learning good for? It’s really good at consolidating data, so taking data from a bunch of disparate systems, which if you think about the evolution of accounting…accounting used to be relatively simple. You had bank accounts and credit cards, and you took transactions from them, and you booked and classified them, and you generated reporting for your client. Then bill.com came about and so did Fathom, so did Receipt Bank, and so did all these other systems that basically said, “Here’s one little piece of accounting that I’m going to try to automate, and I’m going to automate it and make you use this totally different system in order to automate that thing.” Which meant—all of you—who here has a tech stack? Come on, you guys have to have a tech stack. You use QuickBooks? Who here uses QuickBooks or Xero? You have a tech stack of one right now. Who here uses QuickBooks, Xero, and bill.com, or Expensify, or Receipt Bank, or fathom, or FloQast, or I could keep going on—some other system in conjunction with QuickBooks? That’s a tech stack. In most situations, an accountant has now been tasked with taking what was just bank account and credit card data, and now having to manage a dozen systems—one system for bill pay, one system for expense reports, one system for…. And that becomes a cluster because now you have to reconcile all those systems with each other and get them to tie up with QuickBooks or Xero, and then also figure out is the data in QuickBooks or Xero accurate, or should I look at bill.com? Is the data in bill.com accurate? If the two are different, which one do I assume is the master accurate data? In an attempt to automate or help accountants be more efficient, we actually made it more complicated and cumbersome for accountants to do their job. AI is really good at taking all those disparate, siloed datasets and systems and pulling them all in and correlating and reconciling that data. It’s also really good at doing “if this, then that” statements, but doing the “if this, then that” based on it auto-learning what “this” is and what the “that” is vs. you having to tell it, because if you have to tell it, then you’re relying on it being the same every single time, every single way. Whereas if it’s learning on the fly, it’s adapting and retraining itself on an ongoing basis to know that the “if this” became something else, and the “then that” became something else or a different system. It’s really good at seeing large patterns and large datasets. If I gave you a million transactions and said, “Tell me on average—show me a correlation between Google Analytics, visitor traffic, and dollar amount processed by that client,” you could probably crunch that over a period of time and produce to me that for every visitor, the client generates this much revenue. If I didn’t tell you even what to look at—I just said, “Here’s a large dataset. Show me all the correlations.” You’d have no idea where to begin. AI is really good at basically identifying those correlations. And then AI is really good at speed and scale because this—60 words per minute—is as fast as you can type or enter data into QuickBooks. AI can enter data at light speed—like the speed of compute, which is basically just a synapse of that computer chip.

botkeeper.com

|

19

HOW DO YOU BUILD YOUR OWN AI? How do you build your own AI? Back to the point: spend millions of dollars, spend years, hire a big team, use that to save your firm money, and hope to God that it’s going to have an ROI that those millions of dollars will come back in your pocket. No, the answer is don’t do that because that can only be done by very, very large firms that have a lot of money and have very consistent things that they know how to automate. It can also be done by firms like us or other AI firms that build AI to service or to be leveraged by many companies or many accounting firms that leverage it across hundreds of companies, and therefore tens of thousands of companies. In reality, what you really want to do is deploy AI into your practice and teach it, because the real value in AI is around you teaching and training the AI to do the things that your accounting firm or practice do and to do those consistently and accurately on an ongoing basis. That’s how you create value in your firm. That’s how you increase the valuation of your firm because if you can increase your margins, automate away manual data entry. Or let’s just say don’t replace a single person—just have a bot be the last bookkeeper you ever hire. That’s a pretty cool concept. And who wants to bet? Two three years from now you lose one of your existing bookkeepers. Except now you don’t have to replace that person; you replace it with a bot. And how do you replace it with a bot? Well you don’t need to hope to God that another bot is born and that it wants a job. You copy and you paste, which is a really cool thing that bots can do because that is what allows them to scale. It’s going to increase revenue because if you’re spending any of your time doing basic data entry, you’re not spending time going out and getting new clients, consulting with clients, selling them on additional services, advising them, providing value that they then interpret into “This is why

botkeeper.com

|

20

I like you—you’re different and why I should continue to give you my money.” You increase the happiness, it’s going to give you the ability to quasi-retire. An example here is: in a weird way accountants are the only people that I’ve ever met that think the way you retire, you exit your business, is that you just shut your business down. Pretty much all other fields, everyone I’ve ever met, when they think about retiring or exiting, it always involves a sale. Accountants are the only individuals that ever think an exit can simply mean, “I wind down my business, and I walk away.” Why is that such a crazy concept? Because you have all this value, and then you’re taking away value, and you’re diminishing it, and then you’re saying, “Once it gets down to no value and I’ve purposefully sabotaged and ruined my business and sunk it—at that point I get to do retirement.” What you could do is you could say, “Here’s a perfectly good business. Take it for as much money. Now I get to do retirement big and fun in Vegas versus in my backyard.” What bookkeeper or what AI will let you do is you can roll out or implement AI in your practice. And what’s great is if you automate away your job, and if your job is bookkeeping, like if you’re doing tax advisory, consulting, audit—any of those things. Sorry, we can’t automate that away. I do know MindBridge is automating away audit. They’re making the right steps in the right direction. But what’s cool is you can start automating away the role that you’re currently doing such that you can be on a beach somewhere drinking a colada or some other tropical non-alcoholic fruit drink. And in the interim your client is being serviced and the data is being entered and processed and they think you’re amazing, like you work around the clock because that data gets entered every hour of every minute of every day of every night on an ongoing basis, and it’s more accurate than it was ever entered before and it’s snappier. And with all that data, it automatically generates these cool reports, like with my accountant, it went from being a great account to being an account hero, and little do they know, you’re sitting in a beach chair relaxing and enjoying a piña colada. What’s cool is we’ve actually seen people basically use AI to retire rather than sell their practice. They generate recurring revenue on an ongoing basis. And what do all of you in this room have that’s probably one of the most valuable things: a network. When your friends and family and your network of individuals that know you think of you, what do they think? That person’s really good with numbers, and they make sure Uncle Sam doesn’t put me in jail. Why is that important? Because they always will think about you no matter what. You can change jobs—you can be like, “I’m not doing accounting anymore; I’m doing software,” and you’re still going to have family members come to you and be like, “Could you do my taxes?” And you’ll be like, “Ah, I told you I don’t do this anymore.” But why is that valuable? Well that means every single time that person comes to you and says, “Hey, can you do this for me? Do my bookkeeping?” Guess what you get to do: instead of saying, “I retired and I’m enjoying my time on a beach and spending time with family.” You get to say, “Yes, I’ll happily do that for you. I work around the clock. All my clients are super happy. Super accurate, super reporting, and I’m going to be so dedicated to your customer service.” Plug in AI and it’s doing its thing. Go to the beach.

botkeeper.com

|

21

That increases the value of your practice so when you do go to sell it, the acquirer goes, “Wow, this is really cool. If Tom were to leave his firm—hit by a bus, retire, exit, sell—the business doesn’t shut off. It runs, and it runs without Tom.” That’s super value. That gives you another multiple on the valuation your firm—literally, you go from making 1x revenue to 2x or 3x or 4x revenue the second you can walk away from your firm and it will run and operate without you. So this idea of automating yourself away is not a scary thing. It’s actually the way you make the most money possible. Who loves money? Who loves riding jet skis? Money buys jet skis. What should you automate? Categorizations, classifications, basic data entry, bookkeeping things that don’t involve a lot of critical thinking because AI is not good at being a replacement for a human. And what are humans? Critical thinkers, problem solvers, they interact, they have personalities. What is AI good at replacing? A bot or a drone or someone with no personality that sits there and goes like this. Don’t avoid them—embrace them, implement them in your business. But let’s level set here—AI and bots are not perfect. So similar to how you have to train and manage an employee, you have to train and manage a bot. Except that employee, when you taught it five things on day one, six months from now if you asked them what those five things were, they would be like, “I don’t know what you’re talking about.” A bot would spit back all five things. So it’s not going to be perfect, but it’s going to learn, and more importantly, it’s going to remember perfectly. So spend the time training, teaching, handing over the work understanding that it will make mistakes the same way a human does. Can anyone guess why bots make mistakes? Because humans program them, and humans make mistakes, and humans forget to program them what not to do or what not to do when, and they will jump to a conclusion, like, “Do this thing always and forever.” They start implementing RPA on AI and AI is like, “I don’t believe you. It’s not always and forever. Something’s going to change.” But you don’t tell it what, so it doesn’t know what to do, and then it just becomes as dumb as RPI.

botkeeper.com

|

22