WO2020227968A1 - Adversarial multi-binary neural network for multi-class classification - Google Patents

Adversarial multi-binary neural network for multi-class classification Download PDF

Info

Publication number
WO2020227968A1
WO2020227968A1 PCT/CN2019/087032 CN2019087032W WO2020227968A1 WO 2020227968 A1 WO2020227968 A1 WO 2020227968A1 CN 2019087032 W CN2019087032 W CN 2019087032W WO 2020227968 A1 WO2020227968 A1 WO 2020227968A1
Authority
WO
WIPO (PCT)
Prior art keywords
class
binary
classifier
objects
classification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2019/087032
Other languages
French (fr)
Inventor
Kun Han
Haiyang Xu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Didi Infinity Technology and Development Co Ltd
Original Assignee
Beijing Didi Infinity Technology and Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Didi Infinity Technology and Development Co Ltd filed Critical Beijing Didi Infinity Technology and Development Co Ltd
Priority to CN201980096336.3A priority Critical patent/CN113826116A/en
Priority to PCT/CN2019/087032 priority patent/WO2020227968A1/en
Priority to US17/014,256 priority patent/US11983492B2/en
Publication of WO2020227968A1 publication Critical patent/WO2020227968A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/355Creation or modification of classes or clusters
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2132Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on discrimination criteria, e.g. discriminant analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning

Definitions

  • the present disclosure relates to artificial intelligence (AI) systems and methods for classifying a set of objects, and more particularly to, AI systems and methods for multi-class classification using adversary multi-binary neural networks.
  • AI artificial intelligence
  • Text classification techniques have gained increasing popularity in many applications. For example, a transportation service platform may use a text classification system to detect safety issues based on communications between users and custom service.
  • Text classification can be performed using a natural language processing (NLP) method, in which labels are assigned to a given text object such as a word, sentence, or paragraph.
  • NLP natural language processing
  • Traditional text classification methods design a set of hand-crafted expert features, and then use appropriate machine learning classifiers to classify text objects.
  • Recent methods mainly focus on deep learning, using models such as convolutional neural networks (CNNs) and recurrent neural networks (RNNs) to automatically learn text representations and integrating text representation learning and classification into a unified framework to accomplish more accurate classification results.
  • CNNs convolutional neural networks
  • RNNs recurrent neural networks
  • Multi-class classification class ifies objects into multiple classes (e.g., assigning multiple labels) , and faces additional challenges such as distinguishing features that are specific to each class and features that are shared by multiple classes. The latter tends to mislead the multi-class classifier to produce inaccurate classification results.
  • Existing methods lack sufficient measures to account for the adverse effect associated with such shared features.
  • Embodiments of the disclosure address the above problem by providing improved artificial intelligence systems and methods for multi-class classification using adversary multi-binary neural networks.
  • embodiments of the disclosure provide a multi-class classification system.
  • the system includes at least one processor and at least one non-transitory memory storing instructions that, when executed by the at least one processor, cause the system to perform operations.
  • the operations include applying a multi-class classifier to classify a set of objects into multiple classes and applying a plurality of binary classifiers to the set of objects.
  • the plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes.
  • the operations also include jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
  • embodiments of the disclosure also provide a multi-class classification method.
  • the method includes applying a multi-class classifier to classify a set of objects into multiple classes and applying a plurality of binary classifiers to the set of objects, wherein the plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes.
  • the method further includes jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
  • embodiments of the disclosure further provide a non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one processor, causes the processor to perform a method for classifying a set of objects.
  • the method includes applying a multi-class classifier to classify the set of objects into multiple classes and applying a plurality of binary classifiers to the set of objects.
  • the plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes.
  • the method further includes jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
  • FIG. 1 illustrates a schematic diagram of an exemplary system for classifying a set of objects, according to embodiments of the disclosure.
  • FIG. 2 illustrates a schematic diagram of an exemplary implementation of the system shown in FIG. 1, according to embodiments of the disclosure.
  • FIG. 3 illustrates a flowchart of an exemplary method for classifying a set of objects, according to embodiments of the disclosure.
  • FIG. 1 illustrates a block diagram of an exemplary system 100 for classifying a set of objects, according to embodiments of the disclosure.
  • the set of objects may be textual objects, such as sentences, words, etc.
  • system 100 may be used to classify comments and/or reviews (e.g., movie reviews, online forum communications, recorded customer service dialogues) .
  • system 100 may receive text objects 103 from a database or repository 110 (e.g., a database storing recorded customer service dialogues, a text repository containing online chat records, etc. ) .
  • text objects 103 may also be collected from terminal devices, such as a terminal device 120.
  • terminal device 120 may be a mobile phone, a desktop computer, a laptop, a PDA, a robot, a kiosk, etc.
  • Terminal device 120 may include a user interaction interface configured to receive text objects 103 provided by a user 130.
  • terminal device 120 may include a keyboard, physical or virtual, for user 130 to type in text objects 103.
  • Terminal device 120 may additionally or alternatively include a touch screen for user 130 to handwrite text objects 103.
  • terminal device 120 may record user comments and/or reviews as text objects 103. If the input is handwriting, terminal device 120 may automatically recognize the handwriting and convert it to text information.
  • terminal device 120 may include a microphone, for recording audio input provided by user 130.
  • Terminal device 120 may automatically transcribe the recorded audio data into text.
  • system 100 may receive text objects 103 in the original format as captured by terminal device 120, and conversion from the original format to text format, such as handwriting recognition and/or audio transcription, may be performed by system 100.
  • system 100 may include a communication interface 102, at least one processor, such as processor 104, at least one memory, such as memory 106, and at least one storage, such as storage 108.
  • system 100 may have different modules in a single device, such as an integrated circuit (IC) chip (e.g., implemented as an application-specific integrated circuit (ASIC) or a field-programmable gate array (FPGA) ) , or separate devices with dedicated functions.
  • IC integrated circuit
  • ASIC application-specific integrated circuit
  • FPGA field-programmable gate array
  • one or more components of system 100 may be located in a cloud computing environment or may be alternatively in a single location (such as inside a mobile device) or distributed locations.
  • Components of system 100 may be in an integrated device or distributed at different locations but communicate with each other through a network (not shown) . Consistent with the president disclosure, system 100 may be configured to automatically classify text objects 103 into multiple classes using an adversary multi-binary neural network that performs classification jointly using a multi-class classifier and multiple binary classifiers.
  • Communication interface 102 may send data to and receive data from components such as terminal device 120 via communication cables, a Wireless Local Area Network (WLAN) , a Wide Area Network (WAN) , wireless networks such as radio waves, a cellular network, and/or a local or short-range wireless network (e.g., Bluetooth TM ) , or other communication methods.
  • communication interface 102 may include an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection.
  • ISDN integrated services digital network
  • communication interface 102 may include a local area network (LAN) card to provide a data communication connection to a compatible LAN.
  • LAN local area network
  • Wireless links can also be implemented by communication interface 102.
  • communication interface 102 can send and receive electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
  • communication interface 102 may receive data such as text objects 103 from database 110 and/or terminal device 120.
  • Text objects 103 may be received in text format or in other formats as acquired by terminal device 120, such as audio or handwriting formats.
  • Text objects 103 may include one sentence or multiple sentences that describe a theme (e.g., a movie review, a product comment, a question/answer, or communications associated with a service) and/or user experience. For example, user 130 may describe her feeling as “I am having a great time watching this movie, a must see! ”
  • Communication interface 102 may further provide the received data to memory 106 and/or storage 108 for storage or to processor 104 for processing.
  • Processor 104 may include any appropriate type of general-purpose or special-purpose microprocessor, digital signal processor, or microcontroller. Processor 104 may be configured as a separate processor module dedicated to classifying text objects 103. Alternatively, processor 104 may be configured as a shared processor module for performing other functions unrelated to classification.
  • processor 104 may include multiple modules, such as a multi-class classification unit 140, a multi-binary classification unit 142, a classifier optimization unit 144, a classification unit 146, and the like. These modules (and any corresponding sub-modules or sub-units) can be hardware units (e.g., portions of an integrated circuit) of processor 104 designed for use with other components or software units implemented by processor 104 through executing at least part of a program.
  • the program may be stored on a computer-readable medium, and when executed by processor 104, it may perform one or more functions.
  • FIG. 1 shows units 140-146 all within one processor 104, it is contemplated that these units may be distributed among multiple processors located closely or remotely with each other.
  • units 140-146 execute a computer program to apply an adversary multi-binary neural network to automatically classify text objects 103.
  • FIG. 2 illustrates a schematic diagram of an adversary multi-binary neural network 200 for classifying a set of objects, such as text objects 103, according to embodiments of the disclosure.
  • adversary multi-binary neural network 200 may include several layers, such as an encoder layer 210, an attention layer 220 and a classifier layer 230. FIG. 2 will be described together with units 140-146.
  • text objects 103 may be divided according to these units, such as different sentences.
  • a text e.g., text objects 103
  • S 1 , S 2 ... S n if the text has n sentences.
  • S i is the sentence vector of the ith sentence.
  • the sentence may be divided into S 1 , S 2 ... S n words if the text has n words.
  • S i would be the word vector of the ith word.
  • Multi-class classification unit 140 may apply a multi-class classifier for classifying text objects 103 into multiple classes.
  • y 1 may be a label representing a first rating of a movie (e.g., one star)
  • y 2 may be a label representing a second rating of a movie (e.g., two stars) , etc.
  • multi-binary classification unit 142 may include multiple binary classifiers that are decomposed from the multi-class classifier provided by multi-class classification unit 140.
  • the multi-class classification task may be divided into k binary subtasks.
  • a one v. rest (OVR) strategy may be used to decompose the multi-class classifier.
  • an exemplary split may be represented as class 1: ⁇ y 1 , y 2 ... y p ⁇ and class 2: ⁇ y p+1 , y p+2 whereas y m ⁇ .
  • class 1 may be ⁇ y 1 ⁇ and class 2 may be ⁇ y 2 ... y m ⁇ .
  • multi-binary classification unit 142 may include encoders to learn specific contextual information from the input text. As shown in FIG. 2, encoder layer 210 may be configured to learn the specific contextual information from S 1 , S 2 ... S n . For example, multi-binary classification unit 142 may determine word/sentence representations by assigning a separate bidirectional long short memory (BiLSTM) to each binary task and learn the specific contextual information of each binary task. In some embodiments, a bi-directional learning model may be used to generate the word/sentence representations. Bi-directional LSTM model is a type of recurrent neural network (RNN) and may process data sequentially and keep its hidden state through time.
  • RNN recurrent neural network
  • word/sentence representations additionally provide context information of the words/sentences, i.e., information of the entire sentence the words are in or information of the entire passage the sentences are in.
  • the BiLSTM model may include two sets of LSTM cells, designed to let data flow in two different directions. For example, one set of LSTM cells process word/sentences vectors in the order of v1, v2, v3, v4, v5, and v6 so that data flows in the “forward” direction. Another set of LSTM cells process these word/sentence vectors in the order of v6, v5, v4, v3, v2, and v1 so that data flows in the “backward” direction. Within each set, the multiple LSTM cells are connected sequentially with each other. In some embodiments, the two sets of LSTM cells are internally connected to provide additional data flow.
  • multi-binary classification unit 142 may obtain word/sentence representations that contain rich “bi-directional” (forward and backward) context information of the words/sentences.
  • multi-binary classification unit 142 may further use k private attention Att s, j to capture class-specific word/sentence representation s j and may use a shared attention layer Att v , to obtain class-agnostic word/sentence representation v j for all subtasks.
  • Class-agnostic representations may contain feature (s) that are shared by all classes, and therefore should not be relied upon to in the multi-class classification process. These shared feature (s) may mislead multi-class classification unit 140 to generate inaccurate classification results. By capturing and taking into account the class-agnostic information, the multi-class classification process can be reinforced.
  • attention layer 220 may include k private attention Att s, j and a shared attention Att v .
  • the class-agnostic representation v j and the class-specific representation s j may be calculated as:
  • Classifier optimization unit 144 may optimize the multi-class classifier (e.g., implemented by unit 140) using classification results of the multiple binary classifiers (e.g., implemented by unit 142) .
  • an adversarial training may be applied to learn the class-agnostic representation v j .
  • the learned class-agnostic representations together with the class-specific representations generated from each binary classifier may be fed into the multi-class classifier to optimize the multi-class classification process.
  • classifier optimization unit 144 may define a task discriminator D as shown in FIG. 2.
  • Task discriminator D may be used to get the type label of the subtask by calculating a shared representation and adversarial loss for multi-class classification. This may prevent the class-specific representation from creeping into a shared space created by shared representations.
  • task discriminator D and the adversarial loss L adv may be calculated as:
  • subtask discriminator D may be used to correct the classification on the task type as the share attention layer may generate representations that is misleading to the multi-class classification.
  • classifier optimization unit 144 may concatenate features from class-agnostic representation v j and class-specific representation s j .
  • classifier optimization unit 144 may apply a max-pool method to the class-agnostic representation v j and class-specific representation s j while the classification features of main task h t are concatenated from private feature of each subtask and shared feature of all subtasks:
  • Classifier optimization unit 144 may also jointly optimize the multi-class classifier and the multiple binary classifiers based on minimizing a final loss L.
  • a negative log likelihood of the correct labels may be used for representing classification loss L cls .
  • the multi-binary classification loss and the multi-class classification loss may be calculated as:
  • the final loss L may be calculated as:
  • the final loss L may be calculated as:
  • is also a hyper-parameter.
  • the multi-class classifier (e.g., implemented by unit 140) and multiple binary classifiers (e.g., implemented by unit 142) may be jointly trained using a training dataset.
  • the joint training may be performed to minimize the total loss L shown in equation (10) (e.g., if adversarial training is not adopted) or (11) (e.g., if adversarial training is adopted) .
  • Classification unit 146 may use the trained model to classify data (e.g., text objects 103) received by system 100. For example, classification unit 146 may classify a piece of comment (e.g., a movie review) based on the jointly trained multi-class classifier and the multiple binary classifiers.
  • data e.g., text objects 103
  • classification unit 146 may classify a piece of comment (e.g., a movie review) based on the jointly trained multi-class classifier and the multiple binary classifiers.
  • model 200 may also be implemented without the adversarial training. That is, class-agnostic representation v j and class-specific representation s j may be optimized without generating a task discriminator D. For example, in embodiments where no adversarial training is adopted, the multi-class classifier and the multiple binary classifiers may be optimized based only on minimizing the multi-binary classification loss and the multi-class classification loss as illustrated in equation (10) .
  • Memory 106 and storage 108 may include any appropriate type of mass storage provided to store any type of information that processor 104 may need to operate.
  • Memory 106 and storage 108 may be a volatile or non-volatile, magnetic, semiconductor-based, tape-based, optical, removable, non-removable, or other type of storage device or tangible (i.e., non-transitory) computer-readable medium including, but not limited to, a ROM, a flash memory, a dynamic RAM, and a static RAM.
  • Memory 106 and/or storage 108 may be configured to store one or more computer programs that may be executed by processor 104 to perform functions disclosed herein.
  • memory 106 and/or storage 108 may be configured to store program (s) that may be executed by processor 104 to generate classification result 105 using adversary multi-binary neural network learning model 200.
  • Memory 106 and/or storage 108 may be further configured to store information and data used by processor 104.
  • memory 106 and/or storage 108 may be configured to store the various types of data (e.g., entities associated with known classification) .
  • entities may include “the movie is good, ” “the movie is great, ” “it is worth watching, ” “that is awesome, ” “very impressive, ” etc.
  • memory 106 and/or storage 108 may also store intermediate data such as the sentence/word vectors, sentence/word representations, attentions, etc.
  • Memory 106 and/or storage 108 may additionally store various learning models including their model parameters, such as word embedding models, BiLSTM models, span representation models, and softmax models that are may be used for text classification.
  • model parameters such as word embedding models, BiLSTM models, span representation models, and softmax models that are may be used for text classification.
  • the various types of data may be stored permanently, removed periodically, or disregarded immediately after the data is processed.
  • Classification result 105 may be stored in memory 106 /storage 108, and/or may be provided to user 130 through a display 150.
  • Display 150 may include a display such as a Liquid Crystal Display (LCD) , a Light Emitting Diode Display (LED) , a plasma display, or any other type of display, and provide a Graphical User Interface (GUI) presented on the display for user input and data depiction.
  • the display may include a number of different types of materials, such as plastic or glass, and may be touch-sensitive to receive inputs from the user.
  • the display may include a touch-sensitive material that is substantially rigid, such as Gorilla Glass TM , or substantially pliable, such as Willow Glass TM .
  • display 150 may be part of system 100.
  • FIG. 3 illustrates a flowchart of an exemplary method 300 for classifying a set of objects using a multi-binary neural network, according to embodiments of the disclosure. It is to be appreciated that method 300 may be implemented by system 100 and particularly processor 104 or a separate processor not shown in FIG. 1. Method 300 may include steps S302-S308 as described below. It is to be appreciated that some of the steps may be optional to perform the disclosure provided herein. Further, some of the steps may be performed simultaneously, or in a different order than shown in FIG. 3.
  • system 100 may receive a set of objects, e.g., text objects 103.
  • Text objects 103 may be received from a database or repository.
  • text objects 103 may also be provided as texts or in its original format as acquired by terminal device 120, such as an audio or in handwriting. If received as an audio, terminal device 120 may be transcribed into texts. If received in handwriting, text objects 103 may be automatically recognized and convert into texts.
  • Text objects 103 may include one sentence or multiple sentences that describe a theme (e.g., a movie review, a product comment, a question/answer, or communications associated with a service) and/or user experience. For example, user130 may describe her feeling about a movie as “I am having a great time watching this fun movie. Also, the main actor is awesome. And I strongly recommend everyone to go to a theater to watch it. ”
  • text objects 103 may be divided according to these units, such as different sentences.
  • these units such as different sentences.
  • the above exemplary description may be divided into three sentences: “I am having a great time watching this fun movie. ” “Also, the main actor is awesome. ” and “And I strongly recommend everyone to go to a theater to watch it. ”
  • the sentence may be divided into S 1 , S 2 ... S n words if the text has n words.
  • system 100 may apply multi-class classifiers for classifying text 130 into multiple classes.
  • y 1 may be a label representing a first rating of a movie (e.g., one star)
  • y 2 may be a label representing a second rating of a movie (e.g., two stars) , etc.
  • multi-binary classification unit 142 may include multiple binary classifiers that are decomposed from the multi-class classifier provided by multi-class classification unit 140. In this way, the multi-class classification task may be divided into k binary subtasks. For example, a one v. rest (OVR) strategy may be used to decompose the multi-class classifier.
  • OVR v. rest
  • an exemplary split may be represented as class 1: ⁇ y 1 , y 2 ... y p ⁇ and class 2: ⁇ y p+1 , y p+2 ... y m ⁇ .
  • class 1 may be ⁇ y 1 ⁇ and class 2 may be ⁇ y 2 ... y m ⁇ .
  • system may also include encoders to learn specific contextual information from the input text.
  • Encoder layer 210 may be configured to learn the specific contextual information from S 1 , S 2 ... S n .
  • system 100 may assigned a separate bidirectional long short memory (BiLSTM) to each binary task and learn the specific contextual information of each binary task.
  • BiLSTM bidirectional long short memory
  • multi-binary system may further use k private attention Att s, j to capture class-specific sentence representation s j and may use a shared attention layer Att v, to get the class-agnostic representation v j for all subtasks.
  • attention layer 220 may include k private attention Att s, j and a shared attention Att v .
  • the class-agnostic representation v j and the class specific sentence representation s j may be calculated as:
  • system 100 may jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
  • system 100 may jointly training the multi-class classifier and the plurality of binary classifiers, and system 100 may optimize the multi-class classifier using classification results of the multiple binary classifiers.
  • an adversarial training may be applied to learn the class-agnostic representation v j .
  • the learned class-agnostic representations together with the class-specific representations generated from binary classifier may be fed into the multi-class classifier to optimize the multi-class classification process.
  • system 100 may define a task discriminator D to get the type label of subtask by calculating a shared representation and an adversarial loss for the multi-class classification. This may prevent the class-specific representation from creeping into a shared space created by shared representations.
  • task discriminator D and the adversarial loss L adv may be calculated as:
  • W d s j and b d are parameters that may be trained during the model training and d i j is the parameter denotes the task type label.
  • the subtask discriminator D may be used to correct the classification on the task type as the share attention layer may generate representations that is misleading to the multi-class classification.
  • system 100 may concatenate features from class-agnostic representation v j and class-specific sentence representation s j .
  • system 100 may apply a max-pool method to the class-agnostic representation v j and class-specific sentence representation s j while the classification features of main task h t are concatenated from private feature of each subtask and shared feature of all subtask:
  • system 100 may further jointly optimize the multi-class classifiers and the multiple binary classifiers based on minimizing a final loss L. For example, a negative log likelihood of the correct labels may be used for representing classification loss L cls .
  • the multi-binary classification loss and the multi-class classification loss may be calculated as:
  • the final loss L may be calculated as:
  • the final loss L may be calculated as:
  • is also a hyper-parameter.
  • the multi-class classifier and multiple binary classifiers may be jointly trained using a training dataset.
  • the joint training may be performed to minimize the total loss L shown in equation (10) (e.g., if adversarial training is not adopted) or (11) (e.g., if adversarial training is adopted) .
  • System 100 may also use the trained model to classify data (e.g., text objects 103) received by system 100.
  • classification unit 146 may classify a piece of comment (e.g., a movie review) based on the jointly trained multi-class classifier and the multiple binary classifiers.
  • the system and/or method disclosed herein can improve the classification accuracy.
  • the computer-readable medium may include volatile or non-volatile, magnetic, semiconductor, tape, optical, removable, non-removable, or other types of computer-readable medium or computer-readable storage devices.
  • the computer-readable medium may be the storage device or the memory module having the computer instructions stored thereon, as disclosed.
  • the computer-readable medium may be a disc or a flash drive having the computer instructions stored thereon.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Embodiments of the disclosure provide a multi-class classification system. An exemplary system includes at least one processor and at least one non-transitory memory storing instructions that, when executed by the at least one processor, cause the system to perform operations. The operation includes applying a multi-class classifier to classify a set of objects into multiple classes and applying a plurality of binary classifiers to the set of objects, wherein the plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes. The operation also includes jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.

Description

ADVERSARIAL MULTI-BINARY NEURAL NETWORK FOR MULTI-CLASS CLASSIFICATION TECHNICAL FIELD
The present disclosure relates to artificial intelligence (AI) systems and methods for classifying a set of objects, and more particularly to, AI systems and methods for multi-class classification using adversary multi-binary neural networks.
BACKGROUND
Text classification techniques have gained increasing popularity in many applications. For example, a transportation service platform may use a text classification system to detect safety issues based on communications between users and custom service.
Text classification can be performed using a natural language processing (NLP) method, in which labels are assigned to a given text object such as a word, sentence, or paragraph. NLP has been used in broad applications ranging from sentiment classification to topic labeling. Traditional text classification methods design a set of hand-crafted expert features, and then use appropriate machine learning classifiers to classify text objects. Recent methods mainly focus on deep learning, using models such as convolutional neural networks (CNNs) and recurrent neural networks (RNNs) to automatically learn text representations and integrating text representation learning and classification into a unified framework to accomplish more accurate classification results.
Multi-class classification classifies objects into multiple classes (e.g., assigning multiple labels) , and faces additional challenges such as distinguishing features that are specific to each class and features that are shared by multiple classes. The latter tends to mislead the multi-class classifier to produce inaccurate classification results. Existing methods lack sufficient measures to account for the adverse effect associated with such shared features.
Embodiments of the disclosure address the above problem by providing improved artificial intelligence systems and methods for multi-class classification using adversary multi-binary neural networks.
SUMMARY
In one aspect, embodiments of the disclosure provide a multi-class classification system. The system includes at least one processor and at least one non-transitory memory storing instructions that, when executed by the at least one processor, cause the system to perform operations. The operations include applying a multi-class classifier to classify a set of objects into multiple classes and applying a plurality of binary classifiers to the set of objects. The plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes. The operations also include jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
In another aspect, embodiments of the disclosure also provide a multi-class classification method. The method includes applying a multi-class classifier to classify a set of objects into multiple classes and applying a plurality of binary classifiers to the set of objects, wherein the plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes. The method further includes jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
In a further aspect, embodiments of the disclosure further provide a non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one processor, causes the processor to perform a method for classifying a set of objects. The method includes applying a multi-class classifier to classify the set of objects into multiple classes and applying a plurality of binary classifiers to the set of objects. The plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes. The method further includes jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a schematic diagram of an exemplary system for classifying a set of objects, according to embodiments of the disclosure.
FIG. 2 illustrates a schematic diagram of an exemplary implementation of the system shown in FIG. 1, according to embodiments of the disclosure.
FIG. 3 illustrates a flowchart of an exemplary method for classifying a set of objects, according to embodiments of the disclosure.
DETAILED DESCRIPTION
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts.
FIG. 1 illustrates a block diagram of an exemplary system 100 for classifying a set of objects, according to embodiments of the disclosure. In some embodiments, the set of objects may be textual objects, such as sentences, words, etc. For example, system 100 may be used to classify comments and/or reviews (e.g., movie reviews, online forum communications, recorded customer service dialogues) . Consistent with the present disclosure, system 100 may receive text objects 103 from a database or repository 110 (e.g., a database storing recorded customer service dialogues, a text repository containing online chat records, etc. ) . In some embodiments, text objects 103 may also be collected from terminal devices, such as a terminal device 120. For example, terminal device 120 may be a mobile phone, a desktop computer, a laptop, a PDA, a robot, a kiosk, etc. Terminal device 120 may include a user interaction interface configured to receive text objects 103 provided by a user 130. In some embodiments, terminal device 120 may include a keyboard, physical or virtual, for user 130 to type in text objects 103. Terminal device 120 may additionally or alternatively include a touch screen for user 130 to handwrite text objects 103. Accordingly, terminal device 120 may record user comments and/or reviews as text objects 103. If the input is handwriting, terminal device 120 may automatically recognize the handwriting and convert it to text information. In some embodiments, terminal device 120 may include a microphone, for recording audio input provided by user 130. Terminal device 120 may automatically transcribe the recorded audio data into text. In some embodiments, system 100 may receive text objects 103 in the original format as captured by terminal device 120, and  conversion from the original format to text format, such as handwriting recognition and/or audio transcription, may be performed by system 100.
In some embodiments, as shown in FIG. 1, system 100 may include a communication interface 102, at least one processor, such as processor 104, at least one memory, such as memory 106, and at least one storage, such as storage 108. In some embodiments, system 100 may have different modules in a single device, such as an integrated circuit (IC) chip (e.g., implemented as an application-specific integrated circuit (ASIC) or a field-programmable gate array (FPGA) ) , or separate devices with dedicated functions. In some embodiments, one or more components of system 100 may be located in a cloud computing environment or may be alternatively in a single location (such as inside a mobile device) or distributed locations. Components of system 100 may be in an integrated device or distributed at different locations but communicate with each other through a network (not shown) . Consistent with the president disclosure, system 100 may be configured to automatically classify text objects 103 into multiple classes using an adversary multi-binary neural network that performs classification jointly using a multi-class classifier and multiple binary classifiers.
Communication interface 102 may send data to and receive data from components such as terminal device 120 via communication cables, a Wireless Local Area Network (WLAN) , a Wide Area Network (WAN) , wireless networks such as radio waves, a cellular network, and/or a local or short-range wireless network (e.g., Bluetooth TM) , or other communication methods. In some embodiments, communication interface 102 may include an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection. As another example, communication interface 102 may include a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links can also be implemented by communication interface 102. In such an implementation, communication interface 102 can send and receive electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
Consistent with some embodiments, communication interface 102 may receive data such as text objects 103 from database 110 and/or terminal device 120. Text objects 103 may be received in text format or in other formats as acquired by terminal device 120, such as audio or handwriting formats. Text objects 103 may include one sentence or multiple sentences that  describe a theme (e.g., a movie review, a product comment, a question/answer, or communications associated with a service) and/or user experience. For example, user 130 may describe her feeling as “I am having a great time watching this movie, a must see! ” Communication interface 102 may further provide the received data to memory 106 and/or storage 108 for storage or to processor 104 for processing.
Processor 104 may include any appropriate type of general-purpose or special-purpose microprocessor, digital signal processor, or microcontroller. Processor 104 may be configured as a separate processor module dedicated to classifying text objects 103. Alternatively, processor 104 may be configured as a shared processor module for performing other functions unrelated to classification.
As shown in FIG. 1, processor 104 may include multiple modules, such as a multi-class classification unit 140, a multi-binary classification unit 142, a classifier optimization unit 144, a classification unit 146, and the like. These modules (and any corresponding sub-modules or sub-units) can be hardware units (e.g., portions of an integrated circuit) of processor 104 designed for use with other components or software units implemented by processor 104 through executing at least part of a program. The program may be stored on a computer-readable medium, and when executed by processor 104, it may perform one or more functions. Although FIG. 1 shows units 140-146 all within one processor 104, it is contemplated that these units may be distributed among multiple processors located closely or remotely with each other.
In some embodiments, units 140-146 execute a computer program to apply an adversary multi-binary neural network to automatically classify text objects 103. For example, FIG. 2 illustrates a schematic diagram of an adversary multi-binary neural network 200 for classifying a set of objects, such as text objects 103, according to embodiments of the disclosure. In some embodiments, adversary multi-binary neural network 200 may include several layers, such as an encoder layer 210, an attention layer 220 and a classifier layer 230. FIG. 2 will be described together with units 140-146.
In some embodiments, when text objects 103 contains multiple units, such as words, sentences, etc., text objects 103 may be divided according to these units, such as different sentences. For example, as shown in FIG. 2, a text (e.g., text objects 103) may be divided into sentences S 1, S 2 ... S n if the text has n sentences. S i is the sentence vector of the ith sentence. In some embodiments, if the given text is a sentence that includes multiple words, the sentence may  be divided into S 1, S 2 ... S n words if the text has n words. In those embodiments, S i would be the word vector of the ith word. Multi-class classification unit 140 may apply a multi-class classifier for classifying text objects 103 into multiple classes. For example, multi-class classification unit 140 may represent the multiple classes with a label vector y= {y 1, y 2 ... y m} , where m is the number of classes. For example, y 1 may be a label representing a first rating of a movie (e.g., one star) , y 2 may be a label representing a second rating of a movie (e.g., two stars) , etc.
In some embodiments, multiple binary classifiers may be used to enhance the classification accuracy of the classification result. For example, multi-binary classification unit 142 may include multiple binary classifiers that are decomposed from the multi-class classifier provided by multi-class classification unit 140. In this way, the multi-class classification task may be divided into k binary subtasks. For example, a one v. rest (OVR) strategy may be used to decompose the multi-class classifier. In the jth binary classifier, the multiple classes y= {y 1, y 2 ... y m} may be divided into two (binary) classes by multiplying a vector y j= {y 1 j, y 2 j ... y m j} , y i j=1 only if y i is included in the subtask j split, and y i j=0 if otherwise. For instance, an exemplary split may be represented as class 1: {y 1, y 2 ... y p} and class 2: {y p+1, y p+2 ..... y m} . In another example, class 1 may be {y 1} and class 2 may be {y 2 ... y m} .
In some embodiments, multi-binary classification unit 142 may include encoders to learn specific contextual information from the input text. As shown in FIG. 2, encoder layer 210 may be configured to learn the specific contextual information from S 1, S 2 ... S n. For example, multi-binary classification unit 142 may determine word/sentence representations by assigning a separate bidirectional long short memory (BiLSTM) to each binary task and learn the specific contextual information of each binary task. In some embodiments, a bi-directional learning model may be used to generate the word/sentence representations. Bi-directional LSTM model is a type of recurrent neural network (RNN) and may process data sequentially and keep its hidden state through time. Unlike word/sentence vectors that contain meanings and features of the individual words/sentences, word/sentence representations additionally provide context information of the words/sentences, i.e., information of the entire sentence the words are in or information of the entire passage the sentences are in.
In some embodiments, the BiLSTM model may include two sets of LSTM cells, designed to let data flow in two different directions. For example, one set of LSTM cells process word/sentences vectors in the order of v1, v2, v3, v4, v5, and v6 so that data flows in the  “forward” direction. Another set of LSTM cells process these word/sentence vectors in the order of v6, v5, v4, v3, v2, and v1 so that data flows in the “backward” direction. Within each set, the multiple LSTM cells are connected sequentially with each other. In some embodiments, the two sets of LSTM cells are internally connected to provide additional data flow. By using a bi-directional model, multi-binary classification unit 142 may obtain word/sentence representations that contain rich “bi-directional” (forward and backward) context information of the words/sentences.
In some embodiments, multi-binary classification unit 142 may further use k private attention Att s, j to capture class-specific word/sentence representation s j and may use a shared attention layer Att v, to obtain class-agnostic word/sentence representation v j for all subtasks. Class-agnostic representations may contain feature (s) that are shared by all classes, and therefore should not be relied upon to in the multi-class classification process. These shared feature (s) may mislead multi-class classification unit 140 to generate inaccurate classification results. By capturing and taking into account the class-agnostic information, the multi-class classification process can be reinforced.
As shown in FIG. 2, attention layer 220 may include k private attention Att s, j and a shared attention Att v.
In some embodiments, the class-agnostic representation v j and the class-specific representation s j may be calculated as:
Figure PCTCN2019087032-appb-000001
Figure PCTCN2019087032-appb-000002
Figure PCTCN2019087032-appb-000003
where
Figure PCTCN2019087032-appb-000004
is the subtask S i is assigned into.
Classifier optimization unit 144 may optimize the multi-class classifier (e.g., implemented by unit 140) using classification results of the multiple binary classifiers (e.g., implemented by unit 142) . In some embodiments, an adversarial training may be applied to learn the class-agnostic representation v j. In some embodiments, the learned class-agnostic representations together with the class-specific representations generated from each binary classifier may be fed into the multi-class classifier to optimize the multi-class classification process. In some embodiments, classifier optimization unit 144 may define a task discriminator D as shown in FIG. 2. Task discriminator D may be used to get the type label of the subtask by  calculating a shared representation and adversarial loss for multi-class classification. This may prevent the class-specific representation from creeping into a shared space created by shared representations. In some embodiments, task discriminator D and the adversarial loss L adv may be calculated as:
D (s j) = softmax (W ds j+b d) , j∈ {1, k}     (4)
Figure PCTCN2019087032-appb-000005
where W ds j and b d are parameters that may be trained during the model training and d i j is the parameter denotes the task type label. In some embodiments, subtask discriminator D may be used to correct the classification on the task type as the share attention layer may generate representations that is misleading to the multi-class classification.
In some embodiments, classifier optimization unit 144 may concatenate features from class-agnostic representation v j and class-specific representation s j. For example, classifier optimization unit 144 may apply a max-pool method to the class-agnostic representation v j and class-specific representation s j while the classification features of main task h t are concatenated from private feature of each subtask and shared feature of all subtasks:
p j = softmax (W jh j+b j) , j∈ {1, k}    (6)
p t = softmax (W th t+b t)       (7)
Classifier optimization unit 144 may also jointly optimize the multi-class classifier and the multiple binary classifiers based on minimizing a final loss L. In some embodiments, a negative log likelihood of the correct labels may be used for representing classification loss L cls. For example, the multi-binary classification loss
Figure PCTCN2019087032-appb-000006
and the multi-class classification loss
Figure PCTCN2019087032-appb-000007
may be calculated as:
Figure PCTCN2019087032-appb-000008
Figure PCTCN2019087032-appb-000009
where M (shown in FIG. 2) is the size of dataset. In some embodiments, the final loss L may be calculated as:
Figure PCTCN2019087032-appb-000010
where α and β are hyper-parameters.
In some embodiments, where an adversarial training is adopted, the final loss L may be calculated as:
Figure PCTCN2019087032-appb-000011
where γ is also a hyper-parameter.
The multi-class classifier (e.g., implemented by unit 140) and multiple binary classifiers (e.g., implemented by unit 142) may be jointly trained using a training dataset. For example, the joint training may be performed to minimize the total loss L shown in equation (10) (e.g., if adversarial training is not adopted) or (11) (e.g., if adversarial training is adopted) .
Classification unit 146 may use the trained model to classify data (e.g., text objects 103) received by system 100. For example, classification unit 146 may classify a piece of comment (e.g., a movie review) based on the jointly trained multi-class classifier and the multiple binary classifiers.
Although the embodiments described above train model 200 using the adversarial training as shown in FIG. 2, in some embodiments, model 200 may also be implemented without the adversarial training. That is, class-agnostic representation v j and class-specific representation s j may be optimized without generating a task discriminator D. For example, in embodiments where no adversarial training is adopted, the multi-class classifier and the multiple binary classifiers may be optimized based only on minimizing the multi-binary classification loss
Figure PCTCN2019087032-appb-000012
and the multi-class classification loss
Figure PCTCN2019087032-appb-000013
as illustrated in equation (10) .
Memory 106 and storage 108 may include any appropriate type of mass storage provided to store any type of information that processor 104 may need to operate. Memory 106 and storage 108 may be a volatile or non-volatile, magnetic, semiconductor-based, tape-based, optical, removable, non-removable, or other type of storage device or tangible (i.e., non-transitory) computer-readable medium including, but not limited to, a ROM, a flash memory, a dynamic RAM, and a static RAM. Memory 106 and/or storage 108 may be configured to store one or more computer programs that may be executed by processor 104 to perform functions disclosed herein. For example, memory 106 and/or storage 108 may be configured to store  program (s) that may be executed by processor 104 to generate classification result 105 using adversary multi-binary neural network learning model 200.
Memory 106 and/or storage 108 may be further configured to store information and data used by processor 104. For instance, memory 106 and/or storage 108 may be configured to store the various types of data (e.g., entities associated with known classification) . For example, entities may include “the movie is good, ” “the movie is great, ” “it is worth watching, ” “that is awesome, ” “very impressive, ” etc.
In some embodiments, memory 106 and/or storage 108 may also store intermediate data such as the sentence/word vectors, sentence/word representations, attentions, etc. Memory 106 and/or storage 108 may additionally store various learning models including their model parameters, such as word embedding models, BiLSTM models, span representation models, and softmax models that are may be used for text classification. The various types of data may be stored permanently, removed periodically, or disregarded immediately after the data is processed.
Classification result 105 may be stored in memory 106 /storage 108, and/or may be provided to user 130 through a display 150. Display 150 may include a display such as a Liquid Crystal Display (LCD) , a Light Emitting Diode Display (LED) , a plasma display, or any other type of display, and provide a Graphical User Interface (GUI) presented on the display for user input and data depiction. The display may include a number of different types of materials, such as plastic or glass, and may be touch-sensitive to receive inputs from the user. For example, the display may include a touch-sensitive material that is substantially rigid, such as Gorilla Glass TM, or substantially pliable, such as Willow Glass TM. In some embodiments, display 150 may be part of system 100.
FIG. 3 illustrates a flowchart of an exemplary method 300 for classifying a set of objects using a multi-binary neural network, according to embodiments of the disclosure. It is to be appreciated that method 300 may be implemented by system 100 and particularly processor 104 or a separate processor not shown in FIG. 1. Method 300 may include steps S302-S308 as described below. It is to be appreciated that some of the steps may be optional to perform the disclosure provided herein. Further, some of the steps may be performed simultaneously, or in a different order than shown in FIG. 3.
In step S302, system 100 may receive a set of objects, e.g., text objects 103. Text objects 103 may be received from a database or repository. In some embodiments, text objects 103 may also be provided as texts or in its original format as acquired by terminal device 120, such as an audio or in handwriting. If received as an audio, terminal device 120 may be transcribed into texts. If received in handwriting, text objects 103 may be automatically recognized and convert into texts. Text objects 103 may include one sentence or multiple sentences that describe a theme (e.g., a movie review, a product comment, a question/answer, or communications associated with a service) and/or user experience. For example, user130 may describe her feeling about a movie as “I am having a great time watching this fun movie. Also, the main actor is awesome. And I strongly recommend everyone to go to a theater to watch it. ” 
In some embodiments, when text objects 103 contains multiple units, such as words, sentences, etc., text objects 103 may be divided according to these units, such as different sentences. For example, the above exemplary description may be divided into three sentences: “I am having a great time watching this fun movie. ” “Also, the main actor is awesome. ” and “And I strongly recommend everyone to go to a theater to watch it. ” In some embodiments, if the given text is a sentence that includes multiple words, the sentence may be divided into S 1, S 2 ... S n words if the text has n words.
In step S304, system 100 may apply multi-class classifiers for classifying text 130 into multiple classes. In some embodiments, system 100 may represent the multiple classes with a label vector y = {y 1, y 2 ... y m} , where m is the number of classes. For example, y 1 may be a label representing a first rating of a movie (e.g., one star) , y 2 may be a label representing a second rating of a movie (e.g., two stars) , etc.
In step S306, system 100 may apply a plurality of binary classifiers decomposed from the multi-class classifier y = {y 1, y 2 ... y m} to enhance the classification accuracy of the classification result. For example, multi-binary classification unit 142 may include multiple binary classifiers that are decomposed from the multi-class classifier provided by multi-class classification unit 140. In this way, the multi-class classification task may be divided into k binary subtasks. For example, a one v. rest (OVR) strategy may be used to decompose the multi-class classifier. In the jth binary classifier, the multiple classes y= {y 1, y 2 ... y m} may be divided into two (binary) classes by multiplying a vector y j= {y 1 j, y 2 j ... y m j} , y i j=1 only if y i is included in the subtask j split, and y i j=0 if otherwise. For instance, an exemplary split may be represented as  class 1: {y 1, y 2 ... y p} and class 2: {y p+1, y p+2 ... y m} . In another example, class 1 may be {y 1} and class 2 may be {y 2 ... y m} .
In some embodiments, system may also include encoders to learn specific contextual information from the input text. Encoder layer 210 may be configured to learn the specific contextual information from S 1, S 2 ... S n. For example, system 100 may assigned a separate bidirectional long short memory (BiLSTM) to each binary task and learn the specific contextual information of each binary task.
In some embodiments, multi-binary system may further use k private attention Att s,  j to capture class-specific sentence representation s j and may use a shared attention layer Att v, to get the class-agnostic representation v j for all subtasks. In some embodiments, attention layer 220 may include k private attention Att s,  j and a shared attention Att v. For example, the class-agnostic representation v j and the class specific sentence representation s j may be calculated as:
Figure PCTCN2019087032-appb-000014
Figure PCTCN2019087032-appb-000015
Figure PCTCN2019087032-appb-000016
where
Figure PCTCN2019087032-appb-000017
is the subtask sentence S i is classified into.
In step S308, system 100 may jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers. In some embodiments, system 100 may jointly training the multi-class classifier and the plurality of binary classifiers, and system 100 may optimize the multi-class classifier using classification results of the multiple binary classifiers. In some embodiments, an adversarial training may be applied to learn the class-agnostic representation v j. For example, the learned class-agnostic representations together with the class-specific representations generated from binary classifier may be fed into the multi-class classifier to optimize the multi-class classification process. In some embodiments, system 100 may define a task discriminator D to get the type label of subtask by calculating a shared representation and an adversarial loss for the multi-class classification. This may prevent the class-specific representation from creeping into a shared space created by shared representations. In some embodiments, task discriminator D and the adversarial loss L adv may be calculated as:
D (s j) = softmax (W ds j+b d) , j∈ {1, k}             (4)
Figure PCTCN2019087032-appb-000018
where W ds j and b d are parameters that may be trained during the model training and d i j is the parameter denotes the task type label. In some embodiments, the subtask discriminator D may be used to correct the classification on the task type as the share attention layer may generate representations that is misleading to the multi-class classification.
In some embodiments, system 100 may concatenate features from class-agnostic representation v j and class-specific sentence representation s j. For example, system 100 may apply a max-pool method to the class-agnostic representation v j and class-specific sentence representation s j while the classification features of main task h t are concatenated from private feature of each subtask and shared feature of all subtask:
p j = softmax (W jh j+b j) , j∈ {1, k}      (6)
p t = softmax (W th t+b t)            (7)
In some embodiments, system 100 may further jointly optimize the multi-class classifiers and the multiple binary classifiers based on minimizing a final loss L. For example, a negative log likelihood of the correct labels may be used for representing classification loss L cls. The multi-binary classification loss
Figure PCTCN2019087032-appb-000019
and the multi-class classification loss
Figure PCTCN2019087032-appb-000020
may be calculated as:
Figure PCTCN2019087032-appb-000021
Figure PCTCN2019087032-appb-000022
where M is the size of dataset. In some embodiments, the final loss L may be calculated as:
Figure PCTCN2019087032-appb-000023
where α and β are hyper-parameters.
In some embodiments, where an adversarial training is adopted, the final loss L may be calculated as:
Figure PCTCN2019087032-appb-000024
where γ is also a hyper-parameter.
The multi-class classifier and multiple binary classifiers may be jointly trained using a training dataset. For example, the joint training may be performed to minimize the total loss L shown in equation (10) (e.g., if adversarial training is not adopted) or (11) (e.g., if adversarial training is adopted) .
System 100 may also use the trained model to classify data (e.g., text objects 103) received by system 100. For example, classification unit 146 may classify a piece of comment (e.g., a movie review) based on the jointly trained multi-class classifier and the multiple binary classifiers.
As more abundant features representation such as the shared representations shared among all binary classifiers are taken into account, the system and/or method disclosed herein can improve the classification accuracy.
Another aspect of the disclosure is directed to a non-transitory computer-readable medium storing instruction which, when executed, cause one or more processors to perform the methods, as discussed above. The computer-readable medium may include volatile or non-volatile, magnetic, semiconductor, tape, optical, removable, non-removable, or other types of computer-readable medium or computer-readable storage devices. For example, the computer-readable medium may be the storage device or the memory module having the computer instructions stored thereon, as disclosed. In some embodiments, the computer-readable medium may be a disc or a flash drive having the computer instructions stored thereon.
It will be apparent to those skilled in the art that various modifications and variations can be made to the disclosed system and related methods. Other embodiments will be apparent to those skilled in the art from consideration of the specification and practice of the disclosed system and related methods.
It is intended that the specification and examples be considered as exemplary only, with a true scope being indicated by the following claims and their equivalents.

Claims (20)

  1. A multi-class classification system, comprising:
    at least one processor; and
    at least one non-transitory memory storing instructions that, when executed by the at least one processor, cause the system to perform operations comprising:
    applying a multi-class classifier to classify a set of objects into multiple classes;
    applying a plurality of binary classifiers to the set of objects, wherein the plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes; and
    jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
  2. The system of claim 1, wherein the operations comprise:
    jointly training the multi-class classifier and the plurality of binary classifiers by minimizing a joint loss comprising a multi-class classification loss corresponding to the multi-class classifier and one or more binary classification losses corresponding to one or more binary classifiers selected from the plurality of binary classifiers.
  3. The system of claim 1, wherein the operations comprise:
    receiving, by an encoder corresponding to at least one binary classifier, the set of objects; and
    generating, by the encoder, contextual information from the set of the objects.
  4. The system of claim 3, wherein the encoder comprises a bidirectional long short memory (BiLSTM) .
  5. The system of claim 3, wherein the operations further comprise:
    determining, by a private attention layer corresponding to the at least one binary classifier, class-specific information based on the contextual information; and
    determining, by a shared attention layer, class-agnostic information based on the contextual information.
  6. The system of claim 5, wherein the class-agnostic information comprises a shared feature shared by multiple classes.
  7. The system of claim 5, wherein the operations comprise:
    refining, by a discriminator, the class-agnostic information by minimizing an adversarial loss.
  8. The system of claim 7, wherein the operations comprise:
    jointly training the multi-class classifier and the plurality of binary classifiers by minimizing a joint loss comprising:
    a multi-class classification loss corresponding to the multi-class classifier;
    one or more binary classification losses corresponding to one or more binary classifiers selected from the plurality of binary classifiers; and
    the adversarial loss.
  9. The system of claim 5, wherein the operations comprise:
    generating classification features of the at least one binary classifier by concatenating the class-specific information and the class-agnostic information.
  10. The system of claim 5, wherein the operations comprise:
    generating classification features of the multi-class classifier by concatenating class-specific information corresponding to multiple binary classifiers and the class-agnostic information.
  11. A multi-class classification method, comprising:
    applying a multi-class classifier to classify a set of objects into multiple classes;
    applying a plurality of binary classifiers to the set of objects, wherein the plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the  set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes; and
    jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
  12. The method of claim 11, comprising:
    jointly training the multi-class classifier and the plurality of binary classifiers by minimizing a joint loss comprising a multi-class classification loss corresponding to the multi-class classifier and one or more binary classification losses corresponding to one or more binary classifiers selected from the plurality of binary classifiers.
  13. The method of claim 11, comprising:
    receiving, by an encoder corresponding to at least one binary classifier, the set of objects; and
    generating, by the encoder, contextual information from the set of the objects.
  14. The method of claim 13, further comprising:
    determining, by a private attention layer corresponding to the at least one binary classifier, class-specific information based on the contextual information; and
    determining, by a shared attention layer, class-agnostic information based on the contextual information.
  15. The method of claim 14, wherein the class-agnostic information comprises a shared feature shared by multiple classes.
  16. The method of claim 14, further comprising:
    refining, by a discriminator, the class-agnostic information by minimizing an adversarial loss.
  17. The method of claim 16, further comprising:
    jointly training the multi-class classifier and the plurality of binary classifiers by minimizing a joint loss comprising:
    a multi-class classification loss corresponding to the multi-class classifier;
    one or more binary classification losses corresponding to one or more binary classifiers selected from the plurality of binary classifiers; and
    the adversarial loss.
  18. The method of claim 14, further comprising:
    generating classification features of the at least one binary classifier by concatenating the class-specific information and the class-agnostic information.
  19. The method of claim 14, further comprising:
    generating classification features of the multi-class classifier by concatenating class-specific information corresponding to multiple binary classifiers and the class-agnostic information.
  20. A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one processor, causes the processor to perform a method for classifying a set of objects, the method comprising:
    applying a multi-class classifier to classify the set of objects into multiple classes;
    applying a plurality of binary classifiers to the set of objects, wherein the plurality of binary classifiers are decomposed from the multi-class classifier, each binary classifier classifying the set of the objects into a first group consisting of one or more classes selected from the multiple classes and a second group consisting of one or more remaining classes of the multiple classes; and
    jointly classifying the set of objects using the multi-class classifier and the plurality of binary classifiers.
PCT/CN2019/087032 2019-05-15 2019-05-15 Adversarial multi-binary neural network for multi-class classification Ceased WO2020227968A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201980096336.3A CN113826116A (en) 2019-05-15 2019-05-15 Antagonistic multi-binary neural network for multi-class classification
PCT/CN2019/087032 WO2020227968A1 (en) 2019-05-15 2019-05-15 Adversarial multi-binary neural network for multi-class classification
US17/014,256 US11983492B2 (en) 2019-05-15 2020-09-08 Adversarial multi-binary neural network for multi-class classification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/087032 WO2020227968A1 (en) 2019-05-15 2019-05-15 Adversarial multi-binary neural network for multi-class classification

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/014,256 Continuation US11983492B2 (en) 2019-05-15 2020-09-08 Adversarial multi-binary neural network for multi-class classification

Publications (1)

Publication Number Publication Date
WO2020227968A1 true WO2020227968A1 (en) 2020-11-19

Family

ID=73289962

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/087032 Ceased WO2020227968A1 (en) 2019-05-15 2019-05-15 Adversarial multi-binary neural network for multi-class classification

Country Status (3)

Country Link
US (1) US11983492B2 (en)
CN (1) CN113826116A (en)
WO (1) WO2020227968A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210303793A1 (en) * 2020-03-25 2021-09-30 At&T Intellectual Property I, L.P. Root cause classification
US12299545B2 (en) * 2020-12-17 2025-05-13 Exceed AI Ltd Systems and methods for automatic extraction of classification training data
US20230098137A1 (en) * 2021-09-30 2023-03-30 C/o Uniphore Technologies Inc. Method and apparatus for redacting sensitive information from audio
US20230386450A1 (en) * 2022-05-25 2023-11-30 Samsung Electronics Co., Ltd. System and method for detecting unhandled applications in contrastive siamese network training
KR20240020006A (en) * 2022-08-05 2024-02-14 엘지전자 주식회사 Classification device and classification method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070162924A1 (en) * 2006-01-06 2007-07-12 Regunathan Radhakrishnan Task specific audio classification for identifying video highlights
US20140222723A1 (en) * 2013-02-01 2014-08-07 Telenav, Inc. Navigation system with anomaly detection mechanism and method of operation thereof
CN105549885A (en) * 2015-12-10 2016-05-04 重庆邮电大学 Method and device for recognizing user emotion during screen sliding operation
CN108701125A (en) * 2015-12-29 2018-10-23 Mz知识产权控股有限责任公司 Systems and methods for suggesting emoticons
CN109657473A (en) * 2018-11-12 2019-04-19 华中科技大学 A kind of fine granularity leak detection method based on depth characteristic

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924313B2 (en) * 2010-06-03 2014-12-30 Xerox Corporation Multi-label classification using a learned combination of base classifiers
IN2015MU01794A (en) * 2015-05-05 2015-06-19 Manharlal Shah Bhavin
US10853737B2 (en) * 2016-02-22 2020-12-01 The Trustees Of Princeton University Machine-learning classifier based on comparators for direct inference on analog sensor data
WO2019118472A1 (en) * 2017-12-11 2019-06-20 Walmart Apollo, Llc System and method for the detection and visualization of reported etics cases within an organization
US10990820B2 (en) * 2018-03-06 2021-04-27 Dus Operating Inc. Heterogeneous convolutional neural network for multi-problem solving
US11568863B1 (en) * 2018-03-23 2023-01-31 Amazon Technologies, Inc. Skill shortlister for natural language processing
CN109471938B (en) * 2018-10-11 2023-06-16 平安科技(深圳)有限公司 A text classification method and terminal
CN109547546B (en) * 2018-11-12 2020-06-05 网宿科技股份有限公司 Scheduling method of request task and scheduling center server
US12182713B2 (en) * 2018-11-28 2024-12-31 Adobe Inc. Multi-task equidistant embedding
US11610098B2 (en) * 2018-12-27 2023-03-21 Paypal, Inc. Data augmentation in transaction classification using a neural network
US11520881B2 (en) * 2019-01-23 2022-12-06 General Electric Company Framework for cyber-physical system protection of electric vehicle charging stations and power grid

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070162924A1 (en) * 2006-01-06 2007-07-12 Regunathan Radhakrishnan Task specific audio classification for identifying video highlights
US20140222723A1 (en) * 2013-02-01 2014-08-07 Telenav, Inc. Navigation system with anomaly detection mechanism and method of operation thereof
CN105549885A (en) * 2015-12-10 2016-05-04 重庆邮电大学 Method and device for recognizing user emotion during screen sliding operation
CN108701125A (en) * 2015-12-29 2018-10-23 Mz知识产权控股有限责任公司 Systems and methods for suggesting emoticons
CN109657473A (en) * 2018-11-12 2019-04-19 华中科技大学 A kind of fine granularity leak detection method based on depth characteristic

Also Published As

Publication number Publication date
US11983492B2 (en) 2024-05-14
US20200401844A1 (en) 2020-12-24
CN113826116A (en) 2021-12-21

Similar Documents

Publication Publication Date Title
US11983492B2 (en) Adversarial multi-binary neural network for multi-class classification
US20260073923A1 (en) Speaker-turn-based online speaker diarization with constrained spectral clustering
Poria et al. Context-dependent sentiment analysis in user-generated videos
US10909328B2 (en) Sentiment adapted communication
CN109117777B (en) Method and device for generating information
US11444894B2 (en) Systems and methods for combining and summarizing emoji responses to generate a text reaction from the emoji responses
CN107491435B (en) Method and device for automatically identifying user emotion based on computer
CN113360660B (en) Text category recognition method, device, electronic equipment and storage medium
CN107680579A (en) Text regularization model training method and device, text regularization method and device
CN111274372A (en) Method, electronic device, and computer-readable storage medium for human-computer interaction
CN116521821B (en) Text semantic matching method and refrigeration equipment system
CN111901627B (en) Video processing method and device, storage medium and electronic equipment
CN111651497A (en) User tag mining method, device, storage medium and electronic device
CN111985243B (en) Emotion model training method, emotion analysis method, device and storage medium
WO2021134417A1 (en) Interactive behavior prediction method, intelligent device, and computer readable storage medium
US11521426B2 (en) Cognitive enablement of presenters
US10937428B2 (en) Pose-invariant visual speech recognition using a single view input
CN112016573A (en) Bullet screen generation method and device, electronic equipment and computer storage medium
CN107291774A (en) Error sample recognition methods and device
WO2021147084A1 (en) Systems and methods for emotion recognition in user-generated video(ugv)
US20200042621A1 (en) Intelligent image note processing
CN113254814A (en) Network course video labeling method and device, electronic equipment and medium
Thakur et al. Audio and text-based emotion recognition system using deep learning
CN116431805B (en) Text classification method and refrigeration equipment system
CN115331700A (en) Emotion recognition methods, devices, equipment, media and program products

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19929031

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19929031

Country of ref document: EP

Kind code of ref document: A1