Signal classification to detect evoked compound action potential features

AI/ML classification models improve ECAP detection in neuromodulation therapies by addressing size, artifact masking, and noise issues, achieving high accuracy and efficiency in ECAP identification.

WO2025224687A1PCT designated stage Publication Date: 2025-10-30MEDTRONIC INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/IB2025/054319
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-26
Filing Date
2025-04-25
Publication Date
2025-10-30

AI Technical Summary

Technical Problem

Existing neuromodulation therapies face challenges in accurately identifying evoked compound action potentials (ECAPs) due to their small size, being masked by artifacts, varying noise levels, and morphological differences, which affects the efficiency and accuracy of therapy adjustments.

Method used

The use of artificial intelligence and machine learning methods to create classification models that enhance the detection of ECAPs by leveraging AI/ML-trained classifiers, incorporating scale-invariant convolutional neural networks, sample weighting, and encoder-decoder models to improve classification accuracy and efficiency.

Benefits of technology

The proposed solution achieves greater than 90% accuracy in identifying ECAPs, reducing complexity, and enhancing the effectiveness of neuromodulation therapies by providing precise lead placement guidance and automated notifications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IB2025054319_30102025_PF_FP_ABST
    Figure IB2025054319_30102025_PF_FP_ABST
Patent Text Reader

Abstract

A system, device, and method trains a machine learning model based on training data, wherein the training data is fit to an evoked compound action potential (ECAP) response model to derive a threshold of an evoked response. The method also includes labeling points in the training data as not containing an the ECAP if a waveform was captured below the threshold of the evoked response and or as containing an the ECAP if the waveform was captured above the threshold of the evoked response. The method further includes determining weights by weighting points above the threshold of the evoked response based on a proximity to the threshold of the evoked response and process, by the machine learning model, a received waveform to assign a classification to one or more portions of the received waveform based on the determined weights.
Need to check novelty before this filing date? Find Prior Art

Description

SIGNAL CLASSIFICATION TO DETECTEVOKED COMPOUND ACTION POTENTIAL FEATURESCROSS-REFERENCE TO RELATED APPLICATION(S)

[0001] This application claims priority to U.S. Provisional Patent Application No. 63 / 639,444, filed April 26, 2024, which is incorporated herein by reference in its entirety.Field of invention

[0002] The present disclosure is generally directed to machine learning to identify therapeutic neuromodulation, and relates more particularly to classifying detected signals for therapy optimization.BACKGROUND

[0003] Neuromodulation therapy may be carried out by sending an electrical signal generated by a device (e.g., a pulse generator) to a stimulation target (e.g., nerves, non-neuronal cells, etc.), which may provide a desired electrophysiologic, biochemical, or genetic response in the stimulation target. Neuromodulation therapy systems may be used to deliver electrical stimulation for providing chronic pain treatment to a patient. In some neuromodulation therapies (e.g., closed-loop neuromodulation therapies), one or more signals resulting from the neuromodulation may be recorded and the therapy may be adjusted based on the recorded signals. Additionally or alternatively, the recorded signals may be used for monitoring and / or indicating conditions of the patient.

[0004] In machine learning, the term “neural network” generally refers to the overall design or structure of a computer system or a microprocessor, including the hardware and software required to run it. Artificial neural networks can be a family of statistical learning algorithms inspired by biological neural networks (e.g., the brain). Such neural networks have been used for a wide variety of tasks that are difficult to resolve using ordinary rule-based programming, including computer vision and speech recognition. Artificial neural networks can compute values from inputs, and, as a result of their adaptive nature, are capable of machine learning, as well as pattern recognition.

[0005] Neural networks are not programmed as typical software and hardware, but are trained. Such training is typically accomplished via analysis of a sufficient number of representative examples and by statistical or algorithmic selection of weights, so that a given set of input images corresponds to a given set of classification.BRIEF SUMMARY

[0006] Example aspects of the present disclosure include:

[0007] A system including: a processor; and a memory storing data thereon that, when processed by the processor, cause the processor to: train a machine learning model based on training data, wherein the training data is fit to an evoked compound action potential (ECAP) response model to derive a threshold of an evoked response; label points in the training data as not containing the ECAP if a waveform was captured below the threshold of the evoked response or as containing the ECAP if the waveform was captured above the threshold of the evoked response; determine weights by weighting points above the threshold of the evoked response based on a proximity to the threshold of the evoked response; and process, with the machine learning model, a data signal to assign a classification to one or more portions of the data signal based on the determined weights.

[0008] Any of the aspects herein, wherein one or more points closest to the threshold of the evoked response is given no weight, and wherein weights are increased as the points get farther above the threshold of the evoked response.

[0009] Any of the aspects herein, wherein the classification is included in a set of classifications including: a first classification indicating the one or more portions of the waveform as an electrical response; a second classification indicating the one or more portions of the waveform as a nonresponse; and a third classification indicating the one or more portions of the waveform as noise.

[0010] Any of the aspects herein, further comprising performing sample weighting based on a size of one or more features of the waveform.

[0011] Any of the aspects herein, further comprising performing training data sample weighting to reduce training loss penalties for misclassifications of waveforms, wherein one or more features of the waveform are below clinically relevant values.

[0012] Any of the aspects herein, wherein one or more parameters are adjusted based on the assigned classification to the one or more portions of the waveform.

[0013] Any of the aspects herein, wherein the one or more parameters include one or more stimulation parameters associated with delivering the therapy and evoking a response.

[0014] Any of the aspects herein, wherein the data is further executable by the processor to: provide, based on the classification, a first electrode configuration associated with delivering the therapy, a second electrode configuration associated with sensing a response to delivering the therapy, or both.

[0015] Any of the aspects herein, wherein the one or more machine learning models include any machine learning models now known or any machine learning models yet to be developed.

[0016] Any of the aspects herein, wherein the one or more machine learning models include support vector machines (SVMs).

[0017] Any of the aspects herein, wherein the one or more machine learning models include feed forward neural network (NN) models.

[0018] Any of the aspects herein, wherein the one or more machine learning models include; convolutional neural network (CNN) models.

[0019] Any of the aspects herein, wherein the one or more machine learning models include a feedforward neural network.

[0020] Any of the aspects herein, wherein the one or more machine learning models include a transformer neural network.

[0021] Any of the aspects herein, wherein the one or more machine learning models include a decision tree.

[0022] Any of the aspects herein, wherein the one or more machine learning models include a random forest decision tree.

[0023] Any of the aspects herein, wherein the one or more machine learning models include any combination of one or more support vector machines (SVMs), one or more feed forward neural network (NN) models, one or more convolutional neural network (CNN) models, and one or more transformer neural network models.

[0024] Any of the aspects herein, wherein the data signal comprises a principal component analysis (PCA) of a waveform generated based on the data signal.

[0025] Any of the aspects herein, wherein the waveform includes a raw waveform corresponding to the data signal.

[0026] Any of the aspects herein, wherein the classification indicates the one or more portions of the data signal as a non-response or noise, based on comparing the one or more portions of the data signal to one or more reference artifacts.

[0027] Any of the aspects herein, wherein the waveform includes a filtered waveform.

[0028] Any of the aspects herein, wherein the classification indicates the one or more portions of the waveform as a non-response or noise, based on comparing the one or more portions of the waveform to one or more reference artifacts.

[0029] Any of the aspects herein, wherein the classification indicates the one or more portions of the waveform as an evoked response, based on the threshold of the evoked response.

[0030] Any of the aspects herein, wherein the data signal includes an evoked compound action potential (ECAP) signal, an evoked compound muscle action potential (ECMAP) signal, or a combination thereof.

[0031] Any of the aspects herein, wherein the data signal includes an Evoked Resonant Neural Activation (ERNA) signal induced by deep brain stimulation.

[0032] Any of the aspects herein, wherein the therapy includes neuromodulation therapy.

[0033] Any of the aspects herein, wherein the therapy includes at least one of: spinal cord stimulation; deep brain stimulation, and pelvic stimulation.

[0034] Any of the aspects herein, further including a device to deliver the therapy and receive the data signal from the one or more sensors.

[0035] Any of the aspects herein, wherein the device includes at least one of a medical device, a wearable device, and an implanted device.

[0036] Any of the aspects herein, further including: a device that generates the waveform based on the data signal received from the one or more sensors.

[0037] Any of the aspects herein, wherein training data comprises waveform data collected during procedures.

[0038] Any of the aspects herein, wherein training the machine learning model based on the training data comprises fine-tuning the machine learning model using collected ECAP response waveform data.

[0039] Any of the aspects herein, wherein training the machine learning model further comprises pre-training the machine learning model using an encoder-decoder.

[0040] A device including: one or more electrodes; a processor; and a memory storing data thereon that, when processed by the processor, cause the processor to: train a machine learning model based on training data, wherein the training data is fit to an evoked compound action potential (ECAP) response model to derive a threshold of an evoked response; label points in the training data as not containing the ECAP if a waveform was captured below the threshold of the evoked response or as containing the ECAP if the waveform was captured above the threshold of the evoked response; determine weights by weighting points above the threshold of the evoked response based on a proximity to the threshold of the evoked response; and process, with the machine learning model, a data signal to assign a classification to one or more portions of the data signal based on the determined weights.

[0041] A method including: training a machine learning model based on training data, wherein the training data is fit to an evoked compound action potential (ECAP) response model to derive athreshold of an evoked response, labeling points in the training data as not containing the ECAP if a waveform was captured below the threshold of the evoked response or as containing the ECAP if the waveform was captured above the threshold of the evoked response, and processing, by the machine learning model, a data signal to assign a classification to one or more portions of the data signal based weights learned when trained on the labeled training data.training a machine learning model based on a training data set associated with simulated data, wherein the simulated data is fit to an evoked compound action potential (ECAP) response model to derive a threshold of an evoked response; and processing, by the machine learning model, a waveform to assign a classification to one or more portions of the waveform based on the threshold of the evoked response.

[0042] A system including: a processor and a memory storing data thereon that, when processed by the processor, causes the processor to: input waveform data with an artifact into an encoder to generate a hidden representation;, input the generated hidden representation into a decoder to recreate the waveform data without the artifact, and use weights determined based on an encoderdecoder to pre-train a machine learning model based on training data, wherein the training data is fit to an evoked compound action potential (ECAP) response model to derive a threshold of an evoked response.

[0043] Any aspect in combination with any one or more other aspects.

[0044] Any one or more of the features disclosed herein.

[0045] Any one or more of the features as substantially disclosed herein.

[0046] Any one or more of the features as substantially disclosed herein in combination with any one or more other features as substantially disclosed herein.

[0047] Any one of the aspects / features / implementations in combination with any one or more other aspects / features / implementations.

[0048] Use of any one or more of the aspects or features as disclosed herein.

[0049] It is to be appreciated that any feature described herein can be claimed in combination with any other feature(s) as described herein, regardless of whether the features come from the same described implementation.

[0050] The details of one or more aspects of the disclosure are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the techniques described in this disclosure will be apparent from the description and drawings, and from the claims.

[0051] The preceding is a simplified summary of the disclosure to provide an understanding of some aspects of the disclosure. This summary is neither an extensive nor exhaustive overview of the disclosure and its various aspects, implementations, and configurations. It is intended neither toidentify key or critical elements of the disclosure nor to delineate the scope of the disclosure but to present selected concepts of the disclosure in a simplified form as an introduction to the more detailed description presented below. As will be appreciated, other aspects, implementations, and configurations of the disclosure are possible utilizing, alone or in combination, one or more of the features set forth above or described in detail below.

[0052] Numerous additional features and advantages of the present disclosure will become apparent to those skilled in the art upon consideration of the implementation descriptions provided hereinbelow.BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

[0053] The accompanying drawings are incorporated into and form a part of the specification to illustrate several examples of the present disclosure. These drawings, together with the description, explain the principles of the disclosure. The drawings simply illustrate preferred and alternative examples of how the disclosure can be made and used and are not to be construed as limiting the disclosure to only the illustrated and described examples. Further features and advantages will become apparent from the following, more detailed, description of the various aspects, implementations, and configurations of the disclosure, as illustrated by the drawings referenced below.

[0054] Fig. 1 is a diagram of a system according to at least one implementation of the present disclosure.

[0055] Fig. 2 is a diagram of a system according to at least one implementation of the present disclosure.

[0056] Fig. 3 illustrates example views of a response waveform in accordance with example aspects of the present disclosure.

[0057] Fig. 4 illustrates an example of machine learning models supported by aspects of the present disclosure.

[0058] Fig. 5 illustrates examples of ECAPS identified using growth curves in accordance with aspects of the present disclosure.

[0059] Fig. 6 illustrates example of process flow in accordance with aspects of the present disclosure.

[0060] Fig. 7 illustrates example of process flow in accordance with aspects of the present disclosure.

[0061] Fig. 8 illustrates an example growth curve in accordance with aspects of the present disclosure.

[0062] Fig. 9 is a diagram of an encoder-decoder in accordance with aspects of the present disclosure.DETAILED DESCRIPTION

[0063] It should be understood that various aspects disclosed herein may be combined in different combinations than the combinations specifically presented in the description and accompanying drawings. It should also be understood that, depending on the example or implementation, certain acts or events of any of the processes or methods described herein may be performed in a different sequence, and / or may be added, merged, or left out altogether (e.g., all described acts or events may not be necessary to carry out the disclosed techniques according to different implementations of the present disclosure). In addition, while certain aspects of this disclosure are described as being performed by a single module or unit for purposes of clarity, it should be understood that the techniques of this disclosure may be performed by a combination of units or modules associated with, for example, a computing device and / or a medical device.

[0064] In one or more examples, the described methods, processes, and techniques may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored as one or more instructions or code on a computer-readable medium and executed by a hardware-based processing unit. Alternatively or additionally, functions may be implemented using machine learning models, neural networks, artificial neural networks, or combinations thereof (alone or in combination with instructions). Alternatively or additionally, functions may be implemented using machine learning models, neural networks, artificial neural networks, or combinations thereof (alone or in combination with instructions). Computer-readable media may include non-transitory computer-readable media, which corresponds to a tangible medium such as data storage media (e.g., RAM, ROM, EEPROM, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer).

[0065] Instructions may be executed by one or more processors, such as one or more digital signal processors (DSPs), general purpose microprocessors (e.g., Intel Core i3, i5, i7, or i9 processors; Intel Celeron processors; Intel Xeon processors; Intel Pentium processors; AMD Ryzen processors; AMD Athlon processors; AMD Phenom processors; Apple A10 or 10X Fusion processors; Apple Al l, A12, A12X, A12Z, or Al 3 Bionic processors; or any other general purpose microprocessors),graphics processing units (e.g., Nvidia GeForce RTX 2000-series processors, Nvidia GeForce RTX 3000-series processors, AMD Radeon RX 5000-series processors, AMD Radeon RX 6000-series processors, or any other graphics processing units), application specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuitry. Accordingly, the term “processor” as used herein may refer to any of the foregoing structure or any other physical structure suitable for implementation of the described techniques. Also, the techniques could be fully implemented in one or more circuits or logic elements.

[0066] Before any implementations of the disclosure are explained in detail, it is to be understood that the disclosure is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the drawings. The disclosure is capable of other implementations and of being practiced or of being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting. The use of “including,” “comprising,” or “having” and variations thereof herein is meant to encompass the items listed thereafter and equivalents thereof as well as additional items. Further, the present disclosure may use examples to illustrate one or more aspects thereof. Unless explicitly stated otherwise, the use or listing of one or more examples (which may be denoted by “for example,” “by way of example,” “e.g.,” “such as,” or similar language) is not intended to and does not limit the scope of the present disclosure.

[0067] The terms proximal and distal are used in this disclosure with their conventional medical meanings, proximal being closer to the operator or user of the system, and further from the region of surgical interest in or on the patient, and distal being closer to the region of surgical interest in or on the patient, and further from the operator or user of the system.

[0068] For some neuromodulation therapies, a therapeutic electrical signal generated by a pulse generator may be sent to a stimulation target (e.g., nerves, non-neuronal cells, etc.). In a closed-loop neuromodulation therapy, a biopotential (e.g., a recorded signal) elicited with the therapeutic electrical signal may be recorded. The elicited biopotential may provide information by which to adjust the therapeutic electrical signal. Other types of closed-loop neuromodulation therapies may use and sense other types of signals to determine adjustments for the therapeutic electrical signal, such as outputs of other sensors implanted in or placed on a patient (e.g., posture sensor, accelerometer, etc.).

[0069] In some examples, spinal cord stimulation (SCS) (e.g., a form of neuromodulation that includes applying a therapeutic electrical signal or stimulation signal to nerves of the spinal cord or nerves near the spinal cord to elicit a desired electrophysiologic, biochemical, or genetic response)may be practiced in a closed-loop manner. When SCS is performed in a closed-loop manner, contacts (e.g., leads, electrodes, etc.) may be placed near a stimulation target (e.g., patient’s spinal cord or a proximate structure (such as the dorsal root ganglion) or one or more targets), where the contacts are configured to apply a therapeutic electrical signal to the stimulation target to obtain a desirable electrophysiologic, biochemical, or genetic state (e.g., that leads to pain relief). For example, the therapeutic electrical signal may be configured to change how the patient’s body interprets a pain signal based on causing a desired electrophysiologic, biochemical, or genetic response when applied to the stimulation target.

[0070] In some systems for providing electrical stimulation to a patient (e.g., SCS systems, systems for providing electrical stimulation for pelvic health, etc.), electrical contacts (e.g., electrodes or leads) may be used to stimulate the nerve and other contacts may be used to record an evoked response, such as an Evoked Compound Action Potential (ECAP) or an Evoked Compound Muscle Action Potential (ECMAP), resulting from the stimulation. In other closed-loop neuromodulation therapies, other signals may be recorded. For example, in deep brain stimulation, local field potentials (LFPs) may be recorded in the brain. In various types of therapies provided, the desired signal to be recorded (e.g., ECAPs, LFPs, etc.) may be recorded at a distance from the stimulation, near the stimulation, or from multiple places. In some cases, the recordings may include stimulation induced electrical artifacts, which may mask, obscure, or otherwise corrupt at least a portion of the recordings and thus, may interfere with identifying the desired signal.

[0071] Evoked compound action potentials (ECAPs) are wave-like electrical signals resulting from the synchronized firing of many fibers in parallel. The amplitude of the ECAP reflects the strength of activation of the fibers (e.g., dorsal columns in SCS). The amplitude of the ECAP depends on stimulation current and patient posture. Some techniques for providing therapy (e.g., SCS therapy) include the use of ECAPs to control the therapy. When an electrical stimulus is used to evoke action potentials in peripheral nerves or the spinal cord, the stimulus causes an artifact, which may interfere with measurement of the evoked potentials. This artifact, unlike all other sources of noise in the measurement, cannot be reduced by ensemble averaging.

[0072] According to example aspects of the present disclosure, systems and techniques are disclosed which leverage the use of artificial intelligence (Al) and machine learning (ML) methods to create classification models to improve the accuracy and efficiency of identifying an ECAP in recorded signals. There are various challenges to detecting ECAPs: (1) small ECAPs (~ 5 uV or less) may be smaller than noise; (2) ECAPs masked by artifact; (3) Different types of noise; and (4) Difference in morphology.

[0073] In some aspects, the classification models created through the AI / ML methods described herein may support the determination of signal classifications (e.g., ECAP, No ECAP, noise) for informing other appropriate SCS applications (e.g., lead implant guidance, lead migration detection, etc.) in addition to providing therapy as described herein.

[0074] In an example, the systems and techniques may include trained classifiers integrated into an implantable neural stimulator (INS) or clinician programmer to identify ECAP signals. The systems and techniques support setup free classification of sensed signals for presence of an ECAP. The systems and techniques support reduced complexity associated with the setup of algorithms leveraging ECAP classifications.

[0075] According to some example implementations, the systems and techniques may support inputting acquired signals from SCS stimulation to a classifier (e.g., AI / ML trained classifiers, examples of which are described herein). The systems and techniques may support automated execution of actions and providing of notifications based on classifications (e.g., ECAP, No ECAP, noise, etc.) determined by the classifier. In some examples, the systems and techniques may support providing lead placement guidance (e.g., dorsal column, nerve root, vertebral level, etc.) in association with the classifications. Other non-limiting examples of classifications, automated actions, and notifications are later described herein.

[0076] Implementations of the present disclosure provide technical solutions to one or more of the problems of the time consuming nature and varying success rates associated with some other implementations for labeling waveforms. For example, the systems and techniques described herein leverage AI / ML methods to support increased efficiency, increased success rates and effectiveness, and reduced complexity with respect to labeling waveforms. In some example implementations, various AI / ML classifiers described herein may provide greater than 90% accuracy, readily determining the presence (or absence) of an ECAP signal.

[0077] There are many nuances and key decision points to train a neural network to detect ECAP features within a sensed / recorded waveform, which can make training a machine learning model successful or not. Labeling millions of ECAP waveforms efficiently can be done with the help of a growth curve. A growth curve is where stimulation amplitude is increased over time and ECAP waveforms are recorded at each stimulation amplitude. ECAPs are known to have a threshold where they are present above a patient specific stimulation amplitude threshold and not present below that threshold. Additionally after a small transition period, for clinically relevant amps ECAP amplitude grows linearly in response to stimulation amplitude. By collecting and fitting growth curves to an ECAP response model the patient specific stimulation amplitude threshold(s) above which ECAPsare present can be determined. Those patients where the growth curve fits the ECAP response model can be labeled as having good strong growth curves. Waveforms can then be efficiently labeled as containing or not containing an ECAP signal based on the ECAP threshold derived from the growth curve model. This allows thousands of waveforms to be labeled simultaneously instead of individually.

[0078] An additional method of labeling data efficiently is to label data that contains temporary ECAPS. For example, frequently there are no ECAPS “at rest” or when the patient is not performing an “aggressor” (e.g., a motion that causes the spinal cord to approach the stimulation electrodes), but ECAPS are present during the “aggressor.” Such data can be labeled efficiently by identifying the portion of the data that contains the “aggressor.”

[0079] Even though convolutional neural networks (CNN) has achieved near-human performance in various computer vision tasks, its ability to tolerate scale variations is limited. Because many ECAPs share similar morphology on different timescales (latency and ECAP widths), performance can be improved by utilizing multiple convolutional layers that share convolutional kernels scaled to different widths. A scale invariant convolutional neural network (SiCNN) model is designed to incorporate multi-scale feature exaction and classification into the network structure. SiCNN uses a multi-column architecture, with each column focusing on a particular scale (e.g., morphology), the columns share the same set of filter parameters by a scale transformation among them. SiCNN is able to deal with scale variation without increasing the model size and adding the potential for overfitting.

[0080] When classifying the presence of an ECAP within a sensed / recorded waveform, performing sample weighting based on the ECAP size improves overall performance and increases clinical relevance. The sample weighting rescales the loss value parameter, which means that the classifier more appropriately scales the loss to guide the gradient descent to a more global minimum. For example, waveforms with small ECAPs near the ECAP threshold are down weighted compared to waveforms with large ECAPs further from the threshold, therefore there is more emphasis on classifying waveforms with large clear ECAP signals correctly and a greater penalty for misclassifying these points. For most growth curves, there are more waveforms collected below the ECAP threshold than above the ECAP threshold, so class sample weighting is also needed to account for the difference in sample prevalence. Additionally, in many cases there are no ECAPS “at rest” or when the patient is not performing an “aggressor,” but ECAPS are present during the “aggressor.” Such data can be labeled more efficiently by identifying the portion of the data that contains the “aggressor.”

[0081] Class imbalance often hinders accurate predictions in machine learning models, a common challenge in binary classification tasks (ECAP, No ECAP). Class imbalance occurs when one class significantly outweighs the other regarding data samples, leading to biased predictions. One effective technique for addressing class imbalance is the strategic use of class weights. Class weights assign higher weights to the minority class, allowing the model to pay more attention to its patterns and reducing bias towards the majority class. Additionally, sample weighting may be used with class weighting to de-emphasize waveforms with ECAPs below clinically relevant values (~4uV) and consequently increase the sample weights for those with clinically relevant values. Weighting does two things. 1) It improves classification performance when clinically relevant; and 2) increases specificity as differentiating between very small ECAPs and no ECAPs is especially hard. Not penalizing or minimizing the penalty on the classifier when misclassifying very small ECAPs improves classification performance for clinical relevance values at the expense of having lower sensitivity at very small ECAPs, which are not clinically relevant.

[0082] Backpropagation computes the gradient of a loss function with respect to the weights of the network for a single input-output example, and does so efficiently, computing the gradient one layer at a time, iterating backward from the last layer to avoid redundant calculations of intermediate terms in the chain rule. Gradient descent, or variants such as stochastic gradient descent are commonly used. Gradient descent is an optimization algorithm often used for finding the weights or coefficients of machine learning algorithms, such as artificial neural networks and logistic regression. It works by having the model make predictions on training data and using the error on the predictions to update the model in such a way as to reduce the error. The goal of the algorithm is to find model parameters (e.g. coefficients or weights) that minimize the error of the model on the training dataset. It does this by making changes to the model that move it along a gradient or slope of errors down toward a minimum error value.

[0083] When training the Machine Learning model, performing mini-batching where growth curves are preserved increases performance of the model. This is opposed to the traditional randomization of all waveforms collected where mini-batches contain waveforms from a multitude of growth curves without a more complete picture of any single growth curve. The reason minibatching increases performance is that backpropagation gradients within a mini-batch will average together and when a full growth curve is presented within a mini-batch those aspects of the waveform similar between positive and negative classes will cancel out the artifact with averaging while the ECAP signal backpropagation gradients will survive.

[0084] The main features of this idea are to improve ECAP feature detection using Machine Learning by: (1) Labeling ECAP waveforms based on their location within a modeled growth curve; (2) Modifying the traditional convolutional layer to incorporate scale invariance; and (3) Weighting sample waveforms based on clinically relevant scales.

[0085] The present disclosure trains neural networks to more accurately determine if a sensed signal contains an ECAP or not. In other words, the neural network may more accurately predict no ECAP and ECAP in a signal / waveform. In some cases, the smallest ECAP closest to the no ECAP region may be lower than noise, which throws off the machine learning model. For example, when you go from no ECAP to ECAP, the ECAP occurring right after the point of no ECAP may be below a noise floor and indistinguishable between no ECAP, so the model tries to label it No ECAP when it is an ECAP. Therefore, by down weighting starting at the smallest ECAP and slowly increasing the weight until classification improves accuracy of the model. In embodiments, the weight may be dropped to zero at ECAP or other small values. In embodiments, weights may be based on clinical need and physiological parameters (e.g., 4 microvolts is clinically relevant).

[0086] In embodiments, the model may be pretrained / retrained using unlabeled data using an encoder-decoder model (input raw unlabeled waveforms). An encoder / decoder model with the ECAP classifier (a third layer that would branch out) gains the ability of central feature vector picking up on encoder decoder training while focusing on central parts (where the important data is) for training to identify No ECAP, ECAP. By taking the difference of the loss of encoder-decoder and the loss of the ECAP classifier to figure out weights. Instead of re-constructing the original ECAP, the ECAP is reconstructed without the artifact. This helps to drive the saliency of the neurophysiological response (N1 and P2 regions for ECAPs) while causing the neural network to learn weights that filter or remove the artifact, which increases the performance of the neural network.

[0087] Another issue in training the model to classify ECAPs is misidentifying noise as ECAP. To avoid this, the model can look at two adjacent waveforms sequentially. In other words, when the ECAP is small, then the model can be refined using an adjacent waveform. If the adjacent waveforms look kind of the same, then the model can determine ECAP. Adjacent waveforms can be used for training and for post-processing.

[0088] Fig. 1 illustrates an example of a system 100 that supports aspects of the present disclosure.

[0089] The system 100 includes a computing device 102, a database 130, a cloud network 134 (or other network), a system 160, and / or a wearable device 170. Systems according to other implementations of the present disclosure may include more or fewer components than the system100. For example, the system 100 may omit and / or include additional instances of one or more components of the computing device 102, a database 130, a cloud network 134 (or other network), a system 160, and / or a wearable device 170. In an example, the system 100 may omit any instance of the computing device 102, database 130, cloud network 134 (or other network), system 160, and / or wearable device 170. The system 100 may support the implementation of one or more other aspects of one or more of the methods disclosed herein.

[0090] The computing device 102 includes a processor 104, a memory 106, a communication interface 108, and a user interface 110. Computing devices according to other implementations of the present disclosure may include more or fewer components than the computing device 102. The computing device 102 may be, for example, a control device including electronic circuitry associated with providing control signals to a therapy device 162 of the system 160.

[0091] The processor 104 of the computing device 102 may be any processor described herein or any similar processor. The processor 104 may be configured to execute instructions stored in the memory 106, which instructions may cause the processor 104 to carry out one or more computing steps utilizing or based on data received from the database 130, the cloud network 134 (or other network), the system 160, and / or the wearable device 170.

[0092] The memory 106 may be or include RAM, DRAM, SDRAM, other solid-state memory, any memory described herein, or any other tangible, non-transitory memory for storing computer- readable data and / or instructions. The memory 106 may store information or data associated with completing, for example, any step of the methods described herein, or of any other methods. The memory 106 may store, for example, instructions and / or machine learning models that support one or more functions of the computing device 102, the system 160, and / or the wearable device 170. For instance, the memory 106 may store content (e.g., instructions and / or machine learning models) that, when executed by the processor 104, enable signal processing engine 152, classifying engine 154, and / or therapy determination engine 156. Such content, if provided as in instruction, may, in some implementations, be organized into one or more applications, modules, packages, layers, or engines.

[0093] Alternatively or additionally, the memory 106 may store other types of content or data (e.g., machine learning models, artificial neural networks, deep neural networks, etc.) that can be processed by the processor 104 to carry out the various method and features described herein. Thus, although various contents of memory 106 may be described as instructions, it should be appreciated that functionality described herein can be achieved through use of instructions, algorithms, and / or machine learning models. The data, algorithms, and / or instructions may cause the processor 104 tomanipulate data stored in the memory 106 and / or received from or via the computing device 102, the database 130, the cloud network 134, the system 160, and / or the wearable device 170.

[0094] The computing device 102 may also include a communication interface 108. The communication interface 108 may be used for receiving data or other information from an external source (e.g., the database 130, the cloud network 134, the system 160, the wearable device 170, and / or any other system or component separate from the system 100), and / or for transmitting instructions, data (e.g., control signals, data signals, waveforms, etc.), or other information to an external system or device (e.g., another computing device 102, the database 130, the cloud network 134, the system 160, the wearable device 170, and / or any other system or component not part of the system 100). The communication interface 108 may include one or more wired interfaces (e.g., a USB port, an Ethernet port, a Firewire port) and / or one or more wireless transceivers or interfaces (configured, for example, to transmit and / or receive information via one or more wireless communication protocols such as 702.1 la / b / g / n, Bluetooth, NFC, ZigBee, and so forth). In some implementations, the communication interface 108 may support communication between the therapy device 162 and one or more other processors 104 or computing devices 102, whether to reduce the time needed to accomplish a computing-intensive task or for any other reason.

[0095] The computing device 102 may also include one or more user interfaces 110. The user interface 110 may be or include a keyboard, mouse, trackball, monitor, television, screen, touchscreen, and / or any other device for receiving information from a user and / or for providing information to a user. The user interface 110 may be used, for example, to receive a user selection or other user input regarding any step of any method described herein. Notwithstanding the foregoing, any required input for any step of any method described herein may be generated automatically by the system 100 (e.g., by the processor 104 or another component of the system 100) or received by the system 100 from a source external to the system 100. In some implementations, the user interface 110 may support user modification (e.g., by a surgeon, medical personnel, a patient, etc.) of instructions to be executed by the processor 104 according to one or more implementations of the present disclosure, and / or to user modification or adjustment of a setting of other information displayed on the user interface 110 or corresponding thereto.

[0096] In some implementations, the computing device 102 may utilize a user interface 110 that is housed separately from one or more remaining components of the computing device 102. In some implementations, the user interface 110 may be located proximate to one or more other components of the computing device 102, while in other implementations, the user interface 110 may be located remotely from one or more other components of the computer device 102.

[0097] The system 160 may include a therapy device 162, electrodes 166, and leads 168. The therapy device 162 may include an implantable pulse generator (e.g., pulse generator 164). Example aspects of the system 160 and the wearable device 170 are later described herein (e.g., with reference to Fig. 2). The therapy device 162 may be configured to generate a current (e.g., therapeutic electrical signal, stimulation signal, electrical stimulation signal, etc.), and the leads 168 and the electrodes 166 may comprise a plurality of electrodes configured to carry the current from the therapy device 162 and apply the current to an anatomical element based on the electrodes being implanted on or near the anatomical element (e.g., stimulation target, for example, the spinal cord 149 of the patient 148 and / or nearby nerves to the spinal cord 149). In some examples, the therapy device 162, leads 168, and electrodes 166 may be configured to measure a physiological response of the patient 148 (e.g., prior to applying the current to the anatomical element, during application of the current, after the current is applied, etc.).

[0098] The system 160 may communicate with the computing device 102 to receive instructions for applying a current to the anatomical element and / or delivering therapy (e.g., electrical stimulation, pharmacological agent, etc.) to the anatomical element. The system 160 may also provide data (such as data received from an electrodes 166 capable of recording data), which may be used to optimize the electrodes 166 (e.g., optimize electrode placement) and / or to optimize parameters of the current generated by the therapy device 162.

[0099] Signal processing engine 152 enables the processor 104 to implement features associated with processing of data signals, waveform generation, and waveform analysis as described herein.

[0100] Classifying engine 154 may support features associated with providing and assigning classifications as described herein.

[0101] Therapy determination engine 156 enables the processor 104 to implement features associated with determining parameters (e.g., stimulation parameters associated with delivering therapy) based on a classification as described herein.

[0102] The therapy determination engine 156 enables the processor 104 to determine one or more parameters for applying the neuromodulation therapy to the anatomical element based at least in part on one or more outputs by the machine learning models 138. In an example, the therapy determination engine 156 may determine parameters or instructions that cause the therapy device 162 to employ the pulse generator 164 to generate a stimulus or that cause the therapy device 162 to deliver other therapy (e.g., a pharmacological agent, etc.). In some aspects, the therapy determination engine 156 may be referred to as a clinician programmer application.

[0103] The processor 104 may utilize data stored in memory 106 as a neural network. The neural network may include a machine learning architecture. In some aspects, the neural network may be or include one or more classifiers. In some other aspects, the neural network may be or include any machine learning network such as, for example, a deep learning network, a convolutional neural network, a reconstructive neural network, a generative adversarial neural network, or any other neural network capable of accomplishing functions of the computing device 102 described herein. Some elements stored in memory 106 may be described as or referred to as instructions or instruction sets, and some functions of the computing device 102 may be implemented using machine learning techniques.

[0104] The neural network architecture may support various inputs supportive of implementing aspects of the present disclosure. For example, the neural network architecture may support generating outputs based on model inputs including, but not limited to, record oriented data (e.g., ECAP), image data (e.g., provided by an imaging device or image sensor), and sensor data (e.g., including internet of things)).

[0105] The neural network architecture may include various appropriate model types supportive of implementing aspects of the present disclosure. For example, the neural network architecture may include statistical machine learning models (e.g., linear regression, logistic regression, decision trees, random forest, Naive bayes, ensemble methods, support vector machines, k-nearest neighbor, etc.). In some examples, the neural network architecture may include deep learning models (e.g., convolutional neural network, recurrent neural network, deep reinforcement network, deep belief network, transformer network, etc.). In some examples, the machine learning model(s) 138 may include vector machines (SVMs), convolutional neural network (CNN) models, or other machine learning models appropriate with implementing aspects of the present disclosure as described herein.

[0106] The neural network architecture may support unsupervised machine learning algorithms (e.g., principal component analysis (PC A) algorithms), semi-supervised machine learning algorithms, and supervised machine learning algorithms. The neural network architecture may support locked execution modes and continuous learning execution modes. The neural network architecture may support providing outputs including content, classifications, predictions, recommendations, and decisions.

[0107] The processor 104 may support machine learning model(s) 138 which may be trained and / or updated based on data (e.g., training data 146, feedback data, output data, etc.) provided or accessed by any of the computing device 102, the database 130, the cloud network 134, the system 160, and / or the wearable device 170. The machine learning model(s) 138 may be built and retrainedby the computing device 102 based on the training data 146 (also referred to herein as training data and feedback).

[0108] For example, the machine learning model(s) 138 may be trained with one or more training sets included in the training data 146. The training data 146 may include simulated growth curves labeled using machine learning and a derived threshold, which may correspond to a minimum threshold. The training data 146 may include a training data set associated with one or more therapies delivered to reference patients 148. In an example, the training data 146 may include reference data signals received from sensors (e.g., electrodes 166, etc.) based on therapies delivered to the reference patients 148. In some examples, the training data 146 may include reference data signals and respective classifications corresponding to the reference data signals. In some cases, the training data 146 may include respective classifications associated with waveforms (or portions of the waveforms) that corresponding to the data signals 126. The training data 146 may comprise raw unlabeled waveform data and / or filtered waveform data.

[0109] In some aspects, the training data 146 may include multiple training sets. In an example, the training data 146 may include a first training set that includes waveform data classified as an electrical response (e.g., ECAP response, ECMAP response, etc.). In another example, the training data 146 may include a second training set that includes waveform data classified as a non-response (e.g., no ECAP, etc.). For example, the waveform data included in the second training set may include recordings which are obtained with a stimulus pulse having a signal amplitude below perception level of the subject. In another example, the training data 146 may include a third training set that includes waveform data classified as noise. In some aspects, the data included in the third training set may include waveform data having characteristics different from waveform data associated with a response or non-response (e.g., the waveform data in the third training set may be absent characteristics associated with a response or non-response).

[0110] In some examples, based on the data included in the training data 146, the neural network may generate one or more algorithms (e.g., processing algorithms) supportive of the features described herein.

[0111] Though not shown, the system 100 may include a controller, though in some implementations the system 100 may not include the controller. The controller may be an electronic, a mechanical, or an electro-mechanical controller. The controller may comprise or may be implemented by any processor (e.g., processor 104) described herein. The controller may comprise a memory storing instructions for executing any of the functions or methods described herein as being carried out by the controller. In some implementations, the controller may be configured to simplyconvert signals received from the computing device 102 (e.g., via a communication interface 108) into commands for operating the system 160 (and more specifically, for actuating the therapy device 162 and the pulse generator(s) 164 thereof). In other implementations, the controller may be configured to process and / or convert signals received from the system 160 or the wearable device 170. Further, the controller may receive signals from one or more sources (e.g., system 160, wearable device 170) and may output signals to one or more sources.

[0112] The database 130 may store information that correlates one coordinate system to another (e.g., one or more robotic coordinate systems to a patient coordinate system and / or to a navigation coordinate system). The database 130 may additionally or alternatively store, for example, one or more surgical plans (including, for example, pose information about a target and / or image information about a patient’s anatomy at and / or proximate the surgical site, for use by a robotic system, a navigation system, and / or a user of the computing device 102 or of the system 100); one or more images useful in connection with a surgery to be completed by or with the assistance of one or more other components of the system 100; and / or any other useful information. The database 130 may additionally or alternatively store, for example, training data 146, classification data, and the like.

[0113] The database 130 may be configured to provide any such information to the computing device 102 or to any other device of the system 100 or external to the system 100, whether directly or via the cloud network 134. In some implementations, the database 130 may include treatment information (e.g., a therapy plan) associated with a patient. In some implementations, the database 130 may be or include part of a hospital image storage system, such as a picture archiving and communication system (PACS), a health information system (HIS), and / or another system for collecting, storing, managing, and / or transmitting electronic medical records including image data.

[0114] In some aspects, the computing device 102 may communicate with a server(s) and / or a database (e.g., database 130) directly or indirectly over a communications network (e.g., the cloud network 134). The communications network may include any type of known communication medium or collection of communication media and may use any type of protocols to transport data between endpoints. The communications network may include wired communications technologies, wireless communications technologies, or any combination thereof.

[0115] Wired communications technologies may include, for example, Ethernet-based wired local area network (LAN) connections using physical transmission mediums (e.g., coaxial cable, copper cable / wire, fiber-optic cable, etc.). Wireless communications technologies may include, for example, cellular or cellular data connections and protocols (e.g., digital cellular, personal communicationsservice (PCS), cellular digital packet data (CDPD), general packet radio service (GPRS), enhanced data rates for global system for mobile communications (GSM) evolution (EDGE), code division multiple access (CDMA), single-carrier radio transmission technology (1 xRTT), evolution-data optimized (EVDO), high speed packet access (HSPA), universal mobile telecommunications service (UMTS), 3G, long term evolution (LIE), 4G, and / or 5G, etc.), Bluetooth®, Bluetooth® low energy, Wi-Fi, radio, satellite, infrared connections, and / or ZigBee® communication protocols.

[0116] The Internet is an example of the communications network that constitutes an Internet Protocol (IP) network consisting of multiple computers, computing networks, and other communication devices located in multiple locations, and components in the communications network (e.g., computers, computing networks, communication devices) may be connected through one or more telephone systems and other means. Other examples of the communications network may include, without limitation, a standard Plain Old Telephone System (POTS), an Integrated Services Digital Network (ISDN), the Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a wireless LAN (WLAN), a Session Initiation Protocol (SIP) network, a Voice over Internet Protocol (VoIP) network, a cellular network, and any other type of packet-switched or circuit-switched network known in the art. In some cases, the communications network may include any combination of networks or network types. In some aspects, the communications network may include any combination of communication mediums such as coaxial cable, copper cable / wire, fiber-optic cable, or antennas for communicating data (e.g., transmitting / receiving data).

[0117] The computing device 102 may be connected to the cloud network 134 via the communication interface 108, using a wired connection, a wireless connection, or both. In some implementations, the computing device 102 may communicate with the database 130 and / or an external device (e.g., a computing device) via the cloud network 134.

[0118] The system 100 or similar systems may be used, for example, to carry out one or more aspects of any of the methods described herein. The system 100 or similar systems may also be used for other purposes.

[0119] Fig. 2 illustrates an example implementation 200 of the system 100 as supported by aspects of the present disclosure. Aspects of the system 100 previously described with reference to Fig. 1 and descriptions of like elements are omitted for brevity.

[0120] The system 100, in any suitable configuration, may be used to provide a neuromodulation therapy (e.g., provide electric signals) to a patient 148 and / or carry out one or more other aspects of one or more of the methods disclosed herein. For example, the system 100 may include at least adevice (e.g., computing device 102, therapy device 162, wearable device 170, etc.) that is capable of providing a stimulation applied to an anatomical element (e.g., spinal cord 149) of the patient 148 and / or to one or more nerve endings for a patient 148 (e.g., for SCS therapy).

[0121] The configuration illustrated in Fig. 2 shows application of a neuromodulation therapy and sensing of a response thereto at or near the spinal cord 149. In some examples, the therapy device 162 may include a pulse generator 164 described with reference to Fig. 1. The pulse generator 164 may be configured to generate a current or therapeutic electrical signal, such as a signal capable of stimulating a response in the spinal cord 149 or from one or more nerves. In some implementations, as described herein, the therapy device 162 may be implanted within the patient 148.

[0122] Additionally, the system 100 may include one or more leads 168 (e.g., electrical leads) that provide a connection between the therapy device 162 and the spinal cord 149 or nerves of the patient 148 for enabling, for example, stimulation. In some implementations, the leads 168 may be implanted wholly or partially within the patient 148. Additionally, or alternatively, aspects of the present disclosure support one or more leadless implementations of the system 100 for use with the peripheral nervous system (e.g., nerves that branch out from the spinal cord 149 or brain 150 of a patient 148). For example, the system 100 may support the detection of physiologic signals associated with the peripheral nervous system using sensing techniques that are absent leads 168.

[0123] In an example implementation, the therapy device 162 may be a leadless devices capable of delivering stimulation therapy without the use of a separate lead (e.g., without the use of a lead 168 for delivering stimulation therapy). For example, the therapy device 162 may be a unitary structured device that may be more robust and less invasive than lead-based counterpart devices. In some aspects, a leadless implementation of the therapy device 162 may include one or more sensors or electrodes configured to sense nerve activity or muscle activity, and provide closed loop feedback for adjustment of a stimulation therapy regime.

[0124] In some implementations, such as the one illustrated in Fig. 2, the one or more leads 168 may include a lead 168-a disposed on or connected to a first side of the spinal cord 149 of the patient 148 and a lead 168-b disposed on or connected to a second side of the spinal cord 149 of the patient 148. For example, the lead 168-a may be connected to the righthand side of the spinal cord 149, while the lead 168-b may be connected to the lefthand side of the spinal cord 149. However, the position and / or orientation of each lead relative to the spinal cord 149 may vary depending on, for example, the type of treatment, the type of lead, combinations thereof, and the like. In another example, the lead 168-a and the lead 168-b may overlap one another, and may be placed proximate to one another on the dorsal side of the spinal cord 149 close to a midline of the spinal cord 149.

[0125] In some examples, the lead 168-a and the lead 168-b may both be placed on the midline of the spinal cord 149, where one of the leads 168 is cranial (e.g., anterior or nearer the head of the patient 148) and the other of the leads 168 is caudal (e.g., posterior or nearer the tail of the patient 148). Additionally or alternatively, the lead 168-a and the lead 168-b may both be placed on one side of the midline of the spinal cord 149.

[0126] Additionally, the one or more leads 168 may be connected, placed, or otherwise implanted near or on the spinal cord 149 within the patient 148, such that at least one of the one or more leads 168 are located near the heart 151 of the patient 148. For example, though not illustrated, the lead 168-a may be placed within the spinal canal behind the heart 151 (e.g., dorsally within the spinal canal, such as behind a foramen of the spine near the top of a vertebra of the thoracic vertebrae column of the spinal cord 149, or anteriorly within the spinal canal). Additionally or alternatively, as described previously, the exact placement of the one or more leads 168 may vary depending on, for example, the type of treatment, the type of lead, the patient 148, combinations thereof, and the like.

[0127] While not specifically shown in the example of Fig. 2, the one or more leads 168 may also exit the spinal cord 149 at a lumbar vertebra lower down the spinal cord 149 (e.g., the L2 vertebra, but the exact location may vary). As described herein, the one or more leads 168 being placed proximate to the heart 151 may enable the system 100 to more effectively capture signals that include cardiac activity before, during, and / or after providing a neuromodulation therapy (e.g., SCS therapy).

[0128] In other implementations, the one or more leads 168 may include at least the lead 168-a and the lead 168-b connected to other nerves of the patient 148 (e.g., the vagus nerve, different trunks of the vagus nerve, etc.). For example, the lead 168-a may be connected to a first nerve (e.g., first vagal trunk of the patient 148, such as the anterior sub diaphragmatic vagal trunk at the hepatic branching point of the vagus nerve) and the lead 168-b may be connected to a second nerve (e.g., second vagal trunk of the patient 148, such as the posterior sub diaphragmatic vagal trunk at the celiac branching point of the vagus nerve). The lead 168-a and / or the lead 168-b may be configured to provide an electrical stimulation signal from the therapy device 162 to the respective first and / or second nerve. The connection of the leads 168 to the respective nerve (or other nerves) of the patient 148 may permit the therapy device 162 to measure and / or stimulate one or more evoked potentials (e.g., ECAPs) in the patient 148 based on the provided electrical stimulation from the pulse generator 164.

[0129] Additionally, or alternatively, one lead 168 (e.g., lead 168-a) may be connected at or near the spinal cord 149 while another lead 168 (e.g., lead 168-c) may be connected at or near the brain 150 of the patient 148. Such a configuration may be used to apply a neuromodulation therapy suchas a Deep Brain Stimulation (DBS). While responses to the neuromodulation therapy may be measured using one or both of the leads 168-a and 168-c, cardiac activity may also be measured using traditional medical devices, and it should be appreciated that other types of devices can be used to measure cardiac activity.

[0130] As a non-limiting example, wearable device 170 may be provided with one or more sensors that receive a data signal from the patient 148 and convert the received signal into a cardiac electrical signal (or other appropriate signal associated with measuring biometric data of the patient 148) . In other words, traditional medical devices (e.g., purpose-built ECG monitors, portable ECG monitors, etc.), wearable devices 170, or any other appropriate type of device may be used to measure cardiac activity or other types of biometric data. Outputs of such device(s) may be analyzed and used to provide classifications 182, parameters 184 (e.g., stimulation parameters), and electrode configurations 186 associated with delivering therapy to patient 148 and sensing a response.

[0131] In some examples, the leads 168 may provide therapeutic electrical signals to the respective nerves via electrodes 166 or electrode devices that are connected to the nerves (e.g., sutured in place, wrapped around the nerves, etc.). In some examples, the leads 168 may be referenced as cuff electrodes or may otherwise include the cuff electrodes (e.g., at an end of the leads 168 not connected or plugged into the therapy device 162). Examples of the electrodes 166 include electrode devices, cuff electrodes, paddle electrodes, or different types of electrodes, and electrodes 166 may be disposed at a distal end of each of the leads 168.

[0132] In other examples, the leads 168 may be or comprise linear SCS leads capable of delivering one or more stimulation signals (e.g., generated by the therapy device 162) to the spinal cord 149. The leads 168 may comprise a plurality of electrodes 166 disposed along the length of the lead, such that the leads 168 contact the spinal cord 149 at multiple points along a length of the spinal cord 149. A first set of the electrodes 166 on each lead may pass an electrical signal into the spinal cord 149, while a second set of the electrodes 166 on each lead may sense one or more signals generated in response by the spinal cord 149 (e.g., recorded signals). In one or more implementations, the electrodes 166 may be able to sense, measure, or otherwise collect data related to ECAPs (e.g., ECAP waveforms). Additionally or alternatively, the electrodes 166 may be able to sense, measure, or otherwise collect data related to cardiac metrics for the patient 148 (e.g., HR, HRV, respiration, or other ECG measurements). In some examples, the therapy device 162 may use and / or may include additional contacts for sensing, measuring, or otherwise collecting data related to biometric data (e.g., cardiac metrics) for the patient 148. A plurality of the configurations can be used to record different vectors of biometric activity towards deriving various biometric metrics.

[0133] Additionally, the system 100 may include one or more processors 104 (e.g., one or more Digital Signal Processors (DSPs), general purpose microprocessors, graphics processing units, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs), or other equivalent integrated or discrete logic circuitry) shown and described in Fig. 1 that are programmed to carry out one or more aspects of the present disclosure. In some examples, the one or more processors 104 may include a memory 106 or may be otherwise configured to perform the aspects of the present disclosure. For example, the one or more processors 104 may provide instructions to the therapy device 162, the leads 168, the electrodes 166, or other components of the system 100 not explicitly shown or described with reference to Fig. 2 for applying a neuromodulation therapy, stimulation, performing measurements (e.g., biometric measurements, cardiac metrics, ECAPs, etc.), and analyzing the same, as described herein. In some examples, the one or more processors 104 may be part of the therapy device 162 or part of a control unit for the system 100 (e.g., where the control unit is in communication with the therapy device 162 and / or other components of the system 100).

[0134] The therapy device 162 and / or wearable device 170 may be programmed to measure and record movements of the patient 148 (e.g., for the purpose of life, sleep, and activity tracking). For example, the therapy device 162 and / or wearable device 170 may comprise an accelerometer and / or other components that are designed to track and record movements of the patient 148 (e.g., whether the patient 148 is moving, not moving, laying down, standing up, running, walking, etc.). Additionally, the leads 168 and / or electrodes 166 disposed at the distal end of the leads 168 may be programmed to measure a physiological response of the patient 148.

[0135] In some examples, the physiological response may comprise an evoked response (e.g., ECAP measurement) based on applying therapy (e.g., a therapeutic electrical signal, for example, a stimulation signal) generated by the therapy device 162 to the spinal cord 149 (e.g., and / or to nearby nerves as described previously). In another example, the physiological response may include spontaneous activity (e.g., spontaneous physiological responses) by the patient 148. Additionally or alternatively, as described herein, the physiological response may comprise biometric data, for example, cardiac signals (e.g., HR, HRV, respiration, other cardiac electrogram-related measurements, etc.) of the patient 148, before, during, and after the therapeutic electrical signal is applied. In some examples, the therapy device 162 may be programmed to measure and record the biometric data (e.g., cardiac signals) via an electrode vector and / or electrodes 166 placed on an outer surface of the therapy device 162 and / or within the therapy device 162, in addition or alternative to the leads 168 and / or electrodes 166. Additionally or alternatively, an additional device (e.g.,implanted within the patient 148, an external device, etc.) may be configured or programmed to record cardiac activity of the patient 148.

[0136] With reference to Figs. 1 and 2, example aspects are described that support signal classification for therapy optimization and insight in accordance with aspects of the present disclosure.

[0137] The system 100 may support the communication of data 125 (e.g., data 125-a, data 125-b, etc.) between computing device 102, therapy device 162, and wearable device 170. In an example, the system 100 may support receiving a data signal 126 (e.g., data signal 126-a) from one or more sensors (e.g., an electrode 166, an accelerometer associated with therapy device 162, a sensor integrated or coupled to wearable device 170, etc.) associated with the system 100 in response to therapy delivered to patient 148. In an example, the computing device 102 may receive data signals 126 via therapy device 162 and / or wearable device 170. Additionally, or alternatively, the computing device 102, if integrated with the therapy device 162, may receive the data signals 126 directly from the electrodes 166.

[0138] In some aspects, the data signal 126 (e.g., data signal 126-a from therapy device 162) may include an evoked compound action potential (ECAP) signal or an evoked compound muscle action potential (ECMAP) signal. In some other cases, the data signal 126 may include both an ECAP signal and an ECMAP signal. For example, the data signal 126 may include a sacral evoked response (SER) (also referred to herein as a pelvic health electrically evoked response (PEER)) which may include components of both ECAP and ECMAP.

[0139] The therapy may include neuromodulation therapy. In some example implementations, the therapy may include spinal cord stimulation (SCS), deep brain stimulation (DBS), pelvic health stimulation (e.g., associated with urinary incontinence, fecal incontinence, pelvic pain, sexual dysfunction, and other pelvic floor disorders), or other appropriate stimulation.

[0140] The system 100 may support delivery of the therapy via the therapy device 162 and / or the wearable device 170. In some aspects, computing device 102 may provide a control signal 155 to the therapy device 162 and / or the wearable device 170 in association with delivering therapy to the patient 148. In another example, the wearable device 170 may provide a control signal (not illustrated) to the therapy device 162 in association with delivering therapy to the patient 148. The example therapy described herein with reference to Fig. 2 may include delivery of electrical stimulation, but is not limited thereto. For example, the therapy may include delivery of one or more pharmacological agents.

[0141] Computing device 102 executing a machine learning model may assign a classification 182 to one or more portions of a waveform 180 associated with the data signal 126. In an example, computing device 102 may assign a classification 182 to a portion of the waveform 180 based on a characteristics of the waveform 180 (e.g., one or more derived thresholds for ECAP). Accordingly, for example, computing device 102 may assign classifications 182 to respective portions of the waveform 180.

[0142] In some example implementations, computing device 102 may generate the waveform 180 based on the data signal 126. In some other example implementations, therapy device 162 or wearable device 170 may generate the waveform 180 (based on the data signal 126) and provide the waveform 180 and / or the data signal 126 to the computing device 102. In some examples, the waveform 180 may be a raw waveform corresponding to the data signal 126. In another example, the waveform 180 may include a principal component analysis (PCA) of a waveform generated based on the data signal 126. Examples of the waveforms 180 (e.g., raw waveform, PCA of the waveform, etc.) are later described herein.

[0143] Computing device 102 may provide or assign classifications 182 from a set of classifications 182. In an example, the set of classifications 182 may include: a first classification 182-a (e.g., ‘electrical response’, ‘ECAP’) indicating a portion of a waveform 180 as an electrical response by an anatomical element of the patient 148 in association with delivering therapy, a second classification 182-b (e.g., ‘non-response’, ‘No ECAP’) indicating a portion of a waveform 180 as a non-response by one or more anatomical elements in association with delivering therapy, and a third classification 182-c (e.g., ‘noise’) indicating a portion of a waveform 180 as noise. In some cases, the noise may be biological, electrical, or mechanical.

[0144] In some example implementations, the set of classifications 182 may include subclassifications corresponding to any of the classifications 182. For example, for the third classification 182-c (e.g., ‘noise’), computing device 102 may further provide or assign a subclassification indicating a type (e.g., biological, electrical, mechanical, etc.) of the noise. The system 100 may apply the sub-classifications in association with diagnosing noise issues (e.g., based on noise type) in the field, which may support mitigation of noise or filtering out noise of the various types.

[0145] In an example, computing device 102 may provide or assign a classification 182-b (e.g., ‘non-response’), a classification 182-c (e.g., ‘electrical response’), or classification 182-c (e.g., ‘noise’) to a portion of a waveform 180 based on a derived threshold for ECAP.

[0146] Other example classifications 182 (not illustrated at Fig. 2) may include an indication of a predicted patient type associated with the patient 148, predicted pain profile information associated with the patient 148, and predicted device performance (e.g., battery life) of therapy device 162. Other example aspects of the classifications 182 and data based on which the classifications 182 may be determined and assigned are later described herein.

[0147] The system 100 may support providing, based on a classification 182, one or more parameters 184 associated with delivering therapy to the patient 148. In some examples, the parameters 184 may include stimulation parameters (e.g., stimulation frequency, amplitude, duration, duty cycle, post-stimulus recharge parameters, etc.) associated with delivering therapy and evoking a response. In some other examples, the parameters 184 may include electrode configurations 186 associated with delivering therapy and sensing a response. Example aspects of the stimulation parameters and electrode configurations 186 are later described herein.

[0148] The system 100 may support providing classifications 182 (and parameters 184 associated with the classifications 182) using one or more machine learning models 138. For example, the system 100 may support providing the data signal 126 (or portion of the data signal 126) to a machine learning model 138 (e.g., implemented at the computing device 102, cloud network 134, a server, etc.). In response to the machine learning model 138 processing the data signal 126 (or at least a portion of the data signal 126), the machine learning model 138 may provide an output including a classification 182 corresponding to the data signal 126. In another example, the output may include classifications 182 respectively corresponding to portions of a waveform 180 (e.g., raw waveform) that is representative of the data signal 126. In some other examples, the output may include classifications 182 respectively corresponding to portions of a transformation (e.g., a PCA) of the waveform 180. Examples of the classifications 182 respective to portions of the waveform 180 and / or the transformation (e.g., PCA) are later described herein.

[0149] Fig. 3 illustrates example views 300 and 301 of a response waveform 180-a corresponding to a data signal 126 provided by a device (e.g., therapy device 162, wearable device 170) in accordance with example aspects of the present disclosure.

[0150] Referring to example view 301, portion 305-a of waveform 180-a may correspond to or describe an ECAP response produced in response to application of a neuromodulation therapy. As an example, the ECAP response may be produced in response to application of SCS. Portion 305-b of waveform 180-a may correspond to or describe a non-response (e.g., ‘No ECAP’). The system 100 and techniques described herein may support assigning classifications 182 to portions 305 (e.g.,portion 305-a, portion 305-b, etc.) of the waveform 180-a based on characteristics of the portions 305.

[0151] For example, the system 100 and techniques described herein may support assigning a classification 182-a (e.g., ‘electrical response,’ ‘ECAP’) to portion 305-a of the waveform 180-a based on the characteristic information associated with the portion 305-a. In another example, the system 100 and techniques described herein may support assigning another classification 182-b (e.g., ‘non-response’, ‘no ECAP’) to portion 305-b of the waveform 180-a based on the characteristic information associated with the portion 305-b.

[0152] In an example, referring to view 301, temporal instance 310 is associated with an event or test (e.g., Valsalva maneuver, etc.) initiated with respect to the patient 148. As illustrated in the example of Fig. 3, the systems and techniques may support classifying portion 305-a (which occurs after temporal instance 310) as an electrical response.

[0153] Based on the classifications 182, the system 100 may provide one or more parameters 184 (e.g., stimulation parameters described herein) and one or more electrode configurations 186 associated with delivering therapy to the patient 148 and / or sensing responses to delivering the therapy. As described herein, the system 100 may support identification of ECAPS through the assignment of the classifications 182. The techniques described herein with respect to the identification of ECAPS may support improved determination (e.g., increased efficiency, increased accuracy, etc.) of usable ECAP and threshold equations implemented in the system 100.

[0154] Example aspects of technical building blocks supportive of ECAP classification are described herein. The machine learning models 138 (e.g., classifiers) of the system 100 may, in response to processing an input waveform 180 (e.g., waveform 180-a), be capable of predicting whether the input waveform 180 is an electrical response (e.g., ‘ECAP’), a non-response (e.g., ‘no ECAP’), or noise. That is, for example, the machine learning models 138 are capable of classifying portions (e.g., portion 305-a, portion 305-b, etc.) of the input waveform 180 as an electrical response (e.g., ‘ECAP’), a non-response (e.g., ‘no ECAP’), or noise.

[0155] In an example, the system 100 may provide a data signal 126 (or portion of the data signal 126) to a machine learning model 138 (e.g., a classifier). The machine learning model 138 may provide an output including classifications 182 corresponding to one or more portions (e.g., portion 305-a, portion 305-b) of the input waveform 180. In some aspects, the output may include parameters 184 (e.g., stimulation parameters described herein) and one or more electrode configurations 186.

[0156] Based on the classifications 182 and associated parameters 184 and / or electrode configurations 186, the system 100 may support improved accuracy associated with ECAPs identification. In an example, based on a given classification 182 (e.g., ‘ECAP’), the system 100 may automatically set parameters 184 (e.g., levels, for example, detection thresholds) and electrode configurations 186 associated with recording data signals 126 associated with a patient 148. In another example, based on a different classification 182 (e.g., ‘No ECAP’) indicating that no ECAP is identified, the system 100 may recommend changing one or more stimulation parameters or one or more recording parameters. In some other examples, based on another different classification 182 (e.g., ‘noise’) indicating noise above a threshold value, the system 100 may recommend changing one or more stimulation parameters or one or more recording parameters to account for the noise.

[0157] Accordingly, for example, the systems and techniques described herein include algorithms leveraging a classifier to identify a ECAP threshold and recommend parameters 184, identify appropriate electrode configurations 186, and the like in association with therapy delivery, therapy response monitoring, and therapy optimization.

[0158] Fig. 4 illustrates an example 400 of machine learning models 138 supported by aspects of the present disclosure.

[0159] According to example aspects of the present disclosure, the machine learning models 138 may support classification (e.g., ‘ECAP’ classification, ‘No ECAP’ classification, noise classification, etc.) of raw and / or filtered waveforms associated with a data signal 126. In some other aspects, the example machine learning models 138 may support classification of waveforms generated based on a transform (e.g., a data analysis, principal component analysis (PCA), etc.) applied to a raw waveform. It is to be understood that descriptions of classifying a waveform include classifying portions (e.g., portion 305-a, portion 305-b, etc.) of the waveforms. The machine learning models 138 may be trained based on training data 146 as described herein.

[0160] In an example, machine learning model 138-a may be a PCA weighted waveform SVM model. The machine learning model 138-a may support up to about 98.7% accuracy on averaged ECAPs > 4pV. In some aspects, the machine learning model 138-a may support classification using radial basis function (RBF) kernels. The machine learning model 138-a may support identifying ECAPs from weighted data.

[0161] In another example, machine learning model 138-b may be a PCA single waveform SVM model. The machine learning model 138-b may support up to about 94.2% accuracy on raw ECAPs > 4pV. In some aspects, classification using machine learning model 138-b and raw waveforms may support quicker response times. In some aspects, noise in waveforms may add some complexity toclassification. Accordingly, for example, the machine learning model 138-b may be trained utilizing a PCA transform from averaged waveforms. In an example implementation, the machine learning model 138-b may be trained with two raw waveforms: 273k (‘ECAP’) and 409k (‘No ECAP’).

[0162] In another example, machine learning model 138-c may be a scaleinvariant convolutional neural network model (SiCNN model). The machine learning model 138-c may support up to about 97.3% accuracy on raw ECAPs > 1 pV relative to noise at an ECAP threshold (e.g., absolute ECAP estimation response, mean: 2.0pV; 95thPercentile: 3.19pV). In some aspects, classification using machine learning model 138-c may support identification of ECAPS with varying morphology. In an example implementation, the machine learning model 138-c may support implementations on a frontend encoder- decoder model to identify abnormal waveforms (e.g., unusual artifacts or noise). In an example implementation, the machine learning model 138-c may be trained with two raw waveforms: 208k (‘ECAP’) and 1 million (‘no-ECAP’).

[0163] The neural network architecture may support transfer of learning. For example, a machine learning model 138 (e.g., machine learning model 138-a, machine learning model 138-b, etc.) may be a model trained through an initial generalized training on reference population data. The systems and techniques may support refining and retraining of the machine learning models 138.

[0164] Aspects of the neural network architecture support feeding multiple signal types into the machine learning models 138. For example, in addition to the machine learning models 138 providing classifications 182 and parameters 184 (e.g., stimulation parameters, etc.) based on ECAP sensed data as described herein, the machine learning models 138 may determine the classifications 182 and parameters 184 based on additional data (e.g., included in data 125-a and / or data 125-b) fed to the machine learning models 138. Non-limiting examples of the additional data include temporal information (e.g., date and time), accelerometer data (e.g., associated with therapy device 162, electrodes 166, etc.), impedance data (e.g., corresponding to sensors, electrodes 166, etc.), physiological data (e.g., measured heart rate, measured ECG, etc.), and recharge interval estimation (e.g., associated with therapy device 162), but are not limited thereto.

[0165] According to example aspects of the present disclosure, the systems and techniques described herein may support classification actions 405 associated with assigning a classification 182 to a data signal 126 (or to a portion of a waveform 180 associated with the data signal 126). In an example, each classification 182 may include an indication of a sensed signal type, be anatomical map based, be lead map based, include a therapy setting suggestion, include an indication of a patient state, or any appropriate combination thereof.

[0166] Sensed Signal Type - Classification Action 405-a

[0167] In an example of a classification 182 indicating sensed signal type, computing device 102 may assign a classification 182-a (e.g., ‘ECAP’), a classification 182-b (e.g., ‘No ECAP’), or a classification 182-c (e.g., ‘Noise’) to a data signal 126 (or to a portion of a waveform 180 associated with the data signal 126). In some aspects, computing device 102 may further categorize noise as electromyographic (EMG) noise, electrical noise, mechanical noise, or the like. For example, in the case of a data signal 126 (or to a portion of a waveform 180 associated with the data signal 126) classified as ‘Noise,’, computing device 102 may assign a further classification 182 (or subclassification) associated with the type (e.g., EMG, electrical, mechanical, etc.) of noise. In some example aspects, computing device 102 may assign a classification 182-c (e.g., ‘Noise’) for cases involving a saturation of all or some samples of a sensing signal (e.g., data signal 126). For example, computing device 102 may assign a classification 182-c (e.g., ‘Noise’) for cases in which one or more samples of data signal 126 approaches or exceeds a saturation threshold.

[0168] Anatomical Map Based - Classification Action 405-b

[0169] In an example of a classification 182 that is anatomical map based, computing device 102 may assign a classification 182 for a “location” mode during lead implant. During an operation of inserting the lead at an insertion location, the system 100 may utilize the classification 182 to determine whether an ECAP is observed at the insertion location. Based on an analysis of the ECAP morphology, the system 100 may identify and indicate whether the neural elements targeted by the lead implant and stimulation are stimulated and that no ECMAP is evoked. In addition, for example,, through the classification 182, the computing device 102 may indicate to a clinician if observing ECAP at a location and indicate whether an anatomical element associated with the observed ECAP is a candidate for ERS.

[0170] In another example, computing device 102 may assign a classification 182 associated with detected lead migration. For example, the classification 182 may indicate whether lead migration associated with an implanted medical device has occurred. In another example of a classification 182 that is anatomical map based, computing device 102 may assign a classification 182 indicating anatomical information (e.g., spinal level, lead laterality, nerve root, etc.) associated with an electrical response of the patient 148.

[0171] Lead Map Based - Classification Action 405 -c

[0172] In an example of a classification 182 that is lead map based, computing device 102 may support the identification of stimulation contacts and recording contacts (e.g., electrodes 166) for yielding ECAPs. For example, the computing device 102 may support quickly identify promising stimulation contacts and recording contacts that yield ECAPs. In an example implementation, thetechniques may include holding a stimulation contact constant and looping through recording contacts to find informative configurations. For example, for stimulation delivered by a given stimulation contact(s) (e.g., an electrode 166), the techniques described herein may support iterative analysis of data signals recorded by different recording contacts (e.g., other electrodes 166) to identify one or more configurations of stimulation contacts and recording contacts for yielding ECAPs. In some aspects, the configurations may include placement information and quantity associated with the stimulation contacts and recording contacts.

[0173] In some examples of a classification 182 that is lead map based, computing device 102 may support indicating whether a lead 168 is stable / encapsulated. For example, a response to neuromodulation therapy may be measured using a lead 168 described herein, and computing device 102 may provide a classification 182 indicating whether the lead 168 is stable, encapsulated, or the like.

[0174] Therapy Setting Suggestion - Classification Action 405-d

[0175] In an example of a classification 182 indicating a therapy setting suggestion, computing device 102 may provide a classification 182 indicating recording / stimulation electrodes, stimulation parameters (e.g., stimulation frequency, amplitude, duration, duty cycle, post-stimulus recharge parameters, etc.), and ECAP responsive stimulation threshold levels. Accordingly, for example, by providing a classification 182 (classification result) including therapy setting suggestions associated with the classification 182, aspects of the present disclosure may obviate the need for ECAP responsive stimulation thresholds. The stimulation parameters described herein may include active stimulation parameters, passive stimulation parameters, or any combination thereof in association with a therapy device 162. The stimulation parameters may include customized settings associated with charging or recharging the therapy device 162. Non-limiting examples of the customized settings include custom durations of passive recharge, custom amplitudes and pulse width of active recharge, other appropriate settings associated with recharge, and the like.

[0176] In some aspects, the classification 182 may include an indication of optimized therapy settings and recharge interval settings, which may support optimizing therapy settings and recharge interval simultaneously. In an example implementation, the classification 182 may include a prediction of follow up visits by patient 148 with respect to a therapy issue. For example, the classification 182 may include a prediction that a patient 148 will be back within a temporal duration (e.g., in three weeks) due to consistently fast battery consumption associated with therapy device 162. In some aspects, such predictions associated with patient follow up visits / battery consumption associated with therapy device 162 may support reducing clinical-rep burden.

[0177] In some cases, a therapy device 162 may be powered by a non-rechargeable primary cell battery. In some alternative and / or additional cases, a therapy device 162 may be powered by a rechargeable cell battery. Accordingly, for example, the aspects described herein associated with recharge interval settings may be applied to recharging a rechargeable cell battery of a therapy device 162.

[0178] Patient State - Classification Action 405 -e

[0179] In an example of a classification 182 indicating a patient state, computing device 102 may provide a classification 182 indicating whether patient 148 is in a sleep state, an awake state, an active state, a resting state, and the like. In some aspects, computing device 102 may classify aggressor events based on short term ECAP transitions (e.g., awake active state may be associated with rapid transitions in the ECAP signals associated with aggressors, while a sleep state may be indicated with fewer less profound aggressors).

[0180] The techniques described herein may support recurrent neural networks (RNN, LSTM, etc.) to classify patient state based on a time series of ECAP waveforms. In an example, the system and techniques described herein may support training a neural network (e.g., one or more machine learning models 138) to detect a patient state (e.g., a sleep state, an awake state, an active state, a resting state, etc.) based on a single ECAP waveform. In another example, the system and techniques described herein may support training the neural network to detect a patient state (and / or characteristics associated with the patient state) based on a time series of ECAP waveforms.

[0181] In another example, the techniques described herein may support classification actions associated with medication (e.g., change in ECAP morphology / timing). For example, the techniques described herein may include assigning a classification 182 to a change in ECAP morphology / timing, and the classification 182 may include an indication of medication information (e.g., medication type, medication dosage, etc.) associated with the change in ECAP morphology / timing.

[0182] In some other examples, the techniques described herein may support classification actions associated with indicating whether the patient 148 is in a pain state (e.g., patient increases in stimulation amplitude may correlate with certain ECAP morphology). For example, the techniques described herein may include assigning a classification 182 to a certain ECAP morphology, the classification 182 may include an indication of a pain state associated with the ECAP morphology, and based on the pain state (and the ECAP morphology), the computing device 102 may provide a recommended stimulation amplitude.

[0183] In another example, the techniques described herein may support classification actions associated with indicating a therapeutic impact on the patient 148. In an example, the therapeutic impact may include altering (e.g., reducing) a pain state of the patient 148.

[0184] In another example, the techniques described herein may support classification actions associated with indicating a position (e.g., standing, sitting, laying down, etc.) of the patient 148. Accordingly, for example, the techniques described herein may support the determination of positionally responsive stimulation, which may thereby support relatively easier setup compared to other techniques. For example, classification actions associated with indicating a position (e.g., standing, sitting, laying down, etc.) of the patient 148 may support reduced complexity associated with setting up therapy delivery and monitoring.

[0185] Population Model Use

[0186] According to example aspects of the present disclosure, the systems and techniques described herein may support population model use. For example, the system 100 may support aggregating data (e.g., ECAP data) to a database (e.g., database 130, a cloud database, etc.) for classification of individual patients or other user trends using AI / ML techniques described herein and / or other appropriate AI / ML techniques.

[0187] In an example, the system 100 may support aggregating data (e.g., ECAP data) according to patient type (e.g., low responder, medium responder, high responder), together with other appropriate information or settings (e.g., therapy settings, patient visit history / frequency, etc.).

[0188] In another example, the system 100 may support aggregating data (e.g., ECAP data) according to patient pain level (e.g., low pain level / medium pain level / high pain level, whether the patient 148 is at rest / active, etc.) as currently self-reported by the patient or automatically determined by the system 100, together with other appropriate information or settings (e.g., pain ratings, accelerometer data associated with therapy device 162 or wearable device 170, etc.)

[0189] In some other examples, the system 100 may support aggregating data (e.g., ECAP data) according to battery drain burden of the therapy device 162, together with other appropriate information or settings (e.g., therapy settings associated with the therapy device 162).

[0190] Accordingly, for example, the system 100 may support training machine learning models 138 based on the aggregated data (e.g., aggregated ECAP data, therapy settings, device data, patient data, etc.). Using the machine learning models 138, the system 100 may process a data signal 126 (or corresponding waveform 180) associated with a patient 148 and provide a classification 182 indicating predicted patient type associated with the patient 148, predicted pain profile informationassociated with the patient 148, predicted device performance (e.g., of a therapy device 162) associated with delivering therapy to the patient 148, or an appropriate combination thereof.

[0191] Fig. 5 illustrates examples of ECAPs identified using growth curves. A growth curve is where stimulation amplitude is increased over time and ECAP waveforms are recorded at each stimulation amplitude. ECAPs are known to have a threshold where they are present above a patient specific stimulation amplitude threshold and not present below that threshold. Additionally after a small transition period, ECAP amplitude grows linearly in response to stimulation amplitude. By collecting and fitting growth curves to an ECAP response model the patient specific stimulation amplitude threshold above which ECAPs are present can be determined.

[0192] Fig. 6 illustrates an example process flow in accordance with aspects of the present disclosure. In some examples, the process flows may be implemented by aspects of system 100 (e.g., computing device 102, system 160, etc.) described with reference to Figs. 1 and 2.

[0193] In the following descriptions of the process flow, the operations may be performed in a different order than the order shown, or the operations may be performed in different orders or at different times. Certain operations may also be left out of the process flow, or one or more operations may be repeated, or other operations may be added to the process flow.

[0194] It is to be understood that any appropriate device (e.g., computing device 102, therapy device 162, wearable device 170, another device in communication with the computing device 102, therapy device 162, or wearable device 170, etc.) may perform the operations shown.

[0195] The process flows may be implemented by a system 100 including: a processor (e.g., processor 104) and a memory (e.g., memory 106) storing data thereon that, when processed by the processor, cause the processor to perform one or more operations of the process flows.

[0196] The process flows (and / or one or more operations thereof) described herein may be carried out or otherwise performed, for example, by at least one processor. The at least one processor may be the same as or similar to the processor(s) 104 of the computing device 102 described above. The at least one processor may be part of system 160, therapy device 162, or wearable device 170. A processor other than any processor described herein may also be used to execute the process flows. The at least one processor may perform operations of the process flows by executing elements stored in a memory such as the memory 106. The elements stored in memory and executed by the processor may cause the processor to execute one or more operations of a function as shown in the process flows. One or more portions of the process flows may be performed by the processor executing any of the contents of memory.

[0197] Referring to Fig. 6, at 603, the process flow 600 may include training of a machine learning model (e.g., machine learning models 138) based on training data using growth curves to determine a threshold of an ECAP. By collecting and fitting growth curves to an ECAP response model the patient specific stimulation amplitude threshold above which ECAPs are present can be determined. Waveforms can then be efficiently labeled as containing or not containing an ECAP signal based on the ECAP threshold derived from the growth curve model. This allows thousands of waveforms to be labeled simultaneously instead of individually.

[0198] At 605, the process flow 600 may receive a data signal. In some aspects, the data signal includes an evoked compound action potential (ECAP) signal, an evoked compound muscle action potential (ECMAP) signal, or a combination thereof.

[0199] At 610, the process flow 600 may include providing at least a portion of the data signal to the one or more machine learning models.

[0200] At 615, the process flow 600 may include receiving an output from the one or more machine learning models in response to the one or more machine learning models processing at least the portion of the data signal, wherein the output includes the classification and the one or more parameters.

[0201] At 620, the process flow 600 may include assigning a classification to one or more portions of a waveform associated with the data signal based on characteristic information associated with the one or more portions of the waveform. In some aspects, assigning the classification at 620 is based on at least one machine learning model included in the plurality of machine learning models processing at least the portion of the data signal.

[0202] At 625, the process flow 600 may include providing, based on the classification, one or more parameters associated with delivering the therapy

[0203] At 630, the process flow 600 may include providing, based on the classification, a first electrode configuration associated with delivering the therapy, a second electrode configuration associated with sensing a response to delivering the therapy, or both. Although not shown, the process flow 600 may include a step of retraining the model using feedback from the model.

[0204] As noted above, the present disclosure encompasses methods with fewer than all of the steps identified in Fig. 6 (and the corresponding description of the process flow), as well as methods that include additional steps beyond those identified in Fig. 6 (and the corresponding description of the process flow). The present disclosure also encompasses methods that include one or more steps from one method described herein, and one or more steps from another method described herein. Any correlation described herein may be or include a registration or any other correlation.

[0205] An encoder- decoder (e.g., encoder-decoder system 900 illustrated in Fig. 9) is a type of neural network architecture that is used for machine learning. It consists of two parts, the encoder 910 and the decoder 920. The encoder 905 processes an input(s) 905 to produce a hidden representation 915 (e.g., a set of context vectors), which is then used by the decoder 920 to generate an output 925. Generally an encoder-decoder allows machines to learn how to understand complex relationships between different types of data for more efficient processing.

[0206] The encoder 910 is the first part of an encoder-decoder architecture 900. It takes in an input 905 and processes it to create a hidden representation 915, which is used by the decoder 920. The decoder 920 is responsible for taking this encoded representation 915 and reconstructing it back into its original form or something similar (e.g., output 925). In order to do this, there must be some kind of relationship between what was encoded and what needs to be reconstructed; otherwise it would just be guessing randomly. To establish this link, most modern architectures use attention mechanisms that allow specific parts of an input to influence how later parts are processed or interpreted by the model — essentially giving greater weightage or importance to certain elements over others when generating the output from encoded data inputs. By doing so, models become more accurate at producing outputs that accurately reflect their input data sources and can even learn different patterns across various datasets without needing additional training cycles or parameter tuning procedures afterwards.

[0207] In the present disclosure, waveform data (e.g., input 905) may be input to the encoder 910. The waveform data input 905 may include an artifact, which may interfere with measurement of the evoked potentials. This artifact, unlike all other sources of noise in the measurement, cannot be reduced by ensemble averaging. The encoder 910 encodes the waveform data into a hidden representation 915. The hidden representation 915 is input into the decoder 920 to recreate the waveform without artifact.

[0208] Referring to Fig. 7, at 701, the process flow 700 may include pre- training of a machine learning model. In embodiments, pre-training comprises using the encoder-decoder architecture 900 to determine weights, and at 702 inputting those determined weight into the machine learning model. At 703 points in the training data are labeled as not containing the ECAP if a waveform was captured below the threshold of the evoked response or as containing the ECAP if the waveform was captured above the threshold of the evoked response (see Fig. 8). At 704 weights are determined by weighting points above the threshold of the evoked response based on a proximity to the threshold of the evoked response. At step 705, the determined weights are used to assign classifications to received waveforms.

[0209] Fig. 8 illustrates an example growth curve 800. The example growth curve 800 includes a no ECAP region 805, an ECAP threshold 810, and an ECAP region 815. In other words, there are no ECAPS below the ECAP threshold 810, and there are ECAPS above the ECAP threshold 810. The points above the ECAP threshold 810 may be weighted based on their proximity to the ECAP threshold 810. For example, points 825 closest to the ECAP threshold 810, may be given the smallest weight or zero weighting. As the points increase in size (e.g., points 830 and 835), the weighting may also increase. The weighting may be used to classify ECAPs and no ECAPs in received waveforms.

[0210] The foregoing is not intended to limit the disclosure to the form or forms disclosed herein. In the foregoing Detailed Description, for example, various features of the disclosure are grouped together in one or more aspects, implementations, and / or configurations for the purpose of streamlining the disclosure. The features of the aspects, implementations, and / or configurations of the disclosure may be combined in alternate aspects, implementations, and / or configurations other than those discussed above. This method of disclosure is not to be interpreted as reflecting an intention that the claims require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects he in less than all features of a single foregoing disclosed aspect, implementation, and / or configuration. Thus, the following claims are hereby incorporated into this Detailed Description, with each claim standing on its own as a separate preferred implementation of the disclosure.

[0211] Moreover, though the foregoing has included description of one or more aspects, implementations, and / or configurations and certain variations and modifications, other variations, combinations, and modifications are within the scope of the disclosure, e.g., as may be within the skill and knowledge of those in the art, after understanding the present disclosure. It is intended to obtain rights which include alternative aspects, implementations, and / or configurations to the extent permitted, including alternate, interchangeable and / or equivalent structures, functions, ranges or steps to those claimed, whether or not such alternate, interchangeable and / or equivalent structures, functions, ranges or steps are disclosed herein, and without intending to publicly dedicate any patentable subject matter.

[0212] Example aspects of the present disclosure include:

[0213] A system including: a processor; and a memory storing data thereon that, when processed by the processor, cause the processor to: train a machine learning model based on a training data set associated with simulated data, wherein the simulated data is fit to an evoked compound action potential (ECAP) response model to derive a threshold of an evoked response; and the machinelearning model processing a waveform to assign a classification to one or more portions of the waveform based on the threshold of the evoked response.

[0214] Any of the aspects herein, wherein the classification is included in a set of classifications including: a first classification indicating the one or more portions of the waveform as an electrical response; a second classification indicating the one or more portions of the waveform as a nonresponse; and a third classification indicating the one or more portions of the waveform as noise.

[0215] Any of the aspects herein, wherein the one or more parameters include one or more stimulation parameters associated with delivering the therapy and evoking a response.

[0216] Any of the aspects herein, wherein the data is further executable by the processor to: provide, based on the classification, a first electrode configuration associated with delivering the therapy, a second electrode configuration associated with sensing a response to delivering the therapy, or both.

[0217] Any of the aspects herein, wherein the one or more machine learning models include: one or more support vector machines (SVMs); one or more convolutional neural network (CNN) models; or both.

[0218] Any of the aspects herein, wherein the waveform includes a principal component analysis (PCA) of the waveform generated based on the data signal.

[0219] Any of the aspects herein, wherein the waveform includes a raw waveform corresponding to the data signal.

[0220] Any of the aspects herein, wherein the data signal includes an evoked compound action potential (ECAP) signal, an evoked compound muscle action potential (ECMAP) signal, or a combination thereof.

[0221] Any of the aspects herein, wherein the therapy includes neuromodulation therapy.

[0222] Any of the aspects herein, wherein the therapy includes at least one of: spinal cord stimulation; and pelvic stimulation.

[0223] Any of the aspects herein, further including a device to deliver the therapy and receive the data signal from the one or more sensors.

[0224] Any of the aspects herein, wherein the device includes at least one of a medical device, a wearable device, and an implanted device.

[0225] Any of the aspects herein, further including: a device that generates the waveform based on the data signal received from the one or more sensors.

[0226] A method including: training a machine learning model based on a training data set associated with simulated data, wherein the simulated data is fit to an evoked compound actionpotential (ECAP) response model to derive a threshold of an evoked response; and processing, by the machine learning model a waveform to assign a classification to one or more portions of the waveform based on the threshold of the evoked response.

[0227] Any aspect in combination with any one or more other aspects.

[0228] Any one or more of the features disclosed herein.

[0229] Any one or more of the features as substantially disclosed herein.

[0230] Any one or more of the features as substantially disclosed herein in combination with any one or more other features as substantially disclosed herein.

[0231] Any one of the aspects / features / implementations in combination with any one or more other aspects / features / implementations.

[0232] Use of any one or more of the aspects or features as disclosed herein.

[0233] It is to be appreciated that any feature described herein can be claimed in combination with any other feature(s) as described herein, regardless of whether the features come from the same described implementation.

[0234] The phrases “at least one,” “one or more,” “or,” and “and / or” are open-ended expressions that are both conjunctive and disjunctive in operation. For example, each of the expressions “at least one of A, B and C,” “at least one of A, B, or C,” “one or more of A, B, and C,” “one or more of A, B, or C,” “A, B, and / or C,” and “A, B, or C” means A alone, B alone, C alone, A and B together, A and C together, B and C together, or A, B and C together.

[0235] The term “a” or “an” entity refers to one or more of that entity. As such, the terms “a” (or “an”), “one or more,” and “at least one” can be used interchangeably herein. It is also to be noted that the terms “comprising,” “including,” and “having” can be used interchangeably.

[0236] The term “automatic” and variations thereof, as used herein, refers to any process or operation, which is typically continuous or semi-continuous, done without material human input when the process or operation is performed. However, a process or operation can be automatic, even though performance of the process or operation uses material or immaterial human input, if the input is received before performance of the process or operation. Human input is deemed to be material if such input influences how the process or operation will be performed. Human input that consents to the performance of the process or operation is not deemed to be “material.”

[0237] Aspects of the present disclosure may take the form of an implementation that is entirely hardware, an implementation that is entirely software (including firmware, resident software, micro-code, etc.) or an implementation combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module,” or “system.” Any combination of one ormore computer-readable medium(s) may be utilized. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium.

[0238] A computer-readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non- exhaustive list) of the computer-readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer-readable storage medium may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.

[0239] A computer-readable signal medium may include a propagated data signal with computer-readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer-readable signal medium may be any computer-readable medium that is not a computer-readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer-readable medium may be transmitted using any appropriate medium, including, but not limited to, wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

[0240] The terms “determine,” “calculate,” “compute,” and variations thereof, as used herein, are used interchangeably and include any type of methodology, process, mathematical operation or technique.

[0241] The following examples are illustrative of the techniques described herein.

[0242] Example 1. A system comprising: a processor; and a memory storing data thereon that, when processed by the processor, causes the processor to: train a machine learning model based on training data, wherein the training data is fit to an evoked compound action potential (ECAP) response model to derive a threshold of an evoked response; label points in the training data as not containing the ECAP if a waveform was captured below the threshold of the evoked response or as containing the ECAP if the waveform was captured above the threshold of the evoked response;determine weights by weighting points above the threshold of the evoked response based on a proximity to the threshold of the evoked response; and process, by the machine learning model, a data signal to assign a classification to one or more portions of the data signal based on the determined weights.

[0243] Example 2. The system of example 1, wherein one or more points closest to the threshold of the evoked response is given no weight, and wherein weights are increased as the points get farther above the threshold of the evoked response.

[0244] Example 3. The system of example 1, wherein the classification is comprised of a set of classifications comprising: a first classification indicating the one or more portions of the data signal as an electrical response; a second classification indicating the one or more portions of the data signal as a non-response; and a third classification indicating the one or more portions of the data signal as noise.

[0245] Example 4. The system of example 1, further comprising: performing training data sample weighting based on a size of one or more features of the waveform.

[0246] Example 5. The system of example 1, further comprising: performing training data sample weighting to reduce training loss penalties for misclassifications of waveforms, wherein one or more features of the waveform are below clinically relevant values.

[0247] Example 6. The system of example 1, wherein the machine learning model comprises: one or more support vector machines (SVMs); one or more feed forward neural network (NN) models; one or more convolutional neural network (CNN) models; one or more transformer neural network models; or a combination of them.

[0248] Example 7. The system of example 1, wherein the data signal comprises a principal component analysis (PCA) of a waveform generated based on the data signal.

[0249] Example 8. The system of example 1, wherein the data signal comprises a raw waveform corresponding to the data signal.

[0250] Example 9. The system of example 1, wherein the classification indicates the one or more portions of the data signal as a non-response or noise, based on comparing the one or more portions of the data signal to one or more reference artifacts.

[0251] Example 10. The system of example 1, wherein the data signal comprises an evoked compound action potential (ECAP) signal, an evoked compound muscle action potential (ECMAP) signal, or a combination thereof.

[0252] Example 11. The system of example 1, further comprising: a device to deliver therapy and receive the data signal from one or more sensors.

[0253] Example 12. The system of example 11, wherein the device comprises at least one of a medical device, a wearable device, and an implanted device.

[0254] Example 13. The system of example 1, further comprising: a device that generates the data signal based on information received from one or more sensors.

[0255] Example 14. The system of example 1, wherein training data comprises waveform data collected during procedures.

[0256] Example 15. The system of example 1, wherein training the machine learning model based on the training data comprises fine-tuning the machine learning model using collected ECAP response waveform data.

[0257] Example 16. The system of example 15, wherein training the machine learning model further comprises pre-training the machine learning model using an encoder-decoder.

[0258] Example 17. A method comprising: training a machine learning model based on training data, wherein the training data is fit to an evoked compound action potential (ECAP) response model to derive a threshold of an evoked response; labeling points in the training data as not containing the ECAP if a waveform was captured below the threshold of the evoked response or as containing the ECAP if the waveform was captured above the threshold of the evoked response; and processing, by the machine learning model, a data signal to assign a classification to one or more portions of the data signal based weights learned when trained on the labeled training data.

[0259] Example 18. The method of example 17, wherein the classification is comprised of a set of classifications comprising: a first classification indicating the one or more portions of the data signal as an electrical response; a second classification indicating the one or more portions of the data signal as a non-response; and a third classification indicating the one or more portions of the data signal as noise.

[0260] Example 19. The method of example 17, further comprising: performing training data sample weighting based on one or more features of the waveform.

[0261] Example 20. The method of example 17, further comprising: performing training data sample weighting to reduce training loss penalties for misclassifications of waveforms, wherein one or more features of the waveform are below clinically relevant values.

[0262] Example 21. The method of example 17, wherein the machine learning model comprises: one or more support vector machines (SVMs); one or more feed forward neural network (NN) models; one or more convolutional neural network (CNN) models; one or more transformer neural network models; or a combination of them.

[0263] Example 22. The method of example 17, wherein the data signal comprises a principal component analysis (PCA) of a waveform generated based on the data signal.

[0264] Example 23. The method of example 17, wherein the data signal comprises a raw waveform.

[0265] Example 24. The method of example 17, wherein training data comprises waveform data collected during procedures.

[0266] Example 25. The method of example 17, wherein training the machine learning model based on the training data comprises fine-tuning the machine learning model using collected ECAP response waveform data.

[0267] Example 26. The method of example 25, wherein training the machine learning model further comprises pre-training the machine learning model using an encoder-decoder.

[0268] Example 27. A system comprising: a processor; and a memory storing data thereon that, when processed by the processor, causes the processor to: input waveform data with an artifact into an encoder to generate a hidden representation; input the generated hidden representation into a decoder to recreate the waveform data without the artifact; and use weights determined based on an encoder- decoder to pre-train a machine learning model based on training data, wherein the training data is fit to an evoked compound action potential (ECAP) response model to derive a threshold of an evoked response.

Claims

CLAIMSWhat is claimed is:

1. A system (102) comprising: a processor (104); and a memory (106) storing data thereon that, when processed by the processor, causes the processor to: train a machine learning model (138) based on training data (145), wherein the training data (145) is fit to an evoked compound action potential (ECAP) response model (800) to derive a threshold (810) of an evoked response; label points in the training data as not containing the ECAP if a waveform was captured below the threshold of the evoked response (805) or as containing the ECAP if the waveform was captured above the threshold of the evoked response (815); determine weights by weighting points (825, 830, 835) above the threshold of the evoked response (810) based on a proximity to the threshold of the evoked response (810); and process, with the machine learning model (138), a data signal to assign a classification to one or more portions of the data signal based on the determined weights.

2. The system of claim 1, wherein one or more points (825, 830, 835) closest to the threshold of the evoked response (810) is given no weight, and wherein weights are increased as the points (825, 830, 835) get farther above the threshold of the evoked response (810).

3. The system of claim 1, wherein the classification is comprised of a set of classifications comprising: a first classification indicating the one or more portions of the data signal as an electrical response; a second classification indicating the one or more portions of the data signal as a non-response; and a third classification indicating the one or more portions of the data signal as noise.

4. The system of claim 1, further comprising: performing training data sample weighting based on a size one or more features of the waveform (800).

5. The system of claim 1, further comprising: performing training data sample weighting to reduce training loss penalties for misclassifications of waveforms, wherein one or more features of the waveform are below clinically relevant values.

6. The system of claim 1, wherein the machine learning model comprises: one or more support vector machines (SVMs); one or more feed forward neural network (NN) models; one or more convolutional neural network (CNN) models; one or more transformer neural network models; or a combination of them.

7. The system of claim 1, wherein the data signal comprises a principal component analysis (PCA) of a waveform generated based on the data signal.

8. The system of claim 1, wherein the data signal comprises a raw waveform corresponding to the data signal.

9. The system of claim 1, wherein the classification indicates the one or more portions of the data signal as a non-response or noise, based on comparing the one or more portions of the data signal to one or more reference artifacts.

10. The system of claim 1 , wherein the data signal comprises an evoked compound action potential (ECAP) signal, an evoked compound muscle action potential (ECMAP) signal, or a combination thereof.

11. The system of claim 1 , wherein training the machine learning model based on the training data comprises fine-tuning the machine learning model using collected ECAP response waveform data.

12. The system of claim 1, wherein training the machine learning model further comprises pretraining the machine learning model using an encoder-decoder (900).

13. The system of claim 1, further comprising:a device (162) to deliver therapy and receive the data signal from one or more sensors.

14. A method comprising: training a machine learning model (138) based on training data (145), wherein the training data is fit to an evoked compound action potential (ECAP) response model (800) to derive a threshold of an evoked response (810); labeling points (825, 830, 835) in the training data (145) as not containing the ECAP (805) if a waveform was captured below the threshold of the evoked response (810) or as containing the ECAP (815) if the waveform was captured above the threshold of the evoked response (810); and processing, by the machine learning model, a data signal to assign a classification to one or more portions of the data signal based weights learned when trained on the labeled training data.

15. A system (102) comprising: a processor (104); and a memory (106) storing data thereon that, when processed by the processor, causes the processor to: input waveform data with an artifact (905) into an encoder (910) to generate a hidden representation (915); input the generated hidden representation (915) into a decoder (920) to recreate the waveform data without the artifact (925); and use weights determined based on an encoder-decoder (900) to pre-train a machine learning model (138) based on training data (145), wherein the training data (145) is fit to an evoked compound action potential (ECAP) response model (800) to derive a threshold of an evoked response (810).

Citation Information

Patent Citations

  • Detecting neuronal action potentials using a convolutive compound action potential model

    US10863911B2

  • Systems and methods for detecting lead movement

    WO2023215663A1