1. Artificial Intelligence
1.1. +
1.2. Machine Learning
1.2.1. Supervised Learning
1.2.1.1. Classification
1.2.1.2. Regression
1.2.2. Unsupervised Learning
1.2.2.1. Clustering
1.2.2.2. Dimensionality Reduction
1.2.2.3. Association
2. Phases of a ML Project
2.1. Extract, Transform and Load
2.2. Select and preprocess features (like 1 hot encoding)
2.3. Create the model
2.4. Evaluate performance of trained model
2.5. Deploy the final model and use it to make predictions
3. ML Development Options
3.1. Pre-trained APIs
3.1.1. Use ML models that Google already built and trained
3.1.1.1. Natural Language API
3.1.1.2. Speech To Text API
3.1.1.3. Palm LLM API for text or chat
3.1.1.4. Cloud Vision API
3.1.1.5. Embeddings API
3.1.1.6. ...
3.2. BigQuery ML
3.2.1. Use SQL to create and execute ML models in Big Query
3.3. Vertex AI
3.3.1. AutoML
3.3.1.1. No code solution to build ML models on Vertex AI (point n click style)
3.3.1.1.1. 4 Phases:
3.3.2. Custom Training
3.3.2.1. Code your own ML environment to have control over the ML pipeline
3.3.2.1.1. Pre build container
3.3.2.1.2. Custom container
4. Infrastructure
4.1. Networking & Security
4.2. Storage
4.2.1. Unstructured Data
4.2.1.1. Cloud Storage
4.2.1.1.1. 4 types of Cloud Storage (Standard, Nearline, Coldline, Archive)
4.2.2. Structured Data
4.2.2.1. Transactional data
4.2.2.1.1. SQL
4.2.2.1.2. NoSQL
4.2.2.2. Analytical data
4.2.2.2.1. SQL
4.2.2.2.2. NoSQL
4.3. Compute
4.3.1. Compute Engine
4.3.1.1. Similar to a physical machine. Max flexbility
4.3.2. Google Kubernetes Engine (GKE)
4.3.2.1. Runs Containerized applications in cloud
4.3.3. App Engine
4.3.3.1. Binds code to library that access the infrastructure. Used for apps backend
4.3.4. Cloud Functions
4.3.4.1. Executes codes based on triggers. Serverless."Functions as a service"
4.3.5. Cloud Run
4.3.5.1. Fully managed compute platform, that scales automatically accoding to demand
4.4. Data & AI products
4.4.1. Ingestion & Process
4.4.2. Storage
4.4.3. Analytics
4.4.3.1. Big Query
4.4.4. AI & ML
5. AI Development
5.1. ML Options
5.1.1. Out of the Box Solutions
5.1.1.1. Pre built APIs
5.1.2. No code solutions
5.1.2.1. Auto ML
5.1.3. Create & Execute models
5.1.3.1. Big Query ML
5.1.4. Custom training
5.2. ML Workflow
5.2.1. Data preparation
5.2.2. Model development
5.2.3. Model serving
5.2.4. Automation with pipelines
6. AI Solutions
6.1. Generative AI
7. Compute power
7.1. CPU: Central Processing Unit
7.1.1. Slower, but more universal
7.2. GPU: Graphics Processing Unit
7.2.1. Faster than CPU for ML, due to parallelization capabilities
7.3. TPU: Tensor Processing Unit
7.3.1. Domain-Specific for ML applications. Faster than others for ML.