An automatic speech recognition, ASR, system implemented on a computing device, the ASR system comprising: a computer-storage media storing an acoustic model being a modular deep learning model, wherein the acoustic model is configured to identify one or more acoustic units within received acoustic information, the acoustic model comprising a control module arranged to receive external signal data and determine a context of the received acoustic information, a model configuration component, and a model execution component; wherein the acoustic model comprises multiple hidden layers, the multiple hidden layers comprising a plurality of modular layers and at least one shared layer, each modular layer comprising multiple context-specific sub-modules which are specially trained to process acoustic information having a specific context, each context-specific sub-module being used only if the specific context is identified, wherein each context-specific sub-module in the modular layer processes only acoustic information having the specific context; wherein each of the plurality of modular layers are associated with a different context class, wherein the context classes are at least one of: the gender of the speaker, accent of the speaker, speech application scenario, speech channel, device specific, ambient noise level, iClusters or sClusters; wherein the model configuration component takes the one or more contexts determined by the control module from the external signal data and generates a suitable modular model by selecting relevant context-specific sub-modules for inclusion in each modularized layer, and wherein the ASR system further comprises a controller which activates or deactivates one or more respective context-specific sub-modules within the modular model based on the one or more contexts determined by the control module to adapt the acoustic model to a present context, wherein activated sub-modules process data and deactivated sub-modules do not process data. a computer-storage media storing an acoustic model being a modular deep learning model, wherein the acoustic model is configured to identify one or more acoustic units within received acoustic information, the acoustic model comprising a control module arranged to receive external signal data and determine a context of the received acoustic information, a model configuration component, and a model execution component; wherein the acoustic model comprises multiple hidden layers, the multiple hidden layers comprising a plurality of modular layers and at least one shared layer, each modular layer comprising multiple context-specific sub-modules which are specially trained to process acoustic information having a specific context, each context-specific sub-module being used only if the specific context is identified, wherein each context-specific sub-module in the modular layer processes only acoustic information having the specific context; wherein each of the plurality of modular layers are associated with a different context class, wherein the context classes are at least one of: the gender of the speaker, accent of the speaker, speech application scenario, speech channel, device specific, ambient noise level, iClusters or sClusters; wherein the model configuration component takes the one or more contexts determined by the control module from the external signal data and generates a suitable modular model by selecting relevant context-specific sub-modules for inclusion in each modularized layer, and wherein the ASR system further comprises a controller which activates or deactivates one or more respective context-specific sub-modules within the modular model based on the one or more contexts determined by the control module to adapt the acoustic model to a present context, wherein activated sub-modules process data and deactivated sub-modules do not process data.