System and control method

According to the present invention, a system is provided which comprises an obtainment unit that obtains print setting information including setting values of a plurality of setting items, an estimation unit that estimates a recommended value of a first setting item included in the print setting information by using a learned model which uses, as input data, at least some pieces of the print setting information obtained by the obtainment unit and outputs, as output data, the recommended value of the first setting item, and a notification unit performs notification in accordance with a difference between the setting value of the first setting item which is indicated in the print setting information obtained by the obtainment unit and the recommended value of the first setting item which is estimated by the estimation unit.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates to a system and a control method thereof.

Description of the Related Art

Conventionally, a print instruction to a printer is issued from an apparatus (an instruction apparatus) such as a touch panel included in the printer, a mobile terminal such as a smartphone, or a PC. Also, as disclosed for example in Japanese Patent Laid-Open No. 2010-245875, an instruction apparatus can display a setting screen related to a print instruction. A printer performs a printing operation based on print settings input on the setting screen.

In a case in which a print instruction is to be issued by using an instruction apparatus, printing as desired by a user may not be performed in some cases. For example, even if the user desires to print two pages per sheet, if the input instruction is an instruction to print one page per sheet, printing will be performed according to the setting to print one page per sheet as a matter of course. Such a situation will also occur if the user has erroneously input an instruction to print one page per sheet even though an instruction to print two pages per sheet should have been input, and such a situation will also occur if the instruction to print one page per sheet is the default setting on the setting screen and the user has forgotten to change this instruction. When printing that is undesirable for the user is performed, printing will need to be performed again. As a result, it leads to wasteful consumption of printing materials (for example, ink and toner) and print media (for example, paper). In addition, it will also wastefully require more printing time.

SUMMARY OF THE INVENTION

The present invention suppresses execution of printing which is not desired by a user.

The present invention includes the following arrangement. That is, an aspect of the present invention provides a system comprising: at least one memory; and at least one processor wherein when executing a program stored in the at least one memory, the processor causes the system to operate as an obtainment unit configured to obtain print setting information including setting values of a plurality of setting items, an estimation unit configured to estimate a recommended value of a first setting item included in the print setting information by using a learned model which uses, as input data, at least some pieces of the print setting information obtained by the obtainment unit and outputs, as output data, the recommended value of the first setting item, and a notification unit configured to perform notification in accordance with a difference between the setting value of the first setting item which is indicated in the print setting information obtained by the obtainment unit and the recommended value of the first setting item which is estimated by the estimation unit.

According to another aspect of the present invention, provided is a system comprising: at least one memory; and at least one processor wherein when executing a program stored in the at least one memory, the processor causes the system to function as an obtainment unit configured to obtain print setting information including setting values of a plurality of setting items, a generation unit configured to generate learning data in which data of a target setting item of the print setting information obtained by the obtainment unit is set as supervised data and data other than the target setting item of the print setting information is set as input data, and a learning unit configured to perform learning to generate a learned model which uses the learning data to output, as output data, a recommended value of the target setting item.

According to still another aspect of the present invention, provided is a control method to be executed by an information processing apparatus, the method comprising: obtaining print setting information including setting values of a plurality of setting items, estimating a recommended value of a first setting item included in the print setting information by using a learned model which uses, as input data, at least some pieces of the print setting information obtained in the obtaining and outputs, as output data, the recommended value of the first setting item, and performing notification in accordance with a difference between the setting value of the first setting item which is indicated in the print setting information obtained in the obtaining and the recommended value of the first setting item which is estimated in the estimating.

According to the present invention, it is possible to suppress execution of printing which is not desired by a user.

DESCRIPTION OF THE EMBODIMENTS

First Embodiment

The first embodiment of the present invention will be described in detail hereinafter.

FIG. 1is a block diagram showing an example of the arrangement of a processing system100according to this embodiment. The processing system100includes a cloud server200, an edge server300, a printer400, and a smartphone500which are connected by a local area network (LAN)102and the Internet104. The edge server300, the printer400, and the smartphone500are connected to each other via the local area network (LAN)102and can connect to the Internet104via a router103installed in the LAN102.

Although the router103is illustrated as a device that connects the LAN102and the Internet104, it can have a wireless LAN access point function that forms the LAN102. In such a case, it can be arranged so each device can participate in the LAN102by not only connecting to the router103via a wired LAN, but also by connecting to an access point via a wireless LAN. For example, it can be arranged so that the printer400will be connected via the wired LAN and the smartphone500will be connected via a wireless LAN. Each of the devices and the edge server300can communicate with the cloud server200through the Internet104connected via the router103.

The edge server300and each of the devices can communicate with each other via the LAN102. Also, the smartphone500and the printer400can communicate by short-range wireless communication101. Wireless communication in compliance with Bluetooth® standards or NFC (Near Field Communication) standards can be used as the short-range wireless communication101. In addition, the smartphone500is also connected to a mobile phone network105and can communicate with the cloud server200via the mobile phone network105.

Note that the above-described arrangement is merely an example, and the present invention is not limited to this. For example, although an example in which the router103has an access point function has been shown, the access point may be formed by a device different from the router103. In addition, the connection between each device and the edge server300may be executed by using a connection means other than the LAN102. For example, wireless communication other than the wireless LAN such as an LPWA (Low Power Wide Area), ZigBee, Bluetooth®, short-range wireless communication, or the like, wired connection such as USB, or infrared communication may be used.

Also, although only one printer400and one smartphone500are illustrated as devices inFIG. 1, a plurality of printers400and a plurality of smartphones500may be arranged. In this case, it may be arranged so that the edge server300will manage the plurality of printers400. In addition, each of the plurality of smartphones500can operate as an instruction apparatus to the printer400.

FIG. 2is a block diagram showing an example of the hardware arrangement of an information processing apparatus that can operate as the cloud server200and the edge server300according to this embodiment. Assume that the cloud server200and the edge server300have a common hardware arrangement in this description. The server includes a mainboard210which controls the overall apparatus, a network connection unit201, and a hard disk unit202. In the mainboard210, a CPU211operates in accordance with the contents of a data memory214and control programs stored in a program memory213which are connected via an internal bus212. The CPU211controls the network connection unit201via a network control circuit215to connect to a network such as the Internet104and the LAN102to communicate with another apparatus. The CPU211can execute data read/write from/to the hard disk unit202which is connected via a hard disk control circuit216.

The hard disk unit202stores various kinds of data in addition to an operating system (OS) and various kinds of control software which are loaded and used in the program memory213. A GPU217is connected to the mainboard210and can execute various kinds of arithmetic processing operations instead of the CPU211. The GPU217can efficiently perform arithmetic operations by preforming as many data processing operations in parallel as possible. Hence, in a case in which machine learning, such as deep learning, is to be performed over a plurality of times by using a learning model, it is effective to perform processing by the GPU217.

In this embodiment, assume that the processing by a learning module251(to be described later) will be performed by using the GPU217in addition to the CPU211. More specifically, in a case in which a learning program including a learning model is to be executed, the CPU211and the GPU217will execute an arithmetic processing operation in cooperation to perform learning. Note that the processing of the learning module251may also be executed by causing only one of the CPU211and the GPU217to execute an arithmetic processing operation. The estimation module351may also use the CPU211or the GPU217in a manner similar to the learning module251. In addition, although this embodiment has described that the cloud server200and the edge server300use a common arrangement, the present invention is not limited to this arrangement. For example, it may be arranged so the GPU217will be incorporated in the cloud server200, but will not be incorporated in the edge server300. Alternatively, it may be arranged so that each server will use the GPU217which has a different performance characteristic.

FIG. 3is a block diagram showing an example of the hardware arrangement of the smartphone500according to this embodiment. The smartphone500includes a mainboard510which controls the overall apparatus, a wireless LAN unit502, a short-range wireless communication unit501, a mobile phone network connection unit503, and a touch panel display504. In the mainboard510, a CPU511operates in accordance with the contents of a data memory514in a RAM format and control programs stored in a program memory513which are connected via an internal bus512. The CPU511controls the wireless LAN unit502via a wireless LAN control circuit515to perform wireless LAN communication with another communication terminal apparatus.

The CPU511can control the short-range wireless communication unit501via a short-range wireless communication control circuit516to detect connection to another short-range wireless communication terminal and to transmit/receive data to/from this other short-range wireless communication terminal. The CPU511can also control the mobile phone network connection unit503via a mobile phone network control circuit517to connect to the mobile phone network105and make a call or transmit/receive data. The CPU511can also control an operation unit control circuit518to execute desired display operations on the touch panel display504and accept an operation from a user. The CPU511can control a camera unit519to capture images and can store each captured image in an image memory520in the data memory514. Also, aside from the captured images, an image which has been obtained from an external apparatus through the mobile phone network, the LAN102, or the short-range wireless communication101can be stored in the image memory520or, on the other hand, be transmitted to another external apparatus.

A nonvolatile memory521is formed from a flash memory or the like and stores data which needs to be stored even after the power has been turned off. For example, the nonvolatile memory521can store, in addition to address book data, various kinds of communication information, and information of devices to which the apparatus has connected in the past, image data to be stored or application software used to implement various kinds of functions in the smartphone500.

FIG. 4is a block diagram showing an example of the hardware arrangement of the printer400as an image processing apparatus according to this embodiment. The printer400includes a mainboard410which controls the overall apparatus, a wireless LAN unit420, a short-range wireless communication unit421, and an operation panel422. In the mainboard410, a CPU411operates in accordance with the contents of a data memory413in a RAM format and control programs stored in a program memory412which are connected via an internal bus419. The CPU411controls a scanner unit414to read an original such as a paper sheet or the like and stores the read data in an image memory423in the data memory413. The CPU411also controls a printer unit415to perform print processing by printing an image stored in the image memory423in the data memory413on a print medium.

The CPU411controls the wireless LAN unit420via a wireless LAN communication control circuit416to execute wireless LAN communication with another communication terminal apparatus. The CPU411also controls the short-range wireless communication unit421via a short-range wireless communication control circuit417to detect connection to another short-range wireless communication terminal and to transmit/receive data to/from this other short-range wireless communication terminal. The CPU411can control an operation unit control circuit418to display the state of the printer400or display a function selection menu on the operation panel422and to accept an operation from the user.

FIG. 5is a block diagram showing an example of the software arrangement of each apparatus forming the processing system100according to this embodiment. Only the modules related to learning and estimation according to this embodiment have been illustrated in this software arrangement, and other software modules have been omitted. For example, illustration of an OS and various kinds of middleware that operate in the devices and on the server, an application for maintenance, and the like has been omitted.

The cloud server200includes a learning data generation module250, the learning module251, and a learning model252. The learning data generation module250is a module that generates, based on data received from an external device, learning data that can be processed by the learning module251. The learning data is a set of input data X of the learning module251and supervised data T which indicates the correct answer of the learning result. The learning module251is a program module that executes learning with respect to the learning model252based on the learning data received from the learning data generation module250. The learning model252accumulates the result of the learning performed by the learning module251. An example in which the learning model252is implemented as a neural network will be described here. Classification of input data and determination of evaluation values can be performed by optimizing the weighting parameters between the nodes of a neural network. The learning model252that has been accumulated as a result of learning is delivered as a learned model to the edge server300and is used in the estimation processing executed in the edge server300.

The edge server300includes a data collection/provision module350, an estimation module351, and a learned model352. The data collection/provision module350is a module that can transmit data received from an external apparatus (for example, the printer400) and data collected by the edge server300itself as a dataset to be used for learning to the cloud server200. The estimation module351is a program module that uses the learned model352to execute estimation based on the data transmitted from the printer400and returns the obtained result to the printer400. The data transmitted from the printer400is data usable as the input data X of the estimation module351. The learned model352is used in the estimation performed in the edge server300. Assume that the learned model352will be implemented as a neural network in a manner similar to the learning model252. The learned model352stores the learning model252accumulated in and delivered from the cloud server200. The learned model352may deliver the entire learning model252or may extract, from the learning model252, only a part necessary for estimation in the edge server300and deliver the extracted part.

The printer400includes an application module450and a data transmission/reception module451. The application module450is a module that implements various kinds of functions to be executed in the printer400, and is a module that uses a learning/estimation mechanism by machine learning. The data transmission/reception module451is a module that requests the edge server300to perform learning or estimation. During learning, the data transmission/reception module451transmits data to be used for learning to the data collection/provision module350of the edge server300according to a request from the application module450. Also, during estimation, the data transmission/reception module451transmits data to be used for estimation to the edge server300according to a request from the application module450and returns the received estimation result to the application module450.

The smartphone500includes an application module530. The application module530is an application to use each function provided by the printer400. For example, the application module530provides a print setting screen and transmits a print instruction (print job) to the printer400when printing is to be performed by using the printer400.

Note that although this embodiment shows a mode in which the result of learning processing by the cloud server200is used for estimation by distributing the result as the learned model352to the edge server300, the present invention is not limited to this mode. The arrangement as to which of the cloud server200, the edge server300, and the printer400is to execute learning or estimation can be determined in accordance with the distribution of hardware resources, the calculation amount, and the magnitude of the data communication amount. Alternatively, it may be arranged so that the apparatus which is to execute learning or estimation will be dynamically changed in accordance with the distribution of these resources, the calculation amount, and the increase and the decrease in the data communication amount. In a case in which learning and estimation are to be performed by different subjects, it can be arranged so that the subject on the estimation side will be able to execute estimation more quickly by using a logic which can be used only for estimation or reducing the capacity of the learned model352.

FIGS. 6A and 6Bare schematic views for explaining the input/output structure when the learning model252and the learned model352, respectively, are to be used. Each of the learning model252and the learned model352according to this embodiment is arranged as a neural network and includes an input layer, a hidden layer, and an output layer.

FIG. 6Ashows the relationship between the learning model252and the input/output data during learning. Input data X601is data input to the input layer of the learning model252. The input data X according to this embodiment will be described in detail later. Since supervised data T603is provided as the correct answer data of the estimation result of the input data X601during learning, a shift amount L605is obtained from the correct answer of the estimation result by providing output data Y602and the supervised data T603to a loss function604. A combine-weight coefficient or the like between the nodes of each neural network in the learning model252is updated so that the shift amount L605will be minimized with respect to each of the multiple learning data sets. An error backpropagation method is a method in which the combine-weight coefficient or the like between the nodes of each neural network is adjusted so that the above-described shift amount will be minimized. The output data Y602is output as a result estimated by using the learning model252as a learning model. In this embodiment, the learning model performs parameter estimation of setting items of the print setting. Hence, the probability of each setting value of the print setting is estimated based on various kinds of information input as the input data X601. More specific examples of algorithms for machine learning are the nearest neighbor algorithm, the Naive Bayes algorithm, a decision tree, a support vector machine, and the like. Deep learning in which the feature amount and the combine-weight coefficient for learning are self-generated by using a neural network can also be raised as another example of a machine learning algorithm. The learning method and the algorithm are not particularly limited, and an algorithm that can be used among the above-described algorithms can be appropriately applied to this embodiment.

FIG. 6Bshows the relationship between the learned model352and the input/output data during learning. Input data X611is the data input to the input layer of the learned model352. The input data X according to this embodiment will be described in detail later. Output data Y612is output as a result estimated based on the input data X611by using the learned model352as a machine learning model. This output data Y612is used as the estimation result during estimation. Note that although it has been described that the learned model352during estimation includes a neural network equal to that of the learning model252during learning, a model obtained by extracting only a part necessary for estimation may be prepared as the learned model352. This can reduce the data amount of the learned model352and reduce the neural network processing time during estimation.

Data to be used in this embodiment will be described. In the processing system100according to this embodiment, the edge server300collects the print settings used during printing from the connected printer400. The print setting items and their respective setting values collected here can include various kinds of items and values in accordance with the function of the printer400. In addition, the time information and the information of the image data set as the print target when printing was performed are also collected together. Information indicating as to whether the print instruction was issued via the operation panel422of the printer400or the print instruction was issued via an external instruction apparatus (for example, the smartphone500) may also be included. The learning data generation module250of the cloud server200generates learning data to be used in the learning processing from the data collected by the edge server300.

The learning model252according to this embodiment uses, as the learning data, each print setting item and its setting value, the type (data format) of the image data, and the like. The learning model252also outputs, as the output data Y602, the setting value of a target setting item. More specifically, for example, assume that a setting item “color mode” is set as the target setting item among the pieces of information provided from the printer400. In this case, the setting value set in the setting item “color mode” is used as the supervised data T603, and corresponding data which is obtained by using data other than this target setting item as the input data X601will be generated as the learning data. Subsequently, learning will be repeatedly performed by using this learning data. Hence, plurality of learning data targeting each of the plurality of setting items can be generated from one piece of print setting information provided from the printer400.

On the other hand, during estimation, the setting value of the target setting item will be estimated by inputting, to the learned model352obtained as the learning result, the print setting item and its setting value, the type (data format) of the image data, and the like as the input data X611. At this time, a separate learned model may be used for each target setting item.

FIGS. 7A and 7Bare views for explaining the overall movement of the processing system100according to this embodiment. Although a case in which a print instruction is issued from the smartphone500will be described as an example here, assume that similar processing is also performed in a case in which a print instruction is issued from an operation screen (not shown) displayed on the operation panel422of the printer400or another instruction apparatus. Also, although a learning phase and an estimation phase will be described separately below, these processing operations may be executed separately or in parallel.

FIG. 7Ashows the overall movement of the processing system100during learning. The processing of each apparatus is implemented by the CPU or the GPU of each apparatus reading out a program stored in the storage unit and executing the program.

In S701, the smartphone500accepts print settings via the application module530and transmits a print instruction to the printer400. The print instruction in this case includes pieces of information such as the print settings, the image data to be the print target, and the like.

In S702, the printer400transmits, to the edge server300, various kinds of information included in the print instruction accepted from the smartphone500. The transmission timing in this case may be the point of time at which the printing operation of the printer400has been completed or may be before the completion of the printing operation. If the printing operation has been completed, this printing result may also be transmitted to the edge server300.

In S703, the edge server300transmits, together with the learning request, the various kinds of information received from the printer400to the cloud server200. The transmission timing in this case may be set at the timing at which a predetermined amount of data has been accumulated, or the transmission may be performed periodically.

In S704, the cloud server200generates the learning data by using the various kinds of data received from the edge server300. As described above, learning data is generated based on the pair of the input data X601and the supervised data T603. In addition, the learning data may be generated for each target setting item. Subsequently, the cloud server200updates the learning model252by performing learning processing by using the generated learning data.

In S705, the cloud server200delivers, to the edge server300, the learned model352obtained as a result of the learning processing. As described above, the learned model352delivered here may be the entire learning model252or may be generated from a part of the learning model252. Also, a plurality of the learned models352may be generated. The edge server300performs the subsequent estimation processing by using the delivered learned model352.

Note that a case in which a learning request is transmitted from the printer400to the cloud server200via the edge server300when the learning request is made has been described here. However, the present invention is not limited to this. For example, it may be arranged so that the learning request will be directly transmitted from the printer400to the cloud server200. Also, although it has been described that the learned model352will be delivered to the edge server300each time learning is to be performed in the cloud server200, the learned model352need not be delivered each time if the cloud server200is to perform a large amount of learning. For example, the learned model352may be delivered periodically or a delivery request may be issued from the edge server300as needed and the learned model352may be delivered as a response to this request.

The learning phase will be described by using a more specific example.FIG. 8Ashows a print setting screen800which is displayed on the touch panel display504of the smartphone500. A preview screen801for previewing image data selected as a print target is displayed on the print setting screen800. The print setting screen can shift to a screen (not shown) for changing the print target when a button802is pressed. Information of a printer which is to perform the printing is displayed in an area803, and it is arranged so that selecting the area803will allow another printer to be selected. Also, the print setting screen can shift to a screen (not shown) for changing the print setting when an area804is selected. Information of the print settings selected at this point of time is displayed in an area805. A print instruction is transmitted to the printer400when a button806is pressed. In this case, the following print setting has been made for an image file set as the print target in the print setting screen800.

Number of Copies: 1

Type of Sheet: Plain Paper

Color Mode: Color

If such a print instruction is issued to the printer400, this information is provided from the printer400to the cloud server200via the edge server300. Assume that the print setting information here includes the above-described various kinds of information used in the learning processing, and user information, print-target information, print setting items and their respective setting values, and the like are included in this case.

FIG. 7Bshows the movement of the overall processing system100during estimation. The processing of each apparatus is implemented by the CPU or the GPU of each apparatus reading out a program stored in the storage unit and executing the program.

In S711, the smartphone500accepts print settings via the application module530. The smartphone500transmits the accepted print settings to the printer400. Assume that a print instruction has not been issued at this point of time. In this case, assume that the print settings include information equivalent to those of the print instruction transmitted in S701in the estimation phase.

In S712, the printer400transmits, to the edge server300, an estimation request together with the print settings received from the smartphone500.

In S713, the edge server300generates the input data X611of the learned model352based on the estimation request received from the printer400. Subsequently, the edge server300inputs the generated input data X611to the learned model352and obtains the output data Y612which is to be the estimation result. The estimation processing can be performed for each target setting item in this case.

In S714, the edge server300transmits the estimation result to the printer400. At this time, the estimated value (recommended value) can also be transmitted together to each setting item whose current setting value is different from the estimated setting value.

In S715, the printer400transmits a notification to the smartphone500based on the estimation result received from the edge server300. In this embodiment, if the current setting value is different from the estimated setting value, control will be performed to cause the smartphone500to display a confirmation screen to confirm this setting value.

In S716, the smartphone500displays the estimation result based on the notification received from the printer400. In this embodiment, if the current setting value is different from the estimated setting value, a confirmation screen to confirm this setting value will be displayed. Otherwise, the confirmation screen will not be displayed.

The estimation phase will be described by using a more specific example. As shown inFIG. 8A, assume that the following settings have been input on the touch panel display504of the smartphone500.

Number of Copies: 1

Type of Sheet: Plain Paper

Color Mode: Color

When such settings have been selected, an estimation request is transmitted together with the setting information from the printer400to the edge server300. Assume that, as a result of estimation processing by the edge server300, a setting value “monochrome” of the setting item “color mode” has been estimated as a recommended value. In this case, the confirmation screen810shown inFIG. 8Bis displayed by the smartphone500.

A confirmation message811is displayed on a confirmation screen810together with the information of the setting value which is different from the recommended value as described above. In the above-described example, a message “The print setting is set to color printing. Do you want to print based on this print setting?” is displayed as the confirmation message811. A print instruction based on the set print settings is transmitted to the printer400when a button812is pressed. The screen will shift to a screen (not shown) for changing the print settings to accept changes to the settings when a button813is pressed.

As described above, according to this embodiment, it is possible to suppress execution of printing which is not desired by the user.

Note that although the print setting transmission timing in S711is set at the timing at which the print settings have been accepted in the example ofFIG. 7B, the present invention is not limited to this. For example, it may be set at the timing at which the user has pressed the button806after designating the print settings. In this case, the printer400can switch between performing estimation processing before the printing operation and executing printing based on the estimation result or displaying the confirmation screen810on the smartphone500.

Also, althoughFIG. 8Bshows an example in which a confirmation message is displayed for only one setting item, it may be arranged so that a confirmation message will be displayed for a plurality of setting items.

In addition, although the confirmation screen810is displayed by being overlaid on the print setting screen800in the example ofFIG. 8B, the present invention is not limited to this. For example, a confirmation screen may be displayed by shifting the screen. Alternatively, points that require confirmation may be emphasized by blinking or changing the color of each target print setting item and setting value.

Although only a message prompting the confirmation of the setting item is displayed in the above-described example, the present invention is not limited to this. For example, it may be arranged so that the recommended value will be displayed together with this message. In this case, the user may be notified of the recommended setting value on the confirmation screen810. For example, in the above-described example, the contents of the recommendation may be displayed together with the reason by displaying a message which says, “Printing is set to be executed by color printing, but this setting will increase the ink consumption when other print settings are taken into account. Therefore, monochrome printing is recommended. Do you still want to execute color printing according to the current print settings?”.

In addition, in the above-described example, the confirmation screen810is displayed based on the estimation result. However, the present invention is not limited to this arrangement, and another method may be employed. For example, it may be arranged so that the value of the setting item will be automatically switched to the estimated recommended value based on the estimation result. More specifically, assume that a setting value “monochrome” is obtained as the recommended value of the estimation result in a case in which the setting value “color” has been set with respect to the setting item “color mode”. In such a case, the setting value “monochrome” is automatically set with respect to the setting item “color mode”. In this case, a message indicating this change may be displayed on the screen or the changed setting item may be emphasized and displayed. As a result, the contents obtained from the learning can be automatically reflected on the print settings, and user convenience can be improved. Note that whether the confirmation screen810is to be displayed or the setting value is to be changed automatically based on the estimation result can be set by the user in advance.

In addition, the printer400transmits (S702ofFIG. 7A) the print settings to the edge server300in the learning phase in the above-described embodiment. At this time, the printer400may also transmit status information of the execution of the corresponding print job. Status information in this case can be statuses such as “normal completion”, “suspension”, “abnormal completion”, and the like. In particular, the print settings may be incorrect when printing is suspended based on user instruction. Furthermore, if printing is subsequently performed again after the settings have been changed, it can be assumed that the changed print settings are more suitable as print settings. Hence, in a case in which a print instruction is issued again when the print settings have been changed after the printing has been suspended by a user instruction, information of this change can be included as learning data. For example, it may be arranged so that the print setting information based on the setting values before the change will be removed from the learning data when the operation has been suspended and the setting values have been changed. By performing learning by taking into account such pieces of information, the accuracy of the estimation result can be further improved.

In the above-described embodiment, learning was performed after the cloud server200had collected data from the edge server300and the printer400which are connected to the network. In this case, learning is performed based on the usage tendencies of many users who use the printer400, and a general-purpose learned model that can support many users is generated as a result. In contrast, it may be arranged so that a learned model that has been adapted to a specific user will be generated. In this case, for example, identification information for uniquely identifying the user may be included as the learning data. As a result, an estimation result corresponding to the user can be obtained. Note that the identification information here may be input by the user or information associated with an instruction apparatus such as the smartphone500or the like may be used. The cloud server200need not be used in such an arrangement. Hence, for example, it may be arranged so that the edge server300will perform learning by using data collected in an arrangement limited to the LAN102and will generate a learned model suited to a user who is to use this limited network.

Other Embodiments

This application claims the benefit of Japanese Patent Application No. 2019-220513, filed Dec. 5, 2019 which is hereby incorporated by reference herein in its entirety.