Neural networks are modeled after the human brain and use interconnected nodes like neurons to solve learning problems. The human brain contains around 85 billion neurons while even large artificial neural networks only contain a few hundred nodes. Biological neurons receive input signals through dendrites that are weighted based on importance before being passed to other neurons. Similarly, an artificial neuron receives weighted input signals that are summed and passed through an activation function to produce an output. Key characteristics of neural network topology include the number of layers, whether connections travel in one or both directions, and the number of nodes per layer. Support vector machines use hyperplanes to create boundaries that separate different classes of data in multidimensional space. They can perform classification or prediction tasks and use kernel methods to