官术网_书友最值得收藏!

Chapter 1. Introducing Test-Driven Machine Learning

This book will show you how to develop complex software (sometimes rooted in randomness) in small, controlled steps . It will also instruct you in how to begin developing solutions to machine learning problems using test-driven development (from here, this will be written as TDD). Mastering TDD is not something this book will achieve. Instead, this book will help you begin your journey and expose you to guiding principles, which you can use to creatively solve challenges as you encounter them.

We will answer the following three questions in this chapter:

  • What are TDD and BDD (behavior-driven development)?
  • How do we apply these concepts to machine learning, and make inferences and predictions?
  • How does this work in practice?

After gaining answers to these questions, we will be ready to move on to tackling real problems. This book is about applying these concepts to solve machine learning problems. This chapter contains the largest theoretical explanation that we will see in the book, with the remainder of the theory being described by example.

Due to the focus on application, you will learn much more than simply the theory of TDD and BDD. However, there are aspects of practices that this book will not touch on. To read more about the theory and ideas, search the Internet for articles written by the following:

  • Kent Beck—The father of TDD
  • Dan North—The father of BDD
  • Martin Fowler—The father of refactoring. He has also created a large knowledge base on these topics
  • James Shore—One of the authors of The Art of Agile Development, who has a deep theoretical understanding of TDD, and explains the practical value of it quite well

These concepts are incredibly simple and yet can take a lifetime to master. When applied to machine learning, we must find new ways to control and/or measure the random processes inherent in the algorithm. This will come up in this chapter as well as others. In the next section, we will develop a foundation for TDD and begin to explore its application.

主站蜘蛛池模板: 铁岭市| 穆棱市| 米林县| 宁强县| 赣榆县| 梁山县| 馆陶县| 乐陵市| 南和县| 绥芬河市| 赤水市| 曲水县| 韶山市| 浪卡子县| 元谋县| 南靖县| 江口县| 镇安县| 汉中市| 尚义县| 杂多县| 洪泽县| 靖宇县| 淳安县| 公主岭市| 开平市| 黄山市| 高唐县| 枞阳县| 华坪县| 安达市| 当涂县| 承德市| 綦江县| 英吉沙县| 高邮市| 桐庐县| 延津县| 菏泽市| 马鞍山市| 庄河市|