Volatile Organic Compounds Detection and Classification

By using a trained machine learning model to analyze and classify test data of volatile organic compounds, the problem of difficulty in identifying and classifying unknown VOCs in the existing technology is solved, and automatic classification and accurate identification of VOCs are achieved.

CN114496116BActive Publication Date: 2025-01-24INTERNATIONAL BUSINESS MACHINE CORPORATION
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202111239145.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-10-26
Filing Date
2021-10-25
Publication Date
2025-01-24
Estimated Expiration
2041-10-25

AI Technical Summary

Technical Problem

There are challenges in the detection and classification of volatile organic compounds (VOCs), and it is difficult for the prior art to effectively identify and classify unknown VOCs.

Method used

By using the trained machine learning model, test data related to VOC detection is received, the data characteristics are analyzed, the feature matching degree is determined, the degree of anomaly is defined, and classification is performed based on this.

Benefits of technology

It achieves automatic classification of detected volatile organic compounds, improves the ability to identify unknown VOCs, and enhances detection accuracy and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114496116B_ABST
    Figure CN114496116B_ABST
Patent Text Reader

Abstract

VOC classification is performed by receiving test data associated with detecting volatile organic compounds (VOCs), analyzing the test data based on a set of data features associated with known VOCs, determining a match between each feature of the test data and a corresponding feature of the set of data features, generating a set of matches, defining a first degree of abnormality for the test data based on the set of matches, and classifying the test data based on the first degree of abnormality.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to volatile organic compound detection and classification. The present disclosure specifically relates to the detection and classification of volatile organic compounds using trained machine learning models. Background Art

[0002] Volatile organic compound (VOC) detection and classification has been and remains a challenging area of ​​research in the research community. Sensors detect VOCs by integrating a partially specific, uniquely selective VOC recognition sensor array that is directly exposed to the target chemical analyte or environment. The main components of the sensor are an array of gas sensors and a pattern recognition algorithm to learn the unique signatures of VOCs to subsequently accurately classify unknown VOCs in a supervised or unsupervised manner. Summary of the invention

[0003] The following presents a summary of the invention to provide a basic understanding of one or more embodiments of the present disclosure. The summary of the invention is not intended to identify key or important elements or to delineate any scope of a particular embodiment or any scope of the claims. Its sole purpose is to present concepts in a simplified form as a prelude to the more detailed description that is presented later. In one or more embodiments described herein, an apparatus, system, computer-implemented method, device, and / or computer program product enables automatic classification of detected volatile organic compounds.

[0004] Aspects of the present invention disclose methods, systems, and computer-readable media associated with volatile organic compound (VOC) classification by receiving test data associated with detecting volatile organic compounds, analyzing the test data based on a set of data features associated with known VOCs, determining a match between each feature of the test data and a corresponding feature of the set of data features, generating a matched set, defining a first abnormality level for the test data based on the matched set, and classifying the test data based on the first abnormality level. BRIEF DESCRIPTION OF THE DRAWINGS

[0005] The above and other objects, features and advantages of the present disclosure will become more apparent through a more detailed description of some embodiments of the present disclosure in the accompanying drawings, in which like reference numerals generally refer to like components in the embodiments of the present disclosure.

[0006] Figure 1 A schematic diagram of a computing environment according to an embodiment of the present invention is provided.

[0007] Figure 2 A flow chart depicting a sequence of operations according to an embodiment of the present invention is provided.

[0008] Figure 3 A flow chart depicting the logical data flow according to an embodiment of the present invention is provided.

[0009] Figure 4 A cloud computing environment according to an embodiment of the present invention is depicted.

[0010] Figure 5 An abstract model layer according to an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0011] Some embodiments will be described in more detail with reference to the accompanying drawings, in which embodiments of the present disclosure have been shown. However, the present disclosure can be implemented in various ways and should not be construed as being limited to the embodiments disclosed herein.

[0012] In embodiments, one or more components of the system may employ hardware and / or software to solve problems that are highly technical in nature (e.g., analyzing test data features based on a set of data features associated with known VOCs, determining a match between each feature of the test data and a corresponding feature of the set of data features, generating a set of matches, defining a first degree of abnormality for the test data based on the set of matches, and classifying the test data based on the first degree of abnormality, etc.). These solutions are not abstract and cannot be performed by a person as a collection of mental actions due to, for example, the processing power required to facilitate classification of volatile organic compounds. In addition, some of the processes performed may be performed by a dedicated computer for performing defined tasks associated with data classification. For example, a dedicated computer may be employed to perform tasks associated with classification of volatile organic compounds, etc.

[0013] Volatile organic compounds are converted by an array of sensors and produce a time series voltage output from each sensor that is related to the VOC that each sensor is exposed to. The voltage output of each sensor can be analyzed based on the transition from a first voltage to a second voltage. Each voltage transition can be divided into equal time periods, such as five segments per transition. Each time period of each transition can be characterized as a feature of the transition. In this way, a set of voltage outputs from the sensor array during exposure to VOCs can be converted into a set of VOC-related features. Similarly, a set of array sensor output voltages associated with a set of VOCs (such as an aroma beam associated with a food or beverage item) can be converted into a set of features associated with the voltage transition in the sensor output of the corresponding VOC set. The disclosed embodiments enable new volatile organic compounds to be classified based on a set of previously classified volatile organic compounds used to train a machine learning volatile organic compound classification model.

[0014] The sensor array output may be provided directly to an electronic nose computing system executing the disclosed embodiments, or the data may be recorded and provided to an external computing system executing the disclosed embodiments.

[0015] In an embodiment, a method uses a collection of labeled VOCs to train a machine learning model. Each VOC of the collection can constitute a single VOC or a collection of labeled VOCs, such as a collection of VOCs associated with a specific aroma or flavor. For each VOC, the method collects an electronic nose voltage output.

[0016] In an embodiment, each sensor of the electronic nose undergoes one or more temperature oscillations resulting in a sensor voltage output waveform generated during the sensor temperature change. In this embodiment, the sensing device is capable of changing the temperature of each sensor according to a defined temperature waveform using a thermistor to change the sensor temperature.

[0017] For each labeled VOC sample of the training sample set, the method performs multiple sensing sessions, generating a set of voltage outputs from the sensor array for each labeled VOC sample. The value of each feature of each labeled VOC can vary over the set of voltage outputs for the VOC. The set of voltage outputs defines a distribution of values ​​associated with each feature in the set of features of the VOC.

[0018] For each labeled VOC of the training dataset, the method learns a set of m features corresponding to the class of the VOC. For each feature of each class, the method learns and defines feature boundaries by analyzing the distribution of feature values ​​from the set of outputs associated with the sensing sessions for the labeled VOC.

[0019] In an embodiment, to reduce computational complexity, the method reduces the set of m features associated with each labeled VOC. In this embodiment, for the distribution of values ​​of each feature for each category, the method tests each value for inclusion in the set of values ​​for the feature and the category. For each category, the method considers an m-dimensional true vector, where m is equal to the total set of features associated with the VOC sample. Evaluation of the set of features includes defining boundaries for each feature of the set of features.

[0020] This method estimates the mean (μ) of the eigenvalue distribution by using a distribution that includes surrogate data for a specified confidence level (e.g., 95% confidence). j ) and standard deviation (σ j ), thereby defining the boundaries of each feature of the category. Then according to Chebyshev's inequality and defined as μ j ±n j *σ j The first threshold of n is used to determine the boundary of the feature. This method obtains each hyperparameter n jThe value of is the minimum number that allows Z% of the values ​​of the distribution to be included in the distribution defined as [μ j -n j *σ j , μ j +n j *σ j ], where Z% is defined using user input, for example 95%. As a result of this consideration, the method produces a set of feature boundaries μ0±n0*σ0, μ1±n1*σ1,..., μ m* ±n m* *σ m* , where m * <m. For the defined boundaries of the examples, 95% of the feature data fall within the boundaries, and 5% of the feature data fall outside the defined boundaries. The method excludes features with scattered distributions indicated by hyperparameter nj values ​​above the threshold from the class. The set of training sample data features that results in 95% or other user-defined limits being associated with the labeled VOC, and 5% of the training sample data features being anomalous to the labeled VOC.

[0021] The method populates a VOC database with defined feature boundaries and associates with each of the labeled VOCs included in the training sample and a VOC set. The method compares the test sample data with the feature boundary set of the VOC database to classify the test sample according to the VOC content.

[0022] After training, the method provides a classification model for use with array sensor output voltages associated with test samples that were not part of the training sample set. For each test sample, the method separates the output voltage data into features having the same time scale as used in segmenting the training sample data. For each feature of each sensor output for each test sample, the method compares the feature to the boundaries of the corresponding feature of the corresponding VOC from the model. The method considers the features to be corresponding when two features occupy the same position along the voltage output timeline.

[0023] In an embodiment, the method classifies as anomalies test samples having values ​​falling outside the defined feature boundaries more than the maximum number (Max) of defined features. In this embodiment, the method defines the maximum number based on the distribution of the training sample data of the feature. For the training set data, the method starts with Max=0, indicating a situation in which all samples are classified as anomalies, and increases Max linearly in step 1 until the number of anomalies classified as anomalies in the training sample set is less than or equal to the complement of the user-defined confidence level, (100-Z)% of the training samples. For example, the method defines Max as the number of features with trained sample data exceeding the boundary when 5% of the training samples are classified as anomalies with a user-defined Z of 95. In practice, when the defined feature boundaries μ0±n0*σ0, μ1±n1*σ1,..., μ m* ±n m* *σ m* When the number of test sample feature values ​​outside the defined feature boundary exceeds the value of Max determined based on the training sample data set, the method classifies the test sample as an anomaly. Test samples with feature values ​​less than Max that fall outside the defined feature boundary are classified as VOCs with the maximum number of matching features relative to the test sample data feature values.

[0024] In an embodiment, the method defines a value a as the number of test sample feature values ​​that fall outside the corresponding feature boundary. For test samples with a ≥ Max, the method classifies the test sample as abnormal. A higher value of a indicates a higher degree of abnormality of the test sample relative to the baseline VOC of the trained model. For test samples classified as abnormal, the method takes into account the degree of abnormality and classifies the test sample as a member of an unseen category that is not currently represented in the model's VOC database (relatively low degree of abnormality), or as a contaminated sample (relatively high degree of abnormality).

[0025] In an embodiment, the method defines a threshold for a as the average value of a for training samples that fall outside the feature boundaries, as the method defines those boundaries. (For a Z of 95, the method defines the feature boundaries to include 95% of the training samples, and then the method uses the average value of a for the 5% of training samples that fall outside the now defined feature boundaries as a threshold for further classifying the anomalous test sample as: an unseen class sample (if a is below the threshold), or a contaminated sample (if a is above the threshold).

[0026] In an embodiment, the method labels test samples having values ​​at or above an "a" threshold as contaminants and assigns the samples to a contaminant class. Unsupervised application of the method to contaminant class samples produces new VOC classes associated with particular types of contaminants based on test sample feature values ​​having similar characteristics. In this embodiment, the method utilizes feature sets of test samples classified as contaminants, and further classifies the entire collection of classified samples based on similarities in the sample's individual feature sets. The new classification of contaminants can be added to the database of baseline VOCs for use in classifying new test samples.

[0027] For test samples that are classified as anomalous but have values ​​below the "a" threshold, the method classifies the test samples as unseen classes. Unsupervised application of this method to test samples classified as unseen further classifies the test samples based on similarities between the feature sets of the samples. The new classifications can be added to the database of baseline VOCs for use in classifying new test samples.

[0028] In an embodiment, the sensors of the array may experience a shift in output due to degradation of the sensors with use. In this embodiment, the thresholds described above may shift in response to the shift in sensor output. Execution of the method in a training mode may result in determination of new thresholds corresponding to the sensor changes. In this embodiment, the operation of the method of checking and modifying thresholds in a training mode may be performed on a periodic, monthly, semi-annual, yearly, etc. basis.

[0029] Applications of the disclosed embodiments include testing food samples to check for spoilage of meat, dairy, and other foods as indicated by a shift in the sample VOC from a defined baseline. Other applications include checking for the presence of volatile organic compounds associated with hazardous materials (e.g., VOCs added to commercially available natural gas to help identify system leaks), checking for the presence of ammonia near refrigeration systems that use the gas, checking for baseline volatile organic compounds emitted from other hazardous materials such as explosive materials, etc. Uses also include sensing VOCs associated with disease as a diagnostic indicator.

[0030] Figure 1 A schematic diagram of exemplary network resources associated with practicing the disclosed invention is provided. The present invention may be implemented in a processor of any disclosed element that processes an instruction stream. As shown, a networked client device 110 is wirelessly connected to a server subsystem 102. A client device 104 is wirelessly connected to the server subsystem 102 via a network 114. The client devices 104 and 110 include a volatile organic compound classification program (not shown) and sufficient computing resources (processor, memory, network communication hardware) to execute the program. Figure 1As shown, server subsystem 102 includes a server computer 150 . Figure 1 A block diagram of components of a server computer 150 within a networked computer system 1000 according to an embodiment of the present invention is depicted. It should be understood that Figure 1 This merely provides an illustration of one implementation and does not imply any limitation with respect to the environments in which different embodiments may be implemented.Many modifications to the described environments are possible.

[0031] The server computer 150 may include a processor 154, a memory 158, a permanent storage device 170, a communication unit 152, an input / output (I / O) interface 156, and a communication fabric 140. The communication fabric 140 provides communications between the cache 162, the memory 158, the permanent storage device 170, the communication unit 152, and the input / output (I / O) interface 156. The communication fabric 140 may be implemented with any architecture designed to transfer data and / or control information between a processor (such as a microprocessor, a communication and network processor, etc.), a system memory, peripheral devices, and any other hardware components within a system. For example, the communication fabric 140 may be implemented with one or more buses.

[0032] Memory 158 and permanent storage 170 are computer-readable storage media. In this embodiment, memory 158 includes random access memory (RAM) 160. In general, memory 158 may include any suitable volatile or non-volatile computer-readable storage media. Cache 162 is a fast memory that enhances the performance of processor 154 by saving recently accessed data from memory 158 and data near recently accessed data.

[0033] Program instructions and data for implementing embodiments of the present invention (e.g., volatile organic compound classification program 175) are stored in permanent storage 170 for execution and / or access by one or more corresponding processors 154 of server computer 150 via cache 162. In this embodiment, permanent storage 170 includes a magnetic hard drive. As an alternative or in addition to a magnetic hard drive, permanent storage 170 may include a solid-state hard drive, a semiconductor memory device, a read-only memory (ROM), an erasable programmable read-only memory (EPROM), flash memory, or any other computer-readable storage medium capable of storing program instructions or digital information.

[0034] The media used by permanent storage 170 may also be removable. For example, a removable hard drive may be used for permanent storage 170. Other examples include optical and magnetic disks, thumb drives, and smart cards that are inserted into a drive for transfer to another computer-readable storage medium that is also part of permanent storage 170.

[0035] In these examples, communications unit 152 provides communications with other data processing systems or devices including resources of client computing devices 104 and 110. In these examples, communications unit 152 includes one or more network interface cards. Communications unit 152 may provide communications using one or both of physical and wireless communications links. Software distribution programs and other programs and data used to implement the present invention may be downloaded to permanent storage 170 of server computer 150 through communications unit 152.

[0036] The I / O interface 156 allows input and output of data with other devices that may be connected to the server computer 150. For example, the I / O interface 156 may provide a connection to an external device 190 such as a keyboard, a keypad, a touch screen, a microphone, a digital camera, and / or some other suitable input device. The external device 190 may also include a portable computer-readable storage medium such as, for example, a thumb drive, a portable optical or magnetic disk, and a memory card. Software and data for implementing embodiments of the present invention (e.g., the volatile organic compound classification program 175 on the server computer 150) may be stored on such a portable computer-readable storage medium and may be loaded onto the permanent storage device 170 via the I / O interface 156. The I / O interface 156 is also connected to a display 180.

[0037] Display 180 provides a mechanism for displaying data to a user, and may be, for example, a computer monitor. Display 180 may also be used as a touch screen, such as a display of a tablet computer.

[0038] Figure 2 A flow chart 200 is provided that illustrates exemplary activities associated with the practice of the present disclosure. After the program is started, at box 210, the method of the volatile organic compound classification program 175 receives sensor array output voltage data related to VOCs from an electronic nose as test data. The method can receive the data through a direct connection to the electronic nose, or indirectly after the data is recorded for processing and passed to the method. The direct or indirect connection can include passing the data to the method through a computer network infrastructure. The method converts the received VOC data into data features for classifying the test sample according to the VOC content of the sample.

[0039] At block 220, the method of the volatile organic compound classification program 175 analyzes the test data according to the set of baseline VOC feature patterns stored in the database. In an embodiment, the method populates the VOC database by analyzing the labeled VOC sample data according to the classification steps of the method. The method defines feature boundaries for the training sample data features. The method defines thresholds for classifying the test samples as abnormal, and further characterizes the abnormal test samples as contaminated samples or unseen VOC samples.

[0040] At block 230, the method determines a match between the test sample data features and the data feature patterns of the VOCs used for classification. The method compares the test sample data feature values ​​to previously defined data feature boundaries for the corresponding VOC data features. Values ​​within the defined boundaries are considered matches, while values ​​outside the defined boundaries are not considered matches. The method determines the number of test sample data features that match the known VOC data features and how many test sample data features do not match the known VOC data features.

[0041] At block 240, the method defines a first degree of abnormality for the test sample data. The method uses the number of matches determined above to define the first degree of abnormality. The method determines a number a representing test sample data features that fall outside of the defined training sample VOC data feature boundaries. The method forwards the a value as the first degree of abnormality for the test sample.

[0042] At box 250, the method classifies the test sample according to a first degree of abnormality. In an embodiment, the method defines a Max threshold for the a value of the test sample data feature according to the distribution of data from the training sample. The method determines a threshold number of data feature boundaries that produces a user-specified level of accuracy in classifying the training data sample. As an example, the method determines a maximum number of mismatched training sample data feature boundaries, which results in anonymous classification for a number of training samples that is less than or equal to a user-defined tolerance level. For a user-defined 95% confidence, 5% abnormal tolerance, the method determines the maximum number of feature boundaries that the training set samples may fall outside of, which results in 5% or less of the training samples being classified as abnormal.

[0043] Test samples with a values ​​below the threshold are classified as baseline VOCs with the largest number of features matching the test sample data features. Test samples with a values ​​above the defined a threshold are classified as anomalous.

[0044] Figure 3A flowchart 300 is provided according to an embodiment of the present invention, which illustrates the method logic and data flow associated with the training model. As shown, the machine learning classification model 310 receives the training sample sensor array output data 312. The model 310 uses the data 312 to define data feature boundaries 314 for the marked VOCs according to the user confidence level Z. The method stores the pattern of feature boundaries for marking VOCs in the VOC feature boundary database 315. The model also defines a MAX threshold 316, which is associated with the number of feature boundaries that the sample data may fall outside without being classified as anomalies. The method determines the MAX threshold 316 based on the user confidence and the distribution of sample data features from the training sample set. The method also determines an "a" threshold 318 for anomaly classification. The method determines the "a" threshold 318 as the average of the number of failed feature boundary matches a for samples classified as anomalies for the training set. For an anomaly tolerance level of 5%, the method determines the "a" threshold 318 as the average "a" value of 5% of the training set samples classified as anomalies.

[0045] As shown, the method utilizes the training model 310, including feature boundary definitions 314, MAX thresholds 316, and "a" thresholds 318, to classify new test sample data 322. At 324, the training model receives the test sample data 322 and compares the test sample data features to the stored VOC data feature boundaries 314 from the model's VOC feature boundary database 315. For each test sample, the method determines the number of VOC feature boundaries that the sample's data features match and how many of the sample's features do not match - the "a" value of the test sample.

[0046] At 325, the method compares the "a" value of the test sample to the previously determined MAX threshold 316 value. For test samples with "a" values ​​less than MAX, the method classifies the test sample as a VOC with the most data features matching the sample 326. For test samples with a values ​​≥ MAX, the method classifies the test sample as an anomaly 327.

[0047] For test samples classified as anomalous, the method compares the sample's a value to an "a" threshold 318 at 327. Test samples with "a" values ​​above the "a" threshold 318 are classified as contaminants 328. Test samples with a values ​​below the "a" threshold are classified as unseen volatile organic compounds 329.

[0048] In embodiments where sufficient pollutant samples or unseen VOC samples have been accumulated, the method performs a training phase using the accumulated pollutant or unseen VOC data as new training data 312 to generate new classifications for the model.

[0049] It should be understood that although the present disclosure includes detailed descriptions about cloud computing, the implementation of the teachings set forth herein is not limited to cloud computing environments. Instead, embodiments of the present invention can be implemented in conjunction with any other type of computing environment now known or later developed.

[0050] Cloud computing is a service delivery model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be quickly provisioned and released with minimal management effort or interaction with the provider of the service. The cloud model may include at least five characteristics, at least three service models, and at least four deployment models.

[0051] Features are as follows:

[0052] On-demand self-service: Cloud consumers can unilaterally and automatically provision computing capabilities, such as server time and network storage, as needed without requiring manual interaction with the service provider.

[0053] Wide Area Network Access: Capabilities are available over the network and accessed through standard mechanisms that facilitate use by heterogeneous thin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

[0054] Resource pooling: A provider's computing resources are pooled to serve multiple consumers using a multi-tenant model, where different physical and virtual resources are dynamically allocated and reallocated based on demand. There is location independence in the sense that consumers typically do not control or know the exact location of the resources provided, but are able to specify the location at a higher level of abstraction (e.g., country, state, or data center).

[0055] Rapid elasticity: In some cases, the ability to scale out quickly and in quickly can be provisioned quickly and elastically. To the consumer, the capacity available for provisioning often appears to be unlimited and can be purchased in any quantity at any time.

[0056] Metered Services: Cloud systems automatically control and optimize resource usage by leveraging metering capabilities at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency to both providers and consumers of the utilized services.

[0057] The service model is as follows:

[0058] Software as a Service (SaaS): The capability provided to the consumer is to use the provider's applications running on the cloud infrastructure. The applications are accessible from a variety of client devices through a thin client interface such as a web browser (e.g., web-based email). The consumer does not manage or control the underlying cloud infrastructure including the network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings.

[0059] Platform as a Service (PaaS): The capability provided to consumers is to deploy consumer-created or acquired applications onto cloud infrastructure, where the applications are created using programming languages ​​and tools supported by the provider. The consumer does not manage or control the underlying cloud infrastructure including networks, servers, operating systems, or storage, but has control over the deployed applications and possible configuration of the application hosting environment.

[0060] Infrastructure as a Service (IaaS): The capabilities provided to consumers are processing, storage, networking, and other basic computing resources on which consumers can deploy and run arbitrary software, which may include operating systems and applications. Consumers do not manage or control the underlying cloud infrastructure, but have control over the operating system, storage, deployed applications, and possibly limited control over selected networking components (e.g., host firewalls).

[0061] The deployment model is as follows:

[0062] Private Cloud: The cloud infrastructure is operated only for the organization. It can be managed by the organization or a third party and can exist inside or outside the building.

[0063] Community cloud: The cloud infrastructure is shared by several organizations and supports a specific community with shared concerns (e.g., mission, security requirements, policies, and compliance considerations). It can be managed by the organization or a third party and can exist on-premises or off-premises.

[0064] Public cloud: Cloud infrastructure is available to the general public or large industrial groups and is owned by an organization that sells cloud services.

[0065] Hybrid cloud: A cloud infrastructure is a combination of two or more clouds (private, community or public) that remain distinct entities but are bound together by standardized or proprietary technologies that enable data and application portability (e.g., cloud bursting for load balancing between clouds).

[0066] The cloud computing environment is service-oriented, with a focus on statelessness, low coupling, modularity, and semantic interoperability. At the core of cloud computing is an infrastructure consisting of a network of interconnected nodes.

[0067] Reference now Figure 4, depicts an illustrative cloud computing environment 50. As shown, the cloud computing environment 50 includes one or more cloud computing nodes 10 with which a local computing device used by a cloud consumer can communicate, the local computing device such as, for example, a personal digital assistant (PDA) or cellular phone 54A, a desktop computer 54B, a laptop computer 54C, and / or an automobile computer system 54N. The nodes 10 can communicate with each other. They can be physically or virtually grouped (not shown) in one or more networks, such as a private cloud, community cloud, public cloud, or hybrid cloud, or a combination thereof, as described above. This allows the cloud computing environment 50 to provide infrastructure, platform, and / or software as a service for which the cloud consumer does not need to maintain resources on a local computing device. It should be understood that Figure 4 The types of computing devices 54A-N shown in are intended to be illustrative only, and computing node 10 and cloud computing environment 50 may communicate with any type of computerized device over any type of network and / or network addressable connection (eg, using a web browser).

[0068] Reference now Figure 5 , showing the cloud computing environment 50 ( Figure 4 ) provides a set of functional abstraction layers. It should be understood in advance that Figure 5 The components, layers, and functions shown in are intended to be illustrative only, and embodiments of the present invention are not limited thereto. As depicted, the following layers and corresponding functions are provided:

[0069] The hardware and software layer 60 includes hardware and software components. Examples of hardware components include: host 61; server 62 based on RISC (Reduced Instruction Set Computer) architecture; server 63; blade server 64; storage device 65; and network and network components 66. In some embodiments, software components include network application server software 67 and database software 68.

[0070] Virtualization layer 70 provides an abstraction layer from which the following examples of virtual entities can be provided: virtual servers 71 ; virtual storage 72 ; virtual networks 73 , including virtual private networks; virtual applications and operating systems 74 ; and virtual clients 75 .

[0071] In one example, the management layer 80 may provide the functionality described below. Resource provisioning 81 provides dynamic procurement of computing resources and other resources for performing tasks within a cloud computing environment. Metering and pricing 82 provides cost tracking when resources are utilized in a cloud computing environment, as well as billing or invoicing for consumption of these resources. In one example, these resources may include application software licenses. Security provides authentication for cloud consumers and tasks, as well as protection for data and other resources. User portal 83 provides access to the cloud computing environment for consumers and system administrators. Service level management 84 provides cloud computing resource allocation and management so that the required service levels are met. Service level agreement (SLA) planning and fulfillment 85 provides pre-scheduling and procurement of cloud computing resources, where future demand is anticipated based on the SLA.

[0072] The workload layer 90 provides examples of functions that can take advantage of the cloud computing environment. Examples of workloads and functions that can be provided from this layer include: mapping and navigation 91; software development and lifecycle management 92; virtual classroom education delivery 93; data analysis processing 94; transaction processing 95; and volatile organic compound classification program 175.

[0073] The present invention may be a system, method and / or computer program product at any possible level of technical detail integration. The present invention may advantageously be implemented in any system that processes instruction streams, either single or in parallel. The computer program product may include a computer-readable storage medium (or multiple media) having computer-readable program instructions thereon, the computer-readable program instructions being used to cause a processor to perform aspects of the present invention.

[0074] A computer-readable storage medium may be a tangible device capable of retaining and storing instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media includes the following: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device such as a punch card or a raised structure in a groove on which instructions are recorded, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium or a computer-readable storage device should not be interpreted as a temporary signal itself, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagated by a waveguide or other transmission medium (e.g., a light pulse by an optical fiber cable), or an electrical signal transmitted by a wire.

[0075] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to a corresponding computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical transmission fibers, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions to be stored in a computer-readable storage medium within the corresponding computing / processing device.

[0076] The computer-readable program instructions for performing the operation of the present invention may be assembly instructions, instruction set architecture (ISA) instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, configuration data of an integrated circuit, or source code or object code written in any combination of one or more programming languages ​​(including object-oriented programming languages, such as Smalltalk, C++, etc.) and process programming languages ​​(such as "C" programming language or similar programming languages). The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, executed as an independent software package, partially on the user's computer and partially on a remote computer, or completely on a remote computer or server. In the latter case, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider via the Internet). In some embodiments, in order to perform various aspects of the present invention, an electronic circuit including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA) may execute a computer-readable program instruction by utilizing the state information of the computer-readable program instructions to personalize the electronic circuit.

[0077] Various aspects of the present invention are described herein with reference to the flow chart and / or block diagram of the method, device (system) and computer program product according to embodiments of the present invention. It will be understood that each frame of the flow chart and / or block diagram and the combination of frames in the flow chart and / or block diagram can be implemented by computer-readable program instructions.

[0078] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device create a device for implementing the functions / actions specified in one or more boxes of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, which can guide the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable storage medium in which the instructions are stored together includes an article of manufacture, which includes instructions for implementing aspects of the functions / actions specified in one or more boxes of the flowchart and / or block diagram.

[0079] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, so that a series of operational steps are performed on the computer, other programmable apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable apparatus, or other device implement the functions / actions specified in one or more boxes of the flowchart and / or block diagram.

[0080] Flowchart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention.In this regard, each frame in the flow chart or block diagram can represent the module, segment or part of instruction, which includes one or more executable instructions for realizing the specified logical function.In some alternative embodiments, the function noted in the frame may not occur in the order noted in the figure.For example, two frames shown continuously can actually be performed substantially simultaneously, or these frames can sometimes be performed in reverse order, depending on the function involved.It will also be noted that the combination of the frames in each frame of the block diagram and / or flow chart illustration and the block diagram and / or flow chart illustration can be realized by a dedicated hardware-based system that performs a specified function or action or performs a combination of special hardware and computer instructions.

[0081] References in the specification to "one embodiment," "an embodiment," "an example embodiment," etc. indicate that the described embodiment may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Furthermore, these phrases do not necessarily refer to the same embodiment. Furthermore, when a particular feature, structure, or characteristic is described in conjunction with an embodiment, it is considered to be within the knowledge of those skilled in the art to affect such feature, structure, or characteristic in conjunction with other embodiments, whether or not explicitly described.

[0082] The terms used herein are only for the purpose of describing specific embodiments and are not intended to limit the present invention. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the terms "comprise" and / or "comprising" when used in this specification specify the presence of stated features, integers, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof.

[0083] The description of various embodiments of the present invention has been given for the purpose of illustration, but it is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the present invention. The terms used herein are selected to best explain the principles of the embodiments, practical applications, or technical improvements existing in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.

Claims

1. A computer-implemented method for classifying volatile organic compounds, the method comprising: subjecting a set of sensors of the electronic nose to temperature oscillations by one or more computer processors; collecting, by the one or more computer processors, electronic nose voltage outputs for a set of known volatile organic compounds (VOCs) while the set of sensors of the electronic nose undergoes temperature oscillations; learning, by the one or more computer processors, a set of data features corresponding to each of the known VOCs based on the voltage output; receiving, by one or more computer processors, test data associated with detecting VOCs; analyzing, by the one or more computer processors, the test data based on the set of data features associated with known VOCs; determining, by the one or more computer processors, a match between each feature of the test data and a corresponding data feature in the set of data features, generating a set of matches; defining, by the one or more computer processors, a first abnormality level for the test data based on the set of matches; as well as classifying, by the one or more computer processors, the test data according to the first abnormality level, Wherein, determining a match between each feature of the test data and a corresponding data feature in the set of data features comprises determining the match according to a second abnormality degree. 2 . The computer-implemented method of claim 1 , wherein the second degree of abnormality is determined according to a first threshold associated with a distribution of the corresponding feature in a set of training samples.

3. The computer-implemented method of claim 1 , further comprising: The test data is classified, by the one or more computer processors, as abnormal according to the first abnormality level. 4 . The computer-implemented method of claim 3 , further comprising classifying, by the one or more computer processors, the test data into an unseen category based on a third degree of abnormality. 5 . The computer-implemented method of claim 3 , further comprising classifying, by the one or more computer processors, the test data as contaminated based on a third degree of abnormality. 6 . The computer-implemented method of claim 5 , wherein the third degree of abnormality is associated with a distribution of abnormal data samples in a set of training samples.

7. A computer implemented method for VOC classification based on an array of sensors, the voltage output of the array of sensors being a function of the VOCs present in a given test sample in contact with the array, the method comprising: subjecting a set of sensors of the electronic nose to temperature oscillations by one or more computer processors; collecting, by the one or more computer processors, electronic nose voltage outputs for a set of known VOCs while the set of sensors undergo temperature oscillations; learning, by the one or more computer processors, a set of data features corresponding to each known VOC in the set of known VOCs based on the voltage output; populating a database according to the set of data characteristics; receiving a sample voltage output from the array, the sample voltage output associated with the test sample; analyzing, by one or more computer processors, the sample voltage output to match a data signature corresponding to the VOC; for each data feature in the database associated with each VOC in the set of known VOCs, determining whether the sample voltage output matches the data feature based on a first threshold for the data feature; determining a first abnormality level for the test sample, the first abnormality level comprising a number of unmatched data features; as well as The test samples are classified according to the matching of the sample voltage outputs.

8. The computer-implemented method of claim 7, wherein: The first threshold is determined according to the distribution of the feature in a set of VOC training samples.

9. The computer-implemented method of claim 8, further comprising: applying a second threshold to the first abnormality level, the second threshold calculated in view of a second abnormality level calculated in a subset of the VOC training samples corresponding to the abnormal samples; and A test sample associated with a first degree of abnormality exceeding the second threshold is classified as an abnormal test sample.

10. The computer-implemented method of claim 9, further comprising: applying a third threshold to the first degree of abnormality of the abnormal test sample, the third threshold calculated in view of a second degree of abnormality calculated in a subset of VOC training samples corresponding to the abnormal sample; and The test samples below the third threshold are classified as unseen VOC samples.

11. The computer-implemented method of claim 9, further comprising: analyzing the abnormal test sample; as well as A database of known VOCs is updated based on the analysis.

12. A computer program product, comprising program instructions stored on one or more computer-readable storage devices, the program instructions comprising program instructions for respectively executing the steps of the method according to any one of claims 1 to 11.

13. A computer system, comprising: one or more computer processors; one or more computer-readable storage media; Program instructions stored on the one or more computer-readable storage media for execution by at least one of the one or more computer processors, the program instructions comprising program instructions for respectively executing the steps of the method according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Volatile organic compounds as diagnostic breath markers for pulmonary oxygen toxicity

    US20180180590A1

  • System and method for volatile organic compound detection

    US20190317079A1

  • Systems and methods for generating smell data and a database thereof

    US20220067093A1