Using machine learning to prevent content IP issues at different stages of the project lifecycle
Through machine learning models and digital DNA signature technology, the problem of intellectual property protection of digital content in various stages of the project life cycle is solved, efficient monitoring and protection of digital content is achieved, and resource waste and legal risks are reduced.
Patent Information
- Application Number
- CN202110090708.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-08-31
- Filing Date
- 2021-01-22
- Publication Date
- 2024-12-20
- Estimated Expiration
- 2041-01-22
AI Technical Summary
Existing tools are difficult to effectively prevent the intellectual property problems of digital content in various stages of the project life cycle, especially when the content is copied, stored and transmitted, it is easy to miss intellectual property infringement caused by the use of fuzzy content, and it is not related to software code. Related hardware development and CAD files and other contents are insufficiently protected.
Using machine learning models to combine digital DNA signatures and policy implementation, receive content data and metadata, generate and store digital signatures, process digital signatures and rule data of new content through machine learning models, determine whether it violates relevant rules, and perform corresponding actions to prevent intellectual property issues.
Effectively save computing resources, reduce management and regulatory costs, improve the accuracy and efficiency of intellectual property protection, and prevent intellectual property infringement and legal issues.
Smart Images

Figure CN113177864B_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This patent application claims priority to U.S. Provisional Patent Application No. 62 / 965,449, entitled “UTILIZING POLICYENFORCEMENT AND MODELS TO PREVENT INTELLECTUAL PROPERTY ISSUES FOR CONTENT DURING DIFFERENT STAGES OF A PROJECT LIFECYCLE FOR THE CONTENT”, filed on January 24, 2020. The disclosure of that prior application is considered a part of and incorporated by reference into this patent application. Technical Field
[0003] Embodiments of the present disclosure relate to machine learning, and more particularly to utilizing machine learning to prevent intellectual property issues with content during different stages of a project lifecycle. Background Art
[0004] Intellectual property is a type of property that consists of intangible creations of the human mind. Common types of intellectual property include copyrights, patents, trademarks, and trade secrets. Intellectual property rights allow the creator or owner of the intellectual property to benefit from the work and investment expended to obtain the intellectual property. Summary of the invention
[0005] In some implementations, a method includes: receiving, by a device, content data and metadata, the content data identifying content created by a user, the metadata associated with the content; receiving, by the device, rule data identifying rules associated with utilization of the content; using the metadata to generate, by the device, a digital DNA signature for the content in near real time; storing, by the device in a repository, the rule data, all content in the content of the content data, the digital DNA signature, and the relationship between the digital DNA signatures; receiving, by the device from a client device, new content generated based on specific content of the content data and new metadata associated with the new content; using the new metadata to generate a new digital DNA signature for the new content; processing, by the device, the new digital DNA signature, the rule data, and the digital DNA signature using a machine learning model to determine whether the new content violates one or more rules of the rule data; and performing, by the device, one or more actions based on whether the new content violates one or more rules of the rule data.
[0006] In some implementations, a device includes one or more memories; and one or more processors communicatively coupled to the one or more memories, the one or more processors configured to: receive content data and metadata, the content data identifying content created by a user, the metadata associated with the content; receive rule data, the rule data identifying rules associated with utilization of the content; use the metadata to generate a digital DNA signature for the content in near real time; use the metadata and the content data to generate a digital identifier for the content; associate the digital identifier with the corresponding digital DNA signature; store the rule data, all content in the content of the content data, the digital DNA signature, and the digital identifier in a repository; receive new content generated based on specific content of the content data and new metadata associated with the new content from a client device; use the new metadata to generate a new digital DNA signature for the new content; use a machine learning model to process the new digital DNA signature, the rule data, the digital DNA signature, and the digital identifier to determine whether the new content violates one or more rules of the rule data; and perform one or more actions based on whether the new content violates one or more rules of the rule data.
[0007] In some implementations, a non-transitory computer-readable medium storing instructions includes one or more instructions that, when executed by one or more processors, cause the one or more processors to: store in a repository: content data identifying content and metadata associated with the content, rule data identifying rules associated with utilization of the content, and a digital DNA signature for the content generated in near real time based on the metadata; receive from a client device new content generated based on specific content of the content data and new metadata associated with the new content; generate a new digital DNA signature for the new content using the new metadata; process the new digital DNA signature, the rule data, and the digital DNA signature using a machine learning model to determine whether the new content violates one or more rules of the rule data; and perform one or more actions based on whether the new content violates one or more rules of the rule data. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Figure 1A-1G is a schematic diagram of one or more example implementations described herein.
[0009] Figure 2A-2C is a schematic diagram of one or more example implementations described herein.
[0010] Figure 3A and Figure 3B is a schematic diagram of one or more example implementations described herein.
[0011] Figure 4is a diagram illustrating an example of combining preventing intellectual property issues with content during different stages of a project life cycle, training, and using a machine learning model.
[0012] Figure 5 is a schematic diagram of an example environment in which the systems and / or methods described herein may be implemented.
[0013] Figure 6 yes Figure 5 A schematic diagram of example components of one or more devices.
[0014] Figure 7 is a flow chart of an example process associated with utilizing machine learning to prevent intellectual property issues with content during different stages of a project lifecycle. DETAILED DESCRIPTION
[0015] The following detailed description of example implementations refers to the accompanying drawings.The same reference numbers in different drawings may identify the same or similar elements.
[0016] Intellectual property issues may include intellectual property theft, intellectual property leakage, intellectual property pollution, endpoint intellectual property infringement, etc. Intellectual property theft may include an entity intentionally attempting to steal intellectual property by embedding restricted intellectual property in a file and then downloading and / or consuming the file, by renaming the file, by hiding the file and then downloading the file, etc.
[0017] Intellectual property leakage may include an entity intentionally or unintentionally consuming and / or distributing intellectual property. For example, an entity may believe that intellectual property includes component A and component B (e.g., based on a bill of materials), but may intentionally or unintentionally distribute components A, B, X, and Y, where the entity is not authorized to exploit the intellectual property associated with component X and component Y.
[0018] IP contamination may include an entity intentionally or unintentionally introducing unwanted IP into a product, rendering the product susceptible and vulnerable to attacks, viruses, etc. Endpoint IP infringement may include an entity intentionally or unintentionally introducing IP components that were not registered as part of the original solution (e.g., an original executable file is replaced with an imposter file, an additional executable file is included in a solution that executes on an endpoint device, etc.).
[0019] Intellectual property issues, whether intentional or unintentional, can occur at various stages of the development life cycle. In addition, digital content (e.g., software, source code, register transfer language (RTL) files in semiconductor design, computer-aided design (CAD) files, other files generated as part of product design and / or solutions) are particularly susceptible to the occurrence of intellectual property issues because digital content can be relatively easily copied, stored, transmitted, etc. Such theft can lead to being sued for intellectual property infringement, paying royalties for infringement, etc. Current tools can support the determination of intellectual property issues at various stages of the development life cycle of content, but are prone to miss potential intellectual property issues caused by the use of fuzzy content. Due to such fuzziness, current tools are also prone to miss intellectual property issues for content that is not related to software code (such as hardware development, CAD files and drawings, etc.). Therefore, current tools are ineffective and waste resources associated with managing content, supervising intellectual property infringement through content, and handling legal issues associated with infringing content, etc. (e.g., processing resources, memory resources, communication resources), networking resources, human resources, etc.
[0020] Some implementations described herein provide a monitoring system that utilizes policy enforcement and machine learning models to prevent intellectual property issues for content during different stages of the project lifecycle of the content, as well as when the content is packaged and bundled into other solutions, deployed to endpoint devices and / or products, etc. For example, the monitoring system can receive content data identifying content created by a user and metadata associated with the content. The monitoring system can obtain rule data that identifies rules associated with the utilization of the content. The monitoring system can generate a digital DNA signature for the content based on the metadata.
[0021] When new content generated based on the content is received by the monitoring system, the monitoring system can generate a new digital DNA signature for the new content based on metadata associated with the new content. The monitoring system can utilize a machine learning model to process the new digital DNA signature, the rule data, and the digital DNA signature to determine whether the new content violates one or more rules of the rule data.
[0022] In this manner, the monitoring system prevents the created content from experiencing intellectual property issues during the project lifecycle of the content. Therefore, the monitoring system can save computing resources (e.g., processing resources, memory resources, communication resources), networking resources, human resources, etc., which would otherwise be wasted in managing content, supervising intellectual property issues associated with the content, handling legal issues associated with intellectual property issues, etc.
[0023] Figure 1A-1G1 is a schematic diagram of one or more example implementations 100 described herein. Figure 1A-1G As shown, the client device is associated with the monitoring system and the server device. The client device may include a mobile device, a computer, etc. associated with a user, and the user uses the client device to create content.
[0024] The server may include one or more computing devices that provide external tools for monitoring content received by the monitoring system. The server device may store rule data that identifies rules associated with the use of the content. The monitoring system may include one or more devices that utilize policy enforcement and machine learning models in the manner described herein to prevent intellectual property issues for content during different stages of a project lifecycle for the content.
[0025] like Figure 1A As shown, the client device may include an integrated development environment (IDE), an IDE plug-in, and an agent. The IDE may include components that enable the client device to capture events associated with content (e.g., software) development, CAD drawing tools, circuit layout design tools, etc.
[0026] The IDE plug-in may include a software component of the IDE that monitors content development activities and editing of content by users. The IDE plug-in may capture different events based on the integration capabilities of the IDE, may collect necessary metadata and contextual content, may provide events to an agent, and the like.
[0027] The agent may include software developed and deployed for the client device. The agent may receive events from the IDE plug-in and may manage the transmission of events to the monitoring system when the client device is connected to the monitoring system. The agent may archive events (e.g., in a local cache) when the client device is not connected to the monitoring system, and may provide information identifying the events to the monitoring system after connectivity between the client device and the monitoring system is established.
[0028] In some implementations, the functionality of the IDE, IDE plugins, and / or agents may be integrated and encapsulated within third-party monitoring tools associated with product development processes and environments, check and balance scripts and / or processes, workflows, and the like.
[0029] like Figure 1A As further shown, and by reference numeral 105, the monitoring system receives content data and metadata from a client device, the content data identifying content created by a user, the metadata associated with the content. For example, the monitoring system may receive content data and metadata from an agent of a client device, the content data identifying content created by a user, the metadata associated with the content.
[0030] In some implementations, the monitoring system receives content data and metadata in real time or near real time relative to content created by a user. A user of a client device can create content using a client device. When content is created by a user, the client device can provide content data and metadata to the monitoring system. Alternatively and / or additionally, the monitoring system can receive content data and metadata periodically (e.g., hourly, daily, weekly, etc.), based on the occurrence of an event (e.g., an application executes a save function to save content to a memory associated with a client device, an application executes a copy function to copy content, an application executes a paste function to insert the copied content into a document or file, etc.), based on providing a request to a client, etc.
[0031] In some implementations, the content data includes information identifying events associated with the creation of content by a user of the client device. In some implementations, the events may include the user utilizing the client device to create new content, modify content, include previously created content with the new content, etc. In some implementations, the content data includes content created by the user, such as lines of code entered by the user via a user interface associated with the client device, objects designed by the user (e.g., circuit layout designs, CAD drawings, etc.), etc.
[0032] Metadata may include data indicating parameters associated with the content, data indicating attributes associated with the content, data indicating characteristics associated with the content, data indicating applications and / or tools used to create the content, data indicating users associated with the content, etc. Figure 1AAs shown, metadata may include information identifying a file name associated with the content, information identifying a path associated with the content, information identifying a directory associated with the content, information identifying a type of content (e.g., a text document, an image, an executable file, etc.), information identifying a size of the content, information identifying a user name associated with the content (e.g., a user name associated with a user who created the content, a user name associated with a user who modified the content, a user name associated with a user who provided the content to the monitoring system, etc.), information identifying an identifier (e.g., an identifier associated with a client device, an identifier associated with a user, etc.), information indicating the data and / or time at which the content was created and / or modified, information identifying an operating system (e.g., an operating system used to create and / or modify the content), information identifying a tool name and / or application name used to create and / or modify the content, information identifying a version associated with the content, information identifying a digital rights management (DRM) right associated with the content, information identifying a classification associated with the content (e.g., a business unit associated with the content, a category associated with the content (e.g., health care, entertainment, data security, etc.), etc.), information identifying a checksum associated with the content, etc. The types of metadata listed above are intended to be examples of the types of metadata that may be used. In practice, metadata associated with content may include any one or more of the types of metadata listed above, and / or one or more other types of metadata not listed above.
[0033] As shown by reference numeral 110, the monitoring system receives rule data identifying rules and / or policies associated with utilization of content. The rules may include licensing rules and / or policies (e.g., rules and / or policies indicating requirements, restrictions, etc. associated with licensing content), content restriction rules and / or policies (e.g., rules and / or policies indicating whether content may include content created by another user, content identified as sensitive content, etc.), entity rules and / or policies (e.g., rules and / or policies established by an entity associated with a user and / or content), content reuse rules and / or policies (e.g., rules and / or policies indicating whether content may be included in other content), and the like.
[0034] like Figure 1B As shown, and by reference numeral 115, the monitoring system utilizes the metadata to generate a digital DNA signature for the content, and stores the rule data, the content data, the digital DNA signature, and the relationship between the digital DNA signature in a repository. The digital DNA signature generated for a specific content may include information that uniquely identifies the specific content, information that enables the monitoring system to determine whether the specific content (and / or a portion of the specific content) is included in other content, etc.
[0035] In some implementations, the digital DNA signature is generated based on one or more portions of metadata and / or one or more portions of content data. For example, particular content may include multiple lines of code, and the monitoring system may generate a digital DNA signature based on computing a hash of one or more portions of metadata and / or one or more of the multiple lines of code included in the content data.
[0036] In some implementations, the digital DNA signature is generated in real time (or near real time). The client device may provide content data and metadata including content generated by the user to the monitoring system based on the user using the client device to create the content. The monitoring system may generate the digital DNA signature based on receiving the content data and metadata from the client device.
[0037] In some implementations, the monitoring system generates multiple digital DNA signatures for specific content. The monitoring system may identify a first portion of content data and / or a first portion of metadata associated with a first portion of the specific content (e.g., a portion of the specific content created by a first user). The monitoring system may identify a second portion of content data and / or a second portion of metadata associated with a second portion of the specific content (e.g., a portion of the specific content created by a second user). The monitoring system may generate a first digital DNA signature associated with the first portion of the specific content based on the first portion of the data content and / or the first portion of the metadata. The monitoring system may generate a second digital DNA signature associated with the second portion of the specific content based on the second portion of the data content and / or the second portion of the metadata.
[0038] The monitoring system may determine a relationship between digital DNA signatures based on generating the digital DNA signatures. The relationship may indicate a relationship between content associated with the digital DNA signatures. For example, the relationship may indicate that content created by a first user includes content created by a second user, content includes content created by multiple users, the first content and the second content were created by the same user, and so on.
[0039] As an example, a first user may create a first portion of code for an application, and a second user may create a second portion of code for the application. The monitoring system may generate a first digital DNA signature associated with the first portion of code, a second digital DNA signature associated with the second portion of code, and a third digital DNA signature associated with all of the code for the application (e.g., the first portion of code and the second portion of code).
[0040] The monitoring system may determine a relationship between the first digital DNA signature and the second digital DNA signature based on the first digital DNA signature and the second digital DNA signature being included in the code for the application. The monitoring system may determine a relationship between the first digital DNA signature and the third digital DNA signature based on the first portion of the code being included in the code for the application. The monitoring system may determine a relationship between the second digital DNA signature and the third digital DNA signature based on the second portion of the code being included in the code for the application.
[0041] In some implementations, the monitoring system determines that the digital DNA signature is not correlated with any other digital DNA signature. As an example, the monitoring system can determine that the digital DNA signature is associated with content created by a single user, the digital DNA signature is associated with content that is not associated with other content, etc. The monitoring system can determine that the digital DNA signature is not correlated with any other digital DNA signature based on the digital DNA signature being associated with content created by a single user, based on the digital DNA signature being associated with content that is not associated with other content, etc.
[0042] The monitoring system can store rule data, content data, metadata, digital DNA signatures, and information identifying relationships between digital DNA signatures in a repository based on generating digital DNA signatures. The repository can include data structures (e.g., databases, tables, lists, etc.) stored on one or more devices associated with the monitoring system.
[0043] In some implementations, the repository includes a lineage repository. The lineage repository may include a data structure that stores content lineage information, content origin information, content reference information, etc. For example, the lineage repository may store information identifying relationships between digital DNA signatures, information identifying versions of content, information identifying users associated with creating content, information identifying the date and / or time when the content was created, information identifying users associated with modifying content, information identifying the date and / or time when the content was modified, information identifying other content that includes the content, etc.
[0044] In some implementations, the repository includes a metadata repository. The metadata repository may include a data structure storing metadata; information identifying characteristics associated with content, memory locations associated with content; information identifying a device on which the content is stored; snippets of code obtained from an external source (e.g., a server device) (e.g., lines of code that are not permitted to be included in the content), etc.
[0045] like Figure 1CAs shown, and by reference numeral 120, the monitoring system generates a digital identifier for the content using metadata and content data, and associates the digital identifier with a corresponding digital DNA signature in a repository. The digital identifier may include information generated based on content associated with the content data and / or metadata. For example, the content data for specific content may include one or more portions of the specific content. The monitoring system may extract one or more portions of the specific content from the content data, and may generate a digital identifier associated with the specific content based on the one or more portions of the specific content.
[0046] In some implementations, the monitoring system generates a digital identifier by applying an algorithm (e.g., a hash algorithm, an encryption algorithm, etc.) to one or more portions of the specific content. In some implementations, when one or more portions of the specific content are the same as other content, the algorithm makes the digital identifier generated based on the one or more portions of the specific content the same as the digital identifier generated based on the other content. Similarly, when one or more portions of the specific content are similar to other content, the algorithm can make the digital identifier generated based on the one or more portions of the specific content similar to the digital identifier generated based on the other content.
[0047] like Figure 1D As shown, and by reference numeral 125, the monitoring system provides specific content from content data stored in a repository to a client device. The monitoring system can provide specific content to a client device based on receiving a request from a client device. For example, a user (e.g., a software developer) can use a client device to create a new file based on a template (e.g., specific content) stored in a memory associated with the monitoring system (e.g., a memory of the monitoring system, a repository, a server device, etc.). The user can create a new file by saving the template under a new name, by copying a portion of the template into another file, and so on. The client device can provide a request for the template to the monitoring system. The monitoring system can provide the template to the client device based on the request.
[0048] like Figure 1DAs shown, the user utilizes specific content and then saves the content, in which the specific content is used as new content. For example, a user can create a new file using a template received from a monitoring system. A client device (e.g., an IDE plug-in) can capture new metadata for a new file, and a record can be generated indicating that the specific content is utilized to create a new file based on the content in which the user saves the specific content and is used as new content. The client device can include the record in the new metadata, and the new content and the new metadata including the record can be provided to the monitoring system. As shown by reference numeral 130, the monitoring system receives new content and new metadata associated with the new content from the client device.
[0049] like Figure 1E As shown in FIG. 1 and by reference numeral 135, the monitoring system utilizes the new content and the new metadata to generate a new digital DNA signature and a new digital identifier for the new content. In some implementations, the monitoring system generates a new digital DNA signature and a new digital identifier for the new content using the new content and the new metadata. Figure 1B and Figure 1C New digital DNA signatures and / or new digital identifiers for new content are generated in a manner similar to that described.
[0050] In some implementations, the new digital DNA signature includes a digital DNA signature associated with the specific content. The monitoring system can determine that the specific content is utilized in the new content based on the record included in the new metadata. The monitoring system can include the digital DNA signature associated with the specific content in the new digital DNA signature based on the specific content being utilized in the new content.
[0051] Alternatively, and / or additionally, the new digital DNA signature may include information identifying the relationship between the new content and the specific content. The monitoring system may determine that the new content is related to the specific content based on the specific content being utilized in the new content. The monitoring system may include information identifying the relationship in the new digital DNA signature.
[0052] like Figure 1FAs shown, and by reference numeral 140, the monitoring system utilizes a machine learning model to process the new digital DNA signature, the new digital identifier, the rule data, the digital DNA signature, and the digital identifier to determine whether the new content violates one or more rules in the rule data. In some implementations, the monitoring system trains a machine learning model to determine whether the content violates one or more rules in the rule data. The machine learning model can be trained based on historical data (e.g., historical content that violates the rules, historical content that does not violate the rules, historical rules, etc.). The machine learning model can be trained to: determine information indicating whether the historical content violates the rules and a confidence score based on information about the historical content, the confidence score reflecting a confidence measure that the information indicating whether the historical content violates the rules is accurate for the historical content. In some implementations, the system can be trained in a manner similar to that described below with respect to Figure 4 The described approach is similar to the way to train a machine learning model.
[0053] In some implementations, the monitoring system can receive a trained machine learning model from another device instead of training the machine learning model. For example, the other device can receive a trained machine learning model based on the information provided below. Figure 4 The machine learning model can be trained in a manner similar to the described method to generate a machine learning model, and the trained machine learning model can be provided to the monitoring system (e.g., the monitoring system can be preloaded with the trained machine learning model, a request for the trained machine learning model can be received from the monitoring system, and so on).
[0054] The monitoring system may provide the new digital DNA signature, the rule data, and the digital DNA signature as input to the machine learning model. The machine learning model may process the new digital DNA signature, the rule data, and the digital DNA signature to determine whether the new content violates one or more rules in the rule data. In some implementations, the machine learning model may be similar to the following description of the new content. Figure 4 New digital DNA signatures, rule data, and digital DNA signatures are processed in a similar manner as described.
[0055] In some implementations, the monitoring system determines that the new digital DNA signature is associated with the additional digital DNA signature based on the new digital DNA signature. The monitoring system can analyze the new digital DNA signature and can determine that the new digital DNA signature includes a digital DNA signature associated with the specific content and / or information identifying a relationship between the specific content and the new content. The monitoring system can determine that the new digital DNA signature is associated with the digital DNA signature associated with the specific content based on the new digital DNA signature including the digital DNA signature associated with the specific content and / or based on the new digital DNA signature including information identifying a relationship between the specific content and the new content.
[0056] In some implementations, the monitoring system determines that the new digital DNA signature is associated with the additional digital DNA signature based on comparing the new digital identifier and the digital identifier. The new digital identifier may include data generated based on the new content (e.g., a hash of a line of code included in the new content). The monitoring system may determine that the data included in the new digital identifier is similar to the data included in the following digital identifier: the digital identifier is a digital identifier of a digital identifier stored in a repository. The monitoring system may identify the digital DNA signature associated with the digital identifier based on information associated with the digital identifier and stored in the repository. As an example, a repository may store a data structure including information identifying the digital identifier as being associated with the digital DNA signature. The monitoring system may determine that the new digital DNA signature is associated with the digital DNA signature based on the digital identifier being associated with the digital DNA signature.
[0057] The monitoring system may determine a rule set associated with the new digital DNA signature based on the rule data. The rule set may include one or more rules associated with the new digital DNA signature and one or more rules associated with the additional digital DNA signature (e.g., a digital DNA signature associated with a particular content and / or one or more of the digital DNA signatures). The monitoring system may determine whether the new content violates one or more rules of the rule set based on the new digital DNA signature and the additional digital DNA signature.
[0058] As an example, the rule group may include a rule indicating that specific content utilized in the new content is restricted content that is not permitted to be utilized in a specific type of content. The monitoring system may determine that the new content includes a specific type of content based on the new digital DNA signature. The monitoring system may determine that the new content violates a rule based on the new content including a specific type of content.
[0059] like Figure 1G As shown, and by reference numeral 145, the monitoring system performs one or more actions based on whether the new content violates one or more rules. In some implementations, the one or more actions include causing the new content to be modified when the new content violates the one or more rules. The monitoring system can provide information identifying a violation of the one or more rules (e.g., utilization of a restricted software module) to the client device, as well as information instructing a user to modify the new content to correct the violation (e.g., information instructing the user to remove or replace the restricted software module). The user can utilize the client device to modify the new content to correct the violation according to the instructions from the monitoring system.
[0060] In some implementations, the monitoring system can automatically modify the new content when the new content violates one or more rules. For example, the monitoring system can identify a portion of the new content (e.g., a restricted software module) that violates one or more rules. Based on the portion of the new content violating one or more rules, the monitoring system can automatically remove the portion of the new content from the new content and / or replace the portion of the new content with other content.
[0061] In some implementations, the one or more actions include allowing the new content to be utilized when the new content fails to violate the one or more rules. For example, based on the new content failing to violate the one or more rules, the monitoring system may allow the new content to move to the next stage of the content development life cycle to be distributed to clients, etc.
[0062] In some implementations, the one or more actions include providing an alert to the client device, the alert indicating that the new content violates one or more rules. Based on the output generated by the machine learning model, the monitoring system may determine that the new content violates the one or more rules, the output generated by the machine learning model indicating that the new content violates the one or more rules. Based on the output generated by the machine learning model indicating that the new content violates the one or more rules, the monitoring system may provide an alert to the client device indicating that the new content violates the one or more rules.
[0063] In some implementations, the alert may include violation information. The violation information may include information identifying one or more rules, information identifying one or more corrective actions, information identifying one or more actions taken by the monitoring system based on the new content violating one or more rules, etc.
[0064] In some implementations, the one or more actions include providing a notification to an entity associated with the client device indicating that the new content violates one or more rules. For example, the monitoring system may provide violation information to a user associated with the client device, to a supervisor of the user associated with the client device, etc.
[0065] In some implementations, the one or more actions include limiting utilization of the new content when the new content violates one or more rules. For example, the monitoring system can implement security features that limit utilization of the new content when the new content violates one or more rules. The security features can include password-protecting the new content, modifying permissions associated with the new content, including information identifying the new content on a restricted list, and the like. In this way, the monitoring system can prevent intellectual property issues associated with utilization of the new content from occurring.
[0066] In some implementations, the one or more actions include storing the new content when the new content fails to violate the one or more rules. For example, the monitoring system can store the new content in a data structure associated with content that is determined not to violate the one or more rules, in a data structure associated with content that is permitted to be distributed (e.g., to a customer) or permitted to be included in other content, and the like.
[0067] In some implementations, one or more actions include retraining the machine learning model based on whether the new content violates one or more rules. For example, the monitoring system can include the new digital DNA signature and information indicating whether the new digital DNA signature violates one or more rules in the training data used to train the machine learning model. In this way, the monitoring system can increase the amount of data used to train the machine learning model. By increasing the amount of data used to train the machine learning model, the monitoring system can improve the accuracy associated with the machine learning model that determines whether content violates one or more rules.
[0068] In some implementations, one or more actions include applying a digital DNA signature to a bill of materials (BOM). The BOM may be an engineering BOM, a manufacturing BOM, an assembly BOM, a sales BOM, an as configured BOM, an as maintained BOM, etc. The BOM may include information identifying components included in the BOM. The monitoring system may determine a digital DNA signature for the component. Applying the digital DNA signature to the BOM may enable the monitoring system to quickly and efficiently determine whether a component listed on the BOM violates one or more rules. In this way, the monitoring system may prevent the occurrence of intellectual property issues associated with the distribution of components that violate one or more rules.
[0069] As shown above, Figure 1A-1G are provided as examples. Other examples may be related to Figure 1A-1G Different from what is described. Figure 1A-1G The number and arrangement of the devices shown in are provided as examples. In practice, Figure 1A-1G There may be additional devices, fewer devices, different devices, or differently arranged devices than those shown in FIG. Figure 1A-1G Two or more devices shown in FIG. 1 may be implemented in a single device, or in Figure 1A-1G The single device shown in can be implemented as multiple distributed devices. Additionally or alternatively, in Figure 1A-1G A set of devices (eg, one or more devices) shown in FIG. 1 may perform the operations described by Figure 1A-1G Another set of devices is shown to perform one or more functions.
[0070] Figure 2A-2C is a schematic diagram of one or more example implementations 200 described herein. Figure 2A-2C As shown, the client device is associated with the monitoring system. The client device may include a mobile device, a computer, etc. associated with a user who uses the client device to create content. In some implementations, the client device may be associated with the monitoring system described above. Figure 1A The monitoring system may include one or more devices that utilize policy enforcement and machine learning models to prevent intellectual property issues with content during different stages of a project lifecycle for the content in the manner described herein. In some implementations, the monitoring system may be similar to the client devices described above with respect to Figure 1A The monitoring system described is similar.
[0071] like Figure 2A As shown, the client device may include an IDE, an IDE plug-in, and an agent. The IDE, IDE plug-in, and agent may be the same as described above. Figure 1A The described IDE, IDE plug-in and agent are similar. In some implementations, the functionality of the IDE, IDE plug-in, and / or agent can be integrated and packaged in a third-party monitoring tool associated with the product development process and environment, check and balance scripts and / or processes, workflows, etc.
[0072] like Figure 2A As further shown, and by reference numeral 205, the monitoring system receives metadata, a digital stamp, and a record for a new file created by a user based on the unrestricted project from a client device. A user (e.g., a developer) may utilize a client device to create a new file based on the unrestricted project. The client device (e.g., an IDE plug-in) may capture metadata for the new file, and may store the metadata, the digital stamp for the metadata, and a record indicating that the new file was created based on the unrestricted project.
[0073] The metadata may include data indicating parameters associated with the content, data indicating attributes associated with the content, data indicating characteristics associated with the content, data indicating applications and / or tools used to create the content, data indicating users associated with the content, etc. In some implementations, the metadata may be similar to the metadata described above with respect to Figure 1A The metadata described is similar.
[0074] The digital stamp or digital signature may include a unique identifier for the metadata (e.g., a secure hash value for the metadata). In some implementations, one or more variables of the metadata may be utilized to generate a digital stamp, and the digital stamp may be utilized for genealogy and tracking purposes. The digital stamp may also be utilized to identify where the new file was created (e.g., the physical location of the client device), when the new file was created, a classification associated with the new file, a configuration management tag associated with the new file, and the like.
[0075] The record may include information indicating that the new file is created based on the unrestricted item. For example, the record may include information identifying the unrestricted item, information identifying the portion of the unrestricted item included in the new file, information identifying the location of the portion of the unrestricted item within the new file, etc.
[0076] In some implementations, the monitoring system generates a digital DNA signature for the new file based on receiving metadata, digital stamps, and records for the new file. Figure 1B A similar approach to that described is used to generate digital DNA signatures.
[0077] In some implementations, the monitoring system generates a digital identifier for the new file based on receiving metadata, digital stamps, and records for the new file. Figure 1C The digital identifier is generated in a similar manner as described.
[0078] As shown by reference numeral 210, the monitoring system receives updated metadata for code copied by a user from a restricted project from a client device. As an example, a user can utilize a client device to modify a new file to create a modified file. The user can modify the new file by copying a portion of the code from the restricted project into the new file. The client device (e.g., an IDE plug-in) can record the portion of code and can record updated metadata associated with the portion of code. Based on recording the portion of code and / or based on recording the updated metadata, the client device can provide the copied portion of code and / or the updated metadata to the monitoring system.
[0079] In some implementations, the monitoring system generates a new digital DNA signature for the modified file based on receiving updated metadata from the client device. In some implementations, the monitoring system generates a new digital identifier for the modified file based on receiving a portion of code copied from a restricted project from the client device. In some implementations, the monitoring system is similar to the above-mentioned Figure 1E New digital DNA signatures are generated in a similar manner as described.
[0080] like Figure 2BAs shown and indicated by reference numeral 215, the monitoring system utilizes a machine learning model to process the metadata, the digital stamp, the record, the updated metadata, and the rule data to determine that the updated metadata violates one or more rules. In some implementations, based on the new digital DNA signature, the digital DNA signature associated with the new file, the new digital identifier, and / or the digital identifier associated with the new file, the machine learning model uses the same method as described above with respect to Figure 1F A similar approach as described is used to determine that updated metadata violates one or more rules.
[0081] like Figure 2C As shown, and by reference numeral 220, the monitoring system causes the client device to remove the code copied from the restricted project from the new file (e.g., from the modified file). The monitoring system can cause the client device to remove the code from the modified file based on determining that the updated metadata violates one or more rules. For example, the monitoring system can provide a command to the client device. The client device can receive the command and can remove the code copied from the restricted project from the modified file based on the command. In this way, the monitoring system can automatically prevent the occurrence of intellectual property issues associated with the code from the restricted project included in the new file.
[0082] As indicated above, Figure 2A-2C are provided as examples. Other examples may be related to Figure 2A-2C Different from what is described. Figure 2A-2C The number and arrangement of the devices shown in are provided as examples. In practice, Figure 2A-2C There may be additional devices, fewer devices, different devices, or differently arranged devices than those shown in FIG. Figure 2A-2C Two or more devices shown in FIG. 1 may be implemented in a single device, or in Figure 2A-2C The single device shown in can be implemented as multiple distributed devices. Additionally or alternatively, in Figure 2A-2C A set of devices (eg, one or more devices) shown in FIG. 1 may perform the operations described by Figure 2A-2C One or more functions performed by another set of devices shown in FIG.
[0083] Figure 3A and Figure 3B is a schematic diagram of one or more example implementations 300 described herein. Figure 3A-3B As shown, the monitoring system may include a user interface. The monitoring system may generate a report based on processing the digital DNA signatures and / or digital identifiers stored in the repository. The monitoring system may provide the generated report for display via a user interface, which may be displayed to a user via a client device.
[0084] like Figure 3A As shown, the report may include information associated with the project, information associated with individual files, information associated with financial savings related to detecting and / or preventing the occurrence of intellectual property issues, and licensing information associated with the project and / or file. The information associated with the project may include information indicating the total amount of projects analyzed by the monitoring system, information identifying the amount of projects determined not to have violated any rules, information identifying the amount of projects determined to have violated one or more rules, etc. In some implementations, the information associated with the project may be sorted and / or grouped based on a classification associated with the project (e.g., Internet security, marketing, etc.), a business grouping associated with the project, etc.
[0085] The information associated with the individual files may include information indicating the total amount of files analyzed by the monitoring system, information identifying the amount of files determined not to violate any rules, information identifying the amount of files determined to violate one or more rules, etc. In some implementations, the information associated with the individual files may be sorted and / or grouped based on the items associated with the individual files. In this way, a user may easily and efficiently identify an item that has an amount of files that violates one or more rules that meets a threshold amount (e.g., 10%, 20%, etc.). By identifying an item that has an amount of files that violates one or more rules that meets a threshold amount, a user may be able to cause one or more actions to be taken, such as identifying a user group associated with the item, limiting access to the restricted item by the user group, etc.
[0086] like Figure 3B As shown, the report can include information about user access patterns and risk factors associated with intellectual property issues associated with projects and / or files. The monitoring system can determine the amount of attempts to access projects and / or files made by unauthorized users, the amount of attempts to access projects and / or files made by authorized users, etc. based on metadata recorded by the client device (e.g., IDE agent).
[0087] like Figure 3B As further shown, the report can include information identifying risks associated with the project. The monitoring system can determine the risks associated with the project based on the amount of times files associated with the project violate one or more rules, the amount of attempts to access the project made by unauthorized users, etc.
[0088] In some implementations, the report may include information identifying a percentage of a file that has been included in another file, and / or a portion of a file, and / or the amount of times a file or portion of a file has been included in another file. In some implementations, the monitoring system may determine the percentage and / or amount of times based on comparing a digital DNA signature and / or a digital identifier to another digital DNA signature and / or another digital identifier. The monitoring system may determine the similarity between a digital DNA signature and another digital DNA signature, and / or the similarity between a digital identifier and another digital identifier. When the similarity meets a threshold similarity, the monitoring system may determine that a file or portion of a file is included in a file associated with another digital DNA signature and / or another digital identifier.
[0089] As indicated above, Figure 3A-3B are provided as examples. Other examples may be related to Figure 3A-3B Different from what is described. Figure 3A-3B The number and arrangement of the devices shown in are provided as examples. In practice, Figure 3A-3B There may be additional devices, fewer devices, different devices, or differently arranged devices than those shown in FIG. Figure 3A-3B Two or more devices shown in FIG. 1 may be implemented in a single device, or in Figure 3A-3B The single device shown in can be implemented as multiple distributed devices. Additionally or alternatively, in Figure 3A-3B A set of devices (eg, one or more devices) shown in FIG. 1 may perform the operations described by Figure 3A-3B One or more functions performed by another set of devices shown in FIG.
[0090] Figure 4 4 is a schematic diagram illustrating an example 400 of training and using a machine learning model in conjunction with preventing intellectual property issues against content during different stages of a project lifecycle. The training and use of the machine learning models described herein may be performed using a machine learning system. The machine learning system may include, or be included in, a computing device, a server, a cloud computing environment, and the like, such as a monitoring system described in more detail elsewhere herein.
[0091] As indicated by reference numeral 405, a set of observations may be used to train a machine learning model. The set of observations may be obtained from historical data, such as data collected during one or more processes described herein. In some implementations, the machine learning system may receive the set of observations (e.g., as input) from a monitoring system, as described elsewhere herein.
[0092] As shown by reference numeral 410, the set of observations includes a feature set. A feature set may include a set of variables, and the variables may be referred to as features. A particular observation may include a set of variable values (or feature values) corresponding to the set of variables. In some implementations, the machine learning system may determine the variables for a set of observations and / or the variable values for a particular observation based on input received from the monitoring system. For example, the machine learning system may identify a feature set (e.g., one or more features and / or feature values) by extracting the feature set from structured data, by performing natural language processing to extract the feature set from unstructured data, by receiving input from an operator, and the like.
[0093] As an example, a feature set for a set of observations may include a first feature of content data, a second feature of rule data, a third feature of a digital DNA signature, etc. As shown, for a first observation, the first feature may have a value of CAD file, the second feature may have a value of license rule, the third feature may have a value of fingerprint 1, etc. These features and feature values are provided as examples and may be different in other examples.
[0094] As shown by reference numeral 415, the set of observations can be associated with a target variable. The target variable can represent a variable having a numerical value, can represent a variable having a numerical value that falls within a value interval or has some discrete possible values, can represent a variable that is selectable from one of a plurality of options (e.g., one of a plurality of classes, classifications, labels, etc.), can represent a variable having a Boolean value, etc. The target variable can be associated with a target variable value, and the target variable value can be specific to the observation. In example 400, the target variable is a violation rule that has a value of no violation for the first observation.
[0095] The target variable may represent the value that the machine learning model is trained to predict, and the feature set may represent the following variables: the variables are input to the trained machine learning model to predict the value of the target variable. The set of observations may include the target variable value, so that the machine learning model can be trained to identify the patterns in the feature set that lead to the target variable value. The machine learning model trained to predict the target variable value can be referred to as a supervised learning model.
[0096] In some implementations, a machine learning model can be trained on a set of observations that do not include a target variable. This can be referred to as an unsupervised learning model. In this case, the machine learning model can learn patterns from the set of observations without labeling or supervision, and can provide an output that indicates such patterns, such as by using clustering and / or association to identify groups of related items within the set of observations.
[0097] As shown in reference numeral 420, the machine learning system can train a machine learning model using the set of observations and using one or more machine learning algorithms (such as a regression algorithm, a decision tree algorithm, a neural network algorithm, a k-nearest neighbor algorithm, a support vector machine algorithm, etc.). After training, the machine learning system can store the machine learning model as a trained machine learning model 425, which will be used to analyze new observations.
[0098] As indicated by reference numeral 430, the machine learning system may apply the trained machine learning model 425 to the new observation, such as by receiving the new observation and inputting the new observation into the trained machine learning model 425. As shown, as an example, the new observation may include a first feature of a hardware development file, a second feature of a content restriction, a third feature of a fingerprint Z, and so on. The machine learning system may apply the trained machine learning model 425 to the new observation to generate an output (e.g., a result). The type of output may depend on the type of machine learning model and / or the type of machine learning task being performed. For example, the output may include a predicted value of a target variable, such as when supervised learning is employed. Additionally or alternatively, the output may include: information identifying the cluster to which the new observation belongs, information indicating the degree of similarity between the new observation and one or more other observations, and the like, such as when unsupervised learning is employed.
[0099] As an example, as shown by reference numeral 435, the trained machine learning model 425 can predict a non-violation value for a target variable that violates a rule for a new observation. Based on the prediction, the machine learning system can provide a first recommendation, can provide a determined output for the first recommendation, can perform a first automatic action, can cause the first automatic action to be performed (e.g., by instructing another device to perform the automatic action), etc. The first recommendation can include, for example, a recommendation to allow a file to be stored on a device included in the content management environment, a recommendation to allow a file to be compiled, a recommendation to schedule a job for execution, etc. The first automatic action can include, for example, automatically storing a file on a device included in the content management environment, automatically compiling a file, automatically scheduling a job for execution, etc.
[0100] As another example, if the machine learning system predicts a violated value for a target variable that is violated, the machine learning system may provide a second (e.g., different) recommendation (e.g., a recommendation to not allow the file to be stored on a device included in the content management environment, a recommendation to not allow the file to be compiled, a recommendation to not schedule a job for execution, etc.), and / or may perform a second (e.g., different) automatic action (e.g., automatically prevent the file from being stored on a device included in the content management environment, automatically prevent the file from being compiled, automatically prevent the job from being scheduled for execution, etc.) or cause execution of a second (e.g., different) automatic action.
[0101] In some implementations, the trained machine learning model 425 can classify (e.g., cluster) the new observations in clusters, as shown by reference numeral 440. Observations within a cluster can have a threshold degree of similarity. As an example, if the machine learning system classifies the new observation in a first cluster (e.g., a no-violation cluster), the machine learning system can provide a first recommendation (such as the first recommendation described above). Additionally or alternatively, based on classifying the new observation in the first cluster, the machine learning system can perform a first automatic action (such as the first automatic action described above) or cause the first automatic action to be performed (e.g., by instructing another device to perform the automatic action).
[0102] As another example, if the machine learning system classifies the new observation in a second cluster (e.g., a violation cluster), the machine learning system can provide a second (e.g., different) recommendation (e.g., the second recommendation described above), and / or can perform a second (e.g., different) automatic action (such as the second automatic action described above) or cause a second automatic action to be performed.
[0103] As another example, if the machine learning system classifies the new observation in a third cluster (e.g., a possible violation cluster), the machine learning system may provide a third (e.g., different) recommendation (e.g., a recommendation to request further analysis to determine whether the file violates the rule, a recommendation to obtain additional data associated with determining whether the file violates the rule, etc.), and / or may perform a third (e.g., different) automatic action (such as automatically scheduling the file for additional analysis, automatically performing additional analysis to determine whether the file violates the rule, etc.) or cause a third automatic action to be performed.
[0104] In some implementations, recommendations and / or automatic actions associated with a new observation can be based on whether the target variable value has a particular label (e.g., a classification, category, etc.), can be based on whether the target variable value satisfies one or more thresholds (e.g., whether the target variable value is greater than a threshold, less than a threshold, equal to a threshold, falls within a range of values of a threshold, etc.), can be based on the cluster into which the new observation is classified, and so on.
[0105] In this way, the machine learning system can apply a rigorous and automated process to prevent intellectual property issues with content during different stages of the project life cycle. The machine learning system supports the identification and identification of tens, hundreds, thousands, or millions of features and / or feature values for tens, hundreds, thousands, or millions of observations, thereby improving the accuracy and consistency associated with preventing intellectual property issues with content during different stages of the project life cycle, and reducing its latency, relative to requiring computing resources to be allocated to tens, hundreds, or thousands of operators to manually identify intellectual property issues with content using features and feature values during different stages of the project life cycle.
[0106] As indicated above, Figure 4 Other examples may be combined with Figure 4 Different than described.
[0107] Figure 5 is a schematic diagram of an example environment 500 in which the systems and methods described herein may be implemented. Figure 5 As shown, environment 500 may include monitoring system 501, which may include one or more elements of cloud computing system 502 and / or may be executed within cloud computing system 502. As described in more detail below, cloud computing system 502 may include one or more elements 503-513. Figure 5 As further shown, environment 500 may include network 520, client device 530, and / or server device 540. Devices and / or elements of environment 500 may be interconnected via wired connections and / or wireless connections.
[0108] The cloud computing system 502 includes computing hardware 503, a resource management component 504, a host operating system (OS) 505, and / or one or more virtual computing systems 506. The resource management component 504 can perform virtualization (e.g., abstraction) of the computing hardware 503 to create one or more virtual computing systems 506. Using virtualization, the resource management component 504 enables a single computing device (e.g., a computer, a server, etc.) to operate like multiple computing devices, such as by creating multiple isolated virtual computing systems from the computing hardware 503 of a single computing device. In this way, the computing hardware 503 can operate more efficiently, with lower power consumption, higher reliability, higher availability, higher utilization, more flexibility, and lower cost than using separate computing devices.
[0109] Computing hardware 503 includes hardware and corresponding resources from one or more computing device hardware. For example, computing hardware 503 may include hardware from a single computing device (e.g., a single server) or from multiple computing devices (e.g., multiple servers) (such as multiple computing devices in one or more data centers). As shown, computing hardware 503 may include one or more processors 507, one or more memories 508, one or more storage components 509, and / or one or more networking components 510. Examples of processors, memories, storage components, and networking components (e.g., communication components) are described elsewhere herein.
[0110] The resource management component 504 includes a virtualization application (e.g., executed on hardware such as computing hardware 503) that can virtualize the computing hardware 503 to start, stop, and / or manage one or more virtual computing systems 506. For example, the resource management component 504 can include a hypervisor (e.g., a bare-metal or type 1 hypervisor, a hosted or type 2 hypervisor, etc.) or a virtual machine monitor, such as when the virtual computing system 506 is a virtual machine 511. Additionally or alternatively, the resource management component 504 can include a container manager, such as when the virtual computing system 506 is a container 512. In some implementations, the resource management component 504 executes within and / or coordinates with the host operating system 505.
[0111] The virtual computing system 506 includes a virtual environment that supports cloud-based execution of the operations and / or processes described herein using the computing hardware 503. As shown, the virtual computing system 506 can include virtual machines 511, containers 512, hybrid environments 513 including virtual machines and containers, etc. The virtual computing system 506 can execute one or more applications using a file system that includes binary files, software libraries, and / or other resources required to execute applications on a guest operating system (e.g., within the virtual computing system 506) or a host operating system 505.
[0112] Although monitoring system 501 may include one or more elements 503-513 of cloud computing system 502, may be executed within cloud computing system 502, and / or may be hosted within cloud computing system 502, in some implementations, monitoring system 501 may not be cloud-based (e.g., may be implemented outside of a cloud computing system) or may be partially cloud-based. For example, monitoring system 501 may include one or more devices that are not part of cloud computing system 502, such as Figure 6The monitoring system 501 may perform one or more operations and / or processes described in greater detail elsewhere herein.
[0113] The network 520 includes one or more wired and / or wireless networks. For example, the network 520 may include a cellular network, a public land mobile network (PLMN), a local area network (LAN), a wide area network (WAN), a private network, the Internet, etc., and / or a combination of these or other types of networks. The network 520 supports communication between devices in the environment 500.
[0114] The client device 530 includes one or more devices that are capable of receiving, generating, storing, processing, and / or providing information associated with preventing intellectual property issues against content during different stages of the project life cycle, as described elsewhere herein. The client device 530 may include a communication device and / or a computing device. For example, the client device 530 may include a wireless device, a user equipment (UE), a mobile phone (e.g., a smart phone or a cellular phone, etc.), a laptop computer, a tablet computer, a handheld computer, a desktop computer, a gaming device, a wearable communication device (e.g., a smart watch or a pair of smart glasses, etc.), an Internet of Things (IoT) device, or a similar type of device. The client device 530 may communicate with one or more other devices of the environment 500, as described elsewhere herein.
[0115] The server device 540 includes one or more devices that can receive, generate, store, process, provide and / or route information associated with preventing intellectual property issues for content during different stages of the project life cycle, as described elsewhere herein. The server device 540 may include a communication device and / or a computing device. For example, the server device 540 may include a server, an application server, a client server, a web server, a database server, a host server, a proxy server, a virtual server (e.g., executed on computing hardware), a server in a cloud computing system, a device including computing hardware used in a cloud computing environment, or a similar type of device. The server device 540 may communicate with one or more other devices of the environment 500, as described elsewhere herein.
[0116] exist Figure 5 The number and arrangement of devices and networks shown in are provided as examples. Figure 5 There may be additional devices and / or networks, fewer devices and / or networks, different devices and / or networks, or differently arranged devices and / or networks than those shown in FIG. Figure 5Two or more devices shown in FIG. 1 may be implemented in a single device, or in Figure 5 A single device shown in the environment 500 may be implemented as multiple distributed devices. Additionally or alternatively, a set of devices (eg, one or more devices) of the environment 500 may perform one or more functions described as being performed by another set of devices of the environment 500.
[0117] Figure 6 600, which may correspond to monitoring system 501, client device 530, and / or server device 540. In some implementations, monitoring system 501, client device 530, and / or server device 540 may include one or more of device 600 and / or one or more components of device 600. Figure 6 As shown, device 600 may include a bus 610 , a processor 620 , a memory 630 , a storage component 640 , an input component 650 , an output component 660 , and a communication component 670 .
[0118] Bus 610 includes components that support wired and / or wireless communications between components of device 600. Processor 620 includes a central processing unit, a graphics processing unit, a microprocessor, a controller, a microcontroller, a digital signal processor, a field programmable gate array, an application-specific integrated circuit, and / or another type of processing component. Processor 620 is implemented in hardware, firmware, or a combination of hardware and software. In some implementations, processor 620 includes one or more processors that can be programmed to perform functions. Memory 630 includes random access memory, read-only memory, and / or another type of memory (e.g., flash memory, magnetic memory, and / or optical memory).
[0119] Storage component 640 stores information and / or software related to the operation of device 600. For example, storage component 640 may include a hard disk drive, a disk drive, an optical disk drive, a solid state disk drive, a compact disk, a digital versatile disk and / or another type of non-transient computer readable medium. Input component 650 enables device 600 to receive input, such as user input and / or sensed input. For example, input component 650 may include a touch screen, a keyboard, a keypad, a mouse, a button, a microphone, a switch, a sensor, a global positioning system component, an accelerometer, a gyroscope, an actuator, etc. Output component 660 enables device 600 to provide output, such as via a display, a speaker and / or one or more light emitting diodes. Communication component 670 enables device 600 to communicate with other devices, such as via a wired connection and / or a wireless connection. For example, communication component 670 may include a receiver, a transmitter, a transceiver, a modem, a network interface card, an antenna, etc.
[0120] The device 600 may perform one or more processes described herein. For example, a non-transient computer-readable medium (e.g., memory 630 and / or storage component 640) may store a set of instructions (e.g., one or more instructions, codes, software codes, program codes, etc.) for execution by the processor 620. The processor 620 may execute the set of instructions to perform one or more processes described herein. In some implementations, the execution of the set of instructions by one or more processors 620 causes one or more processors 620 and / or the device 600 to perform one or more processes described herein. In some implementations, hard-wired circuit devices may be used in place of instructions or in combination with instructions to perform one or more processes described herein. Therefore, the implementations described herein are not limited to any particular combination of hardware circuit devices and software.
[0121] exist Figure 6 The number and arrangement of devices and networks shown in are provided as examples. Figure 6 Device 600 may include additional components, fewer components, different components, or differently arranged components compared to those components shown in . Additionally or alternatively, a set of components (e.g., one or more components) of device 600 may perform one or more functions described as being performed by another set of components of device 600.
[0122] Figure 7 is a flow chart of an example process 700 associated with using machine learning to prevent intellectual property issues with content during different stages of a project lifecycle. In some implementations, Figure 7 One or more process blocks of can be performed by a device (e.g., monitoring system 501). In some implementations, Figure 7 One or more process blocks of may be performed by another device or group of devices separate from or including the device, such as a client device (e.g., client device 530), a server device (e.g., server device 540), etc. Additionally or alternatively, Figure 7 One or more process blocks of may be performed by one or more components of the device 600, such as the processor 620, the memory 630, the storage component 640, the input component 650, the output component 660, the communication component 670, and the like.
[0123] like Figure 7 As shown, process 700 may include receiving content data identifying content created by a user and metadata associated with the content (block 710). For example, a device may receive content data identifying content created by a user and metadata associated with the content as described above.
[0124] like Figure 7As further shown, process 700 may include receiving rule data identifying rules associated with utilization of content (block 720). For example, a device may receive rule data identifying rules associated with utilization of content as described above.
[0125] like Figure 7 As further shown, process 700 may include utilizing metadata to generate a digital DNA signature for the content in near real time (block 730). For example, a device may utilize metadata to generate a digital DNA signature for the content in near real time as described above.
[0126] like Figure 7 As further shown, process 700 may include storing rule data, all of the content in the content data, the digital DNA signatures, and the relationships between the digital DNA signatures in a repository (block 740). For example, the device may store rule data, all of the content in the content data, the digital DNA signatures, and the relationships between the digital DNA signatures in a repository as described above. In some implementations, the device may utilize the metadata and the content data to generate a digital identifier for the content; and may associate the digital identifier with a corresponding digital DNA signature stored in the repository to allow for additional factors in determining whether the new content violates one or more rules.
[0127] like Figure 7 As further shown, process 700 may include receiving from a client device new content generated based on specific content of the content data and new metadata associated with the new content (block 750). For example, the device may receive from a client device new content generated based on specific content of the content data and new metadata associated with the new content as described above. The new content may include a new file created from an existing file of the content data, a file created by copying and adding data from an existing file of the content data, and the like.
[0128] like Figure 7 As further shown, process 700 may include utilizing the new metadata to generate a new digital DNA signature for the new content (block 760). For example, the device may utilize the new metadata to generate a new digital DNA signature for the new content as described above. The new digital DNA signature may include a digital DNA signature corresponding to specific content of the content data.
[0129] like Figure 7As further shown, process 700 may include utilizing a machine learning model to process the new digital DNA signature, the rule data, and the digital DNA signature to determine whether the new content violates one or more rules of the rule data (block 770). For example, the device may utilize a machine learning model to process the new digital DNA signature, the rule data, and the digital DNA signature as described above to determine whether the new content violates one or more rules of the rule data. In some implementations, utilizing a machine learning model to process the new digital DNA signature, the rule data, and the digital DNA signature to determine whether the new content violates one or more rules of the rule data includes utilizing a file-level digital DNA signature mechanism to determine whether the new content violates one or more rules of the rule data.
[0130] like Figure 7 As further shown, process 700 may include performing one or more actions based on whether the new content violates one or more rules of the rule data. For example, the device may perform one or more actions based on whether the new content violates one or more rules of the rule data as described above.
[0131] In some implementations, one or more actions will prevent intellectual property issues for new content during different stages of the project life cycle for the new content. For example, performing the one or more actions may include one or more of the following: causing the new content to be corrected when the new content violates one or more rules; allowing the new content to be exploited when the new content fails to violate one or more rules; or providing a warning to a client device indicating that the new content violates one or more rules. Alternatively and / or additionally, performing the one or more actions includes one or more of the following: providing a notification to an entity associated with the client device indicating that the new content violates one or more rules; restricting exploitation of the new content when the new content violates one or more rules; storing the new content in a repository when the new content fails to violate one or more rules; or retraining a machine learning model based on whether the new content violates one or more rules.
[0132] In some implementations, performing the one or more actions includes determining one or more analyses based on whether the new content violates the one or more rules; generating a user interface based on the one or more analyses; and providing the user interface for display.
[0133] In some implementations, the new content is associated with the initiation of a software project, the rule data includes data identifying classifications, licensing information, and import-export restrictions associated with the software project, and performing one or more actions includes: selectively causing the new content to be corrected or allowing the new content to be utilized based on whether the new content violates the data identifying the classifications, licensing information, and import-export restrictions associated with the software project.
[0134] In some implementations, the new content is associated with a plan for a software project, the rule data includes data identifying imported and declared intellectual property dependencies associated with the software project, and performing one or more actions includes: selectively causing the new content to be corrected or allowing the new content to be utilized based on whether the new content violates the data identifying imported and declared intellectual property dependencies associated with the software project.
[0135] In some implementations, the new content is associated with the development of a software project, the rule data includes data identifying classifications, external dependencies, and licensing information associated with the software project, and performing one or more actions includes one or more of the following: when the new content violates the data identifying the classification associated with the software project, updating the classification; when the new content fails to violate the data identifying the external dependency associated with the software project, declaring the external dependency; or when the new content violates the data identifying the licensing information associated with the software project, obtaining a license.
[0136] In some implementations, the new content is associated with a released software project, the rule data includes data identifying compliance with an intellectual property policy associated with the software project, and performing one or more actions includes selectively allowing or denying the software project based on whether the new content violates the data identifying compliance with the intellectual property policy associated with the software project.
[0137] In some implementations, the new content is associated with a closed software project, and performing the one or more actions includes identifying the software project as an internal asset, a public asset, or a restricted asset of the entity when the new content fails to violate the one or more rules.
[0138] although Figure 7 Example blocks of process 700 are shown, but in some implementations, Figure 7 Process 700 may include additional blocks, fewer blocks, different blocks, or differently arranged blocks compared to those depicted in . Additionally or alternatively, two or more blocks in the blocks of process 700 may be performed in parallel.
[0139] According to some embodiments, the following examples are disclosed.
[0140] Example 1. A method, comprising: receiving content data and metadata by a device, the content data identifying content created by a user, the metadata being associated with the content; receiving rule data by the device, the rule data identifying rules associated with utilization of the content; using the metadata by the device to generate a digital DNA signature for the content in near real time; storing the rule data, all content in the content of the content data, the digital DNA signature, and the relationship between the digital DNA signatures by the device in a repository; receiving new content and new metadata by the device from a client device, the new content being generated based on specific content of the content data, the new metadata being associated with the new content; using the new metadata by the device to generate a new digital DNA signature for the new content; using a machine learning model by the device to process the new digital DNA signature, the rule data, and the digital DNA signature to determine whether the new content violates one or more rules of the rule data; and performing one or more actions by the device based on whether the new content violates one or more rules of the rule data.
[0141] Example 2. The method of example 1, wherein one or more actions are to prevent intellectual property issues with the new content during different stages of a project lifecycle for the new content.
[0142] Example 3. A method according to Example 1, wherein performing one or more actions includes one or more of the following: causing the new content to be corrected when the new content violates one or more rules; allowing the new content to be utilized when the new content fails to violate one or more rules; or providing a warning to a client device, indicating that the new content violates one or more rules.
[0143] Example 4. A method according to Example 1, wherein performing one or more actions includes one or more of the following: providing a notification to an entity associated with a client device, the notification indicating that the new content violates one or more rules; restricting utilization of the new content when the new content violates one or more rules; storing the new content in a repository when the new content fails to violate one or more rules; or retraining a machine learning model based on whether the new content violates one or more rules.
[0144] Example 5. The method according to Example 1 also includes: generating a digital identifier for the content using metadata and content data; and associating the digital identifier with a corresponding digital DNA signature stored in a repository to allow additional factors in determining whether new content violates one or more rules.
[0145] Example 6. A method according to Example 1, wherein the new content is associated with the initiation of a software project, the rule data includes data identifying classifications, licensing information, and import-export restrictions associated with the software project, and performing one or more actions includes: selectively causing the new content to be corrected or allowing the new content to be utilized based on whether the new content violates the data identifying the classifications, licensing information, and import-export restrictions associated with the software project.
[0146] Example 7. A method according to Example 1, wherein the new content is associated with a plan for a software project, the rule data includes data identifying imported and declared intellectual property dependencies associated with the software project, and performing one or more actions includes: selectively causing the new content to be corrected or allowing the new content to be utilized based on whether the new content violates the data identifying imported and declared intellectual property dependencies associated with the software project.
[0147] Example 8. A device comprising: one or more memories; and one or more processors, the one or more processors being communicatively coupled to the one or more memories, the one or more processors being configured to: receive content data and metadata, the content data identifying content created by a user, the metadata being associated with the content; receive rule data, the rule data identifying rules associated with utilization of the content; use the metadata to generate a digital DNA signature for the content in near real time; use the metadata and the content data to generate a digital identifier for the content; associate the digital identifier with the corresponding digital DNA signature; store the rule data, all content in the content of the content data, the digital DNA signature, and the digital identifier in a repository; receive new content and new metadata from a client device, the new content being generated based on specific content of the content data, the new metadata being associated with the new content; use the new metadata to generate a new digital DNA signature for the new content; use a machine learning model to process the new digital DNA signature, the rule data, the digital DNA signature, and the digital identifier to determine whether the new content violates one or more rules of the rule data; and perform one or more actions based on whether the new content violates one or more rules of the rule data.
[0148] Example 9. A device according to Example 8, wherein the new content is associated with the development of a software project, the rule data includes data identifying classifications, external dependencies, and licensing information associated with the software project, and one or more processors are configured to perform one or more of the following when performing one or more actions: updating the classification when the new content violates the data identifying the classification associated with the software project; declaring the external dependency when the new content fails to violate the data identifying the external dependency associated with the software project; or obtaining a license when the new content violates the data identifying the licensing information associated with the software project.
[0149] Example 10. A device according to Example 8, wherein the new content is associated with a published software project, the rule data includes data identifying compliance with an intellectual property policy associated with the software project, and one or more processors, when performing one or more actions, are configured to selectively allow or deny the software project based on whether the new content violates the data identifying compliance with the intellectual property policy associated with the software project.
[0150] Example 11. A device according to Example 8, wherein the new content is associated with a closed software project, and the one or more processors, when performing one or more actions, are configured to: identify the software project as an internal asset, a public asset, or a restricted asset for an entity when the new content fails to violate one or more rules.
[0151] Example 12. The apparatus of Example 8, wherein the new content comprises one of: a new file created from an existing file of content data, or a file created by copying and adding data from an existing file of content data.
[0152] Example 13. The apparatus of Example 8, wherein the new digital DNA signature comprises a digital DNA signature corresponding to specific content of the content data.
[0153] Example 14. A device according to Example 8, wherein one or more processors, when performing one or more actions, are configured to: determine one or more analyses based on whether new content violates one or more rules; generate a user interface based on the one or more analyses; and provide the user interface for display.
[0154] Example 15. A non-transitory computer-readable medium storing instructions, the instructions comprising: one or more instructions, which, when executed by one or more processors, cause the one or more processors to: store in a repository: content data identifying content, and metadata associated with the content, rule data, the rule data identifying rules associated with utilization of the content, and a digital DNA signature for the content generated in near real time based on the metadata; receive from a client device new content generated based on specific content of the content data, and new metadata associated with the new content; generate a new digital DNA signature for the new content using the new metadata; process the new digital DNA signature, the rule data, and the digital DNA signature using a machine learning model to determine whether the new content violates one or more rules of the rule data; and perform one or more actions based on whether the new content violates one or more rules of the rule data.
[0155] Example 16. A non-transitory computer-readable medium according to Example 15, wherein one or more instructions that cause one or more processors to perform one or more actions cause the one or more processors to perform one or more of the following: when the new content violates one or more rules, cause the new content to be corrected; when the new content fails to violate one or more rules, allow the new content to be utilized; provide a warning to a client device, the warning indicating that the new content violates one or more rules; provide a notification to an entity associated with the client device, the notification indicating that the new content violates one or more rules; when the new content violates one or more rules, restrict the utilization of the new content; when the new content fails to violate one or more rules, store the new content in a repository; or retrain the machine learning model based on whether the new content violates one or more rules.
[0156] Example 17. A non-transitory computer-readable medium according to Example 15, wherein one or more instructions for causing one or more processors to utilize a machine learning model to process a new digital DNA signature, rule data, and the digital DNA signature, causing the one or more processors to: utilize a file-level digital DNA signature mechanism to determine whether new content violates one or more rules of the rule data.
[0157] Example 18. A non-transitory computer-readable medium according to Example 15, wherein the instructions further include: one or more instructions, which, when executed by one or more processors, cause the one or more processors to: generate a digital identifier for the content using metadata and content data; associate the digital identifier with a corresponding digital DNA signature stored in a repository; and use the digital identifier to determine whether the new content violates one or more rules.
[0158] Example 19. A non-volatile computer-readable medium according to Example 15, wherein one or more instructions cause one or more processors to perform one or more actions, causing the one or more processors to: determine one or more analyses based on whether new content violates one or more rules of rule data; generate a user interface based on the one or more analyses; and provide the user interface for display.
[0159] Example 20. A non-transitory computer-readable medium according to Example 15, wherein the new content is associated with a closed software project and one or more instructions that cause one or more processors to perform one or more actions, causing the one or more processors to: identify the software project as an internal asset, a public asset, or a restricted asset for an entity when the new content violates one or more rules of the rule data.
[0160] The foregoing disclosure provides illustration and description but is not intended to be exhaustive or to limit the implementations to the precise form disclosed. Modifications may be made in light of the above disclosure or may be acquired from practice of the implementations.
[0161] As used herein, the term "component" is intended to be broadly interpreted as hardware, firmware, or a combination of hardware and software. It will be apparent that the systems and / or methods described herein can be implemented in different forms of hardware, firmware, and / or a combination of hardware and software. The actual dedicated control hardware or software code used to implement these systems and / or methods is not restrictive to the implementation. Therefore, the operation and behavior of the systems and / or methods are described herein without citing specific software codes - it should be understood that, based on the description herein, software and hardware can be used to implement the systems and / or methods.
[0162] As used herein, satisfying a threshold may refer to a value being greater than a threshold, greater than or equal to a threshold, less than a threshold, less than or equal to a threshold, equal to a threshold, etc., depending on the context.
[0163] Although particular combinations of features are recited in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of the various implementations. In fact, many of these features may be combined in ways not specifically recited in the claims and / or disclosed in the specification. Although each dependent claim listed below may only directly depend on one claim, the disclosure of the various implementations includes each dependent claim in combination with every other claim in the claim set.
[0164] Unless explicitly described, the elements, actions or instructions used herein should not be interpreted as key or necessary. Likewise, as used herein, the articles "one" and "an" are intended to include one or more items, and can be used interchangeably with "one or more". In addition, as used herein, the article "the" is intended to include one or more items quoted in conjunction with the article "the", and can be used interchangeably with "the one or more". In addition, as used herein, the term "a set (set)" is intended to include one or more items (for example, related items, unrelated items, combinations of related items and unrelated items, etc.), and can be used interchangeably with "one or more". In the case where only one item is expected, phrases "only one" or similar language are used. Likewise, as used herein, the terms "have (has)", "have (have)", "have (haing)" etc. are intended to be open terms. In addition, the phrase "based on" is intended to represent "based at least in part", unless otherwise explicitly stated. Likewise, as used herein, the term "or" when used in a sequence is intended to be inclusive and may be used interchangeably with "and / or" unless expressly stated otherwise (e.g., if used in conjunction with "either" or "only one of").
Claims
1. A method for determining content, comprising: receiving, by a device, content data and metadata, the content data identifying content created by a user, the metadata associated with the content; The content created by the user includes one or more of the following: lines of code, or Objects designed by users; receiving, by the device, rule data identifying rules associated with utilization of the content; generating, by the device, a digital DNA signature for the content in near real time using the metadata; The digital DNA signature in the digital DNA signature includes: Information that uniquely identifies the content, and information enabling the device to determine whether portions of the content are included within other content; Processing, by a device, the content data, the rule data, the digital DNA signature, and the relationship between the digital DNA signatures using a machine learning model to determine a set of variables associated with a set of observations of the machine learning model; storing, by the device, in a repository, the rule data, all of the contents of the content data, the digital DNA signatures, the relationships between the digital DNA signatures, and the set of variables; Based on the specific content of the content data, the device provides a template associated with the digital DNA signature to a client device; receiving, by the device, new content and new metadata from the client device, the new content being generated based on the template, the new metadata being associated with the new content; generating, by the device, a new digital DNA signature for the new content using the new metadata; processing, by the device, the new digital DNA signature, the rule data, the digital DNA signature, and the set of variables using the machine learning model to determine a predicted value of a target variable associated with the set of variables indicating whether the new content violates one or more rules of the rule data, Wherein processing the digital DNA signature and the set of variables using the machine learning model comprises: determining whether the new digital DNA signature includes the digital DNA signature based on using the machine learning model, and determining information identifying a relationship between the new content and the template based on using the machine learning model; and One or more actions are performed by the device based on whether the new content violates the one or more rules of the rule data. 2 . The method of claim 1 , wherein the one or more actions are to prevent intellectual property issues with the new content during different stages of a project lifecycle for the new content.
3. The method of claim 1 , wherein performing the one or more actions comprises one or more of: When the new content violates the one or more rules, causing the new content to be corrected; When the new content fails to violate the one or more rules, allowing the new content to be utilized; or An alert is provided to the client device, the alert indicating that the new content violates the one or more rules.
4. The method of claim 1 , wherein performing the one or more actions comprises one or more of: providing a notification to an entity associated with the client device, the notification indicating that the new content violates the one or more rules; When the new content violates the one or more rules, restricting the use of the new content; When the new content fails to violate the one or more rules, storing the new content in the repository; or The machine learning model is retrained based on whether the new content violates the one or more rules.
5. The method according to claim 1, further comprising: generating a digital identifier for the content using the metadata and the content data; as well as The digital identifier is associated with a corresponding digital DNA signature stored in the repository to permit additional factors in the determination of whether the new content violates the one or more rules.
6. The method of claim 1 , wherein the new content is associated with the launch of a software project, the rule data includes data identifying a classification, licensing information, and import-export restrictions associated with the software project, and The performing of the one or more actions comprises: The new content is selectively caused to be corrected or allowed to be utilized based on whether the new content violates the data identifying the classification, the licensing information, and the import-export restrictions associated with the software item.
7. The method of claim 1 , wherein the new content is associated with a plan for a software project, the rule data includes data identifying imported and declared intellectual property dependencies associated with the software project, and The performing of the one or more actions comprises: The new content is selectively caused to be corrected or allowed to be utilized based on whether the new content violates the data identifying the imported and declared intellectual property dependencies associated with the software item.
8. A device for determining content, comprising: one or more memories; as well as one or more processors, the one or more processors being coupled to the one or more memories, the one or more processors being configured to: receiving content data and metadata, the content data identifying content created by a user, the metadata associated with the content; The content created by the user includes one or more of the following: lines of code, or Objects designed by users; receiving rule data identifying rules associated with utilization of the content; generating a digital DNA signature for the content in near real time using the metadata; generating a digital identifier for the content using the metadata and the content data, The digital DNA signature in the digital DNA signature includes: Information that uniquely identifies the content, and information enabling the one or more processors to determine whether portions of the content are included within other content; associating the digital identifier with a corresponding digital DNA signature; Processing the content data, the rule data, the digital DNA signature, and the digital identifier using a machine learning model to determine a set of variables associated with a set of observations of the machine learning model; storing the rule data, all of the content of the content data, the digital DNA signature, the digital identifier, and the set of variables in a repository; providing a template associated with the digital DNA signature to a client device based on specific content of the content data; receiving new content and new metadata from the client device, the new content being generated based on the template, the new metadata being associated with the new content; generating a new digital DNA signature for the new content using the new metadata; processing the new digital DNA signature, the rule data, the digital DNA signature, the digital identifier, and the set of variables using the machine learning model to determine a predicted value of a target variable associated with the set of variables indicating whether the new content violates one or more rules of the rule data, wherein the one or more processors for processing the new digital DNA signature, the rule data, the digital DNA signature, and the set of variables using the machine learning model are configured to: determining whether the new digital DNA signature includes the digital DNA signature based on using the machine learning model, and determining information identifying a relationship between the new content and the template based on using the machine learning model; and One or more actions are performed based on whether the new content violates the one or more rules of the rule data.
9. The apparatus of claim 8, wherein the new content is associated with development of a software project, the rule data includes data identifying classification, external dependencies, and licensing information associated with the software project, and The one or more processors for performing the one or more actions are configured to perform one or more of the following: updating the classification when the new content violates the data identifying the classification associated with the software item; declaring the external dependency when the new content fails to violate the data identifying the external dependency associated with the software project; or A license is acquired when the new content violates the data identifying the license information associated with the software item.
10. The apparatus of claim 8, wherein the new content is associated with a published software project, the rule data includes data identifying compliance with an intellectual property policy associated with the software project, and The one or more processors for performing the one or more actions are configured to: The software item is selectively allowed or denied based on whether the new content violates the data identifying compliance with the intellectual property policy associated with the software item.
11. The apparatus of claim 8, wherein the new content is associated with a closed software item, and The one or more processors for performing the one or more actions are configured to: When the new content fails to violate the one or more rules, the software item is identified as an internal asset, a public asset, or a restricted asset for an entity.
12. The apparatus of claim 8, wherein the new content comprises one of: a new file created from an existing file of said content data, or A file created by copying and adding data from an existing file of content data.
13. The apparatus of claim 8, wherein the new digital DNA signature comprises a digital DNA signature corresponding to the specific content of the content data.
14. The apparatus of claim 8, wherein the one or more processors to perform the one or more actions are configured to: determining one or more analyses based on whether the new content violates the one or more rules; generating a user interface based on the one or more analyses; and The user interface is provided for display.
15. A non-transitory computer-readable medium storing instructions, the instructions comprising: One or more instructions that, when executed by one or more processors, cause the one or more processors to: Store in repository: content data identifying content, and metadata associated with said content, The content includes one or more of the following: lines of code, or Objects designed by users; rule data identifying rules associated with utilization of the content, and a digital DNA signature for the content generated in near real time based on the metadata, The digital DNA signature in the digital DNA signature includes: Information that uniquely identifies the content, and information enabling the one or more processors to determine whether portions of the content are included within other content; A set of variables associated with a set of observations and a machine learning model; providing a template associated with the digital DNA signature to a client device based on specific content of the content data; receiving, from a client device, new content generated based on the template and new metadata associated with the new content; generating a new digital DNA signature for the new content using the new metadata; processing the new digital DNA signature, the rule data, the digital DNA signature, and the set of variables using the machine learning model to determine a predicted value of a target variable associated with the set of variables indicating whether the new content violates one or more rules of the rule data, wherein the one or more instructions causing the one or more processors to process the new digital DNA signature, the rule data, the digital DNA signature, and the set of variables using the machine learning model are configured to: determining whether the new digital DNA signature includes the digital DNA signature based on using the machine learning model, and determining information identifying a relationship between the new content and the template based on using the machine learning model; and One or more actions are performed based on whether the new content violates the one or more rules of the rule data.
16. The non-transitory computer readable medium of claim 15, wherein the one or more instructions that cause the one or more processors to perform the one or more actions cause the one or more processors to do one or more of: When the new content violates the one or more rules, causing the new content to be corrected; When the new content fails to violate the one or more rules, allowing the new content to be utilized; providing an alert to the client device, the alert indicating that the new content violates the one or more rules; providing a notification to an entity associated with the client device, the notification indicating that the new content violates the one or more rules; When the new content violates the one or more rules, restricting the use of the new content; When the new content fails to violate the one or more rules, storing the new content in the repository; or The machine learning model is retrained based on whether the new content violates the one or more rules.
17. The non-transitory computer readable medium of claim 15, wherein the one or more instructions causing the one or more processors to utilize the machine learning model to process the new digital DNA signature, the rule data, and the digital DNA signature cause the one or more processors to: A file-level digital DNA signature mechanism is utilized to determine whether the new content violates the one or more rules of the rule data.
18. The non-transitory computer readable medium of claim 15, wherein the instructions further comprise: one or more instructions that, when executed by the one or more processors, cause the one or more processors to: generating a digital identifier for the content using the metadata and the content data; associating the digital identifier with a corresponding digital DNA signature stored in the repository; as well as The digital identifier is utilized to determine whether the new content violates the one or more rules.
19. The non-transitory computer readable medium of claim 15, wherein the one or more instructions that cause the one or more processors to perform the one or more actions cause the one or more processors to: determining one or more analyses based on whether the new content violates the one or more rules of the rule data; generating a user interface based on the one or more analyses; as well as The user interface is provided for display.
20. The non-transitory computer-readable medium of claim 15, wherein the new content is associated with closing a software project, and the one or more instructions that cause the one or more processors to perform the one or more actions cause the one or more processors to: When the new content violates the one or more rules of the rule data, the software item is identified as an internal asset, a public asset, or a restricted asset for an entity.
Citation Information
Patent Citations
Electronic biometric (dynamic) signature references enrollment method
US20150280921A1
Methods and system for managing intellectual property using a blockchain
US20180285996A1
