Claims:1. A method (600) for determining optimized deep learning architecture, comprising:
receiving (602) a plurality of training images and a plurality of real time images corresponding to a subject;
receiving (604), by a medical practitioner, a plurality of learning parameters comprising a plurality of filter classes and a plurality of architecture parameters;
determining (606) a deep learning model based on the plurality of learning parameters and the plurality of training images, wherein the deep learning model comprises a plurality of reusable filters;
determining (608) a health condition of the subject based on the plurality of real time images and the deep learning model; and
providing (610) the health condition of the subject to the medical practitioner.
2. The method (600) of claim 1, wherein determining (606) the deep learning model comprises determining a convolution neural network.
3. The method (600) of claim 2, wherein determining (608) the health condition comprises:
receiving a plurality of input feature maps, wherein each input feature map of the plurality of input feature map is a representation of the plurality of real time images; and
generating a plurality of output feature maps based on the convolution neural network, wherein each of the plurality of output feature map is a linear combination of filtered version of the plurality of input feature maps, wherein each of the plurality of output feature map is a representation of the input feature maps.
4. The method (600) of claim 3, wherein determining (606) the deep learning model comprises determining a plurality of seed filters, wherein dimensionality of the seed filters is based on a size of the plurality of training images.
5. The method (600) of claim 4, wherein determining (606) the deep learning model comprises selecting a plurality of optimal filters among the plurality of seed filters for generating an output feature map of the plurality of output feature maps.
6. The method (600) of claim 4, wherein determining (606) the deep learning model comprises determining a coefficient set corresponding to each output feature map of the plurality of output feature maps based on the plurality of seed filters.
7. The method (600) of claim 4, wherein determining (606) the deep learning model comprises determining a dictionary of optimal filters for generating the plurality of output feature maps based on the plurality of seed filters.
8. The method (600) of claim 7, wherein determining (606) the deep learning model comprises determining a coefficient set corresponding to each output feature map of the plurality of output feature maps based on the dictionary of optimal filters.
9. The method (600) of claim 4, wherein determining (606) the deep learning model comprises determining a rotational parameter corresponding to a seed filter of the plurality of seed filters.
10. An optimized deep learning sub-system (106) for determining optimized deep learning architecture, comprising:
an image acquisition unit (110) communicatively coupled to an imaging modality (102) and configured to receive a plurality of training images and a plurality of real time images corresponding to a subject;
an user interface unit (112) configured to receive, by a medical practitioner, a plurality of learning parameters comprising a plurality of filter classes and a plurality of architecture parameters;
a model generator unit (114) communicatively coupled to the image acquisition unit (110) and the user interface unit (112) and configured to:
receive the plurality of training images from the image acquisition unit (110) and the plurality of learning parameters;
determine a deep learning model based on the plurality of learning parameters and the plurality of training images, wherein the deep learning model comprises a plurality of reusable filters;
a processor unit (116) communicatively coupled to the image acquisition unit (110) and the model generator unit (114) and configured to:
receive a plurality of real time images from the image acquisition unit (110) and the deep learning model from the model generator unit;
determine a health condition of the subject based on the plurality of real time images using the deep learning model; and
provide the health condition of the subject to the medical practitioner.
11. The optimized deep learning sub-system (106) of claim 10, wherein the deep learning model comprises a convolution neural network.
12. The optimized deep learning sub-system (106) of claim 11, wherein the processor unit (116) is configured to:
receive a plurality of input feature maps, wherein each input feature map of the plurality of input feature map is a representation of the plurality of real time images; and
generate a plurality of output feature maps based on the convolution neural network, wherein each of the plurality of output feature map is a linear combination of filtered version of the plurality of input feature maps, wherein each of the plurality of output feature map is a representation of the input feature maps.
13. The optimized deep learning sub-system (106) of claim 12, wherein the convolution neural network comprises a plurality of seed filters, wherein dimensionality of the seed filters is based on a size of the plurality of training images.
14. The optimized deep learning sub-system (106) of claim 13, wherein the model generator unit (114) is configured to select a plurality of optimal filters among the plurality of seed filters for generating an output feature map of the plurality of output feature maps.
15. The optimized deep learning sub-system (106) of claim 13, wherein the model generator unit (114) is configured to determine a coefficient set corresponding to each output feature map of the plurality of output feature maps based on the plurality of seed filters.
16. The optimized deep learning sub-system (106) of claim 13, wherein the model generator unit (114) is configured to determine a dictionary of optimal filters for generating the plurality of output feature maps based on the plurality of seed filters.
17. The optimized deep learning sub-system (106) of claim 16, wherein the model generator unit (114) is further configured to determine a coefficient set corresponding to each output feature map of the plurality of output feature maps based on the dictionary of optimal filters.
18. The optimized deep learning sub-system (106) of claim 13, wherein the model generator unit (114) is further configured to determine a rotational parameter corresponding to a seed filter among the plurality of seed filters.
19. A health diagnostic system (100) comprising:
an imaging modality (102);
an optimized deep learning sub-system (106) comprising:
an image acquisition unit (110) communicatively coupled to the imaging modality (102) and configured to receive a plurality of training images and a plurality of real time images corresponding to a subject;
an user interface unit (112) configured to receive, by a medical practitioner, a plurality of learning parameters comprising a plurality of filter classes and a plurality of architecture parameters;
a model generator unit (114) communicatively coupled to the image acquisition unit (110) and the user interface unit (112) and configured to:
receive the plurality of training images from the image acquisition unit (110) and the plurality of learning parameters;
determine a deep learning model based on the plurality of learning parameters and the plurality of training images, wherein the deep learning model comprises a plurality of reusable filters;
a processor unit (116) communicatively coupled to the image acquisition unit (110) and the model generator unit (114) and configured to:
receive a plurality of real time images from the image acquisition unit (110) and the deep learning model from the model generator unit;
determine a health condition of the subject based on the plurality of real time images using the deep learning model; and
provide the health condition of the subject to the medical practitioner.
, Description:BACKGROUND
[0001] Embodiments of the present specification relate generally to a system and method for
optimization of deep learning architecture. Specifically, the system and the method are directed towards
determining an optimized deep learning architecture using a small set of training data.
[0002] Data object classification systems employ rule based classification schemes to classify data
objects into one or more pre-determined categories. For example, visual recognition systems can identify
objects in images, i.e., classify input images as including objects from one or more object categories.
Machine learning models such as neural networks are employed to generate an output such as index of an
object category for a received input such as an image to be analyzed. Often, data object classification
systems are difficult and expensive to maintain, and insufficient for tasks involving large, varying, or
complex data sets. While manual design of such systems is difficult due to high complexity, automatic
identification of features may not generate effective data object classification models.
[0003] Complex artificial intelligence (AI) tasks, such as scene or language understanding, requiring
large quantity of labelled data employ deep learning architectures. A typical example is a multi-layer
feed-forward network where the first layers will typically learn levels of feature extraction or processing
that are useful to all tasks. In convolution neural networks (CNNs), enough of filters and layers have to
be employed) for effective modeling of the underlying non-linearity in the classification task. The
estimation of filters and other deep learning parameters requires sufficient amount of training data. In
semi-supervised learning, improving the quality of learning networks using unlabeled data employs
techniques such as embedding data into a lower dimensional space and clustering of data. Many of these
architectures use unsupervised and supervised training techniques in a stage wise manner. Further, the
supervised classifier has less number of layers.
[0004] In text document analysis, abstract semantics are converted into feature vectors using
embedding functions in a deep learning architecture. In determining such architectures, training of deep
learning networks employs regularization technique. Further, deep learning architectures are initialized
with parameters from previously trained tasks. In multi-task learning, learning models are shared
between different classification tasks. However, determining deep learning networks for a given complex
learning task is not effective when the training data set is small in size.
BRIEF DESCRIPTION
[0005] In accordance with one aspect of the present specification, a method for determining
optimized deep learning architecture is disclosed. The method includes receiving a plurality of training
images and a plurality of real time images corresponding to a subject. The method further includes
receiving, by a medical practitioner, a plurality of learning parameters comprising a plurality of filter
classes and a plurality of architecture parameters. The method also includes determining a deep learning
model based on the plurality of learning parameters and the plurality of training images, wherein the deep
learning model comprises a plurality of reusable filters. The method further includes determining a health
condition of the subject based on the plurality of real time images and the deep learning model. The
method also includes providing the health condition of the subject to the medical practitioner.
[0006] In accordance with another aspect of the present specification, an optimized deep learning
sub-system for determining optimized deep learning architecture is disclosed. The system includes an
image acquisition unit communicatively coupled to an imaging modality and configured to receive a
plurality of training images and a plurality of real time images corresponding to a subject. The system
further includes an user interface unit configured to receive, by a medical practitioner, a plurality of
learning parameters comprising a plurality of filter classes and a plurality of architecture parameters. The
method also includes a model generator unit communicatively coupled to the image acquisition unit and
the user interface unit and configured to receive the plurality of training images from the image
acquisition unit and the plurality of learning parameters. The model generator is further configured to
determine a deep learning model based on the plurality of learning parameters and the plurality of training
images, wherein the deep learning model comprises a plurality of reusable filters. The system also
includes a processor unit communicatively coupled to the image acquisition unit and the model generator
unit and configured to receive a plurality of real time images from the image acquisition unit and the deep
learning model from the model generator unit. The processor unit is further configured to determine a
health condition of the subject based on the plurality of real time images using the deep learning model.
The processor unit is also configured to provide the health condition of the subject to the medical
practitioner.
[0007] In accordance with another aspect of the present specification, a health diagnostic system is
disclosed. The health diagnostic system includes an imaging modality and an optimized deep learning
sub-system. The optimized deep learning sub-system includes an image acquisition unit
communicatively coupled to the imaging modality and configured to receive a plurality of training images
and a plurality of real time images corresponding to a subject. The optimized deep learning sub-system
includes an user interface unit configured to receive, by a medical practitioner, a plurality of learning
parameters comprising a plurality of filter classes and a plurality of architecture parameters. The
optimized deep learning sub-system also includes a model generator unit communicatively coupled to the
image acquisition unit and the user interface unit and configured to receive the plurality of training
images from the image acquisition unit and the plurality of learning parameter. The model generator is
further configured to determine a deep learning model based on the plurality of learning parameters and
the plurality of training images, wherein the deep learning model comprises a plurality of reusable filters.
The optimized deep learning sub-system further includes a processor unit communicatively coupled to the
image acquisition unit and the model generator unit and configured to receive a plurality of real time
images from the image acquisition unit and the deep learning model from the model generator unit. The
processor unit is further configured to determine a health condition of the subject based on the plurality of
real time images using the deep learning model. The processor unit is also configured to provide the
health condition of the subject to the medical practitioner.
DRAWINGS
[0008] These and other features and aspects of embodiments of the present invention will become
better understood when the following detailed description is read with reference to the accompanying
drawings in which like characters represent like parts throughout the drawings, wherein:
[0009] FIG. 1 is a block diagram representation of a health diagnostic system using an optimized
deep learning architecture, in accordance with aspects of the present specification;
[0010] FIG. 2 is a schematic of convolution neural network, in accordance with aspects of the present
specification;
[0011] FIG. 3 is a schematic illustrating reuse of filters in the convolution neural network, in
accordance with aspects of the present specification;
[0012] FIG. 4 is a is a graphical representation of performance of optimized convolution neural
network, in accordance with aspects of the present specification;
[0013] FIG. 5 is a table illustrating computational complexity of optimized convolution neural
network, in accordance with aspects of the present specification; and
[0014] FIG. 6 is a flow chart of a method of optimizing the deep learning architecture, in accordance
with aspects of the present specification.
DETAILED DESCRIPTION
[0015] Embodiments of systems and methods for determining optimized deep learning architecture
are presented. In particular, use of the systems and methods presented hereinafter allows optimizing the
convolution neural network based on reusable filters.
[0016] The term ‘deep learning’ refers to machine learning technique having capability of
determining features. The term ‘deep learning architecture’ refers to structures used by the deep learning
techniques. The term ‘deep learning structure’ is used herein equivalently and interchangeably with the
term ‘deep learning model’. The term ‘learning parameters’ used herein refers to parameters and initial
conditions required to generate the deep learning model.
[0017] FIG. 1 is a block diagram representation of a health diagnostic system 100 using a deep
learning architecture, in accordance with aspects of the present specification. The health diagnostic
system 100 includes an imaging modality 102, such as a magnetic resonance imaging (MRI) system
configured to generate a plurality of images, generally represented by reference numeral 104,
corresponding to a subject (not shown in FIG. 1). In other embodiments, the imaging modality 102 may
be any other imaging system such as, but not limited to, a computer tomography (CT) system and a
positron emission tomography (PET) system. The health diagnostic system 100 further includes an
optimized deep learning sub-system 106 communicatively coupled to the imaging modality 102 and
configured to generate a diagnostic information representative of a health condition, generally represented
by reference numeral 108, corresponding to the subject.
[0018] In the illustrated embodiment, the optimized deep learning sub-system 106 includes an image
acquisition unit 110, a user interface unit 112, a model generator unit 114, a processor unit 116, and a
memory unit 118 communicatively coupled to one another. In the illustrated embodiments, the various
units of the optimized deep learning sub-system 106 are coupled to one another through a communication
bus 120.
[0019] The image acquisition unit 110 is communicatively coupled to the imaging modality 102 and
configured to receive a plurality of images 104 corresponding to the subject. The plurality of images 104
includes a plurality of training images 124 and a plurality of real time images 122. In one embodiment,
the plurality of training images 124 correspond to a plurality of images acquired in the past and stored in a
memory associated with the imaging modality 102. The plurality of training images 124 may also include
additional data such as, but not limited to, one or more features of the images, a health condition of the
subject, and a diagnostic information. In certain embodiments, the training images 124 may be used to
determine a deep learning model usable in determining a diagnostic information based on the real time
images 122.
[0020] The image acquisition unit 110 is further configured to perform one or more data conditioning
operations on the plurality of images 104. Non-limiting examples of such data conditioning operations
may include noise reduction, frame rate change, and modification of a size of the images 104.
[0021] The user interface unit 112 is configured to receive external inputs, represented by reference
numeral 126 from a user, such as a medical practitioner. In one embodiment, the external inputs 126
provided by the medical practitioner may include a plurality of learning parameters 128. In another
embodiment, the medical practitioner may directly provide the plurality of learning parameters 128 to the
user interface unit 112 or to the model generator unit 114. Additionally, or alternatively, at least some of
the plurality of learning parameters 128 are provided to the model generator unit 114 by the image
acquisition unit 110. The plurality of learning parameters is required to select a deep learning model,
decide the architecture of the deep learning model and process the real-time images using the optimized
deep learning model. The plurality of learning parameters 128 is used along with the plurality of training
images to train a deep learning model. The plurality of learning parameters 128 may include one or more
of a type of deep learning model, a number of stages in the deep learning model, and a number of
parameters corresponding to each stage of the deep learning model. In an embodiment, when a
convolution neural network is used as the deep learning model, the plurality of learning parameters 128
includes number of input feature maps and a number of output feature maps in each stage of the deep
learning model. In one embodiment, the input feature maps are two-dimensional input data for a stage in
the convolution neural network and the output feature maps are two-dimensional output data for the stage.
In other embodiments, higher dimensional input feature maps and higher dimensional output feature maps
are used. Further, the plurality of learning parameters includes a plurality of filter classes. In one
embodiment, the plurality of filter classes may be specified by the medical practitioner. In other
embodiment, the filter classes refer to domain specific filters or pre-determined filters suitable for a
specific processing task.
[0022] The model generator unit 114 is communicatively coupled to the image acquisition unit 110
and the user interface unit 112. The model generator unit 114 is configured to generate an optimized deep
learning model based on the inputs received by the image acquisition unit 110, user interface unit 112,
and a memory unit 118. In one embodiment, the deep learning model is a convolution neural network
that may have one or more convolution layers. The convolution neural network may be designed to
perform a specified task. In one example, the convolution neural network is designed to identify a
character in an input image. In another example, the convolution neural network is designed to generate a
diagnostic image based on the plurality of real time images 122 generated by the imaging modality, such
as the imaging modality 102. In another example the convolution neural network is designed to generate
a category of reusable filters corresponding to one or more of the plurality of real time images 122
generated by the imaging modality 102. The model generator unit 114 is configured to determine the
plurality of reusable filters in the convolution neural network to determine an optimized convolution
neural network.
[0023] In one embodiment, the model generator unit is also configured to modify one or more of the
plurality of architecture parameters for improving the system performance. For example, in one
embodiment, the model generator may determine a different number of optimal seed filters other than
provided by the medical practitioner. In another embodiment, the model generator is configured to
receive memory space limitation as a constraint parameter and generate optimal layer filters operable
within the memory constraint. In such embodiments, the number of optimal filters and the size of the
optimal filters are automatically determined by the model generator. In other embodiments, the model
generator may automatically determine the optimal filters based on the available training data, nature of
the task to be accomplished by the deep learning network with due considerations to other architectural
parameters chosen by the medical practitioner.
[0024] The processor unit 116 is communicatively coupled to the image acquisition unit 110 and the
model generator unit 114 and configured to determine the health condition 108 of the subject based on the
inputs received from the image acquisition unit 110 and the model generator unit 114. By way of
example, the processor unit 116 is configured to receive the plurality of real time images 122 from the
image acquisition unit 110 and the deep learning model 130 from the model generator unit 114. Further,
the processor unit 116 is configured to process the plurality of real time images 122 using the deep
learning model 130 to determine the health condition 108 of the subject. Moreover, the processing unit
116 is configured to provide the determined health condition 108 to the medical practitioner through an
output device such as a display device 132.
[0025] The processor unit 116 may include one or more processors. The terms ‘processor unit’, ‘one
or more processors,’ and ‘processor’ are used equivalently and interchangeably. The processor unit 116
includes at least one arithmetic logic unit, a microprocessor, a general purpose controller, a graphics
processing unit (GPU) or a processor array to perform the desired computations or run the computer
program.
[0026] While the processor unit 116 is shown as a separate unit in the embodiment of FIG. 1, one or
more of the units 110, 112, 114 may include a corresponding processor unit. Alternatively, the optimized
deep learning sub-system 106 may be communicatively coupled to one or more processors that are
disposed at a remote location, such as a central server or cloud based server via a communications link
such as a computer bus, a wired link, a wireless link, or combinations thereof. In one embodiment, the
processor unit 116 may be operatively coupled to the image acquisition unit 110, the user interface unit
112 and the model generator unit 114. In yet another embodiment, the processor unit 116 may be
configured to perform the functions of the various units of the optimized deep learning sub-system 106.
[0027] Moreover, the memory unit 118 may be a non-transitory storage medium. For example, the
memory unit 118 may be a dynamic random access memory (DRAM) device, a static random access
memory (SRAM) device, flash memory or other memory devices. In one embodiment, the memory unit
may include a non-volatile memory or similar permanent storage device, media such as a hard disk drive,
a floppy disk drive, a compact disc read only memory (CD-ROM) device, a digital versatile disc read
only memory (DVD-ROM) device, a digital versatile disc random access memory (DVD-RAM) device, a
digital versatile disc rewritable (DVD-RW) device, a flash memory device, or other non-volatile storage
devices. A non-transitory computer readable medium may be encoded with a program to instruct the one
or more processors to determine an optimized deep learning sub-system 106.
[0028] Furthermore, at least one of the units 110, 112, 114 may be standalone hardware components.
Other hardware implementations such as field programmable gate arrays (FPGA), application specific
integrated circuits (ASIC) or customized chip may be employed for one or more of the units of the
system.
[0029] FIG. 2 is a schematic of a convolution neural network (CNN) 200, in accordance with aspects
of the present specification. In the illustrated embodiment, the convolution neural network 200 receives
an input image 202 corresponding to one of the plurality of real time images 122 of FIG. 1. The CNN
200 includes a plurality of convolution stages 204, 206 and a neural network 208. A first convolution
stage 204 includes a first plurality of feature maps 224 in cascade with a first plurality of sub sampled
images 226. The first plurality of feature maps 224 forms a first convolution filtering layer and the first
plurality of sub sampled images 226 form a first sub-sampling layer. The first plurality of feature maps
224 is sub sampled using a sub-sampling operation 218 to generate the first plurality of sub-sampled
images 226. A second convolution stage 206 includes a second plurality of feature maps 228 in cascade
with a second plurality of sub sampled images 230. The second plurality of feature maps 228 form a
second convolution filtering layer and the second plurality of sub sampled images 230 form a second sub
sampling layer. The plurality of convolution stages 204, 206 extracts features in stages that are helpful in
performing the intended task of the convolution neural network.
[0030] The neural network 208 includes a plurality of input nodes 232 and, and at least one output
node 210. The plurality of input nodes 232 form an input layer of the neural network 208 and the at least
one output node 210 forms an output layer. The neural network 208 may include a plurality of hidden
nodes (not shown) in cascade with the plurality of input nodes 232 forming a hidden layer. In some
embodiments, the neural network 208 may include more than one hidden layers. In one embodiment, the
plurality of input nodes 232 are obtained based on the pixels of the second sub-sampling layer using a
serialization operation, represented by reference numeral 222. The output node 210 is determined based
on a linear combination of the plurality of input nodes having an associated weight selected from a
plurality of weights 212. The CNN 200 generates an output 214 by transforming the value at the output
node 210 using a non-linear function. In one embodiment, the non-linear function is a sigmoid function.
In other embodiments, other functions such as, but not limited to, a piecewise linear cutoff function may
be used to transform the value at the output node 210. The transformed value at the output node 210
represents the information provides the output of the convolution neural network.
[0031] In one embodiment, the input image 202 may be a two-dimensional image having M rows of
pixels and N columns of pixels. Further, the input image 202 may have R number of channels. For
example, the input image 202 may be a two-dimensional image having 128 rows of pixels and 128
columns of pixels. Further, the input image 202 may be a color image having 3 channels corresponding
to red, green and blue pixels. The first convolution stage 204 includes a first plurality of filters having m
rows of pixels and n columns of pixels and r number of channels. In one example, the first plurality of
filters may have 5 pixels in each row, 5 pixels in each column and the parameter r having a value of one,
that is a single channel. The first plurality of filters convolved with the input image 202 generates a first
plurality of feature maps 224. In the illustrated embodiment of FIG. 2, 4 two-dimensional filters are used
in the first plurality of filters and the convolution operation is denoted by reference numeral 216. The
convolution operation 216 transforms a plurality of pixels in block 234 of the input image 202 to a pixel
236 in one of the feature map of the plurality of feature maps 224. The size of block 234, size of first
plurality of filters may be specified among the plurality of learning parameters. In one example, where
the input image 202 includes a two-dimensional image having 128 number of rows of pixels (M) and 128
number of columns of pixels (N), and the first plurality of filters have 5 rows of pixels (m) and 5 columns
of pixels (n), the size of each of the plurality of feature maps has 124 pixels in each row and 124 pixels in
each column. In one example, the block 238 of the plurality of pixels in feature map 224 (having two
pixels in each row and column) is represented by a single pixel 240 in the sub-sampled feature map. In
one embodiment, a value of the pixel 240 is selected as a maximum pixel value amongst the pixel values
of the plurality of pixels of the block 238. In another embodiment, an average of four pixels in the block
238 may be used as the value of the pixel 240. In other embodiments, other values may be used for the
block size, filter size and sampling factor for the sub-sampling.
[0032] The second convolution stage 206 includes a second plurality of filters (not shown in FIG. 2)
for generating a second plurality of feature maps 228 using a multidimensional convolution filter 220.
The first plurality of sub sampled images 226 are used as input images for the second convolution stage
206. A second plurality of sub sampled images 230 is generated by sub-sampling the second plurality of
feature maps 228. In one example of the illustrated embodiment of FIG. 2, 6 two-dimensional filters are
used in the second plurality of filters. Further, the pixels of the second plurality of sub sampled images
230 may be used in the plurality of input nodes 232 of the neural network 208.
[0033] Referring back to FIG. 1, in some embodiments, the first plurality of filters and the second
plurality of filters are determined by the model generator unit 114 of FIG. 1. The processing of the input
image 202 and generation of the first plurality of feature maps 224, the first plurality of sub sampled
images 226, the second plurality of feature maps 228 and the second plurality of sub sampled images 230
are performed by the processor unit 116 of FIG. 1. Embodiments presented herein generate optimized set
of filters for the first plurality of filters and the second plurality of filters. In one embodiment, the
optimized filters include a plurality of reusable filters. In another embodiment, the optimized filters
belong to a plurality of filter classes which may be optionally reusable.
[0034] It may be noted that although the illustrated embodiment provides only 2 convolution stages in
the optimized convolution neural network, more number of convolution stages may be used in other
embodiments. The number and size of the first plurality of filters, the second plurality of filters may be
selected based on the choice of the medical practitioner or based on pre-set guidelines provided to the
medical practitioner. Further, a different sampling factor may be used to generate the first sub sampled
images and the second sub sampled images. The optimized convolution neural network 200 may also
receive other types of images or other types of non-image data in other applications. In such scenarios,
the optimized deep learning sub-system 106 of FIG. 1 may generate an application specific pattern as
output 108.
[0035] FIG. 3 is a schematic 300 illustrating reuse of filters in the convolution neural network, in
accordance with aspects of the present specification. The schematic 300 illustrates a plurality of input
feature maps 302, a plurality of output feature maps 304 and a convolution layer 306 having a plurality of
filters 308 of a convolution layer. In one example, the plurality of input feature maps 302 may
correspond to the input image 202 and the plurality of output feature maps 304 may correspond to the first
plurality of input feature maps 224 of FIG. 2. In another example, the plurality of input feature maps 302
may correspond to the first plurality of input feature maps 224 and the plurality of output feature maps
304 may correspond to the second plurality of input feature maps 228 of FIG. 2. The output feature maps
304 are represented in terms of the input feature maps 302 and the plurality of filters 308 as:
???? ?? ????S?? ?????? * ???? ?? ?????? (1)
where, Gi is the ith output feature map of the plurality of output feature maps, vik is a filter among the
plurality of filters that provides contribution of input feature map Fi to the output feature map Gk. The
term s is representative of a non-linearity, and the term bi is a bias required for regularized solution. In an
example, where the dimensionality of input feature maps {Fi} is N, and the dimensionality of output
feature maps {Gi} is M, the dimensionality of the plurality of filters {vik} is MN (the product of M and N).
[0036] In one embodiment, the model generator unit 114 of FIG. 1 is configured to determine a
plurality of seed filters 310 represented as {dk} having a reduced dimensionality P compared to the
dimensionality of the plurality of filters 308 represented as {vik}. Specifically, the optimized deep
learning model selects the value of P satisfying the condition N