In the following, we will assume that you have selected a survey, imported a Seismic Cube, and calculated the SteeringCube. We also assume you have generated a default Chimney Cube attribute set.(For Default attribute-set see Chapter below)
Creating a ChimneyCube is basically a simple process. The only thing you must do is pick example locations where you have identified chimneys and counter examples, i.e. points that do not belong to a chimney. At these example locations attributes will be extracted to train a neural network to classify the data into chimneys and non-chimneys. Typically, all attributes in the set are used but it is possible to select a sub-set only, e.g. to speed up the processing time. The ChimneyCube network has two output nodes representing chimneys and non-chimneys. Each node is given the value one (true) or zero (false). In other words, the network tries to predict a vector (1,0) when the example is a chimney and (0,1) when the example location is not a chimney. When the trained network is applied it is sufficient to output only the chimney node. A value close to one means a high probability of finding a chimney at this location while a value around zero indicates a low probability.
Please note that the procedure to create a ChimneyCube is not a true classification process, because the output is not binary but continuous. The neural networks plugin for OpendTect does support a true classification output as well. This procedure is especially useful for classifying data into more than two classes, e.g. for supervised facies classification. If Classify output in the Create Neural Network window is set to "Yes", the network output consists of two nodes: Classification and Confidence. The Classification output returns the winning class, i.e. an integer number between 1 and N, where N is the number of classes. The Confidence indicates how close the output vector is to the optimal vector representing the winning class (e.g. 0,1,0,0 represents the second class in a 4 class problem). The match has a value between 1 (perfect) and 0 (very poor).
Picking chimneys and non-chimneys is done in the graphics window using the plane viewers. Unless you know your data so well that you can immediately go to the inlines, crosslines, or timeslices (where you wish to pick chimneys), we recommend starting by making a few similarity slices at different times. Select the Time-plane viewer and add a new element (right-hand mouse button, select Add). Position the plane: click on the interact mode icon, click on the plane followed by a click and drag on one of the frame arrows. The position is displayed in the status bar below the scene. Click outside the frame when you have reached the desired position. The select view data menu pops up. Load one of the similarity attributes (option Attributes). If the Attributes option is not available and you can only select from the "Stored" data cubes, you have no active attribute set; create one in the attribute set editor from the Processing menu. Loading a similarity attribute from the set means that the attribute is calculated on the fly. This may take a few seconds depending on the data size and the hardware you use. To use similarity slices in context of processing a chimney cube check the display and look for circular patterns or other anomalous dots.
Display a seismic inline through one of the possible chimney locations (inline viewer). Let us assume that you have indeed identified a chimney on this line. You may want to display one or more attributes in a small window around the chimney (add another inline viewer, position it and resize it) to check how the chimney appears on single-attributes. (To compare different attributes you can add more viewers that can be toggled on/off in the tree, or you can add another scene (Windows menu, option New). You can also use the "Swift" icon to apply attributes from an open attribute set directly to an active element.
Having done this you are now ready to start picking chimneys and non-chimneys. The first action required is to create two new picksets: one for chimneys and one for non-chimneys. Use the right-hand pop-up menu from the picksets entry in the OpendTect tree to do this. Type the name of the pickset you wish to create, e.g. chimneys_yes and start picking locations (left-hand mouse button) inside the chimney. Picks can be removed by pressing Ctrl and left-hand mouse clicking the pick. Click on the data element in the OpendTect tree to be able to move the element to another position and repeat the process. Repeat this exercise until you have sampled all chimney points you need. Now select the non-chimneys pickset from the OpendTect tree and start picking non-chimney locations. When you are done save each pickset in a separate pickset Group (Store pop-up menu option from the tree).
Picking strategy. Picking example locations is the key step in this procedure. You should aim to create representative sets for both chimneys and non-chimneys. Try not to limit yourself to one chimney if there are more chimneys in your data set. Try to sample these consistently and over as wide a time-range as possible.
The default chimney attribute set is tuned to find chimneys that are characterized by energy variations, low trace-to-trace similarity and chaotic reflection patterns (variations in local dip). The default attribute set extracts attributes in 3 separate windows of 80ms that are aligned above, around and below the evaluation point. This arrangement will help the network to distinguish between a vertical disturbance (of approx. 240ms) and a local disturbance that is not vertical, hence should be classified as non-chimney.
So, if you use the default chimney set, you should select example chimney locations inside zones where the energy and the reflection pattern are disturbed over a vertical zone. non-chimneys should be picked at locations where you see good reflectors but also at locations of non-vertical disturbance (e.g. at faults). A typical set for training consists of several hundred to a few thousand points.
The next step is the training of a neural network. Click the corresponding icon or start the network module from the Processing menu. Create a New neural network, and select the attributes you wish to use (normally all) and the pickset groups containing the chimney and non-chimney locations. In general not all locations are used to train the network but a percentage (10 to 20 ) of the examples is used to avoid overfitting the network. The network will extract the attributes of your choice at the locations you specified, it will randomly split the data into train and test sets and it starts the training phase.
Training performance is tracked during training and presented in two figures. The normalized RMS error curves indicate the overall error on the train and test sets, respectively on a scale from 1 (maximum error) to 0 (no error). Both curves should go down during training. When the test curve goes up again the network is overfitting. Training should be stopped preferably before this happens. Typically an RMS value in the 0.8 range is considered reasonable, between 0.8 and 0.6 is good, between 0.6 and 0.4 is very good and below 0.4 is excellent.
A better feel for the network's performance is presented in the lower figure, which shows the percentage mis-classified for train and test sets as a function of training cycles.
Finally, you will notice that the nodes of the network change colors during training. The colors indicate how important each node (each input attribute) is for the classification. The colors run from red (most important) via yellow to white (least important).
Overtraining. Overfitting occurs when a network starts to recognize individual examples from the training set. The network performs better on the training set, but the performance on the test set decreases. For optimal results network training is stopped when the performance on the test set is maximum (minimum error). The point to stop can be seen from the performance graphics in the network training window.
Now that you have a trained neural network, you are ready to create TheChimneyCube®. Before applying it to an entire volume, you may want to check the result on a few selected planes. Pop up the Select attribute data menu by clicking with the right-hand mouse button on a plane element in the tree. Note that the neural network option is now active. The network has two output nodes: chimney and non-chimney. Select the chimney node to generate the desired display.
When satisfied you can continue by applying the trained network to the entire data volume. This is done in the Create Volume module that is launched from the Processing menu. Instead of processing an entire cube it is also possible to limit the output range to a sub-volume. To increase speed, run the job on several machines simultaneously in multi machine mode. OpendTect will split the jobs over the specified machines and will combine the output at the end of the processing.
For more details on Chimney analysis workflow, look at : dGBTutorial videos