Table of Contents

Enum NeuralNetworkTaskType

Namespace
AiDotNet.Enums
Assembly
AiDotNet.dll

Defines the different types of tasks that a neural network can be designed to perform.

public enum NeuralNetworkTaskType

Fields

AnomalyDetection = 13

Anomaly detection task

For Beginners: Anomaly detection identifies unusual patterns that don't conform to expected behavior. It's like finding the odd one out or spotting something suspicious. Examples include detecting fraud in credit card transactions, identifying manufacturing defects, or finding unusual network traffic that might indicate a security breach.

AudioProcessing = 19

Audio processing task

For Beginners: Audio processing analyzes or modifies sound data beyond just recognizing speech. This includes identifying sounds (like detecting a baby crying), separating mixed audio sources (like isolating a voice from background noise), or enhancing audio quality. Examples include noise cancellation, music analysis, or environmental sound monitoring.

BinaryClassification = 0

Binary classification task (two classes)

For Beginners: Binary classification is about deciding between two options - yes/no, spam/not spam, fraud/legitimate, etc. The neural network learns to make this two-way decision based on the input data. For example, determining if an email is spam or not spam.

Clustering = 15

Clustering task

For Beginners: Clustering groups similar items together without being told in advance what the groups should be. Unlike classification where categories are predefined, clustering discovers natural groupings in data. Examples include grouping customers with similar buying habits, organizing news articles by topic, or identifying different usage patterns in an app.

Custom = 21

Custom task type

For Beginners: The Custom option allows you to define your own specialized task that doesn't fit neatly into the predefined categories. This gives you flexibility to create neural networks for unique or experimental purposes that combine aspects of different task types or implement entirely new approaches.

DimensionalityReduction = 16

Dimensionality reduction task

For Beginners: Dimensionality reduction simplifies complex data while preserving its important characteristics. It's like creating a simplified map that still shows the main features of a landscape. This helps with visualization, speeds up learning, and reduces storage needs. For example, compressing a large set of customer attributes down to the few most meaningful factors.

Generative = 17

Generative task (e.g., GANs, VAEs, image synthesis)

For Beginners: Generative tasks create new data that resembles existing data. The neural network learns the patterns and structure of the training data, then generates new examples that look like they could have been part of the original dataset. Examples include creating realistic images of faces that don't exist, generating music, or synthesizing speech. For text generation specifically, use the TextGeneration task type instead.

ImageClassification = 7

Image classification task

For Beginners: Image classification identifies what's in an image by assigning it to one or more categories. The neural network learns to recognize visual patterns that distinguish different objects. Examples include identifying whether a photo contains a dog, cat, or bird, or determining if a medical image shows signs of a disease.

ImageSegmentation = 9

Image segmentation task

For Beginners: Image segmentation goes beyond object detection by identifying exactly which pixels in an image belong to each object. Instead of just drawing boxes around objects, it creates a detailed outline of each object - like tracing their exact shapes. This is useful for applications like medical imaging where precise boundaries matter.

MultiClassClassification = 1

Multi-class classification task (more than two classes)

For Beginners: Multi-class classification sorts items into one of several categories. Unlike binary classification which has only two options, this can have many possible categories. For example, classifying a photo as containing a dog, cat, bird, or horse (where each image belongs to exactly one category).

MultiLabelClassification = 2

Multi-label classification task (multiple labels can be assigned)

For Beginners: Multi-label classification allows assigning multiple categories to a single item. Unlike multi-class classification where an item belongs to exactly one category, here an item can belong to several categories simultaneously. For example, a photo might contain both a dog AND a cat, so it would get both labels.

NaturalLanguageProcessing = 10

Natural language processing task

For Beginners: Natural Language Processing (NLP) helps computers understand, interpret, and generate human language. This is a broad category covering many text-related tasks. Examples include understanding the meaning of sentences, answering questions, or determining the relationships between words.

ObjectDetection = 8

Object detection task

For Beginners: Object detection not only identifies what objects are in an image but also locates where they are by drawing boxes around them. Unlike simple image classification, it can find multiple objects in a single image. For example, identifying and locating all people, cars, and traffic signs in a street photo.

Recommendation = 14

Recommendation system task

For Beginners: Recommendation systems suggest items to users based on their preferences or behavior. They learn patterns from past interactions to predict what you might like. Examples include movie recommendations on Netflix, product suggestions on Amazon, or "People You May Know" on social media.

Regression = 3

Regression task (predicting continuous values)

For Beginners: Regression predicts a number value rather than a category. While classification is like sorting items into labeled boxes, regression is like placing items on a number line. Examples include predicting house prices, temperature forecasts, or a person's age from a photo.

ReinforcementLearning = 12

Reinforcement learning task

For Beginners: Reinforcement learning is about teaching an AI to make sequences of decisions by rewarding good outcomes. Unlike other approaches that learn from examples, reinforcement learning learns through trial and error - like training a pet with treats. Examples include teaching AI to play games, control robots, or optimize resource allocation.

SequenceClassification = 5

Sequence-to-sequence classification

For Beginners: This task analyzes a sequence of data (like words in a sentence or time-ordered events) and assigns a category to the entire sequence. For example, determining the sentiment (positive/negative) of a movie review, or classifying a series of user actions as normal or suspicious.

SequenceToSequence = 4

Sequence-to-sequence task (e.g., machine translation)

For Beginners: Sequence-to-sequence tasks convert one sequence of items into another sequence. Think of it as transforming a list of things into a different list. The most common example is language translation, where a sequence of words in English becomes a sequence of words in Spanish. Other examples include converting speech to text or summarizing text.

SpeechRecognition = 18

Speech recognition task

For Beginners: Speech recognition converts spoken language into written text. The neural network learns to identify the words and phrases in audio recordings. Examples include voice assistants like Siri or Alexa, transcription services, or voice-controlled interfaces.

TextGeneration = 11

Text generation task

For Beginners: Text generation creates new text content that resembles human writing. The neural network learns patterns from existing text and then produces new text with similar characteristics. Examples include writing stories, completing sentences, generating product descriptions, or creating chatbot responses.

TimeSeriesForecasting = 6

Time series forecasting task

For Beginners: Time series forecasting predicts future values based on past observations that occur in a specific time order. It's like looking at historical patterns to predict what comes next. Examples include stock price prediction, weather forecasting, or predicting website traffic for the coming week based on previous weeks' data.

Translation = 20

Language translation

For Beginners: Language translation converts text from one language to another while preserving the meaning. The neural network learns the patterns and relationships between languages to make accurate translations. Examples include translating websites, documents, or conversations between different languages like English to Spanish or Japanese to French.

Remarks

For Beginners: Neural networks can solve many different types of problems. This enum lists the common problem types that neural networks can tackle. Think of it as a menu of what your AI can do - from sorting things into categories (classification), to predicting numbers (regression), to understanding images or text. Choosing the right task type helps the library set up the appropriate neural network structure for your specific problem.