Methods, systems, and apparatus, including computer programs encoded on computer storage media, for stream processing. One method includes receiving an event stream of events by a first plurality of local modelers of a stream processing system. Each local modeler processes a portion of received events of the event stream according to a first set of operations, the operations including aggregating information associated with each event to generate aggregated information. One or more local modelers provide, to a first central modeler executing on the system, the respective aggregated information generated by one or more of the local modelers. A set of parameters of a respective machine learning model is determined using the received aggregated information.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method comprising: receiving an event stream of events by a first plurality of first local modelers of a stream processing system, wherein each first local modeler receives a respective portion of the events, and wherein the first local modelers execute on a system of one or more computers; processing, by each first local modeler in parallel, events received by the first local modeler, including aggregating information associated with each received event to generate aggregated information; providing, by one or more of the first local modelers, to a first central modeler executing on the system of one or more computers, aggregated information generated by the one or more first local modelers; and determining, by the first central modeler, parameters of a first machine learning model using the received aggregated information. 2. The method of claim 1, wherein: providing the aggregated information to the first central modeler comprises providing the aggregated information asynchronously to the first central modeler; and each first local modeler receives a respective portion of the events from a router that executes on the system of one or more computers. 3. The method of claim 1, wherein providing aggregated information generated by one or more of the first local modelers comprises, by each of the first local modelers: determining that the local modeler has processed a threshold number of events and then as a consequence providing aggregated information generated by the local modeler to the first central modeler. 4. The method of claim 1, wherein the first central modeler is one of a plurality of central modelers that execute on the system of one or more computers as a distributed processing system. 5. The method of claim 1, comprising: receiving, by the first central modeler, data specifying a learning program for determining parameters of the first machine learning model from aggregated information; and determining, by the first central modeler, the parameters of the first machine learning model by executing the learning program on aggregated information received by the first central modeler. 6. The method of claim 1, further comprising: providing, by the first central modeler, the parameters of the first machine learning model to a second central modeler executing on the system of one or more computers. 7. The method of claim 6, wherein providing the parameters of the first machine learning model to the second central modeler comprises: determining, by the first central modeler, to provide the parameters to the second central modeler. 8. The method of claim 6, wherein providing the parameters of the first machine learning model to the second central modeler comprises: providing the parameters in response to receiving a request from the second central modeler to provide parameters. 9. The method of claim 6, further comprising: receiving, by the second central modeler, parameters of the first machine learning model from the first central modeler; obtaining, by the second central modeler, external data; and determining, by the second central modeler, parameters of a second machine learning model using the external data and the parameters received from the first central modeler. 10. The method of claim 1, further comprising: providing, by the first central modeler, one or more of the parameters of the first machine learning model to one or more first local modelers for storage; processing, by the one or more first local modelers applying the first machine learning model, events received by the one or more first local modelers to perform scoring of the event stream and generate processed events; and aggregating, by each the one or more first local modelers, information associated with each event received by the local modeler to generate updated aggregated information. 11. The method of claim 10, further comprising: providing, by the one or more first local modelers, the processed events to a second plurality of second local modelers of the stream processing system. 12. The method of claim 10, further comprising: providing, by one or more of the first local modelers, updated aggregated information to the first central modeler; determining, by the first central modeler, updated parameters associated with the first machine learning model using updated aggregated information; determining, by the first central modeler, to provide updated parameters to a second central modeler; and providing, by the first central modeler, updated parameters asynchronously to a second central modeler for storage. 13. The method of claim 12, wherein determining to provide updated parameters comprises: determining, by the first central modeler, that one or more of the updated parameters are different from a corresponding previously determined parameter by more than a threshold amount. 14. A method comprising: receiving, by a first central modeler of one or more central modelers, respective aggregated information generated from a plurality of local modelers, wherein each of the plurality of local modelers performs a first set of operations of a stream processing system and generates aggregated information by operating in parallel on a respective portion of an event stream of events, and wherein the central and local modelers execute on a system of one or more computers; determining, by the first central modeler, parameters associated with a respective machine learning model using the received aggregated information; and providing, by the first central modeler, the parameters to each of the plurality of local modelers for storage, for the plurality of local modelers to use in scoring the event stream. 15. The method of claim 14, further comprising: performing, by the plurality of local modelers, scoring of the event stream to generate processed events; and providing the processed events to local modelers performing a subsequent set of operations of the stream processing system. 16. The method of claim 14, further comprising: after determining parameters by the first central modeler, providing the determined parameters to a local modeler in communication with the first central modeler. 17. The method of claim 14, wherein receiving, by the first central modeler, aggregated information comprises: requesting aggregated information from local modelers in communication with the first central modeler. 18. The method of claim 14, further comprising: receiving, from one or more local modelers in communication with the first central modeler, aggregated information; determining, by the first central modeler, that aggregated information has been received from more than a first threshold number of local modelers; and determining, by the first central modeler, parameters associated with the respective machine learning model using the received aggregated information. 19. The method of claim 14, wherein the one or more central modelers comprise a plurality of central modelers, the method comprising: for each central modeler of a set of central modelers of the plurality of central modelers, wherein each central modeler of the set is in communication with respective multiple local modelers: receiving aggregated information from one or more of the respective multiple local modelers in communication with the central modeler; and determining parameters associated with a respective machine learning model using the received aggregated information. 20. The method of claim 19, wherein receiving aggregated information from one or more of the respective plurality of local modelers in communication with the central modeler comprises receiving aggregated information from local modelers that each perform a same set of operations of the stream processing system. 21. The method of claim 19, further comprising: for each central modeler of the set of central modelers: providing, by the central modeler, parameters generated by the central modeler to each of multiple local modelers for storage, wherein each of the local modelers receiving the generated parameters performs scoring of the event stream according to parameters received by the local modeler to generate processed events and provide the processed events to local modelers performing a subsequent set of operations of the stream processing system. 22. The method of claim 19, further comprising: providing, by the first central modeler, parameters of the respective machine learning model to a second central modeler of the set of central modelers. 23. The method of claim 19, further comprising: providing, by a particular central modeler of the plurality of central modelers, parameters of a respective machine learning model as a final machine learning model to a user device. 24. The method of claim 19, further comprising: for a second central modeler different from the first central modeler: obtaining, by the second central modeler, external data; receiving, by the second central modeler, parameters from the first central modeler; and determining, by the second central modeler, parameters associated with a respective machine learning model using the external data and the parameters. 25. The method of claim 24, further comprising: receiving, by a third central modeler included in the set of central modelers, parameters from the second central modeler; receiving, by the third central modeler, aggregated information from each of multiple local modelers; and determining, by the third central modeler, parameters associated with a respective machine learning model using the received aggregated information and the parameters received from the second central modeler. 26. A system comprising: one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising: executing, on the one or more computers, one or more groups of local modelers, the one or more groups comprising a first group of local modelers; executing, on the one or more computers, one or more central modelers comprising a first central modeler; wherein: the first group of local modelers comprises multiple first local modelers; the first group of local modelers is programmed to receive a stream of first events, and each of the first local modelers receives a respective portion of the first events; each one of the first local modelers is programmed to process first events received by the local modeler, including aggregating information associated with each received first event to generate aggregated information, and to provide to the first central modeler aggregated information generated by the one of the first local modelers; and the first central modeler is programmed to determine a first machine learning model using aggregated information received by the first central modeler from one or more of the first local modelers. 27. The system of claim 26, wherein the operations further comprise: executing, on the one or more computers, a router; and wherein each local modeler in the first group of local modelers receives its respective portion of the first events from the router. 28. The system of claim 26, wherein the one or more central modelers comprise a plurality of central modelers that execute, on the one or more computers, as a distributed processing system. 29. The system of claim 26, wherein the first central modeler is programmed to: receive data specifying a learning program for determining parameters of the first machine learning model from aggregated information; and determine the parameters of the first machine learning model by executing the learning program on aggregated information received by the first central modeler. 30. The system of claim 26, wherein the first central modeler is programmed to: provide the parameters of the first machine learning model to a second central modeler of the one or more central modelers. 31. The system of claim 30, wherein the second central modeler is programmed to: receive parameters of the first machine learning model from the first central modeler; obtain external data; and determine parameters of a second machine learning model using the external data and the parameters received from the first central modeler. 32. The system of claim 26, wherein the first central modeler is programmed to: provide one or more of the parameters of the first machine learning model to one or more first local modelers for storage; and wherein the first local modelers are programmed to: process, by the first machine learning model, events received by the first local modelers to perform scoring of the event stream and generate processed events; and aggregate information associated with each event received by the local modeler to generate updated aggregated information. 33. The system of claim 32, wherein the first local modelers are programmed to: provide the processed events to a second plurality of second local modelers.