South Florida Software Developers Conference 2020

https://www.fladotnet.com/codecamp/Home.aspx

Joe Mayo - Deep Learning Basics

"In this session, you'll see how deep learning works. We'll cover the basics, discussing concepts and techniques that are common to many types of deep learning. Although math is inherent in how deep learning works, Joe will explain enough to where you don't have to be an expert in calculus, linear algebra, or statistics. You'll see that this technology doesn't require a Ph.D. for any developer who wants to learn and take advantage of AI. By the end of the presentation, you will have seen a full example of how deep learning works, design and considerations, and practical applications."

Adnan Masood - Explainable, Interpretable, and Transparent Machine Learning

"Most real datasets have hidden biases. Being able to detect the impact of the bias in the data on the model, and then to repair the model, is critical if we are going to deploy machine learning in applications that affect people’s health, welfare, and social opportunities. This requires models that are intelligible. In this talk, we will review variety of tools and open source projects, including Microsoft InterpretML, for training interpretable models and explaining blackbox systems. These tools (WhatIf, Fair 360, etc) are made to help developers experiment with ways to introduce explanations of the output of AI systems. This talk will review the InterpretML and draw parallels with LIME, ELI5, and SHAP. InterpretML implements a number of intelligible models—including Explainable Boosting Machine (an improvement over generalized additive models ), and several methods for generating explanations of the behavior of black-box models or their individual predictions."

https://github.com/slundberg/shap

https://github.com/slundberg/shap/tree/master/shap/explainers

https://github.com/marcotcr/lime

https://github.com/interpretml/interpret

Tabular:

  • SHAP (tree explainer, deep explainer, kernel explainer, linear explainer)
  • Mimic (Linear regression, decision tree, lightGBM, SGD
  • Feature permutation (PFI explainer) (e.g. tpot?)
  • LIME

Text:

  • HAN
  • SHAP (kernel explainer)

Image:

  • SHAP (kernel explainer)

https://christophm.github.io/interpretable-ml-book/

Why do me need to interp ml? - building trust, debugging, regulation.

Accuracy vs explainability - NN, Ensemble (random forest), SVM, graphical models, decision trees, regression, classification.

Explainability importance - regulation, fraud, recommender systems, image classification

https://arxiv.org/abs/1803.09010 - Datasheets for Datasets.

Feature Importance - H-statistic (interaction)

https://pair-code.github.io/what-if-tool/

http://aif360.mybluemix.net/data

https://github.com/interpretml/interpret/blob/master/examples/python/notebooks/Interpretable%20Regression%20Methods.ipynb


Ram Narasihmham - Getting Started on Bayesian Analysis -- with PyMC3

"This talk is intended for those who’ve been intending to try out Bayesian Analysis but weren’t sure where and how to get started. Bayesian analysis comes with its own jargon (likelihood distributions, posterior-predictive, MCMC, and priors) and these can be daunting to some. This is a presentation intended for beginners. Any knowledge of probability theory and statistics would be very helpful but is not required. We will spend time understanding these concepts and ideas, with examples. Specifically, we will focus on Bayesian inference because it is prevalent in practice. The idea is to keep the math to a minimum and focus more on how Bayesian models work. PyMC3 is a python package widely used for Bayesian analysis. It has a very clean API that allows for even very sophisticated models to be created quickly. During the presentation Approximately half the time will be spent on looking at and learning the “idioms of PyMC3.” Actual examples (of parameter estimation, and one A/B testing example will be presented. Again, knowledge of Python is helpful, but not required. Ultimately, the goal of this presentation is for you to get familiar with the underlying concepts and syntax so that you can explore this space further by yourself. Plenty of resources will be provided."

https://github.com/Ram-N/Bayesian_PyMC3

Prior x Likelihood = Posterior

Parameter of interest (theta) e.g. height.

Distribution e.g. gaussian

Prior - Before evidence

Posterior - after all evidence and background info.

Likelihood - some distributions for some problems.

Pr(Unknowns | knowns)

Probabilistic programming - add some random numbers

PyMC3 - linear regression (https://github.com/Ram-N/Bayesian_PyMC3/blob/master/notebooks/Example1_Linear_Regression_Using%20PyMC3.ipynb)

y = c + mx

price = base_price x price_per_bedroom x (# bedrooms)

sigma is error

with pm.Model() as home_price_model:
    #define priors
    base = pm.Uniform('base_price', 0, MAX_BASE) # This is the price for a home with ZERO bedrooms
    ppb = pm.Uniform('price_per_bdrm', 0, MAX_PPB) #Additional cost for each bedroom 
    sigma = pm.HalfNormal('sigma', sd=MAX_SD)

    y_predicted = base + ppb * bdrms
    
    #define Likelihood
    likelihood = pm.Normal('y',
                           mu = y_predicted, sigma = sigma,
                           observed = actual_prices)

with home_price_model:
    trace = pm.sample(2000, 
                      chains=2,
                      tune=1000) - Keep 1000-2000 values

Print trace to see if stationary.

HPD - high probability?

2 Hypothesis problems - Binary

The bayesian crank - Move to posterior to prior

Binomaial distributions

Beta distributions:

  • alpha is number of successes
  • beta often represents "misses"
  • alpha + beta = total attempts

Beta and binomial are related... Conjugate prior

Oil exploration https://github.com/Ram-N/Bayesian_PyMC3/blob/master/notebooks/Example2_OilExporation_Success_probability_using_PyMC3.ipynb

plot_posterior(trace, ref_val=0.10)

A-B testing https://github.com/Ram-N/Bayesian_PyMC3/blob/master/notebooks/Example3_AB%20Testing%20in%20a%20Bayesian%20Framework%20Using%20PyMC3.ipynb

http://doingbayesiandataanalysis.blogspot.com/

https://xcelab.net/rm/statistical-rethinking/

James Quick - Harness the power of visual studio code

"Visual Studio Code is one of the most powerful and popular text editors for Web Development. Not only does it have built in functionality like IntelliSense, debugging, and more, it also has an incredibly active extension ecosystem with infinite potential. For new and experienced developers alike, knowing your tools is key to being an effective developer. Brand new to VS Code? This session will make you want to give it a shot. Already using it? You’ll learn invaluable tips. Join this session to streamline your development workflow in VS Code, saving minutes for each hour of development!"

https://www.youtube.com/watch?v=aq-fCtg_gG4

Stable vs. insider's build (nightly build).

Cmd + b - Toggle side bar

Cmd + shift + d - debug

Cmd + shift + f - file

Cmd + k, z - zen mode

Cmd + shift + p - palette

Option + l,r - move word

Cmd + shift + h - search and replace

Hector Villafuerte - Automated Machine Learning (AutoML) in Power BI

"AutoML was proposed as an artificial intelligence-based solution to the ever-growing challenge of applying machine learning. AWS, Google and Microsoft are including AutoML as key feature of their AI platforms. Business analysts can build Machine Learning models to solve business problems that once required data scientists. In this session, Hector will explain the principles of Machine Learning and AutoML (Automated machine learning) and he will demo AutoML PowerBI feature end-to-end. Finally he'll show How to interpret and extract the optimum results based on the business problem."

Maximo Trinidad Bio - Working with Docker Containers in WSL

"Check out this session if you're interested in learning what has to offer in its basic form when working with SQL Server and PowerShell. Take a look at the simple difference between WSL 1 and WSL 2. Also, look at what makes it work or not. Learn how to update, save, and reload a Docker container. Install all your necessary tools such as PowerShell, Net tools, vim, and Anaconda when necessary. And a surprise! Do you want to see .NET Interactive/PowerShell Notebook in Action?"

https://docs.microsoft.com/en-us/windows/wsl/install-win10

https://docs.docker.com/docker-for-windows/install/

https://towardsdatascience.com/setting-up-a-data-science-environment-using-windows-subsystem-for-linux-wsl-c4b390803dd?gi=d4c8424d68c9

Did not attend:

Chris Ayers - Git Good with Advanced Git

"Chris is a Dev Ops consultant and full-stack Software Developer with a focus in modern applications. Chris has followed industry best practices and standards during his different roles in development, architecture, security, infrastructure, and networking. Focusing on Dev Ops ties all of the different roles together. In his free time, Chris is a speaker at numerous meetups, an avid reader and a gamer."