Data transmission method and device, electronic equipment and storage medium

By splitting data in the deep learning model and using a data dictionary for cross-language transmission, the problem of low data transmission efficiency between programs in different languages ​​is solved, efficient large-scale data transmission is achieved, and deep learning tasks are supported.

CN119621360APending Publication Date: 2025-03-14CHINA NAT PETROLEUM CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311170961.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-12
Publication Date
2025-03-14

AI Technical Summary

Technical Problem

In the prior art, data transmission between programs of different language types is inefficient and difficult to support large-scale deep learning tasks.

Method used

The data to be transmitted is obtained through the first language application, and the data is split based on the structure of the deep learning model, multiple data bodies are obtained, and the data dictionary matching the data body is determined. Then, each data body and data dictionary are transmitted to the second language application in the socket transmission mode, and the program operation result is determined based on the data dictionary and data object through the second language application.

Benefits of technology

It improves the efficiency of data transmission between programs of different language types, meets the needs of large-scale data cross-language programs, and supports large-scale deep learning tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119621360A_ABST
    Figure CN119621360A_ABST
Patent Text Reader

Abstract

The invention discloses a data transmission method and device, equipment and a storage medium. The method comprises the steps of obtaining to-be-transmitted data through a first language application program, splitting the to-be-transmitted data based on a structure of a deep learning model to obtain at least two data volumes, and determining a data dictionary matched with each data volume; transmitting the data volumes and the data dictionaries matched with the data volumes to a second language application program from the first language application program according to a socket transmission mode; and determining a program running result through the second language application program according to the data dictionary matched with each data body and each data body. According to the technical scheme, the problem that the data transmission efficiency between programs of different language types is low is solved, the application program data communication efficiency can be greatly improved, and the large-scale data cross-language program transmission requirement is met.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of intelligent geophysical exploration technology, and in particular to a data transmission method, device, electronic equipment and storage medium. Background Art

[0002] With the widespread application of deep learning technology in speech recognition, visual images, medical treatment, natural language processing, and autonomous driving, in the field of oil exploration, the combination of traditional geophysical technology and deep learning has also been fully launched and applied to multiple links such as the collection, processing, and interpretation of exploration data, achieving good results in improving efficiency and accuracy. At present, deep learning frameworks, such as TensorFlow and Pytorch, are mainly built based on the Python language. However, the mainstream programming languages ​​of general software are software programming languages ​​such as Java and C#. To this end, in order to realize intelligent geophysical exploration, it is necessary to realize cross-language, cross-process, and cross-network data exchange between software programming languages ​​and deep learning framework languages ​​at the bottom of the software.

[0003] In the prior art, there are two main modes for data exchange between programming languages: (1) output stream / input stream mode. The input stream / output stream mode is based on shared memory and mainly transmits simple conventional variables, which is incapable of large data transmission; (2) shared directory mode. The shared directory mode can transmit large data files, but the transmitted data needs to be written to the disk in the form of files through the I / O interface. When the data volume is large, the disk I / O interface delay will seriously affect the computational efficiency of the deep learning algorithm. At the same time, the above two modes do not support network mode and are difficult to support large-scale deep learning tasks. Summary of the invention

[0004] The present invention provides a data transmission method, device, equipment and storage medium to solve the problem of low data transmission efficiency between programs of different language types, which can greatly improve the data communication efficiency of application programs and meet the needs of large-scale data cross-language program transmission.

[0005] According to one aspect of the present invention, a data transmission method is provided, the method comprising:

[0006] Acquire the data to be transmitted through the first language application, split the data to be transmitted based on the structure of the deep learning model to obtain at least two data bodies, and determine the data dictionary matching each data body;

[0007] Transmitting each data body and a data dictionary matching each data body from the first language application to the second language application according to a socket transmission mode;

[0008] The program running result is determined by the second language application program according to the data dictionary matched by each data body and each data body.

[0009] According to another aspect of the present invention, there is provided a data transmission device, the device comprising:

[0010] A data body generation module is used to obtain the data to be transmitted through the first language application, split the data to be transmitted based on the structure of the deep learning model to obtain at least two data bodies, and determine a data dictionary matching each data body;

[0011] A data transmission module, used for transmitting each data body and a data dictionary matched by each data body from a first language application to a second language application according to a socket transmission mode;

[0012] The running result determination module is used to determine the program running result according to the data dictionary matched by each data body and each data body through the second language application program.

[0013] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:

[0014] at least one processor; and

[0015] a memory communicatively connected to the at least one processor; wherein,

[0016] The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the data transmission method described in any embodiment of the present invention.

[0017] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the data transmission method described in any embodiment of the present invention when executed.

[0018] The technical solution of the embodiment of the present invention obtains the data to be transmitted through the first language application, splits the data to be transmitted based on the structure of the deep learning model, obtains at least two data bodies, and determines the data dictionary matching each data body; transmits each data body and the data dictionary matching each data body from the first language application to the second language application according to the socket transmission mode; and determines the program running result through the second language application according to the data dictionary matching each data body and each data body. This technical solution solves the problem of low data transmission efficiency between programs of different language types, can greatly improve the efficiency of application data communication, and meet the needs of large-scale data cross-language program transmission.

[0019] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0021] Figure 1 is a flowchart of a data transmission method provided according to Embodiment 1 of the present invention;

[0022] Figure 2A is a flowchart of a data transmission method provided according to Embodiment 2 of the present invention;

[0023] Figure 2B is a schematic diagram of data volume segmentation provided according to the second embodiment of the present invention;

[0024] Figure 2C It is a comparison diagram of the intelligently identified river channel profile and the seismic profile provided by the second embodiment of the present invention;

[0025] Figure 2D It is a comparison diagram of the intelligent prediction river channel time slice and the earthquake time slice provided by the second embodiment of the present invention;

[0026] Figure 3 is a schematic diagram of the structure of a data transmission device provided according to Embodiment 3 of the present invention;

[0027] Figure 4 It is a structural schematic diagram of an electronic device for implementing the data transmission method according to an embodiment of the present invention. DETAILED DESCRIPTION

[0028] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0029] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices. The acquisition, storage, use, processing, etc. of data in the technical solution of this application comply with the relevant provisions of national laws and regulations.

[0030] Embodiment 1

[0031] Figure 1 A flowchart of a data transmission method is provided for the first embodiment of the present invention. This embodiment is applicable to large-scale data interaction scenarios across programming languages. The method can be performed by a data transmission device, which can be implemented in the form of hardware and / or software, and can be configured in an electronic device. Figure 1 As shown, the method includes:

[0032] S110, obtaining data to be transmitted through a first language application, splitting the data to be transmitted based on the structure of the deep learning model to obtain at least two data bodies, and determining a data dictionary matching each data body.

[0033] This solution can be executed by a device cluster consisting of electronic devices such as computers and servers, and the device cluster can include local devices and remote devices. The first language application can be an application written in a programming language such as Java and C# and deployed on a local device. The first language application can implement functions such as data acquisition, data processing, and data transmission. The local device can obtain large-scale data to be transmitted, such as seismic and well logging, through the first language application.

[0034] The local device can obtain the structure of the deep learning model in advance, such as the size of the convolution kernel of the convolution layer in the convolutional neural network. Since the data to be transmitted is usually large-scale data and it is difficult to achieve overall transmission, the local device can split the data to be transmitted according to the structure of the deep learning model to obtain multiple data bodies, and then transmit the multiple data bodies separately. It can be understood that the local device can match a data dictionary for each data body. The data dictionary can be used to describe the amount of data in the data body, the association relationship between the data bodies, and the relationship between the data body and the deep learning model.

[0035] S120 , transmitting each data body and the data dictionary matched by each data body from the first language application to the second language application according to the socket transmission mode.

[0036] The socket transmission mode may be a transmission mode based on the Socket protocol, and the message format of the socket transmission mode may be as shown in Table 1 below.

[0037] Table 1:

[0038]

[0039] The local device can transmit each data body and the data dictionary matching each data body from the first language application to the second language application in the message format shown in Table 1. The second language application can be a training program or execution program of a deep learning model written in Python programming language.

[0040] S130 , determining the program running result through the second language application program according to the data dictionary matched by each data body and each data body.

[0041] The second language application can be deployed in a remote device with high computing performance. The second language application may include a training program for a deep learning model, and the program running result may include a deep learning model. By running the training program for the deep learning model, the remote device can train the deep learning model using each data body according to the data dictionary matched by each data body, and obtain a deep learning model that meets the user's needs. The second language application may also include an execution program for the deep learning model, and the program running result may also include a prediction result of each data body matching. By running the execution program for the deep learning model, the remote device can use each data body as an input of the deep learning model according to the data dictionary matched by each data body, and determine the prediction result of each data body matching.

[0042] The technical solution of the embodiment of the present invention obtains the data to be transmitted through the first language application, splits the data to be transmitted based on the structure of the deep learning model, obtains at least two data bodies, and determines the data dictionary matching each data body; transmits each data body and the data dictionary matching each data body from the first language application to the second language application according to the socket transmission mode; and determines the program running result through the second language application according to the data dictionary matching each data body and each data body. This technical solution solves the problem of low data transmission efficiency between programs of different language types, can greatly improve the efficiency of application data communication, and meet the needs of large-scale data cross-language program transmission.

[0043] Embodiment 2

[0044] Figure 2A This is a flow chart of a data transmission method provided in Embodiment 2 of the present invention. This embodiment is refined based on the above embodiment. Figure 2A As shown, the method includes:

[0045] S210: Obtain data to be transmitted through a first language application, and split the data to be transmitted according to a data arrangement order based on the structure of the deep learning model to obtain at least two data bodies.

[0046] In this solution, each data body includes a preset number of data pieces; and there is at least one overlapping data piece between every two adjacent data bodies.

[0047] S220: Determine a data dictionary that matches each data body.

[0048] In this solution, optionally, the data dictionary includes a data transmission completion mark, a data body start mark, a data body end mark, the amount of overlapping data of adjacent data bodies, a deep learning model learning rate, and the data amount of each data body.

[0049] It can be understood that the data to be transmitted can be divided into multiple data bodies, each of which can include multiple data items. The amount of data in each data body after the division can be the same or different. Therefore, the data dictionary can record the amount of data in each data body. The data body start identifier can be the identifier of the first data item in the data body, such as the serial number of the first data item. The data body end identifier can be the identifier of the last data item in the data body, such as the serial number of the last data item.

[0050] Optionally, the data body start identifier includes start identifiers of at least two dimensions; and the data body end identifier includes end identifiers of at least two dimensions.

[0051] The data to be transmitted may be multidimensional seismic data, therefore, the start identifier and the end identifier of the data body may include multiple dimensions, for example, the start identifier may include the start identifiers of the first profile dimension, the second profile dimension and the time dimension, and the first profile dimension, the second profile dimension and the time dimension may be represented as inline, crossline and time, respectively.

[0052] The data transmission completion flag can be used to describe whether the current data body is the last data body to be transmitted. For example, if the current data body is the last data body to be transmitted, the data transmission completion flag is 1, and if the current data body is not the last data body to be transmitted, the data transmission completion flag is 0.

[0053] In order to avoid the lack of coherence of data in two adjacent data bodies, there can be overlapping parts in two adjacent data bodies, that is, there are some identical data in two adjacent data bodies. The data dictionary can record the amount of overlapping data in adjacent data bodies.

[0054] S230: If the number of data items in the tail data body after the data to be transmitted is split is less than a preset number, data supplement processing is performed on the tail data body according to the preset number and the number of data items in the tail data body.

[0055] In a scenario where the amount of data in the data to be transmitted cannot be directly divided by the amount of data in the data body, the number of data items in the last data body after the data to be transmitted is split is less than the preset number of data in the data body. In order to ensure the consistency of the amount of data in the data body, the local device can supplement the number of missing data items in the tail data body, such as by adding 0 or 1.

[0056] S240: Transmit each data body and the data dictionary matched by each data body from the first language application to the second language application according to the socket transmission mode.

[0057] S250 , determining the program running result through the second language application program according to the data dictionary matched by each data body and each data body.

[0058] In a feasible solution, the second language application determines the program running result according to the data dictionary matched by each data body and each data body, including:

[0059] Through the second language application, the deep learning model is trained using each data body according to the data dictionary matched by each data body, so as to obtain a deep learning model that meets the preset prediction conditions.

[0060] It is easy to understand that the second language application may include a training program for a deep learning model, and the program running result may include a deep learning model. By running the training program for the deep learning model, the remote device can train the deep learning model using each data body according to the data dictionary matched by each data body, and obtain a deep learning model that meets the preset prediction conditions. Among them, the prediction conditions may include accuracy conditions, loss conditions, etc.

[0061] In another feasible solution, determining the program running result by the second language application according to the data dictionary matched by each data body and each data body includes:

[0062] The prediction results of each data body matching are determined based on the data dictionary matched by each data body according to the degree of second language application and the pre-trained deep learning model.

[0063] It is understandable that the second language application may include an execution program of the deep learning model, and the program running result may include a prediction result of each data body matching. By running the execution program of the deep learning model, the remote device can use each data body as an input of the deep learning model based on the data dictionary matched by each data body, and determine the prediction result of each data body matching.

[0064] In a specific example, the data to be transmitted is seismic data of the M area, and the deep learning model is a river channel prediction model. The M area has heterogeneous carbonate reservoirs. The exploration area belongs to deep exploration, and the amount of post-stack seismic data is 513G, which belongs to the big data area. The river channel prediction process can include the following steps:

[0065] (1) Seismic data block processing

[0066] Figure 2B It is a schematic diagram of data volume segmentation provided according to the second embodiment of the present invention. Seismic data (taking post-stack time domain seismic data as an example) is usually floating point data along the inline, crossline and time directions, and the data scale of each dimension is hundreds, tens of thousands or even hundreds of thousands. The structure of the river channel prediction model can be constructed based on a convolutional neural network, and the three-dimensional convolution kernel can be 96×96×96, 128×128×128 and other specifications. Figure 2B As shown, the local device can segment the seismic data along the inline, crossline and time directions according to the convolution kernel size to obtain multiple data volumes.

[0067] After the seismic data is segmented, the local device can pass each data body from the main application (such as an application written in Java or C#) to the river prediction module (such as the TensorFlow or Pytorch deep learning framework written in Python) via socket communication.

[0068] During the segmentation process, the seismic data in each dimension may not be divisible by the corresponding data volume dimension, for example Figure 2B The phenomenon shown in the data body A in the figure is that the number of data items in the last data body of the crossline dimension is less than the preset number of data bodies. The local device can perform zero padding operations on such data bodies. The calculation formula for the number of zero padding required for each data body along the inline, crossline and time directions can be expressed as:

[0069] Zero num_x =XLength%cubeXLength;

[0070] Zero num_y=YLength%cubeYLength;

[0071] Zero num_z =ZLength%cubeZLength;

[0072] Among them, Zero num_x 、Zero num_y and Zero num_z They respectively represent the number of zeros that need to be padded in the inline, crossline, and time dimensions of the data body. XLength, YLength, and ZLength represent the number of data in the inline, crossline, and time dimensions of the seismic data. CubeXLength, cubeYLength, and cubeZLength represent the preset number of inline, crossline, and time dimensions of the data body.

[0073] (2) Overlapping of data sub-volume boundaries

[0074] In the process of splitting seismic data, since each data body participates in the deep learning algorithm independently, a break phenomenon will appear at the junction of two adjacent data bodies. This is reflected in the prediction result map, where a hidden line will appear at the junction of the data bodies. To solve this problem, part of the data of two adjacent data bodies can be overlapped, such as Figure 2B The data volumes B and C are shown in the figure. By performing average and weighting operations on the overlapped parts of the intelligent prediction results of each data volume, the fault phenomenon can be effectively eliminated. The number of data volumes that the seismic data is divided into inline, crossline and time dimensions is:

[0075]

[0076]

[0077]

[0078] Among them, X num , Y num and Z num Respectively represent the number of data volumes segmented in the inline, crossline and time dimensions, ws x 、ws y and ws z Represented as the number of overlapping data in the inline, crossline and time dimensions respectively.

[0079] (3) Dealing with the sticky problem

[0080] The key to socket transmission is the definition and description of the message. For each data body segmented in (1), before transmitting it to the deep learning module, a message header needs to be added and the data needs to be converted into byte type. The structure of the socket message mainly consists of a message header and a message body, as shown in Table 1. For the transmission of the data body, the fields in the message can include the data body information and the parameter information of the deep learning model.

[0081] The Socket transmission algorithm based on the TCP protocol may cause packet sticking during data transmission. The main reason for the packet sticking phenomenon is that the receiving end cannot determine the boundaries between packets sent by the sending end. The packet sticking phenomenon can be solved by transmitting the data dictionary that matches the data body while transmitting the data body. The content of the data dictionary can be different for different deep learning models. In this solution, the data dictionary can include information such as the data transmission completion mark, the data body start mark, the data body end mark, the amount of overlapping data of adjacent data bodies, the deep learning model learning rate, and the amount of data for each data body.

[0082] (4) Intelligent prediction and feedback of prediction results

[0083] After the Python server receives the data body and the data dictionary that matches the data body, it transmits it to the TensorFlow / Pytorch module to train the deep learning model or predict the data, and returns the program running results to the main program module in Socket mode. After the main program module receives the program running results, the program running results that match each data body can be merged according to the inverse process of the segmentation process in step (1). It should be noted that the program running results may be inconsistent with the seismic data dimension. For example, if the seismic data is three-dimensional data, the prediction result can be two-dimensional data.

[0084] Based on the above steps, the river channel development in the M work area can be predicted efficiently and accurately. Figure 2C is a comparison diagram of the intelligently identified river channel profile and the seismic profile provided by the second embodiment of the present invention, Figure 2D This is a comparison diagram of the intelligent prediction river channel time slice and the earthquake time slice provided by the second embodiment of the present invention. Figure 2C As shown in the figure, the seismic profile is compared with the intelligently identified river channel profile. The intelligently identified river channel profile separates and eliminates the continuous strong reflection amplitude of non-river channels, so that the river channel reflection amplitude can be accurately and quickly identified. Figure 2D In the elliptical marked area of ​​the intelligent prediction of river channel time slices and earthquake time slices, the prediction results output by the river channel prediction model identify the river channel edge more clearly.

[0085] The technical solution of the embodiment of the present invention obtains the data to be transmitted through the first language application, splits the data to be transmitted based on the structure of the deep learning model, obtains at least two data bodies, and determines the data dictionary matching each data body; transmits each data body and the data dictionary matching each data body from the first language application to the second language application according to the socket transmission mode; and determines the program running result through the second language application according to the data dictionary matching each data body and each data body. This technical solution solves the problem of low data transmission efficiency between programs of different language types, can greatly improve the efficiency of application data communication, and meet the needs of large-scale data cross-language program transmission.

[0086] Embodiment 3

[0087] Figure 3 This is a schematic diagram of the structure of a data transmission device provided in Embodiment 3 of the present invention. Figure 3 As shown, the device comprises:

[0088] A data body generation module 310 is used to obtain data to be transmitted through a first language application, split the data to be transmitted based on the structure of the deep learning model to obtain at least two data bodies, and determine a data dictionary matching each data body;

[0089] The data transmission module 320 is used to transmit each data body and the data dictionary matched by each data body from the first language application to the second language application according to the socket transmission mode;

[0090] The running result determination module 330 is used to determine the program running result according to the data dictionary matched by each data body and each data body through the second language application program.

[0091] In this solution, optionally, the data dictionary includes a data transmission completion mark, a data body start mark, a data body end mark, the amount of overlapping data of adjacent data bodies, a deep learning model learning rate, and the data amount of each data body.

[0092] Based on the above solution, optionally, the data body start identifier includes at least two dimensional start identifiers; and the data body end identifier includes at least two dimensional end identifiers.

[0093] In a feasible solution, the operation result determination module 330 is specifically used to:

[0094] Through the second language application, the deep learning model is trained using each data body according to the data dictionary matched by each data body, so as to obtain a deep learning model that meets the preset prediction conditions.

[0095] In another feasible solution, the operation result determination module 330 is specifically used to:

[0096] The prediction results of each data body matching are determined based on the data dictionary matched by each data body according to the degree of second language application and the pre-trained deep learning model.

[0097] In a preferred embodiment, each data body includes a preset number of data items;

[0098] The data volume generation module 310 is specifically used for:

[0099] The data to be transmitted is split according to the data arrangement order to obtain at least two data bodies; wherein there is at least one overlapping data in every two adjacent data bodies.

[0100] Based on the above solution, optionally, the device further includes:

[0101] The supplement processing module is used to perform data supplement processing on the tail data body according to the preset number and the number of data pieces in the tail data body if the number of data pieces in the tail data body after the data to be transmitted is split is less than the preset number.

[0102] The data transmission device provided in the embodiment of the present invention can execute the data transmission method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0103] Embodiment 4

[0104] Figure 4 A schematic diagram of an electronic device 410 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.

[0105] like Figure 4As shown, the electronic device 410 includes at least one processor 411, and a memory connected to the at least one processor 411 in communication, such as a read-only memory (ROM) 412, a random access memory (RAM) 413, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 411 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 412 or the computer program loaded from the storage unit 418 to the random access memory (RAM) 413. In the RAM 413, various programs and data required for the operation of the electronic device 410 can also be stored. The processor 411, the ROM 412, and the RAM 413 are connected to each other via a bus 414. An input / output (I / O) interface 415 is also connected to the bus 414.

[0106] Multiple components in the electronic device 410 are connected to the I / O interface 415, including: an input unit 416, such as a keyboard, a mouse, etc.; an output unit 417, such as various types of displays, speakers, etc.; a storage unit 418, such as a disk, an optical disk, etc.; and a communication unit 419, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 419 allows the electronic device 410 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0107] The processor 411 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 411 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 411 performs the various methods and processes described above, such as a data transmission method.

[0108] In some embodiments, the data transmission method may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 418. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 410 via the ROM 412 and / or the communication unit 419. When the computer program is loaded into the RAM 413 and executed by the processor 411, one or more steps of the data transmission method described above may be performed. Alternatively, in other embodiments, the processor 411 may be configured to perform the data transmission method in any other appropriate manner (e.g., by means of firmware).

[0109] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0110] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data transmission device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0111] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0112] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).

[0113] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0114] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.

[0115] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.

[0116] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. A data transmission method, characterized in that: The method comprises: Acquire the data to be transmitted through the first language application, split the data to be transmitted based on the structure of the deep learning model to obtain at least two data bodies, and determine the data dictionary matching each data body; Transmitting each data body and a data dictionary matching each data body from the first language application to the second language application according to a socket transmission mode; The program running result is determined by the second language application program according to the data dictionary matched by each data body and each data body.

2. The method according to claim 1, characterized in that The data dictionary includes a data transmission completion mark, a data body start mark, a data body end mark, the amount of overlapping data of adjacent data bodies, a deep learning model learning rate, and the data amount of each data body.

3. The method according to claim 2, characterized in that The data body start identifier includes at least two dimensional start identifiers; the data body end identifier includes at least two dimensional end identifiers.

4. The method according to claim 1, characterized in that: The step of determining the program running result by the second language application program according to the data dictionary matched by each data body and each data body includes: Through the second language application, the deep learning model is trained using each data body according to the data dictionary matched by each data body, so as to obtain a deep learning model that meets the preset prediction conditions.

5. The method according to claim 1, characterized in that The step of determining the program running result by the second language application program according to the data dictionary matched by each data body and each data body includes: The prediction results of each data body matching are determined based on the data dictionary matched by each data body according to the degree of second language application and the pre-trained deep learning model.

6. The method according to claim 1, characterized in that Each data body includes a preset number of data items; The data to be transmitted is split to obtain at least two data bodies, including: The data to be transmitted is split according to the data arrangement order to obtain at least two data bodies; wherein there is at least one overlapping data in every two adjacent data bodies.

7. The method according to claim 6, characterized in that After obtaining at least two data bodies, including: If the number of data items in the tail data body after the data to be transmitted is split is less than the preset number, data supplementation processing is performed on the tail data body according to the preset number and the number of data items in the tail data body.

8. A data transmission device, characterized in that: include: A data body generation module is used to obtain the data to be transmitted through the first language application, split the data to be transmitted based on the structure of the deep learning model to obtain at least two data bodies, and determine a data dictionary matching each data body; A data transmission module, used for transmitting each data body and a data dictionary matched by each data body from a first language application to a second language application according to a socket transmission mode; The running result determination module is used to determine the program running result according to the data dictionary matched by each data body and each data body through the second language application program.

9. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can perform the data transmission method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the data transmission method according to any one of claims 1 to 7 when executed.