Atlas
Concepts.
The connected concept graph behind every course.
Explore Python concepts from the basics to advanced topics. Each concept is explained in simple language with examples, diagrams and real-world use cases.
- 2305 Concepts
- 12 Core Topics
- A–Z glossary
- Visually explained
Core Topics
Browse all 2305Classes and ObjectsA class defines a new type; an object is one real instance of that type, the sa…Explore Core Python languageThe fundamental programming principles and language structures that form the ba…Explore InheritanceInheritance is a way for one class to reuse another class's behavior by becomin…Explore Object-oriented programmingA programming paradigm where the program is constructed around objects that int…Explore Python Execution ProcessAn internal process where Python converts source code into an intermediate byte…Explore Python Installation on WindowsThe process of downloading and installing the latest version of Python on a Win…Explore Python Syntax BasicsPython is designed to have an unusually simple, easy-to-read syntax that lets a…Explore Strings and TextA string is a sequence of characters -- in practice, strings are basically just…Explore Variables and Data TypesA variable is a name bound to a value using the assignment operator; assigning…Explore What Is Python?Python is an easy-to-learn, powerful general-purpose programming language, deli…Explore Working with NumbersA number like 5 or 1.23 is a real example of a literal constant -- a value that…Explore Writing FunctionsA function is defined with the `def` keyword, followed by a name, a parenthesiz…Explore
2305 concepts
#2 concepts
A80 concepts
A Clustering ModelThe supplied source pack does not define PCA or variance maximization.A First Look at a Neural NetworkAdvanced deep learning combines tensor-based data representation, tensor operations, and…Abstract Base Classes and InterfacesPolymorphism allows a subtype to be treated as an instance of its parent type, enabling f…Abstraction of low-level detailsThe characteristic of high-level languages where the programmer does not need to manage l…Accessing Attributes and MethodsAn object bundles data (attributes) and behavior (methods) into a single, organized unit.Accessing Dictionary ValuesA dictionary is a mapping between keys and values, not a sequence indexed by position lik…Accessing Dictionary Values with the Index OperatorA for loop over a dictionary iterates through keys; to filter by value, use the index ope…Accessing list elements with indexingA list is a sequence of values that can contain any data type, unlike strings which conta…
B61 concepts
BackpropagationTensors provide the multi-dimensional representations used by neural networks.Backward EliminationGreedy selection evaluates feature subsets through the learning algorithm rather than sep…Base Hypothesis ClassThe base class B provides the individual hypotheses used as building blocks.Basic for loop syntaxLoops scan through data by following a three-part structure: initialize a tracking variab…Basic if StatementsAn if-else statement creates two mutually exclusive branches: one executes if the conditi…Basic Mathematical FunctionsPython's trigonometric functions (sin, cos, tan) take arguments in radians, not degreesBasic Operators in PythonOperator precedence is a set of rules that determines which operations Python performs fi…Basic while loop syntaxLoops scan through data by following a three-part structure: initialize a tracking variab…
C189 concepts
CalculusBackpropagation is an algorithm for computing the gradient values of a neural network.Calling a FunctionA function call transfers execution to the function's code block and returns to the calle…Calling Built-in FunctionsArguments are values passed to a function during a call; parameters are variables inside…Calling Functions with Multiple ArgumentsFunctions are reusable pieces of programs. They allow you to give a name to a block of st…Calling Methods on ObjectsThe self parameter is the first parameter in every class method and refers to the instanc…Capturing Groups and BackreferencesGreedy quantifiers expand to match the last occurrence of a pattern; non-greedy quantifie…Carathéodory's TheoremThe compressed object is a subset of training points, not the weight vector itself.Catching Exceptions with try and except BlocksThe Python interpreter recovers from errors and returns a prompt; a script terminates imm…
D192 concepts
Data Cleaning and Normalization in Large ArchivesMapping tables unify changing email addresses and multiple domain names into single canon…Data CompressionUnsupervised learning finds useful transformations of input data without target values.Data Consistency Across Distributed SystemsService-oriented architecture enables travel websites to integrate multiple independent s…Data Integrity and ConstraintsA uniqueness constraint ensures all values in a column are unique by using a special inde…Data Matrix Representation in PCAMatrix A uses X transposed X and has dimensions determined by the original features.Data Normalization and Compression TechniquesThe three-database pipeline consists of content.sqlite (raw, uncompressed), gmodel.py (tr…Data Persistence and Program StateMain memory (CPU and RAM) is where programs execute and store data while running, but it…Data Pipeline Design and Best PracticesA geospatial application pipeline connects input data, a geocoding API, a database, and a…
E80 concepts
Effective SizeA class with small effective size enjoys the uniform convergence property.Efficient Implementation of NN RuleApproximate nearest neighbor search improves performance by allowing a bounded approximat…Efficient learnability in the realizable caseA Boolean conjunction maps X = {0, 1}^n to Y = {0, 1}.Eigenvalue DecompositionNon-invertibility can arise when training instances do not span the entire space of R^d.EigenvaluesA symmetric matrix is positive definite when every eigenvalue is positive.Eigenvectors and EigenvaluesMatrix A uses X transposed X and has dimensions determined by the original features.Element-wise ProductThe tensor dot operation combines entries in its input tensors.else-if (elif) StatementsThe if statement is used to check a condition: if the condition is true, we run a block o…
F99 concepts
Feature EngineeringA machine learning problem is defined by its inputs, predicted outputs, and problem type.Feature extractionPreprocessing changes raw data into numerical forms that neural networks can use.Feature Manipulation and NormalizationFeature transformations should be selected according to the property that needs to change.Feature Mappings for Polynomial ClassifiersCompression keeps a smaller representation from which a zero-training-loss predictor can…Feature Maps and FiltersConvolution focuses on local patches rather than treating the entire image as one undivid…Feature Maps in Convolutional Neural NetworksMax pooling replaces each local window with its maximum value.Feature NormalizationFeature manipulation transforms each original feature to create a resulting feature vecto…Feature Representations in Machine LearningSeparating polynomials are functions of the form sign(p(x)), with p a degree-r polynomial…
G47 concepts
GeneralizationOverfitting occurs when a hypothesis fits the training data too well but performs poorly…Generalization and Learnabilityϵ-representativeness describes a condition on a training set S relative to Z, H, ℓ, and D.Generalization and Learning GuaranteesThe No-Free-Lunch Theorem rules out a learner that succeeds on every learning task.Generalization BoundsMargin separation supplies the condition for the Perceptron convergence guarantee.Generalization Bounds for Linear PredictorsHard-SVM's output w_S is defined by Equation (26.19) and satisfies L_S(w_S) = 0 under the…Generalization Bounds for Predictors with Low ℓ1 NormTheorem 26.12 and Theorem 26.15 have bounds that look similar apart from an extra log(d)…Generalization from Training DataERM can overfit because success on a training sample does not ensure success over the und…Generalization in Machine LearningShattering means realizing every possible 0/1 labeling on a chosen set.
H75 concepts
Halfspace HypothesesThe same dot product ⟨w, x⟩ can be interpreted probabilistically by logistic regression o…Halfspace LearningSurrogate losses replace other losses for purposes such as computational convenience.HalfspacesThe base class B provides the individual hypotheses used as building blocks.Handling API Rate Limits and ThrottlingSQLite serves as a local cache to store geocoding results, preventing redundant API calls…Handling Binary Data and Encoding in PythonA socket connection to port 80 establishes a reliable communication channel with a web se…Handling Concurrent Inserts and Database LockingAuto-generated primary keys shift the responsibility for ID management from the applicati…Handling Database Errors and ExceptionsA database connection is established using sqlite3.connect(filename), which creates a lin…Handling Duplicate Data with INSERT IGNOREA multi-table relational schema organizes data across separate tables to eliminate redund…
I149 concepts
ID3 Decision Tree LearningDecision tree learning searches for a tree that minimizes the relevant bound, but solving…if-else StatementsThe if statement checks a condition and executes indented code only if that condition is…Image ClassificationThe convnet progressively exchanges spatial detail for deeper feature representations.Image Classification with Deep LearningA pretrained network is a saved network trained previously on a large dataset, such as Im…Image Editing with Concept VectorsA VAE combines an encoder, a sampling step, and a decoder.IMDB and Reuters Text Classification ExamplesOne-hot encoding is a basic method for turning tokens into vectors.Immutability and Tuple PropertiesPython compares tuples element-by-element from left to right, stopping at the first index…Immutability and TuplesTuple assignment enables swapping two variables in one line: a, b = b, a
J10 concepts
Jacobian MatrixBackpropagation calculates the gradient of a loss with respect to network weights for an…JavaScript for Web VisualizationA geospatial application pipeline connects input data, a geocoding API, a database, and a…Jensen's InequalityGradient Descent convergence is analyzed here for convex-Lipschitz functions.JOIN Syntax and FundamentalsMany-to-many relationships require three tables: two entity tables and one junction table…Joins: Combining Data from Multiple TablesSQL uses a single equal sign (=) for equality testing in WHERE clauses, not the double eq…JSON and XML: Data Formats for Web ServicesA web service is a set of services in an application's API that are made available over t…JSON Syntax and StructureXML uses tags and attributes; JSON uses curly braces and key-value pairs to represent the…JSON: A Lightweight Data FormatAn API is an application-to-application contract that publishes rules for accessing servi…
K15 concepts
k Nearest Neighbors AlgorithmThe k-NN rule maps a training sample and a chosen k to a label for each point under consi…k-Means and Other Cost Minimization ClusteringsThe objective function and the iterative algorithm are related but not identical ideas.k-Means ClusteringDictionary learning creates a feature vocabulary for data that may not have an obvious vo…k-NN Classificationk-NN regression predicts a real-valued target by combining the targets of the k nearest n…KerasThe convnet progressively exchanges spatial detail for deeper feature representations.Keras and Deep Learning FrameworkPart 1 is a staged introduction rather than a single isolated topic.Keras datasetsMNIST is a classic handwritten-digit classification dataset.Keras FrameworkThe basic prerequisite is Python programming experience.
L114 concepts
Lambda Forms and List ComprehensionsA lambda statement creates an anonymous function object with one parameter and one expres…Lambda FunctionsList comprehensions are a concise syntax for creating a new list by transforming or filte…Lambda Functions and the key ParameterThe DSU pattern transforms custom sorting into three simple, clear phases: decorate (add…Large Margin ClassificationSoft-SVM combines labeled training pairs and a positive λ parameter in an optimization pr…Latent RepresentationsA latent space of images is a low-dimensional vector space whose points can be mapped to…Latent Space SamplingGANs can generate new data by learning statistical structure from training data.Launching an AWS EC2 GPU InstanceEC2 asks about creating new connection keys or reusing existing keys at the end of the la…Layers and Connections in Feedforward NetworksActivation functions determine how a neuron converts its scalar input into an output.
M99 concepts
Machine Code and Binary: What the CPU Actually UnderstandsThe CPU is the part of the computer built to obsessively ask 'What is next?' and determin…Machine Language and Binary RepresentationA compiler translates an entire program from high-level source code to machine language i…Machine LearningDeep learning is a subset of machine learning.Machine Learning Data TerminologyA class is a category in a classification problem.Machine Learning DatasetsData provides the material from which deep-learning systems learn.Machine Learning EssentialsUnsupervised learning finds useful transformations of input data without target values.Machine Learning FoundationsThe basic prerequisite is Python programming experience.Machine learning model capacityOptimization and generalization measure different kinds of model performance.
N58 concepts
Naive recurrent neural network implementation in NumPySimpleRNN is an actual Keras layer.Namespaces and ScopeFields are ordinary variables bound to class or object namespaces, scoped to their contex…Naming Conventions and Best PracticesA variable is a name that refers to a value, allowing you to store and manipulate data in…Naming Variables: Rules and Best PracticesKeywords are reserved words used by Python to define program structure and cannot be used…Natarajan DimensionThe multiclass categorization goal is to learn h : X → [k].Natarajan Dimension for Multiclass ClassificationOne-versus-All represents a multiclass hypothesis using one binary hypothesis for each la…Natarajan's LemmaThe proof has separate lower-bound and upper-bound routes.Natural-Language ProcessingThe course is divided into two parts.
O68 concepts
OAuth 2.0 Authorization Code FlowOAuth libraries are free, pre-built tools that handle the complexity of the OAuth 2.0 pro…OAuth and Token-Based AuthenticationAPI keys are the mechanism vendors use to identify users and monitor their service consum…Object Attributes and MethodsObjects have a complete lifecycle: creation (via __init__), active use, and destruction (…Object Initialization and CleanupSpecial methods enable custom classes to mimic built-in type behaviors through double-und…Object Instantiation and Class CallsClass methods have only one specific difference from ordinary functions - they must have…Object-Oriented Design PrinciplesFields are ordinary variables bound to class or object namespaces, scoped to their contex…Object-oriented programmingA programming paradigm where the program is constructed around objects that integrate dat…Object-Oriented Programming BasicsProcedure-oriented programming organizes code around reusable functions; object-oriented…
P101 concepts
PAC LearnabilityShattering means realizing every possible 0/1 labeling on a chosen set.PAC LearningRealizability demands perfect agreement between some hypothesis in H and a target labelin…PAC Learning and Sample ComplexityUniform convergence connects a finite i.i.d. sample with representativeness of an underly…PAC Learning ModelOnline learning has no separate training phase followed by a separate prediction phase.PAC-Bayes BoundsThe PAC-Bayes bound can be converted into a learning rule.PAC-Bayes Bounds and Measure ConcentrationPAC-Bayes bounds define a hierarchy over a hypothesis class H.Parameter Tuningk-Fold Cross Validation helps estimate true error without setting aside a permanently unu…Parameters and Arguments: The BasicsExpressions and variables can both be passed as arguments to user-defined functions, just…
Q13 concepts
Quantifiers and Repetition PatternsThe backslash (\) is the escape character that converts special regex characters into lit…Quantifiers: Matching Multiple CharactersThe period (.) in a regular expression is a wildcard that matches any single character—le…Query Optimization and Performance TuningAn index is extra information stored by a database to enable faster lookups on a specific…Querying and Analyzing Data in SQLitespider.py systematically crawls web pages and stores them in a local database, recording…Querying and Retrieving Data with SELECTAuto-generated primary keys shift the responsibility for ID management from the applicati…Querying Data from SQLite with SELECT StatementsUse the Database Browser for SQLite to verify that your Python programs are correctly rea…Querying Data with SELECTDROP TABLE IF EXISTS safely removes a table and allows scripts to run repeatedly without…Querying Data with SELECT and WHERE ClausesINSERT adds rows to a database table; commit() must be called to permanently save changes…
R106 concepts
Rademacher ComplexityThe chaining technique uses covering numbers to bound Rademacher complexity.Rademacher Complexity and Generalization BoundsRademacher complexity is a measure of the complexity of a set of functions or vectors.Rademacher Complexity for Linear PredictorsHard-SVM's output w_S is defined by Equation (26.19) and satisfies L_S(w_S) = 0 under the…Rademacher Complexity of Linear ClassesThe H1 proof reduces a Rademacher-complexity calculation to a finite-set problem.Raising and catching custom exceptionsThe else block in exception handling runs only when the try block succeeds without raisin…Raising and Handling ExceptionsCustom exceptions are user-defined classes that inherit from Exception, enabling you to r…Raising ExceptionsThe try..except statement separates normal code (try block) from error-handling code (exc…Random ProjectionThe lemma gives a probabilistic guarantee that distances between vectors can be preserved…
S179 concepts
Sample ComplexityRegression loss functions measure more than whether a prediction is wrong: they quantify…Sample Complexity of Finite Hypothesis ClassesThree conjunctions connected by OR define a 3-term DNF.Sample Complexity of Neural NetworksVC dimension is a measure of hypothesis-class capacity based on shattering.Sample Size FlexibilityThe two notions share the same competitiveness requirement.Sampling from Probability DistributionsCharacter-level generation learns the relationship between a fixed-length character conte…Sauer's LemmaThe proof has separate lower-bound and upper-bound routes.Saving and Loading Keras ModelsA Keras callback is an object passed to fit that is called at various points during train…Scope and Namespace in PythonBuilt-in function names like max, len, sum, and print should be treated as reserved words…
T139 concepts
Techniques for Improving Convolutional Neural NetworksFine-tuning starts with a pre-trained convnet rather than an uninitialized model.Temperature ForecastingA CNN and an RNN can be viewed as successive sequence-processing stages, but the source m…Temperature Forecasting with Recurrent NetworksThe supplied section places bidirectional recurrent layers within advanced techniques for…Tensor Data TypesTensor rank counts axes; shape records the size along each axis; dtype identifies the con…Tensor OperationsA neural network's anatomy includes data representations, tensor operations, layers, mode…Tensor Operations in Neural NetworksAn element-wise operation applies a rule independently to each tensor entry.Tensor ShapesBroadcasting makes tensors with different shapes compatible for operations such as additi…Tensor Shapes and DimensionsA scalar, vector, and matrix differ by the number of axes they have.
U227 concepts
Understand Boolean ExpressionsAlternative execution uses if-else to run one of two code blocks based on whether a condi…Understand Comparison OperatorsAlternative execution uses if-else to run one of two code blocks based on whether a condi…Understanding __init__ and the Constructorsuper() is a special syntax that calls a method from the parent class. In the context of…Understanding Angle Measurement SystemsPython's trigonometric functions (sin, cos, tan) take arguments in radians, not degreesUnderstanding APIs: Contracts Between ApplicationsAn API is a published contract between applications that specifies the exact rules for re…Understanding Artificial IntelligenceClassical programming starts with rules written by humans and uses them to process data.Understanding Attributes and MethodsA class is a template that defines what data and code each object will have; the class ke…Understanding Boolean ConditionsAn if-else statement creates two mutually exclusive branches: one executes if the conditi…
V38 concepts
ValidationApproximation error measures the gap between the best hypothesis in a class and the true…Validation and Model EvaluationThe usefulness of a learnability definition depends on the goal for which it is being use…Validation TechniquesA model-selection curve compares training and validation error across model complexity.Variable Assignment and BindingTuple assignment enables swapping two variables in one line: a, b = b, aVariable Assignment and ModificationA while loop repeats code as long as a condition is true, checking the condition before e…Variable Assignment and OperatorsCounting uses a counter initialized to 0, incremented by 1 on each iteration, to track th…Variable Initialization and AssignmentVariable updates are not special operations; they follow the same evaluation rules as all…Variable Naming ConventionsVariables are examples of identifiers. Identifiers are names given to identify something…
W153 concepts
Weak LearnabilityA 3-piece classifier operates on the real line and is specified by two real thresholds th…Weak LearnersBoosting provides a way to manage the tradeoff between approximation error and estimation…Web Crawling and Data Collection with spider.pyPageRank is computed by running sprank.py, which iteratively calculates importance scores…Web Crawling with spider.pyVisualizing a network graph requires running spjson.py to convert your PageRank database…Web Scraping Basicscurl and wget are command-line tools for retrieving files from the web on Unix-like syste…Web Scraping Ethics and Best PracticesBeautifulSoup is a Python library designed to parse real-world HTML, which is often malfo…Web Services and REST ArchitectureService-oriented architecture enables travel websites to integrate multiple independent s…Web Services and SOAPXML (eXtensible Markup Language) is a text-based format for encoding structured, hierarch…
X8 concepts
Xception ArchitectureNormalization makes samples more similar by centering and scaling their values, which can…XML Attributes and Text ContentXML documents are organized as tree structures with a single root element containing all…XML Basics and StructureXML uses tags and attributes; JSON uses curly braces and key-value pairs to represent the…XML Document Structure and the Root ElementAn XML element is a complete unit consisting of an opening tag, content, and a closing ta…XML Fundamentals and Use CasesJSON has become the industry standard for data exchange because its structure maps direct…XML Structure and SyntaxTriple single quotes (''') and triple double quotes (""") both create multi-line strings…XML Validation and SchemaAn XML element is a complete unit consisting of an opening tag, content, and a closing ta…XML: Structuring Complex DataAn API is an application-to-application contract that publishes rules for accessing servi…
