CN110309425A - Method and apparatus for storing data - Google Patents

Method and apparatus for storing data Download PDF

Info

Publication number
CN110309425A
CN110309425A CN201910602226.1A CN201910602226A CN110309425A CN 110309425 A CN110309425 A CN 110309425A CN 201910602226 A CN201910602226 A CN 201910602226A CN 110309425 A CN110309425 A CN 110309425A
Authority
CN
China
Prior art keywords
matrix
array
user
article
column
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910602226.1A
Other languages
Chinese (zh)
Other versions
CN110309425B (en
Inventor
王浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Douyin Vision Co Ltd
Douyin Vision Beijing Co Ltd
Original Assignee
Beijing ByteDance Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN201910602226.1A priority Critical patent/CN110309425B/en
Publication of CN110309425A publication Critical patent/CN110309425A/en
Application granted granted Critical
Publication of CN110309425B publication Critical patent/CN110309425B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Embodiment of the disclosure discloses method and apparatus for storing data.One specific embodiment of this method includes: to obtain matrix to be processed;Obtain the objective function that constructs in advance based on matrix to be processed, objective function be used to characterize the first specific item scalar functions and the second specific item scalar functions and, the decision variable of the first specific item scalar functions and the second specific item scalar functions includes the first matrix;Objective function is adjusted to determine so that the smallest first matrix of the value of objective function is as the first matrix of target;Determine the serial number of the first array of non-zero of the first matrix of target, according to identified serial number, the second array corresponding with the first array of non-zero and storage are chosen from matrix to be processed, first array is one of a line and a column of matrix, second array is the other of a line and a column of matrix, and the serial number of the second selected array is identical as the serial number of corresponding the first array of non-zero.The embodiment realizes the compression storage for treating processing array.

Description

Method and apparatus for storing data
Technical field
Embodiment of the disclosure is related to field of computer technology, and in particular to method and apparatus for storing data.
Background technique
In some cases, data volume to be processed is very big, usually long so as to cause data handling procedure, and Need to occupy more software and hardware resources.There are also under some cases, data to be treated cannot count completely or it is more difficult completely Statistics., can be by the method for sampling typically, for these situations, extraction section data are made from data to be processed It is handled for sample, and analyzes the various attribute informations of data to be processed according to obtained processing result.
Summary of the invention
Embodiment of the disclosure proposes method and apparatus for storing data.
In a first aspect, embodiment of the disclosure provides a kind of method for storing data, this method comprises: obtain to Processing array;Obtain the objective function constructed in advance based on matrix to be processed, wherein objective function is for characterizing the first sub-goal Function and the second specific item scalar functions and, the decision variable of the first specific item scalar functions and the second specific item scalar functions includes the first square Battle array;Objective function is adjusted to determine so that the smallest first matrix of the value of objective function is as the first matrix of target; The serial number for determining the first array of non-zero of the first matrix of target, according to identified serial number, chosen from matrix to be processed with it is non- Corresponding second array of 0 first array and storage, wherein the first array be matrix a line and one column one of, second Array is the other of a line and a column of matrix, the serial number of the second selected array and corresponding the first array of non-zero Serial number is identical.
In some embodiments, the number and location for the nonzero element that the first matrix includes are for controlling the first specific item offer of tender Several values, the number of the first array of non-zero of the first matrix are used to control the value of the second specific item scalar functions.
In some embodiments, the first specific item scalar functions are quadratic function.
In some embodiments, the quadratic sum for the element that the first specific item scalar functions and matrix of differences include is positively correlated, wherein Matrix of differences is determined by the difference of matrix to be processed and product matrix, wherein product matrix passes through matrix to be processed and first The product of matrix determines.
In some embodiments, the summation positive of two norms of each first array of the second specific item scalar functions and the first matrix It closes.
In some embodiments, the second specific item scalar functions are used to characterize the sum of first function and second function, wherein target Function, first function, second function decision variable include primary vector, wherein the number of the first array of non-zero of the first matrix The number of the nonzero element of mesh and primary vector is positively correlated.
In some embodiments, the summation positive correlation of first function and target numbers quotient, wherein target numbers the The number for the element that one vector includes, target numbers quotient are respectively square of two norms of each first array of the first matrix The quotient of the element of serial number that include with primary vector, corresponding.
In some embodiments, second function and a norm of primary vector are positively correlated.
Second aspect, embodiment of the disclosure provide a kind of device for storing data, which includes: to be processed Matrix acquiring unit is configured to obtain matrix to be processed;Objective function acquiring unit is configured to obtain based on square to be processed The objective function that constructs in advance of battle array, wherein objective function be used to characterize the first specific item scalar functions and the second specific item scalar functions and, The decision variable of first specific item scalar functions and the second specific item scalar functions includes the first matrix;Adjustment unit is configured to target Function is adjusted to determine so that the smallest first matrix of the value of objective function is as the first matrix of target;Storage unit, It is configured to determine the serial number of the first array of non-zero of the first matrix of target, according to identified serial number, from matrix to be processed Choose the second array corresponding with the first array of non-zero and storage, wherein the first array is in a line and a column of matrix One, the second array are the other of a line and a column of matrix, the serial number of the second selected array and corresponding non-zero The serial number of first array is identical.
In some embodiments, the number and location for the nonzero element that the first matrix includes are for controlling the first specific item offer of tender Several values, the number of the first array of non-zero of the first matrix are used to control the value of the second specific item scalar functions.
In some embodiments, the first specific item scalar functions are quadratic function.
In some embodiments, the quadratic sum for the element that the first specific item scalar functions and matrix of differences include is positively correlated, wherein Matrix of differences is determined by the difference of matrix to be processed and product matrix, wherein product matrix passes through matrix to be processed and first The product of matrix determines.
In some embodiments, the summation positive of two norms of each first array of the second specific item scalar functions and the first matrix It closes.
In some embodiments, the second specific item scalar functions are used to characterize the sum of first function and second function, wherein target Function, first function, second function decision variable include primary vector, wherein the number of the first array of non-zero of the first matrix The number of the nonzero element of mesh and primary vector is positively correlated.
In some embodiments, the summation positive correlation of first function and target numbers quotient, wherein target numbers the The number for the element that one vector includes, target numbers quotient are respectively square of two norms of each first array of the first matrix The quotient of the element of serial number that include with primary vector, corresponding.
In some embodiments, second function and a norm of primary vector are positively correlated.
The third aspect, embodiment of the disclosure provide a kind of method for pushed information, this method comprises: obtaining the One user identifier collection, and obtain second user identification sets;Obtain information to be pushed;Obtain user's matrix, wherein user's matrix Each first array correspond respectively to the first user identifier concentration user identifier instruction user, user's matrix it is each second number Group corresponds respectively to the user of the instruction of the user identifier in second user identification sets, and the element of user's matrix is for indicating that first uses The letter that the user of user identifier instruction in the identification sets of family shares the user of the user identifier instruction in second user identification sets The operation data of breath, wherein the first array is one of a line and a column of matrix, and the second array is a line and one of matrix The other of column;User's matrix is determined as matrix to be processed, using the method for one of such as claim 1-8 to user's matrix It is handled, to obtain the second array selected from user's matrix;To selected the second array corresponding second The corresponding terminal device of user for the user identifier instruction that user identifier is concentrated pushes information to be pushed.
Fourth aspect, embodiment of the disclosure provide a kind of device for pushed information, which includes: user's mark Know collection acquiring unit, is configured to obtain the first user identifier collection, and obtain second user identification sets;Information to be pushed obtains Unit is configured to obtain information to be pushed;User's matrix acquiring unit, is configured to obtain user's matrix, wherein Yong Huju Battle array each first array correspond respectively to the first user identifier concentration user identifier instruction user, each the second of user's matrix Array corresponds respectively to the user of the instruction of the user identifier in second user identification sets, and the element of user's matrix is for indicating first The user for the user identifier instruction that user identifier is concentrated shares the user of the user identifier instruction in second user identification sets The operation data of information, wherein the first array be matrix a line and one column one of, the second array be matrix a line and The other of one column;User's matrix disposal unit is configured to determine user's matrix as matrix to be processed, utilizes such as first The method of any implementation description handles user's matrix in aspect, to obtain select from user's matrix second Array;Push unit, the user identifier being configured into the selected corresponding second user identification sets of the second array The corresponding terminal device of the user of instruction pushes information to be pushed.
5th aspect, embodiment of the disclosure provide a kind of method for detecting article, this method comprises: obtaining mesh Mark article mark collection;Obtain article matrix, wherein each first array of article matrix corresponds respectively to the category of preset attribute concentration Property, each second array of article matrix corresponds respectively to the article of the instruction of the article mark in target item identification sets, article square The element of battle array is used to indicate the attribute value of the article of the article mark instruction in target item identification sets, wherein the first array is One of a line of matrix and a column, the second array are the other of a line and a column of matrix;Determine that article matrix is made For matrix to be processed, article matrix is handled using the method as described in implementation any in first aspect, to obtain The second array selected from article matrix;In response to determine it is in the second selected array, meet preset condition the The number of two arrays is less than preset quantity threshold, issues alarm signal.
6th aspect, embodiment of the disclosure provides a kind of for detecting the device of article, which includes: article mark Know collection acquiring unit, is configured to obtain target item identification sets;Article matrix acquiring unit, is configured to obtain article square Battle array, wherein each first array of article matrix corresponds respectively to the attribute of preset attribute concentration, each second array of article matrix The article of the article mark instruction in target item identification sets is corresponded respectively to, the element of article matrix is for indicating target item In identification sets article mark instruction article attribute value, wherein the first array be matrix a line and one column one of, Second array is the other of a line and a column of matrix;Article matrix disposal unit is configured to determine article matrix work For matrix to be processed, article matrix is handled using the method as described in implementation any in first aspect, to obtain The second array selected from article matrix;Alarm Unit, be configured in response to determine it is in the second selected array, The number for meeting the second array of preset condition is less than preset quantity threshold, issues alarm signal.
7th aspect, embodiment of the disclosure provide a kind of electronic equipment, which includes: one or more places Manage device;Storage device, for storing one or more programs;When one or more programs are executed by one or more processors, So that one or more processors realize the method as described in any implementation in terms of first aspect, the third aspect, the 5th.
Eighth aspect, embodiment of the disclosure provide a kind of computer-readable medium, are stored thereon with computer program, Any implementation description in terms of realizing when the computer program is executed by processor such as first aspect, the third aspect, the 5th Method.
The method and apparatus for storing data that embodiment of the disclosure provides, by preparatory based on matrix to be processed The objective function of building is adjusted to obtain so that the smallest first matrix of the value of objective function, and according to first at this time The non-zero row or non-zero column of matrix, choose row or column from matrix to be processed and are stored, and treat processing array to realize Compression storage, to save memory space.
Furthermore it is possible to the method for this condensation matrix is applied in the scene of various sample drawns, to complete sample It extracts.Specifically, the pending data in application scenarios can be expressed as to the form of matrix, then with this method to To matrix handled, and using the column or row selected as sample data.Later, the sample data selected can be used Pending data is characterized, to reduce the quantity of data to be treated, to increase data processing speed, and reduces data The occupied resource consumption for the treatment of process.
Detailed description of the invention
By reading a detailed description of non-restrictive embodiments in the light of the attached drawings below, the disclosure is other Feature, objects and advantages will become more apparent upon:
Fig. 1 is that one embodiment of the disclosure can be applied to exemplary system architecture figure therein;
Fig. 2 is the flow chart according to one embodiment of the method for storing data of the disclosure;
Fig. 3 is the flow chart according to one embodiment of the method for pushed information of the disclosure;
Fig. 4 is the schematic diagram of an application scenarios of the method according to an embodiment of the present disclosure for pushed information;
Fig. 5 is the flow chart according to one embodiment of the method for detecting article of the disclosure;
Fig. 6 is the structural schematic diagram according to one embodiment of the device for storing data of the disclosure;
Fig. 7 is the structural schematic diagram according to one embodiment of the device for pushed information of the disclosure;
Fig. 8 is the structural schematic diagram according to one embodiment of the device for detecting article of the disclosure;
Fig. 9 is adapted for the structural schematic diagram for realizing the electronic equipment of embodiment of the disclosure.
Specific embodiment
The disclosure is described in further detail with reference to the accompanying drawings and examples.It is understood that this place is retouched The specific embodiment stated is used only for explaining related invention, rather than the restriction to the invention.It also should be noted that in order to Convenient for description, part relevant to related invention is illustrated only in attached drawing.
It should be noted that in the absence of conflict, the feature in embodiment and embodiment in the disclosure can phase Mutually combination.The disclosure is described in detail below with reference to the accompanying drawings and in conjunction with the embodiments.
Fig. 1 is shown can be using the method for storing data of the disclosure or the implementation of device for storing data The exemplary architecture 100 of example.
As shown in Figure 1, system architecture 100 may include terminal device 101,102,103, network 104 and server 105. Network 104 between terminal device 101,102,103 and server 105 to provide the medium of communication link.Network 104 can be with Including various connection types, such as wired, wireless communication link or fiber optic cables etc..
Terminal device 101,102,103 is interacted by network 104 with server 105, to receive or send message etc..Terminal Various client applications can be installed in equipment 101,102,103.For example, the application of browser class, searching class are applied, at data Manage class application etc..
Terminal device 101,102,103 can be hardware, be also possible to software.When terminal device 101,102,103 is hard When part, it can be the various electronic equipments of support matrix processing, including but not limited to smart phone, tablet computer, e-book is read Read device, pocket computer on knee and desktop computer etc..When terminal device 101,102,103 is software, can install In above-mentioned cited electronic equipment.Multiple softwares or software module may be implemented into (such as providing distributed clothes in it The multiple softwares or software module of business), single software or software module also may be implemented into.It is not specifically limited herein.
Server 105 can be to provide the server of various services, and for example, terminal device 101,102,103 provides data The server of support.Server can be handled the matrix to be processed that terminal device is sent based on objective function, with to Row or column is chosen in processing array to be stored.
It should be noted that above-mentioned matrix to be processed can also be stored directly in the local of server 105, server 105 The local matrix to be processed stored can directly be extracted and handled, at this point it is possible to there is no terminal device 101,102, 103 and network 104.
It should be noted that the method provided by embodiment of the disclosure for storing data is generally by server 105 It executes, correspondingly, device for storing data is generally positioned in server 105.
It may also be noted that can also be equipped with data processing class application in terminal device 101,102,103, terminal is set Standby 101,102,103, which can also treat processing array based on the application of data processing class, is handled, at this point, for storing data Method can also be executed by terminal device 101,102,103, and correspondingly, device for storing data also can be set in terminal In equipment 101,102,103.At this point, server 105 and network 104 can be not present in exemplary system architecture 100.
It should be noted that server 105 can be hardware, it is also possible to software.It, can when server 105 is hardware To be implemented as the distributed server cluster that multiple servers form, individual server also may be implemented into.When server 105 is When software, multiple softwares or software module may be implemented into (such as providing multiple softwares of Distributed Services or software mould Block), single software or software module also may be implemented into.It is not specifically limited herein.
It should be understood that the number of terminal device, network and server in Fig. 1 is only schematical.According to realization need It wants, can have any number of terminal device, network and server.
With continued reference to Fig. 2, it illustrates the processes according to one embodiment of the method for storing data of the disclosure 200.The method for storing data the following steps are included:
Step 201, matrix to be processed is obtained.
In the present embodiment, matrix to be processed can be arbitrary matrix.The executing subject of method for storing data (server 105 as shown in Figure 1) can from local or other storage equipment (terminal device as shown in Figure 1 101,102, Etc. 103) matrix to be processed is obtained.
Step 202, the objective function constructed in advance based on matrix to be processed is obtained.
In the present embodiment, objective function can be constructed by technical staff according to specific application scenarios in advance.It is above-mentioned to hold The objective function that row main body can construct in advance from acquisitions such as local or other storage equipment.Above-mentioned executing subject also can receive The objective function of user's input.
Wherein, objective function can be used for characterizing the first specific item scalar functions and the second specific item scalar functions and.First specific item The decision variable of scalar functions and the second specific item scalar functions may include the first matrix.Wherein, the first specific item scalar functions and the second son What objective function was also possible to construct in advance.
Wherein, one of specific item scalar functions are named as the first sub-goal by two sub- objective functions for ease of description Another specific item scalar functions is named as the second specific item scalar functions by function.It will be appreciated by those skilled in the art that therein " the One " does not constitute the particular determination to sub- objective function with " second ".
Step 203, to objective function be adjusted using determine so that the smallest first matrix of the value of objective function as The first matrix of target.
In the present embodiment, according to actual application demand, can use existing various can be used for optimization aim letter Several applications or algorithm (such as gradient descent method) adjust objective function, in the hope of the minimum value of objective function.At this point it is possible to will Corresponding first matrix is as the first matrix of target.
Step 204, the serial number for determining the first array of non-zero of the first matrix of target, according to identified serial number, to from It manages and chooses the second array corresponding with the first array of non-zero and storage in matrix.
In the present embodiment, the first array can be one of a line of matrix and a column, and the second array can be square The other of a line of battle array and a column.In i.e. a kind of situation, the first array can be with table with the row of representing matrix, the second array Show matrix column.In another case, the first array can be with the row of representing matrix with the column of representing matrix, the second array.
Wherein, the serial number of the second array selected from matrix to be processed can be with the sequence of corresponding the first array of non-zero It is number identical.Serial number can refer to row serial number or column serial number.Wherein, serial number can be preassigned by technical staff.For example, generally, It can be successively from left to right first row, secondary series, third column etc. respectively since the upper left corner of matrix, it from top to bottom can be with It is successively the first row, the second row, the third line etc. respectively.
With the row of the first array representation matrix, the second array representation matrix column is as an example, target can be determined first Then it is each non-with the first matrix respectively to choose column serial number from matrix to be processed for the row serial number of each non-zero row of one matrix The identical column of row serial number of zero row.
In some optional implementations of the present embodiment, the number and location for the nonzero element that the first matrix includes can With the value for controlling the first specific item scalar functions, the number of the first array of non-zero of the first matrix can be used for controlling the second son The value of objective function.
At this point it is possible to which the number of the nonzero element for including by adjusting the first matrix controls taking for the first specific item scalar functions Value, so that the number for the nonzero element that the first matrix includes is as far as possible while the value minimum of the first specific item scalar functions It is more.As a result, the nonzero element according to included by the first matrix corresponding row or column selected from matrix to be processed is also more, To realize the compression for treating processing array.
The first specific item scalar functions are controlled at the same time it can also the position for the nonzero element for including by adjusting the first matrix Value, so that the position for the nonzero element that the first matrix includes is as far as possible while the value minimum of the first specific item scalar functions Meet preset condition.As a result, the non-zero according to included by the first matrix corresponding row or column chosen from matrix to be processed Element meets preset condition.
Wherein, preset condition can be arranged according to actual application demand.Under different application scenarios, may have Different optimization aims.For example, it is expected that nonzero element compares concentration, not dispersing excessively under application scenes.In another example Under application scenes, it is expected that nonzero element is uniformly distributed in each row or each column.
Furthermore it is possible to control taking for the second specific item scalar functions by adjusting the number of the first array of non-zero of the first matrix Value, so that while the value minimum of the first specific item scalar functions, the array of the non-zero row of the first matrix or non-zero column is as far as possible It is more.As a result, it is few as far as possible according to the corresponding row or column chosen from matrix to be processed of the first matrix, thus realization pair The compression of matrix to be processed.
Since objective function is expressed as the sum of the first specific item scalar functions and the second specific item scalar functions.Therefore, target letter is adjusted Several minimums adjusts the first matrix so that the first specific item scalar functions with it is the second specific item scalar functions and minimum.In conjunction with above-mentioned point Analysis adjusts objective function so that in the value minimum of objective function, and the number of the first nonzeros is as far as possible It is more, and the non-zero row of the first matrix or the number of non-zero column are more as far as possible, to realize better compression effectiveness.
In some optional implementations of the present embodiment, the first specific item scalar functions can be quadratic function.For two Secondary function is easier to acquire minimum value.
In some optional implementations of the present embodiment, member that the first specific item scalar functions can include with matrix of differences The quadratic sum of element is positively correlated.Wherein, matrix of differences can be determined by the difference of matrix to be processed and product matrix.Wherein, multiply Product matrix can be determined by the product of matrix to be processed and the first matrix.
Wherein, the specific representation of the first specific item scalar functions can be with flexible setting.For example, the first specific item scalar functions can be with Directly it is expressed as the quadratic sum for the element that matrix of differences includes.In another example the first specific item scalar functions can also be expressed as difference square The quadratic sum for the element that battle array includes and the product etc. of default adjusting parameter.
Similarly, the specific representation of matrix of differences can also be with flexible setting.For example, matrix of differences can be expressed as to The difference of processing array and product matrix can also be expressed as the difference of matrix and product matrix to be processed, join with default adjustment Several products etc..
Similarly, the specific representation of product matrix can also be with flexible setting.For example, product matrix can be expressed as to The product of processing array and the first matrix, product matrix can also be expressed as the product of matrix to be processed and the first matrix and preset The sum of adjusting parameter waits.
It should be appreciated that above-mentioned first specific item scalar functions, matrix of differences, product matrix, adjusting parameter etc. can roots The flexible setting according to actual application demand.
Using one specifically example as explanation.Matrix to be processed are as follows: X, the first matrix are as follows: A.So, product matrix can To indicate are as follows: XA.Matrix of differences can indicate are as follows: X-XA.Accordingly, the first specific item scalar functions can indicate are as follows:
Wherein, N can be with total line number of total columns of representing matrix X and matrix A.I can be with the row serial number or square of representing matrix X The column serial number of battle array A.XiIt can be arranged with representing matrix X i-th.AiIt can be with the i-th row of representing matrix A.
Wherein,It can indicate vector (Xi-X Ai) two norms square.
Using above-mentioned example as explanation, it can use the non-zero entry in the first matrix and usually control in selection matrix to be processed Column.Meanwhile by optimization object function, so that the value of objective function is small as far as possible, it is ensured that from matrix to be processed Each column selected can characterize the characteristic information of all column as far as possible, excessive to avoid losing during condensation matrix Information.
It is to illustrate with an example, if having the data of ten column in matrix to be processed almost.At this point, it is desirable that It only needs to choose a column from this ten column and can characterize the data of this ten column.Aforesaid way can be as far as possible from square to be processed Some representative column are picked out in battle array, characterize matrix to be processed to be able to use these column picked out as far as possible In all data.
In some optional implementations of the present embodiment, the second specific item scalar functions can be with each the first of the first matrix The summation of two norms of array is positively correlated.Wherein, the specific representation of the second specific item scalar functions can be with flexible setting.For example, Second specific item scalar functions can be expressed as the summation of two norms of each first array of the first matrix.In another example the second sub-goal Function can also be expressed as each first array of the first matrix and summation etc. of the summation of normal form and default adjusting parameter.
Using one specifically example as explanation.First matrix are as follows: A.So the second specific item scalar functions can be with are as follows:
Wherein, N can be with total line number of representing matrix A and total columns.I can be with the row serial number of representing matrix A.AiIt can indicate The i-th row of matrix A.
||Ai||2It can be with corresponding two norm of the i-th row of representing matrix A.
Using the row of the first array representation matrix as explanation, this mode can pass through the non-zero row of the first matrix of control Number, and then reach the number for the column that control is selected from matrix to be processed, few Lie Laibiao is selected as far as possible to realize The data in matrix to be processed are levied, the occupied memory space of compressed matrix is further reduced.
In some optional implementations of the present embodiment, the second specific item scalar functions can be used for characterizing first function and The sum of second function.Wherein, objective function, first function, second function decision variable may include primary vector.Wherein, The number of the first array of non-zero of first matrix can be positively correlated with the number of the nonzero element of primary vector.
Wherein, first function and second function can be preset by technical staff.By the non-zero that the first matrix is arranged The number of the nonzero element of the number and primary vector of first array is positively correlated, can be by adjusting the nonzero element of primary vector Number control the first matrix non-zero row or non-zero column number.
In some optional implementations of the present embodiment, first function can be with the summation of target numbers quotient just It is related.Wherein, target numbers can be the number for the element that primary vector includes, and target numbers quotient is respectively the first matrix Each first array two norms serial number that square include with primary vector, corresponding element quotient.
Wherein, corresponding relationship is illustrated with a line of first the first matrix of array representation.Each quotient can be the first square The quotient of the element of serial number that two norms of a line of battle array include with primary vector, corresponding.Wherein, corresponding serial number can refer to and the The corresponding element of row serial number of a line of one matrix.If primary vector is row vector, then, the element of corresponding serial number can refer to column Serial number element identical with the row serial number of a line of the first matrix.If primary vector is column vector, then, the element of corresponding serial number It can refer to row serial number element identical with the row serial number of a line of the first matrix.
Wherein, the specific representation of first function can be with flexible setting.For example, first function can be expressed as number of targets The summation of mesh quotient.In another example first function can also be expressed as the summation and default adjusting parameter of target numbers quotient Product etc..
Using a specific example as explanation.First matrix can be with are as follows: A.Primary vector can be with are as follows: B.First function can To indicate are as follows:
Wherein, N can be with total element number of total line number of representing matrix A, total columns and vector B.I can indicate square The row serial number of battle array A, j can be with the element numbers of the column serial number of representing matrix A and vector B.AI, jIt can be with representing matrix A the i-th row jth The element of column.BiIt can indicate j-th of element of vector B.
Using the row of the first array representation matrix as explanation, this mode can make two norms of each row of the first matrix It is mutually restricted between the element of serial number that include with primary vector, corresponding.So as to by adjusting primary vector include it is each The value of element controls the values of two norms of each row of the first matrix, that is, controls the value of the second specific item scalar functions.
In some optional implementations of the present embodiment, second function can be with a norm positive of primary vector It closes.Wherein, the specific representation of second function can be with flexible setting.For example, second function can be expressed as primary vector One norm.In another example second function can also be expressed as a norm of primary vector and the product etc. of default adjusting parameter.
Using a specific example as explanation.Primary vector are as follows: B.Second function can indicate are as follows:
γ|B|1
Wherein, γ can be preset adjusting parameter.
|B|1It can indicate a norm of vector B.
By the row of the first array representation matrix as an example, can control the value of primary vector each element in a manner of this, When so that the value of objective function is smaller, the value of each element of primary vector also wants relatively small, to influence the first matrix The summation of two norms of each row also wants relatively small, that is, the number for controlling the neutral element that the first matrix rows include is more and non- Zero row is as more as possible.
The mutual restriction for passing through the first specific item scalar functions and the second specific item scalar functions, is chosen from the first matrix with realizing Row as few as possible out, while enabling the corresponding matrix column to be processed of row chosen to characterize matrix to be processed as far as possible The data characteristics respectively arranged.
The method for storing data provided by the above embodiment of the disclosure by the objective function constructed in advance into Row adjustment, the non-zero row or non-zero column of the smallest first matrix of value of objective function is made with basis, from matrix to be processed It chooses row or column to be stored, so that the compression storage for treating processing array is realized, to save memory space.
Furthermore it is possible to apply the method for storing data provided by the above embodiment of the disclosure for a kind of extraction sample This method.Specifically, the pending data in practical application can be expressed as to the form of matrix, then with this method Obtained matrix is handled, and using the column or row selected as sample data.Later, the sample selected can be used Data characterize pending data, to reduce the quantity of data to be treated, to increase data processing speed, and reduce The occupied resource consumption of data handling procedure.
With continued reference to Fig. 3, it illustrates the processes 300 of another embodiment of the method for pushed information.This is used for The process 300 of the method for pushed information, comprising the following steps:
Step 301, the first user identifier collection is obtained, and obtains second user identification sets.
In the present embodiment, the executing subject for the method for pushed information can be server 105 shown in FIG. 1, It can be other electronic equipments.User identifier in first user identifier collection and second user identification sets can be and various can use In the mark of characterization user.For example, user identifier can be mark (such as unique device identifier of the corresponding terminal device of user Deng), it is also possible to the corresponding user's name of user, subscriber mailbox etc..
Above-mentioned executing subject can obtain the first user identifier collection and second user mark from local or other storage equipment Collection.Above-mentioned executing subject can also obtain the first user identifier collection and second user identification sets from third party's data platform.Wherein, First user identifier collection and second user identification sets can be obtained from same electronic equipment, can also be obtained from different electronic equipments It takes.
Wherein, the user identifier in the user and second user identification sets of the user identifier instruction that the first user identifier is concentrated The user of instruction can determine according to actual application demand.First user identifier collection and second user identification sets can phases Together, it can also be different.First user identifier collection and second user identification sets can have intersection, can also be without intersection.
It should be noted that two user identifier collection for ease of description, are named as one of user identifier collection Another user identifier collection is named as second user identification sets by one user identifier collection.It will be appreciated by those skilled in the art that its In " first " and " second " do not constitute the particular determination to user.
Step 302, information to be pushed is obtained.
In the present embodiment, information to be pushed can arbitrary information.For example, information to be pushed can be picture, text, Video, audio etc..Similarly, above-mentioned executing subject can be obtained from local, other storage equipment or third party's data platform Information to be pushed.
Step 303, user's matrix is obtained.
In the present embodiment, above-mentioned executing subject can be obtained from local, other storage equipment or third party's data platform User's matrix.Wherein, the user identifier that each first array of user's matrix can correspond respectively to the first user identifier concentration refers to The user shown.Each second array of user's matrix can correspond respectively to the use of the instruction of the user identifier in second user identification sets Family.The element of user's matrix can be used to indicate that the user for the user identifier instruction that the first user identifier is concentrated to second user mark Know the operation data of the information of the user's sharing for the user identifier instruction concentrated.
Wherein, the first array can be one of a line of matrix and a column, and the second array can be a line of matrix With one column the other of.
The information that user shares can refer to the arbitrary information shown according to the instruction of user.The form of sharing information according to Specific application scenarios and change.For example, the user home page sharing information that user can register in some applications.In another example User can be by some video class application recorded videos come sharing information.
Wherein, operation data can refer to the relevant various data of user's operation.User's operation can refer to clicking operation, sliding The various user's operations such as operation, collection operation, browse operation, comment operation.
Operation data can be determined according to actual application demand.For example, operation data can refer to the first user identifier Whether the information for user's sharing that the user of the user identifier instruction of concentration indicates the user identifier in second user identification sets Executed any user operation that preset user's operation is concentrated.If the user for the user identifier instruction that the first user identifier is concentrated The information shared to the user of the user identifier instruction in second user identification sets executed any user operation, then can set Setting corresponding operation data is 1.If the user for the user identifier instruction that the first user identifier is concentrated is in second user identification sets User identifier instruction user share information be not carried out any user operation, then corresponding operation data can be set It is 0.
In another example operation data can also refer to the user for the user identifier instruction that the first user identifier is concentrated to second user The number of clicks for the information that the user of user identifier instruction in identification sets shares.
Step 304, user's matrix is handled, to obtain the second array selected from user's matrix.
In the present embodiment, it can use method described in the corresponding embodiment of Fig. 2 for storing data for user Matrix is handled user's matrix as matrix to be processed.Thus, it is possible to obtain the row selected from user's matrix or Column.
Step 305, the user identifier into the selected corresponding second user identification sets of the second array indicates The corresponding terminal device of user pushes information to be pushed.
In the present embodiment, with the second array representation matrix column as an example, if selecting three column from user's matrix. It is possible to the corresponding terminal device of user that the user identifier into this corresponding second user identification sets of three column indicates Push information to be pushed.
With continued reference to the signal that Fig. 4, Fig. 4 are according to the application scenarios of the method for pushed information of the present embodiment Figure 40 0.In the application scenarios of Fig. 4, the executing subject (server 105 as shown in Figure 1) of the method for pushed information can To obtain the first user identifier collection 401 and second user identification sets 402 first.As shown in the figure, the first user identifier Ji401Bao Include 3 user identifiers, respectively " D ", " E ", " F ".Second user identification sets 402 include 3 user identifiers, respectively " A ", “B”、“C”。
Later, available user's matrix 403.As shown in the figure, the first row of user's matrix 403 corresponds to user identifier The user of " D " instruction, the second row correspond to the user of user identifier " E " instruction, and the third line corresponds to the use of user identifier " F " instruction Family.The first row of user's matrix 403 corresponds to the user of user identifier " A " instruction, and secondary series corresponds to the use of user identifier " B " instruction Family, third arrange the user of corresponding user identifier " C " instruction.
Wherein, the element in user's matrix 403 is for indicating that the element is expert at corresponding user for the element institute In the number of clicks for arranging the information that corresponding user shares.As shown in the figure, the user to user mark of user identifier " D " instruction The number of clicks for the information that the user of " A " instruction shares is 20, the click to the information that the user of user identifier " B " instruction shares Number is 10, does not click the information that the user of user identifier " C " instruction shares.
The number of clicks for the information that the user of user to user mark " A " instruction of user identifier " E " instruction shares is 10, The information not clicking user identifier " B " and sharing with the user that user identifier " C " indicates respectively.
The number of clicks for the information that the user of user to user mark " C " instruction of user identifier " F " instruction shares is 10, The information not clicking user identifier " A " and sharing with the user that user identifier " B " indicates respectively.
Later, the objective function F (T) constructed in advance can be adjusted, to determine that objective function F (T) is minimized When corresponding matrix T (as shown in figure label 404).As shown in the figure, the non-zero row of matrix T includes the first row and the third line.
Therefore, as shown in figure label 405, first row and third column can be chosen from user's matrix 403.Wherein, it uses The first row of family matrix corresponds to the user of user identifier " A " instruction, and third arranges the user of corresponding user identifier " C " instruction.Later, The pushed information 406, Yi Jixiang formerly obtained can be pushed to the corresponding terminal device 407 of user that user identifier " A " is indicated The corresponding terminal device 408 of user of user identifier " C " instruction pushes the pushed information 406 formerly obtained.
The method provided by the above embodiment of the disclosure using method described in Fig. 2 corresponding embodiment to user's matrix into Row processing, so as to the selected part row or column from user's matrix.It, can be by the corresponding user of the row or column of selection based on this The sample representation of corresponding all users as user's matrix rows or is respectively arranged, only to these target user's pushed informations, to subtract The number of the user of pushed information is received, less to mitigate the resource load in process of information push.
With continued reference to Fig. 5, it illustrates the processes 500 of another embodiment of the method for detecting article.This is used for Detect the process 500 of the method for article, comprising the following steps:
Step 501, target item identification sets are obtained.
In the present embodiment, it can be server 105 as shown in Figure 1 for detecting the executing subject of the method for article, It is also possible to other electronic equipments.Executing subject can obtain target item identification sets from local or other storage equipment etc..
Wherein, the article mark in target item identification sets can be by the preassigned some article marks of technical staff Composed set is also possible to according to composed by the corresponding article mark of some articles that preset screening conditions select Set.Wherein, article mark can be arbitrary the information that can be identified for that different articles.For example, article mark can be article Coding etc..
Step 502, article matrix is obtained.
In the present embodiment, above-mentioned executing subject can obtain article matrix from local or other storage equipment.Wherein, object Each first array of product matrix can correspond respectively to the attribute of preset attribute concentration.Each second array of article matrix can divide Not Dui Yingyu article mark instruction in target item identification sets article.The element of article matrix can be used to indicate that object The attribute value of the article of article mark instruction in product identification sets.
Wherein, the first array is one of a line and a column of matrix, and the second array is in a line and a column of matrix Another one.Wherein, preset attribute collection can be preset by technical staff.For example, preset attribute collection includes weight, volume Deng.
Step 503, article matrix is handled, to obtain the second array selected from article matrix.
In the present embodiment, it can use method described in the corresponding embodiment of Fig. 2, using article matrix as to be processed Matrix handles article matrix, so as to obtain the row or column selected from article matrix.
Step 504, in response to determining that the number of the second array in the second selected array, to meet preset condition is small In preset quantity threshold, alarm signal is issued.
In the present embodiment, preset condition and quantity threshold can be carried out by technical staff according to specific application scenarios Setting.Alarm signal can be various standby signals.For example, alarm signal can be preset audio etc..
It is illustrated with a specific example.The each column of article matrix respectively corresponds an article.Every row of article matrix Respectively correspond the weight of article and the volume of article.At this point it is possible to using method described in the corresponding embodiment of Fig. 2 from article Part column are selected in matrix.
Preset condition can be used to indicate that the value range of the weight of article and the value range of volume.At this point it is possible to right The specific value of weight and volume in each column of selected taking-up is verified, and determines if to meet preset condition restriction The corresponding value range of weight and volume.In turn, corresponding weight and volume can be selected all from each column of selection Meet the column of preset condition.
If the weight and volume of the article of production can be used to characterize the quality of article.So, if meeting preset condition The number of column is less than preset quantity threshold, then shows in the corresponding each article of each column of article matrix, it is understood that there may be The article of quality problems is more.Therefore, can by issue alarm signal come prompt related personnel it is corresponding to article matrix this It criticizes article and repairs processing etc..
The method provided by the above embodiment of the disclosure using method described in Fig. 2 corresponding embodiment to article matrix into Row processing, so as to the selected part row or column from article matrix.It, can be by the corresponding article of the row or column of selection based on this As article matrix rows or respectively arrange the sample representation of corresponding all items.By to represented by these row or column selected The attribute value of article is detected, and does not meet preset condition to determine each row selected or respectively arrange attribute value in corresponding article Article number it is whether more.If the number that attribute value does not meet the article of preset condition is excessive, alarm signal can be issued To prompt related personnel to carry out further details of detection or other processing to article in time, avoids the occurrence of excessive attribute value and be not inconsistent Close preset condition article (such as faulty materials) and caused by lose.
With further reference to Fig. 6, as the realization to method shown in above-mentioned Fig. 2, present disclose provides for storing data One embodiment of device, the Installation practice is corresponding with embodiment of the method shown in Fig. 2, which specifically can be applied to In various electronic equipments.
As shown in fig. 6, device 600 for storing data provided in this embodiment includes matrix acquiring unit to be processed 601, objective function acquiring unit 602, adjustment unit 603 and storage unit 604.Wherein, 601 quilt of matrix acquiring unit to be processed It is configured to obtain matrix to be processed;Objective function acquiring unit 602 is configured to obtain to be constructed based on matrix to be processed in advance Objective function, wherein objective function be used to characterize the first specific item scalar functions and the second specific item scalar functions and, the first specific item offer of tender Several and the second specific item scalar functions decision variables include the first matrix;Adjustment unit 603 is configured to adjust objective function It is whole to determine so that the smallest first matrix of the value of objective function is as the first matrix of target;Storage unit 604 is configured to The serial number for determining the first array of non-zero of the first matrix of target, according to identified serial number, chosen from matrix to be processed with it is non- Corresponding second array of 0 first array and storage, wherein the first array be matrix a line and one column one of, second Array is the other of a line and a column of matrix, the serial number of the second selected array and corresponding the first array of non-zero Serial number is identical.
In the present embodiment, in device 600 for storing data: matrix acquiring unit 601 to be processed, objective function obtain The specific processing and its brought technical effect for taking unit 602, adjustment unit 603 and storage unit 604 can refer to Fig. 2 respectively The related description of step 201, step 202, step 203 and step 204 in corresponding embodiment, details are not described herein.
In some optional implementations of the present embodiment, the number and location for the nonzero element that the first matrix includes are used In the value for controlling the first specific item scalar functions, the number of the first array of non-zero of the first matrix is for controlling the second specific item scalar functions Value.
In some optional implementations of the present embodiment, the first specific item scalar functions are quadratic function.
In some optional implementations of the present embodiment, element that the first specific item scalar functions and matrix of differences include Quadratic sum is positively correlated, wherein matrix of differences is determined by the difference of matrix to be processed and product matrix, wherein product matrix is logical The product for crossing matrix to be processed and the first matrix determines.
In some optional implementations of the present embodiment, each first array of the second specific item scalar functions and the first matrix Two norms summation be positively correlated.
In some optional implementations of the present embodiment, the second specific item scalar functions are for characterizing first function and second The sum of function, wherein objective function, first function, second function decision variable include primary vector, wherein the first matrix The first array of non-zero number and primary vector nonzero element number be positively correlated.
In some optional implementations of the present embodiment, the summation positive of first function and target numbers quotient It closes, wherein target numbers are the number of the primary vector element that includes, and target numbers quotient is respectively each the of the first matrix The quotient of the element of the serial number that square include with primary vector, corresponding of two norms of one array.
In some optional implementations of the present embodiment, a norm of second function and primary vector is positively correlated.
The device provided by the above embodiment of the disclosure obtains matrix to be processed by matrix acquiring unit to be processed;Mesh Scalar functions acquiring unit obtains the objective function constructed in advance based on matrix to be processed, wherein objective function is for characterizing first Specific item scalar functions and the second specific item scalar functions and, the decision variable of the first specific item scalar functions and the second specific item scalar functions includes the One matrix;Adjustment unit is adjusted to objective function to determine so that the smallest first matrix of the value of objective function is as mesh Mark the first matrix;Storage unit determines the serial number of the first array of non-zero of the first matrix of target, according to identified serial number, to The second array corresponding with the first array of non-zero and storage are chosen in processing array, wherein the first array is a line of matrix With one column one of, the second array be matrix a line and one column the other of, the serial number of the second selected array with The serial number of corresponding the first array of non-zero is identical, so that the compression storage for treating processing array is realized, to save memory space.
With further reference to Fig. 7, as the realization to method shown in above-mentioned Fig. 3, present disclose provides for pushed information One embodiment of device, the Installation practice is corresponding with embodiment of the method shown in Fig. 3, which specifically can be applied to In various electronic equipments.
As shown in fig. 7, the device 700 provided in this embodiment for pushed information includes user identifier collection acquiring unit 701, information to be pushed acquiring unit 702, user's matrix acquiring unit 703, user's matrix disposal unit 704 and push unit 705.Wherein, user identifier collection acquiring unit 701 is configured to obtain the first user identifier collection, and obtains second user mark Collection;Information to be pushed acquiring unit 702 is configured to obtain information to be pushed;User's matrix acquiring unit 703 is configured to obtain Take family matrix, wherein each first array of user's matrix corresponds respectively to the user identifier instruction of the first user identifier concentration User, each second array of user's matrix correspond respectively to the user identifier in second user identification sets instruction user, use The element of family matrix is used to indicate the user for the user identifier instruction that the first user identifier is concentrated in second user identification sets The operation data for the information that the user of user identifier instruction shares, wherein the first array is one in a line and a column of matrix Person, the second array are the other of a line and a column of matrix;User's matrix disposal unit 704 is configured to determine user's square Battle array is used as matrix to be processed, is handled using the method as described in implementation any in first aspect user's matrix, with Obtain the second array selected from user's matrix;Push unit 705 is configured to right respectively to the second selected array The corresponding terminal device of user of user identifier instruction in the second user identification sets answered pushes information to be pushed.
In the present embodiment, in the device of pushed information 700: user identifier collection acquiring unit 701, information to be pushed Acquiring unit 702, user's matrix acquiring unit 703, user's matrix disposal unit 704 and push unit 705 specific processing and Its brought technical effect can be respectively with reference to step 301, the step 302, step 303, step 304 in Fig. 3 corresponding embodiment With the related description of step 305, details are not described herein.
The device provided by the above embodiment of the disclosure obtains the first user identifier by user identifier collection acquiring unit Collection, and obtain second user identification sets;Information to be pushed acquiring unit obtains information to be pushed;User's matrix acquiring unit obtains Take family matrix, wherein each first array of user's matrix corresponds respectively to the user identifier instruction of the first user identifier concentration User, each second array of user's matrix correspond respectively to the user identifier in second user identification sets instruction user, use The element of family matrix is used to indicate the user for the user identifier instruction that the first user identifier is concentrated in second user identification sets The operation data for the information that the user of user identifier instruction shares, wherein the first array is one in a line and a column of matrix Person, the second array are the other of a line and a column of matrix;User's matrix disposal unit determines that user's matrix is used as wait locate Matrix is managed, user's matrix is handled using method described in Fig. 2 corresponding embodiment, to obtain choosing from user's matrix The second array out;User identifier of the push unit into the selected corresponding second user identification sets of the second array refers to The corresponding terminal device of the user shown pushes information to be pushed, thus only user identifier instruction into second user identification sets Certain customers' pushed information in user reduces the number for receiving the user of pushed information, to mitigate in process of information push Resource load.
With further reference to Fig. 8, as the realization to method shown in above-mentioned Fig. 5, present disclose provides for detecting article One embodiment of device, the Installation practice is corresponding with embodiment of the method shown in fig. 5, which specifically can be applied to In various electronic equipments.
As shown in figure 8, the device 800 provided in this embodiment for detecting article includes article mark collection acquiring unit 801, article matrix acquiring unit 802, article matrix disposal unit 803 and Alarm Unit 804.Wherein, article mark collection obtains Unit 801 is configured to obtain target item identification sets;Article matrix acquiring unit 802 is configured to obtain article matrix, In, each first array of article matrix corresponds respectively to the attribute of preset attribute concentration, each second array difference of article matrix Corresponding to the article of the article mark instruction in target item identification sets, the element of article matrix is for indicating that target item identifies Concentration article mark instruction article attribute value, wherein the first array be matrix a line and one column one of, second Array is the other of a line and a column of matrix;Article matrix disposal unit 803 is configured to determine article matrix conduct Matrix to be processed is handled article matrix using the method as described in implementation any in first aspect, with obtain from The second array selected in article matrix;Alarm Unit 804 be configured in response to determine it is in the second selected array, The number for meeting the second array of preset condition is less than preset quantity threshold, issues alarm signal.
In the present embodiment, in the device 800 for detecting article: article mark collection acquiring unit 801, article matrix obtain The specific processing and its brought technical effect for taking unit 802, article matrix disposal unit 803 and Alarm Unit 804 can divide Not Can Kao step 501, step 502, the related description of step 503 and step 504 in Fig. 5 corresponding embodiment, it is no longer superfluous herein It states.
The device provided by the above embodiment of the disclosure obtains target item mark by article mark collection acquiring unit Collection;Article matrix acquiring unit obtains article matrix, wherein each first array of article matrix corresponds respectively to preset attribute collection In attribute, each second array of article matrix correspond respectively to the article mark in target item identification sets instruction article, The element of article matrix is used to indicate the attribute value of the article of the article mark instruction in target item identification sets, wherein first Array is one of a line and a column of matrix, and the second array is the other of a line and a column of matrix;Article matrix Processing unit determine article matrix as matrix to be processed, using method described in Fig. 2 corresponding embodiment to article matrix into Row processing, to obtain the second array selected from article matrix;Alarm Unit is in response to determining the second selected array In, the number of the second array for meeting preset condition be less than preset quantity threshold, alarm signal is issued, thus detecting The number that attribute value does not meet the article of preset condition is excessive, issues alarm signal in time to prompt related personnel to carry out article It is further details of detection or other processing, avoid the occurrence of excessive attribute value do not meet preset condition article (such as faulty materials) and Caused by lose.
Below with reference to Fig. 9, it illustrates the electronic equipment that is suitable for being used to realize embodiment of the disclosure, (example is as shown in figure 1 Server) 900 structural schematic diagram.Terminal device in embodiment of the disclosure can include but is not limited to such as notebook electricity The mobile terminal of brain, PDA (personal digital assistant), PAD (tablet computer), car-mounted terminal (such as vehicle mounted guidance terminal) etc. with And the fixed terminal of such as number TV, desktop computer etc..Server shown in Fig. 9 is only an example, should not be to this The function and use scope of disclosed embodiment bring any restrictions.
As shown in figure 9, electronic equipment 900 may include processing unit (such as central processing unit, graphics processor etc.) 901, random access can be loaded into according to the program being stored in read-only memory (ROM) 902 or from storage device 908 Program in memory (RAM) 903 and execute various movements appropriate and processing.In RAM 903, it is also stored with electronic equipment Various programs and data needed for 900 operations.Processing unit 901, ROM 902 and RAM 903 pass through the phase each other of bus 904 Even.Input/output (I/O) interface 905 is also connected to bus 904.
In general, following device can connect to I/O interface 905: including such as touch screen, touch tablet, keyboard, mouse, taking the photograph As the input unit 906 of head, microphone, accelerometer, gyroscope etc.;Including such as liquid crystal display (LCD), loudspeaker, vibration The output device 907 of dynamic device etc.;Storage device 908 including such as tape, hard disk etc.;And communication device 909.Communication device 909, which can permit electronic equipment 900, is wirelessly or non-wirelessly communicated with other equipment to exchange data.Although Fig. 9 shows tool There is the electronic equipment 900 of various devices, it should be understood that being not required for implementing or having all devices shown.It can be with Alternatively implement or have more or fewer devices.Each box shown in Fig. 9 can represent a device, can also root According to needing to represent multiple devices.
Particularly, in accordance with an embodiment of the present disclosure, it may be implemented as computer above with reference to the process of flow chart description Software program.For example, embodiment of the disclosure includes a kind of computer program product comprising be carried on computer-readable medium On computer program, which includes the program code for method shown in execution flow chart.In such reality It applies in example, which can be downloaded and installed from network by communication device 909, or from storage device 908 It is mounted, or is mounted from ROM 902.When the computer program is executed by processing unit 901, the implementation of the disclosure is executed The above-mentioned function of being limited in the method for example.
It should be noted that computer-readable medium described in embodiment of the disclosure can be computer-readable signal Medium or computer readable storage medium either the two any combination.Computer readable storage medium for example can be with System, device or the device of --- but being not limited to --- electricity, magnetic, optical, electromagnetic, infrared ray or semiconductor, or it is any more than Combination.The more specific example of computer readable storage medium can include but is not limited to: have one or more conducting wires Electrical connection, portable computer diskette, hard disk, random access storage device (RAM), read-only memory (ROM), erasable type are programmable Read-only memory (EPROM or flash memory), optical fiber, portable compact disc read-only memory (CD-ROM), light storage device, magnetic are deposited Memory device or above-mentioned any appropriate combination.In embodiment of the disclosure, computer readable storage medium, which can be, appoints What include or the tangible medium of storage program that the program can be commanded execution system, device or device use or and its It is used in combination.And in embodiment of the disclosure, computer-readable signal media may include in a base band or as carrier wave The data-signal that a part is propagated, wherein carrying computer-readable program code.The data-signal of this propagation can be adopted With diversified forms, including but not limited to electromagnetic signal, optical signal or above-mentioned any appropriate combination.Computer-readable signal is situated between Matter can also be any computer-readable medium other than computer readable storage medium, which can be with It sends, propagate or transmits for by the use of instruction execution system, device or device or program in connection.Meter The program code for including on calculation machine readable medium can transmit with any suitable medium, including but not limited to: electric wire, optical cable, RF (radio frequency) etc. or above-mentioned any appropriate combination.
Above-mentioned computer-readable medium can be included in above-mentioned electronic equipment;It is also possible to individualism, and not It is fitted into the electronic equipment.Above-mentioned computer-readable medium carries one or more program, when said one or more When a program is executed by the electronic equipment, so that the electronic equipment: obtaining matrix to be processed;It obtains preparatory based on matrix to be processed The objective function of building, wherein objective function be used to characterize the first specific item scalar functions and the second specific item scalar functions and, first is sub The decision variable of objective function and the second specific item scalar functions includes the first matrix;Objective function is adjusted to determine so that mesh The smallest first matrix of the value of scalar functions is as the first matrix of target;Determine the sequence of the first array of non-zero of the first matrix of target Number, according to identified serial number, the second array corresponding with the first array of non-zero and storage are chosen from matrix to be processed, In, the first array is one of a line and a column of matrix, and the second array is the other of a line and a column of matrix, institute The serial number for the second array chosen is identical as the serial number of corresponding the first array of non-zero.
The behaviour for executing embodiment of the disclosure can be write with one or more programming languages or combinations thereof The computer program code of work, programming language include object oriented program language-such as Java, Smalltalk, C++ further include conventional procedural programming language-such as " C " language or similar program design language Speech.Program code can be executed fully on the user computer, partly be executed on the user computer, as an independence Software package execute, part on the user computer part execute on the remote computer or completely in remote computer or It is executed on server.In situations involving remote computers, remote computer can pass through the network of any kind --- packet Include local area network (LAN) or wide area network (WAN) --- it is connected to subscriber computer, or, it may be connected to outer computer (such as It is connected using ISP by internet).
Flow chart and block diagram in attached drawing are illustrated according to the system of the various embodiments of the disclosure, method and computer journey The architecture, function and operation in the cards of sequence product.In this regard, each box in flowchart or block diagram can generation A part of one module, program segment or code of table, a part of the module, program segment or code include one or more use The executable instruction of the logic function as defined in realizing.It should also be noted that in some implementations as replacements, being marked in box The function of note can also occur in a different order than that indicated in the drawings.For example, two boxes succeedingly indicated are actually It can be basically executed in parallel, they can also be executed in the opposite order sometimes, and this depends on the function involved.Also it to infuse Meaning, the combination of each box in block diagram and or flow chart and the box in block diagram and or flow chart can be with holding The dedicated hardware based system of functions or operations as defined in row is realized, or can use specialized hardware and computer instruction Combination realize.
Being described in unit involved in embodiment of the disclosure can be realized by way of software, can also be passed through The mode of hardware is realized.Described unit also can be set in the processor, for example, can be described as: a kind of processor Including matrix acquiring unit to be processed, objective function acquiring unit, adjustment unit and storage unit.Wherein, the name of these units Claim not constituting the restriction to the unit itself under certain conditions, for example, matrix acquiring unit to be processed can also be described For " unit for obtaining matrix to be processed ".
Above description is only the preferred embodiment of the disclosure and the explanation to institute's application technology principle.Those skilled in the art Member it should be appreciated that embodiment of the disclosure involved in invention scope, however it is not limited to the specific combination of above-mentioned technical characteristic and At technical solution, while should also cover do not depart from foregoing invention design in the case where, by above-mentioned technical characteristic or its be equal Feature carries out any combination and other technical solutions for being formed.Such as disclosed in features described above and embodiment of the disclosure (but It is not limited to) technical characteristic with similar functions is replaced mutually and the technical solution that is formed.

Claims (15)

1. a kind of method for storing data, comprising:
Obtain matrix to be processed;
Obtain the objective function constructed in advance based on the matrix to be processed, wherein the objective function is for characterizing the first son Objective function and the second specific item scalar functions and, the decision variable of the first specific item scalar functions and the second specific item scalar functions Including the first matrix;
The objective function is adjusted to determine so that the smallest first matrix of the value of the objective function is as target First matrix;
The serial number for determining the first array of non-zero of first matrix of target, according to identified serial number, from the square to be processed Corresponding with first array of non-zero the second array and storage are chosen in battle array, wherein the first array be matrix a line with One column one of, the second array be matrix a line and one column the other of, the serial number of the second selected array with it is right The serial number for the first array of non-zero answered is identical.
2. according to the method described in claim 1, wherein, the number and location for the nonzero element that first matrix includes are used for The value of the first specific item scalar functions is controlled, the number of the first array of non-zero of first matrix is for controlling described second The value of specific item scalar functions.
3. according to the method described in claim 1, wherein, the first specific item scalar functions are quadratic function.
4. according to the method described in claim 1, wherein, the element that the first specific item scalar functions include with matrix of differences is put down Side and positive correlation, wherein the matrix of differences is determined by the difference of the matrix to be processed and product matrix, wherein described Product matrix is determined by the product of the matrix to be processed and first matrix.
5. according to the method described in claim 1, wherein, the second specific item scalar functions are counted with each the first of first matrix The summation of two norms of group is positively correlated.
6. according to the method described in claim 1, wherein, the second specific item scalar functions are for characterizing first function and the second letter Several sums, wherein the objective function, first function, second function decision variable include primary vector, wherein described The number of the nonzero element of the number and primary vector of the first array of non-zero of one matrix is positively correlated.
7. according to the method described in claim 6, wherein, the summation positive correlation of the first function and target numbers quotient, Wherein, the target numbers are the number for the element that the primary vector includes, and the target numbers quotient is respectively described The quotient of the element of the serial number that square include with primary vector, corresponding of two norms of each first array of the first matrix.
8. according to the method described in claim 6, wherein, a norm of the second function and the primary vector is positively correlated.
9. a kind of device for storing data, comprising:
Matrix acquiring unit to be processed, is configured to obtain matrix to be processed;
Objective function acquiring unit is configured to obtain the objective function constructed in advance based on the matrix to be processed, wherein institute State objective function for characterize the first specific item scalar functions and the second specific item scalar functions and, the first specific item scalar functions and described The decision variable of second specific item scalar functions includes the first matrix;
Adjustment unit is configured to be adjusted the objective function to determine so that the value of the objective function is the smallest First matrix is as the first matrix of target;
Storage unit is configured to determine the serial number of the first array of non-zero of first matrix of target, according to identified sequence Number, the second array corresponding with first array of non-zero and storage are chosen from the matrix to be processed, wherein the first number Group is one of a line and a column of matrix, and the second array is the other of a line and a column of matrix, selected the The serial number of two arrays is identical as the serial number of corresponding the first array of non-zero.
10. a kind of method for pushed information, comprising:
The first user identifier collection is obtained, and obtains second user identification sets;
Obtain information to be pushed;
Obtain user's matrix, wherein each first array of user's matrix corresponds respectively to first user identifier and concentrates User identifier instruction user, each second array of user's matrix corresponds respectively in the second user identification sets The user of user identifier instruction, the user identifier that the element of user's matrix is used to indicate that first user identifier is concentrated refer to The operation data for the information that the user shown shares the user of the user identifier instruction in the second user identification sets, wherein First array is one of a line and a column of matrix, and the second array is the other of a line and a column of matrix;
User's matrix is determined as matrix to be processed, using method as described in one of claim 1-8 to the user Matrix is handled, to obtain the second array selected from user's matrix;
The user of user identifier instruction into the selected corresponding second user identification sets of the second array is corresponding Terminal device push the information to be pushed.
11. a kind of device for pushed information, comprising:
User identifier collection acquiring unit is configured to obtain the first user identifier collection, and obtains second user identification sets;
Information to be pushed acquiring unit is configured to obtain information to be pushed;
User's matrix acquiring unit, is configured to obtain user's matrix, wherein each first array of user's matrix is right respectively The user for the user identifier instruction that first user identifier described in Ying Yu is concentrated, each second array of user's matrix respectively correspond The user of user identifier instruction in the second user identification sets, the element of user's matrix is for indicating described first User point of the user for the user identifier instruction that user identifier is concentrated to the user identifier instruction in the second user identification sets The operation data for the information enjoyed, wherein the first array is one of a line and a column of matrix, and the second array is the one of matrix The other of row and a column;
User's matrix disposal unit is configured to determine user's matrix as matrix to be processed, utilizes such as claim 1-8 One of described in method user's matrix is handled, to obtain the second array selected from user's matrix;
Push unit is configured to user's mark into the selected corresponding second user identification sets of the second array The corresponding terminal device of user for knowing instruction pushes the information to be pushed.
12. a kind of method for detecting article, comprising:
Obtain target item identification sets;
Obtain article matrix, wherein each first array of the article matrix corresponds respectively to the attribute of preset attribute concentration, institute Each second array for stating article matrix corresponds respectively to the article of the article mark instruction in the target item identification sets, described The element of article matrix is used to indicate the attribute value of the article of the article mark instruction in the target item identification sets, wherein First array is one of a line and a column of matrix, and the second array is the other of a line and a column of matrix;
The article matrix is determined as matrix to be processed, using method as described in one of claim 1-8 to the article Matrix is handled, to obtain the second array selected from the article matrix;
In response to determining that the number of the second array in the second selected array, to meet preset condition is less than preset number Threshold value issues alarm signal.
13. a kind of for detecting the device of article, comprising:
Article mark collection acquiring unit, is configured to obtain target item identification sets;
Article matrix acquiring unit, is configured to obtain article matrix, wherein each first array of the article matrix is right respectively The attribute that should be concentrated in preset attribute, each second array of the article matrix correspond respectively in the target item identification sets Article mark instruction article, the element of the article matrix is used to indicate the article mark in the target item identification sets The attribute value of the article of instruction, wherein the first array is one of a line and a column of matrix, and the second array is the one of matrix The other of row and a column;
Article matrix disposal unit is configured to determine the article matrix as matrix to be processed, utilizes such as claim 1-8 One of described in method the article matrix is handled, to obtain the second array selected from the article matrix;
Alarm Unit is configured in response to determine the second array in the second selected array, to meet preset condition Number is less than preset quantity threshold, issues alarm signal.
14. a kind of electronic equipment, comprising:
One or more processors;
Storage device is stored thereon with one or more programs;
When one or more of programs are executed by one or more of processors, so that one or more of processors are real The now method as described in any in claim 1-8,10,12.
15. a kind of computer-readable medium, is stored thereon with computer program, wherein the realization when program is executed by processor Method as described in any in claim 1-8,10,12.
CN201910602226.1A 2019-07-05 2019-07-05 Method and apparatus for storing data Active CN110309425B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910602226.1A CN110309425B (en) 2019-07-05 2019-07-05 Method and apparatus for storing data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910602226.1A CN110309425B (en) 2019-07-05 2019-07-05 Method and apparatus for storing data

Publications (2)

Publication Number Publication Date
CN110309425A true CN110309425A (en) 2019-10-08
CN110309425B CN110309425B (en) 2021-08-24

Family

ID=68078372

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910602226.1A Active CN110309425B (en) 2019-07-05 2019-07-05 Method and apparatus for storing data

Country Status (1)

Country Link
CN (1) CN110309425B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112269517A (en) * 2020-11-16 2021-01-26 北京百度网讯科技有限公司 Generation method and device of interactive interface

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630742A (en) * 2015-12-28 2016-06-01 广州酷狗计算机科技有限公司 Feature vector calculation method and device
CN107220656A (en) * 2017-04-17 2017-09-29 西北大学 A kind of multiple labeling data classification method based on self-adaptive features dimensionality reduction
CN107563841A (en) * 2017-08-03 2018-01-09 电子科技大学 A kind of commending system decomposed that scored based on user
US20180107716A1 (en) * 2016-10-17 2018-04-19 International Business Machines Corporation Lower-dimensional subspace approximation of a dataset
US20180232848A1 (en) * 2017-02-14 2018-08-16 International Business Machines Corporation Matrix factorization with approximate computing
CN109063374A (en) * 2018-08-31 2018-12-21 中国地质大学(武汉) A kind of coupling matrix extracting method based on parameter optimization, equipment and storage equipment
CN109299341A (en) * 2018-10-29 2019-02-01 山东师范大学 One kind confrontation cross-module state search method dictionary-based learning and system
CN109615452A (en) * 2018-10-29 2019-04-12 华中科技大学 A kind of Products Show method based on matrix decomposition

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630742A (en) * 2015-12-28 2016-06-01 广州酷狗计算机科技有限公司 Feature vector calculation method and device
US20180107716A1 (en) * 2016-10-17 2018-04-19 International Business Machines Corporation Lower-dimensional subspace approximation of a dataset
US20180232848A1 (en) * 2017-02-14 2018-08-16 International Business Machines Corporation Matrix factorization with approximate computing
CN107220656A (en) * 2017-04-17 2017-09-29 西北大学 A kind of multiple labeling data classification method based on self-adaptive features dimensionality reduction
CN107563841A (en) * 2017-08-03 2018-01-09 电子科技大学 A kind of commending system decomposed that scored based on user
CN109063374A (en) * 2018-08-31 2018-12-21 中国地质大学(武汉) A kind of coupling matrix extracting method based on parameter optimization, equipment and storage equipment
CN109299341A (en) * 2018-10-29 2019-02-01 山东师范大学 One kind confrontation cross-module state search method dictionary-based learning and system
CN109615452A (en) * 2018-10-29 2019-04-12 华中科技大学 A kind of Products Show method based on matrix decomposition

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JIAWEI QIN: "An Optimization Method of Deterministic Measurement Matrix in Distributed Compressed Video Sensing", 《PROCEEDINGS OF THE 2018 2ND INTERNATIONAL CONFERENCE ON ELECTRICAL ENGINEERING AND AUTOMATION》 *
宋丽翠: "大规模稀疏线性系统的并行求解方法研究", 《华北电力大学》 *
王楠楠: "基于压缩采样的测量矩阵的性能分析", 《杭州电子科技大学》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112269517A (en) * 2020-11-16 2021-01-26 北京百度网讯科技有限公司 Generation method and device of interactive interface

Also Published As

Publication number Publication date
CN110309425B (en) 2021-08-24

Similar Documents

Publication Publication Date Title
CN109389640A (en) Image processing method and device
CN108171191B (en) Method and apparatus for detecting face
CN109389072A (en) Data processing method and device
CN109815365A (en) Method and apparatus for handling video
CN108776692A (en) Method and apparatus for handling information
CN109862100A (en) Method and apparatus for pushed information
CN109410253A (en) Method and apparatus for generating information
CN110070076A (en) Method and apparatus for choosing trained sample
CN110032978A (en) Method and apparatus for handling video
CN108595211A (en) Method and apparatus for output data
CN110288625A (en) Method and apparatus for handling image
CN108171167A (en) For exporting the method and apparatus of image
CN109597912A (en) Method for handling picture
CN110309425A (en) Method and apparatus for storing data
CN109165723A (en) Method and apparatus for handling data
CN109635923A (en) Method and apparatus for handling data
CN108257081A (en) For generating the method and apparatus of picture
CN109510943A (en) Method and apparatus for shooting image
CN109446379A (en) Method and apparatus for handling information
CN109242892B (en) Method and apparatus for determining the geometric transform relation between image
CN108985178A (en) Method and apparatus for generating information
CN109598344A (en) Model generating method and device
CN110046670A (en) Feature vector dimension reduction method and device
CN112381184B (en) Image detection method, image detection device, electronic equipment and computer readable medium
CN109034085A (en) Method and apparatus for generating information

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee after: Douyin Vision Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee before: Tiktok vision (Beijing) Co.,Ltd.

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee after: Tiktok vision (Beijing) Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee before: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.