8. A system for optical character recognition, the system comprising: at least one processor; and a non-transitory computer-readable medium storing instructions that, when executed by the at least one processor, cause the at least one processor to perform operations comprising: detecting a presence of a character in an image data; providing the image data to a plurality of customized machine learning algorithms for character recognition, wherein each of the plurality of customized machine learning algorithms is configured to recognize a pre-defined character; in response to a negative character recognition, presenting one or more suggestions for the character to the user, wherein the one or more suggestions comprises characters corresponding to one or more of the plurality of customized machine learning algorithms whose outputs meet a pre-defined threshold criteria for suggestion but does not meet a pre-defined threshold criteria for recognition; in response to the one or more suggestions being rejected by the user, prompting the user to identify the character; determining a presence of the character in a set of pre-defined characters; in response to a positive presence, training a customized machine learning algorithm corresponding to the character; and in response to a negative presence, adding the character in the set of pre-defined characters and dynamically creating a customized machine learning algorithm corresponding to the character; and in response to one of the one or more suggestions being identified by the user, training a customized machine learning algorithm corresponding to the character.
8. A system for optical character recognition, the system comprising: at least one processor; and a non-transitory computer-readable medium storing instructions that, when executed by the at least one processor, cause the at least one processor to perform operations comprising: detecting a presence of a character in an image data; providing the image data to a plurality of customized machine learning algorithms for character recognition, wherein each of the plurality of customized machine learning algorithms is configured to recognize a pre-defined character; in response to a negative character recognition, presenting one or more suggestions for the character to the user, wherein the one or more suggestions comprises characters corresponding to one or more of the plurality of customized machine learning algorithms whose outputs meet a pre-defined threshold criteria for suggestion but does not meet a pre-defined threshold criteria for recognition; in response to the one or more suggestions being rejected by the user, prompting the user to identify the character; determining a presence of the character in a set of pre-defined characters; in response to a positive presence, training a customized machine learning algorithm corresponding to the character; and in response to a negative presence, adding the character in the set of pre-defined characters and dynamically creating a customized machine learning algorithm corresponding to the character; and in response to one of the one or more suggestions being identified by the user, training a customized machine learning algorithm corresponding to the character. 9. The system of claim 8 , wherein the operations further comprise: receiving an image; pre-processing the image to correct an orientation of the image or to filter noise from the image; and processing the image to generate the image data.