While this process may sound complicated, **you do not need to have any prior experience with Unity or C#** in order to follow the earlier stages of this tutorial and generate large-scale datasets using our provided samples and components. The tutorial will be divided into three high-level phases based on the complexity of the tasks involved. During these phases, you will be gradually introduced to more advanced tools and workflows that the Perception package enables you to perform.
[## Phase 1: Setup and Basic Simulations](Phase1.md)
## [Phase 1: Setup and Basic Simulations](Phase1.md)
This phase will cover essential tasks and skills such as:
* Downloading Unity Editor and the Perception package
* Finding the synthetic data generated from your simulation and understanding its various pieces
* Using Dataset Insight to generate statistics and visualizations for your synthetic data (e.g. number of objects in each frame, presence of each object in the whole data, etc.)
[## Phase 2: Custom Randomizations](Phase2.md]
## [Phase 2: Custom Randomizations](Phase2.md)
In order to get the best out of most perception-oriented machine learning models, the training data needs to contain a large-degree of variation. As a general rule of thumb, the more varied data you can feed to a model while training, the better it performs. This is achieved through randomizing various aspects of your simulation between frames. While you will use basic randomizations in Phase 1, **Phase 2** of the tutorial will help you learn how to randomize your simulations in more complex ways by guiding you through writing your first customized randomizer in C#. This phase is called **Custom and Complex Randomizations**, and once you complete it, you will know how to:
* Create custom randomizers by extending our provided samples
[## Phase 3: Cloud](Phase3.md)
## [Phase 3: Cloud](Phase3.md)
You will generally require a large amount of data to train your intended model. Generating data in these practical sizes will take incredible amounts of time to finish if performed on typical workstation computers. This is where the cloud comes in. In this phase, you will learn how to:
* Generate large-scale synthetic datasets containing hundreds of thousands of frames by leveraging the power of **Unity Simulation**.