US 11,943,277 B2
Conversion system, method and program
Miki Bito, Kyoto (JP); and Shinsuke Hanamura, Kyoto (JP)
Assigned to Geek Guild Co., Ltd., Kyoto (JP)
Appl. No. 17/261,346
Filed by Geek Guild Co., Ltd., Kyoto (JP)
PCT Filed Mar. 12, 2020, PCT No. PCT/JP2020/010806
§ 371(c)(1), (2) Date Jan. 19, 2021,
PCT Pub. No. WO2020/189496, PCT Pub. Date Sep. 24, 2020.
Claims priority of application No. 2019-049137 (JP), filed on Mar. 15, 2019; and application No. 2019-049138 (JP), filed on Mar. 15, 2019.
Prior Publication US 2021/0266383 A1, Aug. 26, 2021
Int. Cl. H04L 67/01 (2022.01); G06N 20/00 (2019.01); H04L 9/40 (2022.01); H04L 67/568 (2022.01)
CPC H04L 67/01 (2022.05) [G06N 20/00 (2019.01); H04L 63/0428 (2013.01); H04L 67/568 (2022.05)] 15 Claims
OG exemplary drawing
 
1. A client device comprising:
an input-side conversion processing unit that is a part of the trained model extending from an input layer to a first middle layer of the trained model, and performs conversion processing based on the input data to generate a first intermediate output of the first middle layer of the trained model;
a client-side transmitting unit that transmits the first intermediate output to a server;
a client-side receiving unit that receives a second intermediate output from the server, the second intermediate output being generated in the server based on the first intermediate output and being a conversion output of a second middle layer, the second middle layer closer to the second intermediate output than the first middle layer of the trained model;
an output-side conversion processing unit that is a part of the trained model extending from the second middle layer to an output layer of the trained model, and performs conversion processing based on the second intermediate output to generate the output data;
a cache table storage unit that stores a cache table showing correspondence between the first intermediate output and the second intermediate output;
a determination unit that determines whether or not the second intermediate output corresponding to the first intermediate output exists in the cache table; and
a selective acquisition unit that, when the determination unit determines that the second intermediate output corresponding to the first intermediate output exists in the cache table, acquires the corresponding second intermediate output from the cache table instead of operating the client-side transmitting unit and the client-side receiving unit, and when the determination unit determines that the second intermediate output corresponding to the first intermediate output is absent from the cache table, operates the client-side transmitting unit and the client-side receiving unit to acquire the second intermediate output received at the client-side receiving unit;
an encryption unit that encrypts the first intermediate output and generates a first encrypted intermediate output;
a decryption unit that decrypts a second encrypted intermediate output that is a second intermediate output encrypted in the server;
wherein the client-side transmitting unit transmits the first encrypted intermediate output to the server,
wherein the server decrypts the received first encrypted intermediate output to restore the first intermediate output, encrypts the second intermediate output to generate the second encrypted intermediate output, and transmits the second encrypted intermediate output to the client device, and
wherein the client-side receiving unit receives the second encrypted intermediate output;
a hashing processing unit that hashes the first encrypted intermediate output and generates a first hash value;
wherein the first intermediate output in the cache table is the first hash value, and
wherein the determination unit determines whether or not the corresponding second intermediate output exists, based on the first hash value.