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

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.

主站蜘蛛池模板: 东台市| 舞钢市| 临泽县| 祁连县| 平阴县| 邯郸县| 商城县| 成都市| 蒲江县| 宣汉县| 台东县| 永康市| 灯塔市| 新绛县| 镇康县| 营山县| 金乡县| 昆山市| 兴城市| 新昌县| 辽中县| 麻江县| 资中县| 遵义市| 土默特右旗| 墨江| 馆陶县| 巍山| 历史| 九江市| 仁怀市| 宜昌市| 崇阳县| 万载县| 虹口区| 辽宁省| 崇左市| 广元市| 靖西县| 天门市| 靖安县|