TopPodcast.com
Menu
  • Home
  • Top Charts
  • Top Networks
  • Top Apps
  • Top Independents
  • Top Podfluencers
  • Top Picks
    • Top Business Podcasts
    • Top True Crime Podcasts
    • Top Finance Podcasts
    • Top Comedy Podcasts
    • Top Music Podcasts
    • Top Womens Podcasts
    • Top Kids Podcasts
    • Top Sports Podcasts
    • Top News Podcasts
    • Top Tech Podcasts
    • Top Crypto Podcasts
    • Top Entrepreneurial Podcasts
    • Top Fantasy Sports Podcasts
    • Top Political Podcasts
    • Top Science Podcasts
    • Top Self Help Podcasts
    • Top Sports Betting Podcasts
    • Top Stocks Podcasts
  • Podcast News
  • About Us
  • Podcast Advertising
  • Contact
Not in our directory?
Add Show Here
Podcast Equipment
Center

toppodcastlogoOur TOPPODCAST Picks

  • Comedy
  • Crypto
  • Sports
  • News
  • Politics
  • True Crime
  • Business
  • Finance

Follow Us

toppodcastlogoStay Connected

    View Top 200 Chart
    Back to Rankings Page
    Software How-To

    Machine Learning Guide

    Machine learning audio course, teaching the fundamentals of machine learning and artificial intelligence. It covers intuition, models (shallow and deep), math, languages, frameworks, etc. Where your other ML resources provide the trees, I provide the forest. Consider MLG your syllabus, with highly-curated resources for each episode’s details at ocdevel.com. Audio is a great supplement during exercise, commute, chores, etc.

    Advertise

    Copyright: © Dept copyright 2021

    • Apple Podcasts
    • Google Play
    • Spotify

    Latest Episodes:
    MLA 003 Storage: HDF, Pickle, Postgres May 24, 2018
    Show notes

    Practical workflow of loading, cleaning, and storing large datasets for machine learning, moving from ingesting raw CSVs or JSON files with pandas to saving processed datasets and neural network weights using HDF5 for efficient numerical storage. It clearly distinguishes among storage options—explaining when to use HDF5, pickle files, or SQL databases—while highlighting how libraries like pandas, TensorFlow, and Keras interact with these formats and why these choices matter for production pipelines.

    Links
    • Notes and resources at ocdevel.com/mlg/mla-3
    • Try a walking desk stay healthy & sharp while you learn & code
    Data Ingestion and Preprocessing
    • Data Sources and Formats:

      • Datasets commonly originate as CSV (comma-separated values), TSV (tab-separated values), fixed-width files (FWF), JSON from APIs, or directly from databases.
      • Typical applications include structured data (e.g., real estate features) or unstructured data (e.g., natural language corpora for sentiment analysis).
    • Pandas as the Core Ingestion Tool:

      • Pandas provides versatile functions such as read_csv, read_json, and others to load various file formats with robust options for handling edge cases (e.g., file encodings, missing values).
      • After loading, data cleaning is performed using pandas: dropping or imputing missing values, converting booleans and categorical columns to numeric form.
    • Data Encoding for Machine Learning:

      • All features must be numerical before being supplied to machine learning models like TensorFlow or Keras.
      • Categorical data is one-hot encoded using pandas.get_dummies, converting strings to binary indicator columns.
      • The underlying NumPy array of a DataFrame is accessed via df.values for direct integration with modeling libraries.
    Numerical Data Storage Options
    • HDF5 for Storing Processed Arrays:

      • HDF5 (Hierarchical Data Format version 5) enables efficient storage of large multidimensional NumPy arrays.
      • Libraries like h5py and built-in pandas functions (to_hdf) allow seamless saving and retrieval of arrays or DataFrames.
      • TensorFlow and Keras use HDF5 by default to store neural network weights as multi-dimensional arrays for model checkpointing and early stopping, accommodating robust recovery and rollback.
    • Pickle for Python Objects:

      • Python's pickle protocol serializes arbitrary objects, including machine learning models and arrays, into files for later retrieval.
      • While convenient for quick iterations or heterogeneous data, pickle is less efficient with NDarrays compared to HDF5, lacks significant compression, and poses security risks if not properly safeguarded.
    • SQL Databases and Spreadsheets:

      • For mixed or heterogeneous data, or when producing results for sharing and collaboration, relational databases like PostgreSQL or spreadsheets such as CSVs are used.
      • Databases serve as the endpoint for production systems, where model outputs—such as generated recommendations or reports—are published for downstream use.
    Storage Workflow in Machine Learning Pipelines
    • Typical Process:

      • Data is initially loaded and processed with pandas, then converted to numerical arrays suitable for model training.
      • Intermediate states and model weights are saved using HDF5 during model development and training, ensuring recovery from interruptions and facilitating early stopping.
      • Final outputs, especially those requiring sharing or production use, are published to SQL databases or shared as spreadsheet files.
    • Best Practices and Progression:

      • Quick project starts may involve pickle for accessible storage during early experimentation.
      • For large-scale, high-performance applications, migration to HDF5 for numerical data and SQL for production-grade results is recommended.
      • Alternative options like Feather and PyTables (an interface on top of HDF5) exist for specialized needs.
    Summary
    • HDF5 is optimal for numerical array storage due to its efficiency, built-in compression, and integration with major machine learning frameworks.
    • Pickle accommodates arbitrary Python objects but is suboptimal for numerical data persistence or security.
    • SQL databases and spreadsheets are used for disseminating results, especially when human consumption or application integration is required.
    • The selection of a storage format is determined by data type, pipeline stage, and end-use requirements within machine learning workflows.

    MLA 002 Numpy & Pandas May 24, 2018
    Show notes

    NumPy enables efficient storage and vectorized computation on large numerical datasets in RAM by leveraging contiguous memory allocation and low-level C/Fortran libraries, drastically reducing memory footprint compared to native Python lists. Pandas, built on top of NumPy, introduces labelled, flexible tabular data manipulation—facilitating intuitive row and column operations, powerful indexing, and seamless handling of missing data through tools like alignment, reindexing, and imputation.

    Links
    • Notes and resources at ocdevel.com/mlg/mla-2
    • Try a walking desk stay healthy & sharp while you learn & code
    NumPy: Efficient Numerical Arrays and Vectorized Computation
    • Purpose and Design

      • NumPy ("Numerical Python") is the foundational library for handling large numerical datasets in RAM.
      • It introduces the ndarray (n-dimensional array), which is synonymous with a tensor—enabling storage of vectors, matrices, or higher-dimensional data.
    • Memory Efficiency

      • NumPy arrays are homogeneous: all elements share a consistent data type (e.g., float64, int32, bool).
      • This data type awareness enables allocation of tightly-packed, contiguous memory blocks, optimizing both RAM usage and data access speed.
      • Memory footprint can be orders of magnitude lower than equivalent native Python lists; for example, tasks that exhausted 32GB of RAM using Python lists could drop to just 6GB with NumPy structures.
    • Vectorized Operations

      • NumPy supports vectorized calculations: operations (such as squaring all elements) are applied across entire arrays in a single step, without explicit Python loops.
      • These operations are operator-overloaded and are executed by delegating instructions to low-level, highly optimized C or Fortran routines, delivering significant computational speed gains.
      • Conditional operations and masking, such as zeroing out negative numbers (akin to a ReLU activation), can be done efficiently with Boolean masks.
    Pandas: Advanced Tabular Data Manipulation
    • Relationship to NumPy

      • Pandas builds upon NumPy, leveraging its underlying optimized array storage and computation for numerical columns in its data structures.
      • Supports additional types like strings for non-numeric data, which are common in real-world datasets.
    • 2D Data Handling and Directional Operations

      • The core Pandas structure is the DataFrame, which handles labelled rows and columns, analogous to a spreadsheet or SQL table.
      • Operations are equally intuitive row-wise and column-wise, facilitating both SQL-like ("row-oriented") and "columnar" manipulations.
      • This dual-orientation enables many complex data transformations to be succinct one-liners instead of lengthy Python code.
    • Indexing and Alignment

      • Pandas uses flexible and powerful indexing, enabling functions such as joining disparate datasets via a shared index (e.g., timestamp alignment in financial time series).
      • When merging DataFrames (e.g., two stocks with differing trading days), Pandas automatically aligns data on the index, introducing NaN (null) values for unmatched dates.
    • Handling Missing Data (Imputation)

      • Pandas includes robust features for detecting and filling missing values, known as imputation.
        • Options include forward filling, backfilling, or interpolating missing values based on surrounding data.
      • Datasets can be reindexed against standardized sequences, such as all valid trading days, to enforce consistent time frames and further identify or fill data gaps.
    • Use Cases and Integration

      • Pandas simplifies ETL (extract, transform, load) for CSV and database-derived data, merging NumPy's computation power with tools for advanced data cleaning and integration.
      • When preparing data for machine learning frameworks (e.g., TensorFlow or Keras), Pandas DataFrames can be converted back into NumPy arrays for computation, maintaining tight integration across the data science stack.

    Summary: NumPy underpins high-speed numerical operations and memory efficiency, while Pandas extends these capabilities to powerful, flexible, and intuitive manipulation of labelled multi-dimensional data -together forming the backbone of data analysis and preparation in Python machine learning workflows.


    MLA 001 Degrees, Certificates, and Machine Learning Careers May 24, 2018
    Show notes

    While industry-respected credentials like Udacity Nanodegrees help build a practical portfolio for machine learning job interviews, they remain insufficient stand-alone qualifications—most roles require a Master's degree as a near-hard requirement, especially compared to more flexible web development fields. A Master's, such as Georgia Tech's OMSCS, not only greatly increases employability but is strongly recommended for those aiming for entry into machine learning careers, while a PhD is more appropriate for advanced, research-focused roles with significant time investment.

    Links
    • Notes and resources at ocdevel.com/mlg/mla-1
    Online Certificates: Usefulness and Limitations
    • Udacity Nanodegree

      • Provides valuable hands-on experience and a practical portfolio of machine learning projects.
      • Demonstrates self-motivation and the ability to self-teach.
      • Not industry-recognized as a formal qualification—does not by itself suffice for job placement in most companies.
      • Best used as a supplement to demonstrate applied skills, especially in interviews where coding portfolios (e.g., on GitHub) are essential.
    • Coursera Specializations

      • Another MOOC resource similar to Udacity, but Udacity's Nanodegree is cited as closer to real-world relevance among certificates.
      • Neither is accredited or currently accepted as a substitute for formal university degrees by most employers.
    The Role of a Portfolio
    • Possessing a portfolio with multiple sophisticated projects is critical, regardless of educational background.
    • Interviewers expect examples showcasing data processing (e.g., with Pandas and NumPy), analysis, and end-to-end modeling using libraries like scikit-learn or TensorFlow.
    Degree Requirements in Machine Learning
    • Bachelor's Degree

      • Often sufficient for software engineering and web development roles but generally inadequate for machine learning positions.
      • In web development, non-CS backgrounds and bootcamp graduates are commonplace; the requirement is flexible.
      • Machine learning employers treat "Master's preferred" as a near-required credential, sharply contrasting with the lax standards in web and mobile development.
    • Master's Degree

      • Significantly improves employability and is typically expected for most machine learning roles.
      • The Georgia Tech Online Master of Science in Computer Science (OMSCS) is highlighted as a cost-effective, flexible, and industry-recognized path.
      • Industry recruiters often filter out candidates without a master's, making advancement with only a bachelor's degree an uphill struggle.
      • A master's degree reduces obstacles and levels the playing field with other candidates.
    • PhD

      • Necessary mainly for highly research-centric positions at elite companies (e.g., Google, OpenAI).
      • Opens doors to advanced research and high salaries (often $300,000+ per year in leading tech sectors).
      • Involves years of extensive commitment; suitable mainly for those with a passion for research.
    Recommendations
    • For Aspiring Machine Learning Professionals:

      • Start with a bachelor's if you don't already have one.
      • Strongly consider a master's degree (such as OMSCS) for solid industry entry.
      • Only pursue a PhD if intent on working in cutting-edge research roles.
      • Always build and maintain a robust portfolio to supplement academic achievements.
    • Summary Insight:

      • A master's degree is becoming the de facto entry ticket to machine learning careers, with MOOCs and portfolios providing crucial, but secondary, support.

    MLG 029 Reinforcement Learning Intro Feb 05, 2018
    Show notes

    Notes and resources: ocdevel.com/mlg/29

    Try a walking desk to stay healthy while you study or work!

    Reinforcement Learning (RL) is a fundamental component of artificial intelligence, different from purely being AI itself. It is considered a key aspect of AI due to its ability to learn through interactions with the environment using a system of rewards and punishments.

    Links:

    • openai/baselines
    • reinforceio/tensorforce
    • NervanaSystems/coach
    • rll/rllab
    • Differential Computers
    Concepts and Definitions
    • Reinforcement Learning (RL):
      • RL is a framework where an "agent" learns by interacting with its environment and receiving feedback in the form of rewards or punishments.
      • It is part of the broader machine learning category, which includes supervised and unsupervised learning.
      • Unlike supervised learning, where a model learns from labeled data, RL focuses on decision-making and goal achievement.
    Comparison with Other Learning Types
    • Supervised Learning:
      • Involves a teacher-student paradigm where models are trained on labeled data.
      • Common in applications like image recognition and language processing.
    • Unsupervised Learning:
      • Not commonly used in practical applications according to the experience shared in the episode.
    • Reinforcement Learning vs. Supervised Learning:
      • RL allows agents to learn independently through interaction, unlike supervised learning where training occurs with labeled data.
    Applications of Reinforcement Learning
    • Games and Simulations:
      • Deep reinforcement learning is used in games like Go (AlphaGo) and video games, where the environment and possible rewards or penalties are predefined.
    • Robotics and Autonomous Systems:
      • Examples include robotics (e.g., Boston Dynamics mules) and autonomous vehicles that learn to navigate and make decisions in real-world environments.
    • Finance and Trading:
      • Utilized for modeling trading strategies that aim to optimize financial returns over time, although breakthrough performance in trading isn't yet evidenced.
    RL Frameworks and Environments
    • Framework Examples:
      • OpenAI Baselines, TensorForce, and Intel's Coach, each with different capabilities and company backing for development.
    • Environments:
      • OpenAI's Gym is a suite of environments used for training RL agents.
    Future Aspects and Developments
    • Model-based vs. Model-free RL:
      • Model-based RL involves planning and knowledge of the world dynamics, while model-free is about reaction and immediate responses.
    • Remaining Challenges:
      • Current hurdles in AI include reasoning, knowledge representation, and memory, where efforts are ongoing in institutions like Google DeepMind for further advancement.

    MLG 028 Hyperparameters 2 Feb 04, 2018
    Show notes

    Notes and resources: ocdevel.com/mlg/28

    Try a walking desk to stay healthy while you study or work!

    More hyperparameters for optimizing neural networks. A focus on regularization, optimizers, feature scaling, and hyperparameter search methods.

    Hyperparameter Search Techniques
    • Grid Search involves testing all possible permutations of hyperparameters, but is computationally exhaustive and suited for simpler, less time-consuming models.
    • Random Search selects random combinations of hyperparameters, potentially saving time while potentially missing the optimal solution.
    • Bayesian Optimization employs machine learning to continuously update and hone in on efficient hyperparameter combinations, avoiding the exhaustive or random nature of grid and random searches.
    Regularization in Neural Networks
    • L1 and L2 Regularization penalize certain parameter configurations to prevent model overfitting; often smoothing overfitted parameters.
    • Dropout randomly deactivates neurons during training to ensure the model doesn't over-rely on specific neurons, fostering better generalization.
    Optimizers
    • Optimizers like Adam, which combines elements of momentum and adaptive learning rates, are explained as vital tools for refining the learning process of neural networks.
    • Adam, being the most sophisticated and commonly used optimizer, improves upon simpler techniques like momentum by incorporating more advanced adaptative features.
    Initializers
    • The importance of weight initialization is underscored with methods like uniform random initialization and the more advanced Xavier initialization to prevent neural networks from starting in 'stuck' states.
    Feature Scaling
    • Different scaling methods such as standardization and normalization are used to scale feature inputs to small, standardized ranges.
    • Batch Normalization is highlighted, integrating scaling directly into the network to prevent issues like exploding and vanishing gradients through the normalization of layer outputs.
    Links
    • Bayesian Optimization
    • Optimizers (SGD): Momentum -> Adagrad -> RMSProp -> Adam -> Nadam

    MLG 027 Hyperparameters 1 Jan 28, 2018
    Show notes

    Full notes and resources at ocdevel.com/mlg/27

    Try a walking desk to stay healthy while you study or work!

    Hyperparameters are crucial elements in the configuration of machine learning models. Unlike parameters, which are learned by the model during training, hyperparameters are set by humans before the learning process begins. They are the knobs and dials that humans can control to influence the training and performance of machine learning models.

    Definition and Importance

    Hyperparameters differ from parameters like theta in linear and logistic regression, which are learned weights. They are choices made by humans, such as the type of model, number of neurons in a layer, or the model architecture. These choices can have significant effects on the model's performance, making them vital to conscious and informed tuning.

    Types of Hyperparameters Model Selection:

    Choosing what model to use is itself a hyperparameter. For example, deciding between linear regression, logistic regression, naive Bayes, or neural networks.

    Architecture of Neural Networks:
    • Number of Layers and Neurons: Deciding the width (number of neurons) and depth (number of layers).
    • Types of Layers: Whether to use LSTMs, convolutional layers, or dense layers.
    Activation Functions:

    They transform linear outputs into non-linear outputs. Popular choices include ReLU, tanh, and sigmoid, with ReLU being the default for most neural network layers.

    Regularization and Optimization:

    These influence the learning process. The use of L1/L2 regularization or dropout, as well as the type of optimizer (e.g., Adam, Adagrad), are hyperparameters.

    Optimization Techniques

    Techniques like grid search, random search, and Bayesian optimization are used to systematically explore combinations of hyperparameters to find the best configuration for a given task. While these methods can be computationally expensive, they are necessary for achieving optimal model performance.

    Challenges and Future Directions

    The field strives towards simplifying the choice of hyperparameters, ideally automating them to become parameters of the model itself. Efforts like Google's AutoML aim to handle hyperparameter tuning automatically.

    Understanding and optimizing hyperparameters is a cornerstone in machine learning, directly impacting the effectiveness and efficiency of a model. Progress continues to integrate these choices into model training, reducing the dependency on human intervention and trial-and-error experimentation.

    Decision Tree
    • Model selection
      • Unsupervised? K-means Clustering => DL
      • Linear? Linear regression, logistic regression
      • Simple? Naive Bayes, Decision Tree (Random Forest, Gradient Boosting)
      • Little data? Boosting
      • Lots of data, complex situation? Deep learning
    • Network
      • Layer arch
        • Vision? CNN
        • Time? LSTM
        • Other? MLP
        • Trading LSTM => CNN decision
      • Layer size design (funnel, etc)
        • Face pics
        • From BTC episode
        • Don't know? Layers=1, Neurons=mean(inputs, output) link
    • Activations / nonlinearity
      • Output
        • Sigmoid = predict probability of output, usually at output
        • Softmax = multi-class
        • Nothing = regression
      • Relu family (Leaky Relu, Elu, Selu, ...) = vanishing gradient (gradient is constant), performance, usually better
      • Tanh = classification between two classes, mean 0 important

    MLG 026 Project Bitcoin Trader Jan 27, 2018
    Show notes

    Try a walking desk to stay healthy while you study or work!

    Ful notes and resources at ocdevel.com/mlg/26

    NOTE. This episode is no longer relevant, and tforce_btc_trader no longer maintained. The current podcast project is Gnothi.

    Episode Overview

    TForce BTC Trader

    • Project: Trading Crypto
      • Special: Intuitively highlights decisions: hypers, supervised v reinforcement, LSTM v CNN
    • Crypto (v stock)
      • Bitcoin, Ethereum, Litecoin, Ripple
      • Many benefits (immutable permenant distributed ledger; security; low fees; international; etc)
      • For our purposes: popular, volatile, singular
        • Singular like Forex vs Stock (instruments)
    • Trading basics
      • Day, swing, investing
      • Patterns (technical analysis, vs fundamentals)
      • OHLCV / Candles
      • Indicators
      • Exchanges & Arbitrage (GDAX, Krakken)
    • Good because highlights lots
      • LSTM v CNN
      • Supervised v Reinforcement
      • Obvious net architectures (indicators, time-series, tanh v relu)
    Episode Summary

    The project "Bitcoin Trader" involves developing a Bitcoin trading bot using machine learning to capitalize on the hot topic of cryptocurrency and its potential profitability. The project will serve as a medium to delve into complex machine learning engineering topics, such as hyperparameter selection and reinforcement learning, over subsequent episodes.

    Cryptocurrency, specifically Bitcoin, is used for its universal and decentralized nature, akin to a digital, secure, and democratic financial instrument like the US dollar. Bitcoin mining involves running complex calculations to manage the currency's existence, similar to a distributed Federal Reserve system, with transactions recorded on a secure and permanent ledger known as the blockchain.

    The flexibility of cryptocurrency trading allows for machine learning applications across unsupervised, supervised, and reinforcement learning paradigms. This project will focus on using models such as LSTM recurrent neural networks and convolutional neural networks, highlighting Bitcoin's unique capacity to illustrate machine learning concept decisions like network architecture.

    Trading differs from investing by focusing on profit from price fluctuations rather than a belief in long-term value increase. It involves understanding patterns in price actions to buy low and sell high. Different types of trading include day trading, which involves daily buying and selling, and swing trading, which spans longer periods.

    Trading decisions rely on patterns identified in price graphs, using time series data. Data representation through candlesticks (OHLCV: open-high-low-close-volume), coupled with indicators like moving averages and RSI, provide multiple input features for machine learning models, enhancing prediction accuracy.

    Exchanges like GDAX and Kraken serve as platforms for converting traditional currencies into cryptocurrencies. The efficient market hypothesis suggests that the value of an instrument is fairly priced based on the collective analysis of market participants. Differences in exchange prices can provide opportunities for arbitrage, further fueling trading strategies.

    The project code, currently using deep reinforcement learning via tensor force, employs convolutional neural networks over LSTM to adapt to Bitcoin trading's intricacies. The project will be available at ocdevel.com for community engagement, with future episodes tackling hyperparameter selection and deep reinforcement learning techniques.


    MLG 025 Convolutional Neural Networks Oct 30, 2017
    Show notes

    Try a walking desk to stay healthy while you study or work!

    Notes and resources at ocdevel.com/mlg/25

    • Filters and Feature Maps: Filters are small matrices used to detect visual features from an input image by applying them to local pixel patches, creating a 3D output called a feature map. Each filter is tasked with recognizing a specific pattern (e.g., edges, textures) in the input images.

    • Convolutional Layers: The filter is applied across the image to produce an output which is the feature map. A convolutional layer is composed of several feature maps, with depth corresponding to the number of filters applied.

    • Image Compression Techniques:

      • Window and Stride: The window is the size of the pixel patch examined by the filter, and stride determines how much the window moves over the image. Together, they allow compression of images by reducing the number of windows examined, effectively downsampling the image.
      • Padding: Padding allows the filter to account for border pixels that do not fit perfectly within the window size. 'Same' padding adds zero-padding to ensure all pixels are included, while 'valid' padding ignores excess pixels around the borders.
    • Max Pooling: Max pooling is a downsampling technique used to reduce the spatial dimensions of feature maps by taking the maximum value over a defined window, further compressing and reducing computational load.

    • Predefined Architectures: There are well-established predefined architectures like LeNet, AlexNet, and ResNet, which have been fine-tuned through competitions such as the ImageNet Challenge, and can be used directly or adapted for specific tasks in computer vision.


    MLG 024 Tech Stack Oct 07, 2017
    Show notes

    Try a walking desk to stay healthy while you study or work!

    Notes and resources at ocdevel.com/mlg/24

    Hardware

    Desktop if you're stationary, as you'll get the best performance bang-for-buck and improved longevity; laptop if you're mobile.

    Desktops. Build your own PC, better value than pre-built. See PC Part Picker, make sure to use an Nvidia graphics card. Generally shoot for 2nd-best of CPUs/GPUs. Eg, RTX 4070 currently (2024-01); better value-to-price than 4080+.

    For laptops, see this post (updated).

    OS / Software

    Use Linux (I prefer Ubuntu), or Windows, WSL2, and Docker. See mla/12 for details.

    Programming Tech Stack

    Deep-learning frameworks. You'll use both TF & PT eventually, so don't get hung up. mlg/9 for details.

    1. Tensorflow (and/or Keras)
    2. PyTorch (and/or Lightning)

    Shallow-learning / utilities: ScikitLearn, Pandas, Numpy

    Cloud-hosting: AWS / GCP / Azure. mla/13 for details.

    Episode Summary

    The episode discusses setting up a tech stack tailored for machine learning, emphasizing the necessity of choosing a primary programming language and framework, which, in this case, are Python and TensorFlow. The decision is supported by the ongoing popularity and community support for these tools. This preference is further influenced by the necessity for GPU optimization, which TensorFlow provides, allowing for enhanced performance through utilizing Nvidia's CUDA technology.

    A notable change in the landscape is the decline of certain deep learning frameworks such as Theano, and the rise of competitors like PyTorch, which is gaining traction due to its ease of use in comparison to TensorFlow. The author emphasizes the importance of selecting frameworks with robust community support and resources, highlighting TensorFlow's lead in the market in this respect.

    For hardware, the suggestion is a custom-built PC with a powerful Nvidia GPU, such as the 1080 TI, running Ubuntu Linux for best compatibility. However, for those who favor cloud services, Amazon Web Services (AWS) and Google Cloud Platform (GCP) are viable options, with a preference for GCP due to cost and performance benefits, particularly with the upcoming Tensor Processing Units (TPUs).

    On the software side, the use of Pandas for data manipulation, NumPy for mathematical operations, and Scikit-Learn for shallow learning tasks provides a comprehensive toolkit for machine learning development. Additionally, the use of abstraction libraries such as Keras for simplifying TensorFlow syntax and TensorForce for reinforcement learning are recommended.

    The episode further explores system architectures, suggesting a separation of concerns between a web app server and a machine learning (job) server. Communication between these components can be efficiently managed using a message queuing system like RabbitMQ, with Celery as a potential abstraction layer.

    To support developers in implementing their machine learning pipelines, the recommendation extends to leveraging existing datasets, using Scikit-Learn for convenient access, and standardizing data for effective training results. The author points to several books and resources to assist in understanding and applying these technologies effectively, ending with your own workstation recommendations and building TensorFlow from source for performance gains as a potential advanced optimization step.


    MLG 023 Deep NLP 2 Aug 20, 2017
    Show notes

    Try a walking desk to stay healthy while you study or work!

    Notes and resources at ocdevel.com/mlg/23

    Neural Network Types in NLP
    • Vanilla Neural Networks (Feedforward Networks):

      • Used for general classification or regression tasks.
      • Examples include predicting housing costs or classifying images as cat, dog, or tree.
    • Convolutional Neural Networks (CNNs):

      • Primarily used for image-related tasks.
    • Recurrent Neural Networks (RNNs):

      • Used for sequence-based tasks such as weather predictions, stock market predictions, and natural language processing.
      • Differ from feedforward networks as they loop back onto previous steps to handle sequences over time.
    Key Concepts and Applications
    • Supervised vs Reinforcement Learning:

      • Supervised learning involves training models using labeled data to learn patterns and create labels autonomously.
      • Reinforcement learning focuses on learning actions to maximize a reward function over time, suitable for tasks like gaming AI but less so for tasks like NLP.
    • Encoder-Decoder Models:

      • These models process entire input sequences before producing output, crucial for tasks like machine translation, where full context is needed before output generation.
      • Transforms sequences to a vector space (encoding) and reconstructs it to another sequence (decoding).
    • Gradient Problems & Solutions:

      • Vanishing and Exploding Gradient Problems occur during training due to backpropagation over time steps, causing information loss or overflow, notably in longer sequences.
      • Long Short-Term Memory (LSTM) Cells solve these by allowing RNNs to retain important information over longer time sequences, effectively mitigating gradient issues.
    LSTM Functionality
    • An LSTM cell replaces traditional neurons in an RNN with complex machinery that regulates information flow.
    • Components within an LSTM cell:
      • Forget Gate: Decides which information to discard from the cell state.
      • Input Gate: Determines which information to update.
      • Output Gate: Controls the output from the cell.

    Previous 1 2 3 4 5 6 Next

    Related Podcasts

    Know How… (Video)

    1

    Know How… (Video) Education
    JavaScript Jabber

    2

    JavaScript Jabber Education
    Programming Throwdown

    3

    Programming Throwdown Software How-To
    Software Engineering Radio – the podcast for professional software developers

    4

    Software Engineering Radio – the podcast for professional software developers Software How-To
    The Changelog: Software Development, Open Source

    5

    The Changelog: Software Development, Open Source How To
    Coding Blocks

    6

    Coding Blocks Software How-To
    footer-logo

    Contact Us

    Toll Free: 844-670-7747

    Links

    • Home
    • Top Charts
    • Networks
    • Apps
    • Independents Podcasts
    • Podcast Advertising
    • Podcast News
    • Contact Us
    • About Us
    • Analytics & Insights

    Stay Connected

      Privacy, Terms of Use & Our Code of Ethics Protecting Content Creators Copyrights