Desarrollo de aplicaciones de IA
Es hora de ponerse manos a la obra con la IA. Deja de jugar con chatbots e introducir tus datos en
aplicaciones ajenas: ¡aprende a crear las tuyas propias! Repasa los métodos clave de la IA, como los árboles de
decisión, las capas convolucionales, el análisis de conglomerados y mucho más. Ponte manos a la obra con
ejercicios sencillos sin código y luego aplica esos conocimientos a ejemplos más complejos (¡pero aptos para
principiantes!). Con información sobre cómo instalar KNIME y utilizar herramientas como AutoKeras, ChatGPT y
DALL-E, esta guía te permitirá sacar más partido a la IA.
- Aprenda a programar sus propias aplicaciones de IA, ¡aunque nunca haya programado antes!
- Empieza sin necesidad de programar utilizando la plataforma KNIME y luego amplía tus habilidades
programando con Python básico.
- Trabaja con redes neuronales, aprendizaje por transferencia, detección de anomalías, aprendizaje por
refuerzo y mucho más.
Aprenderás sobre:
- Algoritmos de IA:
Comprenda la teoría y la estructura que hay detrás de los modelos y métodos de IA más útiles, y cómo se
pueden utilizar para resolver problemas. Aprenda sobre redes neuronales artificiales, detección de anomalías,
análisis de conglomerados, clasificación de textos e imágenes, aprendizaje por refuerzo y otros algoritmos.
- Herramientas y plataformas:
Instala y utiliza plataformas de IA como KNIME y Anaconda. Descubre cómo herramientas como ChatGPT y
bibliotecas como XGBoost pueden mejorar tus aplicaciones de IA.
- Ejercicios prácticos:
Obtenga instrucciones paso a paso para crear aplicaciones de IA, tanto si las implementa sin código en
la plataforma KNIME como si las programa utilizando Python básico.
Aspectos Destacados:
- Python
- KNIME
- ChatGPT
- DALL-E
- Redes neuronales artificiales (RNA)
- Árboles de decisión
- Capas convolucionales
- Aprendizaje por transferencia
- Detección de anomalías
- Clasificación de textos e imágenes
- Análisis de conglomerados
- Aprendizaje por refuerzo
Ver Tabla de Contenidos Completa
- 1 Introducción
- 1.1 ¿Qué ofrece este libro?
- 1.2 ¿Qué es la inteligencia artificial?
- 1.3 La historia de la IA: breve resumen
- 1.4 Herramientas de desarrollo utilizadas en este libro
- 1.4.1 Python
- 1.4.2 Cuaderno Jupyter
- 1.4.3 KNIME
- 1.4.4 ChatGPT y GPT-4
- 1.4.5 DALL-E 2 o DALL-E 3
- 2 Instalación
- 2.1 Distribución Anaconda
- 2.1.1 Windows y macOS
- 2.1.2 Linux
- 2.1.3 Configuración y prueba
- 2.2 KNIME
- 2.2.1 Instalación
- 2.2.2 Configuración
- 2.2.3 Prueba
- 3 Redes neuronales artificiales
- 3.1 Clasificación
- 3.2 La receta
- 3.2.1 Preparación de datos
- 3.2.2 Desarrollo de la IA
- 3.2.3 Entrenamiento de la IA
- 3.2.4 Prueba de la IA
- 3.2.5 Uso de la IA
- 3.3 Creación de redes neuronales artificiales
- 3.4 Estructura de una neurona artificial
- 3.5 Alimentación directa
- 3.6 Retropropagación
- 3.7 Actualización de las ponderaciones
- 3.8 ANN para la clasificación
- 3.9 Hiperparámetros y sobreajuste
- 3.10 Tratamiento de datos no numéricos
- 3.11 Cómo lidiar con las lagunas en los datos
- 3.11.1 Rellenar celdas vacías con datos
- 3.11.2 Eliminación de filas con celdas vacías
- 3.12 Correlación frente a causalidad
- 3.13 Estandarización de los datos
- 3.14 Regresión
- 3.15 Implementación
- 3.15.1 Capacitación, pruebas y guardado
- 3.15.2 Uso del modelo ANN
- 3.16 Ejercicios
- 3.16.1 Ejercicio 1: Optimización de hiperparámetros para la clasificación
- 3.16.2 Ejercicio 2: Optimización de hiperparámetros para regresión
- 3.16.3 Ejercicio 3: ANN para clasificación
- 3.16.4 Ejercicio 4: ANN para regresión
- 4 Árboles de decisión
- 4.1 Árboles de decisión simples
- 4.1.1 Clasificador de árbol de decisión
- 4.1.2 Regresor de árbol de decisión
- 4.1.3 Bosques de decisión
- 4.1.4 Clasificador de bosque aleatorio
- 4.1.5 Regresor de bosque aleatorio
- 4.2 Impulso
- 4.2.1 Potenciamiento de gradientes
- 4.2.2 Clasificador XGBoost
- 4.2.3 Configuración automática de hiperparámetros mediante GridSearchCV
- 4.3 Regresor XGBoost
- 4.4 Implementación
- 4.5 Árboles de decisión con Orange
- 4.6 Ejercicios
- 4.6.1 Ejercicio 1: XGBoost para clasificación
- 4.6.2 Ejercicio 2: XGBoost para regresión
- 4.6.3 Ejercicio 3: Optimización automática de hiperparámetros
- 5 capas convolucionales e imágenes
- 5.1 Clasificación simple de imágenes
- 5.2 Optimización de hiperparámetros mediante parada temprana y KerasTuner
- 5.3 Red neuronal convolucional
- 5.4 Clasificación de imágenes utilizando CIFAR-10
- 5.5 Uso de redes preentrenadas
- 5.6 Ejercicios
- 5.6.1 Ejercicio 1: Optimización de hiperparámetros para CIFAR-10
- 5.6.2 Ejercicio 2: Modelo VGG19 preentrenado
- 6 Aprendizaje por transferencia
- 6.1 Cómo funciona
- 6.2 Ejercicios
- 6.2.1 Ejercicio 1: Piedra, papel o tijera
- 6.2.2 Ejercicio 2: Humano o caballo
- 7 Detección de anomalías
- 7.1 Datos desequilibrados
- 7.2 Remuestreo
- 7.3 Autoencoders
- 7.4 Ejercicios
- 7.4.1 Ejercicio 1: Detección de anomalías mediante XGBoost y sobremuestreo
- 7.4.2 Ejercicio 2: Detección de anomalías mediante un autoencoder
- 8 Clasificación de textos
- 8.1 Capa de incrustación
- 8.2 Capa GlobalAveragePooling1D
- 8.3 Vectorización de texto
- 8.4 Análisis de las relaciones
- 8.5 Clasificación de grandes cantidades de datos
- 8.6 Ejercicios
- 8.6.1 Ejercicio 1: Optimización de hiperparámetros
- 8.6.2 Ejercicio 2: Clasificación de textos
- 8.6.3 Ejercicio 3: Clasificación de texto mediante sobremuestreo
- 9 Análisis de conglomerados
- 9.1 Análisis gráfico de los datos
- 9.2 El algoritmo de agrupamiento k-Means
- 9.3 El programa terminado
- 9.4 Ejercicios
- 9.4.1 Ejercicio 1: Agrupación de diamantes
- 9.4.2 Ejercicio 2: Clasificación de hongos
- 10 AutoKeras
- 10.1 Clasificación
- 10.2 Regresión
- 10.3 Clasificación de imágenes
- 10.4 Clasificación de textos
- 10.5 Ejercicios
- 10.5.1 Ejercicio 1: Clasificación
- 10.5.2 Ejercicio 2: Regresión
- 10.5.3 Ejercicio 3: Clasificación de imágenes
- 10.5.4 Ejercicio 4: Clasificación de textos
- 11 Programación visual con KNIME
- 11.1 Redes neuronales artificiales simples
- 11.1.1 Clasificación
- 11.1.2 Clasificación utilizando el nodo Python
- 11.1.3 Regresión
- 11.1.4 Regresión utilizando Python Node
- 11.2 XGBoost
- 11.2.1 Clasificación
- 11.2.2 Implementación
- 11.2.3 Regresión
- 11.3 Clasificación de imágenes utilizando un modelo preentrenado
- 11.3.1 Clasificación de imágenes con Keras Node
- 11.3.2 Clasificación de imágenes con Python Node
- 11.4 Aprendizaje por transferencia
- 11.4.1 Aprendizaje por transferencia utilizando Keras Node
- 11.4.2 Aprendizaje por transferencia con Python Node
- 11.5 Autoencoder
- 11.5.1 Autoencoder con Keras Node
- 11.5.2 Autoencoder con Python Node
- 11.6 Clasificación de textos
- 11.6.1 Clasificación de texto con Keras Node
- 11.6.2 Clasificación de texto con Python Node
- 11.7 AutoML
- 11.7.1 Instalación
- 11.7.2 Clasificación
- 11.8 Análisis de conglomerados
- 11.8.1 Configuración manual del clúster
- 11.8.2 Configuración de clúster con un bucle
- 11.9 Análisis de series temporales
- 11.9.1 Redes neuronales recurrentes
- 11.9.2 Memoria a corto plazo
- 11.9.3 Predicción del consumo de energía (próxima hora) utilizando Keras Node
- 11.9.4 Predicción del consumo de energía (próxima hora) utilizando Python Node
- 11.9.5 Predicción del consumo de energía (próximas 500 horas) utilizando Keras Node
- 11.9.6 Predicción del consumo de energía (próximas 500 horas) utilizando Python Node
- 11.10 Generación de texto
- 11.10.1 Preparación de datos
- 11.10.2 Capacitaciones
- 11.10.3 Generación
- 11.11 Más información sobre KNIME
- 11.12 Ejercicios
- 11.12.1 Ejercicio 1: XGBoost para clasificación, hongos
- 11.12.2 Ejercicio 2: XGBoost para regresión, diamantes
- 11.12.3 Ejercicio 3: Clasificación de imágenes con InceptionV3
- 11.12.4 Ejercicio 4: Aprendizaje por transferencia, caballos o humanos
- 11.12.5 Ejercicio 5: Detección de anomalías mediante un autoencoder, ECG
- 11.12.6 Ejercicio 6: Clasificación de textos
- 11.12.7 Ejercicio 7: AutoML para regresión
- 11.12.8 Ejercicio 8: Análisis de conglomerados
- 11.12.9 Ejercicio 9: Análisis de series temporales
- 11.12.10 Ejercicio 10: Generación de texto
- 12 Aprendizaje por refuerzo
- 12.1 Aprendizaje por cuestiones
- 12.2 Conocimientos de Python necesarios para el juego
- 12.2.1 Listas
- 12.2.2 Sucursales
- 12.2.3 Bucles
- 12.2.4 Elección aleatoria
- 12.2.5 Funciones
- 12.3 Capacitaciones
- 12.4 Prueba
- 12.5 Perspectivas
- 12.6 Ejercicios
- 12.6.1 Ejercicio 1: Hiperparámetros
- 12.6.2 Ejercicio 2: Ampliación del juego
- 13 Algoritmos genéticos
- 13.1 El algoritmo
- 13.1.1 Inicio de la generación
- 13.1.2 Selección
- 13.1.3 Reproducción
- 13.1.4 Mutación
- 13.1.5 Nueva generación
- 13.2 Ejemplo de una lista ordenada
- 13.3 Ejemplo de sistemas de ecuaciones
- 13.4 Ejemplo de aplicación en la vida real
- 13.5 Ejercicios
- 13.5.1 Ejercicio 1: Optimización de hiperparámetros
- 13.5.2 Ejercicio 2: Sistema de ecuaciones
- 14 ChatGPT y GPT-4
- 14.1 Ingeniería rápida
- 14.1.1 Creación de contenido
- 14.1.2 Programación
- 14.1.3 Análisis y resumen
- 14.1.4 Preguntas finales para ChatGPT
- 14.2 La interfaz de programación de ChatGPT
- 14.2.1 Clave de interfaz de programación de aplicaciones y primer programa
- 14.2.2 Parámetros
- 14.2.3 Filtros de entrada
- 14.2.4 Funciones
- 14.2.5 Memoria
- 14.2.6 Perfiles de usuario
- 14.2.7 Parque infantil
- 14.2.8 Conversión de voz a texto
- 14.3 Ejercicio 1: Apoyo matemático
- 15 DALL-E y modelos sucesores
- 15.1 DALL-E 2
- 15.1.1 Ingeniería rápida
- 15.1.2 Edición de imágenes generadas
- 15.2 DALL-E 3
- 15.3 Interfaz de programación
- 15.3.1 Creación de imágenes
- 15.3.2 Variaciones de imagen
- 15.3.3 Procesamiento de imágenes
- 15.4 Ejercicio 1: API de DALL-E con moderación
- 16 Perspectivas
- Anexos
- Soluciones para el ejercicio A
- A.1 Capítulo 3
- Ejercicio 1: Optimización de hiperparámetros para la clasificación
- Ejercicio 2: Optimización de hiperparámetros para regresión
- Ejercicio 3: ANN para clasificación
- Ejercicio 4: ANN para regresión
- A.2 Capítulo 4
- Ejercicio 1: XGBoost para clasificación
- Ejercicio 2: XGBoost para regresión
- Ejercicio 3: Optimización automática de hiperparámetros
- A.3 Capítulo 6
- Ejercicio 1: Piedra, papel o tijeras
- Ejercicio 2, Parte 1: Ser humano o caballo, entrenamiento y pruebas
- Ejercicio 2, Parte 2: Humano o caballo, aplicación
- A.4 Capítulo 7
- Ejercicio 1: Detección de anomalías utilizando XGBoost y sobremuestreo
- Ejercicio 2: Detección de anomalías mediante un autoencoder
- A.5 Capítulo 8
- Ejercicio 1: Optimización de hiperparámetros
- Ejercicio 2: Clasificación de textos
- Ejercicio 3: Clasificación de textos mediante sobremuestreo
- A.6 Capítulo 9
- Ejercicio 1: Agrupación de diamantes
- Ejercicio 2: Clasificación de hongos
- A.7 Capítulo 10
- Ejercicio 1: Clasificación
- Ejercicio 2: Regresión
- Ejercicio 3: Clasificación de imágenes
- Ejercicio 4: Clasificación de textos
- A.8 Capítulo 11
- Ejercicio 1: XGBoost para clasificación, hongos
- Ejercicio 2: XGBoost para regresión, diamantes
- Ejercicio 3: Clasificación de imágenes con InceptionV3
- Ejercicio 4: Aprendizaje por transferencia, «¿Humano o caballo?»
- Ejercicio 5: Detección de anomalías mediante un autoencoder: ECG
- Ejercicio 6: Clasificación de textos
- Ejercicio 7: AutoML para regresión
- Ejercicio 8: Análisis de conglomerados
- Ejercicio 9: Análisis de series temporales
- Ejercicio 10: Generación de texto
- A.9 Capítulo 12
- Ejercicio 1: Hiperparámetros
- Ejercicio 2: Ampliación del juego
- A.10 Capítulo 13
- Ejercicio 1: Optimización de hiperparámetros
- Ejercicio 2: Sistema de ecuaciones
- A.11 Capítulo 14
- Ejercicio 1: Apoyo matemático
- A.12 Capítulo 15
- Ejercicio 1: API de DALL-E con moderación
- B Referencias
- C El autor
- Índice
Developing AI Applications
It’s time to get practical about AI. Move past playing around with chatbots and plugging your data into
others’ applications—learn how to create your own! Walk through key AI methods like decision trees, convolutional
layers, cluster analysis, and more. Get your hands dirty with simple no-code exercises and then apply that knowledge
to more complex (but still beginner-friendly!) examples. With information on installing KNIME and using tools like
AutoKeras, ChatGPT, and DALL-E, this guide will let you do more with AI!
- Learn to program your own AI applications—even if you’ve never coded before!
- Get started without code using the KNIME platform and then expand your skills by programming with basic Python
- Work with neural networks, transfer learning, anomaly detection, reinforcement learning, and more
You'll learn about:
- AI Algorithms:
Understand the theory and structure behind the most useful AI models and methods and how they can be used
to solve problems. Learn about artificial neural networks, anomaly detections, cluster analysis, text and image
classification, reinforcement learning, and other algorithms.
- Tools and Platforms:
Install and use AI platforms like KNIME and Anaconda. See how tools like ChatGPT and libraries like XGBoost
can enhance your AI applications.
- Practical Exercises:
Get step-by-step instructions for creating AI applications, whether you’re implementing them with no code
on the KNIME platform or programming them using basic Python.
Key Highlights:
- Python
- KNIME
- ChatGPT
- DALL-E
- Artificial neural networks (ANN)
- Decision trees
- Convolutional layers
- Transfer learning
- Anomaly detection
- Text and image classification
- Cluster analysis
- Reinforcement learning
View Full Table of Contents
- 1 Introduction
- 1.1 What Does This Book Offer?
- 1.2 What Is Artificial Intelligence?
- 1.3 The History of AI: A Brief Overview
- 1.4 Development Tools Used in This Book
- 1.4.1 Python
- 1.4.2 Jupyter Notebook
- 1.4.3 KNIME
- 1.4.4 ChatGPT and GPT-4
- 1.4.5 DALL-E 2 or DALL-E 3
- 2 Installation
- 2.1 Anaconda Distribution
- 2.1.1 Windows and macOS
- 2.1.2 Linux
- 2.1.3 Configuration and Test
- 2.2 KNIME
- 2.2.1 Installation
- 2.2.2 Configuration
- 2.2.3 Test
- 3 Artificial Neural Networks
- 3.1 Classification
- 3.2 The Recipe
- 3.2.1 Data Preparation
- 3.2.2 Building Up the AI
- 3.2.3 Training the AI
- 3.2.4 Testing the AI
- 3.2.5 Using AI
- 3.3 Building ANNs
- 3.4 Structure of an Artificial Neuron
- 3.5 Feed Forward
- 3.6 Back Propagation
- 3.7 Updating the Weights
- 3.8 ANN for Classification
- 3.9 Hyperparameters and Overfitting
- 3.10 Dealing with Nonnumerical Data
- 3.11 Dealing with Data Gaps
- 3.11.1 Filling Empty Cells with Data
- 3.11.2 Removing Rows with Empty Cells
- 3.12 Correlation versus Causality
- 3.13 Standardization of the Data
- 3.14 Regression
- 3.15 Deployment
- 3.15.1 Training, Testing, and Saving
- 3.15.2 Using the ANN Model
- 3.16 Exercises
- 3.16.1 Exercise 1: Hyperparameter Optimization for Classification
- 3.16.2 Exercise 2: Hyperparameter Optimization for Regression
- 3.16.3 Exercise 3: ANN for Classification
- 3.16.4 Exercise 4: ANN for Regression
- 4 Decision Trees
- 4.1 Simple Decision Trees
- 4.1.1 Decision Tree Classifier
- 4.1.2 Decision Tree Regressor
- 4.1.3 Decision Forests
- 4.1.4 Random Forest Classifier
- 4.1.5 Random Forest Regressor
- 4.2 Boosting
- 4.2.1 Gradient Boosting
- 4.2.2 XGBoost Classifier
- 4.2.3 Automatic Hyperparameter Setting Using GridSearchCV
- 4.3 XGBoost Regressor
- 4.4 Deployment
- 4.5 Decision Trees Using Orange
- 4.6 Exercises
- 4.6.1 Exercise 1: XGBoost for Classification
- 4.6.2 Exercise 2: XGBoost for Regression
- 4.6.3 Exercise 3: Automatic Hyperparameter Optimization
- 5 Convolutional Layers and Images
- 5.1 Simple Image Classification
- 5.2 Hyperparameter Optimization Using Early Stopping and KerasTuner
- 5.3 Convolutional Neural Network
- 5.4 Image Classification Using CIFAR-10
- 5.5 Using Pretrained Networks
- 5.6 Exercises
- 5.6.1 Exercise 1: Hyperparameter Optimization for CIFAR-10
- 5.6.2 Exercise 2: Pretrained VGG19 Model
- 6 Transfer Learning
- 6.1 How It Works
- 6.2 Exercises
- 6.2.1 Exercise 1: Rock-Paper-Scissors
- 6.2.2 Exercise 2: Human or Horse
- 7 Anomaly Detection
- 7.1 Unbalanced Data
- 7.2 Resampling
- 7.3 Autoencoders
- 7.4 Exercises
- 7.4.1 Exercise 1: Anomaly Detection Using XGBoost and Upsampling
- 7.4.2 Exercise 2: Anomaly Detection Using an Autoencoder
- 8 Text Classification
- 8.1 Embedding Layer
- 8.2 GlobalAveragePooling1D Layer
- 8.3 Text Vectorization
- 8.4 Analysis of the Relationships
- 8.5 Classifying Large Amounts of Data
- 8.6 Exercises
- 8.6.1 Exercise 1: Hyperparameter Optimization
- 8.6.2 Exercise 2: Text Classification
- 8.6.3 Exercise 3: Text Classification Using Upsampling
- 9 Cluster Analysis
- 9.1 Graphical Analysis of the Data
- 9.2 The k-Means Clustering Algorithm
- 9.3 The Finished Program
- 9.4 Exercises
- 9.4.1 Exercise 1: Grouping of Diamonds
- 9.4.2 Exercise 2: Grouping of Mushrooms
- 10 AutoKeras
- 10.1 Classification
- 10.2 Regression
- 10.3 Image Classification
- 10.4 Text Classification
- 10.5 Exercises
- 10.5.1 Exercise 1: Classification
- 10.5.2 Exercise 2: Regression
- 10.5.3 Exercise 3: Image Classification
- 10.5.4 Exercise 4: Text Classification
- 11 Visual Programming Using KNIME
- 11.1 Simple ANNs
- 11.1.1 Classification
- 11.1.2 Classification Using Python Node
- 11.1.3 Regression
- 11.1.4 Regression Using Python Node
- 11.2 XGBoost
- 11.2.1 Classification
- 11.2.2 Deployment
- 11.2.3 Regression
- 11.3 Image Classification Using a Pretrained Model
- 11.3.1 Image Classification Using Keras Node
- 11.3.2 Image Classification Using Python Node
- 11.4 Transfer Learning
- 11.4.1 Transfer Learning Using Keras Node
- 11.4.2 Transfer Learning Using Python Node
- 11.5 Autoencoder
- 11.5.1 Autoencoder with Keras Node
- 11.5.2 Autoencoder with Python Node
- 11.6 Text Classification
- 11.6.1 Text Classification with Keras Node
- 11.6.2 Text Classification with Python Node
- 11.7 AutoML
- 11.7.1 Installation
- 11.7.2 Classification
- 11.8 Cluster Analysis
- 11.8.1 Manual Cluster Setting
- 11.8.2 Cluster Setting with a Loop
- 11.9 Time Series Analysis
- 11.9.1 Recurrent Neural Networks
- 11.9.2 Long Short-Term Memory
- 11.9.3 Prediction of Energy Consumption (Next Hour) Using Keras Node
- 11.9.4 Prediction of Energy Consumption (Next Hour) Using Python Node
- 11.9.5 Prediction of Energy Consumption (Next 500 Hours) Using Keras Node
- 11.9.6 Prediction of Energy Consumption (Next 500 Hours) Using Python Node
- 11.10 Text Generation
- 11.10.1 Data Preparation
- 11.10.2 Trainings
- 11.10.3 Generation
- 11.11 Further Information on KNIME
- 11.12 Exercises
- 11.12.1 Exercise 1: XGBoost for Classification, Mushrooms
- 11.12.2 Exercise 2: XGBoost for Regression, Diamonds
- 11.12.3 Exercise 3: Image Classification Using InceptionV3
- 11.12.4 Exercise 4: Transfer Learning, Horses or Humans
- 11.12.5 Exercise 5: Anomaly Detection Using an Autoencoder, ECG
- 11.12.6 Exercise 6: Text Classification
- 11.12.7 Exercise 7: AutoML for Regression
- 11.12.8 Exercise 8: Cluster Analysis
- 11.12.9 Exercise 9: Time Series Analysis
- 11.12.10 Exercise 10: Text Generation
- 12 Reinforcement Learning
- 12.1 Q-Learning
- 12.2 Python Knowledge Required for the Game
- 12.2.1 Lists
- 12.2.2 Branches
- 12.2.3 Loops
- 12.2.4 Random Choice
- 12.2.5 Functions
- 12.3 Trainings
- 12.4 Test
- 12.5 Outlook
- 12.6 Exercises
- 12.6.1 Exercise 1: Hyperparameters
- 12.6.2 Exercise 2: Expansion of the Game
- 13 Genetic Algorithms
- 13.1 The Algorithm
- 13.1.1 Start Generation
- 13.1.2 Selection
- 13.1.3 Reproduction
- 13.1.4 Mutation
- 13.1.5 New Generation
- 13.2 Example of a Sorted List
- 13.3 Example of Equation Systems
- 13.4 Real-Life Sample Application
- 13.5 Exercises
- 13.5.1 Exercise 1: Hyperparameter Optimization
- 13.5.2 Exercise 2: System of Equations
- 14 ChatGPT and GPT-4
- 14.1 Prompt Engineering
- 14.1.1 Generating Content
- 14.1.2 Programming
- 14.1.3 Analyzing and Summarizing
- 14.1.4 Final Questions for ChatGPT
- 14.2 The ChatGPT Programming Interface
- 14.2.1 Application Programming Interface Key and First Program
- 14.2.2 Parameters
- 14.2.3 Input Filters
- 14.2.4 Roles
- 14.2.5 Memory
- 14.2.6 User Profiles
- 14.2.7 Playground
- 14.2.8 Speech to Text
- 14.3 Exercise 1: Math Support
- 15 DALL-E and Successor Models
- 15.1 DALL-E 2
- 15.1.1 Prompt Engineering
- 15.1.2 Editing Generated Images
- 15.2 DALL-E 3
- 15.3 Programming Interface
- 15.3.1 Image Creation
- 15.3.2 Image Variations
- 15.3.3 Image Processing
- 15.4 Exercise 1: DALL-E API with Moderation
- 16 Outlook
- Appendices
- A Exercise Solutions
- A.1 Chapter 3
- Exercise 1: Hyperparameter Optimization for Classification
- Exercise 2: Hyperparameter Optimization for Regression
- Exercise 3: ANN for Classification
- Exercise 4: ANN for Regression
- A.2 Chapter 4
- Exercise 1: XGBoost for Classification
- Exercise 2: XGBoost for Regression
- Exercise 3: Automatic Hyperparameter Optimization
- A.3 Chapter 6
- Exercise 1: Rock-Paper-Scissors
- Exercise 2, Part 1: Human or Horse, Training and Testing
- Exercise 2, Part 2: Human or Horse, Application
- A.4 Chapter 7
- Exercise 1: Anomaly Detection Using XGBoost and Upsampling
- Exercise 2: Anomaly Detection Using an Autoencoder
- A.5 Chapter 8
- Exercise 1: Hyperparameter Optimization
- Exercise 2: Text Classification
- Exercise 3: Text Classification Using Upsampling
- A.6 Chapter 9
- Exercise 1: Grouping of Diamonds
- Exercise 2: Grouping of Mushrooms
- A.7 Chapter 10
- Exercise 1: Classification
- Exercise 2: Regression
- Exercise 3: Image Classification
- Exercise 4: Text Classification
- A.8 Chapter 11
- Exercise 1: XGBoost for Classification, Mushrooms
- Exercise 2: XGBoost for Regression, Diamonds
- Exercise 3: Image Classification Using InceptionV3
- Exercise 4: Transfer Learning, “Human or Horse”
- Exercise 5: Anomaly Detection Using an Autoencoder: ECG
- Exercise 6: Text Classification
- Exercise 7: AutoML for Regression
- Exercise 8: Cluster Analysis
- Exercise 9: Time Series Analysis
- Exercise 10: Text Generation
- A.9 Chapter 12
- Exercise 1: Hyperparameters
- Exercise 2: Expansion of the Game
- A.10 Chapter 13
- Exercise 1: Hyperparameter Optimization
- Exercise 2: System of Equations
- A.11 Chapter 14
- A.12 Chapter 15
- Exercise 1: DALL-E API with Moderation
- B References
- C The Author
- Index