3
The point is that in the expansive path you have two forms of information:
the information from the contracting path, which includes all high-level features extracted from the original image.
the information from the skip-connections, which copy a cropped version of the feature maps in the contracting path. Because, as we go forward through the expansive ...
2
You can think about the problem in the following way (without padding, as the padding case is a simple extension of base case with $\tilde{W}:=W + 2P$).
You want to know how many windows are necessary to cover an image of size $W$, given a window of size $K$ and stride $S$. So your image is a vector with indices $1, 2\dots, W$; as you put the first window on ...
2
It sounds like what you're suggesting is similar to what is done in methods that use a planner. These methods looks to learn the dynamics of the MDP to use to plan during training; that is they want to be able to learn the transition probabilities $p(s'| s, a)$.
In this paper that I read recently they note that learning to predict environment dynamics when ...
2
It takes a little bit of time to fully understand the 2D convolution/cross-correlation and to relate it to the usual diagrams of the convolution operation, so, before addressing your questions, let me first try to break the definition of the 2D cross-correlation down, from the left to right.
$$S(i,j) =(K*I)(i,j) = \sum_m \sum_n I(i+m, j+n)K(m,n) \label{1}\...
1
but I have been told that neural networks aren't made to predict values in that way, they really are best suited for classification into discrete classes
I don't agree with this statement. I already trained many CNNs for regressions tasks where a continous output is trained and they generally perform very well.
I think the general "advantage" for ...
1
If you do not specify an activation for a layer you are effectively creating a linear transformation through that layer. From the documentation:
activation: Activation function to use. If you don't specify anything, no activation is applied (see keras.activations).
1
Create two different optimizers and split the subnets' parameters into either with different lrs. You will have to call optimizer1.step(), optimizer2.step() with a single backward() call
1
The application of 1 kernel (aka filter) to an input (with a 2d convolution) is a matrix (a 2d array), which is often known as a feature map (aka activation map). The application of $k$ kernels to the same input is a 3d array (sometimes called tensor, though this may not be exactly correct, or 3d volume) with depth $k$, i.e. you have $k$ concatenated feature ...
1
Yes, your thought experiment is correct, and the concept is known as breaking the symmetry. This is why biases can be initialized to $0$ (bias initialization doesn't matter), but weights should be randomly initialized to different numbers -- to break the symmetry. Otherwise, if not, the network will function as if it has $n-1$ filters (or however many ...
Only top voted, non community-wiki answers of a minimum length are eligible
Related Tags
convolutional-neural-networks × 871neural-networks × 277
deep-learning × 239
machine-learning × 131
computer-vision × 97
image-recognition × 97
keras × 64
classification × 56
tensorflow × 52
convolution × 44
training × 43
python × 41
object-detection × 38
image-segmentation × 38
object-recognition × 33
backpropagation × 31
datasets × 30
image-processing × 30
comparison × 29
recurrent-neural-networks × 23
loss-functions × 20
filters × 20
reinforcement-learning × 19
autoencoders × 17
pytorch × 17