My Account Log in

1 option

Data Science with . NET and Polyglot Notebooks : Programmer's Guide to Data Science Using ML. NET, OpenAI, and Semantic Kernel / Matt Eland.

Ebook Central College Complete Available online

View online
Format:
Book
Author/Creator:
Eland, Matt, author.
Language:
English
Subjects (All):
Microsoft .NET Framework.
Application software--Development.
Application software.
Physical Description:
1 online resource (404 pages)
Edition:
First edition.
Place of Publication:
Birmingham, England : Packt Publishing, [2024]
Biography/History:
Eland Matt: Matt Eland is a senior software engineering and data science consultant at Leading EDJE in Columbus, Ohio. He loves sharing his journey by teaching software engineering, AI, and data science concepts in the most engaging ways possible. Matt has used machine learning to settle debates over whether certain movies are Christmas movies, reinforcement learning to create digital attack squirrels, data analytics to suggest improvements to his favorite TV show, and AI agents to play board games and create an AI agent with the personality of a dog. He is the author of multiple books and courses, helps organize a user group and regional conferences, holds a Master's of Science in Data Analytics, and is a 2x Microsoft MVP in AI and. NET.
Summary:
Expand your skillset by learning how to perform data science, machine learning, and generative AI experiments in .NET Interactive notebooks using a variety of languages, including C#, F#, SQL, and PowerShellKey FeaturesConduct a full range of data science experiments with clear explanations from start to finishLearn key concepts in data analytics, machine learning, and AI and apply them to solve real-world problemsAccess all of the code online as a notebook and interactive GitHub CodespacePurchase of the print or Kindle book includes a free PDF eBookBook DescriptionAs the fields of data science, machine learning, and artificial intelligence rapidly evolve, .NET developers are eager to leverage their expertise to dive into these exciting domains but are often unsure of how to do so. Data Science in .NET with Polyglot Notebooks is the practical guide you need to seamlessly bring your .NET skills into the world of analytics and AI. With Microsoft’s .NET platform now robustly supporting machine learning and AI tasks, the introduction of tools such as .NET Interactive kernels and Polyglot Notebooks has opened up a world of possibilities for .NET developers. This book empowers you to harness the full potential of these cutting-edge technologies, guiding you through hands-on experiments that illustrate key concepts and principles. Through a series of interactive notebooks, you’ll not only master technical processes but also discover how to integrate these new skills into your current role or pivot to exciting opportunities in the data science field. By the end of the book, you’ll have acquired the necessary knowledge and confidence to apply cutting-edge data science techniques and deliver impactful solutions within the .NET ecosystem.What you will learnLoad, analyze, and transform data using DataFrames, data visualization, and descriptive statisticsTrain machine learning models with ML.NET for classification and regression tasksCustomize ML.NET model training pipelines with AutoML, transforms, and model trainersApply best practices for deploying models and monitoring their performanceConnect to generative AI models using Polyglot NotebooksChain together complex AI tasks with AI orchestration, RAG, and Semantic KernelCreate interactive online documentation with Mermaid charts and GitHub CodespacesWho this book is forThis book is for experienced C# or F# developers who want to transition into data science and machine learning while leveraging their .NET expertise. It’s ideal for those looking to learn ML.NET and Semantic kernel and extend their .NET skills to data science, machine learning, and Generative AI Workflows.
Contents:
Cover
Title Page
Copyright
Dedication
Contributors
Table of Contents
Preface
Part 1: Data Analysis in Polyglot Notebooks
Chapter 1: Data Science, Notebooks, and Kernels
Exploring the field of data science
The rise of big data
Data analytics
Machine learning
Artificial intelligence
Data science notebooks and Project Jupyter
Extending notebooks with kernels
Polyglot Notebooks and .NET Interactive
Summary
Further reading
Chapter 2: Exploring Polyglot Notebooks
Technical requirements
Installing Polyglot Notebooks
Creating your first notebook
Executing notebook cells
Adding code cells
Working with variables
The Variables view
Markdown cells
Declaring classes and methods
Declaring methods
Declaring classes
Working with other languages
Sharing variables between languages
Exporting variables
Troubleshooting notebook execution
Resolving compiler errors
Problems with notebook execution
Diagnostic output for Polyglot Notebooks errors
Issues and the Polyglot Notebooks repository
Chapter 3: Getting Data and Code into Your Notebooks
Importing code and NuGet packages
Importing code files
Importing NuGet packages
Importing project files
Reading CSV data
Understanding CSV data
Reading CSV data into a DataFrame
Specialized CSV loading scenarios
Troubleshooting CSV loading errors
Loading TSV and other delimited file formats
Getting JSON data with PowerShell
Building DataFrames from objects
Connecting to databases with SQL
Connecting to a SQL database
Executing SQL from SQL kernels
Sharing SQL results with other kernels
Alternative ways of connecting to the Database
Querying Kusto clusters with KQL
Further reading.
Chapter 4: Working with Tabular Data and DataFrames
Understanding data cleaning and data wrangling
Where unclean data comes from
The impact of unclean data
Data cleaning and data wrangling
Working with DataFrames in C#
Viewing and sampling data
Rows
Getting and setting cell values
Iterating over rows
Working with columns
Columns
Analyzing columns
Removing columns
Renaming columns
Adding a new column
Handling missing values
Sorting, filtering, grouping, and merging data
Sorting DataFrames
Grouping and aggregating DataFrames
Merging DataFrames
Filtering DataFrames
DataFrames in other languages
Chapter 5: Visualizing Data
Understanding exploratory data analysis
Data visualization's role in exploratory data analysis
Descriptive statistics for EDA
Extracting insights with descriptive statistics
Using DataFrame.Description to generate descriptive statistics
Descriptive statistics with MathNet.Numerics
Creating a box plot with ScottPlot
Performing univariate analysis with Plotly.NET
Plotly and Plotly.NET
Box plots in Plotly.NET
Violin plots with Plotly.NET
Histograms with Plotly.NET
Chapter 6: Variable Correlations
Performing multivariate analysis with Plotly.NET
Loading data and dependencies
Multivariate analysis with box and violin plots
Plotting multiple values with scatter plots
Adding color to a scatter plot
3D scatter plots with Plotly.NET
Identifying variable correlations
Calculating variable correlations
Building feature correlation matrixes
Part 2: Machine Learning with Polyglot Notebooks and ML.NET.
Chapter 7: Classification Experiments with ML.NET AutoML
Understanding machine learning
Supervised learning
Classification and regression
Introducing ML.NET and AutoML
Understanding AutoML
AutoML and data pre-processing
Creating training and testing datasets
Training a classification model with ML.NET AutoML
Evaluating binary classification models
Evaluating our model
Calculating feature importance
Predicting values with binary classification models
Chapter 8: Regression Experiments with ML.NET AutoML
Understanding regression
Our regression task
Regression as a numerical formula
Our regression dataset
Performing a regression experiment
Understanding cross-validation
Interpreting cross-validation results
Evaluating regression metrics
Predicting values for outliers
Applying PFI to regression models
Applying a regression model
Chapter 9: Beyond AutoML: Pipelines, Trainers, and Transforms
Performing regression without AutoML
Features and pipelines
Creating an AutoML pipeline
Controlling AutoML pipelines
Customizing the Featurizer
Customizing the model trainer selector
Customizing hyperparameter tuning
Understanding the search space
Customizing the search space
Customizing the hyperparameter tuner
Scaling numeric columns
Selecting regression algorithms
Selecting binary classification algorithms
Chapter 10: Deploying Machine Learning Models
Introducing our multi-class classification model
Training our model
Evaluating multi-class classification models
Generating test predictions
Exporting ML.NET models.
Hosting ML.NET models in ASP.NET web applications
Configuring a PredictionEnginePool
Using the PredictionEnginePool
Understanding model performance, data drift, and MLOps
Detecting model drift
MLOps and updating models
Surveying additional ML.NET capabilities
ONNX and TensorFlow models in ML.NET
Part 3: Exploring Generative AI with Polyglot Notebooks
Chapter 11: Generative AI in Polyglot Notebooks
Understanding Generative AI
Deploying generative AI models on Azure
Creating an Azure OpenAI Service
Deploying models on Azure OpenAI Service
Getting access credentials for Azure OpenAI
Connecting to an Azure OpenAI Service
Chatting with a deployed model
Customizing model behavior with prompt engineering
Zero-shot, one-shot, and few-shot inferencing
Using text embeddings
Generating images with DALL-E
Chapter 12: AI Orchestration with Semantic Kernel
Understanding RAG and AI orchestration
Introducing Semantic Kernel
Chatting with Semantic Kernel functions
Building the Kernel
Creating a prompt function
Adding memory to Semantic Kernel
Defining complex functions
Creating functions from methods
Accepting KernelFunction parameters
Defining a memory function
Calling multiple functions using plugins
Examining FunctionResult objects
Azure OpenAI content filtering
Handling complex requests with planners
Knowing where to go from here
Part 4: Polyglot Notebooks in the Enterprise
Chapter 13: Enriching Documentation with Mermaid Diagrams
Introducing Mermaid diagrams
Communicating logic with flowcharts
Communicating structure with class diagrams.
Communicating data with Entity Relationship Diagrams
Communicating behavior with state diagrams
Communicating flow with sequence diagrams
Communicating workflow with Git graphs
Chapter 14: Extending Polyglot Notebooks
Understanding default formatting behavior
Default object formatting
Default collection formatting
Styling output with custom formatters
Exploring magic commands
Creating a Polyglot Notebook extension
Working with parameters
Invoking code on kernels
Chapter 15: Adopting and Deploying Polyglot Notebooks
Integrating Polyglot Notebooks into your day job
Enabling rapid experimentation
Supporting AI and analytics workloads
Assisting testing workloads
Training new team members with Polyglot Notebooks
Sharing Polyglot Notebooks with your team
Integrating Polyglot Notebooks into Jupyter or JupyterLab
Storing Notebooks in source control
Deploying Polyglot Notebooks to GitHub Codespaces
Configuring GitHub codespaces
Creating a codespace on GitHub
Advancing into machine learning and AI
Adding data science to your day job
Getting into data science
Succeeding in data science
Index
About PACKT
Other Books You May Enjoy.
Notes:
Includes index.
Description based on publisher supplied metadata and other sources.
Description based on print version record.
ISBN:
9781835882979
1835882978
OCLC:
1453914924

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account