A recommender system (18) is described which is capable of being controlled using training data provided by an external controller (16). The controller (16) is arranged to control the input of training data from client devices (22) to a recommender system (18) to drive the recommender system's performance towards a set level.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A recommender controller arranged to control the operation of a recommender system, the recommender controller comprising: a reference receiver for receiving a predetermined reference performance metric for said recommender system; a measurement receiver for receiving a measured performance metric for said recommender system derived from a combination of one or more recommendations previously provided by said recommender system to a user and usage data from a client device associated with a user to which the recommendations were provided; and a processor for iteratively comparing the received measured performance metric with the received predetermined reference performance metric to determine a difference value and being further operable to generate a value or values of a control parameter or parameters-for controlling the operation of the recommender system in such a way as to seek to cause the difference value in a subsequent iteration to tend towards zero such that the measured performance metric of the recommendation system tends towards the reference performance metric; and wherein the control parameter or parameters specify an amount of training data to be provided to the recommender system, in a given iteration, and wherein the training data is derived from the usage data from a client device associated with a user to which the recommendations are provided. 2. A recommender controller as claimed in claim 1 wherein it is predicated upon an assumption that there is a positive correlation between the amount of training data provided to the recommender system in one iteration with the value of a measured performance metric received in a subsequent iteration. 3. A recommender controller as claimed in claim 1, wherein the specified amount of training data to be provided includes a component which is proportional to the difference value obtained from the comparison between the measured performance metric and the predetermined reference performance metric. 4. A recommender controller as claimed in claim 1, wherein the specified amount of training data to be provided includes a component which is dependent on an integral of the difference value obtained from the comparison between the measured performance metric and the predetermined performance metric. 5. A recommender controller as claimed in claim 1, wherein the specified amount of training data to be provided includes a component which is dependent on either: a difference between two error measurements each of which is an error measurement comprising the difference between a measured performance metric and the predetermined reference performance metric, but associated with measurements of the measured performance metric associated with different times, the difference between error measurements being divided by the time between the associated different times; or o some other estimate of the current rate of change of such error measurements. 6. A recommender controller as claimed in claim 1, wherein the or each value of a control parameter or parameters is determined using a proportional, integral, derivative differential equation in which proportional gain, integral gain, and differential gain constants are used to control the manner in which the recommender's measured performance is driven towards the received reference performance metric. 7. A recommender controller according to claim 6 in which the proportional gain, integral gain, and differential gain constants are derived from a damped harmonic oscillator model of the recommender. 8. A recommender controller as claimed in claim 2, wherein the training data comprises a partial sub-set of the available user interaction data records, and wherein the number of such records to provide to the recommender system is determined by the recommender controller in dependence upon the determined value or values of the control parameter or parameters. 9. A recommender controller as claimed in claim 8, wherein each user interaction data record is assigned a ranking and wherein the records provided to said recommender system making up the so-determined number of training records are determined in dependence on said ranking together with the determined value or values of the control parameter or parameters. 10. A recommender controller as claimed in claim 9, wherein said ranking indicates a determined usefulness of the data record in training the recommender system. 11. A method of automatically controlling the performance of a recommender system comprising: Iteratively receiving a measured performance metric of the recommender system derived from a combination of one or more recommendations previously provided by said recommender system to a user and usage data from a client device associated with a user to which the recommendations were provided; comparing the received measured performance metric with a predetermined reference performance metric of the recommender system to determine a difference value; and generating a value or values of a control parameter or parameters for controlling the operation of the recommender system in such a way as to seek to cause the difference value in a subsequent iteration to tend towards zero such that the measured performance metric of the recommendation system tends towards the reference performance metric; and wherein the control parameter or parameters specify an amount of training data to be provided to the recommender system, in a given iteration, and wherein the training data is derived from usage data from a client device associated with a user to which the recommendations are provided. 12. A method as claimed in claim 11 wherein it is predicated upon an assumption that there is a positive correlation between the amount of training data provided to the recommender system in one iteration with the value of a measured performance metric received in a subsequent iteration. 13. A method as claimed in claim 11, wherein an amount of training data is provided which is determined using a proportional integral derivative differential equation in respect of an error signal dependent upon the difference between the measured performance metric and the predetermined reference performance metric, in which at least one of the proportional, integral and derivative differential components is scaled by a non-zero factor and most preferably at least two of the components are scaled by a non-zero factor. 14. A carrier medium or media carrying processor executable instructions for causing a processor or processors to carry out the method of claim 11 during execution of the instructions.