Hearing device with sparse matrix representation

By employing sparse matrix representations of neural network weights in hearing devices, the problem of high computational cost of DNNs is solved, improving the processing and storage efficiency of the devices, making it suitable for hearing aids and other hearing devices.

CN121151748APending Publication Date: 2025-12-16GN HEARING AS
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510780230.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-06-14
Filing Date
2025-06-12
Publication Date
2025-12-16

AI Technical Summary

Technical Problem

Existing machine learning and deep neural network (DNN) technologies are computationally expensive in hearing devices, impacting device efficiency.

Method used

The neural network weights are represented by sparse matrices. By storing the header information of the sparse weight representation, the storage and computation efficiency is improved, the storage requirements of zero elements are reduced, and the non-zero submatrices are processed quickly by the processor.

Benefits of technology

It improves the efficiency of hearing devices in processing transducer input data, saves space and computing resources, and achieves efficient computing and storage, making it suitable for hearing devices such as hearing aids with limited resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121151748A_ABST
    Figure CN121151748A_ABST
Patent Text Reader

Abstract

The invention discloses a hearing device. The hearing device comprises a set of input transducers for providing transducer input data, the set of input transducers comprising a first input transducer for providing a first input transducer input signal as part of the transducer input data. The hearing device includes a processor for processing transducer input data and providing an electrical output signal based on the transducer input data. The hearing device comprises a receiver for converting the electrical output signal into an audio output signal.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to a hearing device and a related method, including a method of operating a hearing device. In particular, the present invention proposes a hearing device and method for processing transducer input data, such as microphone input data, using a neural network. BACKGROUND

[0002] Hearing devices implementing machine learning and deep neural networks (DNNs) are gaining increasing interest, however the computational cost of DNNs is high and can negatively impact the efficiency of the hearing device. SUMMARY

[0003] Therefore, there is a need for improved hearing devices and methods implementing DNNs.

[0004] A hearing device is disclosed. The hearing device comprises a set of input transducers for providing transducer input data, the set of input transducers comprising a first input transducer for providing a first input transducer input signal as part of the transducer input data.

[0005] The hearing device comprises a processor for processing the transducer input data and providing an electrical output signal based on the transducer input data. The hearing device comprises a receiver for converting the electrical output signal into an audio output signal.

[0006] The hearing device comprises a memory having stored thereon a weight representation indicative of neural network weights based on the transducer input data. The weight representation comprises a first header information. The weight representation comprises a first set of weights. The first set of weights optionally comprises a plurality of first weight matrices, including a first primary weight matrix and a first secondary weight matrix. The first header information is indicative of a position of each of the plurality of first weight matrices in an initial weight representation of dimension K x J, e.g. in a sparse weight representation of dimension K x J. K and J are positive integers.

[0007] A method for providing a weight representation for processing transducer input, such as transducer input data, of a hearing device is disclosed. The method is performed by an electronic device. The method comprises obtaining an initial weight representation, such as a sparse weight representation. The method comprises generating a first weight representation based on the initial weight representation, the first weight representation being indicative of neural network weights based on the transducer input data. The first weight representation comprises a first header information. The first weight representation comprises a first set of weights. The first set of weights comprises a plurality of first weight matrices, including a first primary weight matrix and a first secondary weight matrix. The first header information is indicative of a position of each of the plurality of first weight matrices in the initial, e.g. sparse, weight representation of dimension K x J. K and J are positive integers.

[0008] An advantage of the present disclosure is that the hearing device improves the efficiency of processing its obtained transducer input data. For example, energy and memory efficient computation or processing can be achieved by using sparse matrices. For example, while using sparse matrices requires an increase in storage space (e.g. for storing the matrix header information), this format quickly improves the storage efficiency even at a relatively small scale, as there is no need to store the “zeroed” sub-matrices, and thus the hearing device only needs to store the non-zero sub-matrices. For example, the use of sparse matrices described herein can be very space efficient, with an overhead of 2 bytes per sub-matrix.

[0009] The hearing device can improve the efficiency of computational calculations (e.g. encoding and decoding) performed by it, thereby improving the processing efficiency by using forward pointing header information. For example, the header information in the matrices described herein can describe the previous group of matrices, rather than the one immediately following it. For example, when the calculation process starts, two header information are processed sequentially, which in turn facilitates pipelining at the vector value end, thereby avoiding stalling of each sub-matrix.

[0010] An advantage of the present disclosure is that the hearing device is able to provide a compact representation from the sparse representation of neural network (e.g. DNN) weights. In hearing devices such as hearing aids, when performing machine learning processes, space is often a very limited resource, and the weights of the neural network can take up a considerable portion of the resources, such as memory and computational power. Thus, the compact representation and efficient retrieval of sparse matrices is advantageously provided in the hearing device of the present disclosure. BRIEF DESCRIPTION OF DRAWINGS

[0011] The above-mentioned and other features and advantages of the application will be more fully understood from the following detailed description of preferred embodiments, taken together with the drawings, in which:

[0012] Figure 1 is a schematic illustration of an exemplary hearing device according to the present disclosure;

[0013] Figure 2 is a flowchart of an exemplary method according to the present disclosure;

[0014] Figures 3A-3C is a schematic illustration of an exemplary data storage matrix;

[0015] Figure 4 is a schematic illustration of one or more exemplary electronic devices 400 according to the present disclosure.

[0016] LIST OF REFERENCE NUMBERS

[0017] 2 hearing device

[0018] 3 transceiver input data

[0019] 4 transceiver module

[0020] 4A antenna

[0021] 4B transceiver

[0022] 5 input transducer set

[0023] 6 first input transducer, first microphone

[0024] 6A first input transducer input signal

[0025] 8 second input transducer

[0026] 8A second input transducer input signal

[0027] 10 processor

[0028] 11 pre-processor

[0029] 12 neural network

[0030] 12A network input

[0031] 12B network output

[0032] 13 neural network weight

[0033] 14 memory

[0034] 15 data

[0035] 16 electrical output signal

[0036] 18 receiver

[0037] 20 audio output signal

[0038] 100 example method

[0039] 300 hearing device

[0040] 301 hearing device storage circuitry

[0041] 302 hearing device processor circuitry

[0042] 303 hearing device interface

[0043] 400 electronic device

[0044] 401 electronic device storage circuitry

[0045] 402 electronic device processor circuitry

[0046] 403 electronic device interface

[0047] S102 obtaining initial weight representation

[0048] S104 generating a first weight representation indicative of the neural network weights

[0049] S106 providing the first weight representation DETAILED DESCRIPTION

[0050] Various example embodiments and details will be described below with reference to the accompanying drawings. It is noted that the drawings can be drawn to scale, or not to scale, and that elements of similar structure or function can be denoted by like reference numerals across all drawings. It is also noted that the drawings are merely intended to facilitate description and are not intended as an exhaustive description of the application or as a limitation on the scope thereof. Further, the illustrated embodiments need not include all of the aspects or advantages described. Aspects or advantages described in conjunction with a particular embodiment can be practiced in any other embodiment even if not specifically stated or described.

[0051] A hearing device is disclosed. The hearing device comprises an input transducer group for providing transducer input data, the group of input transducers comprising a first input transducer for providing a first input transducer input signal as part of the transducer input data.

[0052] The hearing device comprises a processor for processing the transducer input data and providing an electrical output signal based on the transducer input data. The hearing device comprises a receiver for converting the electrical output signal into an audio output signal.

[0053] The hearing device comprises a memory having stored thereon a weight representation indicative of neural network weights based on the transducer input data. The weight representation comprises a first header information. The weight representation comprises a first set of weights. The first set of weights optionally comprises a plurality of first weight matrices, including a first primary weight matrix and a first secondary weight matrix. The first header information is indicative of a position of each of the plurality of first weight matrices in an initial weight representation of dimension K x J, e.g. in a sparse weight representation of dimension K x J. K and J are positive integers.

[0054] The hearing device can be configured to be worn on an ear of a user, can be a hearable or a hearing aid, wherein the processor is configured to compensate for a hearing loss of the user.

[0055] In some embodiments, the hearing device can be an earbud, a headphone or a hearing aid, etc.

[0056] The hearing device can be a behind-the-ear (BTE) hearing aid, an in-the-ear (ITE) hearing aid, an in-the-canal (ITC) hearing aid, a receiver-in-canal (RIC) hearing aid, a receiver-in-the-ear (RITE) hearing aid, or a microphone-and-receiver-in-the-ear (MaRIE) hearing aid. The hearing device can be a binaural hearing system. The binaural hearing system can comprise a first hearing aid and a second hearing aid, wherein the first hearing aid and / or the second hearing aid can be the hearing device disclosed herein.

[0057] The hearing device can be configured to wirelessly communicate with one or more devices, e.g. with another hearing device (e.g. as part of a binaural hearing system) and / or with one or more accessory devices (e.g. a smartphone and / or a smartwatch). The hearing device can thus comprise a transceiver module. The hearing device / transceiver module optionally comprises an antenna for converting one or more wireless input signals (e.g. a first wireless input signal and / or a second wireless input signal) into an antenna output signal. The wireless input signal can be from an external source, e.g. a companion microphone device, a wireless TV audio transmitter, and / or a distributed microphone array associated with a wireless transmitter. The wireless input signal can be from another hearing device (e.g. as part of a binaural hearing system) and / or from one or more accessory devices.

[0058] The hearing device / transceiver module optionally comprises a radio transceiver coupled to the antenna for converting the antenna output signal into a transceiver input signal / transceiver input data. Wireless signals from different external sources can be multiplexed into the transceiver input signal at the radio transceiver or provided as separate transceiver input signals on separate transceiver output terminals of the radio transceiver. The hearing device can comprise multiple antennas and / or one antenna can be configured to operate in one or more antenna modes. The transceiver input signal optionally comprises a first transceiver input signal representative of a first wireless signal from a first external source.

[0059] The hearing device comprises a set of transducers, e.g. microphones. The set of transducers can comprise one or more transducers, e.g. one or more microphones. The set of transducers comprises a first input transducer (e.g. a first microphone) for providing a first input transducer input signal and / or a second input transducer (e.g. a second microphone) for providing a second input transducer input signal. The set of transducers can comprise J transducers for providing J transducer signals, where J is an integer in the range of 1 to 10. In one or more exemplary hearing devices, the number of transducers J is 2, 3, 4, 5, or more. The set of transducers can comprise a third transducer, e.g. a third microphone, for providing a third transducer input signal.

[0060] The hearing device comprises a processor for processing input data / input signals, e.g. transceiver input signals / data and / or microphone input data / signals. The processor is optionally configured to compensate for a hearing loss of a user of the hearing device. The processor provides an electrical output signal based on the input data / input signals to the processor. For example, a transceiver input terminal of the processor can be connected to a transceiver for receiving transceiver input signals. One or more transducer input terminals of the processor can be connected to a respective one or more transducers of the set of transducers.

[0061] The hearing device, e.g. the processor, optionally comprises a pre-processor for providing network inputs to the neural network based on transducer input data. The pre-processor can be connected to the radio transceiver for providing network inputs to the network from transceiver input signals. In one or more embodiments, the pre-processor can be configured to convert transducer input data, e.g. microphone input data, and / or transceiver input data into network inputs, e.g. by conversion from one data type to a first data type, frequency transformation, logarithmic operation, or a combination thereof.

[0062] It is noted that the description and features of the hearing device functionality, e.g. the hearing device configured to access and / or store the weight representation, also apply to the method and vice versa. For example, the description of the hearing device configured to determine also applies to the method of operating the hearing device, e.g. wherein the method comprises the determining process, and vice versa.

[0063] The hearing device comprises a processor for processing transducer input data, e.g. microphone input data, and providing an electrical output signal based on the transducer input data, e.g. microphone input data. The processor can be configured to apply a neural network to a network input to provide a network output, the network input being based on the transducer input data, e.g. microphone input data, e.g. based on a first input transducer input signal and / or a second input transducer input signal. The electrical output signal is based on the network output, e.g. as a function of the network output. The network input and / or the transducer input data, e.g. microphone input data, has a first data type. The parameters, e.g. weights, of the neural network can have a second data type different from the first data type of the network input / transducer input data. The hearing device comprises a receiver for converting the electrical output signal into an audio output signal.

[0064] The first input transducer input signal may, for example, be a first microphone input signal from a first microphone. The second input transducer input signal may, for example, be a second microphone input signal from a second microphone. In other words, the first microphone input signal may constitute the first input transducer input signal, and / or the second microphone input signal may constitute the second input transducer input signal. The transducer input data, e.g. microphone input data, may be pre-processed before being provided as network input to the neural network, e.g. in a pre-processor external to or integrated in the processor.

[0065] The processor may, for example, be configured to obtain transducer input data from or via the input transducer group. In other words, the processor may, for example, be configured to receive and / or retrieve transducer input data from or via the input transducer group.

[0066] The processor may, for example, be configured to generate an electrical output signal based on the transducer input data. For example, the processor may be configured to generate an electrical output signal, e.g. comprising applying a neural network to the network input based on the transducer input data and / or transceiver input data.

[0067] The electrical output signal may, for example, be an electrical output signal of the processor. The electrical output signal may, for example, be considered as an electrical signal provided as output by the processor.

[0068] The neural network may, for example, be configured to take the transducer input data and / or pre-processed transducer input data as network input. The output of the neural network may, for example, comprise a network output. The network output may, for example, be considered as an output of the neural network. The network output may, for example, be based on the network input / transducer input data.

[0069] In some embodiments, the neural network may, for example, generate a network output based on the transducer input data / network input. In some embodiments, the network output is provided (e.g. generated) based on the transducer input data. In other words, in some embodiments, the neural network is applied to the input transducer data and / or network input, e.g. for providing (e.g. generating) a network output. In one or more embodiments, the network input is based on the input transducer data, e.g. microphone input data. The network input may be based on transceiver input data from the transceiver module.

[0070] The receiver may, for example, be configured to obtain (e.g. receive) and / or retrieve the electrical output signal, e.g. from the processor. The receiver may, for example, be configured to determine, e.g. generate, an audio output signal, e.g. based on the electrical output signal. In some embodiments, the receiver is configured to provide (e.g. output) the audio output signal.

[0071] In one or more embodiments, a hearing device is disclosed, the hearing device comprising a set of input transducers for providing transducer input data, the set of input transducers comprising: a first input transducer for providing a first input transducer input signal as part of the transducer input data; a processor for processing the transducer input data and providing an electrical output signal based on the transducer input data; and a receiver for converting the electrical output signal to an audio output signal, wherein the processor is configured to apply a neural network to a network input based on the transducer input data to provide a network output based on the transducer input data, the electrical output signal being based on the network output.

[0072] The weight is, for example, or comprises one or more fixed-point numbers. For example, a network value in the neural network can be multiplied by the weight, e.g. by a fixed-point number. The weight can be seen as, or comprise, for example, one or more fixed-point numbers, e.g. 8-bit fixed-point numbers.

[0073] In some embodiments, the weights can be stored in one or more weight matrices or weight representations. In one or more embodiments, the weight representation represents a weight matrix, e.g. one or more weight matrices of the first and / or second layer of the neural network, e.g. a 192x128 matrix. In other words, the one or more weight matrices of the first and / or second layer of the neural network can have at least 64 columns and at least 32 rows.

[0074] In one or more example hearing devices, the weight is an N-bit number, e.g. where N < 16, e.g. in the range of 4 to 8. For example, the weight can be seen as comprising one or more N-bit numbers. For example, the N-bit number can be seen as a fixed-point number, e.g. comprising N bits. N can be 4, 5, 6, 7, or 8. In one or more embodiments, N can be in the range of 8 to 16.

[0075] The N-bit number can be, for example, a 4-bit number, a 6-bit number, an 8-bit number, etc. In one or more embodiments, the number of bits of the second data type is less than the number of bits of the first data type, i.e. N can be less than M. In one or more embodiments, the difference between M and N is at least 3, e.g. 4 or 8. In one or more embodiments, the weights of the weight representation can be seen as index parameters, which can subsequently be mapped, e.g. by a lookup table, to corresponding weight values, e.g. weight values having more bits than the N-bit weights of the weight representation. In this way, for example, a 4-bit weight of the weight representation can represent an 8-bit weight value.

[0076] In one or more example hearing devices, the first input transducer is a first microphone for providing a first microphone input signal as the first input transducer input signal. The first input transducer can be an antenna, e.g., an MI coil or a BT antenna, for providing a wirelessly received audio signal as the first input transducer input signal. The first input transducer can be a vibration transducer for providing a vibration input signal as the first input transducer input signal. The vibration transducer is optionally configured to receive a body conducted signal from an ear canal.

[0077] In one or more example hearing devices, the input transducer group includes a second input transducer, e.g., a second microphone, for providing a second input transducer input signal, e.g., a second microphone input signal, as part of the transducer input data.

[0078] For example, the transducer input signal can include a first input transducer input signal provided by a first input transducer of the input transducer group and / or a second input transducer input signal provided by a second input transducer of the input transducer group.

[0079] In one or more example methods, the neural network, e.g., one or more layers of the neural network, includes K-bit multipliers, e.g., where K < 8.

[0080] The hearing device includes a memory having a weight representation stored thereon. The weight representation is indicative of weights of a neural network disclosed herein. For example, the neural network is based on transducer input data disclosed herein.

[0081] For example, the neural network applies the weights in a manner that applies the weights to a network input based on the transducer input data to provide a network output. The weights can be considered as parameters of the neural network that are associated with connections between two nodes of the neural network, e.g., across various layers of the neural network, and are indicative of a relationship between the two nodes. For example, the weights are representative of a relationship between a network input feature and a network output.

[0082] The weight representation can be considered as a representation of the weights of the neural network, e.g., a vector representation and / or a matrix representation and / or a weight matrix.

[0083] The weight representation of certain neural networks can be sparse. For example, a weight representation is considered sparse when the number of zero or null elements in the weight representation satisfies a certain criterion. For example, a weight representation is considered sparse when the number of non-zero or non-null elements of the weight representation is approximately equal to or less than the number of rows or columns, and / or when the ratio of zero-valued elements to the total number of elements (K x J for a K x J matrix) is above a threshold, and / or when the number of non-zero elements is significantly less than the total number of elements in the weight representation. In other words, for example, a sparse weight representation (e.g., a sparse matrix) is a weight representation (e.g., a matrix) that has a relatively small number of non-zero elements. In other words, a weight representation is considered sparse when the sparsity of the weight representation satisfies a certain criterion, where the sparsity is, for example, the proportion of zero or null elements in the weight representation, typically measured by the number of zero or null elements divided by the total number of elements of the weight representation.

[0084] The weight representation includes a first set of weights. The first set of weights includes or represents a plurality of first weight matrices, including a first primary weight matrix and a first secondary weight matrix. In one or more embodiments, the first set of weights is represented by the plurality of first weight matrices. In one or more embodiments, the plurality of first weight matrices includes the first primary weight matrix, e.g., Figure 3B a sub-matrix W1 as shown. In one or more embodiments, the plurality of first weight matrices can include one first secondary weight matrix, e.g., Figure 3B a sub-matrix W2 as shown.

[0085] The weight representation includes first header information. The first header information indicates a location of each of the plurality of first weight matrices in an initial weight representation of dimension K x J, where K and J are positive integers. In one or more embodiments, the size of the initial (e.g., sparse) weight representation can be 16 bytes x 16 bytes, e.g., Figure 3B a matrix as shown. In one or more embodiments, the 16 bytes x 16 bytes matrix can be subsequently split into 4 x 4 matrices, where each matrix is 4 bytes x 4 bytes. Certain sub-matrices can consist only of zero elements, thereby sparsifying the initial weight representation.

[0086] The initial weight representation can include 2 x 2, 4 x 4, 8 x 8, 16 x 16, 32 x 32, 64 x 64, 128 x 128, 256 x 256 sub-matrices, e.g. Where each sub-matrix is a matrix with a number of rows and a number of columns, e.g., a 2 x 2 or 4 x 4 matrix. In one or more embodiments, the weights / values of the sub-matrices are 8-bit, 12-bit, or 16-bit numbers.

[0087] The weight representation can be considered a compact weight representation of the initial weight representation or weight matrix, which can be sparse. The header information (e.g., the first header information) allows generating the sparse initial weight representation based on the compact representation. In other words, for example, the header information allows reconstructing the initial weight representation from the compact weight representation, where zero elements have been removed for storage efficiency.

[0088] In one or more example hearing devices, the weight representation includes second header information and a second set of weights. The second set of weights includes a plurality of second weight matrices, including a second primary weight matrix and a second secondary weight matrix. The second header information indicates a location of each of the plurality of second weight matrices in the initial (e.g., sparse) weight representation having dimensions K x J. In one or more embodiments, K and J are positive integers. As described herein, the sparse weight representation can be a matrix having dimensions 16 x 16 (e.g., 16 bytes x 16 bytes). This 16 x 16 matrix can be subdivided into 4 4 x 4 matrices of size 4 bytes x 4 bytes. For example, Figure 3C An example second header information H_2 is shown.

[0089] In one or more example hearing devices, the first header information includes a plurality of location parameters, each indicating a row and a column of a first weight matrix of the plurality of first weight matrices. For example, Figure 3C This situation is shown.

[0090] In one or more example hearing devices, the processor is configured to obtain the first header information and / or the second header information.

[0091] In one or more example hearing devices, the processor is configured to process the plurality of first weight matrices according to the first header information. In one or more example hearing devices, processing the plurality of first weight matrices according to the first header information includes loading the plurality of first weight matrices into a plurality of multipliers of a neural network.

[0092] In one or more example hearing devices, the processor is configured to obtain the third header information after processing the plurality of first weight matrices. In one or more embodiments, the processor is configured to obtain the third header information after processing the plurality of first weight matrices, and before processing the third header information.

[0093] In one or more example hearing devices, the processor is configured to determine whether further weight matrices are to be processed. In one or more embodiments, determining whether further weight matrices are to be processed can be based on the at least one header information. For example, the header information can indicate that no further weight matrices are to be processed. For example, Figure 3C The shown header information H_1 can indicate that further weight matrices are to be processed. In one or more embodiments, Figure 3CH_4 in the header information can indicate that no other weight matrix needs to be processed, e.g., by indicating zero or blank. The header information can indicate whether there are other weight matrices that need to be processed, in a different way than provided in the examples described above.

[0094] In one or more example hearing devices, the processor is configured to process the weight matrix indicated by reading the header information in accordance with a determination that no other weight matrix needs to be processed. In one or more embodiments, the processor is configured to process the weight matrix indicated by reading the header information until all weight matrices have been processed, e.g., until the processor determines based on the header information that no other weight matrix needs to be processed.

[0095] In one or more example hearing devices, the processor is configured to read header information indicating other weight matrices in accordance with a determination that other weight matrices need to be processed.

[0096] In one or more example hearing devices, the weights are N bits in number, where N < 8.

[0097] In one or more example hearing devices, the neural network is a noise cancellation DNN, an environmental classification DNN, or a feedback cancellation DNN.

[0098] In one or more example hearing devices, the neural network comprises one or more of: a noise cancellation deep DNN, an environmental classification DNN, and a feedback cancellation DNN.

[0099] A noise cancellation deep neural network (DNN) can be considered a DNN configured for noise cancellation, e.g., noise reduction. For example, the noise cancellation DNN can be configured to cancel, e.g., reduce, noise present in transducer input data.

[0100] An environmental classification DNN can be considered a DNN configured for environmental classification. For example, the environmental classification DNN can be configured to classify an environment in which the hearing device is located or operates. For example, when the hearing device is on an airplane, the environmental classification DNN can be configured to classify the environment as an airplane environment. This can advantageously enable the hearing device to tailor or control other processing, e.g., one or more of noise cancellation, beamforming, speech pickup, feedback cancellation, and hearing compensation, to provide better sound quality for the hearing device, e.g., for a user of the hearing device, by improving the quality and clarity of audio output signals provided by the receiver.

[0101] A feedback cancellation DNN can be considered a DNN configured for feedback cancellation, e.g., feedback reduction. For example, the feedback cancellation DNN can be configured to cancel or reduce feedback present in transducer input data.

[0102] In some embodiments, processing the transducer input data comprises applying one or more of: a noise cancelling DNN, an environmental classification DNN, and a feedback cancelling DNN, e.g., for providing the network output based on the transducer input data.

[0103] The neural network of the hearing device may, for example, comprise a recurrent neural network (RvNN).

[0104] The neural network can be a multi-layer neural network. The neural network can comprise one or more fully connected layers. In one or more embodiments, the neural network comprises a first layer, a second layer, and optionally a third layer. The neural network can comprise at least three layers. The neural network can comprise less than eight layers. In one or more embodiments, the neural network is a five-layer recurrent neural network.

[0105] In one or more embodiments, the neural network is a multi-layer recurrent neural network.

[0106] The neural network can be a recurrent neural network (RNN). The neural network can comprise one or more gated recurrent unit (GRU) layers, e.g., one or more GRU type 1 layers and / or one or more GRU type 2 layers. The neural network can comprise one or more long short-term memory (LSTM) layers.

[0107] In one or more embodiments, the neural network comprises 2 to 6 GRU layers, e.g., 3, 4, or 5 GRU layers, and optionally a fully connected layer.

[0108] The neural network can be defined by the number of layers and / or the number of nodes per layer. The weights or parameters of a layer may, for example, be considered as an indicator of the strength of the connection between two or more nodes in the neural network.

[0109] One or more layers of the neural network, e.g., one or more or all of the first layer, the second layer, the third layer, and the fourth layer, can be a GRU layer, e.g., a GRU type 2 layer or a GRU type 1 layer. Each layer of the neural network has an input and an output.

[0110] In one or more embodiments, one or more or all of the first layer, the second layer, the third layer, and the fourth layer, comprises one or more elements applied to the input of the layer.

[0111] A layer, e.g., one or more or all of the first layer, the second layer, the third layer, and the fourth layer of the neural network, comprises one or more elements, including a first element, an optional second element, and an optional third element.

[0112] The neural network has weights applied in different layers of the neural network. These weights include: a first weight, also denoted as w_1_i1, applied to a first element of one or more layers of the neural network; an optional second weight, also denoted as w_2_i2, applied to a second element of one or more layers of the neural network; an optional third weight, also denoted as w_3_i3, applied to a third element in one or more layers of the neural network, where i1, i2, i3 are index numbers.

[0113] A layer of the neural network can for example be seen as a layer of nodes of the neural network, e.g. a layer of nodes at a given depth of the neural network.

[0114] In one or more exemplary hearing devices, the first input transducer is a first microphone for providing a first microphone input signal as the first input transducer input signal. For example, as shown in Figure 1 In one or more exemplary hearing devices, the microphone group comprises a second input transducer for providing a second input transducer input signal as part of the transducer input data.

[0115] The present disclosure provides a method for providing a weight representation for processing transducer input of a hearing device. The method is performed by an electronic device.

[0116] The method comprises obtaining an initial weight representation.

[0117] In one or more exemplary methods, the initial weight representation is sparse. For example, the initial weight representation is sparse when a sparsity parameter of the initial weight representation meets a certain criterion, e.g. when the number of zero or empty elements of the weight representation meets the criterion, e.g. 20% or more, e.g. 12% or more, e.g. 10% or more. For example, the weight representation is considered sparse when the number of non-zero or non-empty elements of the weight representation is equal to or less than the number of rows or columns, and / or when the ratio of zero value elements to the total number of elements (KxJ for a KxJ matrix) is above a threshold value (e.g. 20% or more, e.g. 12% or more, e.g. 10% or more), and / or when the number of non-zero elements is less than the total number of elements in the weight representation. For example, when the initial weight representation does not meet the criterion and is thus not sparse, there is no need to generate the first weight representation.

[0118] The method comprises generating a first weight representation based on the initial weight representation, the first weight representation indicating weights of a neural network based on the transducer input data.

[0119] The first weight representation comprises a first set of weights. The first set of weights comprises a plurality of first weight matrices, including a first primary weight matrix and a first secondary weight matrix.

[0120] The first weight representation comprises a first header information. The first header information indicates a position of each of the plurality of first weight matrices in the initial weight representation of dimension K x J. K and J are positive integers. The header information, e.g. the first header information, allows generating a sparse initial weight representation based on the compact representation. In other words, e.g. the header information allows reconstructing the initial weight representation from the compact weight representation in which zero elements have been removed to improve storage efficiency.

[0121] As the first weight representation provides a more compact representation than the initial weight representation, the first weight representation is e.g. transmitted to the hearing device for storage in a memory.

[0122] In one or more example methods, the first weight representation comprises a second header information and a second set of weights. In one or more example methods, the second set of weights comprises a plurality of second weight matrices, including a second primary weight matrix and a second secondary weight matrix.

[0123] In one or more example methods, the second header information indicates a position of each of the plurality of second weight matrices in the initial weight representation of dimension K x J. In one or more example methods, K and J are positive integers.

[0124] In one or more example methods, the first header information comprises a plurality of position parameters, each position parameter indicating a row and a column of a first weight matrix of the plurality of first weight matrices.

[0125] In one or more example methods, the method comprises providing, e.g. transmitting, the first weight representation to, e.g. a hearing device. For example, the first weight representation is transmitted to the hearing device for storage in a memory of the hearing device.

[0126] Figure 1 An exemplary hearing device 2 according to the present disclosure is schematically illustrated. The hearing device 2 optionally comprises a transceiver module 4 comprising an antenna 4A and a transceiver 4B for wireless communication with one or more external devices, e.g. a mobile phone and / or other hearing devices. The transceiver 4B is configured to provide transceiver input data 3 to the processor 10 of the hearing device 2, e.g.

[0127] The hearing device 2 comprises an input transducer group 5 for providing transducer input data, the group of input transducer group 5 comprising a first input transducer 6, e.g. a first microphone, for providing a first input transducer input signal 6A as part of the transducer input data. Optionally, the group of input transducer group 5 comprises a second input transducer 8, e.g. a second microphone, for providing a second input transducer input signal 8A as part of the transducer input data. In one or more exemplary hearing devices, the first input transducer 6 is a first microphone for providing a first microphone input signal as the first input transducer input signal 6A. In one or more exemplary hearing devices, the group of microphones comprises a second input transducer 8 for providing a second input transducer input signal 8A as part of the transducer input data.

[0128] The hearing device 2 comprises a processor 10 for processing transducer input data, e.g. the first input transducer input signal 6A and optionally the second input transducer input signal 8A, and providing an electrical output signal 16 based on the transducer input data. In one or more embodiments, the hearing device 2 comprises a receiver 18 for converting the electrical output signal 16 into an audio output signal 20. The hearing device 2, e.g. the processor 10, optionally comprises a pre-processor 11 for converting input data, e.g. transducer input data from the input transducer group 5 and / or transceiver input data from the transceiver module 4, into a network input 12A. The processor 10 is configured to apply a neural network 12 to the network input 12A based on the transducer input data and / or the transceiver input data to provide a network output 12B based on the network input 12A. The network input 12A is based on the first input transducer input signal 6A and optionally the second input transducer input signal 8A, while the electrical output signal 16 is based on the network output 12B. For example, the network output 12B can be used as a control input for processing the input signals 6A and 8B, e.g. in a post-processor (not shown) processing according to the network output 12B. In one or more embodiments, the network output 12B can be converted in a post-processor to form the electrical output signal 16.

[0129] The hearing device 2 comprises a memory 14, e.g. configured to communicate data 15, e.g. weights 13 and / or weight representations 21, with the processor 10 of the hearing device 2.

[0130] In one or more embodiments, the memory 14 has stored thereon a weight representation 21 indicative of a certain weight of a plurality of weights of a neural network based on transducer input data. In one or more embodiments, the weight representation 21 is considered a compact weight representation, e.g. generated based on a sparse initial weight representation. The sparse initial weight representation is e.g. not stored in the memory, but can be generated based on the weight representation 21 and temporarily stored for processing.

[0131] The weight representation 21 comprises a first set of weights 21 A. The first set of weights 21 A comprises a plurality of first weight matrices, including a first primary weight matrix and a first secondary weight matrix (e.g., as shown in Figure 3B In one or more example hearing devices, the weights 13 are N-bit numbers, where N < 8.

[0132] The weight representation 21 comprises a first header 21 B. The first header 21 B indicates a position of each of the plurality of first weight matrices in the initial weight representation of dimension K x J. K and J are positive integers.

[0133] In one or more example hearing devices, the first header 21 B comprises a plurality of position parameters, each position parameter indicating a row and a column of one of the plurality of first weight matrices.

[0134] In one or more example hearing devices, the processor 10 is configured to obtain the first header 21 B. In one or more example hearing devices, the processor 10 is configured to process the plurality of first weight matrices in accordance with the first header 21 B.

[0135] In one or more example hearing devices, processing the plurality of first weight matrices in accordance with the first header 21 B comprises loading the plurality of first weight matrices into a plurality of multipliers of the neural network 12.

[0136] The memory 14 may, for example, be configured to store the transducer input data, the weight representation 21 comprising the first set of weights 13 (optionally floating point numbers, fixed point numbers, M-bit numbers, N-bit numbers), the K-bit multiplier, the J-bit index parameter, and / or the neural network in a portion of the memory.

[0137] The operations of the processor 10 can be embodied in the form of executable logic routines, e.g., lines of code, software programs, etc., which are stored on a non-transitory computer readable medium, e.g., the memory 14, and executed by the processor 10.

[0138] In one or more example hearing devices, the weight representation comprises a second header and a second set of weights. The second set of weights comprises a plurality of second weight matrices, including a second primary weight matrix and a second secondary weight matrix. The second header indicates a position of each of the plurality of second weight matrices in the sparse weight representation of dimension K x J. K and J are positive integers. In one or more example hearing devices, the processor 10 is configured to obtain the first header 21 B and / or the second header.

[0139] In one or more example hearing devices, the processor 10 is configured to obtain a third header after processing the plurality of first weight matrices.

[0140] In one or more example hearing devices, the processor 10 is configured to determine whether to process other weight matrices. In one or more example hearing devices, the processor 10 is configured to process the weight matrix indicated by the header information in accordance with a determination not to process other weight matrices.

[0141] In one or more example hearing devices, the processor 10 is configured to read header information indicating other weight matrices in accordance with a determination that other weight matrices need to be processed. For example, as shown in Figure 3C

[0142] In one or more example hearing devices, the neural network 12 is a noise cancellation DNN, an environmental classification DNN, and / or a feedback cancellation DNN.

[0143] Furthermore, the operation of the hearing device 2 can be seen as a method which the hearing device 2 is configured to perform. Furthermore, while the described functions and operations can be implemented in software, these functions can also be performed by dedicated hardware or firmware, or some combination of hardware, firmware, and / or software.

[0144] The memory 14 can be one or more of a buffer, a flash memory, a hard drive, a removable media, a volatile memory, a non-volatile memory, a random access memory (RAM), or other suitable device. In a typical configuration, the memory 14 can include a non-volatile memory for long-term data storage and a volatile memory used as system memory for the processor 10. The memory 14 can exchange data with the processor 10 over a data bus (not shown). There can also be a control line and address bus (not shown in FIG. 1) between the memory 14 and the processor 10. The memory 14 is considered a non-transitory computer readable medium. Figure 1

[0145] A flowchart of an example method 100 for providing weight representations to process transducer inputs of a hearing device is disclosed. The method 100 can be performed by a hearing device (e.g., the hearing device 2 in Figure 2 Figure 1 A method 100 for providing first weight representations to process transducer inputs of a hearing device is disclosed. The method 100 is performed by an electronic device.

[0146] A method 100 for providing first weight representations to process transducer inputs of a hearing device is disclosed. The method 100 is performed by an electronic device.

[0147] ​​The method 100 comprises obtaining S102 an initial weight representation. In one or more embodiments, the initial weight representation is sparse. For example, the initial weight representation is sparse when a sparsity parameter of the initial weight representation meets a certain criterion, e.g. when the number of zero or empty elements of the weight representation meets the criterion, e.g. 20% or more, 12% or more, 10% or more. For example, the weight representation is considered sparse when the number of non-zero or non-empty elements of the weight representation is equal to or less than the number of rows or columns, and / or when the ratio of zero value elements to the total number of elements (KxJ for a KxJ matrix) is above a threshold (e.g. 20% or more, e.g. 12% or more, e.g. 10% or more), and / or when the number of non-zero elements is less than the total number of elements in the weight representation.

[0148] The method 100 comprises generating S104 a first weight representation based on the initial weight representation, the first weight representation being indicative of weights of a neural network based on transducer input data. The first weight representation comprises a first set of weights. The first set of weights comprises a plurality of first weight matrices, including a first primary weight matrix and a first secondary weight matrix.

[0149] The first weight representation comprises a first header information. The first header information is indicative of a position of each of the plurality of first weight matrices in the first weight representation having a dimension of KxJ. K and J are positive integers.

[0150] In one or more example methods, the first weight representation comprises a second header information and a second set of weights. In one or more example methods, the second set of weights comprises a plurality of second weight matrices, including a second primary weight matrix and a second secondary weight matrix. In one or more example methods, the second header information is indicative of a position of each of the plurality of second weight matrices in the initial weight representation having a dimension of KxJ. In one or more example methods, K and J are positive integers.

[0151] In one or more example methods, the first header information comprises a plurality of position parameters, each position parameter being indicative of a row and a column of one of the plurality of first weight matrices.

[0152] In one or more example methods, the method 100 comprises providing S106 (e.g. transmitting to a hearing device) the first weight representation.

[0153] Figure 3A -C schematically illustrates example header information, initial weight representations and weight representations according to the present disclosure.

[0154] Figure 3AAn example header information is depicted. In one or more examples described herein, a network can be trained such that the weight representation (i.e., the so-called weight matrix) becomes sparse. As in one or more examples described herein, a sparse matrix refers to a matrix in which a plurality of 4x4 sub-matrices are zero or empty, and thus only the non-zero or non-empty matrices are encoded.

[0155] An initial (e.g., sparse) matrix can be encoded by adding 8 bytes of header information to a set of 4 matrices or sub-matrices. The header information can take the format as shown in Figure 3A where Rn represents the row position n of a 4x4 matrix, and Cn represents the column position of a 4x4 matrix, and thus (1,1) in the matrix is at (4xRn, 4xCn). Thus, as shown in Figure 3A R1 and C1 represent the position (row and column) of the first sub-matrix W1 (4x4 matrix), R2 and C2 represent the position (row and column) of the second sub-matrix W2 (4x4 matrix), and so on.

[0156] In one or more embodiments, the following relationship can be satisfied if N is the number of rows divided by 4 (number of sub-matrix rows):

[0157] R n+1 *N+C n+1 ≥R n *N+C n

[0158] Figure 3B An example of an initial weight representation is provided. Figure 3B A 16x16 matrix is depicted that is split into 4x4 sub-matrices. For clarity, the 16x16 matrix contains weight matrices W1-W11 as well as 502, 504, 506, 508, and 510. The 4x4 first weight matrix, for example, includes a first primary weight matrix 502, a first secondary weight matrix W1, a first tertiary weight matrix W3, and a first quaternary weight matrix W4. Matrices W1-W11 represent non-zero sub-matrices. There are a total of 11 non-zero sub-matrices. Matrices 502-510 represent zeroed sub-matrices or empty sub-matrices.

[0159] Figure 3C An example weight representation of a sparse initial weight representation in 8-bit format is depicted in Figure 3B Figure 3B The initial sparse weight representation of Figure 3C is represented by a weight representation with header information and non-zero matrices. The weight representation containing Figure 3C the header information (e.g., 8-bit format) is a more compact representation that allows for regeneration and processing of the sparse weight representation of Figure 3B . Figure 3C The schema of Figure 3C ​are associated.

[0160] Each group of weights represented by 4 sub-matrices uses one header, for example the first header H_1 is used to retrieve the first group of weights by indicating Figure 3B the position of the first weight matrix W1, W2, W3 and W4 in the initial weight representation. For example, the second header H_2 is used to retrieve the second group of weights by indicating Figure 3B the position of the second weight matrix W5, W6, W7 and W8 in the initial weight representation.

[0161] In one or more embodiments, for example, as shown in Figure 3C H_1 and H_2 are appended and processed consecutively in a back-to-back manner (e.g., immediately after the headers) to help the memory side with pipelining. In other words, the processor processes H_1 and H_2 before loading the weights of W1, W2, W3, W4. In other words, the headers describe, for example, the matrices ahead of a group. In one or more embodiments, this means that when the computation starts, the two headers are processed sequentially. In one or more embodiments, this is to help the vector side with pipelining, as it can help avoid stalling for each matrix Wi.

[0162] For example, the first header H_1 is associated with the first matrix W1, W2, W3, W4. Since the matrix 502 is zeroed or empty, H_1 contains, for example, the position parameters of row PP_1_1_r = 1 and column PP_1_1_c = 2, which indicates that the first main matrix 502 of the initial weight representation is zeroed and jumps to W1 located at row 1, column 2. The position parameters can be seen as addresses for retrieving / providing the weights. For example, starting from the top-left corner of the weight representation, the first header H_1 contains the position parameters of W1 (e.g., W1 in Figure 3B ) to W4 (e.g., W4 in Figure 3B ). Each position parameter contains a row pointer and a column pointer, for example, PP_1_1_r and PP_1_1_c, which indicate the first primary position parameter PP_1_1_r of the sub-matrix W1 row position (e.g., 1) (see Figure 3B ) and the first primary position parameter PP_1_1_c of the sub-matrix W1 column position (e.g., 2) (see Figure 3B ).

[0163] The first secondary position parameter of H_1 contains a row pointer PP1_2_r and a column pointer PP_1_2_c, which indicate the first secondary position parameter of the sub-matrix W2 row position and the first secondary position parameter of the sub-matrix W2 column position. For example, as shown in Figure 3BAs shown, (PP1_2_r, PP1_2_c) = (1, 4). In one or more embodiments, this position parameter combination points to the first column and fourth row; in other words, PP1_2 points to the sub-matrix labeled W2, e.g. Figure 3B W2 in FIG. 1.

[0164] The first tertiary position parameter of the first header H_1 contains a row pointer PP1_3_r and a column pointer PP_1_3_c, which indicate the first tertiary position parameter of the row location of the sub-matrix W3 and the first tertiary position parameter of the column location of the sub-matrix W3, respectively. For example, (PP1_3_r, PP1_3_c) = (2, 1), as shown in Figure 3B In one or more embodiments, this position parameter combination points to the first column and fourth row; in other words, PP1_2 points to W3, e.g. Figure 3B W3 in FIG. 1. This cycle continues, with each position parameter combination pointing to a location in the 16x16 matrix Figure 3C

[0165] The first quaternary position parameter of H_1 contains a row pointer PP1_4_r and a column pointer PP_1_4_c, which indicate the first quaternary position parameter of the row location of the sub-matrix W4 and the first quaternary position parameter of the column location of the sub-matrix W4, respectively. For example, (PP_1_4_r, PP_1_4_c) = (2, 2).

[0166] The second header H_2 contains second position parameters pointing to the sub-matrices W5-W8. The second primary position parameter pointing to W5 contains a row pointer PP_2_1_r and a column pointer PP_2_1_c, which indicate the second primary position parameter of the row location of the sub-matrix W5 and the second primary position parameter of the column location of the sub-matrix W5, respectively. For example, (PP_2_1_r, PP_2_1_c) = (2, 3).

[0167] The second secondary position parameter pointing to W6 contains a row pointer PP_2_2_r and a column pointer PP_2_2_c, which indicate the second secondary position parameter of the row location of the sub-matrix W6 and the second secondary position parameter of the column location of the sub-matrix W6, respectively. For example, (PP_2_2_r, PP_2_2_c) = (2, 4).

[0168] The second tertiary position parameter pointing to W7 contains a row pointer PP_2_3_r and a column pointer PP_2_3_c, which indicate the second tertiary position parameter of the row location of the sub-matrix W7 and the second tertiary position parameter of the column location of the sub-matrix W7, respectively. For example, (PP_2_3_r, PP_2_3_c) = (3, 1).

[0169] ​The second quaternary position parameter pointing to W8 contains a row pointer PP_2_4_r and a column pointer PP_2_4_c, pointing to the second quaternary position parameter of the row position of the sub-matrix W8 and the second quaternary position parameter of the column position of the sub-matrix W8, respectively. For example, (PP_2_4_r, PP_2_4_c) = (3, 3).

[0170] The third header information H_3 contains a primary position parameter pointing to the matrices W9-W11. The third primary position parameter pointing to W9 contains a row pointer PP_3_1_r and a column pointer PP_3_1_c, pointing to the third primary position parameter of the row position of the sub-matrix W9 and the third primary position parameter of the column position of the sub-matrix W9, respectively. For example, (PP_3_1_r, PP_3_1_c) = (3, 4).

[0171] The third secondary position parameter pointing to W10 contains a row pointer PP_3_2_r and a column pointer PP_3_2_c, pointing to the third secondary position parameter of the row position of the sub-matrix W10 and the third secondary position parameter of the column position of the sub-matrix W10, respectively. For example, (PP_3_2_r, PP_3_2_c) = (4, 1).

[0172] The third tertiary position parameter pointing to W11 contains a row pointer PP_3_3_r and a column pointer PP_3_3_c, pointing to the third tertiary position parameter of the row position of the sub-matrix W11 and the third tertiary position parameter of the column position of the sub-matrix W11, respectively. For example, (PP_3_3_r, PP_3_3_c) = (4, 4).

[0173] The third quaternary position parameter is zero or empty, indicating that all sub-matrices are already contained in the header information H_1, H_2, H_3.

[0174] The fourth header information H_4 contains a row of empty elements, represented by “0”. As described herein, when a device (e.g., a processor of a hearing device) determines that no further weight matrices need to be processed (e.g., when the header information is empty or null).

[0175] Each of the sub-matrices W1-W11 contains a matrix of one or more respective weights. For example, W1 contains 16 bytes, from left to right: (0, 0), (0, 1), (0, 2), (0, 3), (1, 0), (1, 1), (1, 2), (1, 3), (2, 0), (2, 1), (2, 2), (2, 3), (3, 0), (3, 1), (3, 2), and (3, 3). Each of W2-W11 repeats this operation, each matrix having its own weights. In one or more embodiments, the position parameter (0, 0) (e.g., in H_3 and H_4) represents an end marker, and there is no associated matrix to evaluate.

[0176] The weight representation shown in the examples disclosed herein is very efficient in terms of memory storage and space. The overhead for each sub-matrix is 2 bytes, so for an 8-bit representation, 12% of the sub-matrices are compensated for when they are 0 or empty; and for a 4-bit representation, 20% sparsity is compensated for. Figure 3B For example,

[0177] The initial sparse representation of Figure 3C occupies 256 bytes, while the weight representation of Figure 4 occupies 208 bytes, with no loss of information or sparsity information.

[0178] Figure 2 An electronic device 400 according to one or more examples of the disclosure is schematically illustrated. The electronic device 400 comprises a storage circuit 401. The electronic device 400 comprises a processor circuit 402. The electronic device 400 comprises an interface 403. The electronic device 400 can be configured to perform any of the processes disclosed in Figure 2 (e.g. steps S102, S104 and S106 in Figure 1 ). In other words, the electronic device 400 can be configured to provide a weight representation for processing a transducer input of a hearing device. The electronic device 400 can be an accessory device configured to communicate with a hearing device (e.g. a hearing device as disclosed herein, e.g. a hearing device in a hearing system as illustrated in Figure 4 ).

[0179] The storage circuit 401 can be one or more of a buffer, a flash memory, a hard disk, a removable media, a volatile memory, a non-volatile memory, a random access memory (RAM), or other suitable device. In a typical configuration, the memory 14 can include a non-volatile memory for long-term data storage and a volatile memory used as system memory for the processor circuit 402. The storage circuit 401 can exchange data with the processor circuit 402 over a data bus (not shown). There can also be control lines and an address bus (not shown in ​ ) between the storage circuit 401 and the processor circuit 402. The storage circuit 401 is considered a non-transitory computer readable medium.

[0180] The use of the terms “first,” “second,” “third,” “fourth,” “one,” “two,” “three,” etc., does not imply any particular order but are used for identification purposes only. Further, the use of the terms “first,” “second,” “third,” “fourth,” “one,” “two,” “three,” etc., also does not indicate any order or importance, but is used to distinguish one element from another. Note that the terms “first,” “second,” “third,” “fourth,” “one,” “two,” “three,” etc., are used herein and elsewhere simply for labeling purposes only and do not indicate any particular spatial or temporal order.

[0181] Further, the labeling of a first element does not imply the presence of a second element or that a second element is required.

[0182] It is to be understood that some of the blocks of the diagrams, and combinations of those blocks, can be implemented by various examples. It is to be understood that the modules or operations included in the solid lines include modules or operations included in the broadest examples. The modules or operations included in the dashed lines include examples that can be included in, be a part of, or be in addition to the modules or operations of the solid line examples. It should be understood that the operations need not necessarily be performed in the order shown. Further, it should be understood that not all operations are necessarily performed.

[0183] It should be noted that the word “comprising” is not necessarily limited to the presence of only the enumerated elements or steps.

[0184] It should be noted that the word “a” or “an” preceding an element does not exclude the presence of more than one of that element.

[0185] It should also be noted that any reference signs do not limit the scope of the claims, example embodiments can be realized at least in part by hardware and software, and several “means,” “units” or “devices” can be represented by the same item of hardware.

[0186] The various example methods, devices, and systems described herein are described in the general context of method steps and processes, which can be implemented in one aspect by a computer program product, embodied in a computer-readable medium including computer-executable instructions, such as program code, for example. Computer-readable media are media that can include, without limitation, removable and non-removable storage devices including volatile and non-volatile memory devices, such as read-only memory (ROM), random-access memory (RAM), optical discs, digital versatile discs (DVDs), and the like. Generally, program modules can include routines, programs, objects, components, data structures, etc. that perform specified tasks or implement specified abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of program code for executing steps of the methods described herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps or processes.

[0187] While the relevant features have been illustrated and described, it is to be understood that the features are not intended to limit the application, and that changes and modifications can be effected therein by those skilled in the art without departing from the scope of the application. Accordingly, the specification and drawings are to be regarded in an illustrative, rather than a restrictive sense. The application is intended to cover all alternatives, modifications, and equivalents.

Claims

1. A hearing device, comprising: An input transducer group for providing transducer input data, the input transducer group comprising: a first input transducer for providing a first input transducer input signal as part of the transducer input data; A processor for processing the transducer input data and providing an electrical output signal based on the transducer input data; Receiver, for converting the electrical output signal into an audio output signal; and A memory storing weight representations that indicate neural network weights based on the transducer input data, wherein the weight representations include: The first piece of information, and The first set of weights includes multiple first weight matrices, wherein the multiple first weight matrices include a first primary weight matrix and a first secondary weight matrix. The first header information indicates the position of each of the plurality of first weight matrices in an initial weight representation of dimension K×J, where K and J are positive integers.

2. The hearing device according to claim 1, wherein, The weight representation includes second head information and a second set of weights, wherein the second set of weights includes a plurality of second weight matrices, the plurality of second weight matrices including a second primary weight matrix and a second secondary weight matrix, wherein the second head information indicates the position of each of the plurality of second weight matrices in an initial weight representation of dimension K×J, where K and J are positive integers.

3. The hearing device according to claim 2, wherein, The first head information includes multiple position parameters, each position parameter indicating the row and column of the first weight matrix among the multiple first weight matrices.

4. The hearing device according to any one of claims 2 to 3, wherein the processor is configured to: acquire the first head information and the second head information; Process the plurality of first weight matrices according to the first header information; and After processing the multiple first weight matrices, the third head information is obtained.

5. The hearing device according to claim 4, wherein, Processing the plurality of first weight matrices according to the first header information includes: loading the plurality of first weight matrices into the plurality of multipliers of the neural network.

6. The hearing device according to any one of the preceding claims, wherein, The processor is configured to determine whether other weight matrices need to be processed.

7. The hearing device according to claim 6, wherein, The processor is configured to process the weight matrix indicated by the read header information based on the determination that the other weight matrices do not need to be processed.

8. The hearing device according to any one of claims 6 to 7, wherein, The processor is configured to read header information indicating the other weight matrices based on the determination that the other weight matrices need to be processed.

9. The hearing device according to any one of the preceding claims, wherein the weight is an N-digit number, where N≤8.

10. The hearing device according to any one of the preceding claims, wherein the neural network is a noise cancellation DNN, an environment classification DNN, or a feedback cancellation DNN.

11. The hearing device according to any one of the preceding claims, wherein, The first input transducer is a first microphone, used to provide the first microphone input signal as the first input transducer input signal.

12. The hearing device according to any one of the preceding claims, wherein, The input transducer group includes a second input transducer for providing a second input transducer input signal as part of the transducer input data.

13. A method performed by an electronic device, the method being used to provide a first weighted representation for processing transducer inputs of a hearing device, the method comprising: Obtain the initial weight representation; Based on the initial weight representation, a first weight representation indicating the neural network weights based on the transducer input data is generated, wherein the first weight representation includes: The first piece of information, and The first set of weights includes multiple first weight matrices, wherein the multiple first weight matrices include a first primary weight matrix and a first secondary weight matrix. The first header information indicates the position of each of the plurality of first weight matrices in the initial weight representation of dimension K×J, where K and J are positive integers.

14. The method according to claim 13, wherein, The first weight representation includes second head information and a second set of weights, wherein the second set of weights includes a plurality of second weight matrices, the plurality of second weight matrices including a second primary weight matrix and a second secondary weight matrix, wherein the second head information indicates the position of each of the plurality of second weight matrices in an initial weight representation of dimension K×J, where K and J are positive integers.

15. The method of claim 14, wherein the first head information includes a plurality of position parameters, each position parameter indicating a row and column of a first weight matrix among the plurality of first weight matrices.