1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Machine learning with python for everyone pearson 2020

984 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Machine Learning With Python For Everyone
Tác giả Mark E. Fenner
Trường học Pearson Education
Chuyên ngành Data Science
Thể loại book
Năm xuất bản 2020
Thành phố Boston
Định dạng
Số trang 984
Dung lượng 13,08 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tôi đã dành nhiều năm để nghiên cứu kho vũ khí hạt nhân chiến lược của phương Đông và phương Tây—may mắn thay với sự ngây thơ của một đứa trẻ mười tuổi—nhưng phải gần mười năm trước khi

Trang 1

MARKE FENNER

 D D I S O N W E S L E Y D ATA @  N A LY T I C S E R I E S

https://www.facebook.com/Freelancer.Translator0202

Trang 2

Machine Learning with

Python for Everyone

Trang 3

The Pearson Addison-Wesley Data & Analytics Series

Visit informit.com/awdataseries for a complete list of available publications

he Pearson Addison-Wesley Data & Analytics Series provides readers with

practical knowledge for solving problems and answering questions with data Titles

in this series primarily focus on three areas:

1 Infrastructure: how to store, move, and manage data

2 Algorithms: how to mine intelligence or make predictions based on data

3 Visualizations: how to represent data and insights in a meaningful and

compelling way

The series aims to tie all three of these areas together to help the reader build

end-to-end systems for fighting spam; making recommend-to-endations; building personalization;

detecting trends, patterns, or problems; and gaining insight from the data exhaust of

systems and user interactions

Make sure to connect with

us!

informit.com/socialconnect

https://www.facebook.com/Freelancer.Translator0202

T

Trang 4

Machine Learning

with Python for Everyone

Mark E Fenner

Boston • Columbus • New York • San Francisco • Amsterdam • Cape Town Dubai • London • Madrid • Milan • Munich • Paris • Montreal • Toronto • Delhi • Mexico City São Paulo • Sydney • Hong Kong • Seoul • Singapore • Taipei • Tokyo

Trang 5

Many of the designations used by manufacturers and sellers to distinguish their products

are claimed as trademarks Where those designations appear in this book, and the

publisher was aware of a trademark claim, the designations have been printed with initial

capital letters or in all capitals.

The author and publisher have taken care in the preparation of this book, but make no

expressed or implied warranty of any kind and assume no responsibility for errors or omissions.

No liability is assumed for incidental or consequential damages in connection with or arising out

of the use of the information or programs contained herein.

For information about buying this title in bulk quantities, or for special sales opportunities

(which may include electronic versions; custom cover designs; and content particular to your

business, training goals, marketing focus, or branding interests), please contact our

corporate sales department

at corpsales@pearsoned.com or (800) 382-3419.

For government sales inquiries, please contact

governmentsales@pearsoned.com For questions about sales outside

the U.S., please contact intlcs@pearson.com Visit us on the Web:

informit.com/aw

Library of Congress Control Number:

2019938761 Copyright © 2020 Pearson

Education, Inc.

Cover image: cono0430/Shutterstock

Pages 58, 87: Screenshot of seaborn © 2012–2018 Michael Waskom.

Pages 167, 177, 192, 201, 278, 284, 479, 493: Screenshot of seaborn heatmap © 2012–2018

Michael Waskom.

Pages 178, 185, 196, 197, 327, 328: Screenshot of seaborn swarmplot © 2012–2018 Michael

Waskom Page 222: Screenshot of seaborn stripplot © 2012–2018 Michael Waskom.

Pages 351, 354: Screenshot of seaborn implot © 2012–2018 Michael

Waskom Pages 352, 353, 355: Screenshot of seaborn distplot © 2012–

2018 Michael Waskom Pages 460, 461: Screenshot of Manifold © 2007–

2018, scikit-learn developers.

Page 480: Screenshot of cluster © 2007–2018, scikit-learn developers.

Pages 483, 484, 485: Image of accordion, Vereshchagin

Dmitry/Shutterstock Page 485: Image of fighter jet, 3dgenerator/123RF.

Page 525: Screenshot of seaborn jointplot © 2012–2018 Michael Waskom.

All rights reserved This publication is protected by copyright, and permission must be obtained

from the publisher prior to any prohibited reproduction, storage in a retrieval system, or

transmission in any form or by any means, electronic, mechanical, photocopying, recording, or

likewise For information regarding permissions, request forms and the appropriate contacts

within the Pearson Education Global Rights & Permissions Department, please visit

www.pearsoned.com/permissions/.

ISBN-13: 978-0-13-484562-3

https://www.facebook.com/Freelancer.Translator0202

Trang 6

ISBN-10: 0-13-484562-5

ScoutAutomatedPrintCode

Trang 7

To my son, Ethan—

with the eternal hope of a better tomorrow

https://www.facebook.com/Freelancer.Translator0202

Trang 8

This page intentionally left blank

Trang 9

https://www.facebook.com/Freelancer.Translator0202

Trang 10

in Space34

Straight-Jacket, and Nonlinearity 45

2.10 Floating-Point Issues 522.11 EOC 53

2.11.1 Summary 532.11.2 Notes 54

3 Predicting Categories: Getting Started with

3.2 A Simple Classification Dataset 563.3 Training and Testing: Don’t

Trang 11

Probability, and Broken Promises 68

3.7 Simplistic Evaluation of Classifiers 70

4.3.2 Tilting the Field 94

Regression 974.4 Optimization: Picking the Best Answer 98

https://www.facebook.com/Freelancer.Translator0202

Trang 12

https://www.facebook.com/Freelancer.Translator0202

Trang 13

5 Evaluating and Comparing Learners 109

Speaking 113

Wrong: Overfitting and Underfitting 116

Linear Regression 117

Model Complexity 1185.3.3 Goldilocks: Visualizing

Overfitting, Underfitting, and

Trang 14

https://www.facebook.com/Freelancer.Translator0202

Trang 15

Cross-Validation 1405.6 Break-It-Down: Deconstructing Error into

Bias-Variance Tradeoffs

145

the Confusion Matrix 163

Confusion Matrix

165

https://www.facebook.com/Freelancer.Translator0202

Trang 16

6.2.5 Dealing with Multiple

Classes: Multiclass

Trang 17

One-versus-Rest, and ROC 179

Multiclass: One 181

The Quest for a SingleValue 182

https://www.facebook.com/Freelancer.Translator0202

Trang 18

Regression Metrics 208

7.2.3 R2 209

Trang 19

Contents xiii

Sophisticated Way: Take Two225

8 More Classification Methods 237

8.1 Revisiting Classification 237

8.4.4 A Logistic Regression: A

Space Oddity 268

https://www.facebook.com/Freelancer.Translator0202

Trang 20

Regression 305

Piecewise ConstantRegressor 310

Trang 21

9.6.2 Notes 318

https://www.facebook.com/Freelancer.Translator0202

Trang 22

10.2 Feature Selection and Data

Reduction: Taking out the Trash

32410.3 Feature Scaling 32510.4 Discretization 32910.5 Categorical Coding 332

10.5.1 Another Way to Code and

the Curious Case of the

10.6 Relationships and Interactions 341

10.6.1 Manual Feature Construction 34110.6.2 Interactions 343

10.6.3 Adding Features with

Transformers 34810.7 Target Manipulations 350

11 Tuning Hyperparameters and Pipelines 35911.1 Models, Parameters, Hyperparameters 36011.2 Tuning Hyperparameters362

11.2.1 A Note on Computer Science

and Learning Terminology

36211.2.2 An Example of

Trang 23

Complete Search

36211.2.3 Using Randomness to Search

for a Needle in a Haystack

368

https://www.facebook.com/Freelancer.Translator0202

Trang 24

11.3 Down the Recursive Rabbit

Hole: Nested Cross-Validation 370

11.3.1 Cross-Validation, Redux 37011.3.2 GridSearch as a Model 37111.3.3 Cross-Validation Nested

within Cross-Validation 37211.3.4 Comments on Nested

CV 37511.4 Pipelines 377

11.4.1 A Simple Pipeline 37811.4.2 A More Complex

Pipeline 37911.5 Pipelines and Tuning Together 38011.6 EOC 382

11.6.1 Summary 38211.6.2 Notes 38211.6.3 Exercises 383

IV Adding Complexity 385

12 Combining Learners 387

12.1 Ensembles 38712.2 Voting Ensembles 38912.3 Bagging and Random Forests 390

12.3.1 Bootstrapping 39012.3.2 From Bootstrapping

to Bagging 39412.3.3 Through the

Random Forest 39612.4 Boosting 398

12.4.1 Boosting Details 39912.5 Comparing the Tree-

Ensemble Methods 40112.6 EOC 405

12.6.1 Summary 40512.6.2 Notes 40512.6.3 Exercises 406

Trang 25

41213.1.2 Model-Based Feature

Selection 42313.1.3 Integrating Feature Selection

with a Learning Pipeline

426

13.2.1 A Kernel Motivator 428

13.2.2 Manual Kernel Methods 433

13.2.3 Kernel Methods and

13.3.2 Finding a Different Best Line448

13.3.3 A First PCA449

13.3.5 A Finale: Comments on

General PCA 45713.3.6 Kernel PCA and

Trang 26

14.2 Clustering 479

14.2.1 k-Means Clustering 479

Trang 27

xviii Contents

14.3 Working with Images 481

14.3.1 Bag of Visual Words 48114.3.2 Our Image Data 48214.3.3 An End-to-End System 48314.3.4 Complete Code of

BoVW Transformer 491

14.4 EOC 493

14.4.1 Summary 49314.4.2 Notes 49414.4.3 Exercises 495

15 Connections, Extensions, and Further

Directions 49715.1 Optimization 49715.2 Linear Regression from

Raw Materials 50015.2.1 A Graphical View of

Linear Regression 50415.3 Building Logistic Regression from

Raw Materials 50415.3.1 Logistic Regression

with Zero-One Coding 506

15.3.2 Logistic Regression

with Plus-One One Coding 50815.3.3 A Graphical View of

Minus-Logistic Regression 50915.4 SVM from Raw Materials 51015.5 Neural Networks 512

15.5.1 A NN View of Linear

Regression 51215.5.2 A NN View of Logistic

Regression 51515.5.3 Beyond Basic Neural

Networks 51615.6 Probabilistic Graphical Models 516

15.6.1 Sampling 51815.6.2 A PGM View of Linear

https://www.facebook.com/Freelancer.Translator0202

Trang 28

Regression 519

Trang 29

Contents xix

15.6.3 A PGM View of Logistic

Regression 52315.7 EOC 525

Trang 30

This page intentionally left blank

Trang 31

Whether it is called statistics, data science, machine learning, or artificial

intelligence, learning patterns from data is transforming the world Nearly every

industry imaginable has been touched (or soon will be) by machine learning The

combined progress of both hardware and software improvements are driving

rapid advancements in the field, though it is upon software that most people

focus their attention

Cho dù nó được gọi là thống kê, khoa học dữ liệu, học máy hay trí tuệ nhân tạo,

thì việc học các mẫu từ dữ liệu đang thay đổi thế giới Gần như mọi ngành công

nghiệp có thể tưởng tượng được đã được (hoặc sẽ sớm) chạm tới bằng máy

học Sự tiến bộ kết hợp của cả cải tiến phần cứng và phần mềm đang thúc đẩy

những tiến bộ nhanh chóng trong lĩnh vực này, mặc dù hầu hết mọi người đều

tập trung chú ý vào phần mềm

While many languages are used for machine learning, including R, C/C++,

Fortran, and Go, Python has proven remarkably popular This is in large part

thanks to scikit-learn, which makes it easy to not only train a host of different

models but to also engineer features, evaluate the model quality, and score new

data The scikit-learn project has quickly become one of Python’s most

important and powerful software libraries

Trong khi nhiều ngôn ngữ được sử dụng cho máy học, bao gồm R, C/C++,

Fortran và Go, thì Python đã được chứng minh là rất phổ biến Điều này phần

lớn nhờ vào scikit-learning, giúp dễ dàng không chỉ đào tạo một loạt các mô

hình khác nhau mà còn thiết kế các tính năng, đánh giá chất lượng mô hình và

chấm điểm dữ liệu mới Dự án scikit-learning đã nhanh chóng trở thành một

trong những thư viện phần mềm mạnh mẽ và quan trọng nhất của Python

While advanced mathematical concepts underpin machine learning, it is

entirely possible to train complex models without a thorough background in

calculus and matrix algebra For many people, getting into machine learning

through programming, rather than math, is a more attainable goal That is

precisely the goal of this book: to use Python as a hook into machine learning

and then add in some math as needed Following in the footsteps of R for

Everyone and Pandas for Everyone, Machine Learning with Python for

Everyone strives to be open and accessible to anyone looking to learn about this

exciting area of math and computation

Mặc dù các khái niệm toán học nâng cao làm nền tảng cho học máy, nhưng

hoàn toàn có thể huấn luyện các mô hình phức tạp mà không cần có nền tảng

kỹ lưỡng về giải tích và đại số ma trận Đối với nhiều người, tham gia học máy

thông qua lập trình, thay vì toán học, là một mục tiêu dễ đạt được hơn Đó chính

xác là mục tiêu của cuốn sách này: sử dụng Python như một móc nối vào học

máy và sau đó thêm vào một số phép toán khi cần thiết Theo bước chân của R

cho mọi người và Pandas cho mọi người, Machine Learning với Python cho mọi

https://www.facebook.com/Freelancer.Translator0202

Trang 32

Mark Fenner đã dành nhiều năm thực hành truyền đạt các khái niệm khoa học và máy học cho những người có nền tảng khác nhau, trau dồi khả năng chia nhỏ các ý tưởng phức tạp thành các thành phần đơn giản Trải nghiệm

đó dẫn đến một hình thức kể chuyện giải thích các khái niệm đồng thời giảm thiểu biệt ngữ và cung cấp các ví dụ cụ thể Cuốn sách rất dễ đọc, với nhiều mẫu mã để người đọc có thể theo dõi trên máy tính của họ

With more people than ever eager to understand and implement machine learning, it is essential to have practical resources to guide them, both quickly and thoughtfully Mark fills that need with this insightful and engaging text

Machine Learning with Python for Everyone lives up to its name, allowing people

with all manner of previous training to quickly improve their machine learning knowledge and skills, greatly increasing access to this important field

Với nhiều người hơn bao giờ hết mong muốn hiểu và triển khai học máy, điều cần thiết là phải có các tài nguyên thiết thực để hướng dẫn họ, một cách nhanh chóng và chu đáo Mark đáp ứng nhu cầu đó bằng văn bản sâu sắc và hấp dẫn này Học máy với Python cho mọi người đúng với tên gọi của nó, cho phép mọi người đã được đào tạo trước đây ở mọi hình thức có thể nhanh chóng cải thiện kiến thức và kỹ năng học máy của họ, giúp tăng đáng kể khả năng tiếp cận lĩnh vực quan trọng này

Jared

Lander,

Series

Editor

Trang 33

This page intentionally left blank

https://www.facebook.com/Freelancer.Translator0202

Trang 34

Preface

lời nói đầu

In 1983, the movie WarGames came out I was a preteen and I was absolutely

engrossed: by the possibility of a nuclear apocalypse, by the almost magical waythe lead character interacted with computer systems, but mostly by the potential

of machines that could learn I spent years studying the strategic nuclear

arsenals of the East and the West—fortunately with a naivete of a tweener—but

it was almost ten years before I took my first serious steps in computer

programming Teaching a computer to do a set process was amazing

Năm 1983, bộ phim WarGames ra mắt Tôi mới mười tuổi và tôi hoàn toàn bị cuốn hút: bởi khả năng xảy ra ngày tận thế hạt nhân, bởi cách gần như kỳ diệu

mà nhân vật chính tương tác với hệ thống máy tính, nhưng chủ yếu là bởi tiềm năng của những cỗ máy có thể học hỏi Tôi đã dành nhiều năm để nghiên cứu kho vũ khí hạt nhân chiến lược của phương Đông và phương Tây—may mắn thay với sự ngây thơ của một đứa trẻ mười tuổi—nhưng phải gần mười năm trước khi tôi thực hiện những bước nghiêm túc đầu tiên trong lĩnh vực lập trình máy tính Dạy máy tính thực hiện một quy trình đã định thật tuyệt vời

Learning the intricacies of complex systems and bending them around my curiosity was a great experience Still, I had a large step forward to take A few short years later, I worked with my first program that was explicitly designed to

learn I was blown away and I knew I found my intellectual home I want to share the world of computer programs that learn with you.

Tìm hiểu những điều phức tạp của các hệ thống phức tạp và uốn nắn chúng theo trí tò mò của tôi là một trải nghiệm tuyệt vời Tuy nhiên, tôi đã có một bướctiến lớn để thực hiện Vài năm sau, tôi làm việc với chương trình đầu tiên được thiết kế rõ ràng để học Tôi đã bị thổi bay và tôi biết rằng tôi đã tìm thấy ngôi nhà trí tuệ của mình Tôi muốn chia sẻ thế giới chương trình máy tính đã học với bạn

Audience

Khán giả

Who do I think you are? I’ve written Machine Learning with Python for Everyone

for the absolute beginner to machine learning Even more so, you may well have

very little college-level mathematics in your toolbox and I’m not going to try to change that While many machine learning books are very heavy on

mathematical concepts and equations, I’ve done my best to minimize the

amount of mathematical luggage you’ll have to carry I do expect, given the

book’s title, that you’ll have some basic proficiency in Python If you can read

Python, you’ll be able to get a lot more out of our discussions While many books

Trang 35

on machine learning rely on mathematics, I’m relying on stories, pictures, and

Python code to communicate with you There will be the occasional equation

Largely, these can be skipped if you are so inclined But, if I’ve done my job well,

I’ll have given you enough context around the equation to maybe—just maybe —

understand what it is trying to say

Tôi nghĩ bạn là ai? Tôi đã viết Machine Learning với Python cho mọi người dành

cho người mới bắt đầu học máy Hơn nữa, bạn có thể có rất ít môn toán trình độ

đại học trong hộp công cụ của mình và tôi sẽ không cố gắng thay đổi điều đó

Mặc dù nhiều cuốn sách học máy rất nặng về các khái niệm và phương trình

toán học, nhưng tôi đã cố gắng hết sức để giảm thiểu khối lượng hành lý toán

học mà bạn sẽ phải mang theo Tôi thực sự mong đợi, với tiêu đề của cuốn

sách, rằng bạn sẽ có một số trình độ cơ bản về Python Nếu bạn có thể đọc

Python, bạn sẽ có thể nhận được nhiều hơn từ các cuộc thảo luận của chúng

tôi Trong khi nhiều cuốn sách về học máy dựa vào toán học, thì tôi lại dựa vào

các câu chuyện, tranh ảnh và mã Python để giao tiếp với bạn Sẽ có phương

trình không thường xuyên Phần lớn, những điều này có thể được bỏ qua nếu

bạn quá nghiêng Tuy nhiên, nếu tôi hoàn thành tốt công việc của mình, tôi sẽ

cung cấp cho bạn đủ ngữ cảnh xung quanh phương trình để có thể—chỉ có thể

thôi—hiểu nó đang muốn nói gì

Why might you have this book in your hand? The least common denominator

is that all of my readers want to learn about machine learning Now, you might

be coming from very different backgrounds: a student in an introductory

computing class focused on machine learning, a mid-career business analyst

who all of sudden has been thrust beyond the limits of spreadsheet analysis, a

tech hobbyist looking to expand her interests, or a scientist needing to analyze

data in a new way Machine learning is permeating society

Tại sao bạn có thể có cuốn sách này trong tay của bạn? Mẫu số ít chung nhất

là tất cả độc giả của tôi đều muốn tìm hiểu về học máy Bây giờ, bạn có thể

đến từ các nền tảng rất khác nhau: một sinh viên trong lớp máy tính cơ bản tập

trung vào học máy, một nhà phân tích kinh doanh trung cấp đột nhiên bị đẩy ra

ngoài giới hạn phân tích bảng tính, một người đam mê công nghệ đang tìm

cách mở rộng kiến thức của mình sở thích, hoặc một nhà khoa học cần phân

tích dữ liệu theo một cách mới Học máy đang thâm nhập vào xã hội

Depending on your background, Machine Learning with Python for Everyone

has different things to offer you Even a mathematically sophisticated reader

who is looking to do a break-in to machine learning using Python can get a lot

out of this book

Tùy thuộc vào nền tảng của bạn, Machine Learning với Python cho mọi người

có những thứ khác nhau để cung cấp cho bạn Ngay cả một độc giả tinh

thông về toán học đang tìm cách thâm nhập vào học máy bằng Python cũng

có thể học được nhiều điều từ cuốn sách này

So, my goal is to take someone with an interest or need to do some

machine learning and teach them the process and the most important

concepts of machine learning in a concrete way using the Python scikit-learn

library and some of its friends You’ll come

Vì vậy, mục tiêu của tôi là thu hút một người quan tâm hoặc có nhu cầu học

máy và dạy họ quy trình cũng như các khái niệm quan trọng nhất về học máy

một cách cụ thể bằng cách sử dụng thư viện scikit-learning của Python và một

số người bạn của nó Bạn sẽ đến

https://www.facebook.com/Freelancer.Translator0202

Trang 36

away with overall patterns, strategies, pitfalls, and gotchas that will be

applicable in every learning system you ever study, build, or use

loại bỏ các mô hình tổng thể, chiến lược, cạm bẫy và vấn đề sẽ được áp dụngtrong mọi hệ thống học tập mà bạn từng nghiên cứu, xây dựng hoặc sử dụng

Approach

Tiếp cận

Many books that try to explain mathematical topics, such as machine

learning, do so by presenting equations as if they tell a story to the

uninitiated I think that leaves many of

Nhiều cuốn sách cố gắng giải thích các chủ đề toán học, chẳng hạn như học máy, làm như vậy bằng cách trình bày các phương trình như thể chúng kể một câu chuyện cho người mới bắt đầu Tôi nghĩ rằng để lại nhiều

us—even those of us who like mathematics!—stuck Personally, I build a far better mental picture of the process of machine learning by combining visual and

verbal descriptions with running code I’m a computer scientist at heart and by

training I love building things Building things is how I know that I’ve reached a

level where I really understand them.

chúng tôi—ngay cả những người trong chúng tôi thích toán học!—bị mắc kẹt

Cá nhân tôi xây dựng một bức tranh tinh thần tốt hơn nhiều về quá trình học máy bằng cách kết hợp các mô tả bằng hình ảnh và lời nói với mã đang chạy Tôi là một nhà khoa học máy tính thực tâm và được đào tạo Tôi thích xây dựng mọi thứ Xây dựng mọi thứ là cách tôi biết rằng mình đã đạt đến trình độ mà tôi thực sự hiểu chúng

You might be familiar with the phrase, “If you really want to know something, teach it to someone.” Well, there’s a follow-on “If you really want to know something, teach a computer to do it!” That’s my take on how I’m going to teachyou machine learning

Bạn có thể quen thuộc với cụm từ, "Nếu bạn thực sự muốn biết điều gì đó, hãy dạy điều đó cho ai đó." Chà, có một phần tiếp theo “Nếu bạn thực sự muốn biết điều gì đó, hãy dạy máy tính làm điều đó!” Đó là quan điểm của tôi về cách tôi sẽ dạy bạn học máy

With minimal mathematics, I want to give you the concepts behind the most important and frequently used machine learning tools and techniques Then, I want you to immediately see how to make a computer do it One note: we won’t be programming these methods from scratch We’ll be standing on the shoulders of giants and using some very powerful, time-saving, prebuilt

software libraries (more on that shortly)

Với toán học tối thiểu, tôi muốn cung cấp cho bạn các khái niệm đằng sau cáccông cụ và kỹ thuật máy học quan trọng nhất và được sử dụng thường xuyên nhất Sau đó, tôi muốn bạn xem ngay cách làm cho một chiếc máy tính làm được điều đó Một lưu ý: chúng tôi sẽ không lập trình các phương pháp này từđầu Chúng ta sẽ đứng trên vai những người khổng lồ và sử dụng một số thư viện phần mềm dựng sẵn rất mạnh mẽ, tiết kiệm thời gian (sớm nói thêm về điều đó)

We won’t be covering all of these libraries in great detail—there is simply too much material to do that Instead, we are going to be practical We are going to

Trang 37

use the best tool for the job I’ll explain enough to orient you in the concept we’re

using—and then we’ll get to using it For our mathematically inclined colleagues,

I’ll give pointers to more

Chúng tôi sẽ không trình bày chi tiết về tất cả các thư viện này—đơn giản là có

quá nhiều tài liệu để làm điều đó Thay vào đó, chúng ta sẽ thực tế Chúng tôi

sẽ sử dụng công cụ tốt nhất cho công việc Tôi sẽ giải thích đủ để định hướng

cho bạn về khái niệm mà chúng ta đang sử dụng—và sau đó chúng ta sẽ bắt

đầu sử dụng nó Đối với các đồng nghiệp nghiêng về toán học của chúng tôi, tôi

sẽ đưa ra các gợi ý để biết thêm

in-depth references they can pursue I’ll save most of this for

end-of-the-chapter notes so the rest of us can skip it easily

tài liệu tham khảo chuyên sâu mà họ có thể theo đuổi Tôi sẽ lưu phần lớn điều

này vào phần ghi chú cuối chương để những người còn lại có thể dễ dàng bỏ

qua

If you are flipping through this introduction, deciding if you want to invest time

in this book, I want to give you some insight into things that are out-of-scope for

us We aren’t going to dive into mathematical proofs or rely on mathematics to

explain things There are many books out there that follow that path and I’ll give

pointers to my favorites at the ends of the chapters Likewise, I’m going to

assume that you are fluent in basic- to intermediate- level Python programming

However, for more advanced Python topics—and things that show up from

third-party packages like NumPy or Pandas—I’ll explain enough of what’s going on so

that you can understand each technique and its context

Nếu bạn đang xem qua phần giới thiệu này, quyết định xem mình có muốn đầu

tư thời gian vào cuốn sách này hay không, thì tôi muốn cung cấp cho bạn một

số hiểu biết sâu sắc về những điều nằm ngoài phạm vi của chúng ta Chúng ta

sẽ không đi sâu vào các chứng minh toán học hoặc dựa vào toán học để giải

thích mọi thứ Có rất nhiều cuốn sách đi theo con đường đó và tôi sẽ đưa ra gợi

ý cho những cuốn sách yêu thích của tôi ở cuối các chương Tương tự như vậy,

tôi sẽ cho rằng bạn thông thạo lập trình Python từ cơ bản đến trung cấp Tuy

nhiên, đối với các chủ đề Python nâng cao hơn—và những thứ xuất hiện từ các

gói của bên thứ ba như NumPy hoặc Pandas—tôi sẽ giải thích đầy đủ về những

gì đang diễn ra để bạn có thể hiểu từng kỹ thuật và ngữ cảnh của nó

Overview

Tổng quan

In Part I, we establish a foundation I’ll give you some verbal and conceptual

introductions to machine learning in Chapter 1 In Chapter 2 we introduce and

take a slightly different approach to some mathematical and computational

topics that show up repeatedly in machine learning Chapters 3 and 4 walk

you through your first steps in building, training, and evaluating learning

systems that classify examples (classifiers) and quantify examples

(regressors)

Trong Phần I, chúng tôi thiết lập một nền tảng Tôi sẽ cung cấp cho bạn một

số lời giới thiệu bằng lời và khái niệm về học máy trong Chương 1 Trong

Chương 2, chúng tôi giới thiệu và thực hiện một cách tiếp cận hơi khác đối

với một số chủ đề toán học và tính toán xuất hiện lặp đi lặp lại trong học máy

Chương 3 và 4 hướng dẫn bạn những bước đầu tiên trong việc xây dựng,

đào tạo và đánh giá các hệ thống học tập phân loại các ví dụ (phân loại) và

định lượng các ví dụ (biến hồi quy)

Part II shifts our focus to the most important aspect of applied machine

https://www.facebook.com/Freelancer.Translator0202

Trang 38

learning systems: evaluating the success of our system in a realistic way Chapter 5 talks about general

Phần II chuyển trọng tâm của chúng ta sang khía cạnh quan trọng nhất của các

hệ thống máy học ứng dụng: đánh giá sự thành công của hệ thống của chúng tamột cách thực tế Chương 5 nói về đại cương

Trang 39

Preface xxv

evaluation techniques that will apply to all of our learning systems Chapters 6

and 7 take those general techniques and add evaluation capabilities for

classifiers and regressors

kỹ thuật đánh giá sẽ áp dụng cho tất cả các hệ thống học tập của chúng tôi

Chương 6 và 7 sử dụng các kỹ thuật chung đó và thêm khả năng đánh giá cho

các bộ phân loại và hồi quy

Part III broadens our toolbox of learning techniques and fills out the

components of a practical learning system Chapters 8 and 9 give us additional

classification and regression techniques Chapter 10 describes feature

engineering: how we smooth the edges of rough data into forms that we can use

for learning Chapter 11 shows how to chain multiple steps together as a single

learner and how to tune a learner’s inner workings for better performance

Phần III mở rộng hộp công cụ của chúng tôi về các kỹ thuật học tập và điền vào

các thành phần của một hệ thống học tập thực tế Chương 8 và 9 cung cấp cho

chúng ta các kỹ thuật phân loại và hồi quy bổ sung Chương 10 mô tả kỹ thuật

tính năng: cách chúng tôi làm mịn các cạnh của dữ liệu thô thành các dạng mà

chúng tôi có thể sử dụng cho việc học Chương 11 chỉ ra cách xâu chuỗi nhiều

bước lại với nhau với tư cách là một người học và cách điều chỉnh hoạt động

bên trong của người học để có hiệu suất tốt hơn

Part IV takes us beyond the basics and discusses more recent techniques

that are driving machine learning forward We look at learners that are made up

of multiple little learners in Chapter 12 Chapter 13 discusses learning

techniques that incorporate automated feature engineering Chapter 14 is a

wonderful capstone because it takes the techniques we describe throughout the

book and applies them to two particularly interesting types of data: images and

text Chapter 15 both reviews many of the techniques we discuss and shows

how they relate to more advanced learning architectures—neural networks and

graphical models

Phần IV đưa chúng ta vượt ra ngoài những điều cơ bản và thảo luận về các kỹ

thuật gần đây hơn đang thúc đẩy việc học máy tiến lên Chúng tôi xem xét

những người học được tạo thành từ nhiều người học nhỏ trong Chương 12

Chương 13 thảo luận về các kỹ thuật học tập kết hợp kỹ thuật tính năng tự

động Chương 14 là một nền tảng tuyệt vời vì nó sử dụng các kỹ thuật mà

chúng tôi mô tả xuyên suốt cuốn sách và áp dụng chúng cho hai loại dữ liệu đặc

biệt thú vị: hình ảnh và văn bản Chương 15 vừa xem xét nhiều kỹ thuật mà

chúng ta thảo luận vừa chỉ ra cách chúng liên quan đến các kiến trúc học nâng

cao hơn—mạng lưới thần kinh và mô hình đồ họa

Our main focus is on the techniques of machine learning We will investigate

a number of learning algorithms and other processing methods along the way

However, completeness is not our goal We’ll discuss the most common

techniques and only glance briefly at the two large subareas of machine

learning: graphical models and neural, or deep, networks However, we will see

how the techniques we focus on relate to these more advanced methods

Trọng tâm chính của chúng tôi là về các kỹ thuật học máy Chúng tôi sẽ điều tra

một số thuật toán học tập và các phương pháp xử lý khác trên đường đi Tuy

nhiên, sự trọn vẹn không phải là mục tiêu của chúng tôi Chúng ta sẽ thảo luận

về các kỹ thuật phổ biến nhất và chỉ lướt qua hai lĩnh vực phụ lớn của máy học:

mô hình đồ họa và mạng thần kinh hoặc mạng sâu Tuy nhiên, chúng ta sẽ xem

https://www.facebook.com/Freelancer.Translator0202

Trang 40

các kỹ thuật mà chúng ta tập trung vào liên quan như thế nào đến các phương pháp nâng cao hơn này

Another topic we won’t cover is implementing specific learning algorithms

We’ll build on top of the algorithms that are already available in scikit-learn and friends; we’ll create larger solutions using them as components Still, someone has to implement the gears and cogs inside the black-box we funnel data into If you are really interested in implementation aspects, you are in good company: I love them! Have all your friends buy a copy of this book, so I can argue I need towrite a follow-up that dives into these lower-level details

Một chủ đề khác mà chúng tôi sẽ không đề cập đến là triển khai các thuật toán học tập cụ thể Chúng tôi sẽ xây dựng dựa trên các thuật toán đã có sẵn trong scikit-learning và bạn bè; chúng tôi sẽ tạo ra các giải pháp lớn hơn bằng cách

sử dụng chúng làm thành phần Tuy nhiên, ai đó phải triển khai các bánh răng

và bánh răng bên trong hộp đen mà chúng tôi đưa dữ liệu vào Nếu bạn thực sựquan tâm đến các khía cạnh triển khai, bạn đang ở trong một công ty tốt: Tôi

yêu họ! Nhờ tất cả bạn bè của bạn mua một bản sao của cuốn sách này, vì vậy tôi có thể lập luận rằng tôi cần viết một bài tiếp theo đi sâu vào các chi tiết cấp thấp hơn này

Acknowledgments

Sự nhìn nhận

I must take a few moments to thank several people that have contributed greatly

to this book My editor at Pearson, Debra Williams Cauley, has been

instrumental in every phase of this book’s development From our initial

meetings, to her probing for a topic that might meet both our needs, to gently

shepherding me through many (many!) early drafts, to constantly giving me just enough of a push to keep going, and finally climbing the steepest parts of the

mountain at its peak through all of these phases, Debra has shown

Tôi phải dành ít phút để cảm ơn một số người đã đóng góp rất nhiều cho cuốn sách này Biên tập viên của tôi tại Pearson, Debra Williams Cauley, đã đóng vaitrò quan trọng trong mọi giai đoạn phát triển cuốn sách này Từ những cuộc

gặp đầu tiên của chúng tôi, đến việc cô ấy tìm kiếm một chủ đề có thể đáp ứng nhu cầu của cả hai chúng tôi, đến việc nhẹ nhàng hướng dẫn tôi qua nhiều

(nhiều!) bản nháp ban đầu, đến việc liên tục tạo cho tôi động lực vừa đủ để tiếp tục và cuối cùng leo lên những phần dốc nhất của ngọn núi ở đỉnh cao qua tất

cả các giai đoạn này, Debra đã chỉ ra

the highest degrees of professionalism I can only respond with a heartfelt thank you.

trình độ chuyên môn cao nhất Tôi chỉ có thể đáp lại bằng một lời cảm ơn chân thành

My wife, Dr Barbara Fenner, also deserves more praise and thanks than I

can give her in this short space In addition to the burdens that any partner of an

author must bear, she also served as my primary draft reader and our intrepid

illustrator She did the hard work of drafting all of the non-computer-generated diagrams in this book While this is not our first joint academic project, it has

been turned into the longest Her patience is, by all appearances, never ending

Barbara, I thank you!

Vợ tôi, Tiến sĩ Barbara Fenner, cũng xứng đáng nhận được nhiều lời khen ngợi

và cảm ơn hơn những gì tôi có thể dành cho cô ấy trong khoảng thời gian ngắn ngủi này Ngoài những gánh nặng mà bất kỳ đối tác nào của tác giả phải gánh chịu, cô ấy còn đóng vai trò là người đọc bản nháp chính của tôi và là người vẽ tranh minh họa gan dạ của chúng tôi Cô ấy đã làm việc chăm chỉ để phác thảo

Ngày đăng: 21/11/2023, 21:53

HÌNH ẢNH LIÊN QUAN

Hình 1.2 Các mô tả đi vào. Các danh mục hoặc các giá trị - Machine learning with python for everyone pearson 2020
Hình 1.2 Các mô tả đi vào. Các danh mục hoặc các giá trị (Trang 58)
Hình 8.4 Ranh giới của cây quyết định tạo thành các vùng hình chữ nhật chồng - Machine learning with python for everyone pearson 2020
Hình 8.4 Ranh giới của cây quyết định tạo thành các vùng hình chữ nhật chồng (Trang 466)
Hình 8.5 Kết quả cuối cùng của các hình chữ nhật chồng lên nhau. - Machine learning with python for everyone pearson 2020
Hình 8.5 Kết quả cuối cùng của các hình chữ nhật chồng lên nhau (Trang 467)
X1 = x2 = x3 = 42,314, hình chữ nhật không giống hình chữ nhật mà chúng ta - Machine learning with python for everyone pearson 2020
1 = x2 = x3 = 42,314, hình chữ nhật không giống hình chữ nhật mà chúng ta (Trang 527)
Hình 11.2 Gói các mô hình trong xác thực chéo. - Machine learning with python for everyone pearson 2020
Hình 11.2 Gói các mô hình trong xác thực chéo (Trang 680)
Hình 11.3 GridSearch. - Machine learning with python for everyone pearson 2020
Hình 11.3 GridSearch (Trang 682)
Hình 11.4 Xác thực chéo lồng nhau cho GridSearch. - Machine learning with python for everyone pearson 2020
Hình 11.4 Xác thực chéo lồng nhau cho GridSearch (Trang 684)
Hình 12.3 Khi chúng tôi lấy mẫu thay thế, các - Machine learning with python for everyone pearson 2020
Hình 12.3 Khi chúng tôi lấy mẫu thay thế, các (Trang 711)
Hình 12.4 Chúng tôi lặp đi lặp lại việc tính toán giá trị trung bình trên các mẫu - Machine learning with python for everyone pearson 2020
Hình 12.4 Chúng tôi lặp đi lặp lại việc tính toán giá trị trung bình trên các mẫu (Trang 713)
Hình 13.3 PCA giảm kích thước dữ liệu của chúng - Machine learning with python for everyone pearson 2020
Hình 13.3 PCA giảm kích thước dữ liệu của chúng (Trang 820)
Hình 14.5 Dịch từ địa phương sang từ vựng toàn cầu. - Machine learning with python for everyone pearson 2020
Hình 14.5 Dịch từ địa phương sang từ vựng toàn cầu (Trang 871)
Hình 15.1 Một khung nhìn đồ họa của hồi quy tuyến tính. - Machine learning with python for everyone pearson 2020
Hình 15.1 Một khung nhìn đồ họa của hồi quy tuyến tính (Trang 893)
Hình 15.2 Một khung nhìn đồ họa của hồi quy logistic. - Machine learning with python for everyone pearson 2020
Hình 15.2 Một khung nhìn đồ họa của hồi quy logistic (Trang 902)
Hình 15.6 Một mô hình đồ họa xác suất cho hồi quy tuyến tính. - Machine learning with python for everyone pearson 2020
Hình 15.6 Một mô hình đồ họa xác suất cho hồi quy tuyến tính (Trang 919)
Hình 15.7 Một mô hình đồ họa xác suất cho hồi quy logistic. - Machine learning with python for everyone pearson 2020
Hình 15.7 Một mô hình đồ họa xác suất cho hồi quy logistic (Trang 926)

TỪ KHÓA LIÊN QUAN

w