CN112988135A - Task unit recommendation method and device for open source software and computer equipment - Google Patents

Task unit recommendation method and device for open source software and computer equipment Download PDF

Info

Publication number
CN112988135A
CN112988135A CN202110548815.3A CN202110548815A CN112988135A CN 112988135 A CN112988135 A CN 112988135A CN 202110548815 A CN202110548815 A CN 202110548815A CN 112988135 A CN112988135 A CN 112988135A
Authority
CN
China
Prior art keywords
task unit
development
information
unit
task
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
CN202110548815.3A
Other languages
Chinese (zh)
Other versions
CN112988135B (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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202110548815.3A priority Critical patent/CN112988135B/en
Publication of CN112988135A publication Critical patent/CN112988135A/en
Application granted granted Critical
Publication of CN112988135B publication Critical patent/CN112988135B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The application relates to a task unit recommendation method and device for open source software and computer equipment. The method comprises the following steps: the method comprises the steps that historical development unit data of an open source project are obtained, the historical development unit data are preprocessed, and component information and serial number information of development units in the historical development unit data and association information between development users and the development units are obtained; constructing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation; embedding entity information and relation information of entities in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm, training a preset task unit recommendation model through a deep learning algorithm, using the trained task unit recommendation model for monitoring open source items, and recommending task units based on scene perception according to behaviors of development users.

Description

Task unit recommendation method and device for open source software and computer equipment
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method and an apparatus for recommending task units for open source software, a computer device, and a storage medium.
Background
Open sources have become the focus of attention in academia and industry as an important driving force for current software innovation. Over 8000 hundred million lines of codes and 500 ten thousand open source projects are created in various open source communities around the world, 10 thousand open source organizations with different scales are formed, and the development pattern of the global information industry is gradually changed.
The association between tasks and contributions exists in various forms, and some associations also have the phenomenon of cross-overlapping of different reasons and forms. The existence of these complex relationships greatly increases the difficulty of understanding the project. On one hand, the complex development unit relationship makes the threshold of a novice participating in the project development too high, and cannot attract more contributors to participate in the project development, so that the project development progress becomes slow, and on the other hand, the complex development unit relationship is not beneficial to the existing participators to know and master the development situation of the project, so that the behavior of the developer cannot be well guided, and the development activities such as repeated development and the like which waste time and energy occur. These ineffective development activities make the code contribution of the contributors treated as ineffective, striking the initiative of the contributors to participate in open source development, while the maintainers spend a great deal of time and effort reviewing the code of the same function, wasting unnecessary time, hindering the development of projects.
The current open source software development support platform does not make uniform technical support for the association between task units, mainly depends on manual discovery and marking of the association in the development process of a user, the marking method of the user depends on language habits with large differences, and related knowledge of projects contained in the association is difficult to spread and reuse. The recommendation system used in the current open source software has a single function, can only carry out related recommendation according to a certain task, cannot meet the personalized requirements of users, is difficult to realize comprehensive understanding of associated knowledge, and has the problems of poor adaptability and low efficiency.
Disclosure of Invention
In view of the foregoing, it is desirable to provide a method, an apparatus, a computer device, and a storage medium for recommending task units for open source software, which can improve the development efficiency of the open source software.
A task unit recommendation method for open source software comprises the following steps:
acquiring historical development unit data of an open source project, preprocessing the historical development unit data to obtain component information and serial number information of a development unit in the historical development unit data and association information between a development user and the development unit;
establishing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation;
embedding the entity information of the entity and the relation information of the relation in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm to obtain vectorization information;
training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model;
and using the trained task unit recommendation model for monitoring the open source project, and recommending the task unit based on scene perception according to the behavior of the development user.
In one embodiment, the method further comprises the following steps: acquiring behavior information of a development user, and triggering a recommendation mechanism according to the behavior information;
determining a use scene according to the behavior information, and determining a task unit to be recommended according to the use scene;
judging whether the task unit to be recommended exists in the development task unit association map;
when the task unit to be recommended does not exist, adding the task unit to be recommended into the development task unit association map;
and recommending the task unit through the trained task unit recommendation model.
In one embodiment, the method further comprises the following steps: acquiring the task unit to be recommended;
preprocessing data in the task unit to be recommended to obtain entity information, relationship information and entity attribute information of the task unit to be recommended;
and adding the task unit to be recommended into the development task unit association map according to the entity information, the relationship information and the entity attribute information.
In one embodiment, the method further comprises the following steps: and after the trained task unit recommendation model is used for recommending the task units, identifying the current recommendation scene and the reason associated with recommendation.
In one embodiment, the method further comprises the following steps: after the trained task unit recommendation model is used for recommending the task unit, the open source project is continuously monitored through the task unit recommendation model.
In one embodiment, the method further comprises the following steps: training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model; and different use scenes in the task unit recommendation model correspond to corresponding task units.
In one embodiment, the method further comprises the following steps: the open source project is an open source software development application project.
An open source software oriented task unit recommendation device, the device comprising:
the data preprocessing module is used for acquiring historical development unit data of an open source project, preprocessing the historical development unit data and obtaining component information and serial number information of a development unit in the historical development unit data and association information between a development user and the development unit;
the association map construction module is used for constructing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation;
the vector processing module is used for embedding the entity information of the entity and the relation information of the relation in the development task unit association map into a continuous vector space through a knowledge map embedding algorithm to obtain vectorization information;
the task unit recommendation model training module is used for training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model;
and the task unit recommendation module is used for using the trained task unit recommendation model for monitoring the open source project and recommending the task unit based on scene perception according to the behavior of the development user.
A computer device comprising a memory and a processor, the memory storing a computer program, the processor implementing the following steps when executing the computer program:
acquiring historical development unit data of an open source project, preprocessing the historical development unit data to obtain component information and serial number information of a development unit in the historical development unit data and association information between a development user and the development unit;
establishing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation;
embedding the entity information of the entity and the relation information of the relation in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm to obtain vectorization information;
training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model;
and using the trained task unit recommendation model for monitoring the open source project, and recommending the task unit based on scene perception according to the behavior of the development user.
A computer-readable storage medium, on which a computer program is stored which, when executed by a processor, carries out the steps of:
acquiring historical development unit data of an open source project, preprocessing the historical development unit data to obtain component information and serial number information of a development unit in the historical development unit data and association information between a development user and the development unit;
establishing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation;
embedding the entity information of the entity and the relation information of the relation in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm to obtain vectorization information;
training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model;
and using the trained task unit recommendation model for monitoring the open source project, and recommending the task unit based on scene perception according to the behavior of the development user.
According to the open-source software oriented task unit recommendation method, the open-source software oriented task unit recommendation device, the computer equipment and the storage medium, historical development unit data of an open-source project are acquired, and are preprocessed, so that component information and serial number information of development units in the historical development unit data and association information between development users and the development units are obtained; constructing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation; embedding entity information and relation information of entities in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm, training a preset task unit recommendation model through a deep learning algorithm, using the trained task unit recommendation model for monitoring open source items, and recommending task units based on scene perception according to behaviors of development users. According to the method, the relevant task units are recommended to the user through scene perception according to the specific information of the development units processed by the user, the background knowledge required for solving the current task units is obtained, and the promotion and solution of the development tasks are promoted; the problem that the development view of open source software is not clear is solved, and from the perspective of a development task unit, a complete association map is constructed, so that the active development of open source ecology is facilitated.
Drawings
FIG. 1 is a flowchart illustrating a task unit recommendation method for open source software in one embodiment;
FIG. 2 is a flowchart illustrating a task unit recommendation method for open source software in another embodiment;
FIG. 3 is a schematic flowchart illustrating monitoring and recommendation in a task unit recommendation method for open source software according to another embodiment;
FIG. 4 is a block diagram of an embodiment of an open source software oriented task unit recommendation device;
FIG. 5 is a diagram illustrating an internal structure of a computer device according to an embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
The task unit recommendation method for open source software can be applied to the application environment shown in fig. 1. The terminal executes a task unit recommendation method facing open source software, and the historical development unit data is preprocessed by acquiring the historical development unit data of an open source project to obtain component information and serial number information of a development unit in the historical development unit data and association information between a development user and the development unit; constructing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation; embedding entity information and relation information of entities in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm, training a preset task unit recommendation model through a deep learning algorithm, using the trained task unit recommendation model for monitoring open source items, and recommending task units based on scene perception according to behaviors of development users. The terminal may be, but is not limited to, various personal computers, notebook computers, and tablet computers.
In one embodiment, as shown in fig. 1, a task unit recommendation method for open source software is provided, which includes the following steps:
102, acquiring historical development unit data of the open source project, preprocessing the historical development unit data, and obtaining component information and serial number information of development units in the historical development unit data and association information between development users and the development units.
In typical open source software development practices, it often takes a lot of time for maintainers and peripheral contributors to learn about the content of the development unit in order to learn more about the information while performing tasks, reporting defects, characterizing, etc. However, the mechanism supported by the existing open source development platform has a defect, and it is difficult to accurately and comprehensively master related information simply through a keyword retrieval method, under such a situation, situations such as repetition and conflict occur, which developers are unwilling to see, so that resources are wasted, and the enthusiasm of contributors is reduced.
The behavior of the user corresponds to different scenes of the development of the open source software, such as task unit creation, code submission, task unit discussion participation, task unit review and the like. The method provided by the invention can utilize the relationship between the tasks and the contributions of the open source software to recommend the related task units, and recommend different task units in different scenes through scene perception. Specifically, according to the specific information of the development unit processed by the user, the related task unit is recommended to the user, the background knowledge required for solving the current task unit is obtained, and the development task is promoted to be promoted and solved.
And step 104, constructing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation.
The association map is formed by expressing an association map. Important graphs related to the problems can be found through the associated graphs, so that emphasis is taken to help the strategy making. The invention provides a construction method of a development task unit association graph based on open source software development unit components and unit association of user behaviors.
The association between the development units can be regarded as a special communication mode, in the association, developers not only contribute knowledge about projects, but also associate different units, the purpose of combining fragmented knowledge in communities is achieved, and a good idea is provided for maintaining project states. Therefore, the relationship between tasks and contributions is clarified, so that not only the development of projects is promoted from the development perspective, but also the influence of the projects is favorably expanded by attracting novices to enter project contribution codes.
And 106, embedding the entity information and the relation information of the entity in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm to obtain vectorization information.
The vector space is also called linear space, and representing the graph spectrum to the continuous vector space abstracts the problem, expresses the problem in a mathematical mode simply and clearly, and is beneficial to the training and the use of a subsequent recommendation model.
And 108, training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model.
The deep learning is the same as the traditional machine learning, the function mapping is learned, but the performance is better compared with the traditional machine learning, the information of the historical development unit can be fully utilized to form information interaction by training the preset task unit recommendation model through the deep learning algorithm, the fragmentation and disorder primary resources on the Internet can be converted into the aggregation and order shared resources, and the wide-range open resource sharing is realized.
And step 110, using the trained task unit recommendation model for monitoring the open source project, and recommending the task unit based on scene perception according to the behavior of the development user.
The recommendation of the task unit realized by the method of the invention fully integrates the information of the historical development unit, and the recommendation is more accurate, so that the development efficiency of the open source software is higher.
In the open-source software-oriented task unit recommendation method, historical development unit data of an open-source project are acquired and preprocessed to obtain component information and serial number information of development units in the historical development unit data and association information between development users and the development units; constructing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation; embedding entity information and relation information of entities in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm, training a preset task unit recommendation model through a deep learning algorithm, using the trained task unit recommendation model for monitoring open source items, and recommending task units based on scene perception according to behaviors of development users. According to the method, the relevant task units are recommended to the user through scene perception according to the specific information of the development units processed by the user, the background knowledge required for solving the current task units is obtained, and the promotion and solution of the development tasks are promoted; the problem that the development view of open source software is not clear is solved, and from the perspective of a development task unit, a complete association map is constructed, so that the active development of open source ecology is facilitated.
In one embodiment, the method further comprises the following steps: acquiring behavior information of a development user, and triggering a recommendation mechanism according to the behavior information; determining a use scene according to the behavior information, and determining a task unit to be recommended according to the use scene; judging whether a task unit to be recommended exists in the development task unit association map; if the task unit to be recommended does not exist, adding the task unit to be recommended into the development task unit association map; and recommending the task unit through the trained task unit recommendation model.
In one embodiment, the method further comprises the following steps: acquiring a task unit to be recommended; preprocessing data in the task unit to be recommended to obtain entity information, relationship information and entity attribute information of the task unit to be recommended; and adding the task unit to be recommended into the development task unit association map according to the entity information, the relationship information and the entity attribute information.
In one embodiment, the method further comprises the following steps: after the recommendation of the task unit is carried out through the trained task unit recommendation model, a current recommendation scene and a reason associated with the recommendation are identified.
In one embodiment, the method further comprises the following steps: after the trained task unit recommendation model is used for recommending the task units, the open source items are continuously monitored through the task unit recommendation model.
In one embodiment, the method further comprises the following steps: training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model; and different use scenes in the task unit recommendation model correspond to corresponding task units.
Context awareness refers to recommending different types of related task elements according to different stages of open source software development (creating task elements, submitting code, participating in task element discussion, task element review, etc.). Such as: when the task unit is created, the task unit with the relationship of similarity, cooperation, substitution and the like with the current unit is recommended emphatically; when the code is submitted, a task unit which is crossed with the currently modified code file and the code segment or completes the same task is recommended in an emphatic mode; when participating in the discussion of the task units, other units capable of supplementing the background knowledge of the current task unit are intensively recommended; when the task units are reviewed, the same type of units are recommended, and the reviewers are assisted to master the characteristics of the task units.
In one embodiment, the method further comprises the following steps: the open source project is an open source software development application project.
It should be understood that, although the steps in the flowchart of fig. 1 are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least a portion of the steps in fig. 1 may include multiple sub-steps or multiple stages that are not necessarily performed at the same time, but may be performed at different times, and the order of performance of the sub-steps or stages is not necessarily sequential, but may be performed in turn or alternately with other steps or at least a portion of the sub-steps or stages of other steps.
In a specific embodiment, as shown in fig. 2, a method for recommending task units for open-source software is provided, including:
s100: when an open source project is given for recommendation, firstly, a history development unit of the project is collected, and collected data is preprocessed;
s200: analyzing important components from the development unit to serve as entities of the development task unit association map, taking user behaviors and association between units as the relationship of the development task unit association map, taking the sequence number of the development unit as the attribute of the entities, and constructing the development task unit association map of the development unit by using the elements;
s300: embedding the association of the entities and the units in the development task unit association graph into a continuous vector space by using a knowledge graph embedding algorithm, and providing input for a subsequent algorithm;
s400: constructing a recommendation model of a relevant unit by using a deep learning algorithm by utilizing the association between entities in the development task unit association map;
s500: and continuously monitoring the project, and recommending the task unit by the related unit under different scenes.
The detailed flow of monitoring and recommendation is shown in fig. 3:
s510: under the condition of continuously supervising the project, the user behavior triggers a recommendation mechanism;
s520: judging user behaviors, perceiving a use scene, and selecting a task unit to be recommended;
s530: judging whether the task unit exists in the existing map;
s531: if the unit does not exist, collecting the data of the task unit, and performing data preprocessing;
s532: analyzing the new unit entity, the relation and the attribute to form a triple adding development task unit association map;
s540: recommending the task unit by using a recommendation model, and identifying a current recommendation scene and a reason associated with recommendation;
s550: the listening to the item continues.
In one embodiment, as shown in fig. 4, there is provided an open-source software-oriented task unit recommendation device, including: the system comprises a data preprocessing module 402, an association map building module 404, a vector processing module 406, a task unit recommendation model training module 408 and a task unit recommendation module 410, wherein:
the data preprocessing module 402 is configured to acquire historical development unit data of an open source project, preprocess the historical development unit data, and obtain component information and sequence number information of a development unit in the historical development unit data and association information between a development user and the development unit;
an association map construction module 404, configured to construct a development task unit association map by using the component information as an entity of the association map, the sequence number information as an entity attribute, and the association information as a relationship;
the vector processing module 406 is configured to embed entity information and relationship information of an entity in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm, so as to obtain vectorization information;
the task unit recommendation model training module 408 is configured to train a preset task unit recommendation model through a deep learning algorithm according to the developed task unit association map and the vectorization information to obtain a trained task unit recommendation model;
and the task unit recommending module 410 is configured to use the trained task unit recommending model for monitoring of open source items, and recommend a task unit based on scene perception according to the behavior of a development user.
The task unit recommending module 410 is further configured to obtain behavior information of the development user, and trigger a recommending mechanism according to the behavior information; determining a use scene according to the behavior information, and determining a task unit to be recommended according to the use scene; judging whether a task unit to be recommended exists in the development task unit association map; if the task unit to be recommended does not exist, adding the task unit to be recommended into the development task unit association map; and recommending the task unit through the trained task unit recommendation model.
The task unit recommending module 410 is further configured to obtain a task unit to be recommended; preprocessing data in the task unit to be recommended to obtain entity information, relationship information and entity attribute information of the task unit to be recommended; and adding the task unit to be recommended into the development task unit association map according to the entity information, the relationship information and the entity attribute information.
The task unit recommendation module 410 is further configured to identify a current recommendation scenario and a reason associated with the recommendation after the recommendation of the task unit is performed through the trained task unit recommendation model.
The task unit recommendation module 410 is further configured to continuously monitor the open source item through the task unit recommendation model.
For specific limitations of the task unit recommendation device for the open-source software, reference may be made to the above limitations of the task unit recommendation method for the open-source software, and details are not described herein again. All or part of each module in the task unit recommending device facing the open source software can be realized by software, hardware and a combination thereof. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as shown in fig. 5. The computer device includes a processor, a memory, a network interface, a display screen, and an input device connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement an open source software oriented task unit recommendation method. The display screen of the computer equipment can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer equipment can be a touch layer covered on the display screen, a key, a track ball or a touch pad arranged on the shell of the computer equipment, an external keyboard, a touch pad or a mouse and the like.
Those skilled in the art will appreciate that the architecture shown in fig. 5 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
In an embodiment, a computer device is provided, comprising a memory storing a computer program and a processor implementing the steps of the above method embodiments when executing the computer program.
In an embodiment, a computer-readable storage medium is provided, on which a computer program is stored, which computer program, when being executed by a processor, carries out the steps of the above-mentioned method embodiments.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by hardware instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium used in the embodiments provided herein may include non-volatile and/or volatile memory, among others. Non-volatile memory can include read-only memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), Rambus Direct RAM (RDRAM), direct bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (10)

1. A task unit recommendation method for open source software is characterized by comprising the following steps:
acquiring historical development unit data of an open source project, preprocessing the historical development unit data to obtain component information and serial number information of a development unit in the historical development unit data and association information between a development user and the development unit;
establishing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation;
embedding the entity information of the entity and the relation information of the relation in the development task unit association graph into a continuous vector space through a knowledge graph embedding algorithm to obtain vectorization information;
training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model;
and using the trained task unit recommendation model for monitoring the open source project, and recommending the task unit based on scene perception according to the behavior of the development user.
2. The method of claim 1, wherein the using the trained task unit recommendation model for the listening of the open-source project, and performing the recommendation of the task unit based on the scene perception according to the behavior of the development user comprises:
acquiring behavior information of a development user, and triggering a recommendation mechanism according to the behavior information;
determining a use scene according to the behavior information, and determining a task unit to be recommended according to the use scene;
judging whether the task unit to be recommended exists in the development task unit association map;
when the task unit to be recommended does not exist, adding the task unit to be recommended into the development task unit association map;
and recommending the task unit through the trained task unit recommendation model.
3. The method of claim 2, wherein adding the task unit to be recommended to the development task unit association graph comprises:
acquiring the task unit to be recommended;
preprocessing data in the task unit to be recommended to obtain entity information, relationship information and entity attribute information of the task unit to be recommended;
and adding the task unit to be recommended into the development task unit association map according to the entity information, the relationship information and the entity attribute information.
4. The method of claim 3, further comprising, after the recommending task units by the trained task unit recommendation model:
the current recommendation scenario and reason for recommendation association are identified.
5. The method of claim 4, wherein after the recommending task units through the trained task unit recommending model, further comprising:
and continuously monitoring the open source project through the task unit recommendation model.
6. The method according to claim 5, wherein training a preset task unit recommendation model by a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model comprises:
training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model; and different use scenes in the task unit recommendation model correspond to corresponding task units.
7. The method of any one of claims 1 to 6, wherein the open-source project is an open-source software development application project.
8. An open source software oriented task unit recommendation device, the device comprising:
the data preprocessing module is used for acquiring historical development unit data of an open source project, preprocessing the historical development unit data and obtaining component information and serial number information of a development unit in the historical development unit data and association information between a development user and the development unit;
the association map construction module is used for constructing a development task unit association map by taking the component information as an entity of the association map, the sequence number information as an entity attribute and the association information as a relation;
the vector processing module is used for embedding the entity information of the entity and the relation information of the relation in the development task unit association map into a continuous vector space through a knowledge map embedding algorithm to obtain vectorization information;
the task unit recommendation model training module is used for training a preset task unit recommendation model through a deep learning algorithm according to the development task unit association map and the vectorization information to obtain a trained task unit recommendation model;
and the task unit recommendation module is used for using the trained task unit recommendation model for monitoring the open source project and recommending the task unit based on scene perception according to the behavior of the development user.
9. The apparatus of claim 8, wherein the task unit recommendation module is further configured to:
acquiring behavior information of a development user, and triggering a recommendation mechanism according to the behavior information;
determining a use scene according to the behavior information, and determining a task unit to be recommended according to the use scene;
judging whether the task unit to be recommended exists in the development task unit association map;
when the task unit to be recommended does not exist, adding the task unit to be recommended into the development task unit association map;
and recommending the task unit through the trained task unit recommendation model.
10. A computer device comprising a memory and a processor, the memory storing a computer program, wherein the processor implements the steps of the method of any one of claims 1 to 7 when executing the computer program.
CN202110548815.3A 2021-05-20 2021-05-20 Task unit recommendation method and device for open source software and computer equipment Active CN112988135B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110548815.3A CN112988135B (en) 2021-05-20 2021-05-20 Task unit recommendation method and device for open source software and computer equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110548815.3A CN112988135B (en) 2021-05-20 2021-05-20 Task unit recommendation method and device for open source software and computer equipment

Publications (2)

Publication Number Publication Date
CN112988135A true CN112988135A (en) 2021-06-18
CN112988135B CN112988135B (en) 2021-07-27

Family

ID=76337712

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110548815.3A Active CN112988135B (en) 2021-05-20 2021-05-20 Task unit recommendation method and device for open source software and computer equipment

Country Status (1)

Country Link
CN (1) CN112988135B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115221310A (en) * 2022-09-20 2022-10-21 北京大学 Open source application automatic recommendation method and device based on knowledge graph

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150235143A1 (en) * 2003-12-30 2015-08-20 Kantrack Llc Transfer Learning For Predictive Model Development
CN107463262A (en) * 2017-08-14 2017-12-12 中国电子科技集团公司第二十八研究所 A kind of multi-person synergy exchange method based on HoloLens
CN108596501A (en) * 2018-04-28 2018-09-28 华东师范大学 Method for allocating tasks, device, medium, equipment based on technical ability figure and system
CN109857872A (en) * 2019-02-18 2019-06-07 浪潮软件集团有限公司 The information recommendation method and device of knowledge based map
CN111061959A (en) * 2019-12-29 2020-04-24 东南大学 Developer characteristic-based crowd-sourcing software task recommendation method
CN111522979A (en) * 2020-04-20 2020-08-11 携程旅游网络技术(上海)有限公司 Picture sorting recommendation method and device, electronic equipment and storage medium
CN111861185A (en) * 2020-07-14 2020-10-30 中国人民解放军军事科学院战争研究院 Task tree-based task intelligent recommendation method and device
CN111949800A (en) * 2020-07-06 2020-11-17 北京大学 Method and system for establishing knowledge graph of open source project
CN111949307A (en) * 2020-07-06 2020-11-17 北京大学 Optimization method and system of open source project knowledge graph
CN112487200A (en) * 2020-11-25 2021-03-12 吉林大学 Improved deep recommendation method containing multi-side information and multi-task learning
CN112800326A (en) * 2021-01-18 2021-05-14 吉林大学 Improved Ripp-MKR recommendation method combining multitask learning and knowledge graph

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150235143A1 (en) * 2003-12-30 2015-08-20 Kantrack Llc Transfer Learning For Predictive Model Development
CN107463262A (en) * 2017-08-14 2017-12-12 中国电子科技集团公司第二十八研究所 A kind of multi-person synergy exchange method based on HoloLens
CN108596501A (en) * 2018-04-28 2018-09-28 华东师范大学 Method for allocating tasks, device, medium, equipment based on technical ability figure and system
CN109857872A (en) * 2019-02-18 2019-06-07 浪潮软件集团有限公司 The information recommendation method and device of knowledge based map
CN111061959A (en) * 2019-12-29 2020-04-24 东南大学 Developer characteristic-based crowd-sourcing software task recommendation method
CN111522979A (en) * 2020-04-20 2020-08-11 携程旅游网络技术(上海)有限公司 Picture sorting recommendation method and device, electronic equipment and storage medium
CN111949800A (en) * 2020-07-06 2020-11-17 北京大学 Method and system for establishing knowledge graph of open source project
CN111949307A (en) * 2020-07-06 2020-11-17 北京大学 Optimization method and system of open source project knowledge graph
CN111861185A (en) * 2020-07-14 2020-10-30 中国人民解放军军事科学院战争研究院 Task tree-based task intelligent recommendation method and device
CN112487200A (en) * 2020-11-25 2021-03-12 吉林大学 Improved deep recommendation method containing multi-side information and multi-task learning
CN112800326A (en) * 2021-01-18 2021-05-14 吉林大学 Improved Ripp-MKR recommendation method combining multitask learning and knowledge graph

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CHERI CHEN: "基于知识图谱的智能推荐", 《HTTPS://BBS.HUAWEICLOUD.COM/BLOGS/197613》 *
JACK HAMPSON等: "Building a knowledge graph with topic networks in Amazon Neptune", 《HTTPS://AWS.AMAZON.COM/BLOGS/DATABASE/BUILDING-A-KNOWLEDGE-GRAPH-WITH-TOPIC-NETWORKS-IN-AMAZON-NEPTUNE/》 *
Q.LI等: "Unifying Task-Oriented Knowledge Graph Learning and Recommendation", 《IEEE ACCESS》 *
张建等: "数据驱动的软件开发者智能协作技术", 《大数据》 *
杨程: "面向群体化软件开发的推荐方法与技术研究", 《中国博士学位论文全文数据库 信息科技辑》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115221310A (en) * 2022-09-20 2022-10-21 北京大学 Open source application automatic recommendation method and device based on knowledge graph

Also Published As

Publication number Publication date
CN112988135B (en) 2021-07-27

Similar Documents

Publication Publication Date Title
Estoup et al. Estimation of demo‐genetic model probabilities with Approximate Bayesian Computation using linear discriminant analysis on summary statistics
US20150213392A1 (en) System and Method of Using Task Fingerprinting to Predict Task Performance
CN112035611B (en) Target user recommendation method, device, computer equipment and storage medium
EP4024203A1 (en) System performance optimization
Lee et al. Patch reviewer recommendation in oss projects
CN112287068A (en) Artificial intelligence-based inquiry dialogue data processing method and device
CN112434217A (en) Position information recommendation method, system, computer equipment and storage medium
CN112988135B (en) Task unit recommendation method and device for open source software and computer equipment
Zolaktaf et al. What to learn next: Recommending commands in a feature-rich environment
Shrot et al. Crisp: an interruption management algorithm based on collaborative filtering
CN112256537A (en) Model running state display method and device, computer equipment and storage medium
CN110807693A (en) Album recommendation method, device, equipment and storage medium
CN111652282B (en) Big data-based user preference analysis method and device and electronic equipment
WO2021068249A1 (en) Method and apparatus for hardware simulation and emulation during running, and device and storage medium
Singla et al. Analysis of software engineering for agile machine learning projects
Barboza et al. Blockly-DS: Blocks Programming for Data Science with Visual, Statistical, Descriptive and Predictive Analysis
US20160042277A1 (en) Social action and social tie prediction
CN112905763A (en) Session system development method, device, computer equipment and storage medium
Alghamdi et al. Developing a Web Credibility Evaluation Tool Using PROMETHEE Method.
Manouselis et al. Layered evaluation in recommender systems: A retrospective assessment
CN111061875A (en) Hyper-parameter determination method, device, computer equipment and storage medium
CN113379271B (en) Open source platform-oriented abandoned contribution takeover recommendation method, device and equipment
Bennet et al. Predictive Analysis of Startup Ecosystems: Integration of Technology Acceptance Models with Random Forest Techniques
CN115048526B (en) Method, device and equipment for tracking revision progress of pull request based on state mark
Lim et al. Quantifying usability prioritization using K-means clustering algorithm on hybrid metric features for MAR learning

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