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

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.

主站蜘蛛池模板: 南丹县| 象山县| 山西省| 本溪市| 布拖县| 门头沟区| 昆明市| 依兰县| 丹寨县| 封丘县| 房产| 防城港市| 南涧| 龙山县| 綦江县| 道真| 南和县| 夏津县| 江孜县| 台中县| 绥宁县| 忻城县| 郴州市| 平原县| 石家庄市| 如东县| 望江县| 成武县| 邮箱| 冀州市| 敖汉旗| 广安市| 盐亭县| 宁陵县| 方山县| 沙湾县| 玉林市| 鄂伦春自治旗| 财经| 汝南县| 北安市|