Vacuum cleaner and control method therefor
The vacuum cleaner's neural network model learns to detect floor types by classifying and grouping sensing data, addressing malfunctions in user environments and enhancing operational accuracy.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- SAMSUNG ELECTRONICS CO LTD
- Filing Date
- 2025-12-17
- Publication Date
- 2026-07-02
AI Technical Summary
Existing vacuum cleaners are not optimized for user environments due to constraints in sensing data collection and model performance, leading to a high probability of malfunction on floor types not encountered during development, and the likelihood of malfunction increases with extended use as brush characteristics change.
A vacuum cleaner equipped with a neural network model that learns to detect floor types by acquiring and classifying sensing data, grouping valid data based on recognition time ratios, correcting labels, separating data for training and testing, and updating the model based on performance evaluation.
The solution enhances the vacuum cleaner's ability to adapt to various floor types, improving operational accuracy and reliability by optimizing the neural network model for specific user environments.
Smart Images

Figure KR2025022043_02072026_PF_FP_ABST
Abstract
Description
Vacuum cleaner and its control method
[0001] The present disclosure relates to a vacuum cleaner and a control method thereof, and more specifically, to a vacuum cleaner and a control method thereof capable of learning a neural network model for detecting floor types using sensing data.
[0002] A vacuum cleaner is a device used to perform cleaning, and recent vacuum cleaners are equipped with various functions. In particular, while performing cleaning operations, the vacuum cleaner can detect the type of floor using a neural network model and operate in a cleaning mode based on the detected floor type.
[0003] However, existing vacuum cleaners have limitations in that they are not optimized for the user environment due to constraints in sensing data collection and model performance. Consequently, there is a high probability of malfunction on floor types not encountered during the development process. Furthermore, as users operate the device for extended periods, brush characteristics change, increasing the likelihood of malfunction compared to the initial state.
[0004] The information described above may be provided as related art for the purpose of aiding understanding of the present disclosure. No claim or determination is made as to whether any of the foregoing may be applied as prior art related to the present disclosure.
[0005] According to one embodiment of the present disclosure, a vacuum cleaner comprises: a memory for storing instructions; and at least one processor including processing circuitry; wherein, when the instructions are executed individually or collectively by the at least one processor, the vacuum cleaner acquires sensing data from the operation of the vacuum cleaner while performing a cleaning operation, classifies the type of the sensing data based on the output obtained by inputting the sensing data into a model trained to detect at least one type of floor, acquires at least one group of sensing data based on the type of the sensing data, acquires training data based on the at least one group of sensing data, and trains the model based on the training data to modify at least one parameter of the model.
[0006] The above output includes at least one label, each of the at least one label corresponds to one of the at least one floor types, and when the instructions are executed individually or collectively by the at least one processor, the cleaner may obtain the at least one sensing data group by grouping the at least one label corresponding to each of the at least one type based on each grouping ratio corresponding to the consecutive recognition time of each of the at least one type.
[0007] The first grouping ratio is a first value corresponding to the first type among the at least one type, and the second grouping ratio is a second value corresponding to the second type among the at least one type, and based on the fact that the continuous recognition time in the first type is shorter than in the second type, the first value may be greater than the second value.
[0008] When the above instructions are executed individually or collectively by the at least one processor, the cleaner identifies a sensing data group in which the ratio of the at least one normal label to the sum of at least one normal label and at least one abnormal label among the at least one sensing data group is greater than or equal to a reference value, and determines the identified sensing data group as a valid sensing data group, wherein the reference value may correspond to the size of each sensing data group.
[0009] When the above instructions are executed individually or collectively by the at least one processor, the cleaner may correct the at least one label included in the valid sensing data group to a normal label.
[0010] When the above instructions are executed individually or collectively by the at least one processor, the cleaner may separate the valid sensing data group into first data for training and second data for testing.
[0011] When the above instructions are executed individually or collectively by the at least one processor, the cleaner may acquire training data by sampling from the first data by a preset size, acquire stored training data corresponding to at least one other type among the at least one floor type other than the first floor type corresponding to the valid sensing data group, acquire a training data set based on the training data acquired from the valid sensing data and the stored training data, and train the model based on the training data set.
[0012] When the above instructions are executed individually or collectively by the at least one processor, the cleaner may acquire the second test data included in the valid sensing data group and the at least one other type among the at least one floor types other than the first floor type corresponding to the valid sensing data group, acquire a test data set based on the second data and the test data set, and evaluate the performance of the learned model based on the test data set.
[0013] When the above instructions are executed individually or collectively by the at least one processor, the cleaner may obtain information regarding the first accuracy of the learned model based on the evaluation, and update the pre-learned model stored in the cleaner based on the first accuracy and the second accuracy of the pre-learned model.
[0014] When the above instructions are executed individually or collectively by the at least one processor, the vacuum cleaner may learn the model based on at least one of the following: the vacuum cleaner is located at a station device, the vacuum cleaner does not perform the cleaning operation, or the vacuum cleaner's battery is above a threshold value.
[0015] Meanwhile, a control method for a vacuum cleaner according to one embodiment of the present disclosure comprises: a step of acquiring sensing data from the operation of the vacuum cleaner while performing a cleaning operation; a step of classifying the type of the sensing data based on an output obtained by inputting the sensing data into a model trained to detect at least one type of floor; a step of acquiring at least one group of sensing data based on the type of the sensing data; a step of acquiring training data based on the at least one group of sensing data; and a step of training the model based on the training data to modify at least one parameter of the model.
[0016] The above output includes at least one label, each of the at least one label corresponds to one of the types of the at least one floor, and the step of acquiring the at least one sensing data group may be to acquire the at least one sensing data group by grouping the at least one label corresponding to each of the at least one type based on each grouping ratio corresponding to the consecutive recognition time of each of the at least one type.
[0017] The first grouping ratio is a first value corresponding to the first type among the at least one type, and the second grouping ratio is a second value corresponding to the second type among the at least one type, and based on the fact that the continuous recognition time in the first type is shorter than in the second type, the first value may be greater than the second value.
[0018] The step of acquiring at least one sensing data group comprises: identifying a sensing data group in which the ratio of the at least one normal label to the sum of at least one normal label and at least one abnormal label among the at least one sensing data group is greater than or equal to a reference value; and determining the identified sensing data group as a valid sensing data group; wherein the reference value may correspond to the size of each sensing data group.
[0019] The step of acquiring at least one sensing data group may include the step of correcting at least one abnormal label included in the valid sensing data group into a normal label.
[0020] The above method includes the step of separating the valid sensing data group into first data for training and second data for testing.
[0021] The step of acquiring the above training data includes: acquiring training data by sampling from the first data by a preset size; acquiring previously stored training data corresponding to at least one other type other than the first floor type corresponding to the valid sensing data group among the at least one floor type; and acquiring a training data set based on the training data acquired from the valid sensing data and the previously stored training data; and the step of modifying may include the step of training the model based on the training data set.
[0022] The above method may include: a step of obtaining a second test data included in the valid sensing data group and a pre-stored test data corresponding to at least one other type among at least one floor type other than the first floor type corresponding to the valid sensing data group; a step of obtaining a test data set based on the second data and the pre-stored test data; and a step of evaluating the performance of the learned model based on the test data set.
[0023] The evaluation step may include: a step of obtaining information on the first accuracy of the learned model based on the evaluation; and a step of updating the pre-learned model stored in the cleaner based on the first accuracy and the second accuracy of the pre-learned model.
[0024] Meanwhile, a non-volatile computer-readable medium according to one embodiment of the present disclosure comprises instructions stored therein, and when said instructions are executed by a processor of a vacuum cleaner, the processor may execute the following method. Herein, the method comprises: acquiring sensing data from the operation of the vacuum cleaner while performing a cleaning operation; classifying the type of said sensing data based on an output obtained by inputting said sensing data into a model trained to detect at least one type of floor; acquiring at least one group of said sensing data based on the type of said sensing data; acquiring training data based on said at least one group of said sensing data; and training said model based on said training data to modify at least one parameter of said model.
[0025] The above and other aspects, features, and advantages of specific embodiments of the present disclosure will become more apparent from the following description, which is referenced together with the accompanying drawings.
[0026] FIG. 1 is a drawing for explaining a vacuum cleaner and a station device according to one embodiment of the present disclosure.
[0027] FIG. 2 is a block diagram illustrating the configuration of a vacuum cleaner according to one embodiment of the present disclosure.
[0028] FIG. 3 is a flowchart illustrating a control method for a vacuum cleaner to learn a neural network model according to one embodiment of the present disclosure.
[0029] FIGS. 4, 5a, 5b and 5c are drawings illustrating a method for acquiring a group of sensing data according to one embodiment of the present disclosure.
[0030] FIGS. 6a and 6b are drawings illustrating a method for separating a group of sensing data into training data and test data according to one embodiment of the present disclosure.
[0031] FIGS. 7 and FIGS. 8 are drawings for explaining a method for obtaining a training data set and a test data set according to one embodiment of the present disclosure.
[0032] FIG. 9 is a flowchart illustrating the performance evaluation of a learned neural network model according to one embodiment of the present disclosure.
[0033] FIG. 10 is a flowchart illustrating conditions for performing a learning operation according to one embodiment of the present disclosure.
[0034] FIG. 11 is a sequence diagram illustrating a method for a station device to learn a neural network model according to another embodiment of the present disclosure.
[0035] FIG. 12 is a drawing illustrating a UI for inquiring whether to update a learned neural network model according to one embodiment of the present disclosure.
[0036] The present disclosure will be described in detail below with reference to the attached drawings.
[0037] The terms used in the embodiments of this disclosure have been selected to be as widely used as possible, taking into account their functions within this disclosure; however, these terms may vary depending on the intent of those skilled in the art, case law, the emergence of new technologies, etc. Additionally, in specific cases, terms have been arbitrarily selected by the applicant, and in such cases, their meanings will be described in detail in the relevant explanatory section of this disclosure. Therefore, terms used in this disclosure should be defined not merely by their names, but based on their meanings and the overall content of this disclosure.
[0038] In this specification, expressions such as “have,” “may have,” “include,” or “may include” indicate the presence of such features (e.g., numerical values, functions, operations, or components such as parts) and do not exclude the presence of additional features.
[0039] The expression "at least one of A or B" should be understood as representing either "A" or "B" or "A and B".
[0040] Expressions such as "first," "second," "first," or "second" used in this specification may modify various components regardless of order and / or importance, and are used only to distinguish one component from another and do not limit said components.
[0041] Where it is stated that a component (e.g., Component 1) is "(operatively or communicatively) coupled with / to" or "connected to" another component (e.g., Component 2), it should be understood that the component may be directly connected to the other component or connected through the other component (e.g., Component 3).
[0042] The singular expression includes the plural expression unless the context clearly indicates otherwise. In this application, terms such as "comprising" or "consisting of" are intended to specify the existence of the features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, and should be understood as not precluding the existence or addition of one or more other features, numbers, steps, actions, components, parts, or combinations thereof.
[0043] In the present disclosure, a "module" or "part" performs at least one function or operation and may be implemented in hardware or software, or a combination of hardware and software. Additionally, a plurality of "modules" or a plurality of "parts" may be integrated into at least one module and implemented by at least one processor, except for a "module" or "part" that needs to be implemented in specific hardware.
[0044] In this specification, the term "user" may refer to a person using a vacuum cleaner or a device using an electronic device (e.g., an artificial intelligence electronic device).
[0045] An embodiment of the present disclosure will be described in more detail below with reference to the attached drawings.
[0046] FIG. 1 is a drawing for illustrating a vacuum cleaner (100) and a station device (200) according to one embodiment.
[0047] Referring to FIG. 1, the vacuum cleaner (100) may be a device including a battery. The vacuum cleaner (100) can perform electrical operations wirelessly using a charged battery. The vacuum cleaner (100) can perform a predetermined function wirelessly even without being connected to a plug via a wire.
[0048] In one or more embodiments, the vacuum cleaner (100) may be a device that performs the function of sucking up foreign matter through the suction part (190). For example, the vacuum cleaner (100) may be a vacuum cleaner that performs a cleaning function.
[0049] In one or more embodiments, for example, the vacuum cleaner (100) may be a handheld vacuum cleaner operated by a user. The handheld vacuum cleaner may be a vacuum cleaner that includes a handle for the user to hold 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 stick-shaped body and a handle. However, this is only one embodiment, and the vacuum cleaner (100) may be a mobile robot that moves automatically. Also, in one or more embodiments, the vacuum cleaner (100) may be included in a larger device such as a vehicle or other type of mobile device.
[0050] According to one or more embodiments, the vacuum cleaner (100) may detect the type of floor using a learned neural network model and operate in a mode (or function) corresponding to the detected type of floor. Here, the learned neural network model may be a model learned using sensing data collected while the vacuum cleaner (100) performs cleaning and information about the type of floor as learning data. The neural network model may be referred to by various terms such as an artificial intelligence (AI) model, a learning model, a floor type detection model, or other types of appropriate learning models known to a person skilled in the art.
[0051] The station device (200) can perform the operation of charging the battery of the vacuum cleaner (100). In one or more embodiments, when the vacuum cleaner (100) is mounted (or placed, connected) to the station device (200), the charging terminal included in the vacuum cleaner (100) and the charging terminal included in the station device (200) are connected so that the battery of the vacuum cleaner (100) can be charged. In one or more embodiments, the vacuum cleaner (100) can be charged wirelessly.
[0052] The station device (200) may include a configuration for storing foreign matter sucked up by the vacuum cleaner (100). In one or more embodiments, when the vacuum cleaner (100) is mounted (or placed, connected) to the station device (200), the station device (200) may suck up and store foreign matter sucked up while the vacuum cleaner (100) performs a cleaning operation.
[0053] Meanwhile, although the above-described embodiment describes the learned neural network model being stored in the vacuum cleaner (100), this is merely one embodiment, and it is obvious that the learned neural network model can be stored in the station device (200). Additionally, the first learned neural network model may be stored in the vacuum cleaner (100), and the second learned neural network model may be stored in the station device (200). In one or more embodiments, the vacuum cleaner (100) may have the first learned neural network model pre-loaded. In one or more embodiments, the first learned neural network model may be downloaded to the vacuum cleaner (100) from a remote source, such as a remote server or cloud. In one or more embodiments, the first learned neural network model may be refined or adjusted during the operation of the vacuum cleaner (100), thereby allowing the first learned neural network model to be optimized for a specific user's environment.
[0054] FIG. 2 is a block diagram illustrating the specific configuration of a vacuum cleaner (100) according to one embodiment.
[0055] Referring to FIG. 2, the vacuum cleaner (100) may include a memory (110), a processor (120), a communication interface (130), a display (140), an operation 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 supply unit (180) and a suction unit (190).
[0056] The memory (110) may be implemented as internal memory such as ROM (e.g., EEPROM (electrically erasable programmable read-only memory)) or RAM included in the processor (120), or as memory separate from the processor (120). Depending on the purpose of data storage, the memory (110) may be implemented as a memory embedded in the vacuum cleaner (100) or as a memory that can be attached to and detached from the vacuum cleaner (100). For example, data for operating the vacuum cleaner (100) may be stored in memory embedded in the vacuum cleaner (100), and data for the expansion function of the vacuum cleaner (100) may be stored in memory that can be attached to and detached from the vacuum cleaner (100).
[0057] In the case of memory embedded in the vacuum cleaner (100), it may be implemented as at least one of volatile memory (e.g., DRAM (dynamic RAM), SRAM (static RAM), or SDRAM (synchronous dynamic RAM), etc.), non-volatile memory (e.g., OTPROM (one time programmable ROM), PROM (programmable ROM), EPROM (erasable and programmable ROM), EEPROM (electrically erasable and programmable ROM), mask ROM, flash ROM, flash memory (e.g., NAND flash or NOR flash), etc.), hard drive, or solid state drive (SSD), and in the case of memory that can be attached to the vacuum cleaner (100), it may be implemented in the form of a memory card (e.g., CF (compact flash), SD (secure digital), Micro-SD (micro secure digital), Mini-SD (mini secure digital), xD (extreme digital), MMC (multi-media card), etc.), external memory that can be connected to a USB port (e.g., USB memory).
[0058] The memory (110) can store at least one instruction. Based on the instruction stored in the memory (110), the processor (120) can perform various operations.
[0059] In one or more embodiments, the memory (110) may store a neural network model trained to identify the type of floor.
[0060] The communication interface (130) is a configuration that communicates with various types of external devices according to various types of communication methods. The communication interface (130) may include a wireless communication module or a wired communication module. Each communication module may be implemented in the form of at least one hardware chip.
[0061] A wireless communication module may be a module that communicates wirelessly with an external device. For example, a wireless communication module may include at least one module among a Wi-Fi module, a Bluetooth module, an infrared communication module, or other communication modules.
[0062] Wi-Fi modules and Bluetooth modules can perform communication using Wi-Fi and Bluetooth methods, respectively. When using a Wi-Fi module or a Bluetooth module, various connection information, such as the SSID (service set identifier) and session key, is transmitted and received first; after establishing a communication connection using this information, various types of information can be transmitted and received.
[0063] The infrared communication module performs communication according to infrared communication (IrDA, Infrared Data Association) technology, which uses infrared rays located between visible light and millimeter waves to wirelessly transmit data over short distances.
[0064] Other communication modules may include at least one communication chip that performs communication according to various wireless communication standards such as Zigbee, 3G (3rd Generation), 3GPP (3rd Generation Partnership Project), LTE (Long Term Evolution), LTE-A (LTE Advanced), 4G (4th Generation), and 5G (5th Generation), in addition to the communication method described above.
[0065] According to one or more embodiments, the communication interface (130) may use the same communication module (e.g., Wi-Fi module) to communicate with an external device, such as a remote control device, and an external server.
[0066] According to one or more embodiments, the communication interface (130) may use different communication modules to communicate with external devices, such as a remote control device and an external server. For example, the communication interface (130) may use at least one of an Ethernet module or a Wi-Fi module to communicate with an external server, and may use a Bluetooth module to communicate with an external device, such as a remote control device. However, these features are merely examples, and the communication interface (130) may use at least one of various communication modules when communicating with multiple external devices or external servers.
[0067] According to one or more embodiments, the communication interface (130) can transmit information about the sensing data collected to the station device (200). Additionally, the communication interface (130) can obtain information about an updated neural network model from the station device (200).
[0068] The display (140) can be implemented as various types of displays such as an LCD (Liquid Crystal Display), an OLED (Organic Light Emitting Diodes) display, and a PDP (Plasma Display Panel). The display (140) may also include a driving circuit, a backlight unit, etc., which can be implemented in forms such as an a-si TFT (amorphous silicon thin film transistor), an LTPS (low temperature poly silicon) TFT, and an OTFT (organic TFT). The display (140) can be implemented as a touch screen combined with a touch sensor, a flexible display, a 3D display, a three-dimensional display, etc. According to one embodiment of the present disclosure, the display (140) may include not only a display panel that outputs an image, but also a bezel that houses the display panel. In particular, according to one embodiment of the present disclosure, the bezel may include a touch sensor for detecting user interaction.
[0069] The operation interface (150) may be implemented as a device such as a button, touch pad, mouse, and keyboard, or as a touch screen capable of performing the aforementioned display function and operation input function. The button may be a various type of button, such as a mechanical button, touch pad, or wheel, formed in any area of the exterior of the main body of the vacuum cleaner (100), such as the front, side, or rear portions.
[0070] The input / output interface (155) may be any one of the following interfaces: HDMI (High Definition Multimedia Interface), MHL (Mobile High-Definition Link), USB (Universal Serial Bus), DP (Display Port), Thunderbolt, VGA (Video Graphics Array) port, RGB port, D-SUB (D-subminiature), or DVI (Digital Visual Interface). The input / output interface (155) may input or output at least one of audio or video signals. Depending on the implementation example, the input / output interface (155) may include separate ports for inputting and outputting only audio signals and for inputting and outputting only video signals, or it may be implemented as a single port for inputting and outputting both audio and video signals. The vacuum cleaner (100) may transmit at least one of the audio or video signals 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) can be connected to an external device, and the vacuum cleaner (100) can transmit at least one of an audio signal or a video signal to the external device through the output port.
[0071] The input / output interface (155) can be connected to a communication interface. The input / output interface (155) can transmit information received from an external device to the communication interface or transmit information received through the communication interface to an external device.
[0072] The speaker (160) may be a component that outputs various audio data as well as various notification sounds or voice messages.
[0073] The microphone (165) is a component for receiving user voice or other sounds and converting them into audio data. The microphone (165) can receive the user's voice when active. For example, the microphone (165) may be formed integrally on the upper side, front side, or side side of the vacuum cleaner (100). The microphone (165) may include various components such as a microphone for collecting analog user voice, an amplifier circuit for amplifying the collected user voice, an A / D conversion circuit for sampling the amplified user voice and converting it into a digital signal, and a filter circuit for removing noise components from the converted digital signal.
[0074] The camera (170) is configured to capture an object and generate an image, and the image includes both video and still images. The camera (170) can acquire an image of at least one external device and can be implemented as a camera, lens, infrared sensor, etc.
[0075] The camera (170) may include a lens and an image sensor. The types of lenses include general-purpose lenses, wide-angle lenses, zoom lenses, etc., and may be determined according to the type, characteristics, and usage environment of the vacuum cleaner (100). As an image sensor, a Complementary Metal Oxide Semiconductor (CMOS) and a Charge Coupled Device (CCD) may be used.
[0076] The power supply unit (180) includes a rechargeable battery and can supply power to the components of the vacuum cleaner (100). For example, the processor (120) can control the suction unit (190) based on the power supplied from the battery.
[0077] In particular, the power supply unit (180) can charge the battery through a charging function mounted on the station device. The processor (120) can perform a charging function to charge the battery.
[0078] The suction unit (190) can perform a cleaning operation by sucking in foreign matter. In particular, the suction unit (190) may include a suction motor driven by power supplied through the power supply unit (180) and a dust bin that stores foreign matter sucked in according to the rotation of the suction motor.
[0079] The processor (120) may be implemented as a digital signal processor (DSP) that processes digital signals, a microprocessor, or a time controller (TCON). However, it is not limited thereto and may include or be defined by 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), a communication processor (CP), or an ARM (advanced reduced instruction set computer (RISC) machine) processor. The processor (120) may be implemented as a System on Chip (SoC) or large scale integration (LSI) with a built-in processing algorithm, or may be implemented in the form of a Field Programmable Gate Array (FPGA). The processor (120) can perform various functions by executing computer executable instructions stored in memory (110).
[0080] According to one or more embodiments, the processor (120) collects or acquires sensing data while performing a cleaning operation by executing instructions stored in memory (110), classifies the sensing data by type by inputting the sensing data into a neural network model trained to detect the type of floor, acquires at least one group of sensing data based on the sensing data classified by type, acquires training data of a preset size using at least one group of sensing data, and trains the neural network model using the training data. In one or more embodiments, the sensing data may be acquired through one or more sensors included in the vacuum cleaner that exhibit one or more characteristics such as the thickness or texture of the floor. In one or more embodiments, the sensing data may be acquired by acquiring an image of the floor using a camera (170).
[0081] Here, the output from the neural network model includes at least one label, and each of the at least one label may correspond to one of the types of the at least one floor.
[0082] According to one or more embodiments, the processor (120) inputs the collected sensing data into a neural network model to obtain a label corresponding to the sensing data, wherein the label represents a type of floor recognized through the sensing data, and at least one group of sensing data can be obtained by grouping the label based on a grouping ratio during the recognition time of recognizing the type of floor. For example, the processor (120) can obtain at least one group of sensing data by grouping at least one label corresponding to each of at least one type based on each grouping ratio corresponding to the consecutive recognition time of each of at least one type.
[0083] Here, the grouping ratio may be set low for floor types with a long floor type recognition time and high for floor types with a short floor type recognition time. For example, the first grouping ratio is a first value corresponding to the first type among at least one type, and the second grouping ratio is a second value corresponding to the second type among the at least one type, and based on the fact that the continuous recognition time in the first type is shorter than in the second type, the first value may be greater than the second value.
[0084] According to one or more embodiments, the processor (120) determines whether the normal label included in the acquired sensing data group is above a threshold value, identifies the sensing data group in which the normal label included in the sensing data group is above the threshold value as a valid sensing data group, and deletes the sensing data group in which the normal label included in the sensing data group is below the threshold value. For example, the processor (120) identifies a sensing data group in which the ratio of at least one normal label to the sum of at least one normal label and at least one abnormal label among at least one sensing data group is above a threshold value, determines the identified sensing data group as a valid sensing data group, and deletes the sensing data group other than the at least one sensing data group. Here, the threshold value may be determined according to the size of the sensing data group.
[0085] According to one or more embodiments, the processor (120) can correct an abnormal label among the labels included in a valid sensing data group into a normal label.
[0086] According to one or more embodiments, the processor (120) can divide a valid group of sensing data into training data and test data at a preset ratio.
[0087] According to one or more embodiments, the processor (120) obtains training data by dividing training data included in a valid sensing data group into preset sizes, obtains stored training data corresponding to the remaining floor types other than the first floor type corresponding to the valid sensing data group among a plurality of floor types, obtains a training data set using the training data obtained from the valid sensing data group and the stored training data, and can train a neural network model using the training data set.
[0088] According to one or more embodiments, the processor (120) obtains test data included in a valid sensing data group and pre-stored test data corresponding to the remaining floor types other than the first floor type corresponding to the valid sensing data group among a plurality of floor types, obtains a test data set using the test data obtained from the valid sensing data group and the pre-stored test data, and can evaluate the performance of a learned neural network model using the test data set.
[0089] According to one or more embodiments, the processor (120) obtains information about a first accuracy of a learned neural network model using a test data set, and can update a neural network model stored in an electronic device to a learned neural network model based on the first accuracy and a second accuracy of a neural network model prior to learning.
[0090] According to one or more embodiments, the processor (120) can train a neural network model while the vacuum cleaner (100) is mounted or positioned on a station device, while the vacuum cleaner (100) is not performing a cleaning operation, or while the battery of the vacuum cleaner (100) is above a threshold.
[0091] FIG. 3 is a flowchart illustrating a control method for a vacuum cleaner to learn a neural network model according to one embodiment of the present disclosure.
[0092] In the following embodiments, each operation may be performed sequentially, but is 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 embodiments, another operation may be initiated before one operation is completed.
[0093] According to one or more embodiments, 310 to 395 may be understood to be performed in a processor (e.g., processor (120) of FIG. 2) of a vacuum cleaner (e.g., vacuum cleaner (100) of FIG. 2).
[0094] According to one or more embodiments, the vacuum cleaner (100) may collect or acquire sensing data while performing a cleaning operation (310). Here, the sensing data may be data for recognizing the type of floor while performing a cleaning operation, and may include data on brush current (i.e., current generated from a brush motor), data on the pressure of the vacuum cleaner, data on the current motor output, and data on the deviation value of the brush current. However, this is merely one embodiment, and it is obvious that other sensing data may be acquired.
[0095] The vacuum cleaner (100) can classify the sensing data by type by inputting the sensing data into a neural network model (320). Here, the neural network model may be an artificial intelligence model trained to identify the type of floor by inputting the sensing data. The types of floors may include, but are not limited to, hard floors, mats, carpets, lifts, etc. Here, a hard floor may be a type of floor made of a hard or solid material such as tiles or wood (flooring). A mat may be a type of floor with a mat laid on the floor. A carpet may be a type of floor with a carpet laid on the floor. A lift may be a state in which the vacuum cleaner (100) is lifted.
[0096] In one or more embodiments, the vacuum cleaner (100) can input the collected sensing data into a neural network model to obtain a label corresponding to the sensing data. Here, the label may represent the type of floor recognized through the sensing data and may be expressed as an integer.
[0097] For example, as shown below, the vacuum cleaner can obtain a label according to the input data, as illustrated in FIG. 5a.
[0098] Here, if the label is 0, the type of floor can be identified as a hard floor, and if the label is 1, the type of floor can be a lift. However, this is merely one example and is not limited to this example.
[0099] The vacuum cleaner (100) can acquire at least one group of sensing data based on sensing data classified by type (S330). The group of sensing data may be a group of data in which sensing data is grouped according to the type of floor. A method for acquiring the group of sensing data will be explained with reference to FIG. 4.
[0100] FIG. 4 is a drawing for explaining a method for acquiring a sensing data group according to one embodiment of the present disclosure.
[0101] The vacuum cleaner (100) can collect sensing data (410). Here, the sensing data may include at least one of data for brush current, data for pressure of the vacuum cleaner, data for current motor output, or data for deviation values of brush current, as previously described.
[0102] The vacuum cleaner (100) can input sensing data into a neural network model to obtain a label corresponding to the sensing data (420).
[0103] The vacuum cleaner (100) can group data (430). In one or more embodiments, the vacuum cleaner (100) can obtain at least one group of sensing data by grouping labels based on a grouping ratio during a recognition time for recognizing the type of floor.
[0104] Specifically, the vacuum cleaner (100) can set a grouping ratio based on the recognition time for recognizing the type of floor. The recognition time for recognizing the type of floor can be variably changed depending on the region or the user's usage pattern. When the vacuum cleaner (100) is first operated, it can be set to the average value of the sales region. For example, if the sales region is Korea, the ratio of the time for recognizing floors can be 78%, the ratio of the time for recognizing mats can be 12%, and the ratio of the time for recognizing carpets and lifts can be 10%. Then, the vacuum cleaner (100) can accumulate information on the recognition time for recognizing the type of floor during a preset number of uses (e.g., 5 times) and obtain a recognition time ratio corresponding to the user's usage pattern. For example, if the user recognizes the hard floor for 800 seconds, the lift for 50 seconds, the mat for 150 seconds, and the carpet for 0 seconds during the initial preset number of times, the vacuum cleaner (100) can store the recognition time ratio as hard floor 80%, lift 5%, mat 15%, and carpet 0%. Then, the vacuum cleaner (100) can update the recognition time ratio after performing the preset number of cleaning operations.
[0105] The vacuum cleaner (100) can set a grouping ratio according to the recognition time ratio. In one or more embodiments, the grouping ratio may be set low (e.g., to a first value) for floor types with a long recognition time and high (e.g., to a second value higher than the first value) for floor types with a short recognition time. For example, if the recognition time ratio is hard floor 80%, lift 5%, mat 15%, and carpet 0%, the vacuum cleaner (100) can set the grouping ratio to hard floor 20%, lift 95%, mat 85%, and carpet 100%. That is, the sensing data for floor types with a long recognition time does not group all data (or groups only some data), while the sensing data for floor types with a short recognition time can group most of the sensed data.
[0106] The vacuum cleaner (100) can obtain at least one group of sensing data by grouping labels based on a grouping ratio. For example, if sensing data is collected after cleaning a hard floor for 40 seconds, cleaning a mat for 10 seconds, and cleaning a hard floor for 5 minutes, the vacuum cleaner (100) can group the sensing data for 8 seconds, which is 20% of the sensing data sensed while cleaning the hard floor for 40 seconds, into a first sensing data group (501), as shown in FIG. 5b, group the sensing data for 9 seconds (rounded to the nearest whole number), which is 85% of the sensing data sensed while cleaning the mat for 10 seconds, into a second sensing data group (502), and group the sensing data for 1 minute, which is 20% of the sensing data sensed while cleaning the hard floor for 5 minutes, into a third sensing data group (503).
[0107] The vacuum cleaner (100) can determine whether a normal label included in a group of sensing data is above a threshold value (440). In one or more embodiments, a normal label is a label when the type of floor cleaned and the type of floor recognized by the sensing data are the same, and an abnormal label is a label when the type of floor cleaned and the type of floor recognized by the sensing data are different. For example, among the first group of sensing data (501) shown in FIG. 5b, label 0, which corresponds to a hard floor, may be a normal label, and label 2, which corresponds to a lift, may be an abnormal label.
[0108] Meanwhile, the threshold value can be determined based on the size of the sensing data group. For example, as shown in Table 1 below, the threshold value may be higher as the size of the sensing data group becomes smaller, and the threshold value may be lower as the size of the sensing data group becomes larger.
[0109] Sensing data group size 10 20 30 40 50 60 baseline 90% 85% 80% 75% 70% 70%
[0110] That is, the larger the size of the sensing data group, the longer the cleaning mode has been maintained, and since the label can be considered stabilized when the cleaning mode has been used stably, the threshold value may be small. If the normal label included in the sensing data group is above the threshold value (450-Y), the vacuum cleaner (100) can identify it as a valid sensing data group (460). For example, among the first to third sensing data groups (501 to 503) shown in FIG. 5b, the second sensing data group (502) and the third data sensing group (503) can be identified as valid sensing data groups because they contain normal labels above the threshold value. If the normal label included in the sensing data group is below the threshold value (450-N), the vacuum cleaner (100) can delete the corresponding sensing data group (470). For example, among the first to third sensing data groups (501 to 503) shown in FIG. 5b, the first sensing data group (501) has a normal label below the reference value, so the vacuum cleaner (100) can delete the first sensing data group (501).
[0111] Meanwhile, the vacuum cleaner (100) can correct an abnormal label among the labels included in a valid sensing data group to a normal label. For example, as shown in FIG. 5c, the vacuum cleaner (100) can correct the label corresponding to the 13th sensing data included in the second sensing data group (502) from 3 to 2, and can correct the labels corresponding to the 24th sensing data and the 26th sensing data of the third sensing data group (503), respectively, to 0.
[0112] The vacuum cleaner (100) can use a group of labeled, corrected sensing data as training data for a neural network model.
[0113] Meanwhile, the vacuum cleaner (100) can separate the acquired group of sensing data into training data and test data according to a preset ratio. Here, the training data is data for training a neural network model stored in the vacuum cleaner (100), and the test data may be data for evaluating the performance of the trained neural network model.
[0114] For example, as illustrated in FIG. 6a, a vacuum cleaner (100) can separate the acquired sensing data group into training data (610) and test data (620) according to a ratio of 5:1. However, this ratio is merely one example, and the training data and test data can be separated into various ratios such as 6:4, 7:3, 8:2, or appropriate ratios known to a person skilled in the art.
[0115] Additionally, the vacuum cleaner (100) can accumulate and store previously acquired test data and currently acquired test data. For example, as shown in FIG. 6b, the vacuum cleaner (100) can accumulate and store currently acquired test data (630) and previously acquired test data (640). However, the vacuum cleaner (100) does not continue to store test data (640), and if the size of the stored test data exceeds a threshold size, it can delete and store a portion of the previously acquired test data.
[0116] Referring again to FIG. 3, the vacuum cleaner (100) can acquire training data of a preset size (340). The training data is data for training a neural network model, and the vacuum cleaner (100) can acquire the training data using a group of sensing data. For example, the preset size may be 10 seconds, but this is merely one embodiment and may be changed depending on the performance of the vacuum cleaner (100). An example method of acquiring training data of a preset size will be described in detail with reference to FIG. 7 and FIG. 8.
[0117] FIG. 7 is a flowchart illustrating a method for obtaining a training data set and a test data set according to one embodiment of the present disclosure.
[0118] The vacuum cleaner (100) can acquire at least one group of sensing data (710). That is, the vacuum cleaner (100) can acquire at least one group of sensing data separated into training data and test data, as described above in FIGS. 3 to 6b.
[0119] The vacuum cleaner (100) can sample a group of sensing data with a preset size (720). That is, the vacuum cleaner (100) can sample a portion of the group of sensing data to cut the group of sensing data into a preset size. Specifically, the vacuum cleaner (100) can sample at least one group of sensing data with a preset size because at least one group of sensing data obtained can have different sizes. For example, as shown in FIG. 8, the vacuum cleaner (100) can sample a first group of sensing data and a second group of sensing data into a first training data (810) and a second training data (820) with a preset size of 10 seconds. However, the preset size being 10 is only one embodiment, and it goes without saying that the preset size may change depending on the performance of the vacuum cleaner (100).
[0120] The vacuum cleaner (100) can acquire previously stored training data and test data corresponding to floor types other than the floor type corresponding to the sensing data group (730).
[0121] Specifically, when training a neural network model stored in the vacuum cleaner (100), if training is performed using only training data for floor types corresponding to the sensing data group, a catastrophic forgetting problem may occur. In one or more embodiments, catastrophic forgetting may mean that the neural network model suddenly or significantly loses previously learned knowledge when learning a new task, and this is a problem caused by the way the neural network model adjusts shared weights. This problem is also called catastrophic interference and is a challenge in continual learning, where the AI system must gradually adapt to and acquire new information without forgetting its previous capabilities. To prevent this problem from occurring, the vacuum cleaner (100) may acquire previously stored training data corresponding to floor types other than the floor type corresponding to the sensing data group. For example, if the floor type corresponding to the sensing data group is a hard floor, the vacuum cleaner (100) may acquire previously stored training data corresponding to a mat, carpet, or lift. That is, the vacuum cleaner may acquire training data corresponding to multiple floor types as shown in Table 2 below.
[0122] Label 01 23 Training Data Sensing Training data included in the data group 10 Initial saved training data 10 Initial saved training data 10 Initial saved training data 10 seconds
[0123] Additionally, the vacuum cleaner (100) can acquire previously stored test data corresponding to floor types other than the floor type corresponding to the sensing data group. For example, if the floor type corresponding to the sensing data group is a hard floor, the vacuum cleaner (100) can acquire previously stored test data corresponding to a mat, carpet, or lift. That is, the vacuum cleaner can acquire test data corresponding to multiple floor types as shown in Table 3 below.
[0124] Label 0123 Test Data Sensing All test data included in the data group All saved test data All saved test data All saved test data
[0125] As described above, by the vacuum cleaner (100) acquiring test data for all floor types, the accuracy of the performance evaluation of the neural network model can be checked for the occurrence of the catastrophic forgetting problem without decreasing. The vacuum cleaner (100) can acquire a training data set and a test data set (740). Specifically, the vacuum cleaner (100) can acquire a training data set using training data acquired from a valid group of sensing data and pre-stored training data, and can acquire a test data set using test data acquired from a valid group of sensing data and pre-stored test data.
[0126] The vacuum cleaner (100) can learn a neural network model (350). In particular, the vacuum cleaner (100) can learn a neural network model using a training data set. In one or more embodiments, the vacuum cleaner (100) can learn a neural network model using transfer learning. Here, transfer learning may be a machine learning technique that trains a previously learned neural network model using a training data set. However, learning a neural network model through transfer learning is merely one embodiment, and it is obvious that a neural network model can be learned using other learning methods.
[0127] The vacuum cleaner (100) can evaluate the performance of a learned neural network model (360). Specifically, the vacuum cleaner (100) can evaluate the performance of a learned neural network model using a test data set. This will be explained in detail with reference to FIG. 9.
[0128] FIG. 9 is a flowchart illustrating the performance evaluation of a learned neural network model according to one embodiment of the present disclosure.
[0129] In one or more embodiments, the vacuum cleaner (100) can calculate a first accuracy for a learned neural network model using a test data set corresponding to a learned floor type (910). Specifically, the vacuum cleaner (100) can calculate the accuracy of the neural network model before and after learning from test data obtained from a group of sensing data, and can calculate the accuracy of the neural network model before and after learning from test data stored for multiple floor types. For example, if the test data obtained from the sensing data corresponds to one floor type, the vacuum cleaner (100) can obtain the accuracy of the neural network model before and after learning obtained from test data corresponding to one floor type and the accuracy of the neural network model before and after learning obtained from test data stored for four floor types, as shown in Table 4 below.
[0130] Test data obtained from sensing data Stored test data Accuracy of the neural network model before training Accuracy #1 (1 result) Accuracy #2 (4 results) Accuracy of the neural network model after training Accuracy #3 (1 result) Accuracy #4 (4 results)
[0131] The vacuum cleaner (100) can calculate the harmonic mean of the accuracy of the neural network model before training and the accuracy of the neural network model after training (920). Specifically, the vacuum cleaner (100) can calculate the harmonic mean of the accuracy of the neural network model in a total of four cases calculated in Table 4. That is, as shown in Table 5 below, the vacuum cleaner (100) can obtain the first harmonic mean of the accuracy of the neural network model before training calculated through test data obtained from sensing data, the second harmonic mean of the accuracy of the neural network model before training calculated through multiple types of pre-stored test data, the third harmonic mean of the accuracy of the neural network model after training calculated through test data obtained from sensing data, and the fourth harmonic mean of the accuracy of the neural network model after training calculated through multiple types of pre-stored test data. In one or more examples, the harmonic mean is an average used to average rates and can be calculated by dividing the number of values by the sum of their reciprocals. In one or more examples, the harmonic mean It can be calculated as follows. Here, "n" is the number of values, and "x i " are individual values.
[0132] Test data acquired from sensing data (evaluating only learned floor types) Multiple types of pre-stored test data Accuracy of the neural network model before training 0 1 2 3 0 1 2 3 8 7.3% 95% 99% 90.10% 97.50% Accuracy of the trained neural network model 0 1 2 3 0 1 2 3 8 9.1% 95.10% 99% 90.12% 97.50%
[0133] The vacuum cleaner (100) can calculate a second accuracy of the learned neural network model using a pre-stored test data set corresponding to a floor type that has not been learned (930). The vacuum cleaner (100) can evaluate the performance improvement of the learned neural network model using the harmonic mean and the second accuracy (940). Specifically, the vacuum cleaner (100) can evaluate that the performance of the learned neural network model has improved if the harmonic mean calculated in 920 operations and the second accuracy calculated in 930 operations of the learned neural network model have improved compared to the neural network model before learning. Additionally, the vacuum cleaner (100) can evaluate that the performance has improved if the accuracy of all floor types is above a threshold (e.g., 97%). Additionally, the vacuum cleaner (100) can evaluate that performance has improved even if the accuracy of the trained neural network model has decreased compared to the accuracy of the neural network model before training, as long as the accuracy corresponding to a specific floor type is within a range of a preset value (e.g., 97%) or higher. Referring again to FIG. 3, if the performance of the trained neural network model is evaluated as improved (370-Y), the vacuum cleaner (100) can update the trained neural network model (390). Then, the vacuum cleaner (100) identifies whether additional training data exists (380), and if additional training data does not exist (380-N), the vacuum cleaner (100) completes the training. If additional training data exists (380-Y), the vacuum cleaner (100) can perform the 350 operation again.
[0134] If the performance of the trained neural network model is evaluated as not improving (370-N), the vacuum cleaner (100) identifies whether additional training data exists (380), and if no additional training data exists (380-N), the vacuum cleaner (100) completes the training. If additional training data exists (380-Y), the vacuum cleaner (100) can perform the 350 operation again. At this time, the vacuum cleaner (100) can delete the neural network model that has no performance improvement and can continue to use the previous neural network model.
[0135] Meanwhile, according to one embodiment of the present disclosure, the vacuum cleaner (100) is a cordless vacuum cleaner and can operate via a battery. Therefore, since a battery issue may occur while performing a learning operation, the vacuum cleaner (100) can perform a learning operation only when a preset condition is satisfied. Specifically, the vacuum cleaner (100) can learn a neural network model while the vacuum cleaner (100) is mounted on the station device (200), while the vacuum cleaner (100) is not performing a cleaning operation, or while the battery of the vacuum cleaner (100) is above a threshold value. This will be explained with reference to FIG. 10.
[0136] FIG. 10 is a flowchart illustrating conditions for performing a learning operation according to one embodiment of the present disclosure.
[0137] In one or more embodiments, the vacuum cleaner (100) can identify whether it is connected to a station device (200) to perform a charging operation (1010).
[0138] When identified as being connected to a station device (200) and performing a charging operation (1010-Y), the vacuum cleaner (100) can perform a learning operation of a neural network model (1040).
[0139] When it is identified that the station device (200) is connected and does not perform a charging operation (1010-N), the vacuum cleaner (100) can identify whether the vacuum cleaner (100) performs a cleaning operation (1020).
[0140] When identified as performing a cleaning action (1020-Y), the cleaner (100) can wait for a learning action (1050).
[0141] If it is identified that no cleaning action is being performed (1020-N), the cleaner (100) can identify whether the battery value is above a threshold value (1030).
[0142] When the battery value is identified as being above a threshold (1030-Y), the vacuum cleaner (100) can perform a learning operation of the neural network model (1040). When the battery value is identified as being below a threshold (1030-N), the vacuum cleaner (100) can wait for a learning operation (1050).
[0143] As described above, by performing the learning operation only when power is stably supplied to the vacuum cleaner (100), it is possible to prevent battery issues that may occur during the learning operation.
[0144] Meanwhile, although the above-described embodiment was explained as performing the learning operation only when the preset conditions are satisfied, this is merely one embodiment, and not only the learning operation but also the evaluation operation can be performed only when the preset conditions are satisfied.
[0145] Meanwhile, although the above-described embodiment describes a neural network model being stored in the vacuum cleaner (100), this is merely one embodiment, and the station device may store the neural network model. Additionally, the station device may learn and evaluate the neural network model. This will be explained with reference to FIG. 11.
[0146] FIG. 11 is a sequence diagram illustrating a method for a station device to learn a neural network model according to another embodiment of the present disclosure. In the embodiment of FIG. 11, the vacuum cleaner (100) does not store the neural network model, and only the station device (200) can store the neural network model. In this case, the vacuum cleaner (100) can transmit sensing data acquired during a cleaning operation to the station device (200). The station device (200) can identify the type of floor that the vacuum cleaner (100) is cleaning using the stored neural network model. The station device (200) can transmit information about the identified type of floor (or cleaning mode information) to the vacuum cleaner (100). The vacuum cleaner (100) can perform a cleaning operation based on the information about the identified type of floor (or cleaning mode information). Meanwhile, if an operation of FIG. 11 is described in detail in FIG. 3, redundant descriptions will be omitted.
[0147] According to one or more embodiments, the vacuum cleaner (100) can collect sensing data (1110). And, the vacuum cleaner (100) can transmit the collected sensing data to a station device (200) through a wireless communication interface (e.g., a Bluetooth interface) (1120).
[0148] The station device (200) can classify the sensing data by type (1130).
[0149] The station device (200) can acquire at least one group of sensing data (1140).
[0150] The station device (200) can acquire training data of a preset size (1150).
[0151] The station device (200) can train a neural network model using training data (1160).
[0152] The station device (200) can evaluate the performance of a learned neural network model using test data (1170).
[0153] If the performance is evaluated as improved, the station device (200) can be updated with a learned neural network model (1180).
[0154] The station device (200) can identify the floor type corresponding to the sensing data received from the vacuum cleaner (100) using an updated neural network model.
[0155] Meanwhile, in the above-described embodiment, it was explained that the vacuum cleaner (100) does not store the neural network model and only the station device (200) stores the neural network model; however, this is merely one embodiment, and the first neural network model may be stored in the vacuum cleaner (100) and the second neural network model may be stored in the station device (200). Here, the first neural network model may be a light neural network model compared to the second neural network model. In one or more embodiments, if the vacuum cleaner (100) is capable of wireless communication with the station device (200), it can identify the type of floor using the second neural network model stored in the station device (200); and if wireless communication with the station device (200) is not possible, the vacuum cleaner (100) can identify the type of floor using the first neural network model. Additionally, the vacuum cleaner (100) can directly learn and update the first neural network model, and the station device (200) can learn and update the first neural network model and then transmit it.
[0156] According to one or more embodiments, the vacuum cleaner (100) may perform only inference operations (e.g., operations to identify the operation of the floor) using a first neural network model, and the station device (200) may perform operations to learn and evaluate the first neural network model.
[0157] According to one or more embodiments, the vacuum cleaner (100) can train a neural network model using an external server and can receive and update the trained neural network model from the external server. That is, the vacuum cleaner (100) can transmit sensing data collected during a cleaning operation to an external server, and the external server can train the neural network model stored in the vacuum cleaner (100) using the sensing data. Then, the external server (100) can transmit the performance evaluation of the trained neural network model to the vacuum cleaner (100).
[0158] According to one or more embodiments, the vacuum cleaner (100) may provide a UI to inquire with the user whether to update the trained neural network model. For example, after training the neural network model, the vacuum cleaner (100) may provide a UI (1210) containing a guidance message such as “We have trained an AI model for detecting floor types. Would you like to update to a new AI model?” as shown in FIG. 12. When a user command to update the neural network model is entered through the UI (1210), the vacuum cleaner (100) may update to the trained neural network model.
[0159] According to one or more other embodiments, the vacuum cleaner (100) may provide a UI that informs the user that the neural network model has been updated after updating the trained neural network model. For example, after updating the trained neural network model, the vacuum cleaner (100) may provide a UI that includes a notification message such as "The AI model for detecting floor types has been updated."
[0160] Meanwhile, the UI may be provided through a display (140) included in the vacuum cleaner (100), but this is merely one embodiment and may be provided using a user terminal with the same user account as the vacuum cleaner (100).
[0161] Meanwhile, the method according to various embodiments of the present disclosure may be provided by being included in a computer program product. The computer program product may be traded between a seller and a buyer as a product. The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or distributed online (e.g., download or upload) 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 a portion of the computer program product (e.g., downloadable app) may be temporarily stored or temporarily created on a device-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.
[0162] A method according to various embodiments of the present disclosure may be implemented as software comprising instructions stored on a machine-readable storage medium (e.g., a computer). The machine may include an electronic device (e.g., a vacuum cleaner) according to the disclosed embodiments, which is a device capable of calling instructions stored from the storage medium and operating according to the called instructions.
[0163] Meanwhile, a device-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory storage medium' simply means that it is a tangible device and does not contain a signal (e.g., electromagnetic waves), and this term does not distinguish between cases where data is stored semi-permanently and cases where it is stored temporarily. For example, a 'non-transitory storage medium' may include a buffer in which data is stored temporarily.
[0164] When the above instruction is executed by a processor, the processor may perform the function corresponding to the instruction directly or by using other components under the control of the processor. The instruction may include code generated or executed by a compiler or an interpreter.
[0165] Although preferred embodiments of the present disclosure have been illustrated and described above, the present disclosure is not limited to the specific embodiments described above. It is understood that various modifications can be made by those skilled in the art without departing from the essence of the present disclosure as claimed in the claims, and such modifications should not be understood individually from the technical spirit or perspective of the present disclosure.
Claims
1. Regarding vacuum cleaners, Memory for storing instructions; and at least one processor including processing circuitry; and When the above instructions are executed individually or collectively by the at least one processor, the cleaner, While performing a cleaning operation, sensing data is obtained from the operation of the above-mentioned vacuum cleaner, and Classifying the type of the sensing data based on the output obtained by inputting the sensing data into a model trained to detect at least one type of floor, and Based on the sensing data classified by the above type, at least one group of sensing data is obtained, and Learning data is acquired based on at least one sensing data group mentioned above, and A vacuum cleaner that trains the model based on the above training data to modify at least one parameter of the model.
2. In Paragraph 1, The above output includes at least one label, each of the at least one label corresponds to one of the types of the at least one floor, and When the above instructions are executed individually or collectively by the at least one processor, the cleaner, A vacuum cleaner that obtains at least one sensing data group by grouping at least one label corresponding to each of the at least one type based on each grouping ratio corresponding to the continuous recognition time of each of the at least one type.
3. In Paragraph 2, The first grouping ratio is a first value corresponding to the first type among the at least one type, and The second grouping ratio is a second value corresponding to the second type among the at least one type above, and A vacuum cleaner in which the first value is greater than the second value, based on the fact that the continuous recognition time in the first type is shorter than in the second type.
4. In Paragraph 2, When the above instructions are executed individually or collectively by the at least one processor, the cleaner, Identify a sensing data group in which the ratio of the at least one normal label to the sum of at least one normal label and at least one abnormal label among the at least one sensing data group is greater than or equal to a threshold value, and The above-mentioned identified sensing data group is determined as a valid sensing data group, and The above standard value is a vacuum cleaner corresponding to the size of each sensing data group.
5. In Paragraph 4, When the above instructions are executed individually or collectively by the at least one processor, the cleaner, A cleaner that corrects at least one label included in the above valid sensing data group into a normal label.
6. In Paragraph 4, When the above instructions are executed individually or collectively by the at least one processor, the cleaner, A vacuum cleaner that separates the above valid sensing data group into first data for training and second data for testing.
7. In Paragraph 6, When the above instructions are executed individually or collectively by the at least one processor, the cleaner, Training data is obtained by sampling from the above first data at a preset size, and Acquiring previously stored training data corresponding to at least one other type other than the first floor type corresponding to the valid sensing data group among the at least one floor type, and A training data set is obtained based on the training data obtained from the above valid sensing data and the above previously stored training data, and A vacuum cleaner that trains the model based on the above training data set.
8. In Paragraph 7, When the above instructions are executed individually or collectively by the at least one processor, the cleaner, Acquiring the second test data included in the valid sensing data group and the previously stored test data corresponding to at least one other type among the at least one floor type other than the first floor type corresponding to the valid sensing data group, A test data set is obtained based on the second data and the previously stored test data, and A vacuum cleaner that evaluates the performance of the learned model based on the above test data set.
9. In Paragraph 8, When the above instructions are executed individually or collectively by the at least one processor, the cleaner, Based on the above evaluation, information regarding the first accuracy of the above-mentioned learned model is obtained, and A vacuum cleaner that updates the prior learning model stored in the vacuum cleaner based on the first accuracy and the second accuracy of the prior learning model.
10. In Paragraph 1, When the above instructions are executed individually or collectively by the at least one processor, the cleaner, A vacuum cleaner that learns the model based on at least one of the following: the vacuum cleaner is located at a station device, the vacuum cleaner does not perform the cleaning operation, or the vacuum cleaner's battery is above a threshold value.
11. In a method for controlling a vacuum cleaner, A step of acquiring sensing data from the operation of the cleaner while performing a cleaning operation; A step of classifying the type of the sensing data based on the output obtained by inputting the sensing data into a model trained to detect at least one type of floor; A step of acquiring at least one group of sensing data based on sensing data classified into the above types; A step of acquiring training data based on at least one sensing data group; and A method comprising the step of training the model based on the above training data and modifying at least one parameter of the model.
12. In Paragraph 11, The above output includes at least one label, each of the at least one label corresponds to one of the types of the at least one floor, and The step of acquiring at least one sensing data group is, A method for obtaining at least one sensing data group by grouping at least one label corresponding to each of the at least one type based on each grouping ratio corresponding to the continuous recognition time of each of the at least one type.
13. In Paragraph 12, The first grouping ratio is a first value corresponding to the first type among the at least one type, and The second grouping ratio is a second value corresponding to the second type among the at least one type above, and A method in which the first value is greater than the second value based on the fact that the continuous recognition time in the first type is shorter than in the second type.
14. In Paragraph 12, The step of acquiring at least one sensing data group is, A step of identifying a sensing data group in which the ratio of the at least one normal label to the sum of at least one normal label and at least one abnormal label among the at least one sensing data group is greater than or equal to a reference value; and The method includes the step of determining the identified sensing data group as a valid sensing data group; The above standard value is a method corresponding to the size of each sensing data group.
15. In Paragraph 14, The step of acquiring at least one sensing data group is, A method comprising the step of correcting at least one label included in the valid sensing data group into a normal label.