دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: [1 ed.]
نویسندگان: Ben Wilson
سری:
ISBN (شابک) : 1617298719, 9781617298714
ناشر: Manning Publications
سال نشر: 2022
تعداد صفحات: 576
[578]
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 26 Mb
در صورت تبدیل فایل کتاب Machine Learning Engineering in Action به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب مهندسی یادگیری ماشین در عمل نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
نکات، ترفندها و الگوهای طراحی میدانی برای ساخت پروژه های یادگیری ماشینی که از مفهوم تا تولید قابل اجرا، قابل نگهداری و ایمن هستند. در مهندسی یادگیری ماشین در عمل، یاد خواهید گرفت: • ارزیابی مسائل علم داده برای یافتن موثرترین راه حل • محدوده پروژه یادگیری ماشینی برای انتظارات استفاده و بودجه • تکنیک های فرآیندی که تلاش های تلف شده را به حداقل می رساند و تولید را سرعت می بخشد • ارزیابی یک پروژه با استفاده از نمونه سازی استاندارد شده و اعتبار سنجی آماری • انتخاب فناوری ها و ابزارهای مناسب برای پروژه شما • ایجاد پایگاه کد خود را قابل درک تر، قابل نگهداری، و قابل آزمایش • خودکارسازی شیوه های عیب یابی و ورود به سیستم انتقال پروژه یادگیری ماشینی از تیم علم داده به کاربران نهایی کار آسانی نیست. مهندسی یادگیری ماشین در عمل به شما کمک می کند آن را ساده کنید. در داخل، توصیههای فوقالعادهای از متخصص صنعت کهنه کار بن ویلسون، معمار اصلی Resident Solutions در Databricks خواهید یافت. بن جعبه ابزار شخصی خود را از تکنیکهای ساخت سیستمهای یادگیری ماشینی تولید قابل استقرار و نگهداری معرفی میکند. شما اهمیت روشهای Agile را برای نمونهسازی سریع و گفتگو با سهامداران یاد خواهید گرفت و در عین حال درک جدیدی از اهمیت برنامهریزی ایجاد میکنید. اتخاذ استانداردهای توسعه نرمافزار به خوبی تثبیت شده به شما کمک میکند مدیریت کد بهتری ارائه دهید و آزمایش، مقیاسبندی و حتی استفاده مجدد از کدهای یادگیری ماشین را آسانتر میکند. هر روش به سبکی دوستانه و همتا به همتا توضیح داده شده و با کد منبع آماده تولید نشان داده شده است. در مورد تکنولوژی حداکثر عملکرد را از مدل ها و داده های خود ارائه دهید. این مجموعه از تکنیکهای تکرارپذیر به شما کمک میکند خطوط لوله داده پایدار، گردش کار برنامههای کاربردی کارآمد و مدلهای قابل نگهداری را هر بار بسازید. بر اساس دههها تمرین خوب مهندسی نرمافزار، مهندسی یادگیری ماشین تضمین میکند که سیستمهای ML شما انعطافپذیر، سازگار، و عملکرد در تولید هستند. درباره کتاب مهندسی یادگیری ماشین در عمل اصول و شیوههای اصلی طراحی، ساخت و ارائه پروژههای یادگیری ماشین موفق را به شما میآموزد. تکنیکهای مهندسی نرمافزار مانند انجام آزمایشها بر روی نمونههای اولیه و اجرای طراحی مدولار را که منجر به معماریهای انعطافپذیر و ارتباطات متقابل تیمی سازگار میشود، کشف خواهید کرد. بر اساس مطالب گسترده نویسنده تجربه، هر روش در این کتاب برای حل پروژه های دنیای واقعی استفاده شده است. داخلش چیه • محدوده پروژه یادگیری ماشینی برای انتظارات استفاده و بودجه • انتخاب فناوری های مناسب برای طراحی شما • ایجاد پایگاه کد خود را قابل درک تر، قابل نگهداری، و قابل آزمایش • خودکارسازی شیوه های عیب یابی و ورود به سیستم درباره خواننده برای دانشمندان داده که یادگیری ماشین و اصول برنامه نویسی شی گرا را می دانند. درباره نویسنده بن ویلسون معمار اصلی Resident Solutions در Databricks است که در آنجا پروژه Databricks Labs AutoML را توسعه داده است. او همچنین یک committer MLflow است.
Field-tested tips, tricks, and design patterns for building machine learning projects that are deployable, maintainable, and secure from concept to production. In Machine Learning Engineering in Action, you will learn: • Evaluating data science problems to find the most effective solution • Scoping a machine learning project for usage expectations and budget • Process techniques that minimize wasted effort and speed up production • Assessing a project using standardized prototyping work and statistical validation • Choosing the right technologies and tools for your project • Making your codebase more understandable, maintainable, and testable • Automating your troubleshooting and logging practices Ferrying a machine learning project from your data science team to your end users is no easy task. Machine Learning Engineering in Action will help you make it simple. Inside, you’ll find fantastic advice from veteran industry expert Ben Wilson, Principal Resident Solutions Architect at Databricks. Ben introduces his personal toolbox of techniques for building deployable and maintainable production machine learning systems. You’ll learn the importance of Agile methodologies for fast prototyping and conferring with stakeholders, while developing a new appreciation for the importance of planning. Adopting well-established software development standards will help you deliver better code management, and make it easier to test, scale, and even reuse your machine learning code. Every method is explained in a friendly, peer-to-peer style and illustrated with production-ready source code. About the technology Deliver maximum performance from your models and data. This collection of reproducible techniques will help you build stable data pipelines, efficient application workflows, and maintainable models every time. Based on decades of good software engineering practice, machine learning engineering ensures your ML systems are resilient, adaptable, and perform in production. About the book Machine Learning Engineering in Action teaches you core principles and practices for designing, building, and delivering successful machine learning projects. You’ll discover software engineering techniques like conducting experiments on your prototypes and implementing modular design that result in resilient architectures and consistent cross-team communication. Based on the author’s extensive experience, every method in this book has been used to solve real-world projects. What's inside • Scoping a machine learning project for usage expectations and budget • Choosing the right technologies for your design • Making your codebase more understandable, maintainable, and testable • Automating your troubleshooting and logging practices About the reader For data scientists who know machine learning and the basics of object-oriented programming. About the author Ben Wilson is Principal Resident Solutions Architect at Databricks, where he developed the Databricks Labs AutoML project. He is also an MLflow committer.
Machine Learning Engineering in Action brief contents contents preface acknowledgments about this book Who should read this book How this book is organized: A road map About the code liveBook discussion forum about the author about the cover illustration Part 1—An introduction to machine learning engineering 1 What is a machine learning engineer? 1.1 Why ML engineering? 1.2 The core tenets of ML engineering 1.2.1 Planning 1.2.2 Scoping and research 1.2.3 Experimentation 1.2.4 Development 1.2.5 Deployment 1.2.6 Evaluation 1.3 The goals of ML engineering Summary 2 Your data science could use some engineering 2.1 Augmenting a complex profession with processes to increase project success 2.2 A foundation of simplicity 2.3 Co-opting principles of Agile software engineering 2.3.1 Communication and cooperation 2.3.2 Embracing and expecting change 2.4 The foundation of ML engineering Summary 3 Before you model: Planning and scoping a project 3.1 Planning: You want me to predict what?! 3.1.1 Basic planning for a project 3.1.2 That first meeting 3.1.3 Plan for demos—lots of demos 3.1.4 Experimentation by solution building: Wasting time for pride’s sake 3.2 Experimental scoping: Setting expectations and boundaries 3.2.1 What is experimental scoping? 3.2.2 Experimental scoping for the ML team: Research 3.2.3 Experimental scoping for the ML team: Experimentation Summary 4 Before you model: Communication and logistics of projects 4.1 Communication: Defining the problem 4.1.1 Understanding the problem 4.1.2 Setting critical discussion boundaries 4.2 Don’t waste our time: Meeting with cross-functional teams 4.2.1 Experimental update meeting: Do we know what we’re doing here? 4.2.2 SME review/prototype review: Can we solve this? 4.2.3 Development progress review(s): Is this thing going to work? 4.2.4 MVP review: Did you build what we asked for? 4.2.5 Preproduction review: We really hope we didn’t screw this up 4.3 Setting limits on your experimentation 4.3.1 Set a time limit 4.3.2 Can you put this into production? Would you want to maintain it? 4.3.3 TDD vs. RDD vs. PDD vs. CDD for ML projects 4.4 Planning for business rules chaos 4.4.1 Embracing chaos by planning for it 4.4.2 Human-in-the-loop design 4.4.3 What’s your backup plan? 4.5 Talking about results Summary 5 Experimentation in action: Planning and researching an ML project 5.1 Planning experiments 5.1.1 Perform basic research and planning 5.1.2 Forget the blogs—read the API docs 5.1.3 Draw straws for an internal hackathon 5.1.4 Level the playing field 5.2 Performing experimental prep work 5.2.1 Performing data analysis 5.2.2 Moving from script to reusable code 5.2.3 One last note on building reusable code for experimentation Summary 6 Experimentation in action: Testing and evaluating a project 6.1 Testing ideas 6.1.1 Setting guidelines in code 6.1.2 Running quick forecasting tests 6.2 Whittling down the possibilities 6.2.1 Evaluating prototypes properly 6.2.2 Making a call on the direction to go in 6.2.3 So . . . what’s next? Summary 7 Experimentation in action: Moving from prototype to MVP 7.1 Tuning: Automating the annoying stuff 7.1.1 Tuning options 7.1.2 Hyperopt primer 7.1.3 Using Hyperopt to tune a complex forecasting problem 7.2 Choosing the right tech for the platform and the team 7.2.1 Why Spark? 7.2.2 Handling tuning from the driver with SparkTrials 7.2.3 Handling tuning from the workers with a pandas_udf 7.2.4 Using new paradigms for teams: Platforms and technologies Summary 8 Experimentation in action: Finalizing an MVP with MLflow and runtime optimization 8.1 Logging: Code, metrics, and results 8.1.1 MLflow tracking 8.1.2 Please stop printing and log your information 8.1.3 Version control, branch strategies, and working with others 8.2 Scalability and concurrency 8.2.1 What is concurrency? 8.2.2 What you can (and can’t) run asynchronously Summary Part 2—Preparing for production: Creating maintainable ML 9 Modularity for ML: Writing testable and legible code 9.1 Understanding monolithic scripts and why they are bad 9.1.1 How monoliths come into being 9.1.2 Walls of text 9.1.3 Considerations for monolithic scripts 9.2 Debugging walls of text 9.3 Designing modular ML code 9.4 Using test-driven development for ML Summary 10 Standards of coding and creating maintainable ML code 10.1 ML code smells 10.2 Naming, structure, and code architecture 10.2.1 Naming conventions and structure 10.2.2 Trying to be too clever 10.2.3 Code architecture 10.3 Tuple unpacking and maintainable alternatives 10.3.1 Tuple unpacking example 10.3.2 A solid alternative to tuple unpacking 10.4 Blind to issues: Eating exceptions and other bad practices 10.4.1 Try/catch with the precision of a shotgun 10.4.2 Exception handling with laser precision 10.4.3 Handling errors the right way 10.5 Use of global mutable objects 10.5.1 How mutability can burn you 10.5.2 Encapsulation to prevent mutable side effects 10.6 Excessively nested logic Summary 11 Model measurement and why it’s so important 11.1 Measuring model attribution 11.1.1 Measuring prediction performance 11.1.2 Clarifying correlation vs. causation 11.2 Leveraging A/B testing for attribution calculations 11.2.1 A/B testing 101 11.2.2 Evaluating continuous metrics 11.2.3 Using alternative displays and tests 11.2.4 Evaluating categorical metrics Summary 12 Holding on to your gains by watching for drift 12.1 Detecting drift 12.1.1 What influences drift? 12.2 Responding to drift 12.2.1 What can we do about it? 12.2.2 Responding to drift Summary 13 ML development hubris 13.1 Elegant complexity vs. overengineering 13.1.1 Lightweight scripted style (imperative) 13.1.2 An overengineered mess 13.2 Unintentional obfuscation: Could you read this if you didn’t write it? 13.2.1 The flavors of obfuscation 13.2.2 Troublesome coding habits recap 13.3 Premature generalization, premature optimization, and other bad ways to show how smart you are 13.3.1 Generalization and frameworks: Avoid them until you can’t 13.3.2 Optimizing too early 13.4 Do you really want to be the canary? Alpha testing and the dangers of the open source coal mine 13.5 Technology-driven development vs. solution-driven development Summary Part 3—Developing production machine learning code 14 Writing production code 14.1 Have you met your data? 14.1.1 Make sure you have the data 14.1.2 Check your data provenance 14.1.3 Find a source of truth and align on it 14.1.4 Don’t embed data cleansing into your production code 14.2 Monitoring your features 14.3 Monitoring everything else in the model life cycle 14.4 Keeping things as simple as possible 14.4.1 Simplicity in problem definitions 14.4.2 Simplicity in implementation 14.5 Wireframing ML projects 14.6 Avoiding cargo cult ML behavior Summary 15 Quality and acceptance testing 15.1 Data consistency 15.1.1 Training and inference skew 15.1.2 A brief intro to feature stores 15.1.3 Process over technology 15.1.4 The dangers of a data silo 15.2 Fallbacks and cold starts 15.2.1 Leaning heavily on prior art 15.2.2 Cold-start woes 15.3 End user vs. internal use testing 15.3.1 Biased testing 15.3.2 Dogfooding 15.3.3 SME evaluation 15.4 Model interpretability 15.4.1 Shapley additive explanations 15.4.2 Using shap Summary 16 Production infrastructure 16.1 Artifact management 16.1.1 MLflow’s model registry 16.1.2 Interfacing with the model registry 16.2 Feature stores 16.2.1 What a feature store is used for 16.2.2 Using a feature store 16.2.3 Evaluating a feature store 16.3 Prediction serving architecture 16.3.1 Determining serving needs 16.3.2 Bulk external delivery 16.3.3 Microbatch streaming 16.3.4 Real-time server-side 16.3.5 Integrated models (edge deployment) Summary Appendix A—Big O(no) and how to think about runtime performance A.1 What is Big O, anyway? A.1.1 A gentle introduction to complexity A.2 Complexity by example A.2.1 O(1): The “It doesn’t matter how big the data is” algorithm A.2.2 O(n): The linear relationship algorithm A.2.3 O(n2): A polynomial relationship to the size of the collection A.3 Analyzing decision-tree complexity A.4 General algorithmic complexity for ML Appendix B—Setting up a development environment B.1 The case for a clean experimentation environment B.2 Containers to deal with dependency hell B.3 Creating a container-based pristine environment for experimentation index A B C D E F G H I J K L M N O P Q R S T U V W X