Patent application title:

VACUUM CLEANER AND CONTROL METHOD THEREOF

Publication number:

US20260174299A1

Publication date:
Application number:

19/459,545

Filed date:

2026-01-26

Smart Summary: A vacuum cleaner has a built-in memory and processor that work together to improve its cleaning performance. While cleaning, it collects data about the surfaces it encounters. This data is then sorted to identify different types of flooring, like carpet or tile. Using this sorted information, the vacuum creates training data to learn from its experiences. Finally, it adjusts its cleaning methods based on what it has learned to become more effective. 🚀 TL;DR

Abstract:

A vacuum cleaner includes memory storing instructions; and at least one processor including processing circuitry, in which the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: obtain sensing data from operation of the vacuum cleaner while performing a cleaning operation; classify the sensing data by at least one type of floor based on an output obtained from model trained to sense the at least one type by inputting the sensing data; obtain, based on the sensing data classified by the at least one type, at least one sensing data group; obtain training data based on the at least one sensing data group; and modify at least one parameter of the model by training the model based on the training data

Inventors:

Assignee:

Applicant:

Interested in similar patents?

Get notified when new applications in this technology area are published.

Classification:

A47L9/2826 »  CPC main

Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners; Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means; Parameters or conditions being sensed the condition of the floor

A47L9/28 IPC

Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means

Description

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of International Application No. PCT/KR2025/022043 designating the United States, filed on Dec. 17, 2025, in the Korean Intellectual Property Receiving Office and claiming priority to Korean Patent Application No. 10-2024-0195300, filed on Dec. 24, 2024, in the Korean Intellectual Property Office, the disclosures of which are incorporated by reference herein in their entireties.

BACKGROUND

1. Field

The disclosure relates to a vacuum cleaner and a control method thereof, and more particularly, to a vacuum cleaner capable of training a neural network model for sensing a type of floor by using sensing data and a control method thereof.

2. Description of Related Art

Vacuum cleaners are used to perform cleaning, and latest vacuum cleaning devices provide various functions. In particular, vacuum cleaners may sense a type of floor by using a neural network model while performing a cleaning operation, and based on the sensed type of floor, may operate in a cleaning mode.

However, existing vacuum cleaners may not be optimized for user environments because of limitations of data collection and model performance. Accordingly, an operational error is highly likely to occur in association with a floor of a type not learned in a development environment of the vacuum cleaners. Additionally, in the case where the user uses a vacuum cleaner for a long period of time, the feature of brushes may be changed, increasing the possibility of an operation error that would otherwise not occur in the initial state of the vacuum cleaner.

The above descriptions may be provided as related art for a better understanding of the subject matter of the present disclosure. Any argument or determination is not raised as to whether any of the descriptions are applicable as prior art associated with the present disclosure.

SUMMARY

According to an aspect of the disclosure, a vacuum cleaner includes: memory storing instructions; and at least one processor including processing circuitry, in which the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: obtain sensing data from operation of the vacuum cleaner while performing a cleaning operation; classify the sensing data by at least one type of floor based on an output obtained from model trained to sense the at least one type by inputting the sensing data; obtain, based on the sensing data classified by the at least one type, at least one sensing data group; obtain training data based on the at least one sensing data group; and modify at least one parameter of the model by training the model based on the training data.

The output comprises at least one label, each of the at least one label corresponding to one of the at least one type of floor, and the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: obtain the at least one sensing data group by grouping the at least one label corresponding each of the at least one type based on each grouping ratio corresponding to a continuous recognition time of the each of the at least one type.

First grouping ratio is a first value corresponding to a first type of the at least one type, second grouping ratio is a second value corresponding to a second type of the at least one type, the first value is higher than the second value, based on the continuous recognition time being shorter at the first type than at the second type.

The instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: identify, among the at least one sensing data group, a sensing data group in which a ratio of at least one normal label to a sum of the at least one normal label and at least one abnormal label is equal to or greater than a reference value; and determine, as an effective sensing data group, the sensing data group, and the reference value is corresponding to a size of each sensing data group.

The instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: adjust the at least one abnormal label included in the effective sensing data group to a normal label.

The instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: separate the effective sensing data group into first data for training and second data for testing.

The instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: obtain training data by sampling data in a pre-set size from the first data; obtain pre-stored training data corresponding to at least one other floor type than a first floor type corresponding to the effective sensing data group among the at least one type; obtain a training data set based on the training data obtained from the effective sensing data group and the pre-stored training data; and train the model based on the training data set.

The instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: obtain the second data for testing included in the effective sensing data group, and pre-stored testing data corresponding to the at least one other floor type than the first floor type corresponding to the effective sensing data group among the at least one floor type; obtain a testing data set based on the second data and the pre-stored testing data; and evaluate performance of the trained model based on the testing data set.

The instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: obtain information on first accuracy of the trained model based on the evaluating; and update, based on the first accuracy and second accuracy of the model before the training, the model before the training stored in the vacuum cleaner.

The instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to: train the model based on at least one of the vacuum cleaner being located at a station device, the vacuum cleaner not performing the cleaning operation, or a battery of the vacuum cleaner being equal to or greater than a threshold value.

According to an aspect of the disclosure, a control method of a vacuum cleaner, the method comprising: obtaining sensing data from operation of the vacuum cleaner while performing a cleaning operation; classifying the sensing data by at least one type of floor based on an output obtained from model trained to sense the at least one type by inputting the sensing data; obtaining, based on the sensing data classified by the at least one type, at least one sensing data group; obtaining training data based on the at least one sensing data group; and modifying at least one parameter of the model by training the model based on the training data.

The output comprises at least one label, each of the at least one label corresponding to one of the at least one type of floor, and wherein the obtaining the at least one sensing data group comprises obtaining the at least one sensing data group by grouping the at least one label corresponding each of the at least one type based on each grouping ratio corresponding to a continuous recognition time of the each of the at least one type.

First grouping ratio is a first value corresponding to a first type of the at least one type, second grouping ratio is a second value corresponding to a second type of the at least one type, the first value is higher than the second value, based on the continuous recognition time being shorter at the first type than at the second type.

The obtaining the at least one sensing data group comprises; identifying, among the at least one sensing data group, a sensing data group in which a ratio of at least one normal label to a sum of the at least one normal label and at least one abnormal label is equal to or greater than a reference value; and determining, as an effective sensing data group, the sensing data group, and the reference value is corresponding to a size of each sensing data group.

The obtaining the at least one sensing data group comprises adjusting the at least one abnormal label included in the effective sensing data group to a normal label.

The method further comprises, separating the effective sensing data group into first data for training and second data for testing.

The obtaining training data comprises; obtaining training data by sampling data in a pre-set size from the first data, obtaining pre-stored training data corresponding to at least one other floor type than a first floor type corresponding to the effective sensing data group among the at least one type, and obtaining a training data set based on the training data obtained from the effective sensing data group and the pre-stored training data, the modifying comprises training the model based on the training data set.

The method further comprises, obtaining the second data for testing included in the effective sensing data group, and pre-stored testing data corresponding to the at least one other floor type than the first floor type corresponding to the effective sensing data group among the at least one floor type; obtaining a testing data set based on the second data and the pre-stored testing data; and evaluating performance of the trained model based on the testing data set.

The evaluating comprises, obtaining information on first accuracy of the trained model based on the evaluating; and updating, based on the first accuracy and second accuracy of the model before the training, the model before the training stored in the vacuum cleaner.

According to an aspect of the disclosure, a non-transitory computer readable medium having instructions stored therein, which when executed by a processor in a vacuum cleaner, cause the processor to execute a method comprising: obtaining sensing data from operation of the vacuum cleaner while performing a cleaning operation; classifying the sensing data by at least one type of floor based on an output obtained from model trained to sense the at least one type by inputting the sensing data; obtaining, based on the sensing data classified by the at least one type, at least one sensing data group; obtaining training data based on the at least one sensing data group; and modifying at least one parameter of the model by training the model based on the training data.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects, features, and advantages of certain embodiments of the present disclosure will be more apparent from the following description taken in conjunction with the accompanying drawings, in which:

FIG. 1 is a view provided to explain a vacuum cleaner and a station device, according to an embodiment;

FIG. 2 is a block diagram illustrating a configuration of a vacuum cleaner, according to an embodiment;

FIG. 3 is a flowchart provided to explain a control method of a vacuum cleaner for training a neural network model, according to an embodiment;

FIGS. 4, 5A, 5B, and 5C are views provided to explain a method for obtaining a sensing data group, according to an embodiment;

FIGS. 6A and 6B are views provided to explain a method of separating data for training and data for testing in a sensing data group, according to an embodiment;

FIGS. 7 and 8 are views provided to explain a method of obtaining a training data set and a testing data set, according to an embodiment;

FIG. 9 is a flowchart provided to explain a performance evaluation of a trained neural network model, according to an embodiment;

FIG. 10 is a flowchart provided to explain conditions for performing a training operation, according to an embodiment; and

FIG. 11 is a sequence diagram provided to explain a method for allowing a station device to train a neural network model, according to another embodiment.

FIG. 12 is a diagram illustrating a UI for inquiring whether to update a trained neural network model, according to an embodiment.

DETAILED DESCRIPTION

Hereafter, the subject matter of the present disclosure is specifically described with reference to the accompanying drawings.

General terms currently used as widely as possible are selected as the terms used in the embodiments of the disclosure considering their functions in the disclosure, but may be changed based on the intention of those skilled in the art or a judicial precedent, the emergence of a new technology, or the like. In addition, in a specific case, terms arbitrarily chosen by the applicant may be included in the terms used herein. In this case, the meanings of such terms are described in detail in corresponding descriptions of the disclosure. Therefore, the terms used in the disclosure need to be defined based on the meanings thereof and particulars throughout the disclosure rather than simply the names thereof.

In the disclosure, the expression “have”, “may have”, “include”, “may include” or the like, indicates the existence of corresponding features (e.g., a numerical value, a function, an operation or an element such as a part), and does not exclude the existence of an additional feature.

The expression of “at least one of A or B” is to be understood as indicating any one of “A” or “B” or “A and B”.

The expression “1st”, “2nd”, “first”, “second”, or the like, used in the disclosure, may be used to refer to various elements regardless of their order and/or importance, and may be used merely to differentiate one element from another but not intended to limit the elements.

Based on one element (e.g., a first element) referred to as being “(operatively or communicatively) coupled with/to” or “connected with/to” another element (e.g., a second element), it is to be understood that one element may connect to another element directly, or through yet another element (e.g., a third element).

In the disclosure, singular forms include plural forms as well, unless explicitly indicated otherwise. In the disclosure, the term “include” or “comprised of” and the like specify the presence of stated features, numbers, steps, operations, elements, components or combinations thereof but do not imply the exclusion of the presence or addition of one or more other features, numbers, steps, operations, elements, components or combinations thereof.

In the disclosure, the term “module” or “unit” may perform at least one function or operation, and be implemented by hardware or software or by a combination of hardware and software. In addition, a plurality of “modules” or a plurality of “units” may be integrated into at least one module and be implemented by at least one processor except for a “module” or a “unit” that needs to be implemented by specific hardware.

In the disclosure, the term user may refer to a person who uses a vacuum cleaner or an apparatus (e.g., an artificial intelligence electronic apparatus) which uses an electronic apparatus.

Hereafter, an embodiment of the disclosure is specifically described with reference to the accompanying drawings.

FIG. 1 is a view provided to explain a vacuum cleaner 100 and a station device 200, according to an embodiment.

Referring to FIG. 1, the vacuum cleaner 100 may be an apparatus including a battery. The vacuum cleaner 100 may perform an electronic operation wirelessly by using a charged battery. The vacuum cleaner 100 may perform a pre-defined function in a wireless manner even without being plugged in a wired manner.

In one or more embodiments, the vacuum cleaner 100 may be an apparatus performing a function of suctioning foreign substances through a suction part 190. For example, the vacuum cleaner 100 may be a vacuum cleaner performing a cleaning function.

In one or more embodiments, the vacuum cleaner 100 may be a handheld vacuum cleaner manipulated by the user. The handheld vacuum cleaner may be a vacuum cleaner including a handle gripped by the user with one hand. For example, the vacuum cleaner 100 may be a stick vacuum cleaner. The stick vacuum cleaner may be a vacuum cleaner having a main body shaped into a stick and a handle. However, such a vacuum cleaner is described merely as one example, and the vacuum cleaner 100 may be a mobile robot that moves automatically. Furthermore, in one or more examples, the vacuum cleaner 100 may be incorporated in a larger apparatus such as a vehicle or any other type of mobile apparatus.

In one or more examples, the vacuum cleaner 100 may sense a type of floor by using a trained neural network model, and operate in a mode (or perform a function) corresponding to the sensed type of floor. Herein, the trained neural network model may be a model trained by using, as training data, sensing data collected while the vacuum cleaner 100 performs cleaning, and information on a type of floor. The neural network model may also be referred to as various terms such as an artificial intelligence (AI) model, a training model, a floor type sensing model, or any other type of suitable learning model known to one of ordinary skill in the art.

The station device 200 may perform an operating of charging the battery of the vacuum cleaner 100. In one or more embodiments, in the case where the vacuum cleaner 100 is held (or disposed, connected) at the station device 200, a charging terminal included in the vacuum cleaner 100 and a charging terminal include in the station device 200 may be connected to charge the battery of the vacuum cleaner 100. In one or more examples, the vacuum cleaner 100 may be wirelessly charged.

The station device 200 may include an element storing foreign substances suctioned by the vacuum cleaner 100. In one or more embodiments, in the case where the vacuum cleaner 100 is held (or disposed, connected) at the station device 200, the station device 200 may suction and store the foreign substances suctioned while the vacuum cleaner 100 performs a cleaning operation.

Meanwhile, in the above-described embodiment, storing a trained neural network model in the vacuum cleaner 100 is described above, but is described merely as one example, and a trained neural network model may certainly be stored in the station device 200. Additionally, a first trained neural network model may be stored in the vacuum cleaner 100, while a second trained neural network model may be stored in the station device 200. In one or more examples, the vacuum cleaner 100 may be pre-loaded with the first trained neural network. In one or more examples, the first trained neural network may be downloaded to the vacuum cleaner 100 from a remote source such as a remote server or the cloud. In one or more examples, the first trained neural network model may be refined or adjusted during operation of the vacuum cleaner 100 such that the first trained neural network model is optimized to an environment of a particular user.

FIG. 2 is a block diagram provided to explain a specific configuration of the vacuum cleaner 100, according to an embodiment.

Referring to FIG. 2, the vacuum cleaner 100 may include memory 110, a processor 120, a communication interface 130, a display 140, a manipulation interface 150, an input/output interface 155, a speaker 160, a microphone 165, and a camera 170. The vacuum cleaner 100 may include a power source part 180 and a suction part 190.

The memory 110 may be implemented in the form of internal memory such as ROM (e.g., electrically erasable programmable read-only memory (EEPROM)), RAM, and the like included in the processor 120, or in the form of memory separate from the processor 120. The memory 110 may be implemented as memory embedded in the vacuum cleaner 100, or as memory detachable from the vacuum cleaner 100 depending on a data storage purpose. For example, in the case of data for driving the vacuum cleaner 100, the data may be stored in the memory embedded in the vacuum cleaner 100, and in the case of data for an expansion function of the vacuum cleaner 100, the data may be stored in memory detachable from the vacuum cleaner 100.

The memory embedded in the vacuum cleaner 100 may be implemented in the form of at least one of volatile memory (e.g., dynamic RAM (DRAM), static RAM (SRAM) or synchronous dynamic RAM (SDRAM), and the like) or non-volatile memory (e.g., one time programmable ROM (OTPROM), programmable ROM (PROM), erasable and programmable ROM (EPROM), electrically erasable and programmable ROM (EEPROM), mask ROM, flash ROM, flash memory (e.g., NAND flash or NOR flash, and the like), hard drive, or solid state drive (SSD)), and the memory detachable from the vacuum cleaner 100 may be implemented in the form of a memory card (e.g., a compact flash (CF), a secure digital (SD), a micro secure digital (Micro-SD), a mini secure digital (Mini-SD), an extreme digital (xD), a multi-media card (MMC), and the like), external memory (e.g., USB memory) connectable to a USB port, or the like.

The memory 110 may store at least one instruction. Based on the instruction stored in the memory 110, the processor 120 may perform various operations.

In one or more embodiments, the memory 110 may store a neural network model trained to identify a type of floor.

The communication interface 130 is an element performing communication with various types of external devices based on various communication methods. The communication interface 130 may include a wireless communication module or a wired communication module. Each of the communication modules may be implemented in the form of at least one hardware chip.

The wireless communication module may be a module communicating with an external device in a wireless manner. For example, the wireless communication module may include at least one of a Wi-Fi module, a Bluetooth module, an infrared communication module, or other communication modules.

The Wi-Fi module and the Bluetooth module may perform communication respectively based on a Wi-Fi method and a Bluetooth method. When the Wi-Fi module or the Bluetooth module is used, various types of connection information such as a service set identifier (SSID), a session key and the like may be first transmitted and received, and are used to perform communication connection and then transmit and receive various types of information.

The infrared communication module performs communication based on an infrared Data Association (IrDA) communication technology which transmits data wirelessly over a short distance by using infrared rays between visible light and millimeter waves.

In addition to the above-described communication modules, other communication modules may include at least one communication chip that performs communication according to various wireless communication standards such as Zigbee, 3rd Generation (3G), 3rd Generation Partnership Project (3GPP), Long Term Evolution (LTE), LTE Advanced (LTE-A), 4th Generation (4G), 5th Generation (5G) and the like.

In one or more embodiments, the communication interface 130 may use an identical communication module (e.g., a Wi-Fi module) to communicate with an external device such as a remote control device and an external server.

According to one or more embodiments, the communication interface 130 may use a different communication module to communicate with an external device such as a remote control device and an external server. For example, the communication interface 130 may use at least one of the Ethernet module or the Wi-Fi module to communicate with an external server, or may use a Bluetooth module to communicate with an external device such as a remote control device. However, these features are merely exemplary, and the communication interface 130 may use at least one of various types of communication modules in the case where the communication interface 130 communicates with a plurality of external devices or external servers.

According to one or more embodiments, the communication interface 130 may transmit information on collected sensing data to the station device 200. Additionally, the communication interface 130 may obtain information on an updated neural network model from the station device 200.

The display 140 may be implemented as various types of displays such as a liquid crystal display (LCD), an organic light emitting diode (OLED) display, a plasma display panel (PDP), and the like. In the display 140, driving circuitry implementable in the form of an amorphous silicon thin film transistor (a-si TFT), a low temperature poly silicon (LTPS) TFT, an organic TFT (OTFT) and the like, a backlight unit, and the like may be included together. The display 140 may be implemented as a touch screen coupled with a touch sensor, a flexible display, a three-dimensional (3D) display, and the like. According to an embodiment, the display 140 may include a bezel housing a display panel as well as a display panel outputting an image. In particular, according to an embodiment, the bezel may include a touch sensor for sensing a user interaction.

The manipulation interface 150 may be implemented as a device such as a button, a touch pad, a mouse, and a keyboard, or as touch screen capable of performing the above-described display function and a manipulation input function together. The button may be various types of buttons such as a mechanical button, a touch pad, a wheel and the like that are formed in any area of the front, side, rear and the like of the exterior of a main body of the vacuum cleaner 100.

The input/output interface 155 may be an interface of any one of High-Definition Multimedia Interface (HDMI), Mobile High-Definition Link (MHL), Universal Serial Bus (USB), Display Port (DP), Thunderbolt, a Video Graphics Array (VGA) port, an RGB port, D-subminiature (D-SUB), and Digital Visual Interface (DVI). The input/output interface 155 may input and output at least one of an audio signal or a video signal. Depending on embodiments, the input/output interface 155 may include a port inputting and outputting an audio signal only and a port inputting and outputting a video signal only as a separate port, or may be implemented as one port inputting and outputting both the audio signal and the video signal. The vacuum cleaner 100 may transmit at least one of the audio signal or the video signal to an external device (e.g., an external display device or an external speaker) through the input/output interface 155. An output port included in the input/output interface 155 may be connected with an external device, and the vacuum cleaner 100 may transmit at least one of the audio signal or the video signal to the external device through the output port.

The input/output interface 155 may be connected with the communication interface. The input/output interface 155 may transmit information received from an external device to the communication interface or transmit information received through the communication interface to the external device.

The speaker 160 may be an element outputting various types of notification sounds or voice messages and the like as well as various types of audio data.

The microphone 165 is an element for receiving an input of a user voice or other sounds, and converting the same into audio data. The microphone 165 may receive a user voice in an activated state. For example, the microphone 165 may be integrally formed on an upper side or in a front surface direction, in a lateral surface direction and the like of the vacuum cleaner 100. The microphone 165 may include various types of elements such as a microphone collecting a user voice in an analogue form, amp circuitry amplifying the collected user voice, A/D conversion circuitry sampling the amplified user voice and converting the same into a digital signal, and filter circuitry removing a noise component from the converted digital signal, and the like.

The camera 170 is an element for capturing an image of a subject and generating a captured image, and the captured image includes both of a moving image and a still image. The camera 170 may obtain an image of at least one external device, and may be implemented with a camera, a lens, an infrared sensor and the like.

The camera 170 may include a lens and an image sensor. The type of lens may include a general-purpose lens, a wide-angle lens, a zoom lens and the like, and may be determined based on the type, feature, operation environment and the like of the vacuum cleaner 100. For the image sensor, a complementary metal oxide semiconductor (CMOS), a charge coupled device (CCD) and the like may be used.

The power source part 180 may include a chargeable battery, and supply a power source to the elements of the vacuum cleaner 100. For example, the processor 120 may control the suction part 190 based on the power source supplied from the battery.

In particular, the power source part 180 may change the battery based on a charging function held by the station device. The processor 120 may perform the charging function to charge the battery.

The suction part 190 may perform a cleaning operation by suctioning foreign substances. In particular, the suction part 190 may include a suction motor driven by the power source supplied through the power source part 180, and a dust container storing foreign substances suctioned based on rotation of the suction motor.

The processor 120 may be implemented as a digital signal processor (DSP) processing a digital signal, a microprocessor, a time controller (TCON). However, the processor 120 is not limited thereto, and may include one or more of a central processing unit (CPU), a micro controller unit (MCU), a micro processing unit (MPU), a controller, an application processor (AP), a graphics-processing unit (GPU) or a communication processor (CP), an advanced reduced instruction set computer (RISC) machine (ARM) processor, or may be defined as such terms. Additionally, the processor 120 may be implemented in the form of a system on a chip (SoC) with an embedded processing algorithm, large scale integration (LSI), or a field programmable gate array (FPGA). The processor 120 may perform various functions by executing computer executable instructions stored in the memory 110.

According to one or more embodiments, the processor 120 may collect or obtain sensing data during the performance of a cleaning operation by executing the instructions stored in the memory 110, may classify the sensing data by type by inputting the sensing data to a neural network model trained to sense a type of floor, may obtain at least one sensing data group based on the sensing data classified by type, may obtain training data of a pre-set size by using the at least one sensing data group, and may train the neural network model by using the training data. In one or more examples, the sensing data may be obtained by one or more sensors included in the vacuum cleaner that indicates one or more characteristics of a floor such as thickness or texture. In one or more examples, the sensing data may be obtained by using the camera 170 to obtain an image of the floor.

Herein, the output from the neural network model comprises at least one label, each of the at least one label corresponding to one of the at least one type of floor.

According to one or more embodiments, the processor 120 may obtain a label corresponding to the sensing data by inputting the collected sensing data to the neural network model, wherein the label may denote a type of floor recognized based on the sensing data, and group the label based on a grouping ratio during a recognition time of recognizing a type of floor, and may obtain at least one sensing data group. For example, the processor 120 may obtain the at least one sensing data group by grouping the at least one label corresponding each of the at least one type based on each grouping ratio corresponding to a continuous recognition time of the each of the at least one type.

Herein, the grouping ratio may be set to be low in the case of a type of floor of which a recognition time of a floor type is long, while the grouping ratio may be set to be high in the case of a type of floor of which a recognition time of a floor type is short. For example, first grouping ratio is a first value corresponding to a first type of the at least one type, second grouping ratio is a second value corresponding to a second type of the at least one type, wherein, the first value is higher than the second value, based on the continuous recognition time being shorter at the first type than at the second type.

According to one or more embodiments, the processor 120 may determine whether a normal label included in the obtained sensing data group is equal to or greater than a reference value, and identify as an effective sensing data group, a sensing data group with the normal label included in the sensing data group being equal to or greater than the reference value, while deleting a sensing data group with the normal label included in the sensing data group being less than the reference value. For example, the processor 120 may identify, among the at least one sensing data group, a sensing data group in which a ratio of at least one normal label to a sum of the at least one normal label and at least one abnormal label is equal to or greater than a reference value; and may determine, as an effective sensing data group, the sensing data group, and delete other sensing data group from the at least one sensing data group. Herein, the reference value may be determined based on a size of the sensing data group.

According to one or more embodiments, the processor 120 may adjust abnormal labels among labels included in the effective sensing data group to normal labels.

According to one or more embodiments, the processor 120 may divide the effective sensing data group into data for training and data for testing at a pre-set ratio.

According to one or more embodiments, the processor 120 may divide data for training included in the effective sensing data group based on a pre-set size to obtain training data, obtain pre-stored training data corresponding to remaining floor types excluding a first floor type corresponding to the effective sensing data group among a plurality of floor types, obtain a training data set by using the training data obtained from the effective sensing data group and pre-stored training data, and train a neural network model by using the training data set.

According to one or more embodiments, the processor 120 may obtain data for testing included in the effective sensing data group, and pre-stored testing data corresponding to remaining floor types excluding a first floor type corresponding to the effective sensing data group among a plurality of floor types, obtain a testing data set by using the data for testing obtained from the effective sensing data group and the pre-stored testing data, and evaluate performance of a trained neural network model by using the testing data set.

According to one or more embodiments, the processor 120 may obtain information on first accuracy of the trained neural network model by using the testing data set, and based on the first accuracy and second accuracy of a neural network model before training, may update the neural network model stored in the electronic apparatus with the trained neural network model.

According to one or more embodiments, the processor 120 may train the neural network model while the vacuum cleaner 100 is held or located at the station device or while the vacuum cleaner 100 does not perform a cleaning operation or while the battery of the vacuum cleaner 100 is equal to or greater than a threshold value.

FIG. 3 is a flowchart provided to explain a control method of a vacuum cleaner for training a neural network model, according to an embodiment.

Each operation may be sequentially performed in the embodiments described hereafter, but not necessarily performed sequentially. For example, the order of each operation may be changed, and at least two operations may be performed in parallel. In one or more example examples, before one operation is completed, another operation may be started.

According to one or more embodiments, it may be understood that steps 310-395 are performed by a processor (e.g., a processor 120 of FIG. 2) of a vacuum cleaner (e.g., a vacuum cleaner 100 of FIG. 2).

According to one or more embodiments, the vacuum cleaner 100 may collect or obtain sensing data while performing a cleaning operation (310). Herein, the sensing data, as data for recognizing a type of floor during the performance of a cleaning operation, may include data on brush currents (i.e., currents generated by a brush motor), data on pressure of the vacuum cleaner, data on a current output of the motor, and data on a deviation value of the brush currents. However, the data are described merely as one example, and certainly, other sensing data may be obtained.

The vacuum cleaner 100 may classify sensing data by type by inputting the sensing data to a neural network model (320). Herein, the neural network model may be an artificial intelligence model trained to identify a type of floor by inputting the sensing data. The type of floor may include a hard floor, a mat, a carpet, a lift and the like, but not limited thereto. Herein, the hard floor may be a type of floor comprised of a hard or solid material such as a tile or wood (a wooden floor) and the like. The mat may be a type of floor where a mat covers a floor. The carpet may be a type of floor where a carpet covers a floor. The lift may be a state in which the vacuum cleaner 100 is lifted.

In one or more embodiments, the vacuum cleaner 100 may input the collected sensing data to the neural network model to obtain a label corresponding to the sensing data. Herein, the label may denote a type of floor recognized based on the sensing data, and may be represented by integers.

For example, as described hereafter, the vacuum cleaner may obtain a label based on input data, as illustrated in FIG. 5A.

Herein, in the case of a label of 0, the type of floor may be identified as a hard floor, and in the case of a label of 1, the type of floor may be a lift. However, the type of floor is described merely as one example, and the embodiments are not limited these configurations.

The vacuum cleaner 100 may obtain at least one sensing data group based on the sensing data classified by type (S330). The sensing data group may be a data group in which the sensing data are grouped based on a type of floor. A method of obtaining a sensing data group is described with reference to FIG. 4.

FIG. 4 is a view provided to explain a method for obtaining a sensing data group, according to an embodiment.

The vacuum cleaner 100 may collect sensing data (410). Herein, the sensing data, as described above, may include at least one of data on brush currents, data on pressure of the vacuum cleaner, data on a current output of the motor, or data on a deviation value of the brush currents.

The vacuum cleaner 100 may input the sensing data to a neural network model and obtain a label corresponding to the sensing data (420).

The vacuum cleaner 100 may group the data (430). In one or more embodiments, the vacuum cleaner 100 may group the label based on a grouping ratio during a recognition time of recognizing a type of floor and may obtain at least one sensing data group.

Specifically, the vacuum cleaner 100 may set the grouping ratio based on the recognition time of recognizing a type of floor. The recognition time of recognizing a type of floor may vary depending on a region or a usage pattern of the user. The recognition time may be set to an average value of a sales area at a time of an initial operation of the vacuum cleaner 100. For example, in the case where the sales area is South Korea, a rate of time of recognizing a floor may be 78%, a rate of time of recognizing a mat may be 12%, and a rate of time of recognizing a carpet and a lift may be 10%. Additionally, the vacuum cleaner 100 may accumulate information on the recognition time of recognizing a type of floor while the vacuum cleaner 100 is used pre-set times (e.g., five times), and obtain a recognition time rate corresponding to the usage pattern of the user. For example, in the case where the recognition time of being recognized as a hard floor is 800 seconds, the recognition time of being recognized as a lift is 50 seconds, the recognition time of being recognized as a mat is 150 seconds, and the recognition time of being recognized as a carpet is 0 second, times initially pre-set by the user, the vacuum cleaner 100 may store a recognition time rate as 80%, 5%, 15% and 0% respectively corresponding to the hard floor, the lift, the mat and the carpet. Later, the vacuum cleaner 100 may perform a cleaning operation a pre-set number of times, and then update the recognition time rate.

The vacuum cleaner 100 may set a grouping ratio based on the recognition time rate. In one or more examples, the grouping ratio may be set to be low (e.g., first value) in the case of a type of floor of which a recognition time of a floor type is long, and may be set to be high (e.g., second value higher than the first value) in the case of a type of floor of which a recognition time of a floor type is short. For example, in the case where the recognition time rate is 80% for a hard floor, 5% for a lift, 15% for a mat, and 0% for a carpet, the vacuum cleaner 100 may set the grouping ratio to 20% for a hard floor, 95% for a lift, 85% for a mat and 100% for a carpet. That is, all of the sensing data of a type of floor of a long recognition time may not be grouped (or part of the data may only be grouped), while most of sensing data of a type of floor of a short recognition time may be grouped.

The vacuum cleaner 100 may obtain at least one sensing data group by grouping a label based on a grouping ratio. For example, in the case where sensing data on 40-second cleaning of a hard floor, 10-second cleaning of a mat, and 5-minute cleaning of a hard floor are collected, the vacuum cleaner 100, as illustrated in FIG. 5B, may group, into a first sensing data group 501, sensing data for 8 seconds that are 20% of the sensing data sensed during the 40-second cleaning of the hard floor; may group, into a second sensing data group 502, sensing data for 9 seconds (round a decimal point) that are 85% of the sensing data sensed during the 10-second cleaning of the mat; and may group, into a third sensing data group 503, sensing data for 1 minute that are 20% of the sensing data sensed during the 5-minute cleaning of the hard floor.

The vacuum cleaner 100 may determine whether a normal label included in the sensing data groups is equal to or greater than a reference value (440). In one or more examples, the normal label may be a label in the case where a type of floor cleaned is the same as a type of floor recognized based on sensing data, while an abnormal label may be a label in the case where a type of floor cleaned is different from a type of floor recognized based on sensing data. For example, in the first sensing data group 501 illustrated in FIG. 5B, the label 0 corresponding to the hard floor may be a normal label, and the label 2 corresponding to the lift may be an abnormal label.

Meanwhile, the reference value may be determined based on sizes of the sensing data groups. For example, as shown in Table 1 hereafter, as the size of a sensing data group becomes smaller, the reference value becomes higher, and as the size of a sensing data group becomes larger, the reference value becomes lower.

TABLE 1
Size of Sensing Data Group
10 20 30 40 50 60
Reference 90% 85% 80% 75% 70% 70%
Value

That is, as the size of a sensing data group becomes larger, a cleaning mode is maintained for a long period, and in the case where the cleaning mode is used reliably, the label is considered reliable, such that the reference value is low. In the case where the normal label included in a sensing data group is equal to or greater than the reference value (450-Y), the vacuum cleaner 100 may identify the sensing data group as an effective sensing data group (460). For example, since the second sensing data group 502 and the third sensing data group 503 among the first to third sensing data groups 501 to 503 illustrated in FIG. 5B include the normal label at the reference value or greater, the second sensing data group 502 and the third sensing data group 503 may be recognized as effective sensing data groups.

In the case where the normal label included in a sensing data group is less than the reference value (450-N), the vacuum cleaner 100 may delete the sensing data group (470). For example, since the normal label of the first sensing data group 501 is less than the reference value among the first to third sensing data groups 501 to 503 illustrated in FIG. 5B is less than the reference value, the vacuum cleaner 100 may delete the first sensing data group 501.

Meanwhile, the vacuum cleaner 100 may adjust an abnormal level among labels included in the effective sensing data group to a normal label. For example, the vacuum cleaner 100, as illustrated in FIG. 5C, may adjust a label corresponding to 13th sensing data included in the second sensing data group 502 from 3 to 2, and may adjust a label corresponding respectively to 24th sensing data and 26th sensing data of the third sensing data group 503 to 0.

The vacuum cleaner 100 may use the sensing data group of which the label is adjusted as training data of a neural network model.

Meanwhile, the vacuum cleaner 100 may separate the obtained sensing data groups into data for training and data for testing in accordance with a pre-set ratio. Herein, the data for training may be data for training a neural network model stored in the vacuum cleaner 100, while the data for testing may be data for evaluating the performance of a trained neural network model.

As one example, the vacuum cleaner 100, as illustrated in FIG. 6A, may separate the obtained sensing data groups into data for training 610 and data for testing 620 in accordance with a ratio of 5:1. However, this ratio is merely an example, and the obtained sensing data groups may be separated into data for training and data for testing at various ratios such as 6:4, 7:3, 8:2, or any other suitable ratio known to one of ordinary skill in the art.

Additionally, the vacuum cleaner 100 may accumulatively store data for testing obtained previously and data for testing obtained currently. For example, the vacuum cleaner 100, as illustrated in FIG. 6B, may accumulatively store data for testing obtained currently 630 and data for testing obtained previously 640. However, in the case where the size of the data for testing stored is greater than a threshold size, the vacuum cleaner 100 may delete and store part of the data for testing obtained previously, without storing the data for testing 640 continuously.

Referring back to FIG. 3, the vacuum cleaner 100 may obtain training data of a pre-set size (340). The training data, as data for training a neural network model, may be obtained by the vacuum cleaner 100, by using a sensing data group. For example, the pre-set size may be 10 seconds, but described merely as one example, and the pre-set size may vary depending on the performance of the vacuum cleaner 100. Detailed description of an example method of obtaining the training data of a pre-set size is provided hereafter with reference to FIGS. 7 and 8.

FIG. 7 is a flowchart provided to explain a method of obtaining a training data set and a testing data set, according to an embodiment.

The vacuum cleaner 100 may obtain at least one sensing data group (710). That is, the vacuum cleaner 100, as described above with reference to FIGS. 3 to 6B, may obtain at least one sensing data group separated into data for training and data for testing.

The vacuum cleaner 100 may sample the sensing data group by a pre-set size (720). That is, the vacuum cleaner 100 may sample part of the sensing data group to cut the sensing data group by a pre-set size. Specifically, since at least one sensing data group obtained may all have a different size, the vacuum cleaner 100 may sample the at least one sensing data group by a pre-set size. For example, the vacuum cleaner 100, as illustrated in FIG. 8, may sample a first sensing data group and a second sensing data group as first data for training 810 and second data for training 820 of a 10-second size that is a pre-set size. However, the pre-set size of 10 is described merely as one example, and certainly, the pre-set size may vary depending on the performance of the vacuum cleaner 100.

The vacuum cleaner 100 may obtain pre-stored training data and testing data corresponding to remaining floor types excluding a floor type corresponding to a sensing data group (730).

Specifically, in the case where training proceeds only with training data of a floor type corresponding to a sensing data group at a time when a neural network model stored in the vacuum cleaner 100 is trained, the catastrophic forgetting problem may occur. In one or more examples, catastrophic forgetting may refer to an abrupt or large loss of previously learned knowledge when a neural network is trained on a new task, a problem rooted in the way neural networks adjust their shared weights. This issue, which also may be referred to as catastrophic interference, is a challenge in continual learning, where AI systems must adapt and acquire new information incrementally without forgetting previous skills. To prevent these disadvantages from occurring, the vacuum cleaner 100 may obtain pre-stored training data corresponding to remaining floor types excluding the floor type corresponding to the sensing data group. For example, in the case where the floor type corresponding to the sensing data group is a hard floor, the vacuum cleaner 100 may obtain pre-stored training data corresponding to a mat, a carpet, a lift. In other words, the vacuum cleaner may obtain training data corresponding to a plurality of floor types as shown in Table 2 hereafter.

TABLE 2
Label 0 1 2 3
Training 10 seconds of 10 10 10
Data training data seconds of seconds of seconds of
included in pre-stored pre-stored pre-stored
sensing data training training training
group data data data

Additionally, the vacuum cleaner 100 may obtain pre-stored testing data corresponding to remaining floor types excluding the floor type corresponding to the sensing data group. For example, in the case where the floor type corresponding to the sensing data group is a hard floor, the vacuum cleaner 100 may obtain pre-stored testing data corresponding to a mat, a carpet, a lift. That is, the vacuum cleaner may obtain testing data corresponding to a plurality of floor types as shown in Table 3 hereafter.

TABLE 3
Label 0 1 2 3
Testing All data All pre-stored All pre-stored All pre-stored
data for testing testing data testing data testing data
included in
sensing data
group

Since the vacuum cleaner 100 obtains the testing data of all floor types as described above, accuracy of a performance evaluation of the neural network model may not deteriorate, and it may be identifier whether the Catastrophic forgetting problem occurs. The vacuum cleaner 100 may obtain a training data set and a testing data set (740).

Specifically, the vacuum cleaner 100 may obtain the training data set by using the training data obtained from the effective sensing data group and the pre-stored training data, and may obtain the testing data set by using the data for testing obtained from the effective sensing data group and the pre-store testing data.

The vacuum cleaner 100 may train a neural network model (350). In particular, the vacuum cleaner 100 may train the neural network model by using the training data set. In one or more embodiments, the vacuum cleaner 100 may train the neural network model by using transfer learning. Herein, the transfer learning may be a machine learning method of training an existing trained neural network model by using the training data set. However, training a neural network model based on transfer learning is described merely as one example, and certainly, a neural network model may be trained based on another training method.

The vacuum cleaner 100 may evaluate performance of a trained neural network model (360). Specifically, the vacuum cleaner 100 may evaluate performance of the trained neural network model by using the testing data set. Detailed description in relation to this is provided with reference to FIG. 9.

FIG. 9 is a flowchart provided to explain a performance evaluation of a trained neural network model, according to an embodiment.

In one or more embodiments, the vacuum cleaner 100 may calculate first accuracy of a trained neural network model by using a testing data set corresponding to a learned type of floor (910). Specifically, the vacuum cleaner 100 may calculate accuracy of a neural network model before/after training from data for testing obtained from a sensing data group, and may calculate accuracy of a neural network model before/after training from pre-stored testing data of a plurality of floor types. For example, in the case where data for testing obtained from sensing data correspond to one floor type, the vacuum cleaner 100 may obtain accuracy of the neural network model before/after training, obtained from the testing data corresponding to one floor type, and accuracy of the neural network model before/after training, obtained from the pre-stored testing data corresponding to four floor types, as shown in Table 4 hereafter.

TABLE 4
Data for Testing
Obtained from Pre-Stored
Sensing Data Testing Data
Accuracy of Neural Accuracy #1(one Accuracy #2
Network Model result) (four results)
before Training
Accuracy of Neural Accuracy #3(one Accuracy #4
Network Model result) (four results)
after Training

The vacuum cleaner 100 may calculate a harmonic mean of the accuracy of the neural network model before training and the accuracy of the trained neural network model (920). Specifically, the vacuum cleaner 100 may calculate a harmonic mean of the accuracy of the neural network model in a total of four cases calculated in Table 4. That is, the vacuum cleaner 100, as shown in Table 5 hereafter, may calculate a first harmonic mean of the accuracy of the neural network model before training, calculated based on the data for testing obtained from the sensing data, a second harmonic mean of the accuracy of the neural network model before training, calculated based on the pre-stored testing data of the plurality of types, a third harmonic mean of the accuracy of the trained neural network model calculated based on the data for testing obtained from the sensing data, and a fourth harmonic mean of the accuracy of the trained neural network model, calculated based on the pre-stored testing data of the plurality of types. In one or more examples, the harmonic mean may be an average used for averaging rates that is calculated by dividing a number of values by a sum of their reciprocals. In one or more examples, the harmonic mean may be calculated in accordance with:

H = n ( 1 X ⁢ 1 + 1 X ⁢ 2 + … + 1 X ⁢ n ) ,

where “n” is the number of values and “xi” are the individual values.

TABLE 5
Data for Testing Obtained from
Sensing Data (Evaluate Learned Pre-Stored Testing Data of
Floor Type Only) Plurality of Types
Accuracy of 0 1 2 3 0 1 2 3
Neural 87.3%   95% 99% 90.10% 97.50%
Network
Model
before
Training
Accuracy of 0 1 2 3 0 1 2 3
Trained 89.1% 95.10% 99% 90.12% 97.50%
Neural
Network
Model

The vacuum cleaner 100 may calculate second accuracy of the trained neural network model by using a pre-stored testing data set corresponding to a floor type that is not learned (930). The vacuum cleaner 100 may evaluate improvement in the performance of the trained neural network model by using the harmonic mean and the second accuracy (940). Specifically, in the case where the harmonic mean calculated in step 920 and the second accuracy calculated in step 930 in the trained neural network model improve further than in the neural network model before training, the vacuum cleaner 100 may evaluate that the performance of the trained neural network model is improved. Additionally, in the case where the accuracy of all the floor types is equal to or greater than a threshold value (e.g., 97%), the vacuum cleaner 100 may evaluate that the performance is improved. Further, even in the case where the accuracy of the trained neural network model is less than that of the neural network model before training within a range where accuracy corresponding to a certain floor type is equal to or greater than a pre-set value (e.g., 97%), the vacuum cleaner 100 may evaluate that the performance is improved.

Referring back to FIG. 3, in the case where it is evaluated that the performance of the trained neural network model is improved (370-Y), the vacuum cleaner 100 may update the neural network model with the trained neural network model (390). Additionally, the vacuum cleaner 100 may identify whether additional training data are present (380), and in the case where no additional training data is present (380-N), the vacuum cleaner 100 completes training. In the case where the additional training data are present (380-Y), the vacuum cleaner 100 may preform step 350 again.

In the case where it is evaluated that the performance of the trained neural network model is not improved (370-N), the vacuum cleaner 100 may identify whether additional training data are present (380), and in the case where no additional training data is present (380-N), the vacuum cleaner 100 completes training. In the case where the additional training data are present (380-Y), the vacuum cleaner 100 may perform step 350 again. At this time, the vacuum cleaner 100 may delete a neural network model of which performance is not improved and may continue to use a previous neural network model.

Meanwhile, as a wireless vacuum cleaner, the vacuum cleaner 100 according to an embodiment may operate through a battery. Accordingly, since a battery issue may occur while a training operation is performed, the vacuum cleaner 100 may perform the training operation only in the case where pre-set conditions are satisfied. Specifically, the vacuum cleaner 100 may train the neural network model while the vacuum cleaner 100 is held or located at the station device 200, or while the vacuum cleaner 100 does not perform a cleaning operation, or while the battery of the vacuum cleaner 100 is equal to or greater than a threshold value. Description in relation to this is described with reference to FIG. 10.

FIG. 10 is a flowchart provided to explain conditions for performing a training operation, according to an embodiment.

In one or more embodiments, the vacuum cleaner 100 may be connected with the station device 200 and may identify whether a charging operation is performed (1010).

In the case where it is identified that the vacuum cleaner 100 is connected with the station device 200 and the charging operation is performed (1010-Y), the vacuum cleaner 100 may perform a training operation of the neural network model (1040).

In the case where it is identified that the vacuum cleaner 100 is connected with the station device 200 and the charging operation is not performed (1010-N), the vacuum cleaner 100 may identify whether the vacuum cleaner 100 performs a cleaning operation (1020).

In the case where it is identified that the cleaning operation is performed (1020-Y), the vacuum cleaner 100 may wait for the training operation (1050).

In the case where it is identified that the cleaning operation is not performed (1020-N), the vacuum cleaner 100 may identify whether a battery value is equal to or greater than a threshold value (1030).

In the case where it is identified that the battery value is equal to or greater than the threshold value (1030-Y), the vacuum cleaner 100 may perform the training operation of the neural network model (1040). In the case where it is identified that the battery value is less than the threshold value (1030-N), the vacuum cleaner 100 may wait for the training operation (1050).

As described above, only in the state where power is supplied reliably to the vacuum cleaner 100, the training operation may be performed, thereby preventing a battery issue that may occur during the training operation.

Meanwhile, in the above-described embodiment, performing the training operation only in the case where pre-set conditions are satisfied is described, but this is described merely as one example, and an evaluation operation as well as the training operation may also be performed only in the case where the pre-set conditions are satisfied.

Meanwhile, in the above-described embodiment, storing a neural network model in the vacuum cleaner 100 is described, but this is described merely as one example, and the station device may store a neural network model. Additionally, the station device may train and evaluate the neural network model. Description in relation to this is provided with reference to FIG. 11.

FIG. 11 is a sequence diagram provided to explain a method for allowing a station device to train a neural network model, according to another embodiment. In the embodiment of FIG. 11, the station device 200 may only store a neural network model, while the vacuum cleaner 100 may not store a neural network model. In this case, the vacuum cleaner 100 may transmit sensing data obtained during a cleaning operation to the station device 200. The station device 200 may identify a type of floor being cleaned by the vacuum cleaner 100 by using the stored neural network model. The station device 200 may transmit information on the identified type of floor (or cleaning mode information) to the vacuum cleaner 100. The vacuum cleaner 100 may perform a cleaning operation based on the information on the identified type of floor (or cleaning mode information). Meanwhile, among operations of FIG. 11, description of operations overlapping with those described specifically with reference to FIG. 3 is avoided.

According to one or more embodiments, the vacuum cleaner 100 may collect sensing data (1110). Additionally, the vacuum cleaner 100 may transmit, to the station device 200, sensing data collected through a wireless communication interface (e.g., a Bluetooth interface) (1120).

The station device 200 may classify the sensing data by type (1130).

The station device 200 may obtain at least one sensing data group (1140).

The station device 200 may obtain training data of a pre-set size (1150).

The station device 200 may train a neural network model by using training data (1160).

The station device 200 may evaluate performance of the trained neural network model by using testing data (1170).

In the case where it is evaluated that the performance is improved, the station device 200 may update the neural network model with the trained neural network model (1180).

The station device 200 may identify a floor type corresponding to the sensing data received from the vacuum cleaner 100 by using the updated neural network model.

Meanwhile, in the above-described embodiment, storing a neural network model only in the station device 200 rather than the vacuum cleaner 100 is described, but this is described merely as one example, and the vacuum cleaner 100 may store a first neural network model while the station device 200 may store a second neural network model. Herein, the first neural network model may be a neural network model that is lighter than the second neural network model. In one or more embodiments, in the case where the vacuum cleaner 100 is wirelessly communicable with the station device 200, the vacuum cleaner 100 may identify a type of floor by using the second neural network model stored in the station device 200, and in the case where the vacuum cleaner 100 is not wirelessly communicable with the station device 200, the vacuum cleaner 100 may identify a type of floor by using the first neural network model. Additionally, the vacuum cleaner 100 itself may train and update the first neural network model, or the station device 200 may train and update the first neural network model and then transmit the same to the vacuum cleaner 100.

According to one or more embodiments, the vacuum cleaner 100 may perform only an inference operation (e.g., an operation of identifying a type of floor) by using the first neural network model, while the station device 200 may perform operations of training and evaluating the first neural network model.

According to one or more embodiments, the vacuum cleaner 100 may train a neural network model by using an external server, and receive a trained neural network model from an external server and update a neural network model. That is, the vacuum cleaner 100 may transmit sensing data collected during a cleaning operation to an external server, and the external server may train a neural network model stored in the vacuum cleaner 100 by using the sensing data. Additionally, the external server may transmit the trained neural network model to the vacuum cleaner 100 after evaluating performance of the trained neural network model.

According to one or more embodiments, the vacuum cleaner 100 may provide a UI for inquiring of the user as to whether to update with the trained neural network model. For example, after training a neural network model, the vacuum cleaner 100 may provide a UI 1210 including a guide message saying “Trained an AI model for sensing a floor type. Want to update with a new AI model?” as illustrated in FIG. 12. In the case where a user command for updating a neural network model is input through the UI 1210, the vacuum cleaner 100 may update the neural network model with the trained neural network model.

According to one or more embodiments, the vacuum cleaner 100 may provide a UI informing the user that the neural network model is updated after the update with the trained neural network model. For example, the vacuum cleaner 100 may provide a UI including a guide message such as “Updated the AI model for sensing a type of floor,” after the update with the trained neural network model.

Meanwhile, the UI may be provided through the display 140 included in the vacuum cleaner 100, but this is described merely as one example, and the UI may be provided by using a user terminal of the same use account as the vacuum cleaner 100.

Meanwhile, the method according to the embodiments set forth herein may be provided in a computer program product. The computer program product may be exchanged between a seller and a purchaser as a commodity. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read only memory (CD-ROM)), or distributed (e.g., downloaded or uploaded) online through an application store (e.g., Play Store™) or directly between two user devices (e.g., smartphones). In the case of online distribution, at least part of the computer program product (e.g., a downloadable app) may be stored at least temporarily, or generated temporarily in the machine-readable storage medium such as a manufacturer's server, a server of an application store, or memory of a relay server.

The method according to the embodiments set forth herein may be implemented with software including instructions stored in a storage medium readable by a machine (e.g., a computer). The machine, as a device capable of calling the stored instructions from the storage medium and operating according to the called instructions, may include the electronic apparatus (e.g., electronic apparatus (e.g., a vacuum cleaner) according to the disclosed embodiments.

Meanwhile, the machine-readable storage medium may be provided in the form of a non-transitory storage medium. Herein, the “non-transitory storage medium” only means a tangible device and means including no signal (e.g., electromagnetic waves) while the term does distinguish semi-permanent or temporary storage of data in the storage medium. For example, the “non-transitory storage medium” may include a buffer where data are temporarily stored.

Based on the above-described instructions being executed by a processor, the processor may perform functions corresponding to the instructions directly or by using other elements under the control of the processor. The instructions may include a code generated or executed by a compiler or an interpreter.

While the example embodiments of the disclosure are illustrated and described above, embodiments of the disclosure are not limited to the embodiments set forth herein, and certainly, various modifications thereof may be made by those skilled in the art to which the disclosure pertains, without departing from the scope of the subject matter of the disclosure claimed in the section of claims, and are not to be understood as separating from the technical spirit or prospect of the disclosure.

Claims

What is claimed is:

1. A vacuum cleaner comprising:

memory storing instructions; and

at least one processor including processing circuitry,

wherein the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to:

obtain sensing data from operation of the vacuum cleaner while performing a cleaning operation;

classify the sensing data by at least one type of floor based on an output obtained from model trained to sense the at least one type by inputting the sensing data;

obtain, based on the sensing data classified by the at least one type, at least one sensing data group;

obtain training data based on the at least one sensing data group; and

modify at least one parameter of the model by training the model based on the training data.

2. The vacuum cleaner as claimed in claim 1, wherein the output comprises at least one label, each of the at least one label corresponding to one of the at least one type of floor, and

wherein the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to:

obtain the at least one sensing data group by grouping the at least one label corresponding each of the at least one type based on each grouping ratio corresponding to a continuous recognition time of the each of the at least one type.

3. The vacuum cleaner as claimed in claim 2, wherein first grouping ratio is a first value corresponding to a first type of the at least one type,

wherein second grouping ratio is a second value corresponding to a second type of the at least one type,

wherein, the first value is higher than the second value, based on the continuous recognition time being shorter at the first type than at the second type.

4. The vacuum cleaner as claimed in claim 2, wherein the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to:

identify, among the at least one sensing data group, a sensing data group in which a ratio of at least one normal label to a sum of the at least one normal label and at least one abnormal label is equal to or greater than a reference value; and

determine, as an effective sensing data group, the sensing data group, and wherein the reference value is corresponding to a size of each sensing data group.

5. The vacuum cleaner as claimed in claim 4, wherein the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to:

adjust the at least one abnormal label included in the effective sensing data group to a normal label.

6. The vacuum cleaner as claimed in claim 4, wherein the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to:

separate the effective sensing data group into first data for training and second data for testing.

7. The vacuum cleaner as claimed in claim 6, wherein the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to:

obtain training data by sampling data in a pre-set size from the first data;

obtain pre-stored training data corresponding to at least one other floor type than a first floor type corresponding to the effective sensing data group among the at least one type;

obtain a training data set based on the training data obtained from the effective sensing data group and the pre-stored training data; and

train the model based on the training data set.

8. The vacuum cleaner as claimed in claim 7, wherein the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to:

obtain the second data for testing included in the effective sensing data group, and pre-stored testing data corresponding to the at least one other floor type than the first floor type corresponding to the effective sensing data group among the at least one floor type;

obtain a testing data set based on the second data and the pre-stored testing data; and

evaluate performance of the trained model based on the testing data set.

9. The vacuum cleaner as claimed in claim 8, wherein the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to:

obtain information on first accuracy of the trained model based on the evaluating; and

update, based on the first accuracy and second accuracy of the model before the training, the model before the training stored in the vacuum cleaner.

10. The vacuum cleaner as claimed in claim 1, wherein the instructions, when executed by the at least one processor individually or collectively, cause the vacuum cleaner to:

train the model based on at least one of the vacuum cleaner being located at a station device, the vacuum cleaner not performing the cleaning operation, or a battery of the vacuum cleaner being equal to or greater than a threshold value.

11. A control method of a vacuum cleaner, the method comprising:

obtaining sensing data from operation of the vacuum cleaner while performing a cleaning operation;

classifying the sensing data by at least one type of floor based on an output obtained from model trained to sense the at least one type by inputting the sensing data;

obtaining, based on the sensing data classified by the at least one type, at least one sensing data group;

obtaining training data based on the at least one sensing data group; and

modifying at least one parameter of the model by training the model based on the training data.

12. The method as claimed in claim 11, wherein the output comprises at least one label, each of the at least one label corresponding to one of the at least one type of floor, and

wherein the obtaining the at least one sensing data group comprises obtaining the at least one sensing data group by grouping the at least one label corresponding each of the at least one type based on each grouping ratio corresponding to a continuous recognition time of the each of the at least one type.

13. The method as claimed in claim 12,

wherein first grouping ratio is a first value corresponding to a first type of the at least one type,

wherein second grouping ratio is a second value corresponding to a second type of the at least one type,

wherein, the first value is higher than the second value, based on the continuous recognition time being shorter at the first type than at the second type.

14. The method as claimed in claim 12, wherein the obtaining the at least one sensing data group comprises;

identifying, among the at least one sensing data group, a sensing data group in which a ratio of at least one normal label to a sum of the at least one normal label and at least one abnormal label is equal to or greater than a reference value; and

determining, as an effective sensing data group, the sensing data group, and

wherein the reference value is corresponding to a size of each sensing data group.

15. The method as claimed in claim 14,

wherein the obtaining the at least one sensing data group comprises adjusting the at least one abnormal label included in the effective sensing data group to a normal label.

16. The method as claimed in claim 14, wherein the method further comprises, separating the effective sensing data group into first data for training and second data for testing.

17. The method as claimed in claim 16, wherein the obtaining training data comprises;

obtaining training data by sampling data in a pre-set size from the first data,

obtaining pre-stored training data corresponding to at least one other floor type than a first floor type corresponding to the effective sensing data group among the at least one type, and

obtaining a training data set based on the training data obtained from the effective sensing data group and the pre-stored training data,

wherein the modifying comprises training the model based on the training data set.

18. The method as claimed in claim 17, wherein the method further comprises,

obtaining the second data for testing included in the effective sensing data group, and pre-stored testing data corresponding to the at least one other floor type than the first floor type corresponding to the effective sensing data group among the at least one floor type;

obtaining a testing data set based on the second data and the pre-stored testing data; and

evaluating performance of the trained model based on the testing data set.

19. The method as claimed in claim 18, wherein the evaluating comprises:

obtaining information on first accuracy of the trained model based on the evaluating; and

updating, based on the first accuracy and second accuracy of the model before the training, the model before the training stored in the vacuum cleaner.

20. A non-transitory computer readable medium having instructions stored therein, which when executed by a processor in a vacuum cleaner, cause the processor to execute a method comprising:

obtaining sensing data from operation of the vacuum cleaner while performing a cleaning operation;

classifying the sensing data by at least one type of floor based on an output obtained from model trained to sense the at least one type by inputting the sensing data;

obtaining, based on the sensing data classified by the at least one type, at least one sensing data group;

obtaining training data based on the at least one sensing data group; and

modifying at least one parameter of the model by training the model based on the training data.

Resources

Images & Drawings included:

Sources:

Similar patent applications:

Recent applications in this class:

Recent applications for this Assignee: