WO2017148273A1 - 一种应用程序的分类方法和装置 - Google Patents

一种应用程序的分类方法和装置 Download PDF

Info

Publication number
WO2017148273A1
WO2017148273A1 PCT/CN2017/073867 CN2017073867W WO2017148273A1 WO 2017148273 A1 WO2017148273 A1 WO 2017148273A1 CN 2017073867 W CN2017073867 W CN 2017073867W WO 2017148273 A1 WO2017148273 A1 WO 2017148273A1
Authority
WO
WIPO (PCT)
Prior art keywords
classified
classification
application
applications
node graph
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.)
Ceased
Application number
PCT/CN2017/073867
Other languages
English (en)
French (fr)
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to EP17759124.5A priority Critical patent/EP3425523A4/en
Priority to JP2018543709A priority patent/JP2019508814A/ja
Publication of WO2017148273A1 publication Critical patent/WO2017148273A1/zh
Priority to US16/116,812 priority patent/US20180365339A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/906Clustering; Classification
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Definitions

  • the present application relates to the field of computer processing technologies, and in particular, to a method for classifying an application and a device for classifying an application.
  • the present application discloses a method for classifying an application, including:
  • the step of calculating the correlation coefficient between the applications to be classified includes:
  • the correlation coefficient between the any two applications to be classified is calculated.
  • the correlation coefficient between the any two applications to be classified is calculated by using the following formula:
  • w(a, b) is the correlation coefficient between the applications a and b to be classified
  • n is the number of known classification systems
  • Shortest_path(a,b) is the shortest path in the known classification system for the applications a and b to be classified.
  • the step of constructing a node graph for the to-be-classified application according to the correlation coefficient includes:
  • a node map for the application to be classified is constructed according to the weight of the edge.
  • the step of segmenting the node graph to obtain one or more classification maps includes:
  • the step of segmenting the new node graph to obtain the one or more classification maps includes:
  • a tag is selected according to the number of tags as the owned tag
  • the applications to be classified with the same label are divided into the same classification map to obtain one or more classification maps.
  • the method further includes:
  • the one or more classification maps are subdivided.
  • the step of re-splitting the one or more classification maps includes:
  • the number of edges between applications in the classification graph is calculated using the following formula:
  • B(e) is the median value corresponding to edge e; q is the number of all shortest paths in the classification graph; p is the number of shortest paths passing edge e.
  • the present application discloses an apparatus for classifying an application, including
  • a correlation coefficient calculation module configured to calculate an association coefficient between the applications to be classified, where the application to be classified is located in one or more known classification systems;
  • a node graph construction module configured to construct a node graph for the to-be-classified application according to the correlation coefficient
  • the node graph segmentation module is configured to segment the node graph to obtain one or more classification graphs.
  • the correlation coefficient calculation module includes:
  • a shortest path determining submodule for respectively determining a shortest path of any two to-be-classified applications in the one or more known classification systems
  • a correlation coefficient calculation submodule configured to calculate, by using the shortest path, an association coefficient between the any two applications to be classified.
  • the correlation coefficient between the any two applications to be classified is calculated by using the following formula:
  • w(a, b) is the correlation coefficient between the applications a and b to be classified
  • n is the number of known classification systems
  • Shortest_path(a,b) is the shortest path in the known classification system for the applications a and b to be classified.
  • the node graph construction module includes:
  • a node graph construction submodule configured to use the correlation coefficient as a weight of an edge between the applications to be classified, A node map for the application to be classified is constructed according to the weight of the edge.
  • the node graph segmentation module includes:
  • the weight determination sub-module of the edge is configured to determine whether the weight of the edge in the node graph is greater than a preset threshold
  • the first corresponding edge deletes the submodule, and is configured to retain the corresponding edge when the weight of the edge is greater than a preset threshold, and if not, delete the corresponding edge to obtain a new node graph;
  • the node graph segmentation sub-module is configured to segment the new node graph to obtain the one or more classification graphs.
  • the node graph segmentation submodule includes:
  • a configuration unit configured to configure a label for each application to be classified in the new node graph
  • a delivery unit configured to deliver a label of each application to be classified to a connected application to be classified
  • a selection unit configured to select a label from the label received by each application to be classified as the owned label according to the number of labels
  • a determining unit configured to determine, in the new node graph, whether a label owned by the application to be classified changes, or whether the current number of iterations is less than a preset maximum number of iterations
  • a returning unit configured to: when the label owned by the application to be classified changes, or when the current number of iterations is less than a preset maximum number of iterations, the returning delivery unit performs to transfer the label of each application to be classified to the connected The steps of the application to be classified;
  • a dividing unit configured to divide the to-be-classified application having the same label into the same category when the label owned by the application to be classified does not change, or when the current number of iterations is greater than or equal to a preset maximum number of iterations
  • one or more classification maps are obtained.
  • the device further includes:
  • a classification map merge module for combining the one or more classification maps
  • a classification map splitting module for splitting the one or more classification maps.
  • the classification map splitting module includes:
  • the second corresponding edge deletes the sub-module, and is used to delete the edge corresponding to the maximum media value to obtain a classified sub-picture;
  • a connectivity graph determining submodule configured to determine whether the classified submap is two connected graphs
  • the step of calculating the sub-module of the returning edge performs a step of calculating the number of edges between the applications in the sub-graph;
  • the stop sub-module is configured to stop re-split the classification map when the classification sub-picture is two connected graphs.
  • the number of edges between applications in the classification graph is calculated using the following formula:
  • B(e) is the median value corresponding to edge e; q is the number of all shortest paths in the classification graph; p is the number of shortest paths passing edge e.
  • the embodiments of the present application include the following advantages:
  • the embodiment of the present application calculates a correlation coefficient between the applications to be classified, and constructs a node graph according to the correlation coefficient, and then divides the node graph to obtain one or more classification maps, so as to fully learn from the current Knowing the experience of multiple classification systems, integrating, without manual operation, can avoid the risk of high classification result or insufficient consideration of operators due to manual operation, so as to generate a more comprehensive new application.
  • Classification system
  • the new classification map may be evaluated according to actual needs, and the merge or re-split operation may be performed to ensure the accuracy of the finally obtained classification.
  • Embodiment 1 is a flow chart showing the steps of Embodiment 1 of a classification method of an application of the present application;
  • FIG. 2 is a schematic diagram of an application classification in an application market in the prior art
  • Figure 3A is a schematic illustration of one known classification system A of the present application.
  • Figure 3B is a schematic illustration of another known classification system B of the present application.
  • Embodiment 4 is a flow chart showing the steps of Embodiment 2 of a classification method of an application of the present application;
  • Figure 5 is a schematic diagram of a node diagram of the present application.
  • Figure 6 is a schematic diagram of a classification diagram of the present application.
  • FIG. 7 is a structural block diagram of an embodiment of a sorting apparatus of an application of the present application.
  • FIG. 1 a flow chart of a first embodiment of a method for classifying an application of the application, which may include the following steps:
  • Step 101 Calculate an association coefficient between applications to be classified
  • the experience can be fully learned and integrated, thereby generating a more comprehensive new application.
  • Program classification system to reduce the workload of manual operations.
  • the application to be classified may be an application located in one or more known classification systems.
  • the correlation coefficient between the applications to be classified may be first calculated.
  • the correlation coefficient reflects the correlation between any two applications.
  • the larger the correlation coefficient the stronger the relationship between the two applications.
  • the step of calculating the correlation coefficient between the applications to be classified may specifically include the following sub-steps:
  • Sub-step 1011 respectively determining a shortest path of any two to-be-classified applications in the one or more known classification systems
  • FIG. 2 it is a schematic diagram of an application classification in an application market in the prior art.
  • an application can be classified into a video and audio image, a system tool, a communication social, and the like, and in various categories, Further subdivided into different sub-categories, for example, under the category of online shopping, it can be divided into different sub-categories such as shopping malls, group purchases, shopping guides, and Haitao. Under each sub-category, specific applications can be included. Programs, such as mobile phone Taobao, rebate network, Suning Tesco and so on.
  • the node graph is used to represent the classification in the application market, and the nodes in the node graph respectively represent specific categories or applications.
  • the shortest path of any two applications to be classified in a classification system may indicate the distance between two nodes.
  • the node The shorter the distance between them, the higher the correlation.
  • FIG. 3A and FIG. 3B there are schematic diagrams of two different classification systems A and B, wherein e, f, h, l, m, and n respectively represent different categories, and a, b, c, and d are to be treated.
  • Classified application As shown in FIG. 3A and FIG. 3B, there are schematic diagrams of two different classification systems A and B, wherein e, f, h, l, m, and n respectively represent different categories, and a, b, c, and d are to be treated.
  • Classified application As shown in FIG. 3A and FIG. 3B, there are schematic diagrams of two different classification systems A and B, wherein e, f, h, l, m, and n respectively represent different categories, and a, b, c, and d are to be treated.
  • the shortest path Shortest_path(a,b) between them is 2, and in the classification system B, the shortest path between them, Shortest_path(a,b) is also 2; for applications a, c, in classification system A, the shortest path Shortest_path(a, c) between applications a, c is 4, and in classification system B, the shortest path between them is Shortest_path ( a, c) is 2.
  • the shortest path between different nodes in each classification system can be obtained by the Dijkstra algorithm (Dijkstra algorithm).
  • Sub-step 1012 using the shortest path, calculating the relationship between the any two applications to be classified number.
  • the correlation coefficient between the any two applications to be classified may be calculated by using the following formula:
  • w(a, b) is the correlation coefficient between the applications a and b to be classified
  • n is the number of known classification systems
  • Shortest_path(a,b) is the shortest path in the known classification system for the applications a and b to be classified.
  • Step 102 Construct a node graph for the to-be-classified application according to the correlation coefficient.
  • a node graph for the to-be-classified application may be constructed according to the correlation coefficient.
  • each node represents a different application, and the connections between nodes can represent relationships between applications.
  • the correlation coefficient between the respective applications obtained according to step 101 may be used as the weight of the edge between the applications to be classified, thereby constructing an application for the to-be-classified according to the weight of the edge.
  • Node graph In general, in the node graph constructed above, the greater the weight between nodes, the stronger the correlation they show in multiple classification systems, for example, in multiple classification systems, two applications Always in the same leaf category, the weight between the two applications can get a maximum of 1.
  • Step 103 Segment the node graph to obtain one or more classification graphs.
  • the step of dividing the node graph to obtain one or more classification maps may specifically include the following sub-steps:
  • Sub-step 1031 determining whether the weight of the edge in the node graph is greater than a preset threshold
  • Sub-step 1032 if yes, the corresponding edge is retained, and if not, the corresponding edge is deleted to obtain a new node graph
  • Sub-step 1033 segmenting the new node graph to obtain the one or more classification maps.
  • a weight threshold may be first set, and then the weight of the edge in the node graph is determined to be greater than a preset threshold. If yes, the corresponding edge may be retained, and if not, the corresponding The edges thus get a new node graph. For example, if the preset threshold is 0.5, the edge of the node graph whose weight value is less than 0.5 can be deleted first, a new node graph is obtained, and then the new node graph is further divided to obtain one or more classification graphs.
  • the fusion can be carried out without manual operation, which can avoid the risk of subjectiveness of classification results due to manual operation or insufficient consideration of operators, so that a more comprehensive new one can be generated.
  • Application classification system by calculating an association coefficient between the applications to be classified, and constructing a node graph according to the correlation coefficient, and then segmenting the node graph to obtain one or more classification maps, Drawing on the experience of several classification systems currently known, the fusion can be carried out without manual operation, which can avoid the risk of subjectiveness of classification results due to manual operation or insufficient consideration of operators, so that a more comprehensive new one can be generated.
  • Application classification system by calculating an association coefficient between the applications to be classified, and constructing a node graph according to the correlation coefficient, and then segmenting the node graph to obtain one or more classification maps
  • the method may include the following steps:
  • Step 401 Determine a shortest path of any two to-be-classified applications in the one or more known classification systems, respectively;
  • the shortest path of any two applications to be classified in a classification system may indicate that the distance between the two nodes is close, generally In other words, the shorter the distance between nodes, the higher the correlation. Therefore, for the application to be classified, the shortest path of any two to-be-classified applications in the one or more known classification systems may be determined first.
  • FIG. 3A and FIG. 3B there are schematic diagrams of two different classification systems A and B, wherein e, f, h, l, m, and n respectively represent different categories, and a, b, c, and d are to be treated.
  • Classified application As shown in FIG. 3A and FIG. 3B, there are schematic diagrams of two different classification systems A and B, wherein e, f, h, l, m, and n respectively represent different categories, and a, b, c, and d are to be treated.
  • Classified application As shown in FIG. 3A and FIG. 3B, there are schematic diagrams of two different classification systems A and B, wherein e, f, h, l, m, and n respectively represent different categories, and a, b, c, and d are to be treated.
  • the shortest path Shortest_path(a,b) between them is 2, and in the classification system B, the shortest path between them, Shortest_path(a,b) is also 2; for applications a, c, in classification system A, the shortest path Shortest_path(a, c) between applications a, c is 4, and in classification system B, the shortest path between them is Shortest_path ( a, c) is 2.
  • the shortest path between different nodes in each classification system can be obtained by the Dijkstra algorithm (Dijkstra algorithm).
  • Step 402 Calculate, by using the shortest path, an association coefficient between any two applications to be classified;
  • the correlation coefficient between the any two applications to be classified may be calculated according to the shortest path by using the following formula:
  • w(a, b) is the correlation coefficient between the applications a and b to be classified
  • n is the number of known classification systems
  • Shortest_path(a,b) is the shortest path in the known classification system for the applications a and b to be classified.
  • Step 403 Construct a node graph for the to-be-classified application according to the correlation coefficient.
  • the step of constructing a node graph for the to-be-classified application according to the correlation coefficient may specifically include the following sub-steps:
  • the correlation coefficient is used as a weight of an edge between the applications to be classified
  • Sub-step 4032 constructing a node graph for the to-be-classified application according to the weight of the edge.
  • the correlation coefficient may be used as the weight of the edge of the node graph, that is, any two applications are connected as edges, thereby A node graph is constructed with the correlation coefficient between the applications as the weight value of the corresponding edge.
  • the weight between the two applications can get a maximum of 1.
  • Step 404 Determine whether the weight of the edge in the node graph is greater than a preset threshold.
  • a weight threshold may be first set, and then the weight of the edge in the node graph is determined to be greater than a preset threshold. If yes, the corresponding edge may be retained, and if not, the algorithm may be executed. In step 405, the corresponding edge is deleted, thereby obtaining a new node graph. For example, if the preset threshold is 0.5, the edge of the node graph whose weight value is less than 0.5 can be deleted first, and a new node graph is obtained.
  • Step 405 deleting the corresponding edge to obtain a new node graph
  • Step 406 Perform segmentation on the new node graph to obtain the one or more classification maps.
  • the segmentation of the new node graph may be performed by using a community partitioning algorithm FastUnfolding.
  • the step of dividing the new node graph to obtain the one or more classification maps may specifically include the following sub-steps:
  • Sub-step 4061 in the new node graph, configuring a label for each application to be classified
  • the label may be a user ID.
  • the label may be configured in other manners, such as a random configuration, as long as the uniqueness of the label is maintained.
  • Sub-step 4062 the label of each application to be classified is delivered to the connected application to be classified;
  • Sub-step 4063 selecting, from the labels received by each application to be classified, a label according to the number of labels as the owned label;
  • Sub-step 4064 determining whether the label owned by the application to be classified changes in the new node graph, or whether the current maximum number of iterations is less than a preset maximum number of iterations;
  • Sub-step 4065 if yes, returning to the step of transmitting the label of each application to be classified to the connected application to be classified;
  • Sub-step 4066 if not, divides the applications to be classified having the same label into the same classification map to obtain one or more classification maps.
  • the label can be randomly selected. Since the core node is connected with many other peripheral nodes, the probability that the label is randomly obtained is large. In the subsequent iteration process, the number of labels of the core node will increase, and gradually stabilize. .
  • the nodes with the same tag belong to the same user group, and the tag of the node can be used as the identification tag of the application.
  • FIG. 5 it is a schematic diagram of a node graph of the present application.
  • the name of the node is used as the label of the node, that is, the labels of the nodes R, S, T, and U are respectively R, S, T, and U. Its iterative process is as follows:
  • the tags owned by the application are all R and no longer change. Therefore, the applications corresponding to nodes R, S, T, and U belong to the same classification, and can be divided into the same classification map. in.
  • Step 407 Combine the one or more classification maps; or re-split the one or more classification maps.
  • the new classification map may be reprocessed, for example, the one or more classification maps are merged; or, for the one or Multiple classification maps are subdivided.
  • multiple classification maps need to be combined, they can be directly synthesized, and a hierarchical structure can be formed, for example, the original two classification maps A and B, and the subcategories of the synthesized large classification C.
  • the step of re-splitting the one or more classification maps may include the following sub-steps:
  • Sub-step 4071 calculating a mediation of edges between applications in the classification map
  • Sub-step 4072 deleting the edge corresponding to the maximum media value to obtain a classification sub-picture
  • Sub-step 4073 determining whether the classified sub-picture is two connected pictures
  • Sub-step 4074 if no, return to calculate the number of edges between the applications in the classification sub-picture;
  • Sub-step 4075 if yes, stops re-spliting the classification map.
  • the following formula may be used to calculate the number of edges between applications in the classification graph:
  • B(e) is the median value corresponding to edge e; q is the number of all shortest paths in the classification graph; p is the number of shortest paths passing edge e.
  • FIG. 6 it is a schematic diagram of a classification diagram of the present application.
  • the median values of the edges can be obtained as follows:
  • the median value of the side CD is the largest, so the edge CD is deleted. Since the original classification map is split into two connected graphs after the side CD is deleted, that is, the classification subgraph ABC and DEF are resolved. Effect can Stop re-split the classification map.
  • the new classification map may be evaluated according to actual needs, and the merge or re-split operation may be performed to ensure the accuracy of the finally obtained classification.
  • FIG. 7 a structural block diagram of an embodiment of a classification device of an application of the present application is shown, which may specifically include the following modules:
  • the correlation coefficient calculation module 701 is configured to calculate an association coefficient between the applications to be classified, where the application to be classified is located in one or more known classification systems;
  • a node graph construction module 702 configured to construct a node graph for the to-be-classified application according to the correlation coefficient
  • the node graph segmentation module 703 is configured to segment the node graph to obtain one or more classification graphs.
  • the correlation coefficient calculation module 701 may specifically include the following sub-modules:
  • a shortest path determining sub-module 7011 configured to respectively determine a shortest path of any two to-be-classified applications in the one or more known classification systems
  • the correlation coefficient calculation sub-module 7012 is configured to calculate the correlation coefficient between the any two applications to be classified by using the shortest path.
  • the correlation coefficient between the any two applications to be classified may be calculated by using the following formula:
  • w(a, b) is the correlation coefficient between the applications a and b to be classified
  • n is the number of known classification systems
  • Shortest_path(a,b) is the shortest path in the known classification system for the applications a and b to be classified.
  • the node graph construction module 702 may specifically include the following submodules:
  • the node graph construction sub-module 7021 is configured to use the correlation coefficient as a weight of an edge between the applications to be classified, and construct a node graph for the to-be-classified application according to the weight of the edge.
  • the node graph segmentation module 703 may specifically include the following submodules:
  • the weight determination sub-module 7031 is configured to determine whether the weight of the edge in the node graph is greater than a preset threshold
  • the first corresponding edge deletion sub-module 7032 is configured to reserve a corresponding edge when the weight of the edge is greater than a preset threshold, and if not, delete the corresponding edge to obtain a new node graph;
  • the node graph segmentation sub-module 7033 is configured to segment the new node graph to obtain the one or more classification graphs.
  • the node graph segmentation sub-module 7033 may specifically include the following units:
  • the configuration unit 331 is configured to configure, in the new node graph, a label for each application to be classified;
  • a delivery unit 332 configured to deliver a label of each application to be classified to a connected application to be classified
  • the selecting unit 333 is configured to select, from the labels received by each application to be classified, a label as the owned label according to the number of labels;
  • the determining unit 334 is configured to determine whether the label owned by the application to be classified changes in the new node graph, or whether the current number of iterations is less than a preset maximum number of iterations;
  • the returning unit 335 is configured to: when the label owned by the application to be classified changes, or when the current number of iterations is less than a preset maximum number of iterations, the returning delivery unit performs to transmit the label of each to-be-classified application to the connected The steps of the application to be classified;
  • the dividing unit 336 is configured to divide the to-be-classified application having the same label into the same one when the label owned by the application to be classified does not change, or when the current number of iterations is greater than or equal to a preset maximum number of iterations In the classification chart, one or more classification maps are obtained.
  • the device may further include the following modules:
  • a classification map merge module 704 for merging the one or more classification maps
  • the classification map splitting module 705 is configured to re-separate the one or more classification maps.
  • the classification map splitting module 705 may specifically include the following submodules:
  • the inter-media calculation sub-module 7051 is configured to calculate the mediation of the edges between the applications in the classification map
  • the second corresponding edge deletion sub-module 7052 is configured to delete the edge corresponding to the maximum media value to obtain a classification sub-picture
  • the connectivity graph determining sub-module 7053 is configured to determine whether the classified sub-picture is two connected graphs
  • the step of calculating the sub-module of the returning edge performs a step of calculating the number of edges between the applications in the classified sub-picture;
  • the stop sub-module 7055 is configured to stop re-split the classification map when the classified sub-picture is two connected graphs.
  • B(e) is the median value corresponding to edge e; q is the number of all shortest paths in the classification graph; p is the number of shortest paths passing edge e.
  • the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment.
  • embodiments of the embodiments of the present application can be provided as a method, apparatus, or computer program product. Therefore, the embodiments of the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Moreover, embodiments of the present application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • the computer device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
  • the memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory.
  • RAM random access memory
  • ROM read only memory
  • Memory is an example of a computer readable medium.
  • Computer readable media includes both permanent and non-persistent, removable and non-removable media.
  • Information storage can be implemented by any method or technology. The information can be computer readable instructions, data structures, modules of programs, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device.
  • computer readable media does not include non-persistent computer readable media, such as modulated data signals and carrier waves.
  • Embodiments of the present application are described with reference to flowcharts and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the present application. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG.
  • These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor or other programmable data processing terminal device to produce a machine such that instructions are executed by a processor of a computer or other programmable data processing terminal device
  • Means are provided for implementing the functions specified in one or more of the flow or in one or more blocks of the flow chart.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the instruction device implements the functions specified in one or more blocks of the flowchart or in a flow or block of the flowchart.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Algebra (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Complex Calculations (AREA)

Abstract

本申请实施例提供了一种应用程序的分类方法和装置,所述方法包括:计算待分类应用程序之间的关联系数,所述待分类应用程序位于一个或多个已知的分类体系中;依据所述关联系数,构建针对所述待分类应用程序的节点图;对所述节点图进行分割,获得一个或多个分类图,便于充分借鉴目前已知的多个分类体系的经验,进行融合,无需人工操作,可以避免由于人工操作导致分类结果主观性较强,或运营人员考虑不充分等风险,从而能够产生一份较为全面的新的应用程序分类体系。

Description

一种应用程序的分类方法和装置
本申请要求2016年02月29日递交的申请号为201610113706.8、发明名称为“一种应用程序的分类方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及计算机处理技术领域,特别是涉及一种应用程序的分类方法和一种应用程序的分类装置。
背景技术
随着智能终端设备的普及,提供给终端设备使用的各类应用程序也是越来越多,用户可以通过各类应用市场获取到所需的应用程序,例如,豌豆荚,华为应用市场等。
目前,为了方便用户下载,应用市场中的各类应用程序都是按照一定的类别进行分类的。但是,对于不同的体系,往往存在不同的分类方法,例如,豌豆荚的分类体系与华为应用市场的分类体系就不完全一致,从而可能存在应用程序的类目总数目、分类层级等均不同。因此,如果需要对各类应用程序进行管理时,单一的某个分类体系可能无法满足我们的需求,仍然需要由运营人员进行人工归类,使得分类操作工作量大,分类结果主观性较强,且存在考虑不充分等风险。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种应用程序的分类方法和相应的一种应用程序的分类装置。
为了解决上述问题,本申请公开了一种应用程序的分类方法,包括:
计算待分类应用程序之间的关联系数,所述待分类应用程序位于一个或多个已知的分类体系中;
依据所述关联系数,构建针对所述待分类应用程序的节点图;
对所述节点图进行分割,获得一个或多个分类图。
可选地,所述计算待分类应用程序之间的关联系数的步骤包括:
分别确定任意两个待分类应用程序在所述一个或多个已知的分类体系中的最短路 径;
采用所述最短路径,计算所述任意两个待分类应用程序之间的关联系数。
可选地,采用如下公式,计算所述任意两个待分类应用程序之间的关联系数:
Figure PCTCN2017073867-appb-000001
其中,w(a,b)为待分类应用程序a与b之间的关联系数;
n为已知的分类体系的数量;
shortest_path(a,b)为待分类应用程序a与b在已知的分类体系中的最短路径。
可选地,所述依据所述关联系数,构建针对所述待分类应用程序的节点图的步骤包括:
将所述关联系数作为所述待分类应用程序之间边的权重;
按照所述边的权重,构建针对所述待分类应用程序的节点图。
可选地,所述对所述节点图进行分割,获得一个或多个分类图的步骤包括:
判断所述节点图中边的权重是否大于预设阈值;
若是,则保留对应的边,若否,则删除对应的边,以获得新的节点图;
对所述新的节点图进行分割,获得所述一个或多个分类图。
可选地,所述对所述新的节点图进行分割,获得所述一个或多个分类图的步骤包括:
在所述新的节点图中,对每个待分类应用程序配置标签;
将每个待分类应用程序的标签传递至相连的待分类应用程序;
从每个待分类应用程序接收到的标签中,按照标签的数量选取一个标签作为所拥有的标签;
判断在所述新的节点图中,待分类应用程序所拥有的标签是否发生变化,或者,当前是否小于预设的最大迭代次数;
若是,则返回执行所述将每个待分类应用程序的标签传递至相连的待分类应用程序的步骤;
若否,则将拥有相同标签的待分类应用程序划分在同一个分类图中,获得一个或多个分类图。
可选地,所述方法还包括:
对所述一个或多个分类图进行合并;或者,
对所述一个或多个分类图进行再拆分。
可选地,所述对所述一个或多个分类图进行再拆分的步骤包括:
计算所述分类图中各应用程序间的边的介数;
删除最大介数值所对应的边,得到分类子图;
判断所述分类子图是否为两个连通图;
若否,则返回计算所述分类子图中各应用程序间的边的介数;
若是,则停止对分类图进行再拆分。
可选地,采用如下公式,计算所述分类图中各应用程序间的边的介数:
Figure PCTCN2017073867-appb-000002
其中,B(e)为边e对应的介数值;q为所述分类图中所有最短路径的数目;p为经过边e的最短路径的数目。
为了解决上述问题,本申请公开了一种应用程序的分类装置,包括
关联系数计算模块,用于计算待分类应用程序之间的关联系数,所述待分类应用程序位于一个或多个已知的分类体系中;
节点图构建模块,用于依据所述关联系数,构建针对所述待分类应用程序的节点图;
节点图分割模块,用于对所述节点图进行分割,获得一个或多个分类图。
可选地,所述关联系数计算模块包括:
最短路径确定子模块,用于分别确定任意两个待分类应用程序在所述一个或多个已知的分类体系中的最短路径;
关联系数计算子模块,用于采用所述最短路径,计算所述任意两个待分类应用程序之间的关联系数。
可选地,采用如下公式,计算所述任意两个待分类应用程序之间的关联系数:
Figure PCTCN2017073867-appb-000003
其中,w(a,b)为待分类应用程序a与b之间的关联系数;
n为已知的分类体系的数量;
shortest_path(a,b)为待分类应用程序a与b在已知的分类体系中的最短路径。
可选地,所述节点图构建模块包括:
节点图构建子模块,用于将所述关联系数作为所述待分类应用程序之间边的权重, 按照所述边的权重,构建针对所述待分类应用程序的节点图。
可选地,所述节点图分割模块包括:
边的权重判断子模块,用于判断所述节点图中边的权重是否大于预设阈值;
第一对应边删除子模块,用于在所述边的权重大于预设阈值时,保留对应的边,若否,则删除对应的边,以获得新的节点图;
节点图分割子模块,用于对所述新的节点图进行分割,获得所述一个或多个分类图。
可选地,所述节点图分割子模块包括:
配置单元,用于在所述新的节点图中,对每个待分类应用程序配置标签;
传递单元,用于将每个待分类应用程序的标签传递至相连的待分类应用程序;
选取单元,用于从每个待分类应用程序接收到的标签中,按照标签的数量选取一个标签作为所拥有的标签;
判断单元,用于判断在所述新的节点图中,待分类应用程序所拥有的标签是否发生变化,或者,当前迭代次数是否小于预设的最大迭代次数;
返回单元,用于在所述待分类应用程序所拥有的标签发生变化,或者,当前迭代次数小于预设的最大迭代次数时,返回传递单元执行将每个待分类应用程序的标签传递至相连的待分类应用程序的步骤;
划分单元,用于在所述待分类应用程序所拥有的标签未发生变化,或者,当前迭代次数大于或等于预设的最大迭代次数时,将拥有相同标签的待分类应用程序划分在同一个分类图中,获得一个或多个分类图。
可选地,所述装置还包括:
分类图合并模块,用于对所述一个或多个分类图进行合并;以及,
分类图拆分模块,用于对所述一个或多个分类图进行再拆分。
可选地,所述分类图拆分模块包括:
边的介数计算子模块,用于计算所述分类图中各应用程序间的边的介数;
第二对应边删除子模块,用于删除最大介数值所对应的边,得到分类子图;
连通图判断子模块,用于判断所述分类子图是否为两个连通图;
返回子模块,用于在所述分类子图不为两个连通图时,返回边的介数计算子模块执行计算所述分类子图中各应用程序间的边的介数的步骤;
停止子模块,用于在所述分类子图为两个连通图时,停止对分类图进行再拆分。
可选地,采用如下公式,计算所述分类图中各应用程序间的边的介数:
Figure PCTCN2017073867-appb-000004
其中,B(e)为边e对应的介数值;q为所述分类图中所有最短路径的数目;p为经过边e的最短路径的数目。
与背景技术相比,本申请实施例包括以下优点:
本申请实施例通过计算待分类应用程序之间的关联系数,并依据所述关联系数,构建出节点图,然后对所述节点图进行分割,获得一个或多个分类图,便于充分借鉴目前已知的多个分类体系的经验,进行融合,无需人工操作,可以避免由于人工操作导致分类结果主观性较强,或运营人员考虑不充分等风险,从而能够产生一份较为全面的新的应用程序分类体系。
其次,在本申请实施例中,当获得新的应用程序分类体系后,还可以根据实际需要对新的分类图进行评估,执行合并或再拆分操作,以保证最终获得的分类的准确性。
附图说明
图1是本申请的一种应用程序的分类方法实施例一的步骤流程图;
图2是已有技术中的一种应用市场的应用程序分类示意图;
图3A是本申请的一种已知的分类体系A的示意图;
图3B是本申请的另一种已知的分类体系B的示意图;
图4是本申请的一种应用程序的分类方法实施例二的步骤流程图;
图5是本申请的一种节点图的示意图;
图6是本申请的一种分类图的示意图;
图7是本申请的一种应用程序的分类装置实施例的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
参照图1,示出了本申请的一种应用程序的分类方法实施例一的步骤流程图,具体可以包括如下步骤:
步骤101,计算待分类应用程序之间的关联系数;
在本申请实施例中,当需要构建一套新的应用程序分类体系时,可以基于目前已知的多个分类体系,充分借鉴它们的经验,进行融合,从而产生一份较为全面的新的应用程序分类体系,以减少人工操作的工作量。因此,所述待分类应用程序可以是位于一个或多个已知的分类体系中的应用程序。
具体地,可以首先计算出待分类应用程序之间的关联系数。关联系数体现了任意两个应用程序之间的相关性,一般来说,关联系数越大,说明两个应用程序之间的关联关系越强。
在本申请的一种优选实施例中,所述计算待分类应用程序之间的关联系数的步骤具体可以包括如下子步骤:
子步骤1011,分别确定任意两个待分类应用程序在所述一个或多个已知的分类体系中的最短路径;
如图2所示,是已有技术中的一种应用市场的应用程序分类示意图,通常,应用程序可以分为影音图像、系统工具、通讯社交等大类,而在各大类下,又可进一步细分为不同的小类,例如,在网上购物这一大类下,又可以分为商城、团购、导购、海淘等不同的小类,在各个小类下,则可以包括具体的应用程序,如手机淘宝、返利网、苏宁易购等等。为了便于理解,在本申请的实施例中,采用节点图的方式来表示应用市场中的分类情况,节点图中的节点分别表示具体的类目或应用程序。
因此,若将各个应用程序看作是当前分类体系中的节点,则任意两个待分类应用程序在一个分类体系中的最短路径可以表明两个节点之间的距离远近,一般来说,节点之间的距离越短,则相关性越高。
如图3A和图3B所示,是两种不同的分类体系A和B的示意图,其中e、f、h、l、m、n分别表示不同的类目,a、b、c、d为待分类的应用程序。以应用程序a、b为例,在分类体系A中,它们之间的最短路径Shortest_path(a,b)为2,在分类体系B中,它们之间的最短路径Shortest_path(a,b)也为2;而对于应用程序a、c,在分类体系A中,应用程序a、c之间的最短路径Shortest_path(a,c)为4,而在分类体系B中,它们之间的最短路径Shortest_path(a,c)则为2。
在具体实现中,各个分类体系中不同节点间的最短路径可以通过迪杰斯特拉算法(Dijkstra算法)获得。
子步骤1012,采用所述最短路径,计算所述任意两个待分类应用程序之间的关联系 数。
在具体实现中,可以采用如下公式,计算所述任意两个待分类应用程序之间的关联系数:
Figure PCTCN2017073867-appb-000005
其中,w(a,b)为待分类应用程序a与b之间的关联系数;
n为已知的分类体系的数量;
shortest_path(a,b)为待分类应用程序a与b在已知的分类体系中的最短路径。
因此,对于分类体系A和分类体系B中应用程序a与b,采用上述公式,可以得到a、b之间的关联系数w(a,b)=1;而对于应用程序a与c,则关联系数w(a,c)=0.75。
步骤102,依据所述关联系数,构建针对所述待分类应用程序的节点图;
在本申请实施例中,当分别获得全部待分类应用程序之间的关联系数后,可以依据所述关联系数,构建出针对所述待分类应用程序的节点图。在节点图中,各个节点代表不同的应用程序,而节点之间的连线则可以表示应用程序间的关系。
在具体实现中,可以将根据步骤101获得的各个应用程序之间的关联系数作为所述待分类应用程序之间边的权重,从而按照所述边的权重,构建出针对所述待分类应用程序的节点图。一般来说,在上述构建出的节点图中,节点间的权重越大,说明它们在多个分类体系中表现出来的相关性越强,例如,若在多个分类体系中,两个应用程序一直属于同一个叶子类目中,则这两个应用程序之间的权重可取得最大值1。
步骤103,对所述节点图进行分割,获得一个或多个分类图。
在本申请的一种优选实施例中,所述对所述节点图进行分割,获得一个或多个分类图的步骤具体可以包括如下子步骤:
子步骤1031,判断所述节点图中边的权重是否大于预设阈值;
子步骤1032,若是,则保留对应的边,若否,则删除对应的边,以获得新的节点图;
子步骤1033,对所述新的节点图进行分割,获得所述一个或多个分类图。
在具体实现中,可以根据实际的分类需要,首先设定一个权重阈值,然后判断所述节点图中边的权重是否大于预设阈值,若是,则可以保留对应的边,若否,则删除对应的边,从而获得新的节点图。例如,若预设阈值为0.5,则可以首先删除掉节点图中凡是权重值小于0.5的边,得到新的节点图,然后再对新的节点图继续分割,从而获得一个或多个分类图。
在本申请实施例中,通过计算待分类应用程序之间的关联系数,并依据所述关联系数,构建出节点图,然后对所述节点图进行分割,获得一个或多个分类图,便于充分借鉴目前已知的多个分类体系的经验,进行融合,无需人工操作,可以避免由于人工操作导致分类结果主观性较强,或运营人员考虑不充分等风险,从而能够产生一份较为全面的新的应用程序分类体系。
参照图4,示出了本申请的一种应用程序的分类方法实施例二的步骤流程图,具体可以包括如下步骤:
步骤401,分别确定任意两个待分类应用程序在所述一个或多个已知的分类体系中的最短路径;
在本申请实施例中,若将各个应用程序看作是当前分类体系中的节点,则任意两个待分类应用程序在一个分类体系中的最短路径可以表明两个节点之间的距离远近,一般来说,节点之间的距离越短,则相关性越高。因此,对于待分类的应用程序,可以首先分别确定出任意两个待分类应用程序在所述一个或多个已知的分类体系中的最短路径。
如图3A和图3B所示,是两种不同的分类体系A和B的示意图,其中e、f、h、l、m、n分别表示不同的类目,a、b、c、d为待分类的应用程序。以应用程序a、b为例,在分类体系A中,它们之间的最短路径Shortest_path(a,b)为2,在分类体系B中,它们之间的最短路径Shortest_path(a,b)也为2;而对于应用程序a、c,在分类体系A中,应用程序a、c之间的最短路径Shortest_path(a,c)为4,而在分类体系B中,它们之间的最短路径Shortest_path(a,c)则为2。
在具体实现中,各个分类体系中不同节点间的最短路径可以通过迪杰斯特拉算法(Dijkstra算法)获得。
步骤402,采用所述最短路径,计算所述任意两个待分类应用程序之间的关联系数;
在具体实现中,当已经分别获得任意两个待分类应用程序之间的最短路径或,可以根据所述最短路径,采用如下公式,计算所述任意两个待分类应用程序之间的关联系数:
Figure PCTCN2017073867-appb-000006
其中,w(a,b)为待分类应用程序a与b之间的关联系数;
n为已知的分类体系的数量;
shortest_path(a,b)为待分类应用程序a与b在已知的分类体系中的最短路径。
例如,对于分类体系A和分类体系B中应用程序a与b,采用上述公式,可以得到a、b之间的关联系数w(a,b)=1;而对于应用程序a与c,则关联系数w(a,c)=0.75。
步骤403,依据所述关联系数,构建针对所述待分类应用程序的节点图;
在本申请的一种优选实施例中,所述依据所述关联系数,构建针对所述待分类应用程序的节点图的步骤具体可以包括如下子步骤:
子步骤4031,将所述关联系数作为所述待分类应用程序之间边的权重;
子步骤4032,按照所述边的权重,构建针对所述待分类应用程序的节点图。
在具体实现中,当分别获得待分类应用程序两两之间的关联系数后,可以将所述关联系数作为构建节点图的边的权重,即,将任意两个应用程序进行连接作为边,从而构建出节点图,以应用程序之间的关联系数作为对应边的权重值。一般来说,在上述构建出的节点图中,节点间的权重越大,说明它们在多个分类体系中表现出来的相关性越强,例如,若在多个分类体系中,两个应用程序一直属于同一个叶子类目中,则这两个应用程序之间的权重可取得最大值1。
步骤404,判断所述节点图中边的权重是否大于预设阈值;
在具体实现中,可以根据实际的分类需要,首先设定一个权重阈值,然后判断所述节点图中边的权重是否大于预设阈值,若是,则可以保留对应的边,若否,则可以执行步骤405,删除对应的边,从而获得新的节点图。例如,若预设阈值为0.5,则可以首先删除掉节点图中凡是权重值小于0.5的边,得到新的节点图。
步骤405,删除对应的边,以获得新的节点图;
步骤406,对所述新的节点图进行分割,获得所述一个或多个分类图;
在具体实现中,对所述新的节点图进行分割,可以采用社区划分算法FastUnfolding的方式进行。
在本申请的一种优选实施例中,所述对所述新的节点图进行分割,获得所述一个或多个分类图的步骤具体可以包括如下子步骤:
子步骤4061,在所述新的节点图中,对每个待分类应用程序配置标签;
在具体实现中,为方便计算,该标签可以为其用户ID,当然,也可以采用其他方式配置标签,如随机配置,只要保持标签的唯一性即可,本申请实施例对此不加以限制。
子步骤4062,将每个待分类应用程序的标签传递至相连的待分类应用程序;
子步骤4063,从每个待分类应用程序接收到的标签中,按照标签的数量选取一个标签作为所拥有的标签;
子步骤4064,判断在所述新的节点图中,待分类应用程序所拥有的标签是否发生变化,或者,当前是否小于预设的最大迭代次数;
子步骤4065,若是,则返回执行所述将每个待分类应用程序的标签传递至相连的待分类应用程序的步骤;
子步骤4066,若否,则将拥有相同标签的待分类应用程序划分在同一个分类图中,获得一个或多个分类图。
在首次迭代中,可以随机选择标签,由于核心的节点连着其他很多外围节点,其标签被随机到的几率较大,在后续的迭代过程中,核心的节点的标签数量会增加,逐步达到稳定。
当标签稳定或到达最大迭代次数时,具有同样标签的节点属于同一个用户群体,节点的标签即可作为该用用程序的识别标签。
例如,如图5所示,是本申请的一种节点图的示意图,以节点的名称作为节点的标签,即节点R、S、T、U的标签分别为R、S、T、U,则其在迭代的过程如下:
Figure PCTCN2017073867-appb-000007
在第3轮迭代后,应用程序所拥有的标签都为R,不再发生变化,因此,节点R、S、T、U对应的应用程序属于相同的分类,可以将其划分在同一个分类图中。
当然,除了上述社区划分算法之外,还可以采用其他社区划分算法,如GN(Tommunity struTture in soTiRl RnU SiologiTRl networks)算法、LouvRin算法等等,本 申请实施例对此不加以限制。
步骤407,对所述一个或多个分类图进行合并;或者,对所述一个或多个分类图进行再拆分。
在本申请实施例中,当按照上述方法获得新的分类图后,还可以对新的分类图进行再处理,例如,对所述一个或多个分类图进行合并;或者,对所述一个或多个分类图进行再拆分。
在具体实现中,若需要将多个分类图进行合并,可以直接合成,并可以形成层次化结构,例如,将原来的两个分类图A与B,合成后的大分类C的子分类。
在本申请的一种优选实施例中,所述对所述一个或多个分类图进行再拆分的步骤则可以包括如下子步骤:
子步骤4071,计算所述分类图中各应用程序间的边的介数;
子步骤4072,删除最大介数值所对应的边,得到分类子图;
子步骤4073,判断所述分类子图是否为两个连通图;
子步骤4074,若否,则返回计算所述分类子图中各应用程序间的边的介数;
子步骤4075,若是,则停止对分类图进行再拆分。
在具体实现中,可以采用如下公式,计算所述分类图中各应用程序间的边的介数:
Figure PCTCN2017073867-appb-000008
其中,B(e)为边e对应的介数值;q为所述分类图中所有最短路径的数目;p为经过边e的最短路径的数目。
例如,如图6所示,是本申请的一种分类图的示意图,按照上述公式,可以得到各条边的介数值如下:
(1)AB:1/30
(2)BC:4/30
(3)AC:4/30
(4)CD:5/30
(5)DE:4/30
(6)DF:4/30
通过比较,可知,其中边CD的介数值最大,因此删除边CD,由于在删除边CD后,原分类图被拆分成了两个连通图,即分类子图ABC与DEF,达到了拆分的效果,可以 停止对分类图进行再拆分。
在本申请实施例中,当获得新的应用程序分类体系后,还可以根据实际需要对新的分类图进行评估,执行合并或再拆分操作,以保证最终获得的分类的准确性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图7,示出了本申请的一种应用程序的分类装置实施例的结构框图,具体可以包括如下模块:
关联系数计算模块701,用于计算待分类应用程序之间的关联系数,所述待分类应用程序位于一个或多个已知的分类体系中;
节点图构建模块702,用于依据所述关联系数,构建针对所述待分类应用程序的节点图;
节点图分割模块703,用于对所述节点图进行分割,获得一个或多个分类图。
在本申请实施例中,所述关联系数计算模块701具体可以包括如下子模块:
最短路径确定子模块7011,用于分别确定任意两个待分类应用程序在所述一个或多个已知的分类体系中的最短路径;
关联系数计算子模块7012,用于采用所述最短路径,计算所述任意两个待分类应用程序之间的关联系数。
在本申请实施例中,可以采用如下公式,计算所述任意两个待分类应用程序之间的关联系数:
Figure PCTCN2017073867-appb-000009
其中,w(a,b)为待分类应用程序a与b之间的关联系数;
n为已知的分类体系的数量;
shortest_path(a,b)为待分类应用程序a与b在已知的分类体系中的最短路径。
在本申请实施例中,所述节点图构建模块702具体可以包括如下子模块:
节点图构建子模块7021,用于将所述关联系数作为所述待分类应用程序之间边的权重,按照所述边的权重,构建针对所述待分类应用程序的节点图。
在本申请实施例中,所述节点图分割模块703具体可以包括如下子模块:
边的权重判断子模块7031,用于判断所述节点图中边的权重是否大于预设阈值;
第一对应边删除子模块7032,用于在所述边的权重大于预设阈值时,保留对应的边,若否,则删除对应的边,以获得新的节点图;
节点图分割子模块7033,用于对所述新的节点图进行分割,获得所述一个或多个分类图。
在本申请实施例中,所述节点图分割子模块7033具体可以包括如下单元:
配置单元331,用于在所述新的节点图中,对每个待分类应用程序配置标签;
传递单元332,用于将每个待分类应用程序的标签传递至相连的待分类应用程序;
选取单元333,用于从每个待分类应用程序接收到的标签中,按照标签的数量选取一个标签作为所拥有的标签;
判断单元334,用于判断在所述新的节点图中,待分类应用程序所拥有的标签是否发生变化,或者,当前迭代次数是否小于预设的最大迭代次数;
返回单元335,用于在所述待分类应用程序所拥有的标签发生变化,或者,当前迭代次数小于预设的最大迭代次数时,返回传递单元执行将每个待分类应用程序的标签传递至相连的待分类应用程序的步骤;
划分单元336,用于在所述待分类应用程序所拥有的标签未发生变化,或者,当前迭代次数大于或等于预设的最大迭代次数时,将拥有相同标签的待分类应用程序划分在同一个分类图中,获得一个或多个分类图。
在本申请实施例中,所述装置还可以包括如下模块:
分类图合并模块704,用于对所述一个或多个分类图进行合并;以及,
分类图拆分模块705,用于对所述一个或多个分类图进行再拆分。
在本申请实施例中,所述分类图拆分模块705具体可以包括如下子模块:
边的介数计算子模块7051,用于计算所述分类图中各应用程序间的边的介数;
第二对应边删除子模块7052,用于删除最大介数值所对应的边,得到分类子图;
连通图判断子模块7053,用于判断所述分类子图是否为两个连通图;
返回子模块7054,用于在所述分类子图不为两个连通图时,返回边的介数计算子模块执行计算所述分类子图中各应用程序间的边的介数的步骤;
停止子模块7055,用于在所述分类子图为两个连通图时,停止对分类图进行再拆分。
在本申请实施例中,可以采用如下公式,计算所述分类图中各应用程序间的边的介数:
Figure PCTCN2017073867-appb-000010
其中,B(e)为边e对应的介数值;q为所述分类图中所有最短路径的数目;p为经过边e的最短路径的数目。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitory media),如调制的数据信号和载波。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种应用程序的分类方法和一种应用程序的分类装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术 人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (18)

  1. 一种应用程序的分类方法,其特征在于,包括:
    计算待分类应用程序之间的关联系数,所述待分类应用程序位于一个或多个已知的分类体系中;
    依据所述关联系数,构建针对所述待分类应用程序的节点图;
    对所述节点图进行分割,获得一个或多个分类图。
  2. 根据权利要求1所述的方法,其特征在于,所述计算待分类应用程序之间的关联系数的步骤包括:
    分别确定任意两个待分类应用程序在所述一个或多个已知的分类体系中的最短路径;
    采用所述最短路径,计算所述任意两个待分类应用程序之间的关联系数。
  3. 根据权利要求2所述的方法,其特征在于,采用如下公式,计算所述任意两个待分类应用程序之间的关联系数:
    Figure PCTCN2017073867-appb-100001
    其中,w(a,b)为待分类应用程序a与b之间的关联系数;
    n为已知的分类体系的数量;
    shortest_path(a,b)为待分类应用程序a与b在已知的分类体系中的最短路径。
  4. 根据权利要求2或3所述的方法,其特征在于,所述依据所述关联系数,构建针对所述待分类应用程序的节点图的步骤包括:
    将所述关联系数作为所述待分类应用程序之间边的权重;
    按照所述边的权重,构建针对所述待分类应用程序的节点图。
  5. 根据权利要求4所述的方法,其特征在于,所述对所述节点图进行分割,获得一个或多个分类图的步骤包括:
    判断所述节点图中边的权重是否大于预设阈值;
    若是,则保留对应的边,若否,则删除对应的边,以获得新的节点图;
    对所述新的节点图进行分割,获得所述一个或多个分类图。
  6. 根据权利要求5所述的方法,其特征在于,所述对所述新的节点图进行分割,获得所述一个或多个分类图的步骤包括:
    在所述新的节点图中,对每个待分类应用程序配置标签;
    将每个待分类应用程序的标签传递至相连的待分类应用程序;
    从每个待分类应用程序接收到的标签中,按照标签的数量选取一个标签作为所拥有的标签;
    判断在所述新的节点图中,待分类应用程序所拥有的标签是否发生变化,或者,当前是否小于预设的最大迭代次数;
    若是,则返回执行所述将每个待分类应用程序的标签传递至相连的待分类应用程序的步骤;
    若否,则将拥有相同标签的待分类应用程序划分在同一个分类图中,获得一个或多个分类图。
  7. 根据权利要求1或2或3或5或6所述的方法,其特征在于,还包括:
    对所述一个或多个分类图进行合并;或者,
    对所述一个或多个分类图进行再拆分。
  8. 根据权利要求7所述的方法,其特征在于,所述对所述一个或多个分类图进行再拆分的步骤包括:
    计算所述分类图中各应用程序间的边的介数;
    删除最大介数值所对应的边,得到分类子图;
    判断所述分类子图是否为两个连通图;
    若否,则返回计算所述分类子图中各应用程序间的边的介数;
    若是,则停止对分类图进行再拆分。
  9. 根据权利要求8所述的方法,其特征在于,采用如下公式,计算所述分类图中各应用程序间的边的介数:
    Figure PCTCN2017073867-appb-100002
    其中,B(e)为边e对应的介数值;q为所述分类图中所有最短路径的数目;p为经过边e的最短路径的数目。
  10. 一种应用程序的分类装置,其特征在于,包括:
    关联系数计算模块,用于计算待分类应用程序之间的关联系数,所述待分类应用程序位于一个或多个已知的分类体系中;
    节点图构建模块,用于依据所述关联系数,构建针对所述待分类应用程序的节点图;
    节点图分割模块,用于对所述节点图进行分割,获得一个或多个分类图。
  11. 根据权利要求10所述的装置,其特征在于,所述关联系数计算模块包括:
    最短路径确定子模块,用于分别确定任意两个待分类应用程序在所述一个或多个已知的分类体系中的最短路径;
    关联系数计算子模块,用于采用所述最短路径,计算所述任意两个待分类应用程序之间的关联系数。
  12. 根据权利要求11所述的装置,其特征在于,采用如下公式,计算所述任意两个待分类应用程序之间的关联系数:
    Figure PCTCN2017073867-appb-100003
    其中,w(a,b)为待分类应用程序a与b之间的关联系数;
    n为已知的分类体系的数量;
    shortest_path(a,b)为待分类应用程序a与b在已知的分类体系中的最短路径。
  13. 根据权利要求11或12所述的装置,其特征在于,所述节点图构建模块包括:
    节点图构建子模块,用于将所述关联系数作为所述待分类应用程序之间边的权重,按照所述边的权重,构建针对所述待分类应用程序的节点图。
  14. 根据权利要求13所述的装置,其特征在于,所述节点图分割模块包括:
    边的权重判断子模块,用于判断所述节点图中边的权重是否大于预设阈值;
    第一对应边删除子模块,用于在所述边的权重大于预设阈值时,保留对应的边,若否,则删除对应的边,以获得新的节点图;
    节点图分割子模块,用于对所述新的节点图进行分割,获得所述一个或多个分类图。
  15. 根据权利要求14所述的装置,其特征在于,所述节点图分割子模块包括:
    配置单元,用于在所述新的节点图中,对每个待分类应用程序配置标签;
    传递单元,用于将每个待分类应用程序的标签传递至相连的待分类应用程序;
    选取单元,用于从每个待分类应用程序接收到的标签中,按照标签的数量选取一个标签作为所拥有的标签;
    判断单元,用于判断在所述新的节点图中,待分类应用程序所拥有的标签是否发生变化,或者,当前迭代次数是否小于预设的最大迭代次数;
    返回单元,用于在所述待分类应用程序所拥有的标签发生变化,或者,当前迭代次数小于预设的最大迭代次数时,返回传递单元执行将每个待分类应用程序的标签传递至 相连的待分类应用程序的步骤;
    划分单元,用于在所述待分类应用程序所拥有的标签未发生变化,或者,当前迭代次数大于或等于预设的最大迭代次数时,将拥有相同标签的待分类应用程序划分在同一个分类图中,获得一个或多个分类图。
  16. 根据权利要求10或11或12或14或15所述的装置,其特征在于,还包括:
    分类图合并模块,用于对所述一个或多个分类图进行合并;以及,
    分类图拆分模块,用于对所述一个或多个分类图进行再拆分。
  17. 根据权利要求16所述的装置,其特征在于,所述分类图拆分模块包括:
    边的介数计算子模块,用于计算所述分类图中各应用程序间的边的介数;
    第二对应边删除子模块,用于删除最大介数值所对应的边,得到分类子图;
    连通图判断子模块,用于判断所述分类子图是否为两个连通图;
    返回子模块,用于在所述分类子图不为两个连通图时,返回边的介数计算子模块执行计算所述分类子图中各应用程序间的边的介数的步骤;
    停止子模块,用于在所述分类子图为两个连通图时,停止对分类图进行再拆分。
  18. 根据权利要求17所述的装置,其特征在于,采用如下公式,计算所述分类图中各应用程序间的边的介数:
    Figure PCTCN2017073867-appb-100004
    其中,B(e)为边e对应的介数值;q为所述分类图中所有最短路径的数目;p为经过边e的最短路径的数目。
PCT/CN2017/073867 2016-02-29 2017-02-17 一种应用程序的分类方法和装置 Ceased WO2017148273A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP17759124.5A EP3425523A4 (en) 2016-02-29 2017-02-17 APPLICATION PROGRAM CLASSIFICATION METHOD AND DEVICE
JP2018543709A JP2019508814A (ja) 2016-02-29 2017-02-17 アプリケーション分類方法及び装置
US16/116,812 US20180365339A1 (en) 2016-02-29 2018-08-29 Application classification method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610113706.8A CN107133248B (zh) 2016-02-29 2016-02-29 一种应用程序的分类方法和装置
CN201610113706.8 2016-02-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/116,812 Continuation US20180365339A1 (en) 2016-02-29 2018-08-29 Application classification method and apparatus

Publications (1)

Publication Number Publication Date
WO2017148273A1 true WO2017148273A1 (zh) 2017-09-08

Family

ID=59721804

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/073867 Ceased WO2017148273A1 (zh) 2016-02-29 2017-02-17 一种应用程序的分类方法和装置

Country Status (6)

Country Link
US (1) US20180365339A1 (zh)
EP (1) EP3425523A4 (zh)
JP (1) JP2019508814A (zh)
CN (1) CN107133248B (zh)
TW (1) TWI760325B (zh)
WO (1) WO2017148273A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798125B (zh) * 2017-11-10 2021-03-16 携程旅游网络技术(上海)有限公司 基于亲密度模型的准入判定方法、系统、设备及存储介质
CN108052983A (zh) * 2017-12-28 2018-05-18 广州优视网络科技有限公司 应用聚类的方法、装置和设备
CN108647201B (zh) * 2018-04-04 2021-12-31 卓望数码技术(深圳)有限公司 一种基于移动应用的分类识别方法及系统
CN109460467B (zh) * 2018-09-28 2020-02-14 中国科学院电子学研究所苏州研究院 一种网络信息分类体系构建方法
CN110222484B (zh) * 2019-04-28 2023-05-23 五八有限公司 一种用户身份识别方法、装置、电子设备及存储介质
CN111126465B (zh) * 2019-12-14 2023-01-24 中国科学院深圳先进技术研究院 节点分类方法、装置、终端设备及计算机可读存储介质
CN118277914B (zh) * 2023-11-07 2025-01-24 国家计算机网络与信息安全管理中心 一种基于动静结合多维度apk特征的移动应用分类方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521275A (zh) * 2011-11-24 2012-06-27 宇龙计算机通信科技(深圳)有限公司 一种应用程序的分类方法、装置及终端
US20140324873A1 (en) * 2013-04-19 2014-10-30 Neowiz Games Corporation Method, device and recording medium for managing application icon
CN104504140A (zh) * 2015-01-04 2015-04-08 中国联合网络通信集团有限公司 终端桌面图标的分类方法和装置
CN104965829A (zh) * 2014-05-14 2015-10-07 腾讯科技(深圳)有限公司 终端应用分类方法、服务器及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2579913C (en) * 2004-09-13 2014-05-06 Research In Motion Limited Facilitating retrieval of a personal information manager data item
JP2007128389A (ja) * 2005-11-07 2007-05-24 Fujitsu Ltd 単語クラス作成プログラム、単語クラス作成装置、及び単語クラス作成方法、並びに類似度算出プログラム、類似度算出装置、及び類似度算出方法
US7788254B2 (en) * 2007-05-04 2010-08-31 Microsoft Corporation Web page analysis using multiple graphs
JP2013029872A (ja) * 2009-10-19 2013-02-07 Nec Corp 情報推薦システム、方法、及び、プログラム
US8818787B2 (en) * 2011-01-31 2014-08-26 Yahoo! Inc. Method and system for predicting performance of software applications on prospective hardware architecture
US8818918B2 (en) * 2011-04-28 2014-08-26 International Business Machines Corporation Determining the importance of data items and their characteristics using centrality measures
EP2710466A1 (en) * 2011-05-09 2014-03-26 Google, Inc. Identifying applications of interest based on application metadata
US9152694B1 (en) * 2013-06-17 2015-10-06 Appthority, Inc. Automated classification of applications for mobile devices
US9292884B2 (en) * 2013-07-10 2016-03-22 Facebook, Inc. Network-aware product rollout in online social networks
US9569536B2 (en) * 2013-12-17 2017-02-14 Microsoft Technology Licensing, Llc Identifying similar applications
US10229190B2 (en) * 2013-12-31 2019-03-12 Samsung Electronics Co., Ltd. Latent semantic indexing in application classification
CN104281674B (zh) * 2014-09-29 2017-07-11 同济大学 一种基于集聚系数的自适应聚类方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521275A (zh) * 2011-11-24 2012-06-27 宇龙计算机通信科技(深圳)有限公司 一种应用程序的分类方法、装置及终端
US20140324873A1 (en) * 2013-04-19 2014-10-30 Neowiz Games Corporation Method, device and recording medium for managing application icon
CN104965829A (zh) * 2014-05-14 2015-10-07 腾讯科技(深圳)有限公司 终端应用分类方法、服务器及系统
CN104504140A (zh) * 2015-01-04 2015-04-08 中国联合网络通信集团有限公司 终端桌面图标的分类方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3425523A4 *

Also Published As

Publication number Publication date
US20180365339A1 (en) 2018-12-20
EP3425523A1 (en) 2019-01-09
CN107133248B (zh) 2020-04-14
TWI760325B (zh) 2022-04-11
EP3425523A4 (en) 2019-01-09
JP2019508814A (ja) 2019-03-28
CN107133248A (zh) 2017-09-05
TW201734775A (zh) 2017-10-01

Similar Documents

Publication Publication Date Title
WO2017148273A1 (zh) 一种应用程序的分类方法和装置
CN110019560B (zh) 一种基于知识图谱的查询方法及装置
CN105404627B (zh) 一种用于确定搜索结果的方法与设备
CN112434811A (zh) 知识图谱构建方法及装置、计算设备、存储介质
WO2016101811A1 (zh) 一种信息排序方法及装置
CN103593393B (zh) 基于微博互动关系挖掘社交圈的方法及装置
CN104077723B (zh) 一种社交网络推荐系统及方法
CN111931045B (zh) 一种基于元学习的异质信息网络冷启动推荐方法及装置
CN113760521B (zh) 一种虚拟资源的分配方法和装置
WO2019076113A1 (zh) 一种信息处理方法、装置及设备
US11741101B2 (en) Estimating execution time for batch queries
CN107092609A (zh) 一种信息推送方法及装置
CN111078773A (zh) 一种数据处理方法及装置
CN107358535B (zh) 一种社区发现方法及装置
CN109255051B (zh) 一种视频搜索方法、装置、云存储系统及计算机设备
US8738628B2 (en) Community profiling for social media
CN114357198A (zh) 一种针对多个知识图谱的实体融合方法及装置
CN106503245B (zh) 一种支撑点集合的选择方法及装置
WO2018006791A1 (zh) 一种网管业务数据管理方法和网管业务数据管理装置
CN107908626A (zh) 公司相似度的计算方法及装置
CN112685557B (zh) 可视化信息资源管理方法及装置
CN117112893B (zh) 产销品推荐方法、装置、计算机设备和存储介质
CN111651456B (zh) 潜在用户确定方法、业务推送方法及装置
CN114398434A (zh) 结构化信息抽取方法、装置、电子设备和存储介质
WO2022041600A1 (zh) 一种对象间相似性的确定方法及装置

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2018543709

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2017759124

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2017759124

Country of ref document: EP

Effective date: 20181001

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17759124

Country of ref document: EP

Kind code of ref document: A1