دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: [1 ed.] نویسندگان: David Tan, Ada Leung, David Colls سری: ISBN (شابک) : 9781098144630, 1098144635 ناشر: O'Reilly Media سال نشر: 2024 تعداد صفحات: 300 زبان: English فرمت فایل : MOBI (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 824 Kb
در صورت تبدیل فایل کتاب Effective Machine Learning Teams: Best Practices for ML Practitioners به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب تیمهای یادگیری ماشین موثر: بهترین روشها برای پزشکان ML نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
مهارت ها و تکنیک های ارزشمندی را که برای تسریع در ارائه راه حل های یادگیری ماشین نیاز دارید، به دست آورید. با این راهنمای عملی، دانشمندان داده و مهندسان ML یاد خواهند گرفت که چگونه به روشی عملی و ساده، شکاف بین علم داده و ارائه نرمافزار ناب را پر کنند. دیوید تان و آدا لئونگ از Thoughtworks به شما نشان میدهند که چگونه مهارتهای مهندسی نرمافزار تستشده و شیوههای تحویل ناب را به کار ببرید که اثربخشی شما را در پروژههای ML بهبود میبخشد. بر اساس تجربه نویسندگان در چندین پروژه دادههای دنیای واقعی و ML، تکنیکهای اثباتشده در این کتاب به تیمها کمک میکند از تلههای رایج در دنیای ML اجتناب کنند، بنابراین میتوانید سریعتر و قابل اطمینانتر تکرار کنید. با این تکنیکها، دانشمندان داده و مهندسان ML میتوانند بر اصطکاک غلبه کنند و هنگام ارائه راهحلهای یادگیری ماشین، جریان را تجربه کنند. این کتاب به شما نشان میدهد که چگونه میتوانید از موارد زیر استفاده کنید: روشهای مهندسی مانند نوشتن تستهای خودکار، محیطهای توسعه کانتینریسازی، و بازسازی پایههای کد مشکلساز را اعمال کنید. شما برای پاسخگویی به تغییرات به شیوه ای چابک از شیوه های تحویل و محصول استفاده کنید تا به طور مکرر شانس خود را برای ساختن محصول مناسب برای کاربران خود بهبود بخشید از ویژگی های ویرایشگر کد هوشمند برای کدنویسی موثرتر استفاده کنید.
Gain the valuable skills and techniques you need to accelerate the delivery of machine learning solutions. With this practical guide, data scientists and ML engineers will learn how to bridge the gap between data science and Lean software delivery in a practical and simple way. David Tan and Ada Leung from Thoughtworks show you how to apply time-tested software engineering skills and Lean delivery practices that will improve your effectiveness in ML projects. Based on the authors\' experience across multiple real-world data and ML projects, the proven techniques in this book will help teams avoid common traps in the ML world, so you can iterate more quickly and reliably. With these techniques, data scientists and ML engineers can overcome friction and experience flow when delivering machine learning solutions. This book shows you how to: Apply engineering practices such as writing automated tests, containerizing development environments, and refactoring problematic code bases Apply MLOps and CI/CD practices to accelerate experimentation cycles and improve reliability of ML solutions Design maintainable and evolvable ML solutions that allow you to respond to changes in an agile fashion Apply delivery and product practices to iteratively improve your odds of building the right product for your users Use intelligent code editor features to code more effectively
Preface
Who Is This Book For
How This Book Is Organized
Part 1: Engineering Practices
Part 2: Product and Delivery Practices
Some Parting Thoughts
Conventions Used in This Book
Using Code Examples
O’Reilly Online Learning
How to Contact Us
1. Challenges and Better Paths in Delivering Machine Learning Solutions
Machine Learning: Promises and Disappointments
Continued Optimism in Machine Learning
Why ML Projects Fail
Macro-level view: barriers to success
Micro-level view: everyday impediments to success
Lifecycle of a story in a low effectiveness environment
Lifecycle of a story in a high effectiveness environment
Is There a Better Way? How Lean and Systems Thinking Can Help
But First, You Can’t “MLOps” Your Problems Away
See the Whole: A Systems Thinking Lens for Effective ML Delivery
Using Lean to Improve ML Delivery Systems
What is Lean, and why should ML practitioners care?
Product
Prototype testing
Discovery
Delivery
Vertically sliced work
Vertically sliced teams, or cross functional teams
Ways of working
Measuring delivery metrics
Engineering
Automated testing
Refactoring
Code editor effectiveness
Continuous delivery for machine learning (CD4ML)
Machine learning
Framing ML problems
ML systems design
Responsible AI
ML governance
Data
Closing the data collection loop
Reducing data distribution shifts
Data security and privacy
Conclusion
An Invitation to Journey with Us
2. Effective Dependency Management: Principles and Tools
What if Our Code Worked Everywhere, Every Time?
A Better Way: Check Out and Go
Principles for Effective Dependency Management
Reproducible environments
Production-like development environments from day one
Application-level environment isolation
OS-level environment isolation
Tools for Dependency Management
Managing OS-level dependencies (with Docker)
Misconception 1: Docker is over-complicated and unnecessary
Misconception 2: I don’t need Docker because I already use X (e.g. conda)
Misconception 3: Docker will have a significant performance impact
Managing application-level dependencies (with Poetry)
A Crash Course on Docker and batect
What are Containers?
Where Will We Use Docker?
Reduce the Number of Moving Parts in Docker with batect
Benefit 1: Simpler command-line interface
Benefit 2: Local-CI symmetry
Benefit 3: Faster builds with caches
How to use batect in your projects
Conclusion
3. Effective Dependency Management in Practice
In Context: ML Development Workflow
What Exactly Are We Containerizing?
Hands-on Exercise: Reproducible Development Environments, Aided by Containers
1. Check out and go: Installing prerequisite dependencies
2. Create our local development environment
3. Start our local development environment
4. Serving the ML model locally as a web API
5. Configure our code editor
6. Training model on the cloud
7. Deploying model web API
Secure Dependency Management
Remove Unnecessary Dependencies
Automate checks for security vulnerabilities
Conclusion
Further Reading
4. Automated Testing: Move Fast Without Breaking Things
Automated Tests: The Foundation for Iterating Quickly and Reliably
Starting with Why: Benefits of Test Automation
If Automated Testing is so Important, Why Aren’t We Doing It?
Reason 1: We think writing automated tests slows us down
Reason 2: “We have CI/CD”
Reason 3: We just don’t know how to fully test ML systems
Building Blocks for a Comprehensive Test Strategy
The What: Identifying Components For Testing
Software logic
ML models
The How: Structure of a Test
Characteristics of a Good Test and Pitfalls to Avoid
Tests should be independent and idempotent
Tests should fail fast and fail loudly
Tests should check behavior, not implementation
Tests should be runnable locally
Tests must be part of feature development
Tests let us “catch bugs once”
Software Tests
Unit Tests
Designing unit-testable code
How do I write a unit test?
Training Smoke Tests
How do I write these tests?
API Tests
How do I write these tests?
Recommended practice: Assert on “the whole elephant”
Post-deployment Tests
How do I write these tests?
Conclusion
5. Automated Testing: ML Model Tests
Model Tests
The Necessity of Model Tests
Challenges of Testing ML Models
Fitness Functions for ML Models
Model Metrics Tests (Global and Stratified)
How do I write these tests?
Advantages and limitations of metrics tests
Behavioral Tests
Complementary Practices for Model Tests
Error Analysis and Visualization
Learn from Production by Closing the Data Collection Loop
Open-closed Test Design
Exploratory Testing
Means to Improve the Model
Designing for Failures
Monitoring in Production
Bringing It All Together
Conclusion
Next Steps: Applying What You’ve Learned
Make incremental improvements
Demonstrate value
6. Supercharging Your Code Editor with Simple Techniques
Why Should I Care? The Benefits (and Surprising Simplicity) of Knowing our IDE
If It’s so Important, Why Haven’t I Learned It Yet?
The Plan: Getting Productive In Two Stages
Stage 1: Configuring our IDE
Install IDE and basic navigation shortcuts
Create a virtual environment
Configure virtual environment: PyCharm
Configure virtual environment: VS Code
Testing that we’ve configured everything correctly
Stage 2: The Star of the Show – Keyboard Shortcuts
Coding
Code completion suggestions
Inline documentation / Parameter information
Auto fix errors
Linting
Move / copy lines
Refactoring
Rename variable
Extract variable / method / function
Reformat code
Navigating code without getting lost
Opening things (files, classes, methods, functions) by name
Navigating the flow of code
Screen real estate management
That’s it: You Did It!
Guidelines for setting up a code repository for your team
Additional tools and techniques
Conclusion