WO2018186625A1 - Electronic device, warning message providing method therefor, and non-transitory computer-readable recording medium - Google Patents

Electronic device, warning message providing method therefor, and non-transitory computer-readable recording medium Download PDF

Info

Publication number
WO2018186625A1
WO2018186625A1 PCT/KR2018/003734 KR2018003734W WO2018186625A1 WO 2018186625 A1 WO2018186625 A1 WO 2018186625A1 KR 2018003734 W KR2018003734 W KR 2018003734W WO 2018186625 A1 WO2018186625 A1 WO 2018186625A1
Authority
WO
WIPO (PCT)
Prior art keywords
accident
data
prediction model
electronic device
warning message
Prior art date
Application number
PCT/KR2018/003734
Other languages
French (fr)
Korean (ko)
Inventor
박찬종
김지만
양도준
이현우
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020170157851A external-priority patent/KR102442061B1/en
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US16/485,677 priority Critical patent/US11475770B2/en
Publication of WO2018186625A1 publication Critical patent/WO2018186625A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N99/00Subject matter not provided for in other groups of this subclass
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled

Definitions

  • the present disclosure relates to an electronic device, a method of providing a warning message thereof, and a non-transitory computer readable recording medium. More particularly, the electronic device, a method of providing a warning message thereof, and a non-transitory computer capable of preventing a similar accident by learning a traffic accident pattern A readable recording medium.
  • AI artificial intelligence
  • AI Artificial Intelligence
  • Machine learning is an algorithmic technique for classifying and learning features of input data.
  • Element technology is a technology that utilizes machine learning algorithms such as deep learning, and may be composed of technical fields such as linguistic understanding, visual understanding, inference / prediction, knowledge expression, and motion control.
  • Linguistic understanding is a technique for recognizing and applying / processing human language / characters, including natural language processing, machine translation, dialogue system, question and answer, speech recognition / synthesis, and the like.
  • Visual understanding is a technology that recognizes and processes objects as human vision, and includes object recognition, object tracking, image retrieval, person recognition, scene understanding, spatial understanding, and image enhancement.
  • Inference / prediction is a technique for determining, logically inferring, and predicting information. It includes knowledge / probability-based inference, optimization prediction, preference-based planning, and recommendation.
  • Knowledge representation is a technology that automates human experience information into knowledge data, and includes knowledge construction (data generation / classification) and knowledge management (data utilization).
  • Motion control is a technology for controlling autonomous driving of a vehicle, movement of a robot, and the like, and includes motion control (navigation, collision, driving), operation control (action control), and the like.
  • the present disclosure is to solve the above-described problems, it is possible to prevent similar accidents by learning the accident pattern using information obtained from the vehicle in the event of an accident, and providing a warning message by comparing the learned accident pattern with the current driving situation.
  • An electronic device, a method of providing a warning message thereof, and a non-transitory computer readable recording medium are provided.
  • An electronic device for achieving the above object is, a positioning unit for determining the current position of the electronic device, a communication unit for receiving accident data and driving conditions, an output unit for outputting a warning message and the Constructs a plurality of accident prediction models by learning the received accident data, selects an accident prediction model to be applied among the plurality of accident prediction models based on the current position determined by the position determining unit, and selects the selected accident prediction model.
  • the processor may include a processor configured to determine a possibility of an accident and to provide a warning message when the determined probability of occurrence of the accident is equal to or greater than a predetermined value.
  • the processor sets the area as an accident occurrence area, and the plurality of accident prediction models are general accidents applicable to all areas. It may include a prediction model and at least one special accident prediction model applicable to the at least one accident area.
  • the processor may build the general accident prediction model based on the entire accident data, and build the special accident prediction model based only on the accident data generated in the accident occurrence area.
  • the processor may determine the frequency by dividing the accident data by accident type, and may learn the accident data by weighting the accident data.
  • the processor may select the special accident prediction model when the determined current location is the accident occurrence area, and select the general accident prediction model in other cases.
  • the processor may determine the possibility of an accident by controlling the communication unit to collect a current driving situation and calculating a similarity between the accident occurrence situation learned by the accident prediction model and the collected current driving condition.
  • the processor may control the output unit to provide another warning message in stages as the probability of an accident increases.
  • the processor may reinforce the general accident prediction model and the special accident prediction model with different weights when an accident occurs in the accident occurrence area.
  • the accident data may include at least one of vehicle information, vehicle operation information, location information, road shape information, weather information, distance between vehicles, image information, acceleration information, and steering information at the time of the accident.
  • the accident prediction model may be an artificial neural network model.
  • the method for providing a warning message of the electronic device for achieving the above object, the step of learning the accident data to build a plurality of accident prediction model, based on the current location of the electronic device Selecting an accident prediction model to be applied among a plurality of accident prediction models, determining an occurrence probability of the accident using the selected accident prediction model, and providing a warning message if the determined occurrence probability is equal to or greater than a preset value. It may include.
  • the plurality of accident prediction models are general applicable to all areas. It may include an accident prediction model and at least one special accident prediction model applicable to at least one accident area.
  • the building may include building the general accident prediction model based on the entire accident data, and building the special accident prediction model based only on the accident data generated in the accident occurrence area.
  • the building may include classifying the accident data by accident type to determine a frequency and learning the accident data by weighting the accident data.
  • the selecting may include determining a current location of the electronic device, selecting the special accident prediction model when the determined current location is the accident area, and selecting the general accident prediction model in other cases. It may include the step of selecting.
  • the determining of the likelihood of occurrence of an accident may include collecting a current driving situation and calculating similarity between the accident occurrence situation learned by the accident prediction model and the collected current driving situation to determine the likelihood of an accident occurrence. .
  • the providing of the warning message may provide another warning message in stages as the possibility of an accident increases.
  • the method may further include strengthening the general accident prediction model and the special accident prediction model with different weights.
  • the accident data may include at least one of vehicle information, vehicle operation information, location information, road shape information, weather information, distance between vehicles, image information, acceleration information, and steering information at the time of the accident.
  • the accident prediction model may be an artificial neural network model.
  • the accident prediction model may include a program for executing a method of providing an alert message of an electronic device according to an embodiment of the present disclosure.
  • the non-transitory computer readable recording medium may include: constructing a plurality of accident prediction models by learning accident data; selecting an accident prediction model to be applied among the plurality of accident prediction models based on a current position of the electronic device; The method may include determining a possibility of an accident by using the selected accident prediction model, and providing a warning message when the determined probability of occurrence of an accident is equal to or greater than a preset value.
  • a warning message may be provided when a situation similar to a situation in which an accident occurs in the past may occur to prevent a similar accident.
  • FIG. 1 is a schematic block diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure
  • FIG. 2 is a block diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure
  • FIG. 3 is a block diagram of a processor in accordance with some embodiments of the present disclosure.
  • 4A is a block diagram of a data learning unit according to some embodiments of the present disclosure.
  • 4B is a block diagram of a data recognizer according to some embodiments of the present disclosure.
  • FIG. 5 is a view for explaining a method for establishing an accident prediction model of an electronic device according to an embodiment of the present disclosure
  • FIG. 6 is a view for explaining a method for setting an accident-prone area according to an embodiment of the present disclosure
  • FIG. 7 is a diagram for explaining changing an accident prediction model applied according to a current position of an electronic device
  • FIG. 8 is a view for explaining the difference between applying a general accident prediction model and a special accident prediction model, respectively;
  • FIG. 9 is a diagram for describing a method of providing, by an electronic device, a different warning message for each type of accident, according to an embodiment of the present disclosure.
  • 10 is a diagram for explaining reinforcement learning with different weights for a general accident prediction model and a special accident prediction model when an accident occurs;
  • FIG. 11 is a flowchart illustrating a warning message providing method of an electronic device according to an embodiment of the present disclosure
  • FIG. 12 is a diagram for describing an electronic device interoperating with a server according to another embodiment of the present disclosure.
  • FIG. 13 is a sequence diagram illustrating an operation of an electronic device and a server according to another exemplary embodiment of the present disclosure.
  • first and second may be used to describe various components, but the components are not limited by the terms. The terms are only used to distinguish one component from another.
  • first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
  • the module or unit performs at least one function or operation, and may be implemented by hardware or software or a combination of hardware or software.
  • a plurality of 'modules' or a plurality of 'units' may be integrated into at least one module except for 'modules' or 'units' that need to be implemented by specific hardware, and may be implemented as at least one processor.
  • the term user may refer to a person who uses an electronic device or a device (eg, an artificial intelligence electronic device) that uses an electronic device.
  • a device eg, an artificial intelligence electronic device
  • the electronic device 100 may be implemented as a mobile device such as a smartphone, a tablet PC, or a laptop.
  • the electronic device 100 may be implemented as an In-Vehicle Infotainment (IVI) mounted in a vehicle.
  • IVI refers to a device installed in a vehicle and refers to a device that provides audio and visual entertainment.
  • the IVI may be implemented as a navigation, a black box, a car audio system, a head up display (HUD), or the like.
  • the electronic device 100 may independently build an accident prediction model and prevent similar accidents based on the constructed accident prediction model.
  • the electronic device 100 may interwork with an external device such as the server 200.
  • the accident prediction model may be built in the server 200, and the electronic device 100 may receive and use the accident prediction model from the server 200.
  • the electronic device 100 may include a location determiner 110, a communicator 120, an outputter 130, and a processor 140.
  • the location determiner 110 may determine a current location of the electronic device 100.
  • the location determiner 110 may be implemented as a global navigation satellite system (GNSS). Examples of satellite navigation systems include GPS (Global Positioning System), Galileo positioning system (Galileo positioning system), and GLONASS (GLObal NAvigation Satellite System).
  • GNSS global navigation satellite system
  • satellite navigation systems include GPS (Global Positioning System), Galileo positioning system (Galileo positioning system), and GLONASS (GLObal NAvigation Satellite System).
  • the electronic device 100 may determine an accident prediction model to apply based on the current location determined by the location determiner 110.
  • the communication unit 120 may transmit and receive data and / or control signals with an external device.
  • the communicator 120 may receive accident data, a current driving situation, an accident prediction model, and the like from an external device.
  • the communication unit 120 may transmit a control signal to output a warning message to the external device.
  • the output unit 130 may output a warning message.
  • the output unit 130 may output at least one of a visual and audio signal.
  • the output unit 130 may provide a warning message to an external device without directly providing a message to a user.
  • the processor 140 may build an accident prediction model based on the accident data.
  • the processor 140 may determine whether the current driving situation is similar to the situation at the time of the occurrence of the accident, based on the constructed accident prediction model. If the similarity is greater than or equal to a preset value, the processor 140 may provide a warning message to the user. Through this, the electronic device 100 may prevent an accident similar to the existing accident case.
  • the electronic device 100 may obtain the accident prediction data by using the received accident data as input data of the recognition model.
  • the recognition model learned in the present disclosure may be constructed in consideration of application fields of the recognition model or computer performance of the apparatus.
  • the learned object recognition model may be, for example, a model based on a neural network.
  • the object recognition model may be designed to simulate a human brain structure on a computer and may include a plurality of weighted network nodes that simulate neurons in a human neural network. The plurality of network nodes may form a connection relationship so that neurons simulate the synaptic activity of neurons that send and receive signals through synapses.
  • the object recognition model may include, for example, a neural network model or a deep learning model developed from the neural network model.
  • a plurality of network nodes may be located at different depths (or layers) and exchange data according to a convolutional connection relationship.
  • Examples of the object recognition model may include, but are not limited to, a Deep Neural Network (DNN), a Recurrent Neural Network (RNN), and a Bidirectional Recurrent Deep Neural Network (BRDNN).
  • DNN Deep Neural Network
  • RNN Recurrent Neural Network
  • BBDNN Bidirectional Recurrent Deep Neural Network
  • the electronic device 100 may use an artificial intelligence agent to obtain a warning message for the received accident data as described above.
  • the artificial intelligence agent is a dedicated program for providing an AI (Artificial Intelligence) based service (for example, a voice recognition service, a secretary service, a translation service, a search service, etc.), and an existing general purpose processor (for example, CPU) or a separate AI dedicated processor (eg, GPU, etc.).
  • AI Artificial Intelligence
  • the electronic device 100 includes a positioning unit 110, a communication unit 120, an output unit 130, a processor 140, a camera 150, a sensor unit 160, and an operation control unit 170. ) And memory 180.
  • the electronic device 100 may include various components such as an image processor (not shown), an image analyzer (not shown), a power source (not shown), and the like.
  • the electronic device 100 is not necessarily limited to being implemented by including all the configurations shown in FIG. 2.
  • the electronic device 100 implemented without the camera 150 may receive image data through the communication unit 120 from the external device.
  • the location determiner 110 may include a circuit, software, and the like for implementing the satellite navigation system.
  • the type of satellite navigation system to be applied may vary according to the specifications of each of the implemented electronic devices 100.
  • the applied satellite navigation system may be one of a Global Positioning System (GPS), a Galileo positioning system, and a Global NAvigation Satellite System (GLONASS).
  • GPS Global Positioning System
  • GLONASS Global NAvigation Satellite System
  • the location determiner 110 may use a combination of Assisted GPS (A-GPS), Differential GPS (D-GPS), and the like.
  • the location determiner 110 may determine the current location of the electronic device 100 by further using location information of an AP, a base station, etc. connected through the communication unit 120.
  • the communication unit 120 communicates with an external device.
  • the external device may be implemented as a server, cloud storage, a network, or the like.
  • Receiving accident data from an external device the electronic device 100 may directly build, learn, and update an accident prediction model.
  • the electronic device 100 may also receive an accident prediction model constructed by an external device. For example, when the electronic device 100 enters a specific accident occurrence area, the communication unit 120 may request an external server to transmit an accident prediction model corresponding to the accident occurrence area.
  • the communication unit 120 may include various communication modules such as a short range wireless communication module (not shown), a wireless communication module (not shown), and the like.
  • the short range wireless communication module is a module for communicating with an external device located in a short range according to a short range wireless communication scheme such as Bluetooth, Zigbee, or the like.
  • the wireless communication module is a module that is connected to an external network and performs communication according to a wireless communication protocol such as WiFi, WiFi direct, or IEEE.
  • the wireless communication module performs communication by connecting to a mobile communication network according to various mobile communication standards such as 3G (3rd Generation), 3GPP (3rd Generation Partnership Project), Long Term Evoloution (LTE), LTE Advanced (LTE-A), etc. It may further include a mobile communication module.
  • the display 131 may display a warning message.
  • the display 131 may be implemented in the form of a head up display (HUD) on the vehicle front glass.
  • the display 131 may be implemented as a liquid crystal display (LCD), an organic light emitting diode (OLED), a plasma display panel (PDP), or the like, thereby forming the electronic device 100.
  • LCD liquid crystal display
  • OLED organic light emitting diode
  • PDP plasma display panel
  • Various screens that can be provided can be displayed.
  • the speaker 133 may output voice.
  • the speaker 133 may output a warning message in the form of a notification sound or a voice message as well as various audio data.
  • the speaker 133 may be built in the electronic device 100 or may be implemented in the form of an output port such as a jack.
  • the camera 150 may capture a still image or a video.
  • the camera 150 may photograph the front area of the vehicle.
  • the processor 140 may obtain acceleration information, steering information, and the like of the vehicle.
  • the camera 150 may be implemented as an image sensor such as a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS).
  • CCD charge coupled device
  • CMOS complementary metal oxide semiconductor
  • a CCD is a device in which charge carriers are stored and transported in a capacitor while each metal-oxide-silicon (MOS) capacitor is in close proximity to each other.
  • MOS metal-oxide-silicon
  • the CMOS image sensor adopts a switching method that uses a CMOS technology that uses a control circuit and a signal processing circuit as peripheral circuits to make MOS transistors by the number of pixels, and sequentially detects the output using the same. It is an element to make.
  • the processor 140 may control the communication unit 120 to receive image information from a black box device installed in the vehicle.
  • the sensor unit 160 may measure a distance from the surrounding environment of the vehicle.
  • the sensor unit 160 may collect information about a distance from another vehicle and a distance from a traffic facility such as a central separator.
  • the processor 140 may be connected to the surrounding vehicle from the sensor unit 160 of the vehicle.
  • the communicator 120 may be controlled to receive distance information.
  • the manipulation controller 170 may control manipulation of the vehicle.
  • the manipulation controller 170 may be implemented as an electronic control unit (ECU), which is a system that electronically manages all operations of the vehicle.
  • the processor 140 may be provided with steering wheel manipulation information, accelerator / brake information, component state information such as an engine, etc. from the manipulation controller 170.
  • the processor 140 may control the communication unit 120 to receive operation information from the operation control unit 170 of the vehicle.
  • the memory 180 may store various modules, software, and data for driving the electronic device 100.
  • the memory 180 may store accident data, parasitic warning messages, and collected driving information.
  • an accident prediction model may be stored in the memory 180 that may be used to determine a possibility of an accident.
  • the memory 180 is a storage medium that stores various programs necessary for operating the electronic device 100.
  • the memory 180 may be implemented in the form of a flash memory, a hard disk drive (HDD), a solid state drive (SSD), or the like.
  • the memory 180 may include a ROM for storing a program for performing an operation of the electronic device 100 and a RAM for temporarily storing data for performing an operation of the electronic device 100.
  • the processor 140 may control the above-described components of the electronic device 100.
  • the processor 140 may control the output unit 130 to output a warning message.
  • the processor 140 may be implemented as a single CPU to construct and update an accident prediction model, determine an accident prediction model to be applied, collect and analyze driving information, generate a warning message, or perform a plurality of processors and IPs. It may be implemented as.
  • the processor 140 may build at least one accident prediction model by learning the accident data received through the communication unit 120. For example, the processor 140 may analyze the accident data in a deep learning manner to determine a criterion for classifying the accident type. In addition, the processor 140 may classify accident cases based on the divided criteria.
  • the processor 140 may separately build a general accident prediction model that can be used in all regions and a special accident prediction model that can be used only in a specific region. For example, the processor 140 may set a accident area in a specific area, and build a special accident prediction model for each set accident area.
  • the processor 140 may set the area as an accident occurrence area.
  • the processor 140 may build a general accident prediction model based on the entire accident data. In addition, the processor 140 may build a special accident prediction model based only on accident data generated in the set accident area.
  • the processor 140 may analyze the types of accidents that frequently occur in the accident occurrence area. According to the analyzed frequency of accidents by type, the processor 140 may learn the accident data by giving a weight different from that of the general accident prediction model.
  • the processor 140 may determine an accident prediction model to be applied among the plurality of accident prediction models based on the current location of the electronic device 100. For example, based on the current location of the electronic device 100 determined by the location determiner 110, the processor 140 may determine whether the accident has entered an accident-prone area. As another example, the electronic device 100 may further determine whether to enter the accident-prone region by further using map data.
  • the processor 140 may determine the possibility of the accident by using a special accident prediction model corresponding to the incident accident area that has entered. If it is determined that the accident is out of the accident area, the processor 140 may determine the possibility of the accident using the general accident prediction model.
  • the processor 140 may collect a current driving situation.
  • the processor 140 may calculate the similarity with the collected current driving situation to the accident occurrence situation learned by the accident prediction model.
  • the current driving situation collected may include vehicle information, steering wheel operation information, excel / brake operation information, gear information, location information, road shape information, weather information, distance information with surrounding vehicles, image information, acceleration information and steering. It may include at least one of the information.
  • the processor 140 may provide a warning message indicating that there is a possibility of an accident.
  • the processor 140 may set a plurality of preset reference values.
  • the processor 140 may provide a different kind of warning message whenever the similarity is increased and the predetermined reference value is exceeded.
  • the processor 140 may change the content of the warning message based on the type of accident determined based on the similarity. If it is determined that a high speed accident is likely to occur, the processor 140 may provide a warning message for slowing down the speed. If the user enters an area in which load kill occurs frequently, the processor 140 may provide a warning message to warn the wild animal that suddenly jumps.
  • the processor 140 may perform the above-described operations by an existing general purpose processor (for example, a CPU or an application processor), but dedicated hardware for artificial intelligence (AI) for specific operations.
  • the chip can perform the operation.
  • FIG. 3 is a block diagram of a processor 140 in accordance with some embodiments of the present disclosure.
  • the processor 140 may include a data learner 141 and a data recognizer 142.
  • the data learning unit 141 may learn a criterion for classifying an accident type, analyzing an cause of an accident, and the like. According to the learned criteria, the processor 140 may calculate the likelihood of an accident from the accident data. In addition, the processor 140 may classify the accident data into each type according to the learned criteria.
  • the data learner 141 may determine what data to use to build an accident prediction model.
  • the data learner 141 acquires data to be used for learning and applies the acquired data to a data recognition model to be described later to learn criteria for accident occurrence possibility, accident cause analysis, and accident type classification.
  • the data recognizer 142 may recognize a situation from predetermined data by using the learned data recognition model.
  • the data recognizing unit 142 may acquire predetermined data according to a predetermined criterion by learning, and use the data recognition model by using the acquired data as an input value. For example, using the learned accident prediction model, the data recognizer 142 may calculate the similarity between the current driving situation and the situation in which the accident occurred.
  • the data recognizing unit 142 may update the accident prediction model by using the data acquired in the current driving situation and the new accident occurrence situation as input values again. As such, the data recognizer 142 may collect the accident data from the big data and the self-collection data.
  • At least one of the data learner 141 and the data recognizer 142 may be manufactured in the form of one or a plurality of hardware chips and mounted on the electronic device 100.
  • at least one of the data learner 141 and the data recognizer 142 may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or may be a conventional general purpose processor (eg, It may be manufactured as a part of an IP for a CPU or an application processor) or a specific function and mounted on the aforementioned various electronic devices 100.
  • AI artificial intelligence
  • the data learner 141 and the data recognizer 142 are both mounted on the electronic device 100, but they may be mounted on separate devices.
  • one of the data learner 141 and the data recognizer 142 may be included in the electronic device 100, and the other may be included in the server 200.
  • the data learner 141 and the data recognizer 142 may be connected to each other by wire or wirelessly, so that model information constructed by the data learner 141 may be provided to the data recognizer 142, and data recognition may be performed.
  • the data input to the unit 142 may be provided to the data learning unit 141 as additional learning data.
  • At least one of the data learner 141 and the data recognizer 142 may be implemented as a software module.
  • the software module may be stored in a non-transitory computer readable recording medium.
  • At least one software module may be provided by an operating system (OS) or by a predetermined application.
  • OS operating system
  • some of the at least one software module may be provided by the OS, and some of the at least one software module may be provided by a predetermined application.
  • the data learner 141 may include a data acquirer 141-1, a preprocessor 141-2, a training data selector 141-3, and a model learner 141. -4) and the model evaluator 141-5.
  • the data acquirer 141-1 may acquire data necessary for determining a situation.
  • the data acquirer 141-1 may receive training data through a network.
  • the data acquisition unit 141-1 may receive traffic accident-related big data classified by accident type as learning data.
  • the data acquisition unit 141-1 may collect information on the current driving situation and use the data for learning.
  • the preprocessor 141-2 may preprocess the acquired data so that the data acquired for learning for situation determination may be used.
  • the preprocessor 141-2 may process the acquired data into a predetermined format so that the model learner 141-4, which will be described later, uses the acquired data for learning for situation determination.
  • the training data selector 141-3 may select data necessary for learning from the preprocessed data.
  • the selected data may be provided to the model learner 141-4.
  • the training data selector 141-3 may select data necessary for learning from preprocessed data according to a predetermined criterion for determining a situation.
  • the training data selector 141-3 may select data according to a predetermined criterion by learning by the model learner 141-4, which will be described later.
  • the learning data selector 141-3 may configure the learning data set using only data having different accident types. That is, for the initial learning, the learning data selector 141-3 may select accident data included in a type having low similarity to learn a criterion that is easy to distinguish.
  • the learning data selector 141-3 may select accident data that satisfies one of the criteria set by learning in common. In this way, the model learner 141-4 may learn another criterion different from the previously learned criterion.
  • the model learner 141-4 may learn a criterion for identifying what type of accident is based on the training data. In addition, the model learner 141-4 may learn a criterion about what training data to use for classification of an accident type.
  • the model learner 141-4 may train the data recognition model used for the situation determination using the training data.
  • the data recognition model may be a pre-built model.
  • the accident prediction model which is a data recognition model that recognizes traffic accident data, may be a model built in advance by receiving basic training data (for example, traffic accident data in which a death accident occurs).
  • the data recognition model may be constructed in consideration of the application field of the recognition model, the purpose of learning, or the computer performance of the device.
  • the data recognition model may be, for example, a model based on a neural network.
  • a model such as a deep neural network (DNN), a recurrent neural network (RNN), and a bidirectional recurrent deep neural network (BRDNN) may be used as the data recognition model, but is not limited thereto.
  • the model learner 141-4 may be a data recognition model for learning a data recognition model having a large correlation between input training data and basic training data. You can decide.
  • the basic training data may be enjoyed for each type of data, and the data recognition model may be built in advance for each type of data.
  • the basic training data may be mood based on various criteria such as the region where the training data is generated, the time at which the training data is generated, the size of the training data, the genre of the training data, the creator of the training data, the types of objects in the training data, and the like. It may be.
  • model learner 141-4 may train the data recognition model using, for example, a learning algorithm including an error back-propagation method or a gradient descent method. .
  • the model learner 141-4 may train the data recognition model through supervised learning using the training data as an input value.
  • the model learning unit 141-4 learns a data recognition model through unsupervised learning that finds a criterion for situation determination by learning a kind of data necessary for situation determination without a separate guidance. I can learn.
  • the model learner 141-4 may train the data recognition model through reinforcement learning using feedback on whether the result of the situation determination according to the learning is correct.
  • the model learner 141-4 may store the trained data recognition model.
  • the model learner 141-4 may store the learned data recognition model in the memory 180 of the electronic device 100.
  • the model learner 141-4 may store the learned data recognition model in a memory of the server 200 connected to the electronic device 100 through a wired or wireless network.
  • the memory 180 in which the learned data recognition model is stored may also store commands or data related to at least one other element of the electronic device 100.
  • the memory 180 may store software and / or a program.
  • the program may include a kernel, middleware, an application programming interface (API) and / or an application program (or “application”), and the like.
  • the model evaluator 141-5 may input the evaluation data into the data recognition model, and cause the model learner 141-4 to relearn when the recognition result output from the evaluation data does not satisfy a predetermined criterion. have.
  • the evaluation data may be preset data for evaluating the data recognition model.
  • the evaluation data may be accident data having different accident types and damage scales.
  • the evaluation data can then be replaced by an accident data set with increasingly similar similarity of accident types.
  • the model evaluator 141-5 may gradually verify the performance of the data recognition model (eg, an accident prediction model).
  • the model evaluator 141-5 may determine a predetermined criterion when the number or ratio of the evaluation data that is not accurate among the recognition results of the learned data recognition model for the evaluation data exceeds a preset threshold. It can be evaluated as not satisfied. For example, when a predetermined criterion is defined at a ratio of 2%, the model evaluator 141-5 when the learned data recognition model outputs an incorrect recognition result for more than 20 evaluation data out of a total of 1000 evaluation data. Can be judged that the learned data recognition model is not suitable.
  • the model evaluator 141-5 evaluates whether each learned data recognition model satisfies a predetermined criterion, and recognizes the final data as a model that satisfies the predetermined criterion. Can be determined as a model. In this case, when there are a plurality of models satisfying a predetermined criterion, the model evaluator 141-5 may determine any one or a predetermined number of models which are preset in the order of the highest evaluation score as the final data recognition model.
  • At least one of -5) may be manufactured in the form of at least one hardware chip and mounted on the electronic device.
  • One may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or may be manufactured as an existing general purpose processor (eg, a CPU or an application processor) or part of an IP for a specific function. It may be mounted on the electronic device 100.
  • AI artificial intelligence
  • the data acquisition unit 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141-5 are electronic components. It may be mounted on the device, or may be mounted on separate electronic devices, respectively.
  • some of the data acquirer 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141-5. May be included in the electronic device 100, and some of them may be included in the server 200.
  • At least one of the data acquirer 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141-5 is provided. It may be implemented as a software module. At least one of the data acquirer 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141-5 is a software module. (Or, a program module including instructions), the software module may be stored on a non-transitory computer readable recording medium. At least one software module may be provided by an operating system (OS) or by a predetermined application. Alternatively, some of the at least one software module may be provided by the OS, and some of the at least one software module may be provided by a predetermined application.
  • OS operating system
  • Alternatively, some of the at least one software module may be provided by the OS, and some of the at least one software module may be provided by a predetermined application.
  • the data recognizer 142 may include a data acquirer 142-1, a preprocessor 142-2, a recognition data selector 142-3, and a recognition result provider ( 142-4) and a model updater 142-5.
  • the data acquirer 142-1 may acquire data necessary for situation determination, and the preprocessor 142-2 may preprocess the acquired data so that the acquired data may be used for situation determination.
  • the preprocessing unit 142-2 may process the acquired data into a predetermined format so that the recognition result providing unit 142-4, which will be described later, may use the obtained data for determining a situation.
  • the recognition data selector 142-3 may select data required for situation determination from among the preprocessed data.
  • the selected data may be provided to the recognition result providing unit 142-4.
  • the recognition data selector 142-3 may select some or all of the preprocessed data according to a predetermined criterion for determining the situation.
  • the recognition data selector 142-3 may select data according to a predetermined criterion by learning by the model learner 142-4 to be described later.
  • the recognition result providing unit 142-4 may determine the situation by applying the selected data to the data recognition model.
  • the recognition result providing unit 142-4 may provide a recognition result according to the recognition purpose of the data.
  • the recognition result provider 142-4 may apply the selected data to the data recognition model by using the data selected by the recognition data selector 142-3 as an input value.
  • the recognition result may be determined by the data recognition model.
  • the recognition result providing unit 142-4 may recognize the input current driving state data according to the accident type classification criteria determined in the accident prediction model (data recognition model). In addition, using the accident prediction model, the recognition result providing unit 142-4 may calculate the similarity between the current driving state and the driving state at the time of the occurrence of the accident. Based on the calculated similarity, the processor 140 may determine whether an accident occurs and determine whether to provide a warning message.
  • the model updater 142-5 may cause the data recognition model to be updated based on the evaluation of the recognition result provided by the recognition result provider 142-4. For example, the model updater 142-5 may provide the model learner 141-4 with the recognition result provided by the recognition result provider 142-4 so that the model learner 141-4 can receive the recognition result.
  • the data recognition model can be updated.
  • At least one of the 142-5 may be manufactured in the form of at least one hardware chip and mounted on the electronic device.
  • At least one may be fabricated in the form of a dedicated hardware chip for artificial intelligence (AI), or may be fabricated as part of an existing general purpose processor (e.g., a CPU or application processor) or an IP for a particular function as described above. It may be mounted on various electronic devices 100.
  • AI artificial intelligence
  • one data acquisition unit 142-1, the preprocessor 142-2, the recognition data selection unit 142-3, the recognition result providing unit 142-4, and the model updater 142-5 may be mounted on the device, or may be mounted on separate electronic devices, respectively.
  • the preprocessor 142-2, the recognition data selecting unit 142-3, the recognition result providing unit 142-4, and the model updating unit 142-5 may be included in the electronic device 100 and others may be included in the server 200.
  • At least one of the data acquirer 142-1, the preprocessor 142-2, the recognition data selector 142-3, the recognition result provider 142-4, and the model updater 142-5 May be implemented as a software module.
  • At least one of the data obtaining unit 142-1, the preprocessor 142-2, the recognition data selecting unit 142-3, the recognition result providing unit 142-4, and the model updating unit 142-5 is software. If implemented as a module (or a program module containing instructions), the software module may be stored on a non-transitory computer readable recording medium.
  • At least one software module may be provided by an operating system (OS) or by a predetermined application. Alternatively, some of the at least one software module may be provided by the OS, and some of the at least one software module may be provided by a predetermined application.
  • OS operating system
  • Alternatively, some of the at least one software module may be provided by the OS, and some of the at least one software module may be provided by a predetermined application.
  • the processor 140 may learn an accident pattern using information that can be obtained from a vehicle when an accident occurs.
  • the processor 140 may build an accident prediction model by using the deep learning method.
  • the electronic device 100 may collect data at the time of the accident. For example, the electronic device 100 may determine whether an accident occurs based on malfunction information of parts of a linked vehicle, whether an air bag is operated, collision information collected through the camera 150 or the sensor unit 160, and the like. have.
  • the electronic device 100 may constantly monitor driving conditions. When the monitoring is suddenly stopped, the electronic device 100 may regard the final monitored driving situation as data at the time of the accident.
  • the collected accident data may include at least one of vehicle information at the time of the accident, operation information of the vehicle, location information, road shape information, weather information, distance between vehicles, image information, acceleration information, and steering information. .
  • the processor 140 may build an accident prediction model based on the collected accident data. Also, according to the accident type classification criteria learned through deep learning, the processor 140 may determine which type of accident data is the accident data. In the example of FIG. 5, an accident prediction model classifying accident types into five types is illustrated. For example, the processor 140 may classify each accident data into types of speeding, overtaking, slipping, and the like.
  • the processor 140 may build a general accident prediction model available in any region and a special accident prediction model specific to a specific region. For example, the processor 140 may set a specific area where a lot of accidents occur as an accident occurrence area. In addition, the processor 140 may analyze an accident type for each set accident area, and build an accident prediction model specialized for a specific accident type.
  • FIG. 6 is a view for explaining a method of setting an accident-prone area according to an embodiment of the present disclosure. If it is determined that an accident occurs more than a predetermined number of times in an area having a predetermined area, the processor 140 may set the area as an accident occurrence area. For example, FIG. 6 illustrates an embodiment in which three places 610, 620, and 630 are set as an accident occurrence area.
  • the processor 140 may determine the frequency for each type of accident occurring in each accident area. In addition, the processor 140 may build a special accident prediction model that weights the type of accident according to the frequency.
  • the processor 140 may determine that the fog is generally dense at the time of the accident. Can be. In addition, the processor 140 may collect information on the first accident area 610 through the Internet. Through this, the processor 140 may recognize that the first accident area 610 is an area in which the fog is severely momentarily.
  • the processor 140 may analyze the second accident area. It can be recognized that 620 is an area where a lot of interruptions occur.
  • the processor 140 may determine the third accident area 630. It can be recognized that this road killing area is frequent.
  • the processor 140 may verify the recognized result by collecting information related to the third accident area 630 through the Internet. For example, the processor 140 may retrieve news related to a load kill generated in the third accident area 630.
  • the processor 140 may build a special accident prediction model suitable for each accident area 610, 620, 630.
  • FIG. 7 is a diagram for describing changing an accident prediction model applied according to a current position of the electronic device 100. Based on the current location of the electronic device 100 determined by the location determiner 110, the processor 140 may select an accident prediction model to be applied from among a plurality of constructed accident prediction models.
  • the processor 140 when it is determined that the electronic device 100 enters an accident-prone area from a general area, the processor 140 is a special accident prediction model corresponding to an accident-prone area that enters from the general accident prediction model. You can change the accident prediction model that applies. If the electronic device 100 operates by downloading the accident prediction model from the server 200, the processor 140 requests the server 200 to request a special accident prediction model when entering the accident-prone region. ) Can be controlled.
  • the processor 140 may estimate the estimated time to enter the accident-prone area by referring to the current location, the map information, and the driving speed information determined by the location determiner 110.
  • the special accident prediction model may be loaded from the memory 180 (or downloaded from the server 200) before entering the accident occurrence area, so that the processor 140 may perform the accident prediction model conversion at the same time as the accident occurrence area conversion.
  • FIG. 8 is a diagram for explaining a difference when a general accident prediction model and a special accident prediction model are respectively applied.
  • whether or not a warning message is provided by the electronic device 100 may vary depending on the accident prediction model applied. This is because there are different things to be careful about in an area to prevent accidents.
  • the processor 140 may collect a current driving situation.
  • the processor 140 may collect external brightness, average hourly speed, road shape, weather information, and distance information with a preceding vehicle.
  • the processor 140 may determine that the probability of occurrence of an accident is lower than a preset value. Thus, processor 140 may determine not to provide a warning message.
  • the processor 140 may build a special accident prediction model for an accident occurrence area in which a number of stepless accidents occur. Using the special accident prediction model, the processor 140 may determine that the probability of an accident is higher than a preset value for the same driving situation. The processor 140 may control the output unit 130 to provide a warning message to the user.
  • FIG. 9 is a diagram for describing a method of providing, by an electronic device 100, an alert message for each accident type, according to an exemplary embodiment.
  • the processor 140 may continuously collect driving information while the vehicle is driving.
  • the driving information collected may include vehicle information, steering wheel operation information, excel / brake operation information, gear information, location information, road shape information, weather information, distance information with surrounding vehicles, image information, acceleration information, and steering information. It may be at least one of.
  • the processor 140 may analyze the collected current driving situation by using an accident prediction model.
  • the accident prediction model to be applied may be determined according to the location of the current electronic device 100.
  • the processor 140 may calculate a similarity degree between the accident occurrence situation learned by the accident prediction model and the collected current driving situation.
  • the processor 140 may calculate the similarity between each of the various accident types classified in the accident prediction model and the current driving situation.
  • the processor 140 may calculate a similarity degree between the accident occurrence situation of each of the accident types 1 to 5 and the collected current driving situation.
  • the processor 140 may provide a warning message as the similarity between the current driving situation and the accident type 4 accident occurrence situation is 0.81.
  • the processor 140 may provide a warning message corresponding to the accident type 4. For example, if accident type 4 is the interrupting accident type as the road becomes narrower, processor 140 may generate a warning message specific to the accident type, such as "Please note that interruption of vehicles in other lanes is expected.”
  • the output unit 130 may be controlled to output.
  • the electronic device 100 may provide different warning messages according to the degree of accident possibility.
  • the processor 140 may set a plurality of thresholds and compare the similarity values between the current driving situation and the accident occurrence situation with the respective threshold values.
  • the processor 140 may provide a warning message for an item similar to an accident occurrence situation.
  • the processor 140 may provide a voice message, such as "An accident may occur when the driving speed exceeds 70 km / h.”
  • the processor 140 may provide a stronger warning message. For example, processor 140 may provide a commanded voice message such as "Please slow down.” In addition, the processor 140 may output a visual warning message together with a voice message by using the display 133 or an LED (not shown).
  • the processor 140 may control the output unit 130 to provide a stronger warning message.
  • FIG. 10 is a diagram for explaining reinforcement learning with different weights for a general accident prediction model and a special accident prediction model when an accident occurs.
  • FIG. 10 illustrates a case where an accident occurs in an accident occurrence area in which a number of stepless accidents occur.
  • the processor 140 may reinforce and learn both the general accident prediction model and the special accident prediction model. However, the processor 140 may reinforce each accident prediction model by assigning different weights to the accident data.
  • the driving situation at the time of the accident occurrence illustrated in FIG. 10 may be determined to have a low probability of occurrence of an accident when analyzed by a general accident prediction model. If the accident data of FIG. 10 is input to the general accident prediction model by giving the same weight as other accidents, a problem may occur in statistics due to accident data corresponding to a rare case. Accordingly, the processor 140 may reinforce and learn a general accident prediction model by giving a low weight to accident data generated in the accident occurrence area.
  • the processor 140 may reinforce and learn a special accident prediction model by giving a high weight to the accident data.
  • 11 is a flowchart illustrating a warning message providing method of the electronic device 100 according to an embodiment of the present disclosure.
  • the electronic device 100 may learn accident data to build a plurality of accident prediction models (S1110).
  • the plurality of accident prediction models may include a general accident prediction model and at least one special accident prediction model applicable to the entire region.
  • a special accident prediction model can be built, one for each incident area.
  • the electronic device 100 may set the corresponding area as an accident-prone area.
  • the electronic device 100 may build a special accident prediction model based only on data on accidents occurring in the set accident area.
  • the electronic device 100 may determine which type of accident has a high frequency by analyzing accident data generated in the accident occurrence area.
  • the electronic device 100 may establish a special accident prediction model specialized for preventing a type of accident determined to have a high frequency.
  • the electronic device 100 may select an accident prediction model to be applied among the plurality of accident prediction models based on the current location in operation S1120. For example, the electronic device 100 may determine the current location by using a satellite navigation device such as GPS. As another example, the electronic device 100 may receive current location information by communicating with an external navigation device.
  • a satellite navigation device such as GPS.
  • the electronic device 100 may receive current location information by communicating with an external navigation device.
  • the electronic device 100 may apply a special accident prediction model corresponding to the entered accident-prone area. In contrast, when the determined current location leaves the accident occurrence area, the electronic device 100 may apply a general accident prediction model.
  • the electronic device 100 may determine a possibility of an accident by using the selected accident prediction model (S1130).
  • the electronic device 100 may collect a current driving situation.
  • the electronic device 100 may measure the similarity by comparing the accident occurrence situation learned by the accident prediction model with the collected current driving situation.
  • the electronic device 100 may determine the possibility of an accident based on the measured similarity. For example, as the current driving speed, the weather, the road shape, and the like are similar to the case where a large number of accidents occur, the electronic device 100 may determine a higher probability of the accident.
  • the electronic device 100 may set a threshold value in advance and compare it with the likelihood of an accident (S1140). If the likelihood of an accident is greater than or equal to a preset value (S1140-Y), the electronic device 100 may provide a warning message to the user (S1150).
  • the electronic device 100 may provide different warning messages according to the type of accident and the possibility of the occurrence of the accident. For example, the electronic device 100 may provide a warning message about a method (eg, deceleration, watching a side lane, etc.) to be dealt with according to an accident type. As another example, the electronic device 100 may provide a stronger warning message as the possibility of an accident increases.
  • FIG. 12 is a diagram for describing an electronic device 100 interworking with the server 200 according to another exemplary embodiment. Referring to FIG. 12, the electronic device 100 and the server 200 may interoperate to learn and recognize data.
  • the data learner 240 of the server 200 may perform the function of the data learner 141 illustrated in FIG. 4A.
  • the data learner 240 of the server 200 may learn a criterion for analyzing an accident type.
  • the server 200 may build an accident prediction model by analyzing accident data according to the learned criteria.
  • the data learner 240 may determine what data to use to learn / reinforce the accident prediction model.
  • the data learner 240 may learn a criterion for determining a possibility of an accident, an accident type, and the like using the determined data.
  • the data learner 240 acquires data to be used for learning and learns criteria for feature analysis by applying the obtained data to a data recognition model to be described later.
  • the recognition result providing unit 142-4 of the electronic device 100 may determine the situation by applying the data selected by the recognition data selecting unit 142-3 to the accident prediction model generated by the server 200. Can be. In addition, the recognition result providing unit 142-4 receives the accident prediction model generated by the server 200 from the server 200, and performs image analysis, content type determination, etc. using the received accident prediction model. Can be.
  • the electronic device 100 may receive a special accident prediction model corresponding to the case where the electronic device 100 is adjacent to the accident occurrence area.
  • the model updater 142-5 of the electronic device 100 may update the accident prediction model by providing the model learner 240-4 of the server 200.
  • the electronic device 100 may use an accident prediction model generated by using the computing power of the server 200.
  • the accident data learned or recognized by the plurality of electronic devices 100 is transmitted to the server 200, so that the server 200 may update the accident prediction model.
  • the server 200 transmits the accident data and the driving habit data learned or recognized in each of the plurality of electronic devices 100 to the server 200 so as to generate an accident prediction model personalized for each electronic device 100. You can also create a.
  • the electronic device 100 may include a general purpose processor, and the server 200 may include an artificial intelligence processor.
  • the electronic device 100 may include at least one application, and the server 200 may include an operating system.
  • the server 200 is a component that is more integrated, dedicated, has a smaller delay, has better performance, or has more resources than the electronic device 100, and is required to generate, update, or apply a recognition model. Many operations that can be faster and more efficient than the electronic device 100 can be a component.
  • an interface for transmitting / receiving data between the electronic device 100 and the server 200 may be defined.
  • an application program interface having training data to be applied to the recognition model as an argument value (or, a parameter value or a transfer value) may be defined.
  • An API is a set of subroutines or functions that can be called for processing of one protocol (eg, a protocol defined in the electronic device 100) to another protocol (eg, a protocol defined in the server 200).
  • a protocol defined in the electronic device 100 e.g., a protocol defined in the server 200.
  • an API may provide an environment in which an operation of another protocol may be performed in one protocol.
  • the server 200 may build an accident prediction model by collecting accident data through various paths (S1310).
  • the server 200 may build an accident prediction model using accident data obtained from a police agency, a navigation company, and the like and accident data transmitted from each electronic device 100.
  • the electronic device 100 may transmit the measured current location data to the server 200 (S1330).
  • the server 200 may transmit an accident prediction model corresponding to the location of the electronic device 100.
  • the electronic device 100 may determine a possibility of an accident by using the received accident prediction model in operation S1350. If the possibility of an accident is greater than or equal to a preset value, the electronic device 100 may output a warning message to the user (S1360).
  • the term "unit” includes a unit composed of hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit.
  • the module may be an integrally formed part or a minimum unit or part of performing one or more functions.
  • the module may be configured as an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • a device capable of calling and operating in accordance with the called command may include an electronic device according to the disclosed embodiments (for example, the electronic device A.)
  • the processor When the command is executed by the processor, the processor directly, Alternatively, other components may be used to perform functions corresponding to the instructions under the control of the processor, and the instructions may include code generated or executed by a compiler or an interpreter. It may be provided in the form of a non-transitory storage medium, where "non-transitory" means that the storage medium does not contain a signal and does not actually contain a signal. It is meant to be tangible but does not distinguish that data is stored semi-permanently or temporarily on a storage medium.
  • a method may be provided included in a computer program product.
  • the computer program product may be traded between the seller and the buyer as a product.
  • the computer program product may be distributed online in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)) or through an application store (eg Play StoreTM).
  • a device-readable storage medium eg compact disc read only memory (CD-ROM)
  • an application store eg Play StoreTM
  • at least a portion of the computer program product may be stored at least temporarily on a storage medium such as a server of a manufacturer, a server of an application store, or a relay server, or may be temporarily created.
  • Each component eg, a module or a program
  • some components eg, modules or programs
  • operations performed by a module, program, or other component may be executed sequentially, in parallel, repeatedly, or heuristically, or at least some of the operations may be executed in a different order, omitted, or another operation may be added. Can be.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Traffic Control Systems (AREA)

Abstract

An electronic device, a warning message providing method therefor, and a non-transitory computer-readable recording medium are provided. Disclosed is an artificial intelligence (AI) system using a machine learning algorithm such as deep learning and an application thereof. Disclosed, according to one embodiment, is an electronic device which can comprise: a position determination unit for determining a current position of the electronic device; a communication unit for receiving accident data and a driving situation; an output unit for outputting a warning message; and a processor for learning the received accident data to establish a plurality of accident prediction models, selecting an accident prediction model to be applied from among the plurality of accident prediction models on the basis of the determined current position, determining possibility of accident occurrence by using the selected accident prediction model, and controlling the output unit such that the output unit provides a warning message when the determined possibility of accident occurrence is greater than or equal to a preset value.

Description

전자 장치, 그의 경고 메시지 제공 방법 및 비일시적 컴퓨터 판독가능 기록매체Electronic device, method of providing alert message thereof and non-transitory computer readable recording medium
본 개시는 전자 장치, 그의 경고 메시지 제공 방법 및 비일시적 컴퓨터 판독가능 기록매체에 관한 것으로, 더욱 구체적으로 교통 사고 패턴을 학습하여 유사한 사고를 예방할 수 있는 전자 장치, 그의 경고 메시지 제공 방법 및 비일시적 컴퓨터 판독가능 기록매체에 관한 것이다.The present disclosure relates to an electronic device, a method of providing a warning message thereof, and a non-transitory computer readable recording medium. More particularly, the electronic device, a method of providing a warning message thereof, and a non-transitory computer capable of preventing a similar accident by learning a traffic accident pattern A readable recording medium.
또한, 본 개시는 딥러닝 등의 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 인공지능(AI) 시스템 및 그 응용에 관련된 것이다.In addition, the present disclosure relates to an artificial intelligence (AI) system that simulates functions such as cognition and judgment of the human brain by using a machine learning algorithm such as deep learning, and its application.
인공지능(Artificial Intelligence, AI) 시스템은 인간 수준의 지능을 구현하는 컴퓨터 시스템이며, 기존의 규칙 기반 스마트 시스템과 달리 기계가 스스로 학습하고 판단하며 똑똑해지는 시스템이다. 인공지능 시스템은 사용할수록 인식률이 향상되고 사용자의 취향을 더욱 정확하게 이해할 수 있게 된다. 따라서, 기존의 규칙 기반 스마트 시스템은 점차 딥러닝 기반의 인공지능 시스템으로 대체되고 있다.Artificial Intelligence (AI) system is a computer system that implements human-level intelligence, and unlike conventional rule-based smart systems, the machine learns, judges, and becomes smart. The more artificial intelligence systems are used, the better the recognition rate and the more accurate the user's taste will be. Therefore, the existing rule-based smart system is gradually being replaced by artificial intelligence system based on deep learning.
인공지능 기술은 기계학습(ex. 딥러닝) 및 기계학습을 활용한 요소 기술들로 구성된다. 기계 학습은 입력 데이터들의 특징을 스스로 분류하여 학습하는 알고리즘 기술이다. 요소 기술은 딥러닝 등의 기계학습 알고리즘을 활용하는 기술로서, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야로 구성될 수 있다.Artificial intelligence technology consists of elementary technologies that utilize machine learning (ex. Deep learning) and machine learning. Machine learning is an algorithmic technique for classifying and learning features of input data. Element technology is a technology that utilizes machine learning algorithms such as deep learning, and may be composed of technical fields such as linguistic understanding, visual understanding, inference / prediction, knowledge expression, and motion control.
인공지능 기술이 응용되는 다양한 분야는 다음과 같다. 언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리, 기계 번역, 대화 시스템, 질의응답, 음성 인식/합성 등을 포함한다. 시각적 이해는 사물을 인간의 시각처럼 인식하여 처리하는 기술로서, 객체 인식, 객체 추적, 영상 검색, 사람 인식, 장면 이해, 공간 이해, 영상 개선 등을 포함한다. 추론/예측은 정보를 판단하여 논리적으로 추론하고 예측하는 기술로서, 지식/확률 기반 추론, 최적화 예측, 선호 기반 계획, 추천 등을 포함한다. 지식 표현은 인간의 경험 정보를 지식 데이터로 자동화 처리하는 기술로서, 지식 구축(데이터 생성/분류), 지식 관리(데이터 활용) 등을 포함한다. 동작 제어는 차량의 자율 주행, 로봇의 움직임 등을 제어하는 기술로서, 움직임 제어(항법, 충돌, 주행), 조작 제어(행동 제어) 등을 포함한다.The various fields in which artificial intelligence technology is applied are as follows. Linguistic understanding is a technique for recognizing and applying / processing human language / characters, including natural language processing, machine translation, dialogue system, question and answer, speech recognition / synthesis, and the like. Visual understanding is a technology that recognizes and processes objects as human vision, and includes object recognition, object tracking, image retrieval, person recognition, scene understanding, spatial understanding, and image enhancement. Inference / prediction is a technique for determining, logically inferring, and predicting information. It includes knowledge / probability-based inference, optimization prediction, preference-based planning, and recommendation. Knowledge representation is a technology that automates human experience information into knowledge data, and includes knowledge construction (data generation / classification) and knowledge management (data utilization). Motion control is a technology for controlling autonomous driving of a vehicle, movement of a robot, and the like, and includes motion control (navigation, collision, driving), operation control (action control), and the like.
한편, 기존에는 사고 시의 사고 원인을 분석하고 분류하는 작업을 사람이 직접 수행하였다. 또한, 기존의 기계 학습 방법은 사람이 분류한 기준에 따라 원인을 판단하는 정도의 작업만이 가능하였다.On the other hand, in the past, a person directly performed the task of analyzing and classifying the cause of an accident. In addition, the existing machine learning method was only capable of determining the cause according to the criteria classified by humans.
그리고 운전 습관이나 주변 요소에 따라 다양한 원인의 사고 다발 지점이 존재하지만, 단순히 표지판으로만 사고 다발 지점이 표시되기 때문에 사용자가 정확한 사고 위험 요소를 인지하기 어렵다는 문제점이 있다.In addition, there are accident occurrence points of various causes according to driving habits or surrounding factors, but there is a problem in that it is difficult for a user to recognize an accurate accident risk factor because an accident occurrence point is displayed only by a sign.
본 개시는 상술한 문제점을 해결하기 위한 것으로, 사고 발생시 차량에서 얻을 수 있는 정보를 이용하여 사고 패턴을 학습하고, 학습된 사고 패턴과 현재 운전 상황을 비교하여 경고 메시지를 제공함으로써 유사한 사고를 예방할 수 있는 전자 장치, 그의 경고 메시지 제공 방법 및 비일시적 컴퓨터 판독가능 기록매체를 제공함을 목적으로 한다.The present disclosure is to solve the above-described problems, it is possible to prevent similar accidents by learning the accident pattern using information obtained from the vehicle in the event of an accident, and providing a warning message by comparing the learned accident pattern with the current driving situation. An electronic device, a method of providing a warning message thereof, and a non-transitory computer readable recording medium are provided.
상기 목적을 달성하기 위한 본 개시의 일 실시 예에 따른 전자 장치는, 상기 전자 장치의 현재 위치를 판단하는 위치 결정부, 사고 데이터 및 주행 상황을 수신하는 통신부, 경고 메시지를 출력하는 출력부 및 상기 수신된 사고 데이터를 학습하여 복수의 사고 예측 모델을 구축하고, 상기 위치 결정부에서 판단된 현재 위치를 기초로 상기 복수의 사고 예측 모델 중에서 적용할 사고 예측 모델을 선택하며, 상기 선택된 사고 예측 모델을 이용하여 사고 발생 가능성을 판단하고, 상기 판단된 사고 발생 가능성이 기설정된 값 이상이면 경고 메시지를 제공하도록 상기 출력부를 제어하는 프로세서를 포함할 수 있다.An electronic device according to an embodiment of the present disclosure for achieving the above object is, a positioning unit for determining the current position of the electronic device, a communication unit for receiving accident data and driving conditions, an output unit for outputting a warning message and the Constructs a plurality of accident prediction models by learning the received accident data, selects an accident prediction model to be applied among the plurality of accident prediction models based on the current position determined by the position determining unit, and selects the selected accident prediction model. The processor may include a processor configured to determine a possibility of an accident and to provide a warning message when the determined probability of occurrence of the accident is equal to or greater than a predetermined value.
그리고 상기 프로세서는, 기설정된 면적을 갖는 영역 내에서 기설정된 횟수 이상의 사고가 발생된 것으로 판단되면, 상기 영역을 사고 다발 지역으로 설정하고, 상기 복수의 사고 예측 모델은, 전체 지역에 적용 가능한 일반 사고 예측 모델 및 적어도 하나의 사고 다발 지역에 적용 가능한 적어도 하나의 특별 사고 예측 모델을 포함할 수 있다.If it is determined that an accident has occurred more than a predetermined number of times in an area having a predetermined area, the processor sets the area as an accident occurrence area, and the plurality of accident prediction models are general accidents applicable to all areas. It may include a prediction model and at least one special accident prediction model applicable to the at least one accident area.
또한, 상기 프로세서는, 전체 사고 데이터를 기초로 상기 일반 사고 예측 모델을 구축하고, 상기 사고 다발 지역에서 발생된 사고 데이터만을 기초로 상기 특별 사고 예측 모델을 구축할 수 있다.The processor may build the general accident prediction model based on the entire accident data, and build the special accident prediction model based only on the accident data generated in the accident occurrence area.
그리고 상기 프로세서는, 상기 사고 데이터를 사고 유형별로 구분하여 빈도 수를 판단하고, 상기 판단된 빈도 수에 따라 가중치를 두어 상기 사고 데이터를 학습할 수 있다.The processor may determine the frequency by dividing the accident data by accident type, and may learn the accident data by weighting the accident data.
또한, 상기 프로세서는, 상기 판단된 현재 위치가 상기 사고 다발 지역인 경우에 상기 특별 사고 예측 모델을 선택하고, 나머지 경우에 상기 일반 사고 예측 모델을 선택할 수 있다.The processor may select the special accident prediction model when the determined current location is the accident occurrence area, and select the general accident prediction model in other cases.
그리고 상기 프로세서는, 현재 주행 상황을 수집하도록 상기 통신부를 제어하고, 상기 사고 예측 모델에 의해 학습된 사고 발생 상황과 상기 수집된 현재 주행 상황의 유사도를 계산하여 사고 발생 가능성을 판단할 수 있다.The processor may determine the possibility of an accident by controlling the communication unit to collect a current driving situation and calculating a similarity between the accident occurrence situation learned by the accident prediction model and the collected current driving condition.
또한, 상기 프로세서는, 사고 발생 가능성이 커짐에 따라 단계적으로 다른 경고 메시지를 제공하도록 상기 출력부를 제어할 수 있다.In addition, the processor may control the output unit to provide another warning message in stages as the probability of an accident increases.
그리고 상기 프로세서는, 상기 사고 다발 지역에서 사고가 발생하면, 상기 일반 사고 예측 모델 및 상기 특별 사고 예측 모델을 서로 다른 가중치로 강화할 수 있다.The processor may reinforce the general accident prediction model and the special accident prediction model with different weights when an accident occurs in the accident occurrence area.
또한, 상기 사고 데이터는, 사고 당시 차량 정보, 차량 조작 정보, 위치 정보, 도로 형태 정보, 날씨 정보, 차량 간 거리 정보, 영상 정보, 가속도 정보 및 조향 정보 중 적어도 하나를 포함할 수 있다.The accident data may include at least one of vehicle information, vehicle operation information, location information, road shape information, weather information, distance between vehicles, image information, acceleration information, and steering information at the time of the accident.
또한, 상기 사고 예측 모델은 인공지능 신경망(Neural Network) 모델일 수 있다.In addition, the accident prediction model may be an artificial neural network model.
한편, 상기 목적을 달성하기 위한 본 개시의 일 실시 예에 따른 전자 장치의 경고 메시지 제공 방법은, 사고 데이터를 학습하여 복수의 사고 예측 모델을 구축하는 단계, 상기 전자 장치의 현재 위치를 기초로 상기 복수의 사고 예측 모델 중에서 적용할 사고 예측 모델을 선택하는 단계, 상기 선택된 사고 예측 모델을 이용하여 사고 발생 가능성을 판단하는 단계 및 상기 판단된 사고 발생 가능성이 기설정된 값 이상이면 경고 메시지를 제공하는 단계를 포함할 수 있다.On the other hand, the method for providing a warning message of the electronic device according to an embodiment of the present disclosure for achieving the above object, the step of learning the accident data to build a plurality of accident prediction model, based on the current location of the electronic device Selecting an accident prediction model to be applied among a plurality of accident prediction models, determining an occurrence probability of the accident using the selected accident prediction model, and providing a warning message if the determined occurrence probability is equal to or greater than a preset value. It may include.
그리고 기설정된 면적을 갖는 영역 내에서 기설정된 횟수 이상의 사고가 발생된 것으로 판단되면, 상기 영역을 사고 다발 지역으로 설정하는 단계를 더 포함하고, 상기 복수의 사고 예측 모델은, 전체 지역에 적용 가능한 일반 사고 예측 모델 및 적어도 하나의 사고 다발 지역에 적용 가능한 적어도 하나의 특별 사고 예측 모델을 포함할 수 있다.And if it is determined that an accident occurs more than a predetermined number of times in an area having a predetermined area, setting the area as an accident-prone area, wherein the plurality of accident prediction models are general applicable to all areas. It may include an accident prediction model and at least one special accident prediction model applicable to at least one accident area.
또한, 상기 구축하는 단계는, 전체 사고 데이터를 기초로 상기 일반 사고 예측 모델을 구축하고, 상기 사고 다발 지역에서 발생된 사고 데이터만을 기초로 상기 특별 사고 예측 모델을 구축할 수 있다.The building may include building the general accident prediction model based on the entire accident data, and building the special accident prediction model based only on the accident data generated in the accident occurrence area.
그리고 상기 구축하는 단계는, 상기 사고 데이터를 사고 유형별로 구분하여 빈도 수를 판단하고, 상기 판단된 빈도 수에 따라 가중치를 두어 사고 데이터를 학습할 수 있다.The building may include classifying the accident data by accident type to determine a frequency and learning the accident data by weighting the accident data.
또한, 상기 선택하는 단계는, 상기 전자 장치의 현재 위치를 판단하는 단계 및 상기 판단된 현재 위치가 상기 사고 다발 지역인 경우에 상기 특별 사고 예측 모델을 선택하고, 나머지 경우에 상기 일반 사고 예측 모델을 선택하는 단계를 포함할 수 있다.The selecting may include determining a current location of the electronic device, selecting the special accident prediction model when the determined current location is the accident area, and selecting the general accident prediction model in other cases. It may include the step of selecting.
그리고 상기 사고 발생 가능성을 판단하는 단계는, 현재 주행 상황을 수집하는 단계 및 상기 사고 예측 모델에 의해 학습된 사고 발생 상황과 상기 수집된 현재 주행 상황의 유사도를 계산하여 사고 발생 가능성을 판단할 수 있다.The determining of the likelihood of occurrence of an accident may include collecting a current driving situation and calculating similarity between the accident occurrence situation learned by the accident prediction model and the collected current driving situation to determine the likelihood of an accident occurrence. .
또한, 상기 경고 메시지를 제공하는 단계는, 사고 발생 가능성이 커짐에 따라 단계적으로 다른 경고 메시지를 제공할 수 있다.In addition, the providing of the warning message may provide another warning message in stages as the possibility of an accident increases.
그리고 상기 사고 다발 지역에서 사고가 발생하면, 상기 일반 사고 예측 모델 및 상기 특별 사고 예측 모델을 서로 다른 가중치로 강화하는 단계를 더 포함할 수 있다.When the accident occurs in the accident occurrence area, the method may further include strengthening the general accident prediction model and the special accident prediction model with different weights.
또한, 상기 사고 데이터는, 사고 당시 차량 정보, 차량 조작 정보, 위치 정보, 도로 형태 정보, 날씨 정보, 차량 간 거리 정보, 영상 정보, 가속도 정보 및 조향 정보 중 적어도 하나를 포함할 수 있다.The accident data may include at least one of vehicle information, vehicle operation information, location information, road shape information, weather information, distance between vehicles, image information, acceleration information, and steering information at the time of the accident.
또한, 상기 사고 예측 모델은 인공지능 신경망(Neural Network) 모델일 수 있다.한편, 상기 목적을 달성하기 위한 본 개시의 일 실시 예에 따른 전자 장치의 경고 메시지 제공 방법을 실행하기 위한 프로그램을 포함하는 비일시적 컴퓨터 판독가능 기록매체는, 사고 데이터를 학습하여 복수의 사고 예측 모델을 구축하는 단계, 상기 전자 장치의 현재 위치를 기초로 상기 복수의 사고 예측 모델 중에서 적용할 사고 예측 모델을 선택하는 단계, 상기 선택된 사고 예측 모델을 이용하여 사고 발생 가능성을 판단하는 단계 및 상기 판단된 사고 발생 가능성이 기설정된 값 이상이면 경고 메시지를 제공하는 단계를 포함하는 경고 메시지 제공 방법을 포함할 수 있다.The accident prediction model may be an artificial neural network model. Meanwhile, the accident prediction model may include a program for executing a method of providing an alert message of an electronic device according to an embodiment of the present disclosure. The non-transitory computer readable recording medium may include: constructing a plurality of accident prediction models by learning accident data; selecting an accident prediction model to be applied among the plurality of accident prediction models based on a current position of the electronic device; The method may include determining a possibility of an accident by using the selected accident prediction model, and providing a warning message when the determined probability of occurrence of an accident is equal to or greater than a preset value.
이상과 같은 본 개시의 다양한 실시 예에 따르면, 기존에 사고가 발생하였던 상황과 유사한 상황이 발생하는 경우에 경고 메시지를 제공하여 유사 사고를 방지할 수 있다.According to various embodiments of the present disclosure as described above, a warning message may be provided when a situation similar to a situation in which an accident occurs in the past may occur to prevent a similar accident.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 설명하기 위한 개략적인 블록도,1 is a schematic block diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure;
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 상세히 설명하기 위한 블록도,2 is a block diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure;
도 3은 본 개시의 일부 실시 예에 따른 프로세서의 블록도,3 is a block diagram of a processor in accordance with some embodiments of the present disclosure;
도 4a는 본 개시의 일부 실시 예에 따른 데이터 학습부의 블록도,4A is a block diagram of a data learning unit according to some embodiments of the present disclosure;
도 4b는 본 개시의 일부 실시 예에 따른 데이터 인식부의 블록도,4B is a block diagram of a data recognizer according to some embodiments of the present disclosure;
도 5는 본 개시의 일 실시 예에 따른 전자 장치의 사고 예측 모델 구축 방법을 설명하기 위한 도면,5 is a view for explaining a method for establishing an accident prediction model of an electronic device according to an embodiment of the present disclosure;
도 6은 본 개시의 일 실시 예에 따른 사고 다발 지역을 설정하는 방법을 설명하기 위한 도면,6 is a view for explaining a method for setting an accident-prone area according to an embodiment of the present disclosure;
도 7은 전자 장치의 현재 위치에 따라 적용하는 사고 예측 모델을 변경하는 것을 설명하기 위한 도면,FIG. 7 is a diagram for explaining changing an accident prediction model applied according to a current position of an electronic device; FIG.
도 8은 일반 사고 예측 모델과 특별 사고 예측 모델을 각각 적용할 경우의 차이를 설명하기 위한 도면,8 is a view for explaining the difference between applying a general accident prediction model and a special accident prediction model, respectively;
도 9는 본 개시의 일 실시 예에 따른 전자 장치가 사고 유형별로 상이한 경고 메시지를 제공하는 방법을 설명하기 위한 도면,9 is a diagram for describing a method of providing, by an electronic device, a different warning message for each type of accident, according to an embodiment of the present disclosure;
도 10은 사고 발생 시 일반 사고 예측 모델과 특별 사고 예측 모델에 대해 다른 가중치로 강화 학습하는 것을 설명하기 위한 도면,10 is a diagram for explaining reinforcement learning with different weights for a general accident prediction model and a special accident prediction model when an accident occurs;
도 11은 본 개시의 일 실시 예에 따른 전자 장치의 경고 메시지 제공 방법을 설명하기 위한 흐름도,11 is a flowchart illustrating a warning message providing method of an electronic device according to an embodiment of the present disclosure;
도 12는 본 개시의 다른 실시 예에 따른 서버와 연동하는 전자 장치를 설명하기 위한 도면, 그리고,12 is a diagram for describing an electronic device interoperating with a server according to another embodiment of the present disclosure;
도 13은 본 개시의 다른 실시 예에 따른 전자 장치 및 서버의 동작을 설명하기 위한 시퀀스도이다.13 is a sequence diagram illustrating an operation of an electronic device and a server according to another exemplary embodiment of the present disclosure.
이하에서는 본 개시의 바람직한 실시 예가 첨부된 도면을 참조하여 상세히 설명한다. 본 개시를 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다. 그리고 후술되는 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In describing the present disclosure, when it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present disclosure, the detailed description thereof will be omitted. The terms to be described below are terms defined in consideration of functions in the present disclosure, and may vary according to a user, an operator, or a custom. Therefore, the definition should be made based on the contents throughout the specification.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되지는 않는다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 항목들의 조합 또는 복수의 관련된 항목들 중의 어느 하나의 항목을 포함한다.Terms including ordinal numbers such as first and second may be used to describe various components, but the components are not limited by the terms. The terms are only used to distinguish one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes any one of a plurality of related items or a combination of a plurality of related items.
본 명세서에서 사용한 용어는 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 제한 및/또는 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 숫자, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting and / or limiting of the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, the terms including or having are intended to indicate that there is a feature, number, operation, component, part, or a combination thereof described in the specification, but one or more other features or numbers, operation, configuration It should be understood that it does not preclude the presence or possibility of addition of elements, parts or combinations thereof.
실시 예에 있어서 '모듈' 혹은 '부'는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어 또는 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '모듈' 혹은 복수의 '부'는 특정한 하드웨어로 구현될 필요가 있는 '모듈' 혹은 '부'를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.In an embodiment, the module or unit performs at least one function or operation, and may be implemented by hardware or software or a combination of hardware or software. In addition, a plurality of 'modules' or a plurality of 'units' may be integrated into at least one module except for 'modules' or 'units' that need to be implemented by specific hardware, and may be implemented as at least one processor.
한편, 본 개시에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.Meanwhile, in the present disclosure, the term user may refer to a person who uses an electronic device or a device (eg, an artificial intelligence electronic device) that uses an electronic device.
이하에서는 첨부된 도면을 이용하여 본 개시에 대하여 구체적으로 설명한다.Hereinafter, the present disclosure will be described in detail with reference to the accompanying drawings.
도 1은 본 개시의 일 실시 예에 따른 전자 장치(100)의 구성을 개략적으로 도시한 블록도이다. 전자 장치(100)는 스마트폰, 타블렛 PC, 랩탑과 같은 모바일 장치로 구현될 수 있다. 또한, 전자 장치(100)는 차량에 탑재되는 IVI(In-Vehicle Infotainment)로 구현될 수도 있다. IVI는 차량에 설치된 장치를 통칭하는 것으로, 오디오 및 시각적인 엔터테인먼트를 제공하는 장치를 말한다. 예를 들어, IVI는 네비게이션, 블랙박스, 카오디오 시스템, HUD(Head Up Display) 등으로 구현될 수 있다.1 is a block diagram schematically illustrating a configuration of an electronic device 100 according to an embodiment of the present disclosure. The electronic device 100 may be implemented as a mobile device such as a smartphone, a tablet PC, or a laptop. In addition, the electronic device 100 may be implemented as an In-Vehicle Infotainment (IVI) mounted in a vehicle. IVI refers to a device installed in a vehicle and refers to a device that provides audio and visual entertainment. For example, the IVI may be implemented as a navigation, a black box, a car audio system, a head up display (HUD), or the like.
전자 장치(100)는 단독으로 사고 예측 모델을 구축하고, 구축된 사고 예측 모델을 바탕으로 유사한 사고를 예방할 수 있다. 또한, 전자 장치(100)는 서버(200)와 같은 외부 장치와 연동할 수도 있다. 서버(200)에서 사고 예측 모델을 구축하고, 전자 장치(100)는 사고 예측 모델을 서버(200)로부터 수신하여 이용할 수 있다. 우선 도 1의 실시 예를 설명함에 있어서는 전자 장치(100)가 단독으로 동작하는 것을 상정하여 설명하기로 한다. 서버(200)와 연동하는 실시 예는 이하에서 다시 설명하기로 한다. The electronic device 100 may independently build an accident prediction model and prevent similar accidents based on the constructed accident prediction model. In addition, the electronic device 100 may interwork with an external device such as the server 200. The accident prediction model may be built in the server 200, and the electronic device 100 may receive and use the accident prediction model from the server 200. First, in describing the embodiment of FIG. 1, it is assumed that the electronic device 100 operates alone. An embodiment of interworking with the server 200 will be described later.
도 1을 참조하면, 전자 장치(100)는 위치 결정부(110), 통신부(120), 출력부(130) 및 프로세서(140)를 포함할 수 있다.Referring to FIG. 1, the electronic device 100 may include a location determiner 110, a communicator 120, an outputter 130, and a processor 140.
위치 결정부(110)는 전자 장치(100)의 현재 위치를 판단할 수 있다. 위치 결정부(110)는 위성항법시스템(GNSS, Global Navigation Satellite System)으로 구현될 수 있다. 위성항법시스템의 예로는 GPS(Global Positioning System), 갈릴레오 위치 결정 시스템(Galileo positioning system), GLONASS(GLObal NAvigation Satellite System)을 들 수 있다. 전자 장치(100)는 위치 결정부(110)에서 판단된 현재 위치를 기초로 적용할 사고 예측 모델을 결정할 수 있다.The location determiner 110 may determine a current location of the electronic device 100. The location determiner 110 may be implemented as a global navigation satellite system (GNSS). Examples of satellite navigation systems include GPS (Global Positioning System), Galileo positioning system (Galileo positioning system), and GLONASS (GLObal NAvigation Satellite System). The electronic device 100 may determine an accident prediction model to apply based on the current location determined by the location determiner 110.
통신부(120)는 외부 장치와 데이터 및/또는 제어 신호를 송수신할 수 있다. 예를 들어, 통신부(120)는 외부 장치로부터 사고 데이터, 현재 주행 상황, 사고 예측 모델 등을 수신할 수 있다. 또한, 통신부(120)는 외부 장치로 경고 메시지를 출력하라는 제어 신호를 송신할 수 있다.The communication unit 120 may transmit and receive data and / or control signals with an external device. For example, the communicator 120 may receive accident data, a current driving situation, an accident prediction model, and the like from an external device. In addition, the communication unit 120 may transmit a control signal to output a warning message to the external device.
출력부(130)는 경고 메시지를 출력할 수 있다. 예를 들어, 출력부(130)는 시각적, 청각적 신호 중 적어도 하나를 출력할 수 있다. 다른 예로, 출력부(130)는 직접 사용자에게 메시지를 제공하지 않고, 외부 장치로 경고 메시지를 제공할 수도 있다.The output unit 130 may output a warning message. For example, the output unit 130 may output at least one of a visual and audio signal. As another example, the output unit 130 may provide a warning message to an external device without directly providing a message to a user.
프로세서(140)는 사고 데이터를 기초로 사고 예측 모델을 구축할 수 있다. 그리고 구축된 사고 예측 모델을 기초로, 프로세서(140)는 현재 주행 상황이 사고 발생 당시의 상황과 유사한지 판단할 수 있다. 만일 유사도가 기설정된 값 이상이면, 프로세서(140)는 사용자에게 경고 메시지를 제공할 수 있다. 이를 통해 전자 장치(100)는 기존의 사고 사례와 유사한 사고를 예방할 수 있다.The processor 140 may build an accident prediction model based on the accident data. The processor 140 may determine whether the current driving situation is similar to the situation at the time of the occurrence of the accident, based on the constructed accident prediction model. If the similarity is greater than or equal to a preset value, the processor 140 may provide a warning message to the user. Through this, the electronic device 100 may prevent an accident similar to the existing accident case.
또한 본 개시에 따른 다양한 실시예에 의할 때. 전자 장치(100)는 수신된 사고데이터를 인식 모델의 입력 데이터로 사용하여 사고 예측 데이터를 획득할 수 있다. 본 개시에서 학습된 인식 모델은 인식 모델의 적용 분야 또는 장치의 컴퓨터 성능 등을 고려하여 구축될 수 있다. 학습된 객체 인식 모델은, 예로, 신경망(Neural Network)을 기반으로 하는 모델일 수 있다. 객체 인식 모델은 인간의 뇌 구조를 컴퓨터 상에서 모의하도록 설계될 수 있으며 인간의 신경망의 뉴런(neuron)을 모의하는, 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드들은 뉴런이 시냅스(synapse)를 통하여 신호를 주고 받는 뉴런의 시냅틱(synaptic) 활동을 모의하도록 각각 연결 관계를 형성할 수 있다. 또한 객체 인식 모델은, 일 예로, 신경망 모델, 또는 신경망 모델에서 발전한 딥 러닝 모델을 포함할 수 있다. 딥 러닝 모델에서 복수의 네트워크 노드들은 서로 다른 깊이(또는, 레이어)에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고 받을 수 있다. 객체 인식 모델의 예에는 DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 등이 있을 수 있으나 이에 한정되지 않는다.And also by various embodiments according to the present disclosure. The electronic device 100 may obtain the accident prediction data by using the received accident data as input data of the recognition model. The recognition model learned in the present disclosure may be constructed in consideration of application fields of the recognition model or computer performance of the apparatus. The learned object recognition model may be, for example, a model based on a neural network. The object recognition model may be designed to simulate a human brain structure on a computer and may include a plurality of weighted network nodes that simulate neurons in a human neural network. The plurality of network nodes may form a connection relationship so that neurons simulate the synaptic activity of neurons that send and receive signals through synapses. In addition, the object recognition model may include, for example, a neural network model or a deep learning model developed from the neural network model. In the deep learning model, a plurality of network nodes may be located at different depths (or layers) and exchange data according to a convolutional connection relationship. Examples of the object recognition model may include, but are not limited to, a Deep Neural Network (DNN), a Recurrent Neural Network (RNN), and a Bidirectional Recurrent Deep Neural Network (BRDNN).
또한, 전자 장치(100)는 상술한 바와 같은 수신된 사고 데이터에 대한 경고 메시지를 획득하기 위하여 인공지능 에이전트(Artificial intelligence agent)를 이용할 수 있다. 이때, 인공지능 에이전트는 AI(Artificial Intelligence) 기반의 서비스(예를 들어, 음성 인식 서비스, 비서 서비스, 번역 서비스, 검색 서비스 등)를 제공하기 위한 전용 프로그램으로서, 기존의 범용 프로세서(예를 들어, CPU) 또는 별도의 AI 전용 프로세서(예를 들어, GPU 등)에 의해 실행될 수 있다. In addition, the electronic device 100 may use an artificial intelligence agent to obtain a warning message for the received accident data as described above. At this time, the artificial intelligence agent is a dedicated program for providing an AI (Artificial Intelligence) based service (for example, a voice recognition service, a secretary service, a translation service, a search service, etc.), and an existing general purpose processor (for example, CPU) or a separate AI dedicated processor (eg, GPU, etc.).
도 2는 본 개시의 일 실시 예에 따른 전자 장치(100)의 구성을 상세히 설명하기 위한 블록도이다. 도 2를 참조하면, 전자 장치(100)는 위치 결정부(110), 통신부(120), 출력부(130), 프로세서(140), 카메라(150), 센서부(160), 조작 제어부(170) 및 메모리(180)를 포함할 수 있다.2 is a block diagram illustrating a configuration of an electronic device 100 according to an embodiment of the present disclosure in detail. Referring to FIG. 2, the electronic device 100 includes a positioning unit 110, a communication unit 120, an output unit 130, a processor 140, a camera 150, a sensor unit 160, and an operation control unit 170. ) And memory 180.
도 2의 실시 예에 도시된 구성 요소 이외에도 전자 장치(100)는 영상 처리부(미도시), 영상 분석부(미도시), 전원부(미도시) 등 다양한 구성을 포함할 수 있다. 또한, 전자 장치(100)는 반드시 도 2에 도시된 구성을 모두 포함하여 구현되는 것으로 한정되지 않음은 물론이다. 예를 들어, 카메라(150) 없이 구현된 전자 장치(100)는 외부 장치에서 통신부(120)를 통해 영상 데이터를 수신할 수도 있다.In addition to the components illustrated in the embodiment of FIG. 2, the electronic device 100 may include various components such as an image processor (not shown), an image analyzer (not shown), a power source (not shown), and the like. In addition, the electronic device 100 is not necessarily limited to being implemented by including all the configurations shown in FIG. 2. For example, the electronic device 100 implemented without the camera 150 may receive image data through the communication unit 120 from the external device.
위치 결정부(110)는 위성항법시스템을 구현하기 위한 회로, 소프트웨어 등을 포함할 수 있다. 구현되는 전자 장치(100) 각각의 규격에 따라 적용되는 위성항법시스템의 종류가 달라질 수 있다. 예를 들어, 적용되는 위성항법 시스템은 GPS(Global Positioning System), 갈릴레오 위치 결정 시스템(Galileo positioning system), GLONASS(GLObal NAvigation Satellite System)중 하나일 수 있다. 또한, 위치 결정부(110)는 A-GPS(Assisted GPS), D-GPS(Differential GPS) 등을 복합적으로 이용할 수 있다. 통신부(120)를 통해 연결된 AP, 기지국 등의 위치 정보를 추가로 이용하여, 위치 결정부(110)는 현재 전자 장치(100)의 위치를 결정할 수도 있다.The location determiner 110 may include a circuit, software, and the like for implementing the satellite navigation system. The type of satellite navigation system to be applied may vary according to the specifications of each of the implemented electronic devices 100. For example, the applied satellite navigation system may be one of a Global Positioning System (GPS), a Galileo positioning system, and a Global NAvigation Satellite System (GLONASS). In addition, the location determiner 110 may use a combination of Assisted GPS (A-GPS), Differential GPS (D-GPS), and the like. The location determiner 110 may determine the current location of the electronic device 100 by further using location information of an AP, a base station, etc. connected through the communication unit 120.
통신부(120)는 외부 장치와 통신을 수행한다. 예를 들어, 외부 장치는 서버, 클라우드 저장소, 네트워크 등으로 구현될 수 있다. 외부 장치로부터 사고 데이터를 수신하여, 전자 장치(100)는 사고 예측 모델의 구축, 학습, 갱신 등을 직접 수행할 수 있다. 그리고 전자 장치(100)는 외부 장치에서 구축한 사고 예측 모델을 수신할 수도 있다. 예를 들어, 특정 사고 다발 지역에 전자 장치(100)가 진입하면, 통신부(120)는 외부 서버에 해당 사고 다발 지역에 대응되는 사고 예측 모델을 전송해줄 것을 요청할 수 있다.The communication unit 120 communicates with an external device. For example, the external device may be implemented as a server, cloud storage, a network, or the like. Receiving accident data from an external device, the electronic device 100 may directly build, learn, and update an accident prediction model. The electronic device 100 may also receive an accident prediction model constructed by an external device. For example, when the electronic device 100 enters a specific accident occurrence area, the communication unit 120 may request an external server to transmit an accident prediction model corresponding to the accident occurrence area.
이를 위해, 통신부(120)는 근거리 무선 통신 모듈(미도시), 무선 통신 모듈(미도시) 등과 같은 다양한 통신 모듈을 포함할 수 있다. 여기에서, 근거리 무선 통신 모듈이란 블루투스(Bluetooth), 지그비(Zigbee) 등과 같은 근거리 무선 통신 방식에 따라, 근거리에 위치한 외부 기기와 통신을 수행하기 위한 모듈이다. 또한, 무선 통신 모듈이란 WiFi, WiFi direct, IEEE 등과 같은 무선 통신 프로토콜에 따라 외부 네트워크에 연결되어 통신을 수행하는 모듈이다. 이 밖에 무선 통신 모듈은 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evoloution), LTE-A(LTE Advanced) 등과 같은 다양한 이동 통신 규격에 따라 이동 통신망에 접속하여 통신을 수행하는 이동 통신 모듈을 더 포함할 수도 있다.To this end, the communication unit 120 may include various communication modules such as a short range wireless communication module (not shown), a wireless communication module (not shown), and the like. Here, the short range wireless communication module is a module for communicating with an external device located in a short range according to a short range wireless communication scheme such as Bluetooth, Zigbee, or the like. In addition, the wireless communication module is a module that is connected to an external network and performs communication according to a wireless communication protocol such as WiFi, WiFi direct, or IEEE. In addition, the wireless communication module performs communication by connecting to a mobile communication network according to various mobile communication standards such as 3G (3rd Generation), 3GPP (3rd Generation Partnership Project), Long Term Evoloution (LTE), LTE Advanced (LTE-A), etc. It may further include a mobile communication module.
출력부(130)는 다양한 방식으로 경고 메시지를 출력할 수 있다. 예를 들어, 출력부(130)는 디스플레이(131)로 구현되어 시각적 경고 메시지를 표시할 수 있다. 다른 예로, 출력부(130)는 스피커(133)로 구현되어 청각적 경고 메시지를 출력할 수 있다. 또 다른 예로, 출력부(130)는 LED(미도시)로 구현되어 점멸 신호를 출력할 수도 있다. 디스플레이(131) 및 스피커(133)를 통해 경고 메시지가 동시에 출력될 수 있음은 물론이다.The output unit 130 may output the warning message in various ways. For example, the output unit 130 may be implemented as the display 131 to display a visual warning message. As another example, the output unit 130 may be implemented as a speaker 133 to output an auditory warning message. As another example, the output unit 130 may be implemented as an LED (not shown) to output a flashing signal. Of course, the warning message may be output through the display 131 and the speaker 133 at the same time.
디스플레이(131)는 경고 메시지를 표시할 수 있다. 예를 들어, 디스플레이(131)는 차량 앞면 유리에 HUD(Head Up Display)의 형태로 구현될 수 있다. 디스플레이(131)는 액정 표시 장치(Liquid Crystal Display, LCD), 유기 전기 발광 다이오드(Organic Light Emitting Display, OLED) 또는 플라즈마 표시 패널(Plasma Display Panel, PDP) 등으로 구현되어, 전자 장치(100)를 통해 제공 가능한 다양한 화면을 표시할 수 있다.The display 131 may display a warning message. For example, the display 131 may be implemented in the form of a head up display (HUD) on the vehicle front glass. The display 131 may be implemented as a liquid crystal display (LCD), an organic light emitting diode (OLED), a plasma display panel (PDP), or the like, thereby forming the electronic device 100. Various screens that can be provided can be displayed.
스피커(133)는 음성을 출력할 수 있다. 예를 들어, 스피커(133)는 각종 오디오 데이터뿐만 아리나 알림 음이나 음성 메시지의 형태로 경고 메시지를 출력할 수 있다. 스피커(133)는 전자 장치(100)에 내장될 수도 있으며, 잭 등과 같은 출력 포트의 형태로 구현될 수도 있다.The speaker 133 may output voice. For example, the speaker 133 may output a warning message in the form of a notification sound or a voice message as well as various audio data. The speaker 133 may be built in the electronic device 100 or may be implemented in the form of an output port such as a jack.
카메라(150)는 스틸 이미지 또는 동영상을 촬영할 수 있다. 예를 들어, 카메라(150)는 차량 전면 영역을 촬영할 수 있다. 촬영된 영상 프레임 간의 차이를 이용하여, 프로세서(140)는 차량의 가속도 정보, 조향 정보 등을 획득할 수 있다.The camera 150 may capture a still image or a video. For example, the camera 150 may photograph the front area of the vehicle. Using the difference between the captured image frames, the processor 140 may obtain acceleration information, steering information, and the like of the vehicle.
카메라(150)는 CCD(Charge Coupled Device), CMOS(Complementary Metal Oxide Semiconductor) 등의 이미지 센서로 구현될 수 있다. CCD는 각각의 MOS(Metal-Oxide-Silicon) 커패시터가 서로 매우 근접한 위치에 있으면서 전하 캐리어가 커패시터에 저장되고 이송되는 소자이다. CMOS 이미지 센서는 제어회로(control circuit) 및 신호처리회로(signal processing circuit)를 주변회로로 사용하는 CMOS 기술을 이용하여 화소 수만큼 MOS 트랜지스터를 만들고 이것을 이용하여 차례차례 출력을 검출하는 스위칭 방식을 채용하는 소자이다.The camera 150 may be implemented as an image sensor such as a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS). A CCD is a device in which charge carriers are stored and transported in a capacitor while each metal-oxide-silicon (MOS) capacitor is in close proximity to each other. The CMOS image sensor adopts a switching method that uses a CMOS technology that uses a control circuit and a signal processing circuit as peripheral circuits to make MOS transistors by the number of pixels, and sequentially detects the output using the same. It is an element to make.
전자 장치(100)가 카메라(150)가 없는 형태로 구현되는 경우, 프로세서(140)는 차량에 설치된 블랙박스 장치 등으로부터 영상 정보를 수신하도록 통신부(120)를 제어할 수 있다.When the electronic device 100 is implemented without the camera 150, the processor 140 may control the communication unit 120 to receive image information from a black box device installed in the vehicle.
센서부(160)는 차량의 주변 환경과의 거리를 측정할 수 있다. 센서부(160)는 다른 차량과의 거리, 중앙 분리대와 같은 교통 시설물과의 거리에 대한 정보를 수집할 수 있다. 전자 장치(100)가 차량의 일 구성 장치가 아닌 경우(예를 들어, 전자 장치(100)가 모바일 장치로 구현된 경우), 프로세서(140)는 차량의 센서부(160)로부터 주변 차량 등과의 거리 정보를 수신하도록 통신부(120)를 제어할 수 있다.The sensor unit 160 may measure a distance from the surrounding environment of the vehicle. The sensor unit 160 may collect information about a distance from another vehicle and a distance from a traffic facility such as a central separator. When the electronic device 100 is not one component of the vehicle (for example, when the electronic device 100 is implemented as a mobile device), the processor 140 may be connected to the surrounding vehicle from the sensor unit 160 of the vehicle. The communicator 120 may be controlled to receive distance information.
조작 제어부(170)는 차량의 조작을 제어할 수 있다. 예를 들어, 조작 제어부(170)는 차량의 모든 동작을 전자적으로 관리하는 시스템인 ECU(Electronic Control Unit)으로 구현될 수 있다. 프로세서(140)는 조작 제어부(170)로부터 핸들 조작 정보, 액셀/브레이크 정보, 엔진 등의 부품 상태 정보 등을 제공받을 수 있다. 전자 장치(100)가 차량의 일 구성 장치가 아닌 경우, 프로세서(140)는 차량의 조작 제어부(170)로부터 조작 정보를 수신하도록 통신부(120)를 제어할 수 있다.The manipulation controller 170 may control manipulation of the vehicle. For example, the manipulation controller 170 may be implemented as an electronic control unit (ECU), which is a system that electronically manages all operations of the vehicle. The processor 140 may be provided with steering wheel manipulation information, accelerator / brake information, component state information such as an engine, etc. from the manipulation controller 170. When the electronic device 100 is not one component of the vehicle, the processor 140 may control the communication unit 120 to receive operation information from the operation control unit 170 of the vehicle.
메모리(180) 전자 장치(100)를 구동하기 위한 다양한 모듈, 소프트웨어, 데이터를 저장할 수 있다. 예를 들어, 메모리(180)에는 사고 데이터, 기생성된 경고 메시지, 수집된 주행 정보 등이 저장될 수 있다. 다른 예로, 메모리(180)에는 사고 발생 가능성을 판단하는데 이용될 수 있는 사고 예측 모델이 저장될 수 있다.The memory 180 may store various modules, software, and data for driving the electronic device 100. For example, the memory 180 may store accident data, parasitic warning messages, and collected driving information. As another example, an accident prediction model may be stored in the memory 180 that may be used to determine a possibility of an accident.
메모리(180)는 전자 장치(100)를 동작시키기 위해 필요한 각종 프로그램 등이 저장되는 저장매체로서, 플래쉬 메모리, HDD(Hard Disk Drive), SSD (Solid State Drive) 등의 형태로 구현 가능하다. 예를 들어, 메모리(180)는 전자 장치(100)의 동작 수행을 위한 프로그램을 저장하기 위한 ROM, 전자 장치(100)의 동작 수행에 따른 데이터를 일시적으로 저장하기 위한 RAM을 구비할 수 있다.The memory 180 is a storage medium that stores various programs necessary for operating the electronic device 100. The memory 180 may be implemented in the form of a flash memory, a hard disk drive (HDD), a solid state drive (SSD), or the like. For example, the memory 180 may include a ROM for storing a program for performing an operation of the electronic device 100 and a RAM for temporarily storing data for performing an operation of the electronic device 100.
프로세서(140)는 전자 장치(100)의 상술한 구성들을 제어할 수 있다. 예를 들어, 프로세서(140)는 경고 메시지를 출력하도록 출력부(130)를 제어할 수 있다.The processor 140 may control the above-described components of the electronic device 100. For example, the processor 140 may control the output unit 130 to output a warning message.
프로세서(140)는 단일 CPU로 구현되어 사고 예측 모델 구축 및 갱신, 적용할 사고 예측 모델 결정, 주행 정보 수집 및 분석, 경고 메시지 생성 등을 수행할 수도 있고, 복수의 프로세서 및 특정 기능을 수행하는 IP로 구현될 수도 있다.The processor 140 may be implemented as a single CPU to construct and update an accident prediction model, determine an accident prediction model to be applied, collect and analyze driving information, generate a warning message, or perform a plurality of processors and IPs. It may be implemented as.
프로세서(140)는 통신부(120)를 통해 수신된 사고 데이터를 학습하여 적어도 하나의 사고 예측 모델을 구축할 수 있다. 예를 들어, 프로세서(140)는 딥러닝 방식으로 사고 데이터를 분석하여 사고 유형을 구분하는 기준을 결정할 수 있다. 그리고 프로세서(140)는 구분된 기준에 따라 사고 사례들을 분류할 수 있다.The processor 140 may build at least one accident prediction model by learning the accident data received through the communication unit 120. For example, the processor 140 may analyze the accident data in a deep learning manner to determine a criterion for classifying the accident type. In addition, the processor 140 may classify accident cases based on the divided criteria.
프로세서(140)는 전 지역에서 이용될 수 있는 일반 사고 예측 모델 및 특정 지역에서만 이용될 수 있는 특별 사고 예측 모델을 별도로 구축할 수 있다. 예를 들어, 프로세서(140)는 특정 지역을 사고 다발 지역을 설정하고, 설정된 사고 다발 지역별로 특별 사고 예측 모델을 구축할 수 있다.The processor 140 may separately build a general accident prediction model that can be used in all regions and a special accident prediction model that can be used only in a specific region. For example, the processor 140 may set a accident area in a specific area, and build a special accident prediction model for each set accident area.
사고 데이터를 기초로 기설정된 면적을 갖는 영역 내에서 기설정된 횟수 이상으로 사고가 발생한 것으로 분석되면, 프로세서(140)는 해당 영역을 사고 다발 지역으로 설정할 수 있다.When it is determined that an accident has occurred more than a predetermined number of times in an area having a predetermined area based on the accident data, the processor 140 may set the area as an accident occurrence area.
프로세서(140)는 전체 사고 데이터를 기초로 일반 사고 예측 모델을 구축할 수 있다. 그리고 프로세서(140)는 설정된 사고 다발 지역 내에서 발생한 사고 데이터만을 기초로 특별 사고 예측 모델을 구축할 수 있다.The processor 140 may build a general accident prediction model based on the entire accident data. In addition, the processor 140 may build a special accident prediction model based only on accident data generated in the set accident area.
프로세서(140)는 사고 다발 지역에서 자주 발생하는 사고 유형을 분석할 수 있다. 분석된 유형별 사고 빈도 수에 따라, 프로세서(140)는 일반 사고 예측 모델과는 다른 가중치를 부여하여 사고 데이터를 학습할 수 있다.The processor 140 may analyze the types of accidents that frequently occur in the accident occurrence area. According to the analyzed frequency of accidents by type, the processor 140 may learn the accident data by giving a weight different from that of the general accident prediction model.
프로세서(140)는 전자 장치(100)의 현재 위치를 기초로 복수의 사고 예측 모델 중에서 적용할 사고 예측 모델을 결정할 수 있다. 예를 들어, 위치 결정부(110)에서 판단된 전자 장치(100)의 현재 위치를 기초로, 프로세서(140)는 사고 다발 지역으로 진입하였는지를 판단할 수 있다. 다른 예로, 지도 데이터를 추가로 이용하여 전자 장치(100)는 얼마 후에 사고 다발 지역으로 진입할 것인지 판단할 수도 있다.The processor 140 may determine an accident prediction model to be applied among the plurality of accident prediction models based on the current location of the electronic device 100. For example, based on the current location of the electronic device 100 determined by the location determiner 110, the processor 140 may determine whether the accident has entered an accident-prone area. As another example, the electronic device 100 may further determine whether to enter the accident-prone region by further using map data.
만일 사고 다발 지역으로 진입한 것으로 판단되면, 프로세서(140)는 진입한 사고 다발 지역에 대응되는 특별 사고 예측 모델을 이용하여 사고 발생 가능성을 판단할 수 있다. 그리고 사고 다발 지역을 벗어난 것으로 판단되면, 프로세서(140)는 일반 사고 예측 모델을 이용하여 사고 발생 가능성을 판단할 수 있다.If it is determined that the incident has entered the accident area, the processor 140 may determine the possibility of the accident by using a special accident prediction model corresponding to the incident accident area that has entered. If it is determined that the accident is out of the accident area, the processor 140 may determine the possibility of the accident using the general accident prediction model.
프로세서(140)는 현재 주행 상황을 수집할 수 있다. 그리고 프로세서(140)는 수집된 현재 주행 상황을 사고 예측 모델에 의해 학습된 사고 발생 상황과의 유사도를 계산할 수 있다. 예를 들어, 수집되는 현재 주행 상황은 차량 정보, 핸들 조작 정보, 엑셀/브레이크 조작 정보, 기어 정보, 위치 정보, 도로 형태 정보, 날씨 정보, 주변 차량과의 거리 정보, 영상 정보, 가속도 정보 및 조향 정보 중 적어도 하나를 포함할 수 있다.The processor 140 may collect a current driving situation. The processor 140 may calculate the similarity with the collected current driving situation to the accident occurrence situation learned by the accident prediction model. For example, the current driving situation collected may include vehicle information, steering wheel operation information, excel / brake operation information, gear information, location information, road shape information, weather information, distance information with surrounding vehicles, image information, acceleration information and steering. It may include at least one of the information.
유사도가 기설정된 값 이상이면, 프로세서(140)는 사고 발생 가능성이 있음을 알리는 경고 메시지를 제공할 수 있다. 예를 들어, 프로세서(140)는 기설정된 기준 값을 복수로 설정할 수 있다. 그리고 프로세서(140)는 유사도가 높아져 기설정된 기준 값을 돌파할 때마다 다른 종류의 경고 메시지를 제공할 수 있다.If the similarity is greater than or equal to a predetermined value, the processor 140 may provide a warning message indicating that there is a possibility of an accident. For example, the processor 140 may set a plurality of preset reference values. In addition, the processor 140 may provide a different kind of warning message whenever the similarity is increased and the predetermined reference value is exceeded.
다른 예로, 프로세서(140)는 유사도에 따라 판단되는 사고 유형에 기초하여 경고 메시지의 내용을 변경할 수 있다. 만일 과속 사고가 발생될 가능성이 높다고 판단되면, 프로세서(140)는 속도를 줄이라는 내용의 경고 메시지를 제공할 수 있다. 만일 로드킬이 자주 발생하는 지역에 진입한 경우, 프로세서(140)는 갑자기 뛰어드는 야생 동물에 주의하라는 내용의 경고 메시지를 제공할 수 있다.As another example, the processor 140 may change the content of the warning message based on the type of accident determined based on the similarity. If it is determined that a high speed accident is likely to occur, the processor 140 may provide a warning message for slowing down the speed. If the user enters an area in which load kill occurs frequently, the processor 140 may provide a warning message to warn the wild animal that suddenly jumps.
한편, 상술한 바와 같이 프로세서(140)는 기존의 범용 프로세서(예: CPU 또는 application processor)가 상술한 동작들을 수행할 수 있지만, 특정 동작들에 대하여는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩이 동작을 수행할 수 있다. Meanwhile, as described above, the processor 140 may perform the above-described operations by an existing general purpose processor (for example, a CPU or an application processor), but dedicated hardware for artificial intelligence (AI) for specific operations. The chip can perform the operation.
더욱 구체적인 프로세서(140)의 동작에 대해서는 이하에서 예시 도면과 함께 다시 설명하기로 한다.More specific operation of the processor 140 will be described later with reference to the accompanying drawings.
도 3은 본 개시의 일부 실시 예에 따른 프로세서(140)의 블록도이다. 도 3을 참조하면, 일부 실시 예에 따른 프로세서(140)는 데이터 학습부(141) 및 데이터 인식부(142)를 포함할 수 있다.3 is a block diagram of a processor 140 in accordance with some embodiments of the present disclosure. Referring to FIG. 3, the processor 140 according to some embodiments may include a data learner 141 and a data recognizer 142.
데이터 학습부(141)는 사고 유형 분류, 사고 발생 원인 분석 등을 위한 기준을 학습할 수 있다. 학습된 기준에 따라, 프로세서(140)는 사고 데이터로부터 사고 발생 가능성을 계산할 수 있다. 또한, 프로세서(140)는 학습된 기준에 따라 사고 데이터를 각각의 유형으로 분류할 수 있다. The data learning unit 141 may learn a criterion for classifying an accident type, analyzing an cause of an accident, and the like. According to the learned criteria, the processor 140 may calculate the likelihood of an accident from the accident data. In addition, the processor 140 may classify the accident data into each type according to the learned criteria.
데이터 학습부(141)는 사고 예측 모델을 구축하기 위하여 어떠한 데이터를 이용할 것인지 결정할 수 있다. 데이터 학습부(141)는 학습에 이용될 데이터를 획득하고, 획득된 데이터를 후술할 데이터 인식 모델에 적용함으로써 사고 발생 가능성, 사고 원인 분석, 사고 유형 분류를 위한 기준을 학습할 수 있다.The data learner 141 may determine what data to use to build an accident prediction model. The data learner 141 acquires data to be used for learning and applies the acquired data to a data recognition model to be described later to learn criteria for accident occurrence possibility, accident cause analysis, and accident type classification.
데이터 인식부(142)는 학습된 데이터 인식 모델을 이용하여, 소정의 데이터로부터 상황을 인식할 수 있다. 데이터 인식부(142)는 학습에 의한 기설정된 기준에 따라 소정의 데이터를 획득하고, 획득된 데이터를 입력 값으로 하여 데이터 인식 모델을 이용할 수 있다. 예를 들어, 학습된 사고 예측 모델을 이용하여, 데이터 인식부(142)는 현재 주행 상황과 사고가 발생된 상황의 유사도를 계산할 수 있다. 현재 주행 상황 및 새로운 사고 발생 상황에서 획득된 데이터를 재차 입력 값으로 이용하여, 데이터 인식부(142)는 사고 예측 모델을 갱신할 수 있다. 이와 같이, 데이터 인식부(142)는 사고 데이터를 빅데이터 및 자체 수집 데이터로부터 수집할 수 있다.The data recognizer 142 may recognize a situation from predetermined data by using the learned data recognition model. The data recognizing unit 142 may acquire predetermined data according to a predetermined criterion by learning, and use the data recognition model by using the acquired data as an input value. For example, using the learned accident prediction model, the data recognizer 142 may calculate the similarity between the current driving situation and the situation in which the accident occurred. The data recognizing unit 142 may update the accident prediction model by using the data acquired in the current driving situation and the new accident occurrence situation as input values again. As such, the data recognizer 142 may collect the accident data from the big data and the self-collection data.
데이터 학습부(141) 및 데이터 인식부(142) 중 적어도 하나는, 하나 또는 복수의 하드웨어 칩 형태로 제작되어 전자 장치(100)에 탑재될 수 있다. 예를 들어, 데이터 학습부(141) 및 데이터 인식부(142) 중 적어도 하나는 인공 지능(Artifical Intelligence, AI)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 기존의 범용 프로세서(예를 들어, CPU 또는 application processor) 또는 특정 기능을 위한 IP의 일부로 제작되어 전술한 각종 전자 장치(100)에 탑재될 수도 있다.At least one of the data learner 141 and the data recognizer 142 may be manufactured in the form of one or a plurality of hardware chips and mounted on the electronic device 100. For example, at least one of the data learner 141 and the data recognizer 142 may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or may be a conventional general purpose processor (eg, It may be manufactured as a part of an IP for a CPU or an application processor) or a specific function and mounted on the aforementioned various electronic devices 100.
도 3의 실시 예에서는 데이터 학습부(141) 및 데이터 인식부(142)가 모두 전자 장치(100)에 탑재된 경우를 도시하였으나, 이들은 각각 별개의 장치에 탑재될 수도 있다. 예를 들어, 데이터 학습부(141) 및 데이터 인식부(142) 중 하나는 전자 장치(100)에 포함되고, 나머지 하나는 서버(200)에 포함될 수 있다. 또한, 데이터 학습부(141) 및 데이터 인식부(142)는 서로 유선 또는 무선으로 연결되어, 데이터 학습부(141)가 구축한 모델 정보가 데이터 인식부(142)로 제공될 수 있고, 데이터 인식부(142)로 입력된 데이터가 추가 학습 데이터로 데이터 학습부(141)로 제공될 수도 있다.In the embodiment of FIG. 3, the data learner 141 and the data recognizer 142 are both mounted on the electronic device 100, but they may be mounted on separate devices. For example, one of the data learner 141 and the data recognizer 142 may be included in the electronic device 100, and the other may be included in the server 200. In addition, the data learner 141 and the data recognizer 142 may be connected to each other by wire or wirelessly, so that model information constructed by the data learner 141 may be provided to the data recognizer 142, and data recognition may be performed. The data input to the unit 142 may be provided to the data learning unit 141 as additional learning data.
한편, 데이터 학습부(141) 및 데이터 인식부(142) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 학습부(141) 및 데이터 인식부(142) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션을 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 비일시적 컴퓨터 판독가능 기록매체에 저장될 수 있다. 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는 적어도 하나의 소프트웨어 모듈 중 일부는 OS에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수도 있다.Meanwhile, at least one of the data learner 141 and the data recognizer 142 may be implemented as a software module. When at least one of the data learner 141 and the data recognizer 142 is implemented as a software module (or a program module including instructions), the software module may be stored in a non-transitory computer readable recording medium. At least one software module may be provided by an operating system (OS) or by a predetermined application. Alternatively, some of the at least one software module may be provided by the OS, and some of the at least one software module may be provided by a predetermined application.
도 4a는 본 개시의 일부 실시 예에 따른 데이터 학습부(141)의 블록도이다. 도 4a를 참조하면, 일부 실시 예에 따른 데이터 학습부(141)는 데이터 획득부(141-1), 전처리부(141-2), 학습 데이터 선택부(141-3), 모델 학습부(141-4) 및 모델 평가부(141-5)를 포함할 수 있다.4A is a block diagram of a data learner 141, according to some embodiments of the present disclosure. Referring to FIG. 4A, the data learner 141 may include a data acquirer 141-1, a preprocessor 141-2, a training data selector 141-3, and a model learner 141. -4) and the model evaluator 141-5.
데이터 획득부(141-1)는 상황 판단에 필요한 데이터를 획득할 수 있다. 데이터 획득부(141-1)는 네트워크를 통해 학습용 데이터를 수신할 수 있다. 예를 들어, 데이터 획득부(141-1)는 사고 유형별로 구분된 교통 사고 관련 빅데이터를 학습용 데이터로서 수신할 수 있다. 또한, 데이터 획득부(141-1)는 현재 주행 상황에 대한 정보를 수집하여 학습용 데이터로 이용할 수도 있다.The data acquirer 141-1 may acquire data necessary for determining a situation. The data acquirer 141-1 may receive training data through a network. For example, the data acquisition unit 141-1 may receive traffic accident-related big data classified by accident type as learning data. In addition, the data acquisition unit 141-1 may collect information on the current driving situation and use the data for learning.
전처리부(141-2)는 상황 판단을 위한 학습에 획득된 데이터가 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(141-2)는 후술할 모델 학습부(141-4)가 상황 판단을 위한 학습을 위하여 획득된 데이터를 이용할 수 있도록, 획득된 데이터를 기설정된 포맷으로 가공할 수 있다.The preprocessor 141-2 may preprocess the acquired data so that the data acquired for learning for situation determination may be used. The preprocessor 141-2 may process the acquired data into a predetermined format so that the model learner 141-4, which will be described later, uses the acquired data for learning for situation determination.
학습 데이터 선택부(141-3)는 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 선택된 데이터는 모델 학습부(141-4)에 제공될 수 있다. 학습 데이터 선택부(141-3)는 상황 판단을 위한 기설정된 기준에 따라, 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 또한, 학습 데이터 선택부(141-3)는 후술할 모델 학습부(141-4)에 의한 학습에 의해 기설정된 기준에 따라 데이터를 선택할 수도 있다. The training data selector 141-3 may select data necessary for learning from the preprocessed data. The selected data may be provided to the model learner 141-4. The training data selector 141-3 may select data necessary for learning from preprocessed data according to a predetermined criterion for determining a situation. In addition, the training data selector 141-3 may select data according to a predetermined criterion by learning by the model learner 141-4, which will be described later.
예를 들어, 학습 초기에는 학습 데이터 선택부(141-3)가 사고 유형이 상이한 데이터들만으로 학습 데이터 셋을 구성할 수 있다. 즉, 초기 학습을 위하여 학습 데이터 선택부(141-3)는 구분하기 쉬운 기준을 학습하도록 유사도가 낮은 유형에 포함된 사고 데이터를 선택할 수 있다.For example, in the early stage of learning, the learning data selector 141-3 may configure the learning data set using only data having different accident types. That is, for the initial learning, the learning data selector 141-3 may select accident data included in a type having low similarity to learn a criterion that is easy to distinguish.
그리고, 학습 데이터 선택부(141-3)는 학습에 의해 기설정된 기준 중 하나를 공통으로 만족하는 사고 데이터를 선택할 수 있다. 이를 통해, 모델 학습부(141-4)는 이미 학습된 기준과는 상이한 다른 기준을 학습할 수 있다.In addition, the learning data selector 141-3 may select accident data that satisfies one of the criteria set by learning in common. In this way, the model learner 141-4 may learn another criterion different from the previously learned criterion.
모델 학습부(141-4)는 학습 데이터에 기초하여 무슨 유형의 사고인지를 구분할 수 있는 기준을 학습할 수 있다. 또한, 모델 학습부(141-4)는 사고 유형 분류를 위하여 어떤 학습 데이터를 이용해야 하는지에 대한 기준을 학습할 수도 있다.The model learner 141-4 may learn a criterion for identifying what type of accident is based on the training data. In addition, the model learner 141-4 may learn a criterion about what training data to use for classification of an accident type.
모델 학습부(141-4)는 상황 판단에 이용되는 데이터 인식 모델을 학습 데이터를 이용하여 학습시킬 수 있다. 이 경우, 데이터 인식 모델은 미리 구축된 모델일 수 있다. 예를 들어, 교통 사고 데이터를 인식하는 데이터 인식 모델인 사고 예측 모델은 기본 학습 데이터(예를 들어, 사망 사고가 발생된 교통 사고 데이터)를 입력 받아 미리 구축된 모델일 수 있다.The model learner 141-4 may train the data recognition model used for the situation determination using the training data. In this case, the data recognition model may be a pre-built model. For example, the accident prediction model, which is a data recognition model that recognizes traffic accident data, may be a model built in advance by receiving basic training data (for example, traffic accident data in which a death accident occurs).
데이터 인식 모델은, 인식 모델의 적용 분야, 학습의 목적 또는 장치의 컴퓨터 성능 등을 고려하여 구축될 수 있다. 데이터 인식 모델은, 예를 들어, 신경망(Neural Network)을 기반으로 하는 모델일 수 있다. 예컨대, DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델이 데이터 인식 모델로서 사용될 수 있으나, 이에 한정되지 않는다.The data recognition model may be constructed in consideration of the application field of the recognition model, the purpose of learning, or the computer performance of the device. The data recognition model may be, for example, a model based on a neural network. For example, a model such as a deep neural network (DNN), a recurrent neural network (RNN), and a bidirectional recurrent deep neural network (BRDNN) may be used as the data recognition model, but is not limited thereto.
다양한 실시 예에 따르면, 모델 학습부(141-4)는 미리 구축된 데이터 인식 모델이 복수 개가 존재하는 경우, 입력된 학습 데이터와 기본 학습 데이터의 관련성이 큰 데이터 인식 모델을 학습할 데이터 인식 모델로 결정할 수 있다. 이 경우, 기본 학습 데이터는 데이터의 타입별로 기분류되어 있을 수 있으며, 데이터 인식 모델은 데이터의 타입별로 미리 구축되어 있을 수 있다. 예를 들어, 기본 학습 데이터는 학습 데이터가 생성된 지역, 학습 데이터가 생성된 시간, 학습 데이터의 크기, 학습 데이터의 장르, 학습 데이터의 생성자, 학습 데이터 내의 오브젝트의 종류 등과 같은 다양한 기준으로 기분류되어 있을 수 있다. According to various embodiments of the present disclosure, when there are a plurality of pre-built data recognition models, the model learner 141-4 may be a data recognition model for learning a data recognition model having a large correlation between input training data and basic training data. You can decide. In this case, the basic training data may be enjoyed for each type of data, and the data recognition model may be built in advance for each type of data. For example, the basic training data may be mood based on various criteria such as the region where the training data is generated, the time at which the training data is generated, the size of the training data, the genre of the training data, the creator of the training data, the types of objects in the training data, and the like. It may be.
또한, 모델 학습부(141-4)는, 예를 들어, 오류 역전파법(error back-propagation) 또는 경사 하강법(gradient descent)을 포함하는 학습 알고리즘 등을 이용하여 데이터 인식 모델을 학습시킬 수 있다.In addition, the model learner 141-4 may train the data recognition model using, for example, a learning algorithm including an error back-propagation method or a gradient descent method. .
예를 들어, 모델 학습부(141-4)는 학습 데이터를 입력 값으로 하는 지도 학습(supervised learning) 을 통하여 데이터 인식 모델을 학습시킬 수 있다. 다른 예로, 모델 학습부(141-4)는 별도의 지도 없이 상황 판단을 위해 필요한 데이터의 종류를 스스로 학습함으로써 상황 판단을 위한 기준을 발견하는 비지도 학습(unsupervised learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다. 또 다른 예로, 모델 학습부(141-4)는 학습에 따른 상황 판단의 결과가 올바른지에 대한 피드백을 이용하는 강화 학습(reinforcement learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다.For example, the model learner 141-4 may train the data recognition model through supervised learning using the training data as an input value. As another example, the model learning unit 141-4 learns a data recognition model through unsupervised learning that finds a criterion for situation determination by learning a kind of data necessary for situation determination without a separate guidance. I can learn. As another example, the model learner 141-4 may train the data recognition model through reinforcement learning using feedback on whether the result of the situation determination according to the learning is correct.
또한, 데이터 인식 모델이 학습되면, 모델 학습부(141-4)는 학습된 데이터 인식 모델을 저장할 수 있다. 이 경우, 모델 학습부(141-4)는 학습된 데이터 인식 모델을 전자 장치(100)의 메모리(180)에 저장할 수 있다. 또는, 모델 학습부(141-4)는 학습된 데이터 인식 모델을 전자 장치(100)와 유선 또는 무선 네트워크로 연결되는 서버(200)의 메모리에 저장할 수도 있다.In addition, when the data recognition model is trained, the model learner 141-4 may store the trained data recognition model. In this case, the model learner 141-4 may store the learned data recognition model in the memory 180 of the electronic device 100. Alternatively, the model learner 141-4 may store the learned data recognition model in a memory of the server 200 connected to the electronic device 100 through a wired or wireless network.
이 경우, 학습된 데이터 인식 모델이 저장되는 메모리(180)는 전자 장치(100)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 함께 저장할 수도 있다. 또한, 메모리(180)는 소프트웨어 및/또는 프로그램을 저장할 수도 있다. 예를 들어, 프로그램은 커널, 미들웨어, 어플리케이션 프로그래밍 인터페이스(API) 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 등을 포함할 수 있다.In this case, the memory 180 in which the learned data recognition model is stored may also store commands or data related to at least one other element of the electronic device 100. In addition, the memory 180 may store software and / or a program. For example, the program may include a kernel, middleware, an application programming interface (API) and / or an application program (or “application”), and the like.
모델 평가부(141-5)는 데이터 인식 모델에 평가 데이터를 입력하고, 평가 데이터로부터 출력되는 인식 결과가 소정 기준을 만족하지 못하는 경우, 모델 학습부(141-4)로 하여금 다시 학습하도록 할 수 있다. 이 경우, 평가 데이터는 데이터 인식 모델을 평가하기 위한 기설정된 데이터일 수 있다. The model evaluator 141-5 may input the evaluation data into the data recognition model, and cause the model learner 141-4 to relearn when the recognition result output from the evaluation data does not satisfy a predetermined criterion. have. In this case, the evaluation data may be preset data for evaluating the data recognition model.
초기 인식 모델 구성 단계에서, 평가 데이터는 사고 유형 및 피해 규모가 상이한 사고 데이터일 수 있다. 이후에 평가 데이터는 사고 형태의 유사도가 점점 일치하는 사고 데이터 세트로 대체될 수 있다. 이를 통해 모델 평가부(141-5)는 데이터 인식 모델(ex. 사고 예측 모델)의 성능을 점차적으로 검증할 수 있다.In the initial recognition model construction stage, the evaluation data may be accident data having different accident types and damage scales. The evaluation data can then be replaced by an accident data set with increasingly similar similarity of accident types. Through this, the model evaluator 141-5 may gradually verify the performance of the data recognition model (eg, an accident prediction model).
예를 들어, 모델 평가부(141-5)는 평가 데이터에 대한 학습된 데이터 인식 모델의 인식 결과 중에서, 인식 결과가 정확하지 않은 평가 데이터의 개수 또는 비율이 미리 설정된 임계치를 초과하는 경우 소정 기준을 만족하지 못한 것으로 평가할 수 있다. 예컨대, 소정 기준이 비율 2%로 정의되는 경우, 학습된 데이터 인식 모델이 총 1000개의 평가 데이터 중의 20개를 초과하는 평가 데이터에 대하여 잘못된 인식 결과를 출력하는 경우, 모델 평가부(141-5)는 학습된 데이터 인식 모델이 적합하지 않은 것으로 평가할 수 있다.For example, the model evaluator 141-5 may determine a predetermined criterion when the number or ratio of the evaluation data that is not accurate among the recognition results of the learned data recognition model for the evaluation data exceeds a preset threshold. It can be evaluated as not satisfied. For example, when a predetermined criterion is defined at a ratio of 2%, the model evaluator 141-5 when the learned data recognition model outputs an incorrect recognition result for more than 20 evaluation data out of a total of 1000 evaluation data. Can be judged that the learned data recognition model is not suitable.
한편, 학습된 데이터 인식 모델이 복수 개가 존재하는 경우, 모델 평가부(141-5)는 각각의 학습된 데이터 인식 모델에 대하여 소정 기준을 만족하는지를 평가하고, 소정 기준을 만족하는 모델을 최종 데이터 인식 모델로서 결정할 수 있다. 이 경우, 소정 기준을 만족하는 모델이 복수 개인 경우, 모델 평가부(141-5)는 평가 점수가 높은 순으로 미리 설정된 어느 하나 또는 소정 개수의 모델을 최종 데이터 인식 모델로서 결정할 수 있다.On the other hand, when there are a plurality of trained data recognition models, the model evaluator 141-5 evaluates whether each learned data recognition model satisfies a predetermined criterion, and recognizes the final data as a model that satisfies the predetermined criterion. Can be determined as a model. In this case, when there are a plurality of models satisfying a predetermined criterion, the model evaluator 141-5 may determine any one or a predetermined number of models which are preset in the order of the highest evaluation score as the final data recognition model.
한편, 데이터 학습부(141) 내의 데이터 획득부(141-1), 전처리부(141-2), 학습 데이터 선택부(141-3), 모델 학습부(141-4) 및 모델 평가부(141-5) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(141-1), 전처리부(141-2), 학습 데이터 선택부(141-3), 모델 학습부(141-4) 및 모델 평가부(141-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예를 들어, CPU 또는 application processor) 또는 특정 기능을 위한 IP의 일부로 제작되어 전술한 각종 전자 장치(100)에 탑재될 수도 있다.Meanwhile, the data acquisition unit 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141 in the data learner 141. At least one of -5) may be manufactured in the form of at least one hardware chip and mounted on the electronic device. For example, at least one of the data acquirer 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141-5. One may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or may be manufactured as an existing general purpose processor (eg, a CPU or an application processor) or part of an IP for a specific function. It may be mounted on the electronic device 100.
또한, 데이터 획득부(141-1), 전처리부(141-2), 학습 데이터 선택부(141-3), 모델 학습부(141-4) 및 모델 평가부(141-5)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(141-1), 전처리부(141-2), 학습 데이터 선택부(141-3), 모델 학습부(141-4) 및 모델 평가부(141-5) 중 일부는 전자 장치(100)에 포함되고, 나머지 일부는 서버(200)에 포함될 수 있다.In addition, the data acquisition unit 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141-5 are electronic components. It may be mounted on the device, or may be mounted on separate electronic devices, respectively. For example, some of the data acquirer 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141-5. May be included in the electronic device 100, and some of them may be included in the server 200.
한편, 데이터 획득부(141-1), 전처리부(141-2), 학습 데이터 선택부(141-3), 모델 학습부(141-4) 및 모델 평가부(141-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(141-1), 전처리부(141-2), 학습 데이터 선택부(141-3), 모델 학습부(141-4) 및 모델 평가부(141-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션을 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 비일시적 컴퓨터 판독가능 기록매체에 저장될 수 있다. 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는 적어도 하나의 소프트웨어 모듈 중 일부는 OS에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수도 있다.Meanwhile, at least one of the data acquirer 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141-5 is provided. It may be implemented as a software module. At least one of the data acquirer 141-1, the preprocessor 141-2, the training data selector 141-3, the model learner 141-4, and the model evaluator 141-5 is a software module. (Or, a program module including instructions), the software module may be stored on a non-transitory computer readable recording medium. At least one software module may be provided by an operating system (OS) or by a predetermined application. Alternatively, some of the at least one software module may be provided by the OS, and some of the at least one software module may be provided by a predetermined application.
도 4b는 본 개시의 일부 실시 예에 따른 데이터 인식부(142)의 블록도이다. 도 4b를 참조하면, 일부 실시 예에 따른 데이터 인식부(142)는 데이터 획득부(142-1), 전처리부(142-2), 인식 데이터 선택부(142-3), 인식 결과 제공부(142-4) 및 모델 갱신부(142-5)를 포함할 수 있다.4B is a block diagram of the data recognizer 142 according to some embodiments of the present disclosure. Referring to FIG. 4B, the data recognizer 142 according to some embodiments may include a data acquirer 142-1, a preprocessor 142-2, a recognition data selector 142-3, and a recognition result provider ( 142-4) and a model updater 142-5.
데이터 획득부(142-1)는 상황 판단에 필요한 데이터를 획득할 수 있으며, 전처리부(142-2)는 상황 판단을 위해 획득된 데이터가 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(142-2)는 후술할 인식 결과 제공부(142-4)가 상황 판단을 위하여 획득된 데이터를 이용할 수 있도록, 획득된 데이터를 기설정된 포맷으로 가공할 수 있다. The data acquirer 142-1 may acquire data necessary for situation determination, and the preprocessor 142-2 may preprocess the acquired data so that the acquired data may be used for situation determination. The preprocessing unit 142-2 may process the acquired data into a predetermined format so that the recognition result providing unit 142-4, which will be described later, may use the obtained data for determining a situation.
인식 데이터 선택부(142-3)는 전처리된 데이터 중에서 상황 판단에 필요한 데이터를 선택할 수 있다. 선택된 데이터는 인식 결과 제공부(142-4)에게 제공될 수 있다. 인식 데이터 선택부(142-3)는 상황 판단을 위한 기설정된 기준에 따라, 전처리된 데이터 중에서 일부 또는 전부를 선택할 수 있다. 또한, 인식 데이터 선택부(142-3)는 후술할 모델 학습부(142-4)에 의한 학습에 의해 기설정된 기준에 따라 데이터를 선택할 수도 있다.The recognition data selector 142-3 may select data required for situation determination from among the preprocessed data. The selected data may be provided to the recognition result providing unit 142-4. The recognition data selector 142-3 may select some or all of the preprocessed data according to a predetermined criterion for determining the situation. In addition, the recognition data selector 142-3 may select data according to a predetermined criterion by learning by the model learner 142-4 to be described later.
인식 결과 제공부(142-4)는 선택된 데이터를 데이터 인식 모델에 적용하여 상황을 판단할 수 있다. 인식 결과 제공부(142-4)는 데이터의 인식 목적에 따른 인식 결과를 제공할 수 있다. 인식 결과 제공부(142-4)는 인식 데이터 선택부(142-3)에 의해 선택된 데이터를 입력 값으로 이용함으로써, 선택된 데이터를 데이터 인식 모델에 적용할 수 있다. 또한, 인식 결과는 데이터 인식 모델에 의해 결정될 수 있다.The recognition result providing unit 142-4 may determine the situation by applying the selected data to the data recognition model. The recognition result providing unit 142-4 may provide a recognition result according to the recognition purpose of the data. The recognition result provider 142-4 may apply the selected data to the data recognition model by using the data selected by the recognition data selector 142-3 as an input value. In addition, the recognition result may be determined by the data recognition model.
예를 들어, 인식 결과 제공부(142-4)는 입력된 현재 주행 상태 데이터를 사고 예측 모델(데이터 인식 모델)에서 결정된 사고 유형 분류 기준에 따라 인식할 수 있다. 또한, 사고 예측 모델을 이용하여, 인식 결과 제공부(142-4)는 현재 주행 상태와 사고 발생 당시의 주행 상태의 유사도를 산출할 수 있다. 산출된 유사도를 기초로, 프로세서(140)는 사고 발생 가능성을 판단하여 경고 메시지 제공 여부를 결정할 수 있다.For example, the recognition result providing unit 142-4 may recognize the input current driving state data according to the accident type classification criteria determined in the accident prediction model (data recognition model). In addition, using the accident prediction model, the recognition result providing unit 142-4 may calculate the similarity between the current driving state and the driving state at the time of the occurrence of the accident. Based on the calculated similarity, the processor 140 may determine whether an accident occurs and determine whether to provide a warning message.
모델 갱신부(142-5)는 인식 결과 제공부(142-4)에 의해 제공되는 인식 결과에 대한 평가에 기초하여, 데이터 인식 모델이 갱신되도록 할 수 있다. 예를 들어, 모델 갱신부(142-5)는 인식 결과 제공부(142-4)에 의해 제공되는 인식 결과를 모델 학습부(141-4)에게 제공함으로써, 모델 학습부(141-4)가 데이터 인식 모델을 갱신하도록 할 수 있다.The model updater 142-5 may cause the data recognition model to be updated based on the evaluation of the recognition result provided by the recognition result provider 142-4. For example, the model updater 142-5 may provide the model learner 141-4 with the recognition result provided by the recognition result provider 142-4 so that the model learner 141-4 can receive the recognition result. The data recognition model can be updated.
한편, 데이터 인식부(142) 내의 데이터 획득부(142-1), 전처리부(142-2), 인식 데이터 선택부(142-3), 인식 결과 제공부(142-4) 및 모델 갱신부(142-5) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(142-1), 전처리부(142-2), 인식 데이터 선택부(142-3), 인식 결과 제공부(142-4) 및 모델 갱신부(142-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예를 들어, CPU 또는 application processor) 또는 특정 기능을 위한 IP의 일부로 제작되어 전술한 각종 전자 장치(100)에 탑재될 수도 있다.Meanwhile, the data acquisition unit 142-1, the preprocessor 142-2, the recognition data selection unit 142-3, the recognition result providing unit 142-4, and the model updating unit in the data recognition unit 142 ( At least one of the 142-5 may be manufactured in the form of at least one hardware chip and mounted on the electronic device. For example, among the data acquiring unit 142-1, the preprocessor 142-2, the recognition data selecting unit 142-3, the recognition result providing unit 142-4, and the model updating unit 142-5. At least one may be fabricated in the form of a dedicated hardware chip for artificial intelligence (AI), or may be fabricated as part of an existing general purpose processor (e.g., a CPU or application processor) or an IP for a particular function as described above. It may be mounted on various electronic devices 100.
또한, 데이터 획득부(142-1), 전처리부(142-2), 인식 데이터 선택부(142-3), 인식 결과 제공부(142-4) 및 모델 갱신부(142-5) 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(142-1), 전처리부(142-2), 인식 데이터 선택부(142-3), 인식 결과 제공부(142-4) 및 모델 갱신부(142-5) 중 일부는 전자 장치(100)에 포함되고, 나머지 일부는 서버(200)에 포함될 수 있다.In addition, one data acquisition unit 142-1, the preprocessor 142-2, the recognition data selection unit 142-3, the recognition result providing unit 142-4, and the model updater 142-5 It may be mounted on the device, or may be mounted on separate electronic devices, respectively. For example, among the data acquiring unit 142-1, the preprocessor 142-2, the recognition data selecting unit 142-3, the recognition result providing unit 142-4, and the model updating unit 142-5. Some may be included in the electronic device 100 and others may be included in the server 200.
한편, 데이터 획득부(142-1), 전처리부(142-2), 인식 데이터 선택부(142-3), 인식 결과 제공부(142-4) 및 모델 갱신부(142-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(142-1), 전처리부(142-2), 인식 데이터 선택부(142-3), 인식 결과 제공부(142-4) 및 모델 갱신부(142-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션을 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 비일시적 컴퓨터 판독가능 기록매체에 저장될 수 있다. 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는 적어도 하나의 소프트웨어 모듈 중 일부는 OS에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수도 있다.Meanwhile, at least one of the data acquirer 142-1, the preprocessor 142-2, the recognition data selector 142-3, the recognition result provider 142-4, and the model updater 142-5. May be implemented as a software module. At least one of the data obtaining unit 142-1, the preprocessor 142-2, the recognition data selecting unit 142-3, the recognition result providing unit 142-4, and the model updating unit 142-5 is software. If implemented as a module (or a program module containing instructions), the software module may be stored on a non-transitory computer readable recording medium. At least one software module may be provided by an operating system (OS) or by a predetermined application. Alternatively, some of the at least one software module may be provided by the OS, and some of the at least one software module may be provided by a predetermined application.
도 5는 본 개시의 일 실시 예에 따른 전자 장치(100)의 사고 예측 모델 구축 방법을 설명하기 위한 도면이다. 프로세서(140)는 사고 발생 시 차량에서 획득할 수 있는 정보를 이용하여 사고 패턴을 학습할 수 있다. 그리고 딥러닝 방식을 이용하여 프로세서(140)는 사고 예측 모델을 구축할 수 있다.5 is a diagram for describing a method of constructing an accident prediction model of the electronic device 100 according to an exemplary embodiment. The processor 140 may learn an accident pattern using information that can be obtained from a vehicle when an accident occurs. The processor 140 may build an accident prediction model by using the deep learning method.
사고가 발생된 것으로 판단되면, 전자 장치(100)는 사고 당시의 데이터를 수집할 수 있다. 예를 들어, 전자 장치(100)는 연동된 차량의 부품의 오작동 정보, 에어백 가동 여부, 카메라(150) 또는 센서부(160)를 통해 수집된 충돌 정보 등을 기초로 사고 발생 여부를 판단할 수 있다. If it is determined that an accident has occurred, the electronic device 100 may collect data at the time of the accident. For example, the electronic device 100 may determine whether an accident occurs based on malfunction information of parts of a linked vehicle, whether an air bag is operated, collision information collected through the camera 150 or the sensor unit 160, and the like. have.
다른 예로, 전자 장치(100)는 상시적으로 주행 상황을 모니터링할 수 있다. 그리고 모니터링이 갑자기 중단되는 경우에 전자 장치(100)는 최종 모니터링된 주행 상황을 사고 발생 당시 데이터로 간주할 수도 있다.As another example, the electronic device 100 may constantly monitor driving conditions. When the monitoring is suddenly stopped, the electronic device 100 may regard the final monitored driving situation as data at the time of the accident.
예를 들어, 수집되는 사고 데이터는 사고 당시 차량 정보, 차량의 조작 정보, 위치 정보, 도로 형태 정보, 날씨 정보, 차량 간 거리 정보, 영상 정보, 가속도 정보 및 조향 정보 중 적어도 하나를 포함할 수 있다.For example, the collected accident data may include at least one of vehicle information at the time of the accident, operation information of the vehicle, location information, road shape information, weather information, distance between vehicles, image information, acceleration information, and steering information. .
딥러닝과 같은 기계 학습 방법을 이용하여, 프로세서(140)는 수집된 사고 데이터를 기초로 사고 예측 모델을 구축할 수 있다. 또한, 딥러닝을 통해 학습된 사고 유형 분류 기준에 따라, 프로세서(140)는 사고 데이터가 어느 유형의 사고에 대한 데이터인지를 판단할 수 있다. 도 5의 실시 예에서는 5가지 종류로 사고 유형을 분류한 사고 예측 모델이 도시되었다. 예를 들어, 프로세서(140)는 각각의 사고 데이터를 과속, 추월, 미끄러짐 등의 유형으로 분류할 수 있다.By using a machine learning method such as deep learning, the processor 140 may build an accident prediction model based on the collected accident data. Also, according to the accident type classification criteria learned through deep learning, the processor 140 may determine which type of accident data is the accident data. In the example of FIG. 5, an accident prediction model classifying accident types into five types is illustrated. For example, the processor 140 may classify each accident data into types of speeding, overtaking, slipping, and the like.
프로세서(140)는 어느 지역에서나 이용 가능한 일반 사고 예측 모델과 특정 지역에 특화된 특별 사고 예측 모델을 구축할 수 있다. 예를 들어, 프로세서(140)는 사고가 많이 발생되는 특정 영역을 사고 다발 지역으로 설정할 수 있다. 그리고 프로세서(140)는 설정된 사고 다발 지역마다 사고 유형을 분석하여, 특정 사고 유형에 특화된 사고 예측 모델을 구축할 수 있다.The processor 140 may build a general accident prediction model available in any region and a special accident prediction model specific to a specific region. For example, the processor 140 may set a specific area where a lot of accidents occur as an accident occurrence area. In addition, the processor 140 may analyze an accident type for each set accident area, and build an accident prediction model specialized for a specific accident type.
도 6은 본 개시의 일 실시 예에 따른 사고 다발 지역을 설정하는 방법을 설명하기 위한 도면이다. 기설정된 면적을 갖는 영역 내에서 기설정된 횟수 이상의 사고가 발생된 것으로 판단되면, 프로세서(140)는 해당 영역을 사고 다발 지역으로 설정할 수 있다. 예를 들어, 도 6은 세 곳(610, 620, 630)이 사고 다발 지역으로 설정된 실시 예를 도시하고 있다.6 is a view for explaining a method of setting an accident-prone area according to an embodiment of the present disclosure. If it is determined that an accident occurs more than a predetermined number of times in an area having a predetermined area, the processor 140 may set the area as an accident occurrence area. For example, FIG. 6 illustrates an embodiment in which three places 610, 620, and 630 are set as an accident occurrence area.
프로세서(140)는 각각의 사고 다발 지역에서 발생된 사고의 유형별 빈도 수를 판단할 수 있다. 그리고 프로세서(140)는 빈도 수에 따라 사고 유형에 가중치를 부여한 특별 사고 예측 모델을 구축할 수 있다.The processor 140 may determine the frequency for each type of accident occurring in each accident area. In addition, the processor 140 may build a special accident prediction model that weights the type of accident according to the frequency.
예를 들어, 제1 사고 다발 지역(610)에서 수집된 사고 데이터(ex. 날씨 정보, 영상 정보 등)를 분석한 결과, 프로세서(140)는 공통적으로 사고 발생 당시 안개가 짙게 내려있음을 판단할 수 있다. 또한, 프로세서(140)는 제1 사고 다발 지역(610)에 대한 정보를 인터넷 등을 통해 수집할 수 있다. 이를 통해, 프로세서(140)는 제1 사고 다발 지역(610)이 순간적으로 안개가 심하게 끼는 지역이라는 것을 인식할 수 있다.For example, as a result of analyzing accident data (ex. Weather information, image information, etc.) collected in the first accident area 610, the processor 140 may determine that the fog is generally dense at the time of the accident. Can be. In addition, the processor 140 may collect information on the first accident area 610 through the Internet. Through this, the processor 140 may recognize that the first accident area 610 is an area in which the fog is severely momentarily.
다른 예로, 제2 사고 다발 지역(620)에서 수집된 사고 데이터(ex. 영상 정보, 가속도 정보, 액셀/브레이크 정보, 도로 형태 정보 등)을 분석한 결과, 프로세서(140)는 제2 사고 다발 지역(620)이 끼어들기 사고가 많이 발생하는 지역임을 인식할 수 있다.As another example, as a result of analyzing accident data (eg, image information, acceleration information, accelerator / brake information, road shape information, etc.) collected in the second accident area 620, the processor 140 may analyze the second accident area. It can be recognized that 620 is an area where a lot of interruptions occur.
또 다른 예로, 제3 사고 다발 지역(630)에서 수집된 사고 데이터(ex. 영상 정보, 액셀/브레이크 정보, 조향 정보 등)을 분석한 결과, 프로세서(140)는 제3 사고 다발 지역(630)이 로드킬 사고가 많이 발생하는 지역임을 인식할 수 있다. 프로세서(140)는 제3 사고 다발 지역(630)과 관련된 정보를 인터넷 등을 통해 수집하여 인식된 결과를 검증할 수도 있다. 예를 들어, 프로세서(140)는 제3 사고 다발 지역(630)에서 발생된 로드 킬과 관련된 뉴스를 검색할 수 있다.As another example, as a result of analyzing accident data (eg, image information, accelerator / brake information, steering information, etc.) collected in the third accident area 630, the processor 140 may determine the third accident area 630. It can be recognized that this road killing area is frequent. The processor 140 may verify the recognized result by collecting information related to the third accident area 630 through the Internet. For example, the processor 140 may retrieve news related to a load kill generated in the third accident area 630.
인식된 결과를 기초로, 프로세서(140)는 각각의 사고 다발 지역(610, 620, 630)에 적합한 특별 사고 예측 모델을 구축할 수 있다.Based on the recognized results, the processor 140 may build a special accident prediction model suitable for each accident area 610, 620, 630.
도 7은 전자 장치(100)의 현재 위치에 따라 적용하는 사고 예측 모델을 변경하는 것을 설명하기 위한 도면이다. 위치 결정부(110)에서 판단된 전자 장치(100)의 현재 위치를 기초로, 프로세서(140)는 복수의 구축된 사고 예측 모델 중 적용할 사고 예측 모델을 선택할 수 있다.FIG. 7 is a diagram for describing changing an accident prediction model applied according to a current position of the electronic device 100. Based on the current location of the electronic device 100 determined by the location determiner 110, the processor 140 may select an accident prediction model to be applied from among a plurality of constructed accident prediction models.
도 7에 도시된 바와 같이, 전자 장치(100)가 일반 지역에서 사고 다발 지역으로 진입하는 것으로 판단되면, 프로세서(140)는 일반 사고 예측 모델에서 진입하는 사고 다발 지역에 대응되는 특별 사고 예측 모델로 적용되는 사고 예측 모델을 변경할 수 있다. 만일 서버(200)에서 사고 예측 모델을 다운로드 받는 방식으로 동작하는 전자 장치(100)에서는, 사고 다발 지역으로 진입할 경우 프로세서(140)는 서버(200)에 특별 사고 예측 모델을 요청하도록 통신부(120)를 제어할 수 있다.As shown in FIG. 7, when it is determined that the electronic device 100 enters an accident-prone area from a general area, the processor 140 is a special accident prediction model corresponding to an accident-prone area that enters from the general accident prediction model. You can change the accident prediction model that applies. If the electronic device 100 operates by downloading the accident prediction model from the server 200, the processor 140 requests the server 200 to request a special accident prediction model when entering the accident-prone region. ) Can be controlled.
위치 결정부(110)에서 결정된 현재 위치, 지도 정보, 주행 속도 정보 등을 함께 참고하여, 프로세서(140)는 사고 다발 지역으로 진입할 예상 시간을 추정할 수 있다. 사고 다발 지역 진입 전 미리 특별 사고 예측 모델을 메모리(180)로부터 로딩(또는 서버(200)로부터 다운로드)하여, 프로세서(140)는 사고 다발 지역 전환과 동시에 사고 예측 모델 전환이 이루어질수 있도록 할 수도 있다.The processor 140 may estimate the estimated time to enter the accident-prone area by referring to the current location, the map information, and the driving speed information determined by the location determiner 110. The special accident prediction model may be loaded from the memory 180 (or downloaded from the server 200) before entering the accident occurrence area, so that the processor 140 may perform the accident prediction model conversion at the same time as the accident occurrence area conversion.
도 8은 일반 사고 예측 모델과 특별 사고 예측 모델을 각각 적용할 경우의 차이를 설명하기 위한 도면이다. 위치를 제외한 나머지 주행 상황이 동일한 경우, 적용되는 사고 예측 모델에 따라 전자 장치(100)의 경고 메시지 제공 여부가 달라질 수 있다. 특정 지역에서는 사고 예방을 위하여 주의해야 할 점이 달라지기 때문이다.FIG. 8 is a diagram for explaining a difference when a general accident prediction model and a special accident prediction model are respectively applied. When driving conditions other than the location are the same, whether or not a warning message is provided by the electronic device 100 may vary depending on the accident prediction model applied. This is because there are different things to be careful about in an area to prevent accidents.
프로세서(140)는 현재 주행 상황을 수집할 수 있다. 도 8의 실시 예에서 프로세서(140)는 외부 밝기, 평균 시속, 도로 형태, 날씨 정보, 앞차와의 거리 정보를 수집할 수 있다. 일반 사고 예측 모델을 이용하면, 프로세서(140)는 사고 발생 가능성이 기설정된 값보다 낮다고 판단할 수 있다. 따라서, 프로세서(140)는 경고 메시지를 제공하지 않는 것으로 결정할 수 있다.The processor 140 may collect a current driving situation. In the embodiment of FIG. 8, the processor 140 may collect external brightness, average hourly speed, road shape, weather information, and distance information with a preceding vehicle. Using the general accident prediction model, the processor 140 may determine that the probability of occurrence of an accident is lower than a preset value. Thus, processor 140 may determine not to provide a warning message.
도 8에 도시된 바와 같이 무단횡단 사고가 다수 발생된 사고 다발 지역에 대해, 프로세서(140)는 특별 사고 예측 모델을 구축할 수 있다. 특별 사고 예측 모델을 이용하면, 프로세서(140)는 동일한 주행 상황에 대하여 사고 발생 가능성이 기설정된 값보다 높다고 판단할 수 있다. 프로세서(140)는 사용자에게 경고 메시지를 제공하도록 출력부(130)를 제어할 수 있다.As illustrated in FIG. 8, the processor 140 may build a special accident prediction model for an accident occurrence area in which a number of stepless accidents occur. Using the special accident prediction model, the processor 140 may determine that the probability of an accident is higher than a preset value for the same driving situation. The processor 140 may control the output unit 130 to provide a warning message to the user.
도 9는 본 개시의 일 실시 예에 따른 전자 장치(100)가 사고 유형별로 상이한 경고 메시지를 제공하는 방법을 설명하기 위한 도면이다. 프로세서(140)는 차량이 주행하는 동안 지속적으로 주행 정보를 수집할 수 있다. 예를 들어, 수집되는 주행 정보는 차량 정보, 핸들 조작 정보, 엑셀/브레이크 조작 정보, 기어 정보, 위치 정보, 도로 형태 정보, 날씨 정보, 주변 차량과의 거리 정보, 영상 정보, 가속도 정보 및 조향 정보 중 적어도 하나일 수 있다.FIG. 9 is a diagram for describing a method of providing, by an electronic device 100, an alert message for each accident type, according to an exemplary embodiment. The processor 140 may continuously collect driving information while the vehicle is driving. For example, the driving information collected may include vehicle information, steering wheel operation information, excel / brake operation information, gear information, location information, road shape information, weather information, distance information with surrounding vehicles, image information, acceleration information, and steering information. It may be at least one of.
프로세서(140)는 수집된 현재 주행 상황에 대한 데이터를 사고 예측 모델을 이용하여 분석할 수 있다. 적용할 사고 예측 모델은 현재 전자 장치(100)의 위치에 따라 결정될 수 있다. 프로세서(140)는 사고 예측 모델에 의해 학습된 사고 발생 상황과 수집된 현재 주행 상황의 유사도를 계산할 수 있다.The processor 140 may analyze the collected current driving situation by using an accident prediction model. The accident prediction model to be applied may be determined according to the location of the current electronic device 100. The processor 140 may calculate a similarity degree between the accident occurrence situation learned by the accident prediction model and the collected current driving situation.
예를 들어, 프로세서(140)는 사고 예측 모델에서 분류한 다양한 사고 유형 각각과 현재 주행 상황의 유사도를 계산할 수 있다. 도 8의 실시 예에서, 프로세서(140)는 사고 유형 1 내지 5 각각의 사고 발생 상황과 수집된 현재 주행 상황의 유사도를 계산할 수 있다. For example, the processor 140 may calculate the similarity between each of the various accident types classified in the accident prediction model and the current driving situation. In the embodiment of FIG. 8, the processor 140 may calculate a similarity degree between the accident occurrence situation of each of the accident types 1 to 5 and the collected current driving situation.
기설정된 값을 0.7이라고 가정할 때, 프로세서(140)는 현재 주행 상황과 사고 유형 4의 사고 발생 상황의 유사도가 0.81인바 경고 메시지를 제공할 수 있다. 프로세서(140)는 사고 유형 4에 대응되는 경고 메시지를 제공할 수 있다. 예를 들어, 사고 유형 4가 도로가 좁아짐에 따른 끼어들기 사고 유형인 경우, 프로세서(140)는 "다른 차선의 차량의 끼어들기가 예상되니 주의하시기 바랍니다."와 같은 사고 유형에 특화된 경고 메시지를 출력하도록 출력부(130)를 제어할 수 있다.Assuming that the preset value is 0.7, the processor 140 may provide a warning message as the similarity between the current driving situation and the accident type 4 accident occurrence situation is 0.81. The processor 140 may provide a warning message corresponding to the accident type 4. For example, if accident type 4 is the interrupting accident type as the road becomes narrower, processor 140 may generate a warning message specific to the accident type, such as "Please note that interruption of vehicles in other lanes is expected." The output unit 130 may be controlled to output.
본 개시의 일 실시 예에 따르면, 전자 장치(100)는 사고 가능성 정도에 따라 상이한 경고 메시지를 제공할 수도 있다. 프로세서(140)는 복수의 임계 값을 설정하고, 현재 주행 상황과 사고 발생 상황의 유사도 값을 각각의 임계 값과 비교할 수 있다.According to an embodiment of the present disclosure, the electronic device 100 may provide different warning messages according to the degree of accident possibility. The processor 140 may set a plurality of thresholds and compare the similarity values between the current driving situation and the accident occurrence situation with the respective threshold values.
예를 들어, 프로세서(140)는 유사도 값이 0.5를 초과하면 사고 발생 상황과 유사한 항목에 대한 경고 메시지를 제공할 수 있다. 프로세서(140)는 "주행 속도가 70 km/h를 초과할 경우 사고가 발생될 수 있습니다."와 같은 음성 메시지를 제공할 수 있다.For example, if the similarity value exceeds 0.5, the processor 140 may provide a warning message for an item similar to an accident occurrence situation. The processor 140 may provide a voice message, such as "An accident may occur when the driving speed exceeds 70 km / h."
그리고 유사도 값이 0.7을 초과하면 프로세서(140)는 보다 강력한 경고 메시지를 제공할 수 있다. 예를 들어, 프로세서(140)는 "속도를 줄여주십시오."와 같은 명령형 음성 메시지를 제공할 수 있다. 또한, 프로세서(140)는 디스플레이(133) 또는 LED(미도시) 등을 이용하여 시각적 경고 메시지를 음성 메시지와 함께 출력할 수 있다.If the similarity value exceeds 0.7, the processor 140 may provide a stronger warning message. For example, processor 140 may provide a commanded voice message such as "Please slow down." In addition, the processor 140 may output a visual warning message together with a voice message by using the display 133 or an LED (not shown).
이와 같이 사고 발생 가능성이 커짐에 따라, 프로세서(140)는 더욱 강력한 경고 메시지를 제공하도록 출력부(130)를 제어할 수 있다.As the likelihood of an accident increases as described above, the processor 140 may control the output unit 130 to provide a stronger warning message.
도 10은 사고 발생 시 일반 사고 예측 모델과 특별 사고 예측 모델에 대해 다른 가중치로 강화 학습하는 것을 설명하기 위한 도면이다. 도 10은 무단횡단 사고가 다수 발생한 사고 다발 지역 내에서 사고가 발생된 경우를 도시하고 있다.10 is a diagram for explaining reinforcement learning with different weights for a general accident prediction model and a special accident prediction model when an accident occurs. FIG. 10 illustrates a case where an accident occurs in an accident occurrence area in which a number of stepless accidents occur.
사고가 발생된 경우, 프로세서(140)는 사고 발생 당시의 데이터를 이용하여 사고 예측 모델을 강화할 수 있다. 예를 들어, 프로세서(140)는 사고 당시의 외부 밝기, 평균 시속, 도로 형태, 날씨 정보, 앞차와의 거리 정보 등을 입력 값으로 하여 사고 예측 모델을 강화할 수 있다.When an accident occurs, the processor 140 may reinforce the accident prediction model using data at the time of the accident. For example, the processor 140 may reinforce the accident prediction model using input values such as external brightness at the time of an accident, average speed, road shape, weather information, distance information with a preceding vehicle, and the like.
만일 사고 다발 지역 내에서 사고가 발생된 경우에는, 사고 다발 지역에 적용되는 특별 사고 예측 모델 및 전 지역에 적용되는 일반 사고 예측 모델을 모두 강화 학습할 필요가 있다. 따라서, 프로세서(140)는 일반 사고 예측 모델 및 특별 사고 예측 모델을 모두 강화 학습할 수 있다. 다만, 프로세서(140)는 사고 데이터에 상이한 가중치를 부여하여 각각의 사고 예측 모델을 강화할 수 있다.If an accident occurs in an accident-prone area, it is necessary to reinforce both the special accident prediction model that applies to the accident-prone area and the general accident prediction model that applies to the entire area. Therefore, the processor 140 may reinforce and learn both the general accident prediction model and the special accident prediction model. However, the processor 140 may reinforce each accident prediction model by assigning different weights to the accident data.
도 10에 예시된 사고 발생 당시의 주행 상황은 일반 사고 예측 모델에 의해 분석할 경우 사고 발생 가능성이 낮은 것으로 판단될 수 있다. 일반 사고 예측 모델에 다른 사고와 동일한 가중치를 부여하여 도 10의 사고 데이터를 입력할 경우, 드문 경우에 해당하는 사고 데이터에 의하여 통계에 오류가 발생하는 문제가 발생될 수 있다. 따라서, 프로세서(140)는 사고 다발 지역에서 발생된 사고 데이터에 낮은 가중치를 부여하여 일반 사고 예측 모델을 강화 학습시킬 수 있다.The driving situation at the time of the accident occurrence illustrated in FIG. 10 may be determined to have a low probability of occurrence of an accident when analyzed by a general accident prediction model. If the accident data of FIG. 10 is input to the general accident prediction model by giving the same weight as other accidents, a problem may occur in statistics due to accident data corresponding to a rare case. Accordingly, the processor 140 may reinforce and learn a general accident prediction model by giving a low weight to accident data generated in the accident occurrence area.
반대로 특별 사고 예측 모델에 의해 분석할 경우에는 사고 발생 가능성이 높은 것으로 판단될 수 있다. 특히 사고 다발 지역에서 빈도 수가 높은 사고 유형에 해당하는 사고가 발생된 경우, 프로세서(140)는 사고 데이터에 높은 가중치를 부여하여 특별 사고 예측 모델을 강화 학습시킬 수 있다.On the contrary, if the analysis is conducted by a special accident prediction model, it may be judged that the probability of occurrence of an accident is high. In particular, when an accident corresponding to an accident type having a high frequency occurs in the accident occurrence area, the processor 140 may reinforce and learn a special accident prediction model by giving a high weight to the accident data.
도 11은 본 개시의 일 실시 예에 따른 전자 장치(100)의 경고 메시지 제공 방법을 설명하기 위한 흐름도이다. 11 is a flowchart illustrating a warning message providing method of the electronic device 100 according to an embodiment of the present disclosure.
도 11을 참조하면, 전자 장치(100)는 사고 데이터를 학습하여 복수의 사고 예측 모델을 구축할 수 있다(S1110). 복수의 사고 예측 모델은 전체 지역에 적용 가능한 일반 사고 예측 모델과 적어도 하나의 특별 사고 예측 모델로 구성될 수 있다. 특별 사고 예측 모델은 각각의 사고 다발 지역마다 하나씩 구축될 수 있다.Referring to FIG. 11, the electronic device 100 may learn accident data to build a plurality of accident prediction models (S1110). The plurality of accident prediction models may include a general accident prediction model and at least one special accident prediction model applicable to the entire region. A special accident prediction model can be built, one for each incident area.
기설정된 면적을 갖는 영역 내에서 기설정된 횟수 이상의 사고가 발생된 것으로 판단되면, 전자 장치(100)는 해당 영역을 사고 다발 지역으로 설정할 수 있다. 전자 장치(100)는 설정된 사고 다발 지역 내에서 발생된 사고에 대한 데이터만을 기초로 특별 사고 예측 모델을 구축할 수 있다. 전자 장치(100)는 사고 다발 지역 내에서 발생된 사고 데이터를 분석하여 빈도 수가 높은 사고 유형이 무엇인지 판단할 수 있다. 그리고 전자 장치(100)는 빈도 수가 높은 것으로 판단된 유형의 사고를 방지하는데 특화된 특별 사고 예측 모델을 구축할 수 있다.If it is determined that an accident occurs more than a predetermined number of times in an area having a preset area, the electronic device 100 may set the corresponding area as an accident-prone area. The electronic device 100 may build a special accident prediction model based only on data on accidents occurring in the set accident area. The electronic device 100 may determine which type of accident has a high frequency by analyzing accident data generated in the accident occurrence area. In addition, the electronic device 100 may establish a special accident prediction model specialized for preventing a type of accident determined to have a high frequency.
전자 장치(100)는 현재 위치를 기초로 복수의 사고 예측 모델 중 적용할 사고 예측 모델을 선택할 수 있다(S1120). 예를 들어, 전자 장치(100)는 GPS와 같은 위성항법장치를 이용하여 현재 위치를 판단할 수 있다. 다른 예로, 전자 장치(100)는 외부의 네비게이션 장치와 통신하여 현재 위치 정보를 수신할 수도 있다.The electronic device 100 may select an accident prediction model to be applied among the plurality of accident prediction models based on the current location in operation S1120. For example, the electronic device 100 may determine the current location by using a satellite navigation device such as GPS. As another example, the electronic device 100 may receive current location information by communicating with an external navigation device.
판단된 현재 위치가 사고 다발 지역로 진입하는 경우, 전자 장치(100)는 진입한 사고 다발 지역에 대응되는 특별 사고 예측 모델을 적용할 수 있다. 반대로 판단된 현재 위치가 사고 다발 지역을 벗어나는 경우, 전자 장치(100)는 일반 사고 예측 모델을 적용할 수 있다.When the determined current location enters the accident-prone area, the electronic device 100 may apply a special accident prediction model corresponding to the entered accident-prone area. In contrast, when the determined current location leaves the accident occurrence area, the electronic device 100 may apply a general accident prediction model.
이어서 전자 장치(100)는 선택된 사고 예측 모델을 이용하여 사고 발생 가능성을 판단할 수 있다(S1130). 전자 장치(100)는 현재 주행 상황을 수집할 수 있다. 그리고 전자 장치(100)는 사고 예측 모델에 의해 학습된 사고 발생 상황과 수집된 현재 주행 상황을 비교하여 유사도를 측정할 수 있다. 측정된 유사도를 바탕으로 전자 장치(100)는 사고 발생 가능성을 판단할 수 있다. 예를 들어, 현재의 주행 속도, 날씨, 도로 형태 등이 사고가 다수 발생된 경우와 유사할수록, 전자 장치(100)는 사고 발생 가능성을 높게 판단할 수 있다.Subsequently, the electronic device 100 may determine a possibility of an accident by using the selected accident prediction model (S1130). The electronic device 100 may collect a current driving situation. The electronic device 100 may measure the similarity by comparing the accident occurrence situation learned by the accident prediction model with the collected current driving situation. The electronic device 100 may determine the possibility of an accident based on the measured similarity. For example, as the current driving speed, the weather, the road shape, and the like are similar to the case where a large number of accidents occur, the electronic device 100 may determine a higher probability of the accident.
전자 장치(100)는 미리 임계 값을 설정하여 사고 발생 가능성과 비교할 수 있다(S1140). 만일 사고 발생 가능성이 기설정된 값 이상이면(S1140-Y), 전자 장치(100)는 사용자에게 경고 메시지를 제공할 수 있다(S1150). 전자 장치(100)는 사고 유형 및 사고 발생 가능성에 따라 상이한 경고 메시지를 제공할 수 있다. 예를 들어, 전자 장치(100)는 사고 유형에 따라 대처해야 하는 방법(ex. 감속, 옆 차선 주시 등)을 경고 메시지로 제공할 수 있다. 다른 예로, 전자 장치(100)는 사고 발생 가능성이 증가함에 따라 더욱 강력한 경고 메시지를 제공할 수 있다.The electronic device 100 may set a threshold value in advance and compare it with the likelihood of an accident (S1140). If the likelihood of an accident is greater than or equal to a preset value (S1140-Y), the electronic device 100 may provide a warning message to the user (S1150). The electronic device 100 may provide different warning messages according to the type of accident and the possibility of the occurrence of the accident. For example, the electronic device 100 may provide a warning message about a method (eg, deceleration, watching a side lane, etc.) to be dealt with according to an accident type. As another example, the electronic device 100 may provide a stronger warning message as the possibility of an accident increases.
도 12는 본 개시의 다른 실시 예에 따른 서버(200)와 연동하는 전자 장치(100)를 설명하기 위한 도면이다. 도 12를 참조하면, 전자 장치(100)와 서버(200)는 연동하여 데이터를 학습하고 인식할 수 있다.12 is a diagram for describing an electronic device 100 interworking with the server 200 according to another exemplary embodiment. Referring to FIG. 12, the electronic device 100 and the server 200 may interoperate to learn and recognize data.
서버(200)는 사고 상황 인식을 위한 기준을 학습할 수 있으며, 전자 장치(100)는 서버(200)에 의한 학습 결과에 기초하여 사고 발생 가능성 및 사고 유형 등을 판단할 수 있다.The server 200 may learn a criterion for recognizing an accident situation, and the electronic device 100 may determine a possibility of an accident and an accident type based on the learning result by the server 200.
이 경우, 서버(200)의 데이터 학습부(240)는 도 4a 에 도시된 데이터 학습부(141)의 기능을 수행할 수 있다. 예를 들어, 서버(200)의 데이터 학습부(240)는 사고 유형 분석을 위한 기준을 학습할 수 있다. 서버(200)는 학습된 기준에 따라 사고 데이터를 분석하여 사고 예측 모델을 구축할 수 있다. 데이터 학습부(240)는 사고 예측 모델을 학습/강화하기 위하여 어떠한 데이터를 이용할 것인지 결정할 수 있다. 또한, 데이터 학습부(240)는 결정된 데이터를 이용하여 사고 발생 가능성, 사고 유형 등을 판단하기 위한 기준을 학습할 수 있다. 데이터 학습부(240)는 학습에 이용될 데이터를 획득하고, 획득된 데이터를 후술할 데이터 인식 모델에 적용함으로써 특징 분석을 위한 기준을 학습할 수 있다.In this case, the data learner 240 of the server 200 may perform the function of the data learner 141 illustrated in FIG. 4A. For example, the data learner 240 of the server 200 may learn a criterion for analyzing an accident type. The server 200 may build an accident prediction model by analyzing accident data according to the learned criteria. The data learner 240 may determine what data to use to learn / reinforce the accident prediction model. In addition, the data learner 240 may learn a criterion for determining a possibility of an accident, an accident type, and the like using the determined data. The data learner 240 acquires data to be used for learning and learns criteria for feature analysis by applying the obtained data to a data recognition model to be described later.
또한, 전자 장치(100)의 인식 결과 제공부(142-4)는 인식 데이터 선택부(142-3)에 의해 선택된 데이터를 서버(200)에 의해 생성된 사고 예측 모델에 적용하여 상황을 판단할 수 있다. 또한, 인식 결과 제공부(142-4)는 서버(200)에 의해 생성된 사고 예측 모델을 서버(200)로부터 수신하고, 수신된 사고 예측 모델을 이용하여 이미지 분석, 컨텐츠 유형 판단 등을 수행할 수 있다. 전자 장치(100)는 사고 다발 지역에 인접한 경우 대응되는 특별 사고 예측 모델을 수신할 수 있다. 그리고 전자 장치(100)의 모델 갱신부(142-5)는 서버(200)의 모델 학습부(240-4)에 제공하여 사고 예측 모델을 갱신할 수도 있다.In addition, the recognition result providing unit 142-4 of the electronic device 100 may determine the situation by applying the data selected by the recognition data selecting unit 142-3 to the accident prediction model generated by the server 200. Can be. In addition, the recognition result providing unit 142-4 receives the accident prediction model generated by the server 200 from the server 200, and performs image analysis, content type determination, etc. using the received accident prediction model. Can be. The electronic device 100 may receive a special accident prediction model corresponding to the case where the electronic device 100 is adjacent to the accident occurrence area. The model updater 142-5 of the electronic device 100 may update the accident prediction model by providing the model learner 240-4 of the server 200.
즉, 전자 장치(100)는 서버(200)의 컴퓨팅 파워를 이용하여 생성된 사고 예측 모델을 이용할 수 있다. 또한, 복수의 전자 장치(100)에서 학습 또는 인식된 사고 데이터가 서버(200)에 전송됨으로써, 서버(200)는 사고 예측 모델을 갱신할 수도 있다. 또한, 복수의 전자 장치(100) 각각에서 학습 또는 인식된 사고 데이터, 주행 습관 데이터를 서버(200)로 전송하여, 각각의 전자 장치(100)에 적합하게 개인화된 사고 예측 모델을 서버(200)가 생성하도록 할 수도 있다.That is, the electronic device 100 may use an accident prediction model generated by using the computing power of the server 200. In addition, the accident data learned or recognized by the plurality of electronic devices 100 is transmitted to the server 200, so that the server 200 may update the accident prediction model. In addition, the server 200 transmits the accident data and the driving habit data learned or recognized in each of the plurality of electronic devices 100 to the server 200 so as to generate an accident prediction model personalized for each electronic device 100. You can also create a.
도 13은 본 개시의 다른 실시 예에 따른 전자 장치(100) 및 서버(200)의 동작을 설명하기 위한 시퀀스도이다.FIG. 13 is a sequence diagram illustrating an operation of the electronic device 100 and the server 200 according to another exemplary embodiment.
이때, 전자 장치(100)는 범용 프로세서를 포함하고, 서버(200)는 인공지능 전용 프로세서를 포함할 수 있다. 또는, 전자 장치(100)는 적어도 하나의 어플리케이션을 포함할 수 있고, 서버(200)는 운영 체제(operating system)를 포함할 수 있다. 서버(200)는 전자 장치(100)보다 더 집적화되거나, 전용화되거나, 딜레이(delay)가 작거나, 성능이 우수하거나 또는 많은 리소스를 가진 구성 요소로서 인식 모델의 생성, 갱신 또는 적용 시에 요구되는 많은 연산을 전자 장치(100)보다 신속하고 효과적으로 처리 가능한 구성 요소가 될 수 있다. In this case, the electronic device 100 may include a general purpose processor, and the server 200 may include an artificial intelligence processor. Alternatively, the electronic device 100 may include at least one application, and the server 200 may include an operating system. The server 200 is a component that is more integrated, dedicated, has a smaller delay, has better performance, or has more resources than the electronic device 100, and is required to generate, update, or apply a recognition model. Many operations that can be faster and more efficient than the electronic device 100 can be a component.
이 경우, 전자 장치(100) 및 서버(200) 간에 데이터를 송/수신하기 위한 인터페이스가 정의될 수 있다. In this case, an interface for transmitting / receiving data between the electronic device 100 and the server 200 may be defined.
예로, 인식 모델에 적용할 학습 데이터를 인자 값(또는, 매개 값 또는 전달 값)으로 갖는 API(application program interface)가 정의될 수 있다. API는 어느 하나의 프로토콜(예로, 전자 장치(100)에서 정의된 프로토콜)에서 다른 프로토콜(예로, 서버(200)에서 정의된 프로토콜)의 어떤 처리를 위해 호출할 수 있는 서브 루틴 또는 함수의 집합으로 정의될 수 있다. 즉, API를 통하여 어느 하나의 프로토콜에서 다른 프로토콜의 동작이 수행될 수 있는 환경을 제공될 수 있다.For example, an application program interface (API) having training data to be applied to the recognition model as an argument value (or, a parameter value or a transfer value) may be defined. An API is a set of subroutines or functions that can be called for processing of one protocol (eg, a protocol defined in the electronic device 100) to another protocol (eg, a protocol defined in the server 200). Can be defined. That is, an API may provide an environment in which an operation of another protocol may be performed in one protocol.
서버(200)는 다양한 경로를 통해 사고 데이터를 수집하여 사고 예측 모델을 구축할 수 있다(S1310). 예를 들어, 서버(200)는 경찰청, 네비게이션 업체 등으로부터 획득한 사고 데이터 및 각각의 전자 장치(100)로부터 전송된 사고 데이터를 이용하여 사고 예측 모델을 구축할 수 있다.The server 200 may build an accident prediction model by collecting accident data through various paths (S1310). For example, the server 200 may build an accident prediction model using accident data obtained from a police agency, a navigation company, and the like and accident data transmitted from each electronic device 100.
서버(200)는 전체 지역에 적용 가능한 일반 사고 예측 모델을 구축할 수 있다. 또한, 서버(200)는 사고 다발 지역을 설정할 수 있으며, 설정된 사고 다발 지역에 특화된 특별 사고 예측 모델을 구축할 수 있다. 이와 같이 지역에 따라 적용될 수 있는 사고 예측 모델이 상이하기 때문에, 전자 장치(100)는 현재 위치를 측정하여야 한다(S1320).The server 200 may build a general accident prediction model applicable to the entire region. In addition, the server 200 may set an accident occurrence area, and may build a special accident prediction model specialized for the set accident occurrence area. As the accident prediction model that can be applied according to the region is different as described above, the electronic device 100 must measure the current location (S1320).
전자 장치(100)는 측정된 현재 위치 데이터를 서버(200)로 전송할 수 있다(S1330). 그리고 서버(200)는 전자 장치(100)의 위치에 대응되는 사고 예측 모델을 전송할 수 있다(S1340).The electronic device 100 may transmit the measured current location data to the server 200 (S1330). In operation S1340, the server 200 may transmit an accident prediction model corresponding to the location of the electronic device 100.
전자 장치(100)는 수신한 사고 예측 모델을 이용하여 사고 발생 가능성을 판단할 수 있다(S1350). 그리고 사고 발생 가능성이 기설정된 값 이상인 경우, 전자 장치(100)는 사용자에게 경고 메시지를 출력할 수 있다(S1360).The electronic device 100 may determine a possibility of an accident by using the received accident prediction model in operation S1350. If the possibility of an accident is greater than or equal to a preset value, the electronic device 100 may output a warning message to the user (S1360).
이상과 같은 본 개시의 다양한 실시 예에 따르면, 전자 장치(100) 스스로 인공지능을 이용하여 기존에 발생하였던 교통 사고 상황을 분석하고, 현재 주행 상황이 사고 상황과 유사한 경우 사용자에게 경고 메시지를 제공하여 유사한 사고가 발생되는 것을 방지할 수 있다.According to various embodiments of the present disclosure as described above, the electronic device 100 analyzes a traffic accident situation that has occurred previously by using artificial intelligence, and provides a warning message to a user when the current driving situation is similar to the accident situation. Similar accidents can be prevented from occurring.
본 개시에서 사용된 용어 "~부"는 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다. As used herein, the term "unit" includes a unit composed of hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. The module may be an integrally formed part or a minimum unit or part of performing one or more functions. For example, the module may be configured as an application-specific integrated circuit (ASIC).
본 문서의 다양한 실시예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시예들에 따른 전자 장치(예: 전자 장치(A))를 포함할 수 있다. 상기 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 상기 프로세서의 제어하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.Various embodiments of the present disclosure may be implemented in software that includes instructions stored in a machine-readable storage media. A device capable of calling and operating in accordance with the called command may include an electronic device according to the disclosed embodiments (for example, the electronic device A.) When the command is executed by the processor, the processor directly, Alternatively, other components may be used to perform functions corresponding to the instructions under the control of the processor, and the instructions may include code generated or executed by a compiler or an interpreter. It may be provided in the form of a non-transitory storage medium, where "non-transitory" means that the storage medium does not contain a signal and does not actually contain a signal. It is meant to be tangible but does not distinguish that data is stored semi-permanently or temporarily on a storage medium.
일시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, a method according to various embodiments disclosed herein may be provided included in a computer program product. The computer program product may be traded between the seller and the buyer as a product. The computer program product may be distributed online in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)) or through an application store (eg Play StoreTM). In the case of an online distribution, at least a portion of the computer program product may be stored at least temporarily on a storage medium such as a server of a manufacturer, a server of an application store, or a relay server, or may be temporarily created.
다양한 실시예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.Each component (eg, a module or a program) according to various embodiments may be composed of a singular or plural number of objects, and some of the above-described subcomponents may be omitted, or other subcomponents may be omitted. It may be further included in various embodiments. Alternatively or additionally, some components (eg, modules or programs) may be integrated into one entity to perform the same or similar functions performed by each corresponding component prior to integration. According to various embodiments, operations performed by a module, program, or other component may be executed sequentially, in parallel, repeatedly, or heuristically, or at least some of the operations may be executed in a different order, omitted, or another operation may be added. Can be.

Claims (15)

  1. 전자 장치의 경고 메시지 제공 방법에 있어서,In the method for providing a warning message of the electronic device,
    사고 데이터를 학습하여 복수의 사고 예측 모델을 구축하는 단계;Learning accident data to construct a plurality of accident prediction models;
    상기 전자 장치의 현재 위치를 기초로 상기 복수의 사고 예측 모델 중에서 적용할 사고 예측 모델을 선택하는 단계;Selecting an accident prediction model to be applied from the plurality of accident prediction models based on a current position of the electronic device;
    상기 선택된 사고 예측 모델을 이용하여 사고 발생 가능성을 판단하는 단계; 및Determining a possibility of an accident using the selected accident prediction model; And
    상기 판단된 사고 발생 가능성이 기설정된 값 이상이면 경고 메시지를 제공하는 단계;를 포함하는 경고 메시지 제공 방법.And providing a warning message when the determined likelihood of occurrence of an accident is equal to or greater than a predetermined value.
  2. 제1항에 있어서,The method of claim 1,
    기설정된 면적을 갖는 영역 내에서 기설정된 횟수 이상의 사고가 발생된 것으로 판단되면, 상기 영역을 사고 다발 지역으로 설정하는 단계;를 더 포함하고,If it is determined that an accident occurs more than a predetermined number of times in a region having a predetermined area, setting the region as an accident-prone region; further comprising:
    상기 복수의 사고 예측 모델은,The plurality of accident prediction models,
    전체 지역에 적용 가능한 일반 사고 예측 모델 및 적어도 하나의 사고 다발 지역에 적용 가능한 적어도 하나의 특별 사고 예측 모델을 포함하는 경고 메시지 제공 방법.A warning message providing method comprising a general accident prediction model applicable to an entire region and at least one special accident prediction model applicable to at least one accident-prone region.
  3. 제2항에 있어서,The method of claim 2,
    상기 구축하는 단계는,The building step,
    전체 사고 데이터를 기초로 상기 일반 사고 예측 모델을 구축하고, 상기 사고 다발 지역에서 발생된 사고 데이터만을 기초로 상기 특별 사고 예측 모델을 구축하는 경고 메시지 제공 방법.A warning message providing method for building the general accident prediction model based on the entire accident data, and building the special accident prediction model based only on the accident data generated in the accident occurrence area.
  4. 제1항에 있어서,The method of claim 1,
    상기 구축하는 단계는,The building step,
    상기 사고 데이터를 사고 유형별로 구분하여 빈도 수를 판단하고, 상기 판단된 빈도 수에 따라 가중치를 두어 사고 데이터를 학습하는 경고 메시지 제공 방법.A method of providing a warning message for classifying the accident data by accident type to determine a frequency and learning the accident data by weighting the accident data.
  5. 제2항에 있어서,The method of claim 2,
    상기 선택하는 단계는,The selecting step,
    상기 전자 장치의 현재 위치를 판단하는 단계; 및Determining a current location of the electronic device; And
    상기 판단된 현재 위치가 상기 사고 다발 지역인 경우에 상기 특별 사고 예측 모델을 선택하고, 나머지 경우에 상기 일반 사고 예측 모델을 선택하는 단계;를 포함하는 경고 메시지 제공 방법.Selecting the special accident prediction model when the determined current location is the accident-prone region, and selecting the general accident prediction model in the remaining cases.
  6. 제1항에 있어서,The method of claim 1,
    상기 사고 발생 가능성을 판단하는 단계는,Determining the possibility of the accident,
    현재 주행 상황을 수집하는 단계; 및Collecting a current driving situation; And
    상기 사고 예측 모델에 의해 학습된 사고 발생 상황과 상기 수집된 현재 주행 상황의 유사도를 계산하여 사고 발생 가능성을 판단하는 경고 메시지 제공 방법.The warning message providing method for determining the likelihood of accident by calculating the similarity between the accident occurrence situation learned by the accident prediction model and the collected current driving situation.
  7. 제6항에 있어서,The method of claim 6,
    상기 경고 메시지를 제공하는 단계는,Providing the warning message,
    사고 발생 가능성이 커짐에 따라 단계적으로 다른 경고 메시지를 제공하는 경고 메시지 제공 방법.How to provide a warning message that provides different warning messages in stages as the probability of an accident increases.
  8. 제2항에 있어서,The method of claim 2,
    상기 사고 다발 지역에서 사고가 발생하면, 상기 일반 사고 예측 모델 및 상기 특별 사고 예측 모델을 서로 다른 가중치로 강화하는 단계;를 더 포함하는 경고 메시지 제공 방법.And strengthening the general accident prediction model and the special accident prediction model with different weights when an accident occurs in the accident occurrence area.
  9. 제1항에 있어서,The method of claim 1,
    상기 사고 데이터는,The accident data,
    사고 당시 차량 정보, 차량 조작 정보, 위치 정보, 도로 형태 정보, 날씨 정보, 차량 간 거리 정보, 영상 정보, 가속도 정보 및 조향 정보 중 적어도 하나를 포함하는 경고 메시지 제공 방법.And at least one of vehicle information, vehicle operation information, location information, road shape information, weather information, inter-vehicle distance information, image information, acceleration information, and steering information at the time of an accident.
  10. 제1항에 있어서,The method of claim 1,
    상기 사고 예측 모델은 인공지능 신경망(Neural Network) 모델인 것인, 경고 메시지 제공 방법.The accident prediction model is an artificial neural network (Neural Network) model, a warning message providing method.
  11. 전자 장치에 있어서,In an electronic device,
    상기 전자 장치의 현재 위치를 판단하는 위치 결정부;A location determiner that determines a current location of the electronic device;
    사고 데이터 및 주행 상황을 수신하는 통신부;Communication unit for receiving the accident data and driving situation;
    경고 메시지를 출력하는 출력부; 및An output unit for outputting a warning message; And
    상기 수신된 사고 데이터를 학습하여 복수의 사고 예측 모델을 구축하고, 상기 위치 결정부에서 판단된 현재 위치를 기초로 상기 복수의 사고 예측 모델 중에서 적용할 사고 예측 모델을 선택하며, 상기 선택된 사고 예측 모델을 이용하여 사고 발생 가능성을 판단하고, 상기 판단된 사고 발생 가능성이 기설정된 값 이상이면 경고 메시지를 제공하도록 상기 출력부를 제어하는 프로세서;를 포함하는 전자 장치.Constructs a plurality of accident prediction models by learning the received accident data, selects an accident prediction model to be applied among the plurality of accident prediction models based on the current position determined by the position determining unit, and selects the selected accident prediction model And a processor configured to determine a possibility of an accident and to provide a warning message when the determined probability of occurrence of the accident is greater than or equal to a preset value.
  12. 제11항에 있어서,The method of claim 11,
    상기 프로세서는,The processor,
    기설정된 면적을 갖는 영역 내에서 기설정된 횟수 이상의 사고가 발생된 것으로 판단되면, 상기 영역을 사고 다발 지역으로 설정하고,If it is determined that an accident has occurred more than a predetermined number of times in an area having a predetermined area, the area is set as an accident-prone area,
    상기 복수의 사고 예측 모델은,The plurality of accident prediction models,
    전체 지역에 적용 가능한 일반 사고 예측 모델 및 적어도 하나의 사고 다발 지역에 적용 가능한 적어도 하나의 특별 사고 예측 모델을 포함하는 전자 장치.An electronic device comprising a general accident prediction model applicable to an entire region and at least one special accident prediction model applicable to at least one accident-prone region.
  13. 제12항에 있어서,The method of claim 12,
    상기 프로세서는,The processor,
    전체 사고 데이터를 기초로 상기 일반 사고 예측 모델을 구축하고, 상기 사고 다발 지역에서 발생된 사고 데이터만을 기초로 상기 특별 사고 예측 모델을 구축하는 전자 장치.And building the general accident prediction model based on total accident data and building the special accident prediction model based only on accident data generated in the accident occurrence area.
  14. 제12항에 있어서,The method of claim 12,
    상기 프로세서는,The processor,
    상기 사고 데이터를 사고 유형별로 구분하여 빈도 수를 판단하고, 상기 판단된 빈도 수에 따라 가중치를 두어 상기 사고 데이터를 학습하는 전자 장치.And classifying the accident data by accident type to determine a frequency and learning the accident data by weighting the accident data.
  15. 제12항에 있어서,The method of claim 12,
    상기 프로세서는,The processor,
    상기 판단된 현재 위치가 상기 사고 다발 지역인 경우에 상기 특별 사고 예측 모델을 선택하고, 나머지 경우에 상기 일반 사고 예측 모델을 선택하는 전자 장치.And selecting the special accident prediction model when the determined current location is the accident-prone region, and selecting the general accident prediction model in the remaining cases.
PCT/KR2018/003734 2017-04-06 2018-03-29 Electronic device, warning message providing method therefor, and non-transitory computer-readable recording medium WO2018186625A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/485,677 US11475770B2 (en) 2017-04-06 2018-03-29 Electronic device, warning message providing method therefor, and non-transitory computer-readable recording medium

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20170044725 2017-04-06
KR10-2017-0044725 2017-04-06
KR10-2017-0157851 2017-11-24
KR1020170157851A KR102442061B1 (en) 2017-04-06 2017-11-24 Electronic apparatus, alert message providing method of thereof and non-transitory computer readable recording medium

Publications (1)

Publication Number Publication Date
WO2018186625A1 true WO2018186625A1 (en) 2018-10-11

Family

ID=63713529

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/003734 WO2018186625A1 (en) 2017-04-06 2018-03-29 Electronic device, warning message providing method therefor, and non-transitory computer-readable recording medium

Country Status (1)

Country Link
WO (1) WO2018186625A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111046212A (en) * 2019-12-04 2020-04-21 支付宝(杭州)信息技术有限公司 Traffic accident processing method and device and electronic equipment
CN113424221A (en) * 2019-02-15 2021-09-21 欧姆龙株式会社 Model generation device, method, program, and prediction device
CN114627643A (en) * 2022-02-28 2022-06-14 青岛海信网络科技股份有限公司 Expressway accident risk prediction method, device, equipment and medium
EP3998591A4 (en) * 2019-07-08 2023-07-12 Hitachi High-Tech Corporation Accident risk diagnosis method, accident risk diagnosis device, and accident risk diagnosis system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0660300A (en) * 1992-08-04 1994-03-04 Takata Kk Collision prevention and prediction system by neural network
JP2005313658A (en) * 2004-04-26 2005-11-10 Sompo Japan Insurance Inc Vehicle accident prevention system and vehicle accident prevention method
KR20060092909A (en) * 2004-11-16 2006-08-23 마이크로소프트 코포레이션 Traffic forecasting employing modeling and analysis of probabilistic interdependencies and contextual data
KR20140118153A (en) * 2013-03-28 2014-10-08 주식회사 한라홀딩스 Apparatus for preventing collision in vehicle and method thereof
KR20150045789A (en) * 2013-10-21 2015-04-29 주식회사 에스원 Method and apparatus for providing information vehicle driving information

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0660300A (en) * 1992-08-04 1994-03-04 Takata Kk Collision prevention and prediction system by neural network
JP2005313658A (en) * 2004-04-26 2005-11-10 Sompo Japan Insurance Inc Vehicle accident prevention system and vehicle accident prevention method
KR20060092909A (en) * 2004-11-16 2006-08-23 마이크로소프트 코포레이션 Traffic forecasting employing modeling and analysis of probabilistic interdependencies and contextual data
KR20140118153A (en) * 2013-03-28 2014-10-08 주식회사 한라홀딩스 Apparatus for preventing collision in vehicle and method thereof
KR20150045789A (en) * 2013-10-21 2015-04-29 주식회사 에스원 Method and apparatus for providing information vehicle driving information

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113424221A (en) * 2019-02-15 2021-09-21 欧姆龙株式会社 Model generation device, method, program, and prediction device
EP3998591A4 (en) * 2019-07-08 2023-07-12 Hitachi High-Tech Corporation Accident risk diagnosis method, accident risk diagnosis device, and accident risk diagnosis system
CN111046212A (en) * 2019-12-04 2020-04-21 支付宝(杭州)信息技术有限公司 Traffic accident processing method and device and electronic equipment
CN114627643A (en) * 2022-02-28 2022-06-14 青岛海信网络科技股份有限公司 Expressway accident risk prediction method, device, equipment and medium

Similar Documents

Publication Publication Date Title
KR102442061B1 (en) Electronic apparatus, alert message providing method of thereof and non-transitory computer readable recording medium
WO2018186625A1 (en) Electronic device, warning message providing method therefor, and non-transitory computer-readable recording medium
US11593588B2 (en) Artificial intelligence apparatus for generating training data, artificial intelligence server, and method for the same
US11200467B2 (en) Artificial intelligence apparatus and method for recognizing object included in image data
KR102060662B1 (en) Electronic device and method for detecting a driving event of vehicle
US11455792B2 (en) Robot capable of detecting dangerous situation using artificial intelligence and method of operating the same
US11126833B2 (en) Artificial intelligence apparatus for recognizing user from image data and method for the same
KR102630320B1 (en) Fast CNN classification of multi-frame semantic signals
US11668485B2 (en) Artificial intelligence air conditioner and method for calibrating sensor data of air conditioner
US11669781B2 (en) Artificial intelligence server and method for updating artificial intelligence model by merging plurality of pieces of update information
WO2020139063A1 (en) Electronic apparatus for detecting risk factors around vehicle and method for controlling same
US11383379B2 (en) Artificial intelligence server for controlling plurality of robots and method for the same
WO2018117538A1 (en) Method for estimating lane information, and electronic device
WO2019208950A1 (en) Mobile robot device and method for providing service to user
US11769508B2 (en) Artificial intelligence apparatus
US11769047B2 (en) Artificial intelligence apparatus using a plurality of output layers and method for same
US11449074B2 (en) Robot for providing guidance service using artificial intelligence and method of operating the same
US11977384B2 (en) Control system for controlling a plurality of robots using artificial intelligence
US20210334461A1 (en) Artificial intelligence apparatus and method for generating named entity table
US11322134B2 (en) Artificial intelligence device and operating method thereof
US11074814B2 (en) Portable apparatus for providing notification
US20210108854A1 (en) Artificial intelligence for refrigeration
WO2024038984A1 (en) Signal information recognition method, device, and computer program for autonomous driving of vehicle
US11093795B2 (en) Artificial intelligence server for determining deployment area of robot and method for the same
WO2018182337A1 (en) Electronic device for determining emotion of user and method for controlling same

Legal Events

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

Ref document number: 18781252

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18781252

Country of ref document: EP

Kind code of ref document: A1