Wednesday, October 23, 2019

Machine Language


Welcome - Machine learning is one of the most active areas in artificial intelligence. That's partly due to the explosion of big data, but it's also because of huge advances in machine learning algorithms. We now have machines that can learn to drive cars, search for new pharmaceuticals, and even be expert players in games that require complex strategy and creativity. These abilities are just the beginning. Machines are getting better at tasks that, in the past, could only be accomplished by humans. Machines are learning how to make better judgments through pattern matching and strategic decision-making. This course will give you a high-level overview of machine learning concepts and technology. You'll see how machines learn, then you'll see some of the most widely used machine learning algorithms. Finally, you'll get some ideas on how to select the best algorithm. Many organizations are taking advantage of this technology and say that one of the biggest obstacles is finding employees that are knowledgeable about machine learning. This isn't just for data scientists, but also for managers, and even executives who could benefit from knowing more about this technology. That's why this course is designed for mangers, entrepreneurs, students, or professionals who want to better understand machine learning. You'll see how machine learning fits into the overall world of artificial intelligence, then you'll see how to harness this new technology to make better decisions and find patterns in your data. So let's see what those machines have been up to in the world of machine learning. • 1. What Is Machine Learning? What it means to learn - Machine learning has been around for a long time. You can probably tell because the term itself is a little old fashioned. You don't often hear computers referred to as machines. The term machine learning got its start in 1959, when computer pioneer Arthur Samuel wondered if computers could learn their behavior instead of being programmed to do specific tasks. This type of thinking was drastically different from how most computer scientists viewed computers. A computer needed to be told exactly what to do. Think about how you interact with computers. Most programs are a series of explicit instructions. That's why when you're creating software for something like a banking application, you need to be very precise. You might create an instruction that says something like, "If a customer tries to withdraw money "and that exceeds their balance, "then cancel the transaction." That's an explicit instruction. If you see X, then do Y. Machine learning is different. Here you're not creating detailed instructions. Instead, you're giving the computer the data and tools it needs to study the problem and solve it without being told what to do. Then you're giving the computer the ability to remember what it did so it can adapt, evolve, and learn. That's not that much different from how humans learn. Several years ago I decided to purchase a new bookshelf with my wife, and we picked out a fairly large one from IKEA. Soon after I opened the box, I realized that putting it together would be incredibly difficult. I knew I'd have to learn by doing and I'd make a lot of mistakes. The instructions said that each one of the shelves had to have something called a dowel on each side, so I put dowels into each of the holes. Then I shoved the shelf into the sides and waited for feedback. My wife pushed down on the shelf and we were both surprised to see that it worked. Once I figured out the first shelf, I had enough experience to install the other shelves. That way I didn't have to look at the instructions each time I installed a new shelf. This human learning was about starting small and then going big. I had a problem so I formed a rule based on my own experience. I then used the rule to try some larger action. Then I waited for feedback to see if I needed to adjust the rule or leave it as it is. Each time I learned a new rule that worked, I added it to my memory. Once I finished, I probably could have put together many different types of IKEA furniture. In machine learning, computers go about this in much the same way. The machine starts by testing something smaller like some smaller part of the data. Then it uses a statistical algorithm to see how the data fits together. As a human, I had a rule that my shelf needed a dowel. A machine might have an algorithm that says two types of data should be treated the same way. The machine will then use the algorithm to look for patterns. The machine will then get some feedback. Remember that we tested the shelf by pushing down to see if it would support the book. Here the machine might test their outcome against their training data to see if it was correct. Anytime the machine learns something new, it adds it to the database. In a sense, it's storing it in its long-term memory so it can improve and adapt. Keep in mind that the machine and the human both came away with added expertise. I learned how to put together a needlessly complex bookshelf, so now I'd know much more about furniture assembly and our machine would know much more about the data. Work with data Much of computer science is still about working with explicit instructions. In traditional programming, you configure the machine to accept your input and produce an output based on the algorithm. The input is the command and the output is a predetermined response. That will work well when you have a program with straightforward calculations. But it gets a little trickier when humans can't explicitly instruct the computer on what to do. In these cases you need a programming model that allows the machine to learn. You also have to give the machine some ability to respond to feedback. This is a perfect scenario for machine learning. Imagine you're creating a program that needs to detect spam messages. These messages are usually filled with unwanted advertisements or even viruses. You can easily create a word filter program that deletes messages with common spam words so you can filter words like gold, lottery, or winner. This would certainly delete a lot of spam messages, but it would be pretty easy to spoof. You can change the word lottery to contain zeros or just use images. It also might lead to a lot of false positives. Maybe your friend sent you a joke about winning the lottery. This email would accidentally get deleted. These types of challenges don't work well when you're limited to carefully defined instructions. You can't simply create an input command with a predetermined response. That's why machine learning switches things around. Instead of inputting instructions, you'll input data. Instead of a predefined response, you'll be working with machine learning algorithms to help the machine learn how to respond. To start, you'd want to split your data into test data and training data. The training data is a smaller chunk that you'll use to find patterns. Sometimes a model will help your machine make sense of the data with statistical algorithms. These algorithms help the machine make accurate predictions or see patterns between different parts of your data. Let's think about how machine learning might work with our spam program. Let's take 10,000 email messages as our training dataset. We'll use it to build and refine our model before we try it on our test data of over a million messages. You can use your test data to show the machine different examples of spam. Then you could use a classifier machine learning algorithm to help split the email in the two groups. You could have your spam, then a regular message. This is often called binary classification. The machine does this by finding groups of words that are more likely to be found in spam messages. Then it comes up with a score to show the likelihood that it's spam. As a machine learning expert, you'll need to decide the best classifier algorithm to use. Then you'll tweak the hyper-parameters of the algorithm until the machine does a pretty good job predicting whether or not an email message is spam. Once you're satisfied, then that'll be your initial data model. You'll use a machine learning algorithm and tune the necessary hyper-parameters to make an accurate prediction. The key thing to remember is that even though the programmer inputs the data, selects the algorithms, and makes corrections, it's ultimately the machine that makes the decision about whether a message is spam. In some cases the programmer might not even know how the machine learned it was spam. Apply machine learning - Machine learning is already used in many different industries. When you check the weather, or if you're typing something into a search engine, you're already benefiting from machine learning. Any organization that has a lot of data and is looking for better ways to understand it can benefit from this technology. But there are some areas that are a much simpler fit. Think about this web application. Right now, you're either watching this video on a mobile device or on your computer. Machine learning can help us learn how to improve your experience. This application can collect a huge amount of data. So when you click on different videos, it can record what you're watching, where you are, and the time of day. It's pretty easy to collect massive amounts of data. What's difficult is gaining insights from that data. Machine learning can help take all that data and learn more about you. You could see videos that are much more relevant to what you'd like to learn. Maybe when you search for something new, you could have a customized search based on your interests. This application can study your behavior and see how it can better meet your needs. It might seem strange, but computers getting to know you better has actually turned into some of the most lucrative businesses. Companies like Google, Facebook, Apple, and LinkedIn are all using machine learning to better understand you. Some companies are even pushing the envelope of privacy by looking through your previous searches or trying to better understand your friends. That way, every time you use their service, they can give you a customized experience. That's why your Facebook newsfeed is unique to you. It's also why two people putting in the exact same search term into Google might get completely different results. Any time you're on a website and you see something that says Recommended For You, then you're probably benefiting from machine learning. Amazon looks through all of your previous purchases and then uses machine learning algorithms to recommend items. Netflix uses machine learning to find complex patterns so it can recommend different shows based on what you've already watched. YouTube lines up the next video based on those that you've watched in the past. They do this as a way to better make recommendations for you. Many organizations are using machine learning for automatic translation. YouTube might use natural language processing to transcribe your video and make subtitles. They're translating your speech into text. Some sites will use machine learning to translate one set of subtitles into several different languages. In machine learning, you're using artificial intelligence to help your program find patterns in massive data sets. Often, they find patterns in data that humans could never see. That's one of the most interesting things about machine learning, it's not just an enhanced form of human learning. Instead, it's a completely different way to find patterns, make decisions, and gain greater insights. So if you want to use machine learning in your organization, you have to think about the way the machine learns. That way, you can start to collect the data that will allow your program to better understand your customer. Before you start your machine learning project, you have to think about your data. Is it of high quality? Do you have enough data to learn something new? Remember that this is the way your machine learning program will view the world. The broader the view, the more likely it is you'll find something interesting. You don't want your program looking through a keyhole. When planning to use machine learning, start thinking about the best strategies to get high quality and diverse data sets. Different types of machine learning You may think of machine learning as a different name for something that's already around. Maybe it's just an updated way to describe statistics, or a new way to talk about data science. But the key when you think about machine learning is the focus on the term learning. Machine learning certainly has statistics. It might also be a key part of your data science efforts. But these are just the tools your machine needs to learn, they're not a substitute for learning. Think about what it means to learn. What are the different strategies that you use to learn something new? How can you take these strategies and then apply them to machines? Imagine you wanted to learn how to play chess. You could do this a couple of different ways. You could hire a chess tutor. They would introduce you to some of the different chess pieces and how they move across the board. You could practice by playing against your tutor and they would supervise your moves, and help you when you've made a mistake. Then, after a while, your tutor would finish all your lessons and you'd start to play competitively with others. Let's say you couldn't find a tutor. Then you could go to public parks and watch several hundred experts play the game. You couldn't ask them questions, you'd just quietly watch and learn. If you do this long enough, you'd probably understand the game. You might not know the names of the chess pieces, but you could understand the moves and strategies from your hours of observations. You might even try a combination of these two approaches. A chess tutor would show you the basic rules, then you'd go back to watch other people playing. You'd have a high-level overview and the names of the chess pieces, but you'd rely on observations as the way to see the new strategies and improve. These three strategies are very similar to how a machine might learn. You could do something called supervised learning. Here, a data scientist acts like a tutor for the machine. They train the machine by showing it basic rules and giving it an overall strategy. You could also try unsupervised learning. Here, you just have the machine make all the observations on its own. The machine might not know all the different names and labels, but they'll find patterns on their own. Finally, you could mix the two and try semi-supervised learning. Here, you would train the machine just a little bit so they get a high-level overview. Then most of the learning about the rules and strategies is through observing different patterns. As you can imagine, all three approaches have their own strengths and weaknesses. For supervised learning, you'll need a knowledgeable tutor. There needs to be someone out there that knows a lot about chess and could show you how to play the game. With unsupervised learning, you need to have access to a lot of data. You might not be able to go to a public park and watch hundreds of different experts play the game. It also depends a little bit on who you watch. You need to watch people who are playing well. With semi-supervised learning, you can run into trouble on both sides. If you have a bad tutor, it will be much more difficult to learn through observations. On the other hand, if you have a great tutor, but the people you observe are poor players, then you might understand the game, but not really become a master player. You might be in a position where you can decide which approach works best. But, often, you just have to do the best with what's available. If you can't find a tutor, then you have to do your best by observing people in public parks. If you don't have a public park, then you have to do your best to find a good tutor. You can only do semi-supervised learning if you have access to both. • 2. Different Ways a Machine Learns Supervised = Classify data Unsupervised = Cluster data Semi-supervised Reinforcement - One type of machine learning has gotten a lot of attention over the last few years. It's called reinforcement learning. Reinforcement learning is different from supervised, unsupervised, and semi-supervised learning. With each of these techniques, you're trying to invent the best model. You want to find a model that can most accurately classify different data sets or find meaningful clusters. Once you have the model, you can then let the machine work with the rest of the data. Reinforcement learning has the machine iterate to continuously improve the outcome. Over time, the machine should zero in like a heat-seeking missile and get closer and closer to high quality output. Reinforcement learning is very open ended. You're reinforcing certain ways that you want the machine to behave. Instead of leaving everything open to study and observation, you're giving the machine a very clear goal. Think of it this way. Back when I was younger, there was a simple video game called Pong. The game had two separate bars on the opposite sides of the screen. They would slide up and down as you tried to hit the ball to each side. In 2013, Google's Deep Mind project experimented with Pong to see if they could teach a computer how to play. They set up a series of rewards for the computer. Every time the computer hit the ball against the paddle, it got a reward. Then every time that the opponent missed the ball, it got another reward. Then it played against itself and tried to gather as many rewards as possible. It only took a short while for the computer to start to master the game and consistently beat human players. The Deep Mind team used something called Q-learning. This Q-learning helped with some of the more complicated games that needed more sophisticated rewards. In Q-learning, there are set environments or states. There are also possible actions that can respond to these states. In Q-learning, you want the machine to improve the quality of the outcome. This is represented with the letter Q. You might have a game like Space Invaders that requires you to shoot through aliens to eventually win the game. This has a more complex reward system. It's not just as simple as having your opponent miss the ball. In this case, you would start out with a quality of zero. Then you would have the machine learn which actions improve the conditions. Each time an action improved the state, the Q would go up from zero. The Q would go up based on the states and actions. This type of reinforcement learning is one of the most promising areas in machine learning. It allows the machine to go through endless simulations of actions and states until it finds the best strategy. In 2015, Google's Deep Mind project made the news when their AlphaGo program first beat an expert player in the game called Go. AlphaGo used a form of unsupervised learning. It learned primarily by observing professionals playing the game. Their newer program AlphaGo Zero relies primarily on Q-learning. It didn't have to watch the experts play the game. AlphaGo Zero simply went through the game and tried different actions as a way to change the state and win. Within hours, this Q-learning machine played Go at a level that humans can't understand. In fact, after just 70 hours of training, AlphaGo Zero beat the earlier version of AlphaGo in the first 100 tries. Reinforcement learning and specifically Q-learning allows machines to quickly grow beyond our understanding. It can help you skip the steps required in unsupervised learning. You don't need hours of observing and studying massive amounts of data. • 3. Popular Machine Learning Algorithms Problems that use machine learning Decision trees k-nearest neighbor K-mean clustering Regression Say you're looking to see how one thing impacts the probability of another thing happening. The most popular algorithm for this type of analysis is called the Bayesian algorithm based on the Bayes' theory of statistics. Naive Bayes is one of the most popular Bayesian machine learning algorithms. It's called naive because it assumes that all of the predictors are independent from one another. Naive Bayes is mostly used for binary or multiclass classification. Fit the data • 4. Applying Algorithms Follow the data Remember that bias and variance are ways of measuring the difference between your prediction and the outcome. They're not right and wrong answers but different dials that you need to improve your predictions. The key thing to keep in mind is that you'll use different techniques based on whether you have too much bias or too much variance. Select the best algorithm • 5. Common Challenges Machine learning challenges Machine learning challenges - As you can imagine, machine learning is filled with many technical challenges. You can watch for these three common challenges when you're working on your machine learning team. The first challenge is making sure that people in your organization can ask interesting questions. Next is to keep training data separate from testing data. The final challenge is to not spend too much time choosing the right algorithm. Many machine learning specialists work in larger organizations. These organizations will have groups of people with many different skills. It might be difficult to make a connection between the needs of the business and machine learning. Many departments might not have the skills in place to ask interesting questions. So one of your first challenges will be helping the rest of the organization embrace a more exploratory mindset. You might need to push the organization into asking interesting questions. I once worked for an organization that wanted to invest heavily in machine learning. They interviewed at local universities and hired a half a dozen machine learning experts. This team immediately got to work setting up the technology they needed to work with large datasets. Once that was all set up they started to ask people what were the different questions that they wanted to answer. They were just fresh out of graduate school so they were used to running small data experiments and learning from the results. The business people and managers didn't have any experience asking good questions. When they did, it was something like: What type of promotions will our customers like? Which is something that could be solved with traditional database tools. The team felt like they built a Formula One race car and they were showing everyone how to parallel park. That's why you should spend a good deal of time at the beginning working with the business to ask the small, interesting questions. Then once you can ask dozens of good questions, you can work with the business to add greater value. Another challenge you might run into is when teams don't clearly separate training data from the testing data. Remember that training data is the small amount of data that you set aside to build your model in supervised learning. That's where you'll tweak the settings with your machine learning algorithms. Some machine learning teams work to create an extremely accurate model for their training data. Then they show the result to their managers and the rest of the organization. Then they sometimes make the mistake of mixing this training data back into the testing data. When this happens, you'll probably have much less accurate results. The first thing you want to keep in mind is that you should never remix your training and testing data. This makes the data predispose the settings of your algorithm. In a sense, you're already giving your machine the correct answers. Remember that you want your model to be generalizable. That means that it should work well with unfamiliar data. If you're mixing in some of your new data with your old data, you're not really giving your model the fresh perspective it needs to correctly test its accuracy. You also want to watch to make sure you're not overstating the effectiveness of your model. When you present great results with your training data, then it might be confusing to your managers when they same model does poorly later on. The best way to avoid this is to not make presentations with training data. When you make a presentation, make sure that you do it with unfamiliar data. That way your managers have a realistic view of its accuracy. The final thing to keep in mind is that you shouldn't be too concerned if you have a strong bias toward any one machine learning algorithm. Some machine learning experts really like some algorithms better than others. It might just intuitively make sense to them. Some algorithms are just like old songs that bring back pleasant memories. Either way, don't be too concerned about making sure you're selecting the best algorithm. Sometimes you'll work better with your favorite tool than with the newest tool.

Labels:

Projecting the Financial future - Financial Modeling and Forecasting Financial Statements


Many people mistakenly believe that financial accounting reports are simply dry, historical summaries of the past. - Now there's nothing wrong with history. A historical summary of a company's past performance allows you to evaluate management performance, especially if you compare that past performance to what was planned. - However, most financial statement users are not as interested in the past as they are in the future. - For example, when deciding whether to loan money to a company, a banker wants to know what the company's cash flows will be in the future. After all, it's out of future cash flows generated by the company that the loan will be repaid. - In a similar fashion, potential investors are interested in future profits, and future cash flows. When you buy a company, you're buying its future, not its past. - Now, in this course, we will show you how to use the historical financial statements as a platform for forecasting a company's future. - We will consider each of the important financial statement numbers, such as cost of goods sold, depreciation expense, and the levels of inventory and fixed assets. And we'll ask the question what will cause this number to change in the future. - We will see the forecasting power of the simple account equation assets equal liabilities plus equity. - We will work through some practice exercises in constructing forecasted financial statements. These are also called pro forma financial statements. - And we will illustrate the insights that financial statement forecasting provides by using our favorite teaching case, the near-death experience of Home Depot back in 1985. Use the past to understand the future(Viewed) - Now a common criticism I hear about accounting is that it's too focused on the past. Managers, bankers, and investors don't want to know about the past. They want to know about the future. - People say that looking at financial statements is like tryin' to drive your car by looking in the rear-view mirror to see where you have been. - Well, I'm going to go with Winston Churchill on this topic. He said, "The further back you can look, "the further forward you are likely to see." Churchill, a student of history, understood that studying the past allows one an educated glimpse into the uncertain future. - Studying and analyzing the historical performance of a company allows financial statement users to project the future performance of a company. - We can make some reasonable assumptions about a company's future performance, and it is then fairly straight-forward to see what future financial statements might look like. - To illustrate, let's discuss forecasting a company's income statement. Now, the same general concepts apply if we're looking at a balance sheet. So, to begin, we recognize that the amounts of some expenses are tied directly to the amount of sales for the year. - For example, if we do nothing differently in the future, it seems reasonable to predict that cost-to-sales will increase at the same rate as sales increases. - For example, year after year, Walmart's cost-of-sales is approximately 75% of Walmart's sales amount. In other words, if Walmart sells you something for $100, that thing costs Walmart about $75 to purchase from its suppliers. - So, if Walmart sales are forecasted to increase next year to $1 trillion, then cost-to-sales would probably be about $750 billion. - By the way, Walmart's actually sales are about half that level, 'about $500 billion, but hey, we're doin' a 'what-if' calculation. Why not try out an optimistic scenario? - Exactly, similarly, other operating expense, such as wages, are also likely to maintain a constant relationship with the level of sales. - Some expenses don't, necessarily, vary with sales. For example, depreciation expense will vary with the amount of a company's buildings and equipment. If the amount of buildings and equipment increases, it's reasonable to expect depreciation expense will also increase. - Now, consider interest expense. The amount of interest expense is not tied to the level of sales. Instead, you pay more interest if you have more loans. If the amount of a company's loans goes up, it is reasonable to forecast that interest expense will go up as well. - Now, let's not forget about income tax expense. Income tax expense is not a function of sales. It's a function of income, hence the name. - If you tell me forecasted income for next year, I can then apply the expected income tax rate to generate an estimate of next year's income tax expense. - Now, by the way, self-employed individuals in the United States do this simple forecast all the time as they send estimated income tax payments into the U.S. Internal Revenue Service. - Now, a major point is this. In creating forecasted financial statements, we just systematically think about what causes financial statement numbers to change? What events or activities drive those changes, and then we forecast the future based on our expectations about those changing activities. - Using historical information and making some reasonable assumptions, we can get a look at what the future might look like. - And as we put more investigative effort into our assumptions, we can get an even more accurate picture of what the future might look like. - It's not hard, and it's kind of fund, and the nice thing about getting a glimpse of what the future looks like, is that if you don't like it, you can change the assumptions associated with your forecast. - Yeah, you can change the assumptions to get a different forecast. You just need to make sure that those changed assumptions are associated with reasonable and achievable actions in the real world. If they are, you can create a different financial future. Keys to running a business - Running an organization without the benefit of any financial forecasts is a very exciting exercise. From one day to the next, you have no idea what's coming. Every morning, you wake up to a whole new collection of surprises. Now, that's one way to run an organization. A different way is to spend some time carefully constructing a numerical plan, a financial model, a forecast. Yes, there'll still be surprises, but you'll have the model, the plan, the forecast within which to adapt to those surprises. A careful financial model is simply a numerical plan of a business's activities made in advance that helps a business identify and solve problems before those problems ever actually arise in the real world. Now, think about a company that's been around for a long time. Let's use General Electric as an example. They've been around since 1878, when Thomas Edison started the Edison Electric Light Company. Now let's compare this old company, General Electric, to a brand-new company, a startup company, a company that involves just two partners, 10 employees, and lots of exciting ideas. Which one of these two companies, the old one or the new one, is likely to have a more comprehensive, sophisticated internal financial modeling and forecasting process to aid in both short-term and long-term planning? Well, the old company, of course. General Electric, for example, has a very elaborate internal financial modeling and forecasting process. In contrast, a startup company, they probably haven't taken the time to make any kind of financial plan at all. Now think about which of these two companies really needs a financial plan, the old company, General Electric, or the new startup company. Of course they both can benefit from financial planning and forecasting, but which one can benefit more? Let me put it this way. If General Electric decided not to do any detailed financial forecasting this year, would the General Electric employees still know what to do? Well, sure. The company's been around for so long that everyone knows what to do. You pretty much do what you did last year, plus a little more. At least for a year or two, General Electric could probably continue forward in good shape without a financial plan just by operating on organizational inertia. Now, how about that startup company? In a startup company, no one knows what they're doing because it's never happened before. It's their first year. They're creating the business as they go, so it would be extremely useful for the partners in this startup company to spend a little time planning out on paper how things are going to go before launching into the unknown. For example, our startup company has 10 employees now, but is that enough to handle the necessary workload next month, or is it too many? Well, if you haven't even tried to forecast your level of activity next month, along with the output capacity of your employees, then you have no idea whether 10 employees is too many, too few, or just right. Consider another example. Let's say that your startup company is developing green technology and needs the rare earth element terbium in its production process. The company's terbium supplier's located in China, and the average time between when an order is placed and when the terbium arrives is about two months. That's the average. But sometimes it's one month, and sometimes it can be as long as four months. Now, without terbium, the entire production process shuts down. With this uncertainty about terbium delivery delays, operating a startup company without a detailed financial and production forecast of terbium needs, that's terrifying. Yeah, that startup company needs a financial plan, needs it badly. Trying to operate your new business without some advanced financial modeling is like driving a car without looking ahead out of the front windshield. Exciting, sure, but not a good idea. Financial forecasts and loans Financial forecasts and investment decisions Use financial forecasts to understand new information • 2. It All Starts with an Accurate Sales Forecast IBM and the famously bad sales forecast(Viewed) IBM and the famously bad sales forecast - In 1950, resistance to the idea of electronic computers was high inside IBM. - IBM's engineries were specialists in electromechanical devices and were uncomfortable working with vacuum tubes, diodes, and magnetic recording tapes. - In addition there were many questions about the customer demand for electronics computers - In fact, one IBM executive forecast that the size of the world-wide market for computers was no more than five. - Now think about that for a moment. Five computers for the entire world. Look around where you are sitting right now, with your phone, your computer, and various other personal devices. There may be five electronic computers in the room with you, right now. - While following significant internal debate and in spite of this pessimistic sales forecast of five computers. IBM pressed forward with the production of it's first electronic computer, the Model 701. - Programming these early early electronic computers involved flipping switches and plugging cables into different holes in big circuit boards. Now, on a personal note this is exactly what our dad did when he started as a computer programmer for the US Department of Defense. He was programing computers by switching wires around on circuit boards. - Through the 1960's and 70's with it's aggressive leasing program emphasis on sales and service and continued investment in research and development IBM established a dominate. Now, some claimed a monopolistic position in the main frame computer market. - Since then IBM has made a couple of strategic decisions that, in retrospect created a lot of money for other companies. First, when creating it's personal computer back in 1981 IBM decided to use microprocessors made by Intel. - IBM could have designed and produced it's own microprocessors. The company had historically made all of it's computer components in house. But, for speed of development of the IBM PC, IBM went with the existing Intel microprocessors. - And, it's interesting to note as of May 2019, Intel is worth about $230 billion dollars. - Additionally, when the IBM PC was released in 1981, IBM chose not to develop the operating system for its first PC. Instead, electing to use a system called DOS, licensed from a small 32 person company named, Microsoft. - And, as of May 2019, Microsoft is worth about $1 trillion. - [Man In Red Shirt] Now you keep saying what everybody's worth. What's IBM worth? - Well, as of May 2019, IBM is worth about $ 125 billion. In retrospect it makes you wonder where IBM would be today if the company had made it's own microprocessors and it's own PC operating system. - It's also interesting to go all the way back to that original sales forecast in 1950. Only a market for 5 computers, world-wide. If IBM had relied completely on that sales forecast the company would have never entered the computer market at all. - Most of us would probably have never heard the letters IBM. - The starting point, and in many ways the most important point of any financial model exercise is the sales forecast. Help/Feedback Combine historical trends with current plans(Viewed) Incorporate seasonal patterns and recent developments The costs of being wrong - Sales forecasting is not an exact science. Lots of things can go wrong. For example, sometimes data are misinterpreted. Also, it's often the case that the future just doesn't turn out according to the forecast. The future is an uncertain place. An example of data misinterpretation arose in the acquisition of Autonomy by Hewlett-Packard or HP. HP is a hardware and software company based in Palo Alto, California. In October 2011, HP purchased Autonomy, an enterprise software company founded in Cambridge, England. The purchase price was $11 billion. Just over one year later, in November 2012, HP announced that it was recording a $9 billion impairment loss related to the Autonomy acquisition. This means that HP had determined that the value of Autonomy wasn't $11 billion. It was just $2 billion. Now, this case is still in the courts. HP has accused Autonomy of manipulating the reporting of its sales, and Autonomy counters by saying that this is a simple matter of the people at HP not understanding International Financial Reporting Standards. What is clear is that bad data, or data misinterpreted, caused the company to look like it was worth $11 billion, when it was actually worth only $2 billion. Now, here is my favorite sales forecasting fiasco: the AOL acquisition of Time Warner. In January 2001, AOL, which was originally known as America Online, acquired Time Warner. The combined company was valued at over $150 billion. Now this was at the height of the internet bubble, the market was crazy in terms of assumptions about how much money would be made through internet commerce. The AOL-Time Warner merger seemed like a match made in heaven. Pairing the online presence of AOL with the vast media library of Time Warner. The expectation was that the obvious synergy's would generate astronomical future sales and profits. Well, not long after this deal, a wave of reality swept over the world. People came to their senses, and it was realized that the future sales growth expectations for all internet-related companies were wildly overoptimistic. Worldwide, the values of tech companies dropped by an average of 50%. Because the $150 billion AOL-Time Warner valuation had been based on future sales projections that were too high, when more realistic assumptions were applied, it was realized that the combined company was worth much less, over $100 billion less. But errors also happen in the other direction. Sometimes things turn out much better than had been forecasted. And if the original forecast was pessimistic enough, the forecast itself might have turned the company away from something that ultimately turned out to be very profitable. Recall, that in the early 1980s, IBM made two fateful decisions to outsource microprocessor production to Intel and operating system software to Microsoft. Presumably, IBM executives had forecast that future sales and profits from personal computer microprocessors and operating systems weren't large enough to pursue. Well, as of May 2019, the combined market values of Intel and Microsoft were 10 times as much as the market value of IBM. Oops, bad forecast. Sometimes data are faulty or misinterpreted, as with autonomy. But the most common reason for significant errors in forecasting is that the future just doesn't turn out as expected, or hoped. As with AOL and Time Warner, and with IBM, Intel and Microsoft. As we learn the basics of financial modeling and forecasting, keep in mind that this is not an exact science. Prudence, caution, and healthy skepticism are in order, in selecting the data to input into a forecasting model. 3. What Causes Financial Statement Numbers to Change? Home Depot 1985: Three weeks to live(Viewed) The impacts of natural changes(Viewed) The impacts of long-term planning decisions(Viewed) The impacts of financing choices(Viewed) 4. Constructing a Forecasted Income Statement The Gap and predictable change(Viewed) Forecasting sales-based expenses(Viewed) Fixed costs and variable costs(Viewed) Forecasting interest and income taxes(Viewed) 5. Constructing a Forecasted Balance Sheet The power of the accounting equation(Viewed) Identifying the missing number(Viewed) Easy "plugs": Cash, investments, paid-in capital(Viewed) Realistic but challenging "plug": Loans(Viewed) • 6. Constructing a Forecasted Statement of Cash Flows The Home Depot story revisited(Viewed) How to deduce cash flows(Viewed) Forecasting operating cash flow(Viewed) Forecasting investing cash flow(Viewed) Financing cash flow(Viewed) - In the 2018 Fortune 500 listing of the largest companies in the United States, Home Depot is number 23. Home Depot is by far the dominant home improvement retailer in the United States and in the world. - Most people don't know that Home Depot was close to death back in 1985. We know because for many years, we've been teaching a Harvard Business School case about Home Depot. The case was written by Harvard professor Krisha Palepu. - An analysis of Home Depot's financial statement numbers from 1985 reveals that the company's income was down. But the income drop doesn't appear to be an immediate crisis. - Not a crisis until you look at the cash flow numbers. During 1985, Home Depot's operations were burning through four million dollars per month. This is the amount of case paid to suppliers, to employees, and for other operating expenses that were in excess of the cash collected by customers. Four million dollars a month. - And there's additional bad cash flow news. During 1985, Home Depot also burned through an average of eight million dollars per month building new stores and buying some stores from other companies. - In total, Home Depot's 1985 cash burn rate was 12 million dollars a month. Eight million burnt through capital spending, and four million dollars burned through daily operations. - Startup companies often keep track of their cash burn rate. A startup company starts off with a pile of cash. Cash from the personal savings of the founders, usually not much, cash from early investors, and maybe some cash from a local bank loan. - The goal of the startup company is to start generating cash from profitable business operations before burning through all that initial pile of cash. The size of that initial pile of cash, combined with the cash burn rate, gives the company founders an idea of how long they can last before they have to go back out into the streets looking for additional financing. - Now, in Home Depot's case back in 1985, remember that the company was burning through cash at the rate of 12 million dollars a month. In 1985, the company had borrowed 92 million dollars. That was in addition to the 120 million dollars the company had borrowed the year before. Could Home Depot just keep borrowing money forever? - Well, when 1986 started, Home Depot had a cash balance of nine million dollars. With a cash burn rate of 12 million dollars per month, that left them just three weeks of remaining cash. - Three weeks to come up with a cash flow plan. Three weeks with the cash burning away at three million dollars a week. Three weeks to arrange new loans or get additional cash from investors or three weeks to come up with a plan to slow down or even reverse this cash burn rate. - Okay, we're all on the edge of our seats. What did they do? - Remember, at the end of 1985, Home Depot was in dire straits. - To try to fix Home Depot, we have looked at the impact on Home Depot's forecasted cash flows of various changes in operating, investing, and financing practices. - Although we did find changes that might help, at least in the short term, we didn't find the magic bullet that would completely fix Home Depot's operating cash flow problems in order to put the company on solid footing for future growth. - When we do this exercise in class, we pause and say, "Well, I guess it's hopeless. "Home Depot can't be fixed, hopeless." I actually have a PowerPoint slide where the word hopeless twirls around on the screen. - But students know it can't be hopeless. They've seen Home Depot. Surely the company must have figured out something. - So after a pause, a few students will call out, "Do everything at once. "Don't just change one thing at a time, "change everything." - And of course, that's exactly what Home Depot did. They changed everything in 1986. - Based on the modeling exercises we did before, here is a forecast of Home Depot's operating cash flows for 1986 through 1990, assuming that the company continues operating in the same way as it had in 1985. - And if you're a visual person, here's a time series graph of the forecasted operating cash flows. - Ugly, ugly. A company with forecasted operating cash flows like this has no future except death. - Okay, well let's change everything. We will manage our inventory more efficiently, reducing the number of day sales in inventory from the existing 108 days to an achievable industry benchmark of 66 days. - We will squeeze our accounts receivable, reducing the collection time from the existing 14 days down to nine days. - We will stretch out the time we wait to pay our suppliers from 48 days to 50 days. Not a big change, but everything helps. - Let's manage our purchasing costs from our suppliers and our pricing to our customers to increase our gross profit percentage a little bit, from 26% to 28%. - And finally, let's reduce our overhead expenses, wages, rent, and so forth, from 22% of sales to 20% of sales. - All of these changes are reasonable, benchmarked against best practices in the industry. - Now, take a look at these forecasted operating cash flows which reflect all of these changes. - And here's the time series graph. - Astonishing. A complete transformation. With these operating cash flows, Home Depot can easily keep growing, paying for its expansion with internally generated cash flows, as well as the proceeds of loans which cash flow hungry bankers will now be eager to supply. - So I guess it's as easy as that. Just a few changes in a spreadsheet and Home Depot's future is secure. - Uh, no, no, no, my friend. It's not as easy as that. Behind each one of these spreadsheet parameters is a person, an inventory management person, an accounts payable person, a wage compensation person. The marvelous transformation in the spreadsheet is only possible if those people can make it happen in the real world. - That's a good point. Financial modeling and financial statement forecasting is a great starting point, a tool to explore various options. - But in the end, the real work is done by real people in the real world, who then make the financial model come to life.

Tuesday, October 22, 2019

Power BI


Power BI Desktop is totally free. You don't even need to sign in. You won't be able to share content online though. https://powerbi.microsoft.com/en-us/get-started/ System requirement – Available RAM 1.5 GB + recommended (1 GB minimum) CPU: 1 Ghz or faster Display: Need high resolution or you will not be able to see 1440*900 or 1600*900 Software: IE10, Window 7, Net 4.5, Power BI desktop Data skills: Visualising data and working with others, so need data skills – Excel 2016: Managining and Analysing concept Overview : Power BI concept BI – Is connecting business decision making with facts; - Get data/model/create visualization/share Enterprise BI – SAP, Oracle, IBM, Microsoft - Alternative – Excel was first step into self service BI. Power BI helps create Datasets, create reports – charts and visualization, help create dashboards, Power BI tools: powerbi.com or Power BI Desktop or Power BI mobile. High level Power BI developer and Power BI report server and more but high level, and beyond our scope for now. Power BI Editions: Power BI (free), Power BI(Pro), Power BI (Premium), Go to powerbi.microsoft.com/pricing – Free – can create a workspace, but cant share. For work we need Pro, which helps collaborate, connect excel to dataset being published If we are using Office 365. Premium is pro for large organizations for more than 500 users, helps better administer and manage. Power BI tools – Get Data – using Power BI service or Power BI desktop; Model data using Power BI desktop, Create visualization and reports using Power BI service and power BI desktop Goals - Users – IT professional, Business Analysts, End Users Sign up for Power BI – Down load free – • On left hand side we have navigations like favorites, recent, apps, share with me, workspaces, my workspaces, • The main screen has Discover content – My organization, services and Create new contents – Files, database ------------------ 2. Get Data Overview: Power BI data sources Two broad sources of Data sources – 1) That live in cloud use SaaS solutions; Azure services 2) That live in your premises - SQL server, excel workbooks/data , csv files, power BI desktops Connect to a SaaS solution Click on Services Get – You will see all online services – There is a long list – you can type in search bar on top ‘Sales dynamics’ in case you need to Connect to sales analytics for dynamics Type URl or copy paste – Type next – learn more will give Authentication method – Connection is stored as an application. Upload a local CSV file Get data – Files – Refresh – Local computer/Network share/ (Not refreshed)- Refreshed hourly if in cloud base (One drive for business or sharedrive) Say you upload a file on ‘GDP America’ – you will see Dashboard on the main screen; the uploaded file will be in Datasets. Connect to Excel data that can be refreshed Work books need to formatted as table. Select data and check ‘Format as table’ and save the file. (Save As – One Drive) {Save/Synchronize} button means it is saved in cloud. Delete local copy is a good idea. You can import or connect – Better import as it will refresh automatically. Time to import will be based on size of file. (Now we have two datasets and one App-saas) Connect to a sample – (Retail Analysis) You can get, reports/dataset/dashboards. -------------------------- • 3. Create a Report with Visualizations Explore the Power BI portal You can explore the various features. Overview: Visualizations Charts based on same data set – modify and manipulate visuals. We have different types like – Charts, Text visualization (Single number card, Multi row cards, KPI, Tables, Matrix), Geospatial Visualization (Map, Filled Map, ArcGIS Map), Other visualization(Tree Map, slicer, image) combine visualization to create story. Share in App workspace, or take visualization and pin to dashboard. Using visualizations You can view each, export to excel, pin, Create a new report Three methods: Use power BI desktop 2 using power BI portal Save copy of report and modify that. – File – save a copy Create and arrange visualizations Type of visualization that comes depend on data selected. You can move, drag, adjust shape/size/ add header. Format a visualization Tab session helps us do that. Create chart visualizations You can add pages and do it. Go to Field list – categories. Tables – don’t use data labels and legends together. Can get granular in formatting. Use text, map, and gauge visualizations and save a report Select city (its geo special) – it will give map. Eg. Add name/store number – work on fields to add/delete column Use a slicer to filter visualizations Had data card with funnel, help filter Sort, copy, and paste visualizations Download and use a custom visual from the gallery Created by Microsoft or others. App.powerbi.com; Market place/My organization apps. You can download from market place new custom visuals. Import a custom visual/delete. ---------------------------- 4. Modify and Print a Report Rename and delete report pages Move page – drag and drop. Delete pages. Ctrl Z it will come back until you save. Once you save you will not get it back. Add a filter to a page or report We can work in report in Edit view or reading view. Edit view reports are small while in read view it will be bigger. We can use Filters – Report level, Page level, basic , advanced, Conditional etc. Set visualization interactions Print a report page Can print only current page ; can add header and footer, date Send a report to PowerPoint File – Export to Powerpoint. --------------------- 5. Create a Dashboard Create and manage dashboards From data, scratch or report. Single page, but no tabs. So need to choose most significant data. Will support natural language query (Ask a question about data), share. Switch tile to focus mode, and print only that tile. Pin a report tile to a dashboard Changes in report will not be reflected in the dashboard, it will be pinned as a picture. Pin a live report page to a dashboard Any change in report will be updated here. Pin live page. Pin a tile from another dashboard Pin an Excel element to a dashboard From Power BI Desktop – select Power BI publisher for Excel More used for Pivot table – Need above Excel 2007 In excel you will see Power BI. – Select/Pin/open Power BI - can pin table/range. Refresh the dashboard, Manage pinned elements in Excel Snapshots are published in dashboard. Add a tile to a dashboard 4 media files – video, text, web, image, and 1 Real time data i.e. custom streaming data eg. Sensors on manufacturing report. Build a dashboard with Quick Insights Choose dataset – insight turn data to visualization Set a Featured (default) dashboard ----------------------------------------------- 6. Ask Questions about Your Data Ask a question with Power BI Q&A Tweak your dataset for Q&A Have data in table format, Name tables, Enable Cortana for Power BI Windows have a speech recognition feature called Cortana – to help BI utilize this better, the requirements are – Windows 10 update 1511, Cortana enabled in windows, Use office 365 account used in Power BI, Enable cortana for the database. Go to - ) Settings -) Datasets -) Q&A and cortana select allow cortana to access this dataset -) Apply ------------------------------ 7. Share Data with Colleagues and Others Overview: Sharing reports and dashboards How? 1) Report – Publish in web – can view only – People cannot share with others 2) Share Dashboards. – People in network can share with others, can view, but not edit. 3) Create dashboard for a group. 4) Publish a content pack. – Original is not editable, but those using can edit. 5) Share a tile snapshot Publish a report to the web File -) Publish to web. Risky as all can see. You can copy link and email. : Security through obscurity. Manage published reports Share a dashboard Create an app workspace and add users Workspace -) create work space (paid feature/help members to edit – like office 365 feature) Use an app workspace Publish an app You can assign colours to different teams. Get Data -) My organization you can see this App; also you can see on LHS – All can see. Replaced content packs. Create a QR code to share a tile – Quick response code. Embed a report in SharePoint Online – File – Embedd in sharepoint online ; tedious thing is to give permission. ------------------------- 8. Use Power BI Mobile Apps Google pay, Appstore and search for power BI or download from portal and send me a download link can open in mobile. View reports and dashboards in the iPad app Use workspaces in the mobile app Sharing from Power BI Mobile --------------------------------------- 9. Use Power BI Desktop Install and launch Power BI Desktop Help • Model data – Transform, shape, merge • Relate data • Work offline. Download – Power BI button. Get data Reduce data Transform data Relate tables Get Power BI Desktop data with the Power BI service Export a report from Power BI service to Desktop Power BI Desktop definitely work with the files you have on you computer, what you see in the Service is what's been published, however you can download a copy of what's been published to the Service. PBIX download can be done for reports created in Power BI desktop after 2016

Labels: