KR20230045456A - 서버, 가전기기, 및 서버가 가전기기에 인공지능 추천 서비스를 제공하는 방법 - Google Patents

서버, 가전기기, 및 서버가 가전기기에 인공지능 추천 서비스를 제공하는 방법 Download PDF

Info

Publication number
KR20230045456A
KR20230045456A KR1020210128343A KR20210128343A KR20230045456A KR 20230045456 A KR20230045456 A KR 20230045456A KR 1020210128343 A KR1020210128343 A KR 1020210128343A KR 20210128343 A KR20210128343 A KR 20210128343A KR 20230045456 A KR20230045456 A KR 20230045456A
Authority
KR
South Korea
Prior art keywords
home appliance
course
history data
information
administration
Prior art date
Application number
KR1020210128343A
Other languages
English (en)
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
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020210128343A priority Critical patent/KR20230045456A/ko
Priority to PCT/KR2022/009754 priority patent/WO2023054860A1/ko
Priority to US17/869,961 priority patent/US20230095648A1/en
Publication of KR20230045456A publication Critical patent/KR20230045456A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2814Exchanging control software or macros for controlling appliance services in a home automation network
    • DTEXTILES; PAPER
    • D06TREATMENT OF TEXTILES OR THE LIKE; LAUNDERING; FLEXIBLE MATERIALS NOT OTHERWISE PROVIDED FOR
    • D06FLAUNDERING, DRYING, IRONING, PRESSING OR FOLDING TEXTILE ARTICLES
    • D06F34/00Details of control systems for washing machines, washer-dryers or laundry dryers
    • D06F34/04Signal transfer or data transmission arrangements
    • D06F34/05Signal transfer or data transmission arrangements for wireless communication between components, e.g. for remote monitoring or control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Medical Informatics (AREA)
  • Textile Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

행정 기반의 신규 가전기기에 코스 추천 서비스를 제공하는 서버 및 그 동작 방법을 제공한다. 본 개시의 일 실시예에 따른 서버는, 가전기기로부터 코스 추천 서비스의 요청 신호를 수신하고, 가전기기가 신규 기기인지 여부를 판단하고, 가전기기 이전에 사용된 동일 타입의 기존 가전기기에 관한 제1 행정 이력 데이터를 신규 가전기기에 대응되는 제2 행정 이력 데이터로 변환하고, 변환된 제2 행정 이력 데이터를 이용하여 추천 코스에 관한 정보를 획득하며, 획득된 추천 코스에 관한 정보를 신규 가전기기에 전송할 수 있다.

Description

서버, 가전기기, 및 서버가 가전기기에 인공지능 추천 서비스를 제공하는 방법 {A SERVER, A HOUSEHOLD ELECTRICAL DEVICE, AND A METHOD FOR PROVIDING AN ARTIFICIAL INTELLIGENCE RECOMMENDATION SERVICE TO THE HOUSEHOLD ELECTRICAL DEVICE}
본 개시는 인공지능(Artificial Intelligence; AI) 서비스를 제공하는 서버, 가전기기, 및 그 동작 방법에 관한 것이다. 구체적으로, 본 개시는 서버, 및 서버가 복수의 동작들을 기 설정된 순서에 따라 진행하는 행정 기반의 가전기기에 인공지능 추천 서비스를 제공하는 방법에 관한 것이다.
최근에는, 인공지능(예를 들어, 기계 학습(Machine Learning), 딥 러닝(Deep learning) 등의 기술이 발전함으로써, 음성, 이미지, 동영상 또는 텍스트 등의 데이터를 자동으로 인식하여 데이터와 연관된 정보를 제공하거나 데이터와 관련된 서비스를 제공하는 지능형 서비스(Intelligent Service)가 다양한 분야에서 사용되고 있다.
인공 지능 시스템은 인간 수준의 지능을 구현하는 컴퓨터 시스템이며, 기존 룰(rule) 기반 스마트 시스템과 달리 기계가 스스로 학습하고 판단하며 똑똑해지는 시스템이다. 인공 지능 시스템은 사용할수록 인식률이 향상되고 사용자 취향을 보다 정확하게 이해할 수 있게 되어, 기존 룰 기반 스마트 시스템은 점차 딥 러닝 기반 인공 지능 시스템으로 대체되고 있다.
인공지능 기술은 기계학습(예를 들어, 딥 러닝) 및 기계학습을 활용한 요소 기술들로 구성된다. 기계학습은 입력 데이터들의 특징을 스스로 분류/학습하는 알고리즘 기술이며, 요소 기술은 딥 러닝 등의 기계학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술로서, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야로 구성된다.
인공지능 기술은 가전기기에도 적용되어 동작 모드를 추천하는 등의 용도로 사용되고 있다. 특히, 최근에는 복수의 동작들을 기 설정된 순서에 따라 진행하는 행정 기반의 가전기기, 예를 들어 세탁기, 건조기, 의류 관리기 등에 인공지능 기술을 적용하여 코스(course) 또는 코스에 따른 설정값 추천 서비스를 제공하고 있다. 행정 기반 가전기기의 경우 인공지능 기술을 이용하여 코스 또는 설정값 추천 서비스를 제공하기 위해서는, 일정량 이상의 행정 이력 데이터가 축적되어야 한다. 세탁기, 건조기, 의류 관리기 등 행정 기반 가전기기는 행정의 사용 이력을 누적하는데 오랜 기간이 소요된다. 행정 기반의 신규 가전기기를 구입하여 기존 가전기기를 대체하거나, 또는 신규 가전기기를 기존 가전기기에 추가하는 경우, 신규 가전기기에는 행정 이력 데이터가 누적되어 있지 않기 때문에, 서버가 신규 가전기기에 인공지능 코스 추천 서비스를 제공하기 위해서는 처음부터 행정 이력 데이터를 다시 누적하여 저장해야 한다.
서버가 신규 가전기기에 인공지능 코스 추천 서비스를 제공하기 까지 기간이 오래 걸리고, 사용자 편의성이 낮다. 또한, 신규 가전기기가 기존 가전기기와 수행할 수 있는 기능, 코스, 또는 설정값이 동일하지 않은 경우, 기존 가전기기에서의 행정 이력 데이터를 신규 가전기기에 그대로 활용할 수 없는 문제점이 있다.
본 개시는 행정 기반의 신규 가전기기를 구입하여 기존 가전기기를 대체하거나, 또는 기존 가전기기에 추가하는 경우, 기존 가전기기의 행정 이력 데이터를 이용하여 신규 가전기기에 행정 이력 데이터 기반의 인공지능 코스 추천 서비스를 제공하는 서버 및 그 동작 방법을 제공한다.
본 개시의 일 실시예에 따른 서버는 기존 가전기기로부터 수집하여 저장된 행정 이력 데이터를 신규 가전기기에 대응되는 행정 이력 데이터로 변환하고, 변환된 행정 이력 데이터를 이용하여 신규 가전기기에 코스 추천 서비스를 제공할 수 있다.
상술한 기술적 과제를 해결하기 위하여 본 개시는 일 실시예는, 서버가 인공지능(AI) 서비스를 제공하는 방법을 제공한다. 본 개시의 일 실시예에 따른 방법은 가전기기로부터 코스 추천 서비스의 요청 신호를 수신하는 단계, 상기 가전기기의 디바이스 등록 정보 및 사용 이력 정보에 기초하여, 상기 가전기기가 신규 기기인지 여부를 판단하는 단계, 상기 가전기기가 신규 기기로 판단된 경우, 상기 가전기기 이전에 사용된 동일 타입의 기존 가전기기에 관한 제1 행정 이력 데이터를 상기 가전기기에 대응되는 제2 행정 이력 데이터로 변환하는 단계, 상기 제2 행정 이력 데이터를 제1 인공지능 모델에 입력 데이터로 적용하여, 상기 가전기기의 추천 코스에 관한 정보를 획득하는 단계, 및 상기 가전기기의 추천 코스에 관한 정보를 상기 가전기기에 전송하는 단계를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 가전기기가 신규 기기인지 여부를 판단하는 단계는 상기 가전기기의 등록 기간이 기 설정된 임계 기간 이내이고, 사용 횟수가 기 설정된 임계 횟수 미만인 경우, 상기 가전기기를 신규 기기로 식별하는 단계를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 제1 행정 이력 데이터는 상기 기존 가전기기에 의해 수행된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스를 구성하는 행정에 포함되는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계는 상기 기존 가전기기의 코스와 상기 가전기기의 코스 간의 기 설정된 코스 별 매핑 관계에 기초하여, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계는 상기 제1 행정 이력 데이터로부터 적어도 하나의 특징 값을 추출하는 단계, 상기 추출된 적어도 하나의 특징 값을 제2 인공지능 모델에 입력 데이터로 적용하여 상기 제2 인공지능 모델을 통한 추론을 수행하는 단계, 및 상기 추론을 통해 획득된 라벨 값에 기초하여 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 제2 인공지능 모델은 상기 기존 가전기기에 의해 수행 가능한 코스 및 상기 코스의 행정 정보로부터 추출된 특징 값을 입력 데이터로 적용하고, 상기 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값을 출력 데이터로 적용하는 지도 학습(supervised learning) 방식을 통해 트레이닝된 모델일 수 있다.
본 개시의 일 실시예에서, 상기 코스의 행정 정보는 상기 코스를 구성하는 행정에 포함되는 복수의 동작들, 상기 복수의 동작들의 수행 순서, 및 상기 복수의 동작들의 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계는 상기 기존 가전기기에 의해 수행 가능한 코스에 따른 제1 행정 정보와 상기 가전기기에 의해 수행 가능한 코스에 따른 제2 행정 정보 간의 유사도에 기초하여, 상기 제1 행정 정보와 상기 제2 행정 정보 간의 매핑 관계를 획득하는 단계, 및 상기 획득된 매핑 관계에 기초하여, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 가전기기의 추천 코스에 관한 정보를 획득하는 단계는 상기 가전기기로부터 사용 시간, 사용 날짜, 요일, 외부 온도, 습도, 및 미세먼지 중 적어도 하나에 관한 정보를 포함하는 사용 환경 정보를 획득하는 단계, 상기 사용 환경 정보로부터 특징 값을 추출하는 단계, 상기 추출된 특징 값과 상기 제2 행정 이력 데이터로부터 추출된 특징 값을 이용하여 특징 벡터를 생성하는 단계, 및 상기 특징 벡터를 상기 제1 인공지능 모델에 입력 데이터로 적용하고, 상기 제1 인공지능 모델을 통한 추론을 수행함으로써, 상기 가전기기의 추천 코스를 나타내는 라벨 값을 획득하는 단계를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계는 상기 제1 행정 이력 데이터로부터 추출된 특징 값을 이용하여 제1 특징 벡터를 생성하는 단계, 및 상기 제1 특징 벡터를 상기 제2 행정 이력 데이터에 대응되는 제2 특징 벡터로 변환하는 단계를 포함하고, 상기 가전기기의 추천 코스에 관한 정보를 획득하는 단계는 상기 제2 특징 벡터 및 상기 가전기기의 사용 환경 정보로부터 추출된 제3 특징 벡터를 상기 제1 인공지능 모델에 입력 데이터로 적용하고, 상기 제1 인공지능 모델을 통한 추론을 수행함으로써, 상기 가전기기의 추천 코스를 나타내는 라벨 값을 획득하는 단계를 포함할 수 있다.
상술한 기술적 과제를 해결하기 위하여 본 개시의 다른 실시예는, 가전기기에 인공지능 서비스를 제공하는 서버를 제공한다. 본 개시의 일 실시예에 따른 서버는, 통신 인터페이스, 적어도 하나의 가전기기의 행정 이력 데이터 및 적어도 하나의 명령어(instruction)을 저장하는 메모리, 및 상기 메모리에 저장된 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는 상기 통신 인터페이스를 통해 상기 가전기기로부터 코스 추천 서비스의 요청 신호를 수신하고, 상기 가전기기의 디바이스 등록 정보 및 사용 이력 정보에 기초하여 상기 가전기기가 신규 기기인지 여부를 판단하고, 상기 가전기기가 신규 기기로 판단된 경우 상기 가전기기 이전에 사용된 동일 타입의 기존 가전기기에 관하여 상기 메모리에 저장된 제1 행정 이력 데이터를 상기 가전기기에 대응되는 제2 행정 이력 데이터로 변환하고, 상기 제2 행정 이력 데이터를 제1 인공지능 모델에 입력 데이터로 적용하여 상기 가전기기의 추천 코스에 관한 정보를 획득하고, 상기 가전기기의 추천 코스에 관한 정보를 상기 가전기기에 전송하도록 상기 통신 인터페이스를 제어할 수 있다.
본 개시의 일 실시예에서, 상기 제1 행정 이력 데이터는 상기 기존 가전기기에 의해 수행된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스를 구성하는 행정에 포함되는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 적어도 하나의 프로세서는 상기 기존 가전기기의 코스와 상기 가전기기의 코스 간의 기 설정된 코스 별 매핑 관계에 기초하여, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환할 수 있다.
본 개시의 일 실시예에서, 상기 적어도 하나의 프로세서는 상기 제1 행정 이력 데이터로부터 적어도 하나의 특징 값을 추출하고, 상기 추출된 적어도 하나의 특징 값을 제2 인공지능 모델에 입력 데이터로 적용하여 상기 제2 인공지능 모델을 통한 추론을 수행하고, 상기 추론을 통해 획득된 라벨 값에 기초하여 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환할 수 있다.
본 개시의 일 실시예에서, 상기 제2 인공지능 모델은 상기 기존 가전기기에 의해 수행 가능한 코스 및 상기 코스의 행정 정보로부터 추출된 특징 값을 입력 데이터로 적용하고, 상기 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값을 출력 데이터로 적용하는 지도 학습(supervised learning) 방식을 통해 트레이닝된 모델일 수 있다.
본 개시의 일 실시예에서, 상기 코스의 행정 정보는, 상기 코스를 구성하는 행정에 포함되는 복수의 동작들, 상기 복수의 동작들의 수행 순서, 및 상기 복수의 동작들의 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
본 개시의 일 실시예에서, 상기 적어도 하나의 프로세서는 상기 기존 가전기기에 의해 수행 가능한 코스에 따른 제1 행정 정보와 상기 가전기기에 의해 수행 가능한 코스에 따른 제2 행정 정보 간의 유사도에 기초하여, 상기 제1 행정 정보와 상기 제2 행정 정보 간의 매핑 관계를 획득하고, 상기 획득된 매핑 관계에 기초하여, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환할 수 있다.
본 개시의 일 실시예에서, 상기 적어도 하나의 프로세서는 상기 통신 인터페이스를 통해 상기 가전기기로부터 사용 시간, 사용 날짜, 요일, 외부 온도, 습도, 및 미세먼지 중 적어도 하나에 관한 정보를 포함하는 사용 환경 정보를 획득하고, 상기 사용 환경 정보로부터 특징 값을 추출하고, 상기 추출된 특징 값과 상기 제2 행정 이력 데이터로부터 추출된 특징 값을 이용하여 특징 벡터를 생성하고, 상기 특징 벡터를 상기 제1 인공지능 모델에 입력 데이터로 적용하고, 상기 제1 인공지능 모델을 통한 추론을 수행함으로써 상기 가전기기의 추천 코스를 나타내는 라벨 값을 획득할 수 있다.
본 개시의 일 실시예에서, 상기 적어도 하나의 프로세서는 상기 제1 행정 이력 데이터로부터 추출된 특징 값을 이용하여 제1 특징 벡터를 생성하고, 상기 제1 특징 벡터를 상기 제2 행정 이력 데이터에 대응되는 제2 특징 벡터로 변환하고, 상기 제2 특징 벡터 및 상기 가전기기의 사용 환경 정보로부터 추출된 제3 특징 벡터를 상기 제1 인공지능 모델에 입력 데이터로 적용하고, 상기 제1 인공지능 모델을 통한 추론을 수행함으로써 상기 가전기기의 추천 코스를 나타내는 라벨 값을 획득할 수 있다.
상술한 기술적 과제를 해결하기 위하여, 본 개시의 다른 실시예는 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
본 개시는, 다음의 자세한 설명과 그에 수반되는 도면들의 결합으로 쉽게 이해될 수 있으며, 참조 번호(reference numerals)들은 구조적 구성요소(structural elements)를 의미한다.
도 1은 본 개시의 일 실시예에 따른 서버, 기존 가전기기, 및 신규 가전기기의 일부 구성을 도시한 도면이다.
도 2는 본 개시의 일 실시예에 따른 서버의 구성 요소를 도시한 블록도이다.
도 3은 본 개시의 일 실시예에 따른 서버에 포함되는 구성 간의 데이터 흐름과 기존 가전기기 및 신규 가전기기와 서버 간의 데이터 흐름을 설명하기 위한 도면이다.
도 4는 본 개시의 일 실시예에 따른 서버의 동작 방법을 도시한 흐름도이다.
도 5는 본 개시의 일 실시예에 따른 서버가 기존 가전기기의 행정 이력 데이터의 변환 상황을 인식하는 방법을 도시한 흐름도이다.
도 6은 본 개시의 일 실시예에 따른 서버가 코스 간 매핑 관계에 기초하여 행정 이력 데이터를 변환하는 동작을 설명하기 위한 도면이다.
도 7a는 본 개시의 일 실시예에 따른 행정 이력 데이터 변환을 위한 인공지능 변환 모델의 트레이닝 과정을 설명하기 위한 도면이다.
도 7b는 본 개시의 일 실시예에 따른 서버가 인공지능 변환 모델을 이용하여, 행정 이력 데이터를 변환하는 동작을 설명하기 위한 도면이다.
도 8은 본 개시의 일 실시예에 따른 서버가 행정 정보 간의 유사도에 기초하여 행정 이력 데이터를 변환하는 동작을 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시예에 따른 서버가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 방법을 도시한 흐름도이다.
도 10은 본 개시의 일 실시예에 따른 서버가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 동작을 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시예에 따른 서버가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 동작을 설명하기 위한 도면이다.
도 12는 본 개시의 일 실시예에 따른 서버가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 동작을 설명하기 위한 도면이다.
도 13은 본 개시의 일 실시예에 따른 서버의 동작 방법을 도시한 흐름도이다.
도 14는 본 개시의 일 실시예에 따른 가전기기의 구성 요소를 도시한 블록도이다.
도 15는 본 개시의 일 실시예에 따른 서버, 기존 가전기기, 및 신규 가전기기의 동작 및 데이터 흐름을 도시한 흐름도이다.
도 16a는 본 개시의 일 실시예에 따른 세탁기가 추천 코스 및 추천 코스의 설정값을 나타내는 UI(User Interface)를 디스플레이하는 동작을 도시한 도면이다.
도 16b는 본 개시의 일 실시예에 따른 의류 관리기가 추천 코스를 나타내는 UI를 디스플레이하는 동작을 도시한 도면이다.
본 명세서의 실시예들에서 사용되는 용어는 본 개시의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 실시예의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다.
본 개시 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 본 명세서에 기재된 "...부", "...모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
본 개시에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 시스템"이라는 표현은, 그 시스템이 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
또한, 본 개시에서 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
본 개시에서 '인공지능(Artificial Intelligence; AI) 서비스'는 서버 또는 가전기기가 인공지능 기술(예를 들어, 기계 학습 모델(Machine Learning), 인공 신경망 모델(Artificial Neural Network; ANN), 심층 신경망 모델(Deep Neural Network), 강화 학습(Reinforcement Learning), 의사 결정 트리 학습, 분류기 모델(classification model)을 이용하여 입력 데이터에 관한 추론 결과를 제공하는 기능 및/또는 동작을 의미한다. 본 개시의 일 실시예에서, '입력 데이터'는 행정 이력 데이터, 사용 환경 정보, 또는 이들의 조합 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시예에서, 인공지능 서비스는 서버에 의해 가전기기에 제공될 수 있다. 그러나, 이에 한정되는 것은 아니고, 다른 실시예에서, 인공지능 서비스는 가전기기에 의해 온 디바이스(On-device) 방식으로 제공될 수도 있다.
본 개시에서 '행정(cycle)'은 가전기기의 전원이 오프(off) 상태에서 온(on) 상태로 전환된 이후 복수의 동작들이 기 설정된 순서대로 수행되고, 종료되는 일련의 과정을 의미한다. 예를 들어, 세탁 행정은 세탁기의 전원이 켜진 이후, 세탁, 헹굼, 탈수 동작이 순서대로 수행되고, 종료되는 일련의 과정을 나타낸다. 다른 예를 들어, 건조 행정은 건조기의 전원이 켜진 이후, 드럼 가열, 공기 흐름 제어, 회전 동작이 순서대로 수행되고, 종료되는 일련의 과정을 나타낸다.
본 개시에서, '행정 기반 가전기기'는 행정을 수행하도록 구성되는 가전기기를 의미한다. 행정 기반 가전기기는 예를 들어, 세탁기, 의류 건조기, 의류 관리기(예를 들어, 에어드레서), 또는 신발 관리기 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
본 개시에서, '행정 이력 데이터'는 행정이 수행된 이력에 관한 정보를 의미한다. 본 개시의 일 실시예에서, 행정 이력 데이터는 가전기기에 의해 사용된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스에 포함되는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
본 개시에서, '코스(course)'는 행정을 구성하는 복수의 동작들, 복수의 동작들의 수행 순서, 및 복수의 동작들에 관한 설정값에 관하여 미리 정해놓은 행정 단위를 나타낸다. 본 개시의 일 실시예에서, 코스는 사용 환경 정보(예를 들어, 시간, 날짜, 요일, 외부 온도, 습도, 또는 미세먼지 등), 관리 대상의 종류(예를 들어, 세탁 코스의 경우 옷감, 이불, 신발, 아웃 도어), 관리 방법(예를 들어, 세탁 코스의 경우, 표준, 삶음, 강력, 헹굼 단독, 탈수 단독)에 따라 분류될 수 있다. 예를 들어, 세탁 코스는 표준 코스, 쾌속 세탁 코스, 삶음 세탁 코스, 초강력 세탁 코스, 절약 세탁 코스, 울/란제리 세탁 코스, 이불 코스, 신발 코스, 흐린날 세탁 코스, 미세먼지 코스, 또는 AI 맞춤 코스 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.
이하에서는 도면을 참조하여 본 개시의 실시예들을 상세하게 설명한다.
도 1은 본 개시의 일 실시예에 따른 서버(100), 기존 가전기기(200), 및 신규 가전기기(300)의 일부 구성을 도시한 도면이다.
도 1을 참조하면, 서버(100)는 인공지능 모델(132), 데이터 변환 모듈(134), 및 행정 이력 데이터 저장부(135)를 포함할 수 있다. 도 1에서 서버(100)는, 서버(100)의 기능 및/또는 동작들을 설명하기 위한 구성만을 포함하도록 도시되었으며, 서버(100)가 포함하는 구성 요소가 도 1에 도시된 바와 같이 한정되는 것은 아니다.
기존 가전기기(200)는 행정 이력 데이터(10)를 서버(100)에 전송할 수 있다. 기존 가전기기(200)는 복수의 동작들을 기 설정된 순서대로 수행하는 행정 기반 가전기기일 수 있다. 일 실시예에서, 기존 가전기기(200)는 세탁기일 수 있다. 그러나, 이에 한정되는 것은 아니고, 기존 가전기기(200)는 건조기, 의류 관리기(예를 들어, 에어드레서), 또는 신발 관리기일 수 있다. 기존 가전기기(200)는 신규 가전기기(300)와 대비되는 가전기기로서, 행정 이력 데이터가 임계값 이상으로 누적된 가전기기일 수 있다. 일 실시예에서, 기존 가전기기(200)는 IoT 서버 또는 서버(100)에 기기가 등록된 기간이 21일 이상이고, 사용자에 의해 행정(예를 들어, 세탁 행정)이 수행된 이력이 3회 이상인 가전기기일 수 있다. IoT 서버(Internet of Things Server)는, 적어도 하나의 가전기기에 관한 디바이스 정보를 획득하고, 저장하고, 관리하는 서버이다. 기존 가전기기(200)는 수행된 매 행정에 관한 행정 이력 데이터(10)를 서버(100)에 전송할 수 있다. 행정 이력 데이터(10)는 예를 들어, 기존 가전기기(200)에 의해 사용된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스에 포함되는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
서버(100)는, 서버(100) 또는 IoT 서버에 등록된 적어도 하나의 가전기기의 행정 이력 데이터를 누적하여 행정 이력 데이터 저장부(135)에 저장할 수 있다. 예를 들어, 서버(100)는, 기존 가전기기(200)로부터 수신된 행정 이력 데이터(10)를 누적하여 행정 이력 데이터 저장부(135)에 저장할 수 있다.
가전기기(300)는 신규로 구입하여 기존 가전기기(200)를 대체하거나, 또는 기존 가전기기(200)에 추가하는 기기로서 신규 가전기기(300)로 표현될 수 있다. 가전기기(300)는 기존 가전기기(200)와 동일하게 행정 기반 가전기기일 수 있다. 일 실시예에서, 가전기기(300)는 디바이스 등록 기간이 21일 미만이고, 사용자에 의해 행정이 수행된 이력이 3회 미만인 신규 기기일 수 있다.
일 실시예에서, 가전기기(300)는 기존 가전기기(200)와 동일한 기능 및/또는 동작을 수행하고, 기존 가전기기(200)와 동일한 디바이스 타입(type)의 가전기기일 수 있다. 예를 들어, 기존 가전기기(200)가 세탁기인 경우, 가전기기(300)는 세탁기이고, 기존 가전기기(200)가 의류 건조기인 경우, 가전기기(300)도 의류 건조기일 수 있다.
일 실시예에서, 가전기기(300)는 기존 가전기기(200)와 동일한 사용자 계정(예를 들어, user id)을 통해 IoT 서버 또는 서버(100)에 등록된 기기일 수 있다.
일 실시예에서, 가전기기(300)는 기존 가전기기(200)를 대체하여, 기존 가전기기(200)의 위치와 동일한 위치에 설치되거나, 또는 기존 가전기기(200)가 설치된 위치와 인접한 위치에 설치될 수 있다.
가전기기(300)는 코스 추천 서비스를 요청하는 요청 신호를 서버(100)에 전송할 수 있다. '코스 추천 서비스'는 서버(100)가 행정 이력 데이터 및 사용 환경 정보(30) 중 적어도 하나에 기초하여, 인공지능 모델(132)을 이용한 추론을 통해 사용자가 사용할 것으로 예측되는 코스에 관한 정보를 제공하는 서비스를 의미한다. 가전기기(300)는 예를 들어, 유선 랜, 무선 랜(Wireless LAN), 와이파이(Wi-Fi), 블루투스(Bluetooth), 지그비(zigbee), WFD(Wi-Fi Direct), BLE (Bluetooth Low Energy), 와이브로(Wireless Broadband Internet, Wibro), 와이맥스(World Interoperability for Microwave Access, WiMAX), SWAP(Shared Wireless Access Protocol), 와이기그(Wireless Gigabit Allicance, WiGig) 및 RF 통신 중 적어도 하나의 데이터 통신 네트워크를 이용하여 서버(100)와 연결되고, 서버(100)에 코스 추천 서비스 요청 신호를 전송할 수 있다.
서버(100)는 가전기기(300)로부터 코스 추천 서비스 요청 신호를 수신하면, 가전기기(300)의 디바이스 등록 정보 및 사용 이력 정보에 기초하여, 가전기기(300)가 신규 기기인지 여부를 식별할 수 있다. 서버(100)는, 가전기기(300)가 신규 기기인 경우, 가전기기(300)의 디바이스 타입(type) 및 가전기기(300)가 설치된 위치 정보에 기초하여, 가전기기(300)에 대응되는 기존 가전기기(200)를 식별할 수 있다.
서버(100)는 데이터 변환 모듈(134)을 이용하여 행정 이력 데이터 저장부(135)에 저장되어 있는 기존 가전기기(200)의 행정 이력 데이터(10)를 가전기기(300)에 대응되는 행정 이력 데이터(20)로 변환할 수 있다. 데이터 변환 모듈(134)은 기존 가전기기(200)의 행정 이력 데이터(10)에 포함되는 기존 가전기기(200)에 의해 사용된 코스 명칭 및 코스에 포함되는 복수의 동작들에 관한 설정값을 가전기기(300)에 의해 수행 가능한 코스 명칭 및 설정값으로 각각 변환하도록 구성된 모듈이다.
일 실시예에서, 데이터 변환 모듈(134)은 코스 간 기 설정된 매핑 관계에 기초하여, 기존 가전기기(200)의 행정 이력 데이터(10)를 가전기기(300)에 대응되는 행정 이력 데이터(20)로 변환할 수 있다. 다른 실시예에서, 데이터 변환 모듈(134)은 인공지능 변환 모델을 이용하여 기존 가전기기(200)의 행정 이력 데이터(10)를 가전기기(300)에 대응되는 행정 이력 데이터(20)로 변환할 수 있다. 다른 실시예에서, 데이터 변환 모듈(134)은 코스를 구성하는 행정 정보 간의 유사도에 기초하여, 기존 가전기기(200)의 행정 이력 데이터(10)를 가전기기(300)에 대응되는 행정 이력 데이터(20)로 변환할 수 있다.
서버(100)는 변환된 행정 이력 데이터(20) 및 사용 환경 정보(30)를 인공지능 모델(132)에 입력 데이터로 적용하고, 인공지능 모델(132)을 통한 추론을 수행함으로써, 사용자가 수행할 것으로 예측되는 추천 코스(40)에 관한 정보를 획득할 수 있다. 인공지능 모델(132)은 행정 이력 데이터 및 사용 환경 정보를 입력 데이터로 적용하고, 사용자가 사용하였던 코스에 관한 라벨값(label)을 출력 정답값(예를 들어, ground-truth)로 적용하는 지도 학습(supervised learning)을 통해 트레이닝된(trained) 기계 학습 모델(machine learning)일 수 있다. 인공지능 모델(132)은 예를 들어, 의사 결정 트리(Decision Tree), 랜덤 포레스트(random forest), 나이브 베이즈 분류 모델(Naive Bayes classification network), 서포트 벡터 머신(support vector machine; SVM), 및 인공 신경망(Artificial Neural Network) 중 적어도 하나의 모델로 구성될 수 있으나, 이에 한정되는 것은 아니다.
서버(100)는 가전기기(300)로부터 사용 환경 정보(30)를 수신하거나, 또는 가전기기(300)의 사용 환경 정보(30)를 외부 서버로부터 획득할 수 있다. 사용 환경 정보(30)는 가전기기(300)가 사용되고 있는 환경 또는 상황에 관한 정보로서, 예를 들어, 사용 시간, 사용 날짜, 요일, 외부 온도, 습도, 및 미세먼지 중 적어도 하나에 관한 정보를 포함할 수 있다.
서버(100)는 획득된 추천 코스(40)에 관한 정보를 가전기기(300)에 전송할 수 있다.
가전기기(300)는 서버(100)로부터 수신된 추천 코스(40)에 관한 정보를 이용하여, 코스 추천 서비스를 제공할 수 있다. 가전기기(300)는 디스플레이부(340)를 포함하고, 디스플레이부(340) 상에 서버(100)로부터 수신된 추천 코스(40)에 관한 정보를 나타내는 UI(User Interface)(342, 344, 346)를 디스플레이할 수 있다. 일 실시예에서, 가전기기(300)는 추천 코스를 나타내는 제1 UI(342), 코스 추천 이유를 나타내는 제2 UI(344), 및 추천 코스의 동작 별 설정값을 나타내는 제3 UI(346)를 디스플레이할 수 있다.
제2 UI(344)는 코스 추천 이유를 문자 또는 숫자로 나타내는 UI이다. 서버(100)는 인공지능 모델(132)을 통한 추천 코스(40) 예측 과정에서, 인공지능 모델(132) 내의 가중치(weight) 또는 편향(bias) 값의 변화에 영향을 준 특징 값을 식별하고, 식별된 특징 값에 관한 정보를 가전기기(300)에 전송할 수 있다. 가전기기(300)는 서버(100)로부터 수신된 특징 값에 관한 정보에 기초하여, 코스 추천 이유에 관한 정보를 획득하고, 코스 추천 이유에 관한 정보를 나타내는 제2 UI(344)를 디스플레이할 수 있다. 도 1에 도시된 실시예에서, 서버(100)로부터 수신된 특징 값이 사용 시간에 관한 특징 값인 경우, 제2 UI(344)는 "오전에 자주 사용"이라는 문자를 통해 코스 추천 이유를 나타낼 수 있다.
제3 UI(346)는 추천 코스를 구성하는 복수의 동작들에 관한 설정값을 문자, 숫자, 또는 이미지로 표시하는 UI이다. 도 1에 도시된 실시예에서, 추천 코스가 이불 코스인 경우, 제3 UI(346)는 이불 코스를 구성하는 세탁, 헹굼, 및 탈수 동작들 각각에 대하여 설정된 설정값(예를 들어, 세탁 온도는 40˚, 헹굼은 3회, 탈수 강도는 3)을 나타낼 수 있다.
세탁기, 의류 건조기, 또는 의류 관리기와 같은 행정 기반 가전기기의 경우, 인공지능 기술을 이용하여 코스 또는 코스의 설정값 추천 서비스를 제공하기 위해서는 일정량 이상의 행정 이력 데이터가 축적되어야 한다. 일반적으로, 행정 기반 가전기기는 행정의 사용 이력을 누적하는데 오랜 기간이 소요된다. 행정 기반의 신규 가전기기를 구입하여 기존의 가전기기를 대체하거나, 또는 신규 가전기기를 기존의 가전기기에 추가하는 경우, 신규 가전기기에는 행정 이력 데이터가 누적되어 있지 않기 때문에, 서버(100)가 인공지능 코스 추천 서비스를 신규 가전기기에 제공하기 위해서는 신규 가전기기의 행정 이력 데이터를 일정 시간 또는 일정 횟수 이상 누적하여 저장하여야 한다. 신규 가전기기가 일정 시간 또는 일정 횟수 이상의 행정을 수행하여 행정 이력 데이터를 축적할 때까지 기간이 오래 걸리고, 신규 가전기기의 행정 이력 데이터가 축적될 동안은 신규 가전기기를 통해 코스 추천 서비스가 정상적으로 동작되지 않으므로, 사용자가 불편할 수 있다. 또한, 신규 가전기기가 기존의 가전기기와 수행할 수 있는 기능, 코스, 또는 설정값이 동일하지 않은 경우, 기존 가전기기의 행정 이력 데이터를 그대로 활용할 수 없는 문제점이 있다.
본 개시의 일 실시예에 따른 서버(100)는 신규 가전기기(300)로부터 코스 추천 서비스 요청 신호가 수신되는 경우, 가전기기(300)와 동일한 타입(type)의 기존 가전기기(200)를 식별하고, 식별된 기존 가전기기(200)의 행정 이력 데이터(10)를 가전기기(300)에 대응되는 행정 이력 데이터(20)로 변환하고, 변환된 행정 이력 데이터(20)를 이용하여 추천 코스(40)에 관한 정보를 획득하고, 획득된 추천 코스(40)에 관한 정보를 가전기기(300)에 제공할 수 있다. 본 개시의 일 실시예에 따른 서버(100)는 사용자가 가전기기(300)를 새로 구입하여 기존 가전기기(200)를 대체하는 경우 또는 기존 가전기기(200)에 신규 가전기기(300)를 추가하는 경우, 기존 가전기기(200)에서의 행정의 사용 이력에 따른 코스 추천 서비스를 신규 가전기기(300)에 제공할 수 있고, 이를 통해 기기의 변경에도 불구하고 신규 가전기기(300)는 사용자에게 연속성(continuity) 있는 서비스를 바로 제공할 수 있다. 또한, 본 개시의 일 실시예에 따르면, 신규 가전기기(300)에 대한 행정 이력 데이터를 누적하여 저장하지 않더라도, 기존 가전기기(200)의 행정 사용 이력에 기초한 추천 코스(40)에 관한 정보가 신규 가전기기(300)에 제공되므로, 사용자 편의성이 향상될 수 있다.
도 2는 본 개시의 일 실시예에 따른 서버(100)의 구성 요소를 도시한 블록도이다.
서버(100)는 가전기기(300, 도 1 참조)로부터 추천 서비스 요청 신호가 수신된 경우, 가전기기(300)가 신규 기기인지 여부를 식별하고, 가전기기(300)가 신규 기기인 경우, 기존 가전기기의 제1 행정 이력 데이터를 신규 가전기기(300)에 대응되는 제2 행정 이력 데이터로 변환하며, 변환된 제2 행정 이력 데이터를 이용하여 신규 가전기기(300)에 인공지능 코스 추천 서비스를 제공하도록 구성된다.
도 2를 참조하면, 서버(100)는 통신 인터페이스(110), 프로세서(120), 및 메모리(130)를 포함할 수 있다.
통신 인터페이스(110)는 유선 또는 무선 통신 네트워크를 통해 적어도 하나의 가전기기와 데이터 통신을 수행하도록 구성된다. 통신 인터페이스(110)는 예를 들어, 유선 랜, 무선 랜(Wireless LAN), 와이파이(Wi-Fi), 블루투스(Bluetooth), 지그비(zigbee), WFD(Wi-Fi Direct), BLE (Bluetooth Low Energy), 와이브로(Wireless Broadband Internet, Wibro), 와이맥스(World Interoperability for Microwave Access, WiMAX), SWAP(Shared Wireless Access Protocol), 와이기그(Wireless Gigabit Allicance, WiGig) 및 RF 통신 중 적어도 하나의 데이터 통신 네트워크를 이용하여 가전기기와 데이터 송수신을 수행할 수 있다.
일 실시예에서, 통신 인터페이스(110)는 프로세서(120)의 제어에 의해, 기존 가전기기(200, 도 1 참조)로부터 제1 행정 이력 데이터를 수신하거나, 또는 신규 가전기기(300)로부터 코스 추천 서비스의 요청 신호를 수신할 수 있다.
일 실시예에서, 통신 인터페이스(110)는 프로세서(120)의 제어에 의해, 추천 코스에 관한 정보를 신규 가전기기에 전송할 수 있다.
프로세서(120)는 메모리(130)에 저장된 프로그램의 하나 이상의 명령어들(instructions)을 실행할 수 있다. 프로세서(120)는 산술, 로직 및 입출력 연산과 시그널 프로세싱을 수행하는 하드웨어 구성 요소로 구성될 수 있다. 프로세서(120)는 예를 들어, 중앙 처리 장치(Central Processing Unit), 마이크로 프로세서(microprocessor), 그래픽 프로세서(Graphic Processing Unit), ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), 및 FPGAs(Field Programmable Gate Arrays) 중 적어도 하나로 구성될 수 있으나, 이에 한정되는 것은 아니다.
도 2에는 프로세서(120)가 하나의 엘리먼트로 도시되었으나, 이에 한정되는 것은 아니다. 일 실시예에서, 프로세서(120)는 하나 또는 하나 이상의 복수 개로 구성될 수 있다.
일 실시예에서, 프로세서(120)는 인공 지능(Artificial Intelligence; AI) 학습을 수행하는 AI 프로세서를 포함할 수 있다. 이 경우, AI 프로세서는 인공지능 모델(132)을 이용하는 추론을 수행할 수 있다. AI 프로세서는, 인공 지능(AI)을 위한 전용 하드웨어 칩 형태(예를 들어, NPU(Neural Processing Unit))로 제작될 수도 있고, 또는 기존의 범용 프로세서(예를 들어, CPU 또는 application processor) 또는 그래픽 전용 프로세서(예를 들어, GPU)의 일부로 제작되어 서버(100)에 탑재될 수도 있다.
메모리(130)는 예를 들어, 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 또는 광 디스크 중 적어도 하나의 타입의 저장매체로 구성될 수 있다.
메모리(130)에는 프로세서(120)가 판독할 수 있는 명령어들, 알고리즘(algorithm), 데이터 구조, 프로그램 코드(program code), 및 애플리케이션 프로그램(application program) 중 적어도 하나가 저장될 수 있다. 메모리(130)에 저장되는 명령어들, 알고리즘, 데이터 구조, 및 프로그램 코드는 예를 들어, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 
메모리(130)는 코스 추천 서비스 모듈(131), 신규 기기 판단 모듈(133), 데이터 변환 모듈(134), 및 행정 이력 데이터 저장부(135)를 포함할 수 있다. 메모리(130)에 포함되는 코스 추천 서비스 모듈(131), 신규 기기 판단 모듈(133), 및 데이터 변환 모듈(134)은 프로세서(120)에 의해 수행되는 기능이나 동작을 처리하는 단위를 의미하고, 이는 명령어들 또는 프로그램 코드와 같은 소프트웨어로 구현될 수 있다.
이하의 실시예에서, 프로세서(120)는 메모리(130)에 저장된 프로그램의 명령어들 또는 프로그램 코드들을 실행함으로써 구현될 수 있다.
코스 추천 서비스 모듈(131)은 가전기기로부터 수신된 코스 추천 서비스 요청 신호에 응답하여, 추천 코스 정보를 획득하고, 획득된 추천 코스 정보를 출력하도록 구성되는 소프트웨어 모듈이다. 일 실시예에서, 코스 추천 서비스 모듈(131)은 인공지능 모델(132)을 포함할 수 있다.
인공지능 모델(132)은 적어도 하나의 가전기기의 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나를 입력 데이터로 적용하고, 사용자가 사용하였던 코스에 관한 라벨값(label)을 출력 정답값(예를 들어, ground-truth)로 적용하는 지도 학습(supervised learning)을 통해 트레이닝된(trained) 기계 학습 모델(machine learning)일 수 있다. 인공지능 모델(132)은 예를 들어, 의사 결정 트리(Decision Tree), 랜덤 포레스트(random forest), 나이브 베이즈 분류 모델(Naive Bayes classification network), 서포트 벡터 머신(support vector machine; SVM), 및 인공 신경망(Artificial Neural Network) 중 적어도 하나의 모델로 구성될 수 있으나, 이에 한정되는 것은 아니다. 일 실시예에서, 인공지능 모델(132)은 복수의 의사 결정 트리를 결합한 구조의 앙상블 모델(Ensemble)일 수 있다.
일 실시예에서, 코스 추천 서비스 모듈(131)은 기존 가전기기(200)의 제1 행정 이력 데이터를 인공지능 모델(132)에 입력 데이터로 적용하고, 인공지능 모델(132)을 이용한 추론을 수행할 수 있다. 프로세서(120)는 코스 추천 서비스 모듈(131)에 관한 명령어들 또는 프로그램 코드를 실행함으로써, 제1 행정 이력 데이터로부터 사용자가 기존 가전기기(200)를 통해 사용할 것으로 예측되는 코스에 관한 정보를 획득할 수 있다.
일 실시예에서, 코스 추천 서비스 모듈(131)은 데이터 변환 모듈(134)에 의해 신규 가전기기(300)에 대응되도록 변환된 제2 행정 이력 데이터를 인공지능 모델(132)에 입력 데이터로 적용하고, 인공지능 모델(132)을 이용한 추론을 수행할 수 있다. 프로세서(120)는 코스 추천 서비스 모듈(131)에 관한 명령어들 또는 프로그램 코드를 실행함으로써, 제2 행정 이력 데이터로부터 사용자가 신규 가전기기(300)를 통해 사용할 것으로 예측되는 코스에 관한 정보를 획득할 수 있다.
코스 추천 서비스 모듈(131)은 가전기기(300)로부터 코스 추천 서비스 요청 신호를 수신하는 경우, 가전기기(300)의 사용 환경 정보를 수신하도록 구성될 수도 있다. 사용 환경 정보는 가전기기(300)가 사용되고 있는 환경 또는 상황에 관한 정보로서, 예를 들어, 사용 시간, 사용 날짜, 요일, 외부 온도, 습도, 및 미세먼지 중 적어도 하나에 관한 정보를 포함할 수 있다. 일 실시예에서, 프로세서(120)는 코스 추천 서비스 모듈(131)에 관한 명령어들 또는 프로그램 코드를 실행함으로써, 가전기기(300) 또는 외부 서버(예컨대, 날씨 정보 제공 서버)로부터 사용 환경 정보를 수신하도록 통신 인터페이스(110)를 제어할 수 있다. 프로세서(120)는 행정 이력 데이터뿐만 아니라, 사용 환경 정보를 인공지능 모델(132)에 입력 데이터로 적용하는 추론을 수행하여, 사용자가 가전기기(300)를 통해 사용할 것으로 예측되는 코스에 관한 정보를 획득할 수 있다. 프로세서(120)가 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나를 입력 데이터로 적용하여 인공지능 모델(132)을 통한 추론을 수행함으로써, 추천 코스에 관한 정보를 획득하는 구체적인 실시예에 대해서는 도 9 내지 도 12에서 상세하게 설명하기로 한다.
신규 기기 판단 모듈(133)은, 코스 추천 서비스의 요청 신호를 전송한 가전기기(300)가 신규 기기인지 여부를 판단하도록 구성되는 소프트웨어 모듈이다. 일 실시예에서, 신규 기기 판단 모듈(133)은 가전기기(300)의 디바이스 등록 정보 및 사용 이력 정보에 기초하여, 가전기기(300)가 신규 기기인지 여부를 판단할 수 있다. 프로세서(120)는 신규 기기 판단 모듈(133)에 관한 명령어들 또는 프로그램 코드를 실행함으로써, 코스 추천 서비스의 요청 신호를 전송한 가전기기(300)가 신규 기기인지 여부를 판단할 수 있다. 일 실시예에서, 프로세서(120)는 통신 인터페이스(110)를 통해 IoT 서버로부터 가전기기(300)의 디바이스 등록 정보를 획득하고, 획득된 디바이스 등록 정보로부터 가전기기(300)가 IoT 서버에 등록된 기간이 기 설정된 임계 기간 이내인지 여부를 식별하고, 식별 결과에 기초하여 가전기기(300)가 신규 기기인지 여부를 판단할 수 있다. 여기서, '등록 기간'은 가전기기(300)로부터 코스 추천 서비스 요청 신호가 수신된 일자와 가전기기(300)가 IoT 서버에 등록된 일자 사이의 기간을 의미한다. 일 실시예에서, 프로세서(120)는 가전기기(300)의 행정 사용 횟수가 기 설정된 임계 횟수 미만인 경우, 가전기기(300)가 신규 기기임을 판단할 수 있다. 예를 들어, 프로세서(120)는 가전기기(300)의 등록 기간이 21일 이내이고, 행정의 사용 횟수가 3회 미만인 경우, 가전기기(300)를 신규 기기로 판단할 수 있다. 이하에서는, 신규 기기로 판단된 가전기기(300)는, 기존 가전기기(200)와 구별하기 위하여, '신규 가전기기(300)'로 정의될 수 있다.
가전기기(300)가 신규 기기로 판단된 경우, 프로세서(120)는 신규 가전기기(300)의 등록 정보 및 사용자 식별 정보(예를 들어, user id)에 기초하여, 신규 가전기기(300)에 대응되는 기존 가전기기(200)를 식별할 수 있다. 일 실시예에서, 프로세서(120)는 IoT 서버에 신규 가전기기(300)가 등록된 사용자 식별 정보에 신규 가전기기(300)와 함께 등록되어 있는 적어도 하나의 가전기기 중 신규 가전기기(300)와 동일한 타입(type)이고, 신규 가전기기(300)와 동일한 위치 또는 인접한 위치에 설치된 기존 가전기기(200)를 식별할 수 있다. 신규 가전기기(300)의 타입 및 설치 위치에 관한 정보는, 신규 가전기기(300)의 등록 정보로부터 획득될 수 있다. 예를 들어, 신규 가전기기(300)가 최신 모델의 세탁기인 경우, 기존 가전기기(200)는 최신 모델의 세탁기의 설치 위치에 이전에 설치되었던 구형 모델의 세탁기일 수 있다.
데이터 변환 모듈(134)은 기존 가전기기(200)에 관한 제1 행정 이력 데이터를 신규 가전기기(300)에 대응되는 제2 행정 이력 데이터로 변환하도록 구성된 소프트웨어 모듈이다. 제1 행정 이력 데이터는 행정 이력 데이터 저장부(135)에 저장되어 있을 수 있다. 제1 행정 이력 데이터는, 기존 가전기기(200)에 의해 수행된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스를 구성하는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다. 서버(100)는 기존 가전기기(200)에 의해 행정이 수행되는 경우, 통신 인터페이스(110)를 통해 기존 가전기기(200)로부터 제1 행정 이력 데이터를 수신하고, 수신된 제1 행정 이력 데이터를 행정 이력 데이터 저장부(135)에 저장할 수 있다. 서버(100)는 기존 가전기기(200)로부터 행정이 수행되고 완료된 매 시점에서 제1 행정 이력 데이터를 수신하고, 수신된 제1 행정 이력 데이터를 누적하여 저장할 수 있다.
데이터 변환 모듈(134)은 기존 가전기기(200)의 제1 행정 이력 데이터에 포함되는 기존 가전기기(200)에 의해 사용된 코스 명칭 및 코스에 포함되는 복수의 동작들에 관한 설정값을 신규 가전기기에 의해 수행 가능한 코스 명칭 및 설정값으로 각각 변환할 수 있다. 일 실시예에서, 프로세서(120)는 데이터 변환 모듈(134)에 관한 명령어들 또는 프로그램 코드를 실행함으로써, 기존 가전기기(200)의 제1 행정 이력 데이터를 신규 가전기기(300)에 대응되는 제2 행정 이력 데이터로 변환할 수 있다.
일 실시예에서, 프로세서(120)는 기존 가전기기(200)의 코스와 신규 가전기기(300)의 코스 간의 기 설정된 코스 별 매핑 관계에 기초하여, 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환할 수 있다. 코스 별 매핑 관계는, 기존 가전기기(200)에 의해 수행 가능한 적어도 하나의 제1 코스의 식별 정보 및 제1 코스의 코스 명칭과 신규 가전기기(300)에 의해 수행 가능한 적어도 하나의 제2 코스의 식별 정보 및 제2 코스의 코스 명칭에 관하여 미리 설정된 페어링(pairing) 관계를 의미한다. 코스 별 매핑 관계는 매핑 테이블(mapping table) 형태로 데이터 변환 모듈(134)에 저장될 수 있다. 프로세서(120)는 데이터 변환 모듈(134)로부터 매핑 테이블을 로드(load)하여 판독함으로써, 기존 가전기기(200)와 신규 가전기기(300) 사이의 코스 별 매핑 관계를 식별할 수 있다. 그러나, 이에 한정되는 것은 아니고, 매핑 테이블은 프로세서(120)에 의해 접근 가능한 메모리(130) 내의 저장 공간에 저장되어 있을 수도 있다. 프로세서(120)가 코스 별 매핑 관계에 기초하여 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환하는 구체적인 실시예에 대해서는 도 6에서 상세하게 설명하기로 한다.
일 실시예에서, 프로세서(120)는 인공지능 변환 모델에 제1 행정 이력 데이터를 입력 데이터로 적용하는 추론을 통해, 제1 행정 이력 데이터를 신규 가전기기(300)에 대응되는 제2 행정 이력 데이터로 변환할 수 있다. 인공지능 변환 모델은 기존 가전기기(200)에 의해 수행 가능한 코스 및 코스의 행정 정보로부터 추출된 특징 값을 입력 데이터로 적용하고, 신규 가전기기(300)에 의해 수행 가능한 코스를 나타내는 라벨 값을 출력 정답값(예를 들어, ground-truth)으로 적용하는 지도 학습(supervised learning) 방식을 통해 트레이닝된(trained) 모델일 수 있다. 여기서, 입력 데이터에 포함되는 코스의 '행정 정보'는, 코스를 구성하는 행정에 포함되는 복수의 동작들, 복수의 동작들의 수행 순서, 및 복수의 동작들의 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다. 예를 들어, 기존 가전기기(200)가 '세탁기'인 경우, 표준 세탁 코스의 행정 정보는 표준 세탁을 구성하는 세탁 행정, 헹굼 행정, 및 탈수 행정 각각의 행정에 포함되는 일련의 동작들과 복수의 동작들에 관한 설정값을 포함할 수 있다. 설정값은 예를 들어, 세탁 행정의 세탁 온도, 헹굼 행정의 헹굼 횟수, 탈수 행정의 탈수 강도에 관하여 설정된 옵션 값일 수 있다.
인공지능 변환 모델은 예를 들어, 의사 결정 트리(Decision Tree), 랜덤 포레스트(random forest), 나이브 베이즈 분류 모델(Naive Bayes classification network), 서포트 벡터 머신(support vector machine; SVM), 및 인공 신경망(Artificial Neural Network) 중 적어도 하나의 모델로 구성될 수 있으나, 이에 한정되는 것은 아니다. 일 실시예에서, 인공지능 변환 모델은 컨볼루션 신경망 모델(convolution neural network; CNN) 또는 순환 신경망 모델(recurrent neural network; RNN)과 같은 심층 신경망 모델(Deep Neural Network; DNN)로 구성될 수 있다.
일 실시예에서, 인공지능 변환 모델은 데이터 변환 모듈(134) 내에 포함될 수 있다. 그러나, 이에 한정되는 것은 아니고, 다른 실시예에서 인공지능 변환 모델은 프로세서(120)에 의해 접근 가능한 메모리(130) 내의 저장 공간에 저장되어 있을 수도 있다.
프로세서(120)는 기존 가전기기(200)의 제1 행정 이력 데이터로부터 적어도 하나의 특징 값을 추출하고, 추출된 적어도 하나의 특징 값을 인공지능 변환 모델에 입력 데이터로 적용하여 인공지능 변환 모델을 통한 추론을 통해 라벨 값(label)을 획득할 수 있다. 프로세서(120)는 획득된 라벨 값에 기초하여 제1 행정 이력 데이터로부터 신규 가전기기(300)에 대응되는 제2 행정 이력 데이터를 획득할 수 있다. 프로세서(120)가 인공지능 변환 모델을 이용하여 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환하는 구체적인 실시예에 대해서는 도 7a 및 도 7b에서 상세하게 설명하기로 한다.
일 실시예에서, 프로세서(120)는 기존 가전기기(200)에 의해 수행 가능한 코스에 따른 제1 행정 정보와 신규 가전기기(300)에 의해 수행 가능한 코스에 따른 제2 행정 정보 간의 유사도에 기초하여, 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환할 수 있다. 일 실시예에서, 프로세서(120)는 제1 행정 정보와 제2 행정 정보 간의 유사도를 산출하고, 산출된 유사도에 기초하여 행정 정보 간의 매핑 관계를 획득할 수 있다. 프로세서(120)는 획득된 행정 정보 간의 매핑 관계에 기초하여, 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환할 수 있다. 프로세서(120)가 제1 행정 정보와 제2 행정 정보 간의 유사도에 기초하여 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환하는 구체적인 실시예에 대해서는 도 8에서 상세하게 설명하기로 한다.
일 실시예에서, 데이터 변환 모듈(134)은 코스 추천 서비스 모듈(131)로부터 출력된 추천 코스에 관한 정보를 변환할 수도 있다. 프로세서(120)는 데이터 변환 모듈(134)에 관한 명령어들 또는 프로그램 코드를 실행함으로써, 코스 추천 서비스 모듈(131)의 인공지능 모델(132)에 의해 출력된 제1 추천 코스를 신규 가전기기(300)에 대응되는 제2 추천 코스로 변환할 수 있다. 예를 들어, 인공지능 모델(132)로부터 출력된 추천 코스가 '초강력 세탁 코스'인 경우, 프로세서(120)는 데이터 변환 모듈(134)을 이용하여, '초강력 세탁 코스'를 신규 가전기기(300)에서 수행 가능한 코스인 '강력 세탁 플러스(+) 코스'로 변환할 수 있다.
행정 이력 데이터 저장부(135)는 기존 가전기기(200)의 제1 행정 이력 데이터를 저장하는 데이터베이스이다. 일 실시예에서, 행정 이력 데이터 저장부(135)는 데이터 변환 모듈(134)에 의해 변환된 제2 행정 이력 데이터를 저장할 수 있다.
행정 이력 데이터 저장부(135)는 비휘발성 메모리로 구성될 수 있다. 비휘발성 메모리(Non-volatile memory)는 전원이 공급되지 않은 상태에서도 정보를 저장 및 유지하고, 전원이 공급되면 다시 저장된 정보를 사용할 수 있는 기억 매체를 의미한다. 비휘발성 메모리는 예를 들어, 플래시 메모리(flash memory), 하드디스크(hard disk), SSD(Solid State Drive), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 롬(Read Only Memory; ROM), 자기 디스크, 또는 광디스크 중 적어도 하나를 포함할 수 있다. 도 2에서 행정 이력 데이터 저장부(135)는 메모리(130) 내에 포함되는 구성 요소로 도시되었지만, 이에 한정되는 것은 아니다. 일 실시예에서, 행정 이력 데이터 저장부(135)는 서버(100) 내에 포함되지만 메모리(130)와는 별개의 구성 요소일 수 있다. 그러나, 이에 한정되는 것은 아니고, 행정 이력 데이터 저장부(135)는 서버(100)에 포함되지 않고, 다른 서버(예를 들어, IoT 서버) 또는 다른 디바이스(예를 들어, 가전기기)에 포함되는 메모리 형태로 구현되거나, 또는 웹 기반 저장 매체로 구현될 수도 있다.
도 3은 본 개시의 일 실시예에 따른 서버(100)에 포함되는 구성 간의 데이터 흐름과 기존 가전기기(200) 및 가전기기(300)와 서버 간의 데이터 흐름을 설명하기 위한 도면이다.
도 3을 참조하면, 서버(100)는 통신 인터페이스(110), 코스 추천 서비스 모듈(131), 신규 기기 판단 모듈(133), 데이터 변환 모듈(134), 및 행정 이력 데이터 저장부(135)를 포함할 수 있다. 코스 추천 서비스 모듈(131)은 인공지능 모델(132)을 포함할 수 있다. 도 3에 도시된 실시예는, 서버(100) 내에 포함되는 각 구성 요소들 간의 데이터 흐름을 설명하기 위하여 필요한 구성 요소들만 도시하였다. 서버(100)에 포함되는 구성 요소들이 도 3에 도시된 바와 같이 한정되는 것은 아니다. 도 3에 도시된 통신 인터페이스(110), 코스 추천 서비스 모듈(131), 신규 기기 판단 모듈(133), 데이터 변환 모듈(134), 및 행정 이력 데이터 저장부(135)는 도 2에 도시된 통신 인터페이스(110, 도 2 참조), 코스 추천 서비스 모듈(131, 도 2 참조), 신규 기기 판단 모듈(133, 도 2 참조), 데이터 변환 모듈(134, 도 2 참조), 및 행정 이력 데이터 저장부(135, 도 2 참조)과 동일하므로, 구성 요소들의 기능 및/또는 동작에 관한 중복되는 설명은 생략한다.
도 3에 도시된 구성 요소들의 동작들은 서버(100)의 프로세서(120, 도 2 참조)에 의해 수행될 수 있다. 도 3에 도시된 구성 요소들 간의 데이터 송수신은 프로세서(120)에 의해 제어될 수 있다.
단계 S301에서, 기존 가전기기(200)는 행정 이력 데이터(10)를 서버(100)에 전송한다. 기존 가전기기(200)는 사용자에 의해 수신된 입력에 따라 행정이 수행되는 경우, 행정 이력 데이터(10)를 서버(100)의 통신 인터페이스(110)에 전송할 수 있다. 단계 S301에서 기존 가전기기(200)에 의해 전송된 행정 이력 데이터(10)는, 기존 가전기기(200)에 의해 사용된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스에 포함되는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
단계 S302에서, 서버(100)는 통신 인터페이스(110)를 통해 기존 가전기기(200)로부터 수신된 기존 가전기기(200)의 행정 이력 데이터(10)를 행정 이력 데이터 저장부(135)에 저장한다. 일 실시예에서, 서버(100)는 기존 가전기기(200)로부터 행정 이력 데이터(10)가 수신되는 매 시점에서 기존 가전기기(200)의 행정 이력 데이터(10)를 행정 이력 데이터 저장부(135)에 누적하여 저장할 수 있다.
단계 S303에서, 가전기기(300)는 서버(100)의 통신 인터페이스(110)에 추천 서비스 요청 신호를 전송한다. 추천 서비스 요청 신호는 서버(100)에 저장된 행정 이력 데이터에 기초하여 사용자가 사용할 것으로 예측되는 코스에 관한 추천 정보를 제공해줄 것을 요청하는 신호이다. 가전기기(300)는, 가전기기(300)의 전원 버튼을 누르거나, 또는 코스 추천 관련 버튼을 누르는 사용자 입력을 수신함에 따라 서버(100)에 추천 서비스 요청 신호를 전송할 수 있으나, 이에 한정되는 것은 아니다. 일 실시예에서, 가전기기(300)는, 가전기기(300)와 와이파이(WiFi) 또는 블루투스(Bluetooth) 등 근거리 통신 네트워크를 통해 연결된 모바일 디바이스에 의해 실행되는 애플리케이션을 통한 제어에 의해 추천 서비스 요청 신호를 서버(100)에 전송할 수 있다.
단계 S304에서, 통신 인터페이스(110)는 추천 서비스 요청 신호를 코스 추천 서비스 모듈(131)에 제공한다.
단계 S305에서, 코스 추천 서비스 모듈(131)은 추천 서비스 요청 신호를 획득함에 따라, 가전기기(300)가 신규 기기인지를 판단하기 위한 신규 기기 판단 요청 신호를 신규 기기 판단 모듈(133)에 전송한다.
신규 기기 판단 모듈(133)은 가전기기(300)의 디바이스 등록 정보 및 사용 이력 정보에 기초하여, 가전기기(300)가 신규 기기인지 여부를 판단할 수 있다.
단계 S306에서, 신규 기기 판단 모듈(133)은 행정 이력 데이터 저장부(135)에서 가전기기(300)의 행정 이력 데이터를 확인한다.
단계 S307에서, 신규 기기 판단 모듈(133)은 행정 이력 데이터 저장부(135)로부터 가전기기(300)의 행정 이력 데이터의 확인 결과를 수신한다. 신규 기기 판단 모듈(133)은 행정 이력 데이터 저장부(135)로부터 획득한 가전기기(300)의 행정 이력 데이터의 데이터 양을 기 설정된 임계값과 비교하고, 비교 결과에 따라 가전기기(300)가 신규 기기인지 여부를 판단할 수 있다. 일 실시예에서, 신규 기기 판단 모듈(133)은 가전기기(300)의 등록 기간이 21일 이내이고, 행정 이력 데이터 저장부(135)에 저장된 행정의 사용 횟수가 임계치인 3회 미만인 경우, 가전기기(300)를 신규 기기로 판단할 수 있다.
단계 S308에서, 신규 기기 판단 모듈(133)은 신규 기기 판단 결과를 코스 추천 서비스 모듈(131)에 제공한다.
단계 S309에서, 코스 추천 서비스 모듈(131)은 신규 기기 판단 모듈(133)로부터 획득한 신규 기기 판단 결과에 따라 가전기기(300)가 신규 기기로 판단된 경우, 데이터 변환 모듈(134)에 행정 이력 데이터 변환 요청 신호를 전송한다. 행정 이력 데이터 변환 요청 신호는, 행정 이력 데이터 저장부(135)에 저장된 기존 가전기기(200)의 행정 이력 데이터(10)를 가전기기(300)에 대응되는 행정 이력 데이터로 변환할 것을 요청하는 신호이다.
단계 S310에서, 데이터 변환 모듈(134)은 행정 이력 데이터 저장부(135)에 기존 가전기기(200)의 행정 이력 데이터(10)를 요청하는 신호를 전송한다. 예를 들어, 데이터 변환 모듈(134)은 가전 기기(300)의 타입 정보, 가전 기기(300)의 설치 위치 정보에 기초하여, 가전 기기(300)에 대응하는 기존의 가전 기기(200)를 식별하고, 기존의 가전 기기(200)의 행정 이력 데이터(10)를 행정 이력 데이터 저장부(135)에 요청할 수 있다.
단계 S311에서, 행정 이력 데이터 저장부(135)는 기존 가전기기(200)의 행정 이력 데이터(10) 요청 신호에 응답하여, 기존 가전기기(200)의 행정 이력 데이터(10)를 데이터 변환 모듈(134)에 제공한다. 예를 들어, 행정 이력 데이터 저장부(135)는, 적어도 하나의 가전기기의 행정 이력 데이터 중에서 기존 가전기기(200)의 행정 이력 데이터(10)를 검색하여, 데이터 변환 모듈(134)에 제공할 수 있다. 데이터 변환 모듈(134)은 행정 이력 데이터 저장부(135)로부터 획득한 기존 가전기기(200)의 행정 이력 데이터(10)를 신규 기기로 판단된 가전기기(300)에 대응되는 행정 이력 데이터로 변환할 수 있다. 일 실시예에서, 데이터 변환 모듈(134)은 기존 가전기기(200)에 의해 수행되는 코스와 가전기기(300)에 의해 수행되는 코스 간의 기 설정된 코스 별 매핑 관계에 기초하여, 기존 가전기기(200)의 행정 이력 데이터(10)를 가전기기(300)에 대응되는 행정 이력 데이터로 변환할 수 있다. 다른 실시예에서, 데이터 변환 모듈(134)은 인공지능 변환 모델에 기존 가전기기(200)의 행정 이력 데이터(10)로부터 추출된 적어도 하나의 특징 값을 입력 데이터로 적용하는 추론을 수행함으로써, 기존 가전기기(200)의 행정 이력 데이터(10)를 가전기기(300)에 대응되는 행정 이력 데이터로 변환할 수 있다. 다른 실시예에서, 데이터 변환 모듈(134)은 기존 가전기기(200)에 의해 수행 가능한 코스에 따른 제1 행정 정보와 가전기기(300)에 의해 수행 가능한 코스에 따른 제2 행정 정보 간의 유사도에 기초하여, 기존 가전기기(200)의 행정 이력 데이터(10)를 가전기기(300)에 대응되는 행정 이력 데이터로 변환할 수 있다.
단계 S312에서, 데이터 변환 모듈(134)은 변환된 행정 이력 데이터를 코스 추천 서비스 모듈(131)에 제공한다. 코스 추천 서비스 모듈(131)은 변환된 행정 이력 데이터를 인공지능 모델(132)에 입력 데이터로 적용하고, 인공지능 모델(132)을 이용한 추론을 수행함으로써, 사용자가 가전기기(300)를 통해 사용할 것으로 예측되는 코스에 관한 정보를 획득할 수 있다.
단계 S313에서, 코스 추천 서비스 모듈(131)은 추천 코스 정보를 통신 인터페이스(110)에 제공한다.
단계 S314에서, 통신 인터페이스(110)는 추천 코스 정보를 가전기기(300)에 전송한다. 가전기기(300)는 서버(100)로부터 수신된 추천 코스 정보를 나타내는 UI를 디스플레이할 수 있다. 일 실시예에서, 가전기기(300)는 추천된 코스 명칭뿐 아니라, 코스 추천 이유를 나타내는 UI를 디스플레이할 수 있다.
도 4는 본 개시의 일 실시예에 따른 서버(100)의 동작 방법을 도시한 흐름도이다.
단계 S410에서, 서버(100)는 가전기기로부터 코스 추천 서비스의 요청 신호를 수신한다. '코스 추천 서비스'는 서버(100)가 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나에 기초하여, 인공지능 모델(132, 도 2 참조)을 이용한 추론을 통해 사용자가 사용할 것으로 예측되는 코스에 관한 정보를 제공하는 서비스를 의미한다. 서버(100)는 예를 들어, 유선 랜, 무선 랜(Wireless LAN), 와이파이(Wi-Fi), 블루투스(Bluetooth), 지그비(zigbee), WFD(Wi-Fi Direct), BLE (Bluetooth Low Energy), 와이브로(Wireless Broadband Internet, Wibro), 와이맥스(World Interoperability for Microwave Access, WiMAX), SWAP(Shared Wireless Access Protocol), 와이기그(Wireless Gigabit Allicance, WiGig) 및 RF 통신 중 적어도 하나의 데이터 통신 네트워크를 이용하여 가전기기와 연결되고, 가전기기로부터 코스 추천 서비스 요청 신호를 수신할 수 있다.
일 실시예에서, 서버(100)는 가전기기 또는 외부 서버로부터 사용 환경 정보를 수신할 수도 있다. 사용 환경 정보는 가전기기가 사용되고 있는 환경 또는 상황에 관한 정보로서, 예를 들어, 사용 시간, 사용 날짜, 요일, 외부 온도, 습도, 및 미세먼지 중 적어도 하나에 관한 정보를 포함할 수 있다.
단계 S420에서, 서버(100)는 가전기기의 디바이스 등록 정보 및 사용 이력 정보에 기초하여, 가전기기가 신규 기기인지 여부를 식별한다. 일 실시예에서, 서버(100)는 가전기기의 디바이스 등록 기간이 기 설정된 임계 기간 이내이고, 사용 횟수가 기 설정된 임계 횟수 미만인 경우, 가전기기를 신규 기기로 인식할 수 있다. 디바이스 등록 기간은, 가전기기로부터 코스 추천 서비스 요청 신호가 수신된 일자와 가전기기가 IoT 서버에 등록된 일자 사이의 기간을 의미한다. 서버(100)는 IoT 서버로부터 가전기기의 디바이스 등록 정보를 획득하고, 디바이스 등록 정보로부터 가전기기의 등록 기간을 식별할 수 있다.
예를 들어, 서버(100)는 가전기기의 등록 기간이 21일 이내이고, 행정의 사용 횟수가 3회 미만인 경우, 가전기기를 신규 기기로 판단할 수 있다. 단계 S430 내지 단계 S450에서는, 신규 기기로 판단된 가전기기를 기존 가전기기와 구별하기 위하여, '신규 가전기기'로 기재하기로 한다.
단계 S430에서, 서버(100)는 가전기기가 신규 기기로 판단된 경우, 기존 가전기기의 제1 행정 이력 데이터를 신규 가전기기에 대응되는 제2 행정 이력 데이터로 변환한다. 일 실시예에서, 서버(100)는 신규 가전기기의 등록 정보 및 사용자 식별 정보(예를 들어, user id)에 기초하여, 신규 가전기기에 대응되는 기존 가전기기를 식별할 수 있다. 일 실시예에서, 서버(100)는 IoT 서버에 신규 가전기기가 등록된 사용자 식별 정보에 신규 가전기기와 함께 등록되어 있는 적어도 하나의 가전기기 중 신규 가전기기와 동일한 타입(type)이고, 신규 가전기기와 동일한 위치 또는 인접한 위치에 설치된 기존 가전기기를 식별할 수 있다.
서버(100)는 행정 이력 데이터 저장부(135, 도 2 참조)에 기 저장된 기존 가전기기의 제1 행정 이력 데이터를 신규 가전기기에 대응되는 제2 행정 이력 데이터로 변환할 수 있다. 서버(100)는 기존 가전기기의 제1 행정 이력 데이터에 포함되는 기존 가전기기에 의해 사용된 코스 명칭 및 코스에 포함되는 복수의 동작들에 관한 설정값을 신규 가전기기에 의해 수행 가능한 코스 명칭 및 설정값으로 각각 변환할 수 있다.
일 실시예에서, 서버(100)는 기존 가전기기의 코스와 신규 가전기기의 코스 간의 기 설정된 코스 별 매핑 관계에 기초하여, 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환할 수 있다. 서버(100)는 코스 별 매핑 관계를 정의한 매핑 테이블을 메모리(130, 도 2 참조)로부터 로드(load)하고, 매핑 테이블에 기초하여 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환할 수 있다.
일 실시예에서, 서버(100)는 인공지능 변환 모델에 제1 행정 이력 데이터를 입력 데이터로 적용하는 추론을 통해, 제1 행정 이력 데이터를 신규 가전기기에 대응되는 제2 행정 이력 데이터로 변환할 수 있다. 인공지능 변환 모델은 기존 가전기기에 의해 수행 가능한 코스 및 코스의 행정 정보로부터 추출된 특징 값을 입력 데이터로 적용하고, 신규 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값을 출력 정답값(ground-truth)으로 적용하는 지도 학습(supervised learning) 방식을 통해 트레이닝된(trained) 모델일 수 있다. 여기서, 입력 데이터에 포함되는 코스의 '행정 정보'는, 코스를 구성하는 행정에 포함되는 복수의 동작들, 복수의 동작들의 수행 순서, 및 복수의 동작들의 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
서버(100)는 기존 가전기기의 제1 행정 이력 데이터로부터 적어도 하나의 특징 값을 추출하고, 추출된 적어도 하나의 특징 값을 인공지능 변환 모델에 입력 데이터로 적용하여 인공지능 변환 모델을 통한 추론을 통해 라벨 값(label)을 획득할 수 있다. 서버(100)는 획득된 라벨 값에 기초하여 제1 행정 이력 데이터로부터 신규 가전기기에 대응되는 제2 행정 이력 데이터를 획득할 수 있다.
일 실시예에서, 서버(100)는 기존 가전기기에 의해 수행 가능한 코스에 따른 제1 행정 정보와 신규 가전기기에 의해 수행 가능한 코스에 따른 제2 행정 정보 간의 유사도에 기초하여, 제1 행정 정보와 제2 행정 정보 간의 매핑 관계를 획득하고, 매핑 관계에 기초하여 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환할 수 있다.
단계 S440에서, 서버(100)는 제2 행정 이력 데이터를 인공지능 모델에 입력 데이터로 적용하여, 추천 코스에 관한 정보를 획득한다. 일 실시예에서, 서버(100)는 제2 행정 이력 데이터를 인공지능 모델(132, 도 2 참조)에 입력 데이터로 적용하고, 인공지능 모델(132)을 통한 추론을 수행함으로써, 사용자가 신규 가전기기를 통해 사용할 것으로 예측되는 코스에 관한 정보를 나타내는 라벨 값(label)을 출력할 수 있다. 서버(100)는 출력된 라벨 값에 기초하여, 추천 코스에 관한 정보를 획득할 수 있다.
일 실시예에서, 서버(100)는 제2 행정 이력 데이터뿐 아니라, 신규 가전기기 또는 외부 서버로부터 수신한 신규 가전기기의 사용 환경 정보를 인공지능 모델(132)에 입력 데이터로 적용하는 추론을 수행함으로써, 추천 코스에 관한 정보를 획득할 수 있다. 사용 환경 정보는 가전기기가 사용되고 있는 환경 또는 상황에 관한 정보로서, 예를 들어, 사용 시간, 사용 날짜, 요일, 외부 온도, 습도, 및 미세먼지 중 적어도 하나에 관한 정보를 포함할 수 있다.
단계 S450에서, 서버(100)는 추천 코스에 관한 정보를 신규 가전기기에 전송한다. 일 실시예에서, 서버(100)는 추천 코스에 관한 정보뿐 아니라, 추천 코스에 관한 추천 이유 정보를 신규 가전기기에 전송할 수 있다. 일 실시예에서, 서버(100)는 인공지능 모델(132)을 이용하여 추론을 수행하는 과정에서, 제2 행정 이력 데이터 및 사용 환경 정보로부터 변환된 적어도 하나의 특징 값 중 인공지능 모델(132)에 포함되는 가중치(weight) 및/또는 편향(bias)의 변경에 영향을 끼친 특징 값을 식별하고, 특징 값에 해당되는 정보를 식별할 수 있다. 예를 들어, 인공지능 모델(132)로부터 출력된 라벨 값에 대응되는 추천 코스가 '강력 세탁'인 경우, 서버(100)는 인공지능 모델(132)을 이용한 추론 과정에서 '강력 세탁'에 대응되는 라벨 값을 출력하는데 최대의 영향을 끼친 특징 값으로서 자주 사용하는 요일에 관한 정보(예를 들어, '주말')를 식별하고, 신규 가전기기에 자주 사용하는 요일에 관한 정보로서 '주말에 자주 사용'이라는 추천 이유에 관한 정보를 제공할 수 있다.
신규 가전기기는 서버(100)로부터 수신된 추천 코스에 관한 정보뿐 아니라, 추천 이유에 관한 정보를 나타내는 UI를 디스플레이할 수 있다. 신규 가전기기가 추천 코스 및 추천 이유에 관한 정보를 나타내는 UI를 디스플레이하는 실시예에 대해서는 도 16a 및 도 16b에서 상세하게 설명하기로 한다.
도 5는 본 개시의 일 실시예에 따른 서버(100)가 기존 가전기기의 행정 이력 데이터의 변환 상황을 인식하는 방법을 도시한 흐름도이다.
도 5에 도시된 단계 S510 내지 S550은 도 4에 도시된 단계 S420을 구체화한 단계들이다. 단계 S510은 도 4에 도시된 단계 S410이 수행된 이후에 수행될 수 있다. 단계 S550이 수행된 이후에는 도 4에 도시된 단계 S430이 수행될 수 있다.
단계 S510에서, 서버(100)는 가전기기의 등록 정보를 획득한다. 일 실시예에서, 서버(100)는 가전기기가 등록된 IoT 서버로부터 가전기기의 등록 정보를 획득할 수 있다. IoT 서버(Internet of Things Server)는, 적어도 하나의 가전기기에 관한 디바이스 정보를 획득하고, 저장하고, 관리하는 서버이다. IoT 서버는 디바이스 등록 과정을 통해 적어도 하나의 가전기기로부터, 적어도 하나의 가전기기의 로그인된 사용자 계정 정보(예를 들어, user id), 디바이스 등록일(예를 들어, 등록 날짜, 등록 시간), 디바이스 식별 정보(예를 들어, 디바이스 id 정보), 디바이스 타입(예를 들어, 세탁기, 건조기, 의류 관리기), 및 기능 수행 능력 정보(capability) 중 적어도 하나를 포함하는 디바이스 등록 정보를 획득하고, 획득된 디바이스 등록 정보를 저장할 수 있다. IoT 서버는 본 개시의 '서버(100)'와는 독립된 하드웨어 장치로 구성될 수 있지만, 이에 한정되는 것은 아니다. IoT 서버는 본 개시의 서버(100)의 일부 구성 요소 중 하나이거나, 또는 소프트웨어로 구분되도록 설계된 외부 서버일 수 있다.
서버(100)가 가전기기의 디바이스 등록 정보를 IoT 서버로부터 획득하는 것으로 한정되는 것은 아니다. 일 실시예에서, 서버(100)는 가전기기로부터 직접 디바이스 등록 정보를 획득할 수도 있다.
단계 S520에서, 서버(100)는 가전기기의 등록 기간을 기 설정된 임계 기간(α)과 비교한다. '등록 기간'은 가전기기로부터 코스 추천 서비스 요청 신호가 수신된 일자와 가전기기가 IoT 서버에 등록된 일자 사이의 기간을 의미한다. 일 실시예에서, 서버(100)는 단계 S510에서 획득한 디바이스 등록 정보로부터, 가전기기가 IoT 서버에 등록된 등록 일자에 관한 정보를 획득하고, 획득된 등록 일자와 단계 S410에서 획득한 코스 추천 서비스 요청 신호를 수신한 일자에 관한 정보를 이용하여 등록 기간을 산출할 수 있다. '임계 기간(α)'은, 가전기기가 신규 기기인지 여부를 판단하기 위하여 미리 정해놓은 기간이다. 임계 기간(α)은 예를 들어, 21일일 수 있으나, 이에 한정되지 않는다.
가전기기의 등록 기간이 임계 기간(α) 미만인 경우(단계 S530), 서버(100)는 가전기기의 행정 사용 횟수를 기 설정된 임계 횟수(β)과 비교한다. '임계 횟수(β)'는 가전기기가 신규 기기임을 판단하기 위하여 미리 정해놓은 행정의 수행 횟수에 관한 설정값을 나타낸다. 임계 값(β)은 예를 들어, 3회일 수 있으나, 이에 한정되지 않는다.
가전기기의 행정 사용 횟수가 임계 횟수(β) 미만인 경우(단계 S540), 서버(100)는 기존 가전기기가 있는지 여부를 판단한다. 서버(100)는 가전기기의 등록 정보 및 사용자 계정 정보에 기초하여, 가전기기에 대응되는 기존 가전기기를 식별할 수 있다. 일 실시예에서, 서버(100)는 IoT 서버에 가전기기가 등록된 사용자 식별 정보에 가전기기와 함께 등록되어 있는 적어도 하나의 가전기기 중 가전기기와 동일한 타입(type)이고, 가전기기와 동일한 위치 또는 인접한 위치에 설치된 기존 가전기기를 식별할 수 있다. 예를 들어, 가전기기가 최신 모델의 세탁기인 경우, 기존 가전기기는 최신 모델의 세탁기의 설치 위치에 이전에 설치되었던 구형 모델 세탁기일 수 있다.
단계 S550에서, 서버(100)는 기존 가전기기에 관하여 기 저장된 행정 이력 데이터가 있는지 여부를 식별한다. 일 실시예에서, 서버(100)는 가전기기를 신규 기기로 판단하고, 행정 이력 데이터 저장부(135, 도 2 참조)에 저장된 행정 이력 데이터 중 기존 가전기기에 의해 수행되었던 제1 행정 이력 데이터를 식별할 수 있다. 제1 행정 이력 데이터는, 기존 가전기기에 의해 수행된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스를 구성하는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
가전기기의 등록 기간이 임계 기간(α) 이상이거나, 행정 사용 횟수가 임계 횟수(β) 이상인 경우(단계 S560), 서버(100)는 가전기기의 행정 이력 데이터를 이용하여 코스 추천 서비스를 제공한다. 단계 S560에서, 서버(100)는 가전기기에 대해서도 인공지능 코스 추천 서비스를 제공하기 위하여 충분한 행정 이력 데이터가 이미 저장되어 있는 것으로 판단하고, 가전기기의 행정 이력 데이터를 이용하여 코스 추천 서비스를 제공할 수 있다.
단계 S570에서, 기존 가전기기가 식별되지 않은 경우, 서버(100)는 코스 추천 서비스의 제공 불가 신호를 전송한 이후, 종료한다. 가전기기가 신규 기기로 판단되었지만, 신규 기기에 대응되는 기존 가전기기가 식별되지 않은 경우, 서버(100)는 코스 추천 서비스의 제공 불가 신호를 가전기기에 전송할 수 있다. 가전기기는 서버(100)로부터 수신된 코스 추천 서비스의 제공 불가 신호에 기초하여, 코스 추천이 불가능하다는 메시지를 디스플레이할 수 있다.
도 6은 본 개시의 일 실시예에 따른 서버(100)가 코스 간의 매핑 관계에 기초하여 행정 이력 데이터를 변환하는 동작을 설명하기 위한 도면이다.
도 6을 참조하면, 기존 가전기기의 코스와 신규 가전기기의 코스 간 코스 별 매핑 테이블(600)이 도시된다. 코스 별 매핑 테이블(600)은 메모리(130, 도 2 참조)의 데이터 변환 모듈(134, 도 2 참조)에 저장될 수 있다. 그러나, 이에 한정되는 것은 아니고, 코스 별 매핑 테이블(600)은 메모리(130) 내의 저장 공간 중 프로세서(120, 도 2 참조)가 접근 가능한 공간에 저장될 수 있다.
코스 별 매핑 테이블(600)을 참조하면, 코스 별 매핑 테이블(600)은 기존 가전기기에 의해 수행 가능한 코스 정보를 나타내는 제1 코스 테이블(610)과 신규 가전기기에 의해 수행 가능한 코스 정보를 나타내는 제2 코스 테이블(620) 간의 매핑 관계에 관한 정보를 포함할 수 있다. 제1 코스 테이블(610)은 기존 가전기기에 의해 수행 가능한 적어도 하나의 코스 각각에 관한 코스 식별 정보(612) 및 코스 명칭(614)에 관한 정보를 포함할 수 있다. 제2 코스 테이블(620)은 신규 가전기기에 의해 수행 가능한 적어도 하나의 코스 각각에 관한 코스 식별 정보(622) 및 코스 명칭(624)에 관한 정보를 포함할 수 있다.
'코스 별 매핑 관계'는, 기존 가전기기에 의해 수행 가능한 적어도 하나의 코스의 식별 정보 및 코스의 코스 명칭과 신규 가전기기에 의해 수행 가능한 적어도 하나의 코스의 식별 정보 및 코스의 코스 명칭에 관하여 미리 설정된 페어링(pairing) 관계를 의미한다. 서버(100)의 프로세서(120, 도 2 참조)는 코스 별 매핑 테이블(600)을 통해 정의된 코스 별 매핑 관계에 기초하여, 기존 가전기기에 의해 수행된 코스를 신규 가전기기에 대응되는 코스로 변환할 수 있다. 도 6에 도시된 실시예에 따른 코스 별 매핑 테이블(600)의 제1 매핑 관계(600-1)를 참조하면, 기존 가전기기에 의해 수행 가능한 코스 중 제2 코스(코스 식별 정보: 코스02, 코스 명칭: 초강력 세탁)는 신규 가전기기에 의해 수행 가능한 코스 중 제67 코스(코스 식별 정보: 코스67, 코스 명칭: 강력 세탁+)와 매핑되고, 프로세서(120)는 제1 매핑 관계(600-1)에 기초하여 기존 가전기기에 의해 수행되었던 제2 코스의 행정 이력 데이터를 신규 가전기기에 대응되는 제67 코스의 행정 이력 데이터로 변환할 수 있다. 다른 예를 들어, 제2 매핑 관계(600-2)를 참조하면, 기존 가전기기에 의해 수행 가능한 코스 중 제3 코스(코스 식별 정보: 코스03, 코스 명칭: 초절약 세탁)는 신규 가전기기에 의해 수행 가능한 코스 중 제124 코스(코스 식별 정보: 코스124, 코스 명칭: 절약세탁 +)와 매핑되고, 프로세서(120)는 제2 매핑 관계(600-2)에 기초하여 기존 가전기기에 의해 수행되었던 제3 코스의 행정 이력 데이터를 신규 가전기기에 대응되는 제124 코스의 행정 이력 데이터로 변환할 수 있다. 다른 예를 들어, 제3 매핑 관계(600-3)를 참조하면, 기존 가전기기에 의해 수행 가능한 코스 중 제4 코스(코스 식별 정보: 코스04, 코스 명칭: 쾌속 세탁)는 신규 가전기기에 의해 수행 가능한 코스 중 제76 코스(코스 식별 정보: 코스76, 코스 명칭: 소량/쾌속)와 매핑되고, 프로세서(120)는 제3 매핑 관계(600-3)에 기초하여 기존 가전기기에 의해 수행되었던 제4 코스의 행정 이력 데이터를 신규 가전기기에 대응되는 제76 코스의 행정 이력 데이터로 변환할 수 있다. 마찬가지로, 프로세서(120)는 제4 매핑 관계(600-4)에 기초하여, 기존 가전기기에 의해 수행되었던 제19 코스(코스 식별 정보: 코스19, 코스 명칭: 클라우드 코스)에 관한 행정 이력 데이터를 신규 가전기기에 대응되는 제100 코스(코스 식별 정보: 코스100, 코스 명칭: 클라우드 코스)에 관한 행정 이력 데이터로 변환하고, 제5 매핑 관계(600-5)에 기초하여, 기존 가전기기에 의해 수행되었던 제20 코스(코스 식별 정보: 코스20, 코스 명칭: AI 맞춤 세탁)에 관한 행정 이력 데이터를 신규 가전기기에 대응되는 제105 코스(코스 식별 정보: 코스105, 코스 명칭: AI 맞춤 코스)에 관한 행정 이력 데이터로 변환할 수 있다.
도 6에 도시된 실시예에서, 서버(100)는 기 설정된 코스 별 매핑 관계를 나타내는 코스 별 매핑 테이블(600)에 기초하여, 기존 가전기기에 의해 수행되었던 코스에 관한 행정 이력 데이터를 신규 가전기기에 대응되는 코스에 관한 행정 이력 데이터로 변환함으로써, 행정 이력 데이터의 변환 정확도를 향상시킬 수 있고, 코스 별 유사도를 이용하거나 또는 인공지능 변환 모델(700, 도 7a 및 도 7b 참조)을 이용하는 경우 보다 변환에 소요되는 처리 시간(processing time)을 단축시킬 수 있다.
도 7a는 본 개시의 일 실시예에 따른 행정 이력 데이터 변환을 위한 인공지능 변환 모델(700)의 트레이닝 과정을 설명하기 위한 도면이다.
서버(100)는 인공지능 변환 모델(700)을 트레이닝할 수 있다. 일 실시예에서, 인공지능 변환 모델(700)은 메모리(130, 도 2 참조)의 데이터 변환 모듈(134, 도 2 참조) 내에 포함될 수 있다. 그러나, 이에 한정되는 것은 아니고, 다른 실시예에서 인공지능 변환 모델(700)은 프로세서(120, 도 2 참조)에 의해 접근 가능한 메모리(130) 내의 저장 공간에 저장되어 있을 수도 있다.
도 7a를 참조하면, 인공지능 변환 모델(700)은 기존 가전기기에 의해 수행 가능한 코스의 행정 정보(710-1 내지 710-4)를 입력 데이터로 적용하고, 신규 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값(720-1 내지 720-4)을 출력 정답값(ground-truth)으로 적용하는 지도 학습(supervised learning) 방식을 통해 트레이닝될 수 있다. 인공지능 변환 모델(700)은 예를 들어, 의사 결정 트리(Decision Tree), 랜덤 포레스트(random forest), 나이브 베이즈 분류 모델(Naive Bayes classification network), 서포트 벡터 머신(support vector machine; SVM), 및 인공 신경망(Artificial Neural Network) 중 적어도 하나의 모델로 구성될 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에서, 인공지능 변환 모델(700)은 컨볼루션 신경망 모델(convolution neural network; CNN) 또는 순환 신경망 모델(recurrent neural network; RNN)과 같은 심층 신경망 모델(Deep Neural Network; DNN)로 구성될 수 있다.
일 실시예에서, 서버(100)의 프로세서(120)는 기존 가전기기에 의해 수행 가능한 코스의 행정 정보(710-1 내지 710-4)로부터 특징 값을 추출하고, 추출된 특징 값을 이용하여 특징 벡터를 생성한 이후, 생성된 특징 벡터를 인공지능 변환 모델(700)에 입력 데이터로 적용하는 트레이닝을 수행할 수 있다. 예를 들어, 인공지능 변환 모델(700)이 컨볼루션 신경망 모델로 구현되는 경우, 트레이닝 과정을 통해 인공지능 변환 모델(700)에 포함되는 복수의 레이어(layer)의 가중치(weight) 및 편향(bias) 등을 포함하는 파라미터 값이 변경될 수 있다.
일 실시예에서, 프로세서(120)는 인공지능 변환 모델(700)에 제1 행정 정보(710-1)가 입력 데이터로 적용되는 경우, 제1 라벨 값(720-1)을 출력 정답값으로 적용하여 인공지능 변환 모델(700)을 트레이닝할 수 있다. 마찬가지로, 프로세서(120)는 제2 행정 정보(710-2)가 입력 데이터로 적용되는 경우 제2 라벨 값(720-2)을 출력 정답값으로 적용하고, 제3 행정 정보(710-3)가 입력 데이터로 적용되는 경우 제3 라벨 값(720-3)을 출력 정답값으로 적용하며, 제4 행정 정보(710-4)가 입력 데이터로 적용되는 경우 제4 라벨 값(720-4)을 출력 정답값으로 적용하여 인공지능 변환 모델(700)을 트레이닝할 수 있다.
입력 데이터에 포함되는 코스의 제1 행정 정보(710-1) 내지 제4 행정 정보(710-4)는 코스를 구성하는 행정에 포함되는 복수의 동작들, 복수의 동작들의 수행 순서, 및 복수의 동작들의 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다. 도 7a에 도시된 실시예에서, 제1 행정 정보(710-1)는 제1 코스, 예를 들어 표준 코스의 세탁, 헹굼, 및 탈수를 포함하는 동작들과, 세탁, 헹굼, 탈수 순서로 진행되는 동작들의 수행 순서, 및 세탁 온도, 헹굼 횟수, 탈수 강도와 같은 동작들의 설정값에 관한 정보를 포함할 수 있다. 제1 행정 정보(710-1)에서 동작들의 설정값은 예를 들어, 세탁 온도는 40˚, 헹굼 횟수는 3회, 탈수 강도는 4일 수 있다. 제1 행정 정보(710-1)는 행정 구성 단계(예를 들어, 4단계)에 관한 정보를 더 포함할 수 있다. 제2 행정 정보(710-2)는 예를 들어, AI 맞춤 코스의 세탁, 헹굼, 및 탈수를 포함하는 동작들과, 세탁, 헹굼, 탈수 순서로 진행되는 동작들의 수행 순서, 및 세탁 온도, 헹굼 횟수, 탈수 강도와 같은 동작들의 설정값에 관한 정보를 포함할 수 있다. 제2 행정 정보(710-2)에서 AI 맞춤 코스에 포함되는 동작들의 설정값은 예를 들어, 세탁 온도는 30˚, 헹굼 횟수는 3회, 탈수 강도는 4일 수 있다.
인공지능 변환 모델(700)의 트레이닝 시 출력 정답값으로 적용되는 제1 라벨 값(720-1) 내지 제4 라벨 값(720-4)은 신규 가전기기에 의해 수행 가능한 코스를 나타내는 특징 값 또는 벡터 일 수 있다. 도 7a에 도시된 실시예에서, 제1 라벨 값(720-1)은 신규 가전기기에 의해 수행 가능한 표준 코스를 나타낼 수 있다. 마찬가지로, 제2 라벨 값(720-2)은 신규 가전기기에 의해 수행 가능한 AI 맞춤 코스를, 제3 라벨 값(720-3)은 신규 가전기기에 의해 수행 가능한 데님 코스를, 제4 라벨 값(720-4)은 신규 가전기기에 의해 수행 가능한 면 코스를 각각 나타내는 값일 수 있다.
도 7b는 본 개시의 일 실시예에 따른 서버(100)가 인공지능 변환 모델(700)을 이용하여, 행정 이력 데이터를 변환하는 동작을 설명하기 위한 도면이다.
도 7b를 참조하면, 서버(100)는 기존 가전기기의 행정 이력 데이터(730)를 인공지능 변환 모델(700)에 입력 데이터로 적용하는 추론을 통해, 신규 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값(750)을 획득할 수 있다. 도 7b에 도시된 인공지능 변환 모델(700)은 도 7a에서 설명한 실시예를 통해 트레이닝된 모델일 수 있다.
일 실시예에서, 서버(100)의 프로세서(120)는 행정 이력 데이터(730)로부터 적어도 하나의 특징 값을 추출하여, 적어도 하나의 특징 값들을 포함하는 특징 벡터(740)를 획득할 수 있다. 프로세서(120)는 예를 들어, 인코딩 알고리즘 또는 토큰화(tokenization) 알고리즘을 이용하여 행정 이력 데이터(730)에 포함되는 코스 명칭, 코스에 포함되는 복수의 동작들의 설정값, 사용 시간, 및 사용 일자에 관한 정보로부터 복수의 특징 값을 추출하고, 추출된 복수의 특징 값을 이용하여 특징 벡터(740)를 생성할 수 있다. 프로세서(120)는 특징 벡터(740)를 인공지능 변환 모델(700)에 입력 데이터로 적용하고, 인공지능 변환 모델(700)을 이용한 추론을 수행함으로써 신규 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값(750)을 획득할 수 있다.
도 7b에 도시된 실시예에서, 기존 가전기기의 행정 이력 데이터(730)는 AI 맞춤 코스에 관한 것으로서, AI 맞춤 코스를 통해 세탁, 헹굼, 및 탈수 동작들이 순서대로 수행되었고, 세탁 온도는 30˚, 헹굼 횟수는 3회, 탈수 강도는 4로 사용된 행정 이력을 포함할 수 있다. 또한, 행정 이력 데이터(730)는 행정의 사용 시간(예를 들어, 55분) 및 사용 일자(예를 들어, 주말)에 관한 정보를 포함할 수 있다. 행정 이력 데이터(730)로부터 획득된 특징 벡터(740)가 인공지능 변환 모델(700)에 입력 데이터로 적용되는 추론이 수행되는 경우, 신규 가전기기에 의해 수행 가능한 AI 맞춤 코스를 나타내는 제2 라벨 값(750)이 출력될 수 있다. 프로세서(120)는 제2 라벨 값(750)에 기초하여, 기존 가전기기의 AI 맞춤 코스에 관한 행정 이력 데이터(730)를 신규 가전기기에 의해 수행 가능한 AI 맞춤 코스에 관한 행정 이력 데이터로 변환할 수 있다.
도 7a 및 도 7b에 도시된 실시예에 따른 서버(100)는 인공지능 변환 모델(700)을 이용하는 추론을 통해 기존 가전기기에 의해 수행된 제1 행정 이력 데이터를 관련되는 신규 가전기기의 제2 행정 이력 데이터로 변환하는 바, 매핑 테이블이 없는 경우에도 변환의 정확도를 높일 수 있다.
도 8은 본 개시의 일 실시예에 따른 서버(100)가 행정 정보 간의 유사도에 기초하여 행정 이력 데이터를 변환하는 동작을 설명하기 위한 도면이다.
도 8을 참조하면, 서버(100)는 기존 가전기기에 의해 수행 가능한 코스에 따른 제1 행정 정보(810)와 신규 가전기기에 의해 수행 가능한 코스에 따른 제2 행정 정보(820) 간의 유사도에 기초하여, 기존 가전기기의 행정 이력 데이터를 신규 가전기기에 대응되는 행정 이력 데이터로 변환할 수 있다. 제1 행정 정보(810)는 기존 가전기기에 의해 수행 가능한 코스 명칭, 코스에 포함되는 복수의 동작들의 수행 순서, 및 복수의 동작들의 설정값에 관한 정보를 포함할 수 있다. 도 8에 도시된 실시예에서, 제1 행정 정보(810) 중 제1-1 행정 정보(810-1)는 기존 가전기기에 의해 수행되는 표준 코스에 관한 것으로서, 표준 코스를 구성하는 세탁, 헹굼, 및 탈수의 수행 순서, 및 세탁 온도, 헹굼 횟수, 및 탈수 강도를 포함하는 설정값에 관한 정보를 포함할 수 있다. 마찬가지로, 제1-2 행정 정보(810-2)는 AI 맞춤 코스에 관한 것으로서, AI 맞춤 코스를 구성하는 세탁, 헹굼, 및 탈수의 수행 순서, 및 세탁 온도, 헹굼 횟수, 및 탈수 강도를 포함하는 설정값에 관한 정보를 포함할 수 있다. 제2 행정 정보(820)는 신규 가전기기에 의해 수행 가능한 코스 명칭, 코스에 포함되는 복수의 동작들의 수행 순서, 및 복수의 동작들의 설정값에 관한 정보를 포함할 수 있다. 도 8에 도시된 실시예에서, 제2 행정 정보(820) 중 제2-1 행정 정보(820-1)는 신규 가전기기에 의해 수행되는 표준 코스에 관한 것으로서, 표준 코스를 구성하는 세탁, 헹굼, 및 탈수의 수행 순서, 및 세탁 온도, 헹굼 횟수, 및 탈수 강도를 포함하는 설정값에 관한 정보를 포함할 수 있다. 마찬가지로, 제2-2 행정 정보(820-2)는 신규 가전기기에 의해 수행되는 AI 코스에 관한 것으로서, AI 코스를 구성하는 세탁, 헹굼, 및 탈수의 수행 순서, 및 세탁 온도, 헹굼 횟수, 및 탈수 강도를 포함하는 설정값에 관한 정보를 포함할 수 있다.
서버(100)의 프로세서(120, 도 2 참조)는 제1 행정 정보(810)와 제2 행정 정보(820) 간의 유사도를 산출하고, 산출된 유사도에 기초하여 행정 정보 간의 매핑 관계를 획득할 수 있다. 일 실시예에서, 프로세서(120)는 제1 행정 정보(810)와 제2 행정 정보 간의 동작들의 수행 순서 및 동작들의 설정값을 비교하여 유사도를 산출할 수 있다. 예를 들어, 프로세서(120)는 제1-1 행정 정보(810-1)에 포함되는 세탁, 헹굼, 탈수 동작들의 수행 순서 및 세탁 온도(예를 들어, 40˚), 헹굼 횟수(예를 들어, 3회), 탈수 강도(예를 들어, 4), 세탁 구성 단계(예를 들어, 4단계)에 관한 정보에 기초하여, 제2-1 행정 정보(820-1) 및 제2-2 행정 정보(820-2)와의 유사도를 산출할 수 있다. 다른 예를 들어, 프로세서(120)는 제1-2 행정 정보(810-2)에 포함되는 세탁, 헹굼, 탈수 동작들의 수행 순서 및 세탁 온도(예를 들어, 30˚), 헹굼 횟수(예를 들어, 3회), 탈수 강도(예를 들어, 4), 세탁 구성 단계(예를 들어, 5단계)에 관한 정보에 기초하여, 제2-1 행정 정보(820-1) 및 제2-2 행정 정보(820-2)와의 유사도를 산출할 수 있다.
프로세서(120)는 행정 정보 간의 유사도에 기초하여, 제1 행정 정보(810)와 제2 행정 정보(820) 간의 매핑 관계를 획득할 수 있다. 일 실시예에서, 프로세서(120)는 산출된 유사도가 제1 행정 정보(810)와 제2 행정 정보(820)를 매핑할 수 있다. 도 8에 도시된 실시예에서, 제1-1 행정 정보(810-1)는 제2 행정 정보(820)에 포함되는 복수의 행정 정보 중 제2-1 행정 정보(820-1)와의 유사도가 최대값으로 산출되고, 프로세서(120)는 제1-1 행정 정보(810-1)를 제2-1 행정 정보(820-1)와 매핑할 수 있다. 마찬가지로, 제1-2 행정 정보(810-2)는 제2 행정 정보(820)에 포함되는 복수의 행정 정보 중 제2-2 행정 정보(820-2)와의 유사도가 최대값으로 산출되고, 프로세서(120)는 제1-2 행정 정보(810-2)를 제2-2 행정 정보(820-2)와 매핑할 수 있다.
프로세서(120)는 제1 행정 정보(810)와 제2 행정 정보(820) 간의 매핑 관계에 기초하여, 기존 가전기기의 행정 이력 데이터를 신규 가전기기에 대응되는 행정 이력 데이터로 변환할 수 있다. 예를 들어, 기존 가전기기의 행정 이력 데이터가 AI 맞춤 코스에 관한 것인 경우, 프로세서(120)는 행정 정보 간의 매핑 관계에 기초하여, 기존 가전기기의 AI 맞춤 코스에 관한 제1 행정 이력 데이터를 신규 가전기기에 의해 수행되는 AI 코스에 관한 제2 행정 이력 데이터로 변환할 수 있다.
도 9는 본 개시의 일 실시예에 따른 서버(100)가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 방법을 도시한 흐름도이고, 도 10은 본 개시의 일 실시예에 따른 서버(100)가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 동작을 설명하기 위한 도면이다.
이하에서는, 도 9 및 도 10을 함께 참조하여, 서버(100)가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 실시예에 관하여 설명하기로 한다.
도 9에 도시된 단계 S910 내지 S950은 도 4에 도시된 단계 S440을 구체화한 단계들이다. 도 9의 단계 S910은 도 4에 도시된 단계 S430이 수행된 이후에 수행될 수 있다. 도 9의 단계 S950이 수행된 이후에는 도 4에 도시된 단계 S450이 수행될 수 있다.
도 9를 참조하면, 단계 S910에서 서버(100)는 신규 가전기기로부터 사용 환경 정보를 획득한다. '신규 가전기기'는 단계 S420(도 4 참조)에서 신규 기기로 식별된 가전기기를 의미한다. 일 실시예에서, 서버(100)의 프로세서(120, 도 2 참조)는 통신 인터페이스(110, 도 2 참조)를 통해, 신규 가전기기 또는 외부 서버로부터 사용 환경 정보를 수신할 수 있다. 사용 환경 정보는 신규 가전기기가 사용되고 있는 환경 또는 상황에 관한 정보를 나타낸다. 도 10을 함께 참조하면, 사용 환경 정보(1020)는 신규 가전기기가 사용되는 요일, 사용 시간, 미세먼지, 습도, 및 외부 온도에 관한 정보를 포함할 수 있다.
단계 S920에서, 서버(100)는 사용 환경 정보로부터 특징 값을 추출한다. 도 10을 함께 참조하면, 프로세서(120)는 사용 환경 정보(1020)에 포함되는 정보로부터 복수의 특징 값들을 추출하고, 추출된 복수의 특징 값들을 이용하여 제2 특징 벡터(1022)를 생성할 수 있다. 프로세서(120)는 예를 들어, 인코딩 알고리즘 또는 토큰화(tokenization) 알고리즘을 이용하여 사용 환경 정보(1020)에 포함되는 신규 가전기기의 사용 환경, 예를 들어 사용 요일, 사용 시간, 미세 먼지, 습도, 및 외부 온도에 관한 정보로부터 복수의 특징 값들을 추출할 수 있다.
단계 S930에서, 서버(100)는 사용 환경 정보로부터 추출된 특징 값과 제2 행정 이력 데이터로부터 추출된 특징 값을 이용하여 특징 벡터를 생성한다. 도 10을 함께 참조하면, 제2 행정 이력 데이터(1010)는 프로세서(120)가 데이터 변환 모듈(134, 도 2 참조)를 이용하여 기존 가전기기에 의해 수행된 행정에 관한 이력 정보인 제1 행정 이력 데이터를 신규 가전기기에 의해 수행 가능한 행정 이력으로 변환하여 획득된 데이터이다. 일 실시예에서, 프로세서(120)는 행정 이력 데이터 저장부(135, 도 2 참조)에 기 저장된 제1 행정 이력 데이터를 데이터 변환 모듈(134)을 이용하여 변환함으로써, 제2 행정 이력 데이터(1010)를 획득할 수 있다. 그러나, 이에 한정되는 것은 아니고, 프로세서(120)는 기존 가전기기로부터 제1 행정 이력 데이터가 수신되는 경우, 원시 데이터(raw data) 상태의 제1 행정 이력 데이터를 데이터 변환 모듈(134)을 이용하여 원시 데이터(raw data) 상태의 제2 행정 이력 데이터(1010)로 변환하고, 변환된 제2 행정 이력 데이터(1010)를 행정 이력 데이터 저장부(135, 도 2 참조)에 저장할 수 있다.
프로세서(120)는 예를 들어, 인코딩 알고리즘 또는 토큰화(tokenization) 알고리즘을 이용하여 제2 행정 이력 데이터(1010)로부터 복수의 특징 값들을 추출하고, 추출된 복수의 특징 값들을 이용하여 제1 특징 벡터(1012)를 생성할 수 있다. 일 실시예에서, 프로세서(120)는 제2 행정 이력 데이터(1010)에 포함되는 자주 사용하는 코스 명칭, 행정 이력에 포함되는 복수의 동작들에 관한 설정값(예를 들어, 세탁 온도, 헹굼 횟수, 탈수 강도), 사용 시간(예를 들어, 평균 사용 시간), 및 자주 사용하는 요일(예를 들어, 주말 또는 평일)에 관한 정보로부터 복수의 특징 값들을 추출할 수 있다.
프로세서(120)는 제2 행정 이력 데이터(1010)로부터 획득한 제1 특징 벡터(1012) 및 사용 환경 정보(1020)로부터 획득한 제2 특징 벡터(1022)를 이용하여, n차원의 특징 벡터를 생성할 수 있다.
단계 S940에서, 서버(100)는 특징 벡터를 인공지능 모델에 입력 데이터로 적용하고, 인공지능 모델을 통한 추론을 수행함으로써, 추천 코스를 나타내는 라벨 값(label)을 획득한다. 인공지능 모델(132, 도 10 참조)은 가전기기의 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나를 입력 데이터로 적용하고, 사용자가 사용하였던 코스에 관한 라벨값(label)을 출력 정답값(ground-truth)로 적용하는 지도 학습(supervised learning)을 통해 트레이닝된(trained) 기계 학습 모델(machine learning)일 수 있다. 인공지능 모델(132)은 예를 들어, 의사 결정 트리(Decision Tree), 랜덤 포레스트(random forest), 나이브 베이즈 분류 모델(Naive Bayes classification network), 서포트 벡터 머신(support vector machine; SVM), 및 인공 신경망(Artificial Neural Network) 중 적어도 하나의 모델로 구성될 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에서, 인공지능 모델(132)은 복수의 의사 결정 트리를 결합한 구조의 앙상블 모델(Ensemble)일 수 있다. 인공지능 모델(132)이 앙상블 모델로 구현되는 경우, 인공지능 모델(132)은 예를 들어, 부스팅(boosting) 모델일 수 있다.
도 10에 도시된 실시예를 참조하면, 프로세서(120)는 제2 행정 이력 데이터(1010)로부터 획득된 제1 특징 벡터(1012) 및 사용 환경 정보(1020)로부터 획득된 제2 특징 벡터(1022)를 인공지능 모델(132)에 입력 데이터로 적용하고, 인공지능 모델(132)을 이용하는 추론을 수행함으로써, 사용자가 신규 가전기기를 통해 사용할 것으로 예측되는 코스에 관한 라벨 값(1030)을 획득할 수 있다.
단계 S950에서, 서버(100)는 라벨 값에 기초하여, 추천 코스에 관한 정보를 획득한다. 도 10에 도시된 실시예를 참조하면, 신규 가전기기가 사용되는 요일이 주말이고, 주말에 자주 사용되는 코스가 데님 코스인 경우, 인공지능 모델(132)은 제2 행정 이력 데이터(1010) 및 사용 환경 정보(1020)로부터 사용자가 주말에 사용할 것으로 예측되는 코스로서, '데님 코스'를 나타내는 라벨 값(1030)을 출력할 수 있다. 프로세서(120)는 라벨 값(1030)에 기초하여, '데님 코스'를 추천 코스에 관한 정보로 획득할 수 있다. 일 실시예에서, 프로세서(120)는 추천 코스에 관한 정보를 신규 가전기기에 전송하도록 통신 인터페이스(110, 도 2 참조)를 제어할 수 있다.
도 11은 본 개시의 일 실시예에 따른 서버(100)가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 동작을 설명하기 위한 도면이고, 도 12는 본 개시의 일 실시예에 따른 서버(100)가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 동작을 설명하기 위한 도면이다.
이하에서는, 도 11 및 도 12를 함께 참조하여, 서버(100)가 신규 가전기기에 대응되도록 변환된 행정 이력 데이터 및 사용 환경 정보에 기초하여, 추천 코스에 관한 정보를 획득하는 실시예에 관하여 설명하기로 한다.
도 11에 도시된 단계 S1110 및 S1120은 도 4에 도시된 단계 S430을 구체화한 단계들이다. 도 11에 도시된 단계 S1130 내지 S1150은 도 4에 도시된 단계 S440을 구체화한 단계들이다. 도 11의 단계 S1110은 도 4에 도시된 단계 S420이 수행된 이후에 수행될 수 있다. 도 11의 단계 S1150이 수행된 이후에는 도 4에 도시된 단계 S450이 수행될 수 있다.
도 11을 참조하면, 단계 S1110에서 서버(100)는 제1 행정 이력 데이터로부터 제1 특징 벡터를 생성한다. 제1 행정 이력 데이터는 기존 가전기기에 의해 수행된 행정 이력에 관한 정보일 수 있다. 도 12를 함께 참조하면, 서버(100)의 프로세서(120, 도 2 참조)는 기존 가전기기의 제1 행정 이력 데이터(1210)로부터 복수의 특징 값들을 추출하고, 추출된 복수의 특징 값들을 이용하여 제1 특징 벡터(1211)를 획득할 수 있다. 프로세서(120)는 예를 들어, 인코딩 알고리즘 또는 토큰화(tokenization) 알고리즘을 이용하여 제1 행정 이력 데이터(1210)에 포함되는 자주 사용하는 코스 명칭, 행정 이력에 포함되는 복수의 동작들에 관한 설정값(예를 들어, 세탁 온도, 헹굼 횟수, 탈수 강도), 사용 시간(예를 들어, 평균 사용 시간), 및 자주 사용하는 요일(예를 들어, 주말 또는 평일)에 관한 정보로부터 복수의 특징 값들을 추출할 수 있다.
단계 S1120에서, 서버(1000는 제1 특징 벡터를 신규 가전기기에 대응되는 제2 특징 벡터로 변환한다. 도 12를 함께 참조하면, 프로세서(120)는 데이터 변환 모듈(134)에 제1 특징 벡터(1211)를 입력하고, 데이터 변환 모듈(134)을 이용하여 제1 특징 벡터(1211)를 신규 가전기기에 대응되는 제2 특징 벡터(1212)로 변환할 수 있다. '신규 가전기기'는 단계 S420(도 4 참조)에서 신규 기기로 식별된 가전기기를 의미한다. 일 실시예에서, 데이터 변환 모듈(134)은 제1 특징 벡터(1211)에 포함되는 복수의 특징 값들을 신규 가전기기에 의해 수행 가능한 코스 및 코스의 설정값을 나타내는 특징 값들로 변환함으로써, 제2 특징 벡터(1212)를 출력할 수 있다.
단계 S1130에서, 서버(100)는 신규 가전기기로부터 획득한 사용 환경 정보를 제3 특징 벡터로 변환한다. 일 실시예에서, 프로세서(120)는 통신 인터페이스(110, 도 2 참조)를 통해, 신규 가전기기 또는 외부 서버로부터 사용 환경 정보를 수신할 수 있다. 사용 환경 정보는 신규 가전기기가 사용되고 있는 환경 또는 상황에 관한 정보를 나타낸다. 도 12를 함께 참조하면, 사용 환경 정보(1220)는 신규 가전기기가 사용되는 요일, 사용 시간, 미세먼지, 습도, 및 외부 온도에 관한 정보를 포함할 수 있다. 일 실시예에서, 프로세서(120)는 인코딩 알고리즘 또는 토큰화(tokenization) 알고리즘을 이용하여 사용 환경 정보(1220)에 포함되는 신규 가전기기의 사용 환경, 예를 들어 사용 요일, 사용 시간, 미세 먼지, 습도, 및 외부 온도에 관한 정보로부터 복수의 특징 값들을 추출할 수 있다. 프로세서(120)는 추출된 복수의 특징 값들을 이용하여 제3 특징 벡터(1222)를 생성할 수 있다.
단계 S1140에서, 서버(100)는 제2 특징 벡터 및 사용 환경 정보로부터 변환된 제3 특징 벡터를 인공지능 모델에 입력 데이터로 적용하는 추론을 수행함으로써, 추천 코스를 나타내는 라벨 값을 획득한다. 인공지능 모델(132, 도 12 참조)은 가전기기의 행정 이력 데이터로부터 획득된 특징 벡터 및 사용 환경 정보로부터 획득된 특징 벡터를 입력 데이터로 적용하고, 사용자가 사용하였던 코스에 관한 라벨값(label)을 출력 정답값(ground-truth)로 적용하는 지도 학습(supervised learning)을 통해 트레이닝된(trained) 기계 학습 모델(machine learning)일 수 있다. 인공지능 모델(132)은 예를 들어, 의사 결정 트리(Decision Tree), 랜덤 포레스트(random forest), 나이브 베이즈 분류 모델(Naive Bayes classification network), 서포트 벡터 머신(support vector machine; SVM), 및 인공 신경망(Artificial Neural Network) 중 적어도 하나의 모델로 구성될 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에서, 인공지능 모델(132)은 복수의 의사 결정 트리를 결합한 구조의 앙상블 모델(Ensemble)일 수 있다. 인공지능 모델(132)이 앙상블 모델로 구현되는 경우, 인공지능 모델(132)은 예를 들어, 부스팅(boosting) 모델일 수 있다.
도 12에 도시된 실시예를 참조하면, 프로세서(120)는 데이터 변환 모듈(134)을 통해 제1 특징 벡터(1211)로부터 변환되어 출력된 제2 특징 벡터(1212) 및 사용 환경 정보(1220)로부터 획득된 제3 특징 벡터(1222)를 인공지능 모델(132)에 입력 데이터로 적용하고, 인공지능 모델(132)을 이용하는 추론을 수행함으로써, 사용자가 신규 가전기기를 통해 사용할 것으로 예측되는 코스에 관한 라벨 값(1230)을 획득할 수 있다.
단계 S1150에서, 서버(100)는 라벨 값에 기초하여, 추천 코스에 관한 정보를 획득한다. 도 12에 도시된 실시예를 참조하면, 신규 가전기기가 사용되는 요일이 평일이고, 평일에 자주 사용되는 코스가 AI 맞춤 코스인 경우, 인공지능 모델(132)은 제2 특징 벡터(1212) 및 제3 특징 벡터(1222)로부터 사용자가 평일에 사용할 것으로 예측되는 코스로서, 'AI 코스'를 나타내는 라벨 값(1230)을 출력할 수 있다. 프로세서(120)는 라벨 값(1230)에 기초하여, 'AI 코스'를 추천 코스에 관한 정보로 획득할 수 있다. 일 실시예에서, 프로세서(120)는 추천 코스에 관한 정보를 신규 가전기기에 전송하도록 통신 인터페이스(110, 도 2 참조)를 제어할 수 있다.
도 13은 본 개시의 일 실시예에 따른 서버(100)의 동작 방법을 도시한 흐름도이다.
단계 S1310에서, 서버(100)는 가전기기로부터 코스 추천 서비스의 요청 신호를 수신한다. '코스 추천 서비스'는 서버(100)가 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나에 기초하여, 인공지능 모델(132, 도 2 참조)을 이용한 추론을 통해 사용자가 사용할 것으로 예측되는 코스에 관한 정보를 제공하는 서비스를 의미한다. 일 실시예에서, 서버(100)는 가전기기 또는 외부 서버로부터 사용 환경 정보를 수신할 수도 있다. 사용 환경 정보는 가전기기가 사용되고 있는 환경 또는 상황에 관한 정보로서, 예를 들어, 사용 시간, 사용 날짜, 요일, 외부 온도, 습도, 및 미세먼지 중 적어도 하나에 관한 정보를 포함할 수 있다.
단계 S1320에서, 서버(100)는 가전기기의 디바이스 등록 정보 및 사용 이력 정보에 기초하여, 가전기기가 신규 기기인지 여부를 식별한다. 일 실시예에서, 서버(100)는 가전기기의 디바이스 등록 기간이 기 설정된 임계 기간 이내이고, 사용 횟수가 기 설정된 임계 횟수 미만인 경우, 가전기기를 신규 기기로 인식할 수 있다. 디바이스 등록 기간은, 가전기기로부터 코스 추천 서비스 요청 신호가 수신된 일자와 가전기기가 IoT 서버에 등록된 일자 사이의 기간을 의미한다. 서버(100)는 IoT 서버로부터 가전기기의 디바이스 등록 정보를 획득하고, 디바이스 등록 정보로부터 가전기기의 등록 기간을 식별할 수 있다. 예를 들어, 서버(100)는 가전기기의 등록 기간이 21일 이내이고, 행정의 사용 횟수가 3회 미만인 경우, 가전기기를 신규 기기로 판단할 수 있다.
단계 S1330에서, 가전기기가 신규 기기로 판단된 경우, 서버(100)는 기존 가전기기의 행정 이력 데이터를 인공지능 모델에 입력 데이터로 적용하는 추론을 수행함으로써, 기존 가전기기를 통해 사용될 것으로 예측되는 제1 추천 코스에 관한 정보를 획득한다. 서버(100)는 행정 이력 데이터 저장부(135, 도 2 참조)에 기 저장된 기존 가전기기의 제1 행정 이력 데이터를 로드(load)하고, 제1 행정 이력 데이터로부터 복수의 특징 값들을 추출하여 특징 벡터를 획득하며, 특징 벡터를 인공지능 모델(132, 도 2 참조)에 입력 데이터로 적용하여 인공지능 모델(132)을 통한 추론을 수행할 수 있다. 서버(100)는 추론 결과, 기존 가전기기에 의해 사용될 것으로 예측되는 제1 추천 코스를 나타내는 라벨 값을 획득할 수 있다.
일 실시예에서, 서버(100)는 기존 가전기기의 제1 행정 이력 데이터뿐 아니라, 가전기기 또는 외부 서버로부터 수신한 사용 환경 정보를 인공지능 모델(132)에 입력 데이터로 적용하는 추론을 수행함으로써, 제1 추천 코스에 관한 정보를 획득할 수 있다.
단계 S1340에서, 서버(100)는 제1 추천 코스를 가전기기에 의해 수행 가능한 제2 추천 코스로 변환한다. 서버(100)는 데이터 변환 모듈(134, 도 2 참조)을 이용하여 제1 추천 코스를 신규 가전기기에 수행 가능한 제2 추천 코스로 변환할 수 있다. '신규 가전기기'는 단계 S1320에서 신규 기기로 판단된 가전기기를 의미하며, 단계 S1330의 '기존 가전기기'와 구별된다.
일 실시예에서, 서버(100)는 기존 가전기기에 의해 수행 가능한 코스와 신규 가전기기에 의해 수행 가능한 코스 간의 기 설정된 코스 별 매핑 관계에 기초하여, 제1 추천 코스를 제2 추천 코스로 변환할 수 있다. 예를 들어, 코스 별 매핑 테이블에서 기존 가전기기에 의해 수행 가능한 코스 중 'AI 맞춤 코스'가 신규 가전기기에 의해 수행되는 'AI 코스'와 매핑되어 있고, 제1 추천 코스가 'AI 맞춤 코스'인 경우, 서버(100)는 데이터 변환 모듈(134)을 통해 제1 추천 코스를 'AI 코스'인 제2 추천 코스로 변환할 수 있다.
일 실시예에서, 서버(100)는 인공지능 변환 모델에 제1 추천 코스를 입력 데이터로 적용하는 추론을 통해, 제1 추천 코스를 신규 가전기기에 대응되는 제2 추천 코스로 변환할 수 있다. 인공지능 변환 모델은 기존 가전기기에 의해 수행 가능한 코스 및 코스의 행정 정보로부터 추출된 특징 값을 입력 데이터로 적용하고, 신규 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값을 출력 정답값(ground-truth)으로 적용하는 지도 학습(supervised learning) 방식을 통해 트레이닝된(trained) 모델일 수 있다. 예를 들어, 제1 추천 코스가 'AI 맞춤 코스'인 경우, 인공지능 변환 모델을 통한 추론 결과 신규 가전기기에 의해 수행되는 'AI 코스'를 나타내는 라벨 값이 획득될 수 있다. 서버(100)는 인공지능 변환 모델로부터 획득된 라벨 값에 기초하여, 제1 추천 코스를 'AI 코스'로 변환할 수 있다.
일 실시예에서, 서버(100)는 기존 가전기기에 의해 수행 가능한 코스에 따른 제1 행정 정보와 신규 가전기기에 의해 수행 가능한 코스에 따른 제2 행정 정보 간의 유사도에 기초하여, 제1 행정 정보와 제2 행정 정보 간의 매핑 관계를 획득하고, 매핑 관계에 기초하여 제1 추천 코스를 제2 추천 코스로 변환할 수 있다. 예를 들어, 제1 추천 코스가 'AI 맞춤 코스'인 경우, 신규 가전기기에 의해 수행 가능한 코스들 중 AI 맞춤 코스의 제1 행정 정보와의 유사도가 최대인 제2 행정 정보를 갖는 코스는 'AI 코스'일 수 있다. 서버(100)는 제1 행정 정보와 제2 행정 정보 간의 유사도에 기초하여, 제1 추천 코스를 'AI 코스'인 제2 추천 코스로 변환할 수 있다.
단계 S1350에서, 서버(100)는 제2 추천 코스에 관한 정보를 신규 가전기기에 전송한다. 일 실시예에서, 서버(100)는 제2 추천 코스에 관한 정보뿐 아니라, 제2 추천 코스에 관한 추천 이유 정보를 신규 가전기기에 전송할 수 있다.
도 13에 도시된 실시예에서, 서버(100)는 도 1 내지 도 12의 실시예와는 달리, 기존 가전기기의 제1 행정 이력 데이터로부터 제1 추천 코스에 관한 정보를 획득하고, 데이터 변환 모듈(134)을 이용하여 제1 추천 코스를 제2 추천 코스로 변환할 수 있다.
도 14는 본 개시의 일 실시예에 따른 가전기기(300)의 구성 요소를 도시한 블록도이다.
가전기기(300)는 복수의 동작들을 기 설정된 순서대로 실행하는 행정을 수행하도록 구성되는 행정 기반 가전기기일 수 있다. 가전기기(300)는 예를 들어, 세탁기, 의류 건조기, 의류 관리기(예를 들어, 에어드레서), 또는 신발 관리기 중 적어도 하나일 수 있다. 그러나, 이에 한정되는 것은 아니고, 가전기기(300)는 TV, 에어컨, 공기 청정기, 청소 로봇, 청소기, 오븐, 전자레인지, 인덕션, 오디오 출력 장치, 또는 스마트 홈 허브 장치 중 적어도 하나일 수 있다.
가전기기(300)는 디바이스 등록 기간이 기 설정된 임계 기간 미만이고, 행정 사용 횟수가 임계 횟수 미만인 신규 기기일 수 있다. 일 실시예에서, 가전기기(300)는 디바이스 등록 기간이 21일 이내이고, 행정 사용 횟수가 3회 미만인 기기일 수 있다. 서버(100)는 가전기기(300)의 디바이스 등록 기간 및 행정 사용 이력 정보에 기초하여, 가전기기(300)를 신규 기기로 판단할 수 있다.
도 14를 참조하면, 가전기기(300)는 통신 인터페이스(310), 프로세서(320), 메모리(330), 디스플레이부(340), 및 기능 수행 모듈(350)을 포함할 수 있다. 통신 인터페이스(310), 프로세서(320), 메모리(330), 디스플레이부(340), 및 기능 수행 모듈(350)은 각각 전기적 및/또는 물리적으로 서로 연결될 수 있다.
도 14에 도시된 구성 요소는 본 개시의 일 실시예에 따른 것일 뿐, 가전기기(300)가 포함하고 있는 구성 요소가 도 14에 도시된 것으로 한정되는 것은 아니다. 가전기기(300)는 도 14에 도시된 구성 요소 중 일부를 포함하지 않을 수 있고, 도 14에 도시되지 않은 구성 요소를 더 포함할 수도 있다. 예를 들어, 가전기기(300)가 세탁기인 경우, 가전기기(300)는 도어 개폐 센서 또는 세탁물 무게 감지 센서 등을 더 포함할 수 있다. 다른 예를 들어, 가전기기(300)는 음성 또는 음향 신호를 출력하는 스피커를 더 포함할 수도 있다.
통신 인터페이스(310)는 유선 또는 무선 통신 네트워크를 통해 서버(100) 또는 모바일 디바이스와 데이터 통신을 수행하도록 구성된다.
통신 인터페이스(310)는 예를 들어, 유선 랜, 무선 랜(Wireless LAN), 와이파이(Wi-Fi), 블루투스(Bluetooth), 지그비(zigbee), WFD(Wi-Fi Direct), 적외선 통신(IrDA, infrared Data Association), BLE (Bluetooth Low Energy), NFC(Near Field Communication), 와이브로(Wireless Broadband Internet, Wibro), 와이맥스(World Interoperability for Microwave Access, WiMAX), SWAP(Shared Wireless Access Protocol), 와이기그(Wireless Gigabit Allicance, WiGig) 및 RF 통신을 포함하는 데이터 통신 방식 중 적어도 하나를 이용하여 서버(100), 또는 모바일 디바이스와 데이터를 송수신할 수 있다.
프로세서(320)는 메모리(330)에 저장된 하나 이상의 명령어들(instruction) 또는 프로그램 코드를 실행하고, 명령어들 또는 프로그램 코드에 대응되는 기능 및/또는 동작을 수행할 수 있다. 프로세서(320)는 산술, 로직 및 입출력 연산과 시그널 프로세싱을 수행하는 하드웨어 구성 요소로 구성될 수 있다. 프로세서(320)는 예를 들어, 중앙 처리 장치(Central Processing Unit), 마이크로 프로세서(microprocessor), 그래픽 프로세서(Graphic Processing Unit), 애플리케이션 프로세서(Application Processor, AP), ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), 및 FPGAs(Field Programmable Gate Arrays) 중 적어도 하나로 구성될 수 있으나, 이에 제한되는 것은 아니다.
도 14에는 프로세서(320)가 하나의 엘리먼트로 도시되었으나, 이에 한정되는 것은 아니다. 일 실시예에서, 프로세서(320)는 하나 또는 하나 이상의 복수 개로 구성될 수 있다.
일 실시예에서, 프로세서(320)는 인공 지능(Artificial Intelligence; AI) 학습을 수행하는 전용 하드웨어 칩으로 구성될 수도 있다.
메모리(330)에는 프로세서(320)가 판독할 수 있는 명령어들 및 프로그램 코드(program code)가 저장될 수 있다. 메모리(330)는 예를 들어, 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광 디스크 중 적어도 하나의 타입의 저장매체로 구성될 수 있다.
메모리(330)는 데이터 변환 모듈(331), 인공지능 모델(332), 및 행정 이력 데이터 저장부(333)를 포함할 수 있다. 메모리(330)에 포함되는 데이터 변환 모듈(331), 인공지능 모델(332), 및 행정 이력 데이터 저장부(333)는 프로세서(320)에 의해 수행되는 기능이나 동작을 처리하는 단위를 의미하고, 이는 명령어들 또는 프로그램 코드와 같은 소프트웨어로 구현될 수 있다.
이하의 실시예에서, 프로세서(320)는 메모리(330)에 저장된 프로그램의 명령어들 또는 프로그램 코드들을 실행함으로써 구현될 수 있다.
데이터 변환 모듈(331)은 기존 가전기기에 관한 제1 행정 이력 데이터를 가전기기(300)에 대응되는 제2 행정 이력 데이터로 변환하도록 구성된 소프트웨어 모듈이다. 일 실시예에서, 데이터 변환 모듈(331)은 최초 제품 출하 시부터 가전기기(300)의 메모리(330)에 저장되어 있을 수 있으나, 이에 한정되는 것은 아니다. 다른 실시예에서, 데이터 변환 모듈(331)은 통신 인터페이스(310)를 통해 서버(100)로부터 다운로드되어 메모리(330)의 저장 공간 내에 저장될 수 있다. 이 경우, 데이터 변환 모듈(331)은 서버(100)에 포함되는 데이터 변환 모듈(134, 도 2 참조)과 동일한 명령어들 또는 프로그램 코드로 구성될 수 있다.
프로세서(320)는 통신 인터페이스(310)를 통해, 서버(100)로부터 기존 가전기기에 관한 제1 행정 이력 데이터를 다운로드하고, 다운로드된 제1 행정 이력 데이터를 행정 이력 데이터 저장부(333)에 저장할 수 있다. 제1 행정 이력 데이터는, 기존 가전기기에 의해 수행된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스를 구성하는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다. 프로세서(320)는 데이터 변환 모듈(134)과 관련된 명령어들 또는 프로그램 코드를 실행함으로써, 제1 행정 이력 데이터에 포함되는 기존 가전기기에 의해 사용된 코스 명칭 및 코스에 포함되는 복수의 동작들에 관한 설정값을 가전기기(300)에 의해 수행 가능한 코스 명칭 및 설정값으로 각각 변환할 수 있다.
일 실시예에서, 프로세서(320)는 기존 가전기기의 코스와 신규 가전기기의 코스 간의 기 설정된 코스 별 매핑 관계에 기초하여, 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환할 수 있다.
일 실시예에서, 프로세서(320)는 인공지능 변환 모델에 제1 행정 이력 데이터를 입력 데이터로 적용하는 추론을 통해, 제1 행정 이력 데이터를 신규 가전기기에 대응되는 제2 행정 이력 데이터로 변환할 수 있다. 인공지능 변환 모델은 기존 가전기기에 의해 수행 가능한 코스 및 코스의 행정 정보로부터 추출된 특징 값을 입력 데이터로 적용하고, 신규 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값을 출력 정답값(ground-truth)으로 적용하는 지도 학습(supervised learning) 방식을 통해 트레이닝된(trained) 모델일 수 있다. 인공지능 변환 모델은 데이터 변환 모듈(331) 내에 포함될 수 있으나, 이에 한정되는 것은 아니다. 일 실시예에서, 인공지능 변환 모델은 메모리(330) 내의 프로세서(320)에 의해 접근 가능한 저장 공간에 저장될 수 있다.
일 실시예에서, 프로세서(320)는 기존 가전기기의 제1 행정 이력 데이터로부터 적어도 하나의 특징 값을 추출하고, 추출된 적어도 하나의 특징 값을 인공지능 변환 모델에 입력 데이터로 적용하여 인공지능 변환 모델을 통한 추론을 통해 라벨 값(label)을 획득할 수 있다. 프로세서(320)는 획득된 라벨 값에 기초하여 제1 행정 이력 데이터로부터 신규 가전기기에 대응되는 제2 행정 이력 데이터를 획득할 수 있다.
프로세서(320)가 데이터 변환 모듈(331)을 이용하여 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환하는 구체적인 방법은 서버(100)의 데이터 변환 모듈(134, 도 2 참조)에 의한 방법과 동일하므로, 중복되는 설명은 생략한다.
인공지능 모델(332)은 가전기기(300)에 대응되도록 변환된 제2 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나를 입력 데이터로 적용하는 추론을 통해, 사용자가 가전기기(300)를 통해 사용할 것으로 예측되는 코스를 나타내는 라벨 값(label)을 출력하도록 트레이닝된 모델이다. 일 실시예에서, 인공지능 모델(332)은 기존 가전기기의 제1 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나를 입력 데이터로 적용하고, 사용자가 사용하였던 코스에 관한 라벨 값을 출력 정답값(ground-truth)로 적용하는 지도 학습(supervised learning)을 통해 트레이닝된(trained) 기계 학습 모델(machine learning)일 수 있다. 인공지능 모델(332)은 예를 들어, 의사 결정 트리(Decision Tree), 랜덤 포레스트(random forest), 나이브 베이즈 분류 모델(Naive Bayes classification network), 서포트 벡터 머신(support vector machine; SVM), 및 인공 신경망(Artificial Neural Network) 중 적어도 하나의 모델로 구성될 수 있으나, 이에 한정되는 것은 아니다. 일 실시예에서, 인공지능 모델(332)은 복수의 의사 결정 트리를 결합한 구조의 앙상블 모델(Ensemble)일 수 있다.
일 실시예에서, 인공지능 모델(332)은 최초 제품 출하 시부터 가전기기(300)의 메모리(330)에 저장되어 있을 수 있으나, 이에 한정되는 것은 아니다. 다른 실시예에서, 인공지능 모델(332)은 통신 인터페이스(310)를 통해 서버(100)로부터 다운로드되어 메모리(330)의 저장 공간 내에 저장될 수 있다. 이 경우, 인공지능 모델(332)은 서버(100)에 포함되는 인공지능 모델(132, 도 2 참조)와 동일한 명령어들 또는 프로그램 코드로 구성되고, 동일한 파라미터를 포함할 수 있다.
일 실시예에서, 프로세서(320)는 제2 행정 이력 데이터를 인공지능 모델(332)에 입력 데이터로 적용하고, 인공지능 모델(332)을 이용한 추론을 수행함으로써, 사용자가 가전기기(300)를 통해 사용할 것으로 예측되는 코스에 관한 정보를 획득할 수 있다.
프로세서(320)는 획득된 코스에 관한 정보를 나타내는 UI를 디스플레이부(340)를 통해 디스플레이할 수 있다. 일 실시예에서, 프로세서(320)는 인공지능 모델(332)을 통한 추론 결과, 추천 코스에 관한 정보뿐 아니라, 추천 이유에 관한 정보를 획득할 수 있다. 프로세서(320)는 추천 이유에 관한 정보를 나타내는 UI를 디스플레이부(340)를 통해 디스플레이할 수 있다. 가전기기(300)가 추천 코스 및 추천 이유에 관한 정보를 나타내는 UI를 디스플레이하는 실시예에 대해서는 도 16a 및 도 16b에서 상세하게 설명하기로 한다.
그러나, 이에 한정되는 것은 아니고, 프로세서(320)는 스피커를 통해 추천 코스 및 추천 이유 중 적어도 하나를 나타내는 음성 메시지를 출력할 수 있다.
행정 이력 데이터 저장부(333)는 서버(100)로부터 다운로드한 제1 행정 이력 데이터를 저장하는 데이터베이스이다. 일 실시예에서, 행정 이력 데이터 저장부(333)는 데이터 변환 모듈(331)에 의해 변환된 제2 행정 이력 데이터를 저장할 수 있다.
행정 이력 데이터 저장부(333)는 비휘발성 메모리로 구성될 수 있다. 비휘발성 메모리(Non-volatile memory)는 전원이 공급되지 않은 상태에서도 정보를 저장 및 유지하고, 전원이 공급되면 다시 저장된 정보를 사용할 수 있는 기억 매체를 의미한다. 비휘발성 메모리는 예를 들어, 플래시 메모리(flash memory), 하드디스크(hard disk), SSD(Solid State Drive), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 롬(Read Only Memory; ROM), 자기 디스크, 또는 광디스크 중 적어도 하나를 포함할 수 있다.
도 14에서 행정 이력 데이터 저장부(333)는 메모리(330) 내에 포함되는 구성 요소로 도시되었지만, 이에 한정되는 것은 아니다. 일 실시예에서, 행정 이력 데이터 저장부(333)는 가전기기(300) 내에 포함되지만 메모리(330)와는 별개의 구성 요소일 수 있다. 그러나, 이에 한정되는 것은 아니고, 행정 이력 데이터 저장부(333)는 가전기기(300)에 포함되지 않고, 외장 메모리 형태로 구현되거나, 또는 웹 기반 저장 매체로 구현될 수도 있다.
디스플레이부(340)는 프로세서(320)의 제어에 의해, 추천 코스 또는 추천 이유에 관한 정보를 나타내는 UI를 디스플레이할 수 있다. 디스플레이부(340)는 예를 들어, 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display) 중에서 적어도 하나를 포함하는 물리적 장치로 구성될 수 있으나, 상기 나열된 예시로 한정되는 것은 아니다. 일 실시예에서, 디스플레이부(340)는 터치 인터페이스를 포함하는 터치스크린으로 구성될 수도 있다.
기능 수행 모듈(350)은 가전기기(300) 본연의 기능 및/또는 동작을 수행하도록 구성된다. 예를 들어, 가전기기(300)가 세탁기인 경우, 기능 수행 모듈(350)은 세탁기에 구비되는 세탁조, 모터, 도어, 도어 개폐 센서, 급수부, 배수부 등을 포함할 수 있다. 다른 예를 들어, 가전기기(300)가 의류 관리기인 경우, 기능 수행 모듈(350)은 송풍팬, 스팀 생성기, 압축기, 응축수 배출 펌프 등을 포함할 수 있다.
도 14에 도시된 실시예에 따른 가전기기(300)는 데이터 변환 모듈(331) 및 인공지능 모델(332)을 포함하는 바, 도 1 내지 도 13에 도시된 실시예와는 달리 서버(100)를 경유하지 않고 온 디바이스(On-device) 방식으로 기존 가전기기의 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환하고, 변환된 제2 행정 이력 데이터에 기초하여 추천 코스에 관한 정보를 제공할 수 있다. 도 14에 도시된 실시예에 따르면, 가전기기(300)가 온 디바이스 방식으로 추천 코스에 관한 정보를 획득하므로, 서버(100)를 통해 추천 코스를 제공받는 경우 보다 처리 속도를 단축시킬 수 있고, 서버(100)와의 통신 과정에서 발생되는 네트워크 사용 비용을 절감할 수 있는 효과를 제공할 수 있다.
도 15는 본 개시의 일 실시예에 따른 서버(100), 기존 가전기기(200), 및 가전기기(300)의 동작 및 데이터 흐름을 도시한 흐름도이다.
도 15를 참조하면, 서버(100), 기존 가전기기(200), 및 가전기기(300)는 유선 또는 무선 통신 네트워크를 통해 서로 연결되고, 데이터를 송수신할 수 있다. 예를 들어, 기존 가전기기(200) 및 가전기기(300)는 유선 랜, 무선 랜(Wireless LAN), 와이파이(Wi-Fi), 블루투스(Bluetooth), 지그비(zigbee), WFD(Wi-Fi Direct), BLE (Bluetooth Low Energy), 와이브로(Wireless Broadband Internet, Wibro), 와이맥스(World Interoperability for Microwave Access, WiMAX), SWAP(Shared Wireless Access Protocol), 와이기그(Wireless Gigabit Allicance, WiGig) 및 RF 통신 중 적어도 하나의 데이터 통신 네트워크를 이용하여 서버(100)와 연결되고, 서버(100)와 데이터를 송수신할 수 있다.
단계 S1501에서, 기존 가전기기(200)는 제1 행정 이력 데이터를 수집한다. 기존 가전기기(200)는 사용자에 의해 행정이 수행될 때마다 행정의 수행 이력을 나타내는 제1 행정 이력 데이터를 저장할 수 있다. 제1 행정 이력 데이터는 예를 들어, 기존 가전기기(200)에 의해 사용된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스에 포함되는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함할 수 있다.
단계 S1502에서, 기존 가전기기(200)는 제1 행정 이력 데이터를 서버(100)에 전송한다. 기존 가전기기(2000)는 소정 주기로 제1 행정 이력 데이터를 서버(100)에 전송할 수도 있고, 행정이 수행될 때마다 실시간으로 제1 행정 이력 데이터를 서버(100)에 전송할 수도 있다.
단계 S1503에서, 서버(100)는 제1 행정 이력 데이터를 저장한다. 서버(100)는 기존 가전기기(200)로부터 수신한 제1 행정 이력 데이터를 행정 이력 데이터 저장부(135, 도 2 참조)에 저장할 수 있다.
단계 S1504에서, 가전기기(300)는 코스 추천 서비스 요청 신호를 서버(100)에 전송한다. '코스 추천 서비스'는 서버(100)가 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나에 기초하여, 인공지능 모델(132, 도 2 참조)을 이용한 추론을 통해 사용자가 사용할 것으로 예측되는 코스에 관한 정보를 제공하는 서비스를 의미한다.
단계 S1505에서, 서버(100)는 가전기기(300)가 신규 기기로 식별되는지 판단한다. 일 실시예에서, 서버(100)는 가전기기(300)의 디바이스 등록 기간이 기 설정된 임계 기간 이내이고, 사용 횟수가 기 설정된 임계 횟수 미만인 경우, 가전기기(300)를 신규 기기로 판단할 수 있다. 디바이스 등록 기간은, 가전기기(300)로부터 코스 추천 서비스 요청 신호가 수신된 일자와 가전기기(300)가 IoT 서버에 등록된 일자 사이의 기간을 의미한다. 서버(100)는 IoT 서버로부터 가전기기(300)의 디바이스 등록 정보를 획득하고, 디바이스 등록 정보로부터 가전기기의 등록 기간을 식별할 수 있다. 예를 들어, 서버(100)는 가전기기(300)의 등록 기간이 21일 이내이고, 가전기기(300)의 행정 사용 횟수가 3회 미만인 경우, 가전기기(300)를 신규 기기로 판단할 수 있다.
가전기기(300)가 신규 기기로 판단된 경우(단계 S1506), 서버(100)는 가전기기(300)와 동일한 타입의 기존 가전기기(200)를 결정한다. 일 실시예에서, 서버(100)는 가전기기(300)의 등록 정보 및 사용자 식별 정보(예를 들어, user id)에 기초하여, 가전기기(300)에 대응되는 기존 가전기기(200)를 식별할 수 있다. 일 실시예에서, 서버(100)는 IoT 서버에 가전기기(300)가 등록된 사용자 식별 정보에 가전기기(300)와 함께 등록되어 있는 적어도 하나의 가전기기 중 가전기기(300)와 동일한 타입(type)이고, 가전기기(300)와 동일한 위치 또는 인접한 위치에 설치된 기존 가전기기(200)를 식별할 수 있다.
단계 S1507에서, 서버(100)는 기존 가전기기(200)에 관한 제1 행정 이력 데이터를 획득한다. 일 실시예에서, 서버(100)는 행정 이력 데이터 저장부(135)로부터 기존 가전기기(200)의 제1 행정 이력 데이터를 로드(load)할 수 있다.
단계 S1508에서, 서버(100)는 제1 행정 이력 데이터를 가전기기(300)에 전송한다. 일 실시예에서, 서버(100)는 제1 행정 이력 데이터와 함께, 데이터 변환 모듈(134, 도 2 참조)을 가전기기(300)에 전송할 수 있다. 서버(100)는 데이터 변환 모듈(134)을 구성하는 명령어들 또는 프로그램 코드를 가전기기(300)에 전송하고, 가전기기(300)는 데이터 변환 모듈(134)을 서버(100)로부터 다운로드할 수 있다.
일 실시예에서, 서버(100)는 인공지능 모델(132, 도 2 참조)을 구성하는 명령어들 또는 프로그램 코드를 가전기기(300)에 전송할 수 있다.
단계 S1509에서, 가전기기(300)는 행정 이력 데이터의 변환 상황을 인식한다. 일 실시예에서, 가전기기(300)는 서버(100)로부터 수신된 행정 이력 데이터가 가전기기(300)에 대응되는 것인지 또는 기존 가전기기(200)에 대응되는 것인지 여부를 식별하고, 식별 결과에 따라 행정 이력 데이터의 변환 상황을 인식할 수 있다.
가전기기(300)는 서버(100)로부터 수신된 제1 행정 이력 데이터가 가전기기(300)에 대응되는 행정 이력 데이터인지 여부를 판단할 수 있다. 일 실시예에서, 가전기기(300)는 제1 행정 이력 데이터에 포함되는 코스 및 코스를 구성하는 복수의 동작들의 설정값이 가전기기(300)에 의해 수행 가능한 코스 및 코스의 설정값인지 여부를 판단할 수 있다. 가전기기(300)는 판단 결과에 기초하여, 행정 이력 데이터의 변환 상황을 인식할 수 있다. 일 실시예에서, 가전기기(300)는 제1 행정 이력 데이터가 기존 가전기기(200)의 행정 사용 이력을 나타내는 데이터임을 식별하고, 행정 이력 데이터의 변환이 필요한 상황임을 인식할 수 있다.
행정 이력 데이터의 변환 상황이 인식된 경우(단계 S1510), 가전기기(300)는 데이터 변환 모듈을 이용하여, 제1 행정 이력 데이터를 가전기기(300)에 대응되는 제2 행정 이력 데이터로 변환한다. 일 실시예에서, 가전기기(300)의 프로세서(320, 도 14 참조)는 데이터 변환 모듈(331, 도 14 참조)의 명령어들 또는 프로그램 코드를 실행함으로써, 제1 행정 이력 데이터를 제2 행정 이력 데이터로 변환할 수 있다. 가전기기(300)가 데이터 변환 모듈(331)을 이용하여 행정 이력 데이터를 변환하는 구체적인 방법은 도 14에서 설명한 것과 동일하므로, 중복되는 설명은 생략한다.
단계 S1511에서, 가전기기(300)는 제2 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나를 인공지능 모델에 입력 데이터로 적용하여, 추천 코스에 관한 정보를 획득한다. 일 실시예에서, 가전기기(300)의 프로세서(320)는 인공지능 모델(332, 도 14 참조)에 제2 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나를 입력 데이터로 적용하고, 인공지능 모델(332)을 통한 추론을 수행함으로써, 사용자가 가전기기(300)를 통해 사용할 것으로 예측되는 코스를 나타내는 라벨 값(label)을 획득할 수 있다. 프로세서(320)는 라벨 값에 기초하여, 추천 코스에 관한 정보를 획득할 수 있다. 프로세서(320)가 인공지능 모델(332)을 이용하여 추천 코스에 관한 정보를 획득하는 구체적인 방법은 도 14에서 설명한 것과 동일하므로, 중복되는 설명은 생략한다.
단계 S1512에서, 가전기기(300)는 추천 코스에 관한 정보를 나타내는 UI를 표시한다. 가전기기(300)는 추천 코스에 관한 정보를 나타내는 UI 를 디스플레이부(340, 도 14 참조)를 통해 디스플레이할 수 있다. 가전기기(300)는 인공지능 모델(332)을 통한 추론 과정에서, 추천 코스를 나타내는 라벨 값을 추론한 이유에 관한 정보를 획득할 수 있다. 일 실시예에서, 가전기기(300)는 추론 과정에서 인공지능 모델(332) 내의 가중치(weight) 또는 편향(bias) 값의 변화에 영향을 준 특징 값을 식별하고, 식별된 특징 값에 기초하여 코스 추천 이유에 관한 정보를 획득할 수 있다. 이 경우, 가전기기(300)는 추천 코스에 관한 정보뿐 아니라, 코스 추천 이유에 관한 정보를 나타내는 UI를 디스플레이부(340)를 통해 디스플레이할 수 있다.
가전기기(300)가 신규 기기로 판단되지 않는 경우(단계 S1520), 서버(100)는 가전기기(300)에 관한 제2 행정 이력 데이터를 획득한다. 일 실시예에서, 서버(100)는 행정 이력 데이터 저장부(135, 도 2 참조)에 기 저장된 적어도 하나의 행정 이력 데이터 중 가전기기(300)의 행정 사용 이력을 나타내는 제2 행정 이력 데이터를 식별하고, 식별된 제2 행정 이력 데이터를 행정 이력 데이터 저장부(135)로부터 획득할 수 있다.
단계 S1521에서, 서버(100)는 제2 행정 이력 데이터를 가전기기(300)에 전송한다.
단계 S1509에서, 가전기기(300)는 제2 행정 이력 데이터에 기초하여, 행정 이력 데이터의 변환 상황을 인식한다. 제2 행정 이력 데이터는 가전기기(300)의 행정 사용 이력을 나타내는 데이터이므로, 행정 이력 데이터를 변환할 필요가 없다. 따라서, 가전기기(300)는 행정 이력 데이터의 변환이 불필요한 상황임을 인식할 수 있다.
단계 S1522에서, 가전기기(300)는 제2 행정 이력 데이터 및 사용 환경 정보 중 적어도 하나를 인공지능 모델에 입력 데이터로 적용하여, 추천 코스에 관한 정보를 획득한다.
단계 S1523에서, 가전기기(300)는 추천 코스에 관한 정보를 나타내는 UI를 표시한다.
단계 S1522 및 S1523은 단계 S1511 및 S1512와 동일하므로, 중복되는 설명은 생략한다.
도 16a는 본 개시의 일 실시예에 따른 가전기기가 추천 코스 및 추천 코스의 설정값을 나타내는 UI(User Interface) 를 디스플레이하는 동작을 도시한 도면이다. 도 16a에서는 가전기기(300)가 세탁기(300a)인 경우를 예로 들어 설명하기로 한다.
세탁기(300a)는 서버(100)에 의해 신규 기기로 판단된 기기일 수 있다. 일 실시예에서, 세탁기(300a)는 디바이스 등록 기간이 기 설정된 임계 기간(예를 들어, 21일) 미만이고, 행정 사용 횟수가 임계 횟수(예를 들어, 3회) 미만인 신규 기기일 수 있다.
도 16a를 참조하면, 세탁기(300a)는 디스플레이부(340) 상에 추천 코스, 추천 코스의 설정값, 및 추천 이유를 나타내는 UI를 디스플레이할 수 있다. 일 실시예에서, 세탁기(300a)는 디스플레이부(340)를 통해, 추천 코스를 나타내는 제1 UI(1610), 추천 코스의 설정값을 나타내는 제2 UI(1620), 및 추천 코스를 추천한 이유를 나타내는 제3 UI(1630)를 디스플레이할 수 있다.
제1 UI(1610)는 추천 코스에 관한 정보를 문자, 숫자, 또는 이미지 중 적어도 하나를 통해 나타내는 UI이다. 도 16a에 도시된 실시예에서, 추천 코스는 '강력 세탁' 코스이고, 세탁기(300a)는 디스플레이부(340)를 통해 '강력 세탁'이라는 문자로 구성된 제1 UI(1610)를 디스플레이할 수 있다.
제2 UI(1620)는 추천 코스를 구성하는 복수의 동작들의 설정값을 문자 또는 숫자로 나타내는 UI이다. 도 16a에 도시된 실시예에서, 세탁기(300a)는 강력 세탁 코스를 구성하는 동작들, 예를 들어 세탁, 헹굼, 및 탈수에 관한 설정값인 세탁 온도(예를 들어, 40˚), 헹굼 횟수(예를 들어, 3회), 탈수 강도(예를 들어, 3)를 나타내는 제2 UI(1620)를 디스플레이부(340) 상에 디스플레이할 수 있다.
제3 UI(1630)는 추천 코스를 제공한 코스 추천 이유를 문자 또는 숫자로 나타내는 UI이다. 일 실시예에서, 세탁기(300a)는 서버(100)로부터 코스 추천 이유에 관한 정보를 획득할 수 있다. 일 실시예에서, 서버(100)는 인공지능 모델(132, 도 2 참조)을 통한 추천 코스 예측 과정에서, 인공지능 모델(132) 내의 가중치(weight) 또는 편향(bias) 값의 변화에 영향을 준 특징 값을 식별하고, 식별된 특징 값에 관한 정보를 세탁기(300a)에 전송할 수 있다. 세탁기(300a)는 서버(100)로부터 수신된 특징 값에 관한 정보에 기초하여, 코스 추천 이유에 관한 정보를 획득하고, 코스 추천 이유에 관한 정보를 나타내는 제3 UI(1630)를 디스플레이할 수 있다. 그러나, 이에 한정되는 것은 아니고, 세탁기(300a)는 메모리에 포함되는 인공지능 모델을 이용하여 온 디바이스(On-device) 방식으로 코스 추천 이유에 관한 정보를 획득하고, 코스 추천 이유를 나타내는 제3 UI(1630)를 디스플레이할 수 있다.
도 16a에 도시된 실시예에서, 세탁기(300a)는 강력 세탁 코스를 추천한 이유로서, "주말에 주로 사용"이라는 문자로 구성되는 제3 UI(1630)를 디스플레이할 수 있다.
도 16b는 본 개시의 일 실시예에 따른 가전기기가 추천 코스를 나타내는 UI를 디스플레이하는 동작을 도시한 도면이다. 도 16a에서는 가전기기(300)가 의류 관리기(300b)인 경우를 예로 들어 설명하기로 한다.
의류 관리기(300b)는 의류에 건조 공기 또는 스팀을 가하여 의류에 소정의 처리(예를 들어, 먼지 제거, 주름 제거, 냄새 제거 등)를 수행하는 장치이다. 의류 관리기(300b)는 의류에 관한 소정의 처리 과정을 수행하기 위한 복수의 동작들을 기 설정된 순서에 의해 수행하는 행정 기반 가전기기일 수 있다. 의류 관리기(300b)는 예를 들어, 에어 드레서일 수 있으나, 이에 한정되지 않는다.
의류 관리기(300b)는 서버(100)에 의해 신규 기기로 판단된 기기일 수 있다. 일 실시예에서, 의류 관리기(300b)는 디바이스 등록 기간이 기 설정된 임계 기간(예를 들어, 21일) 미만이고, 행정 사용 횟수가 임계 횟수(예를 들어, 3회) 미만인 신규 기기일 수 있다.
도 16b를 참조하면, 의류 관리기(300b)는 디스플레이부(340) 상에 추천 코스, 추천 코스의 설정값, 및 추천 이유를 나타내는 UI를 디스플레이할 수 있다. 일 실시예에서, 의류 관리기(300b)는 디스플레이부(340)를 통해, 추천 코스를 나타내는 제1 UI(1640) 및 코스 추천 이유를 나타내는 제2 UI(1650)를 디스플레이할 수 있다.
제1 UI(1640)는 추천 코스에 관한 정보를 문자, 숫자, 또는 이미지 중 적어도 하나를 통해 나타내는 UI이다. 도 16b에 도시된 실시예에서, 추천 코스는 '미세먼지 코스'이고, 의류 관리기(300b)는 디스플레이부(340)를 통해 '미세먼지 코스' 라는 문자로 구성된 제1 UI(1640)를 디스플레이할 수 있다.
제2 UI(1650)는 추천 코스를 제공한 코스 추천 이유를 문자 또는 숫자로 나타내는 UI이다. 도 16b에 도시된 실시예에서, 의류 관리기(300b)는 미세먼지 코스를 추천한 이유로서, "미세 먼지 심한 날 자주 사용"이라는 문자로 구성되는 제2 UI(1650)를 디스플레이할 수 있다. 의류 관리기(300b)가 코스 추천 이유에 관한 정보를 획득하는 방법은 도 16a에서 설명한 방법과 동일하므로, 중복되는 설명은 생략한다.
도 16a 및 도 16b에 도시된 실시예에서, 세탁기(300a) 및 의류 관리기(300b)는 디바이스 등록 기간이 임계 기간 미만이고, 행정 사용 횟수가 임계 횟수 미만인 신규 기기임에도 불구하고, 추천 코스에 관한 정보를 나타내는 제1 UI(1610, 1640) 및 코스 추천 이유를 나타내는 제3 UI(1630, 도 16a 참조), 제2 UI(1650, 도 16b 참조)를 디스플레이할 수 있다. 도 16a 및 도 16b의 실시예에 따르면, 사용자가 세탁기(300a) 또는 의류 관리기(300b)를 새로 구입하여 기존 세탁기, 의류 관리기를 대체하거나, 또는 기존 세탁기, 의류 관리기에 신규 세탁기(300a) 또는 신규 의류 관리기(300b)를 추가하는 경우에도, 추천 코스 뿐만 아니라, 추천 이유에 관한 정보를 제공받을 수 있어 사용자 편의성이 향상될 수 있다.
본 개시에서 설명된 서버(100)에 의해 실행되는 프로그램은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 프로그램은 컴퓨터로 읽을 수 있는 명령어들을 수행할 수 있는 모든 시스템에 의해 수행될 수 있다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령어(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다.
소프트웨어는, 컴퓨터로 읽을 수 있는 저장 매체(computer-readable storage media)에 저장된 명령어를 포함하는 컴퓨터 프로그램으로 구현될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체로는, 예를 들어 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
컴퓨터로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장되는 경우를 구분하지 않는다. 예를 들어, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
또한, 본 명세서에 개시된 실시예들에 따른 프로그램은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다.
컴퓨터 프로그램 제품은 소프트웨어 프로그램, 소프트웨어 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수 있다. 예를 들어, 컴퓨터 프로그램 제품은 전자 장치의 제조사 또는 전자 마켓(예를 들어, 삼성 갤럭시 스토어)을 통해 전자적으로 배포되는 소프트웨어 프로그램 형태의 상품(예를 들어, 다운로드 가능한 애플리케이션(downloadable application))을 포함할 수 있다. 전자적 배포를 위하여, 소프트웨어 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 서버(100) 또는 소프트웨어 프로그램을 임시적으로 저장하는 중계 서버의 저장매체가 될 수 있다.
컴퓨터 프로그램 제품은, 서버(100), 기존 가전기기(200), 및/또는 가전기기(300)로 구성되는 시스템에서, 서버(100)의 저장매체 또는 가전기기(300)의 저장매체를 포함할 수 있다. 또는, 서버(100)와 통신 연결되는 제3 장치(예를 들어, 모바일 디바이스)가 존재하는 경우, 컴퓨터 프로그램 제품은 제3 장치의 저장매체를 포함할 수 있다. 또는, 컴퓨터 프로그램 제품은 서버(100)로부터 제3 장치로 전송되거나, 제3 장치로부터 서버(100)로 전송되는 소프트웨어 프로그램 자체를 포함할 수 있다.
이 경우, 서버(100) 및 가전기기(300) 중 적어도 하나가 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수 있다. 또는, 서버(100) , 가전기기(300), 및 제3 장치 중 둘 이상이 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 분산하여 실시할 수 있다.
예를 들면, 서버(100)가 메모리(130, 도 2 참조)에 저장된 컴퓨터 프로그램 제품을 실행하여, 가전기기(300)와 통신 연결된 타 전자 장치(예를 들어, 모바일 디바이스)가 개시된 실시예들에 따른 방법을 수행하도록 제어할 수 있다.
또 다른 예로, 제3 장치가 컴퓨터 프로그램 제품을 실행하여, 제3 장치와 통신 연결된 전자 장치가 개시된 실시예에 따른 방법을 수행하도록 제어할 수 있다.
제3 장치가 컴퓨터 프로그램 제품을 실행하는 경우, 제3 장치는 서버(100)로부터 컴퓨터 프로그램 제품을 다운로드하고, 다운로드된 컴퓨터 프로그램 제품을 실행할 수 있다. 또는, 제3 장치는 프리로드(pre-load)된 상태로 제공된 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수도 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 컴퓨터 시스템 또는 모듈 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.

Claims (20)

  1. 서버가 인공지능 서비스를 제공하는 방법에 있어서,
    가전기기로부터 코스 추천 서비스의 요청 신호를 수신하는 단계;
    상기 가전기기의 디바이스 등록 정보 및 사용 이력 정보에 기초하여, 상기 가전기기가 신규 기기인지 여부를 판단하는 단계;
    상기 가전기기가 신규 기기로 판단된 경우, 상기 가전기기 이전에 사용된 동일 타입의 기존 가전기기에 관한 제1 행정 이력 데이터를 상기 가전기기에 대응되는 제2 행정 이력 데이터로 변환하는 단계;
    상기 제2 행정 이력 데이터를 제1 인공지능 모델에 입력 데이터로 적용하여, 상기 가전기기의 추천 코스에 관한 정보를 획득하는 단계; 및
    상기 가전기기의 추천 코스에 관한 정보를 상기 가전기기에 전송하는 단계;
    를 포함하는, 방법.
  2. 제1 항에 있어서,
    상기 가전기기가 신규 기기인지 여부를 판단하는 단계는,
    상기 가전기기의 등록 기간이 기 설정된 임계 기간 이내이고, 사용 횟수가 기 설정된 임계 횟수 미만인 경우, 상기 가전기기를 신규 기기로 식별하는 단계를 포함하는, 방법.
  3. 제1 항에 있어서,
    상기 제1 행정 이력 데이터는,
    상기 기존 가전기기에 의해 수행된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스를 구성하는 행정에 포함되는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함하는, 방법.
  4. 제1 항에 있어서,
    상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계는,
    상기 기존 가전기기의 코스와 상기 가전기기의 코스 간의 기 설정된 코스 별 매핑 관계에 기초하여, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계를 포함하는, 방법.
  5. 제1 항에 있어서,
    상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계는,
    상기 제1 행정 이력 데이터로부터 적어도 하나의 특징 값을 추출하는 단계;
    상기 추출된 적어도 하나의 특징 값을 제2 인공지능 모델에 입력 데이터로 적용하여, 상기 제2 인공지능 모델을 통한 추론을 수행하는 단계; 및
    상기 추론을 통해 획득된 라벨 값에 기초하여 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계;
    를 포함하는, 방법.
  6. 제5 항에 있어서,
    상기 제2 인공지능 모델은, 상기 기존 가전기기에 의해 수행 가능한 코스 및 상기 코스의 행정 정보로부터 추출된 특징 값을 입력 데이터로 적용하고, 상기 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값을 출력 데이터로 적용하는 지도 학습(supervised learning) 방식을 통해 트레이닝된 모델인, 방법.
  7. 제6 항에 있어서,
    상기 코스의 행정 정보는, 상기 코스를 구성하는 행정에 포함되는 복수의 동작들, 상기 복수의 동작들의 수행 순서, 및 상기 복수의 동작들의 설정값 중 적어도 하나에 관한 정보를 포함하는, 방법.
  8. 제1 항에 있어서,
    상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계는,
    상기 기존 가전기기에 의해 수행 가능한 코스에 따른 제1 행정 정보와 상기 가전기기에 의해 수행 가능한 코스에 따른 제2 행정 정보 간의 유사도에 기초하여, 상기 제1 행정 정보와 상기 제2 행정 정보 간의 매핑 관계를 획득하는 단계; 및
    상기 획득된 매핑 관계에 기초하여, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계;
    를 포함하는, 방법.
  9. 제1 항에 있어서,
    상기 가전기기의 추천 코스에 관한 정보를 획득하는 단계는,
    상기 가전기기로부터 사용 시간, 사용 날짜, 요일, 외부 온도, 습도, 및 미세먼지 중 적어도 하나에 관한 정보를 포함하는 사용 환경 정보를 획득하는 단계;
    상기 사용 환경 정보로부터 특징 값을 추출하는 단계;
    상기 추출된 특징 값과 상기 제2 행정 이력 데이터로부터 추출된 특징 값을 이용하여 특징 벡터를 생성하는 단계; 및
    상기 특징 벡터를 상기 제1 인공지능 모델에 입력 데이터로 적용하고, 상기 제1 인공지능 모델을 통한 추론을 수행함으로써, 상기 가전기기의 추천 코스를 나타내는 라벨 값을 획득하는 단계;
    를 포함하는, 방법.
  10. 제1 항에 있어서,
    상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는 단계는,
    상기 제1 행정 이력 데이터로부터 추출된 특징 값을 이용하여 제1 특징 벡터를 생성하는 단계; 및
    상기 제1 특징 벡터를 상기 제2 행정 이력 데이터에 대응되는 제2 특징 벡터로 변환하는 단계;
    를 포함하고,
    상기 가전기기의 추천 코스에 관한 정보를 획득하는 단계는,
    상기 제2 특징 벡터 및 상기 가전기기의 사용 환경 정보로부터 추출된 제3 특징 벡터를 상기 제1 인공지능 모델에 입력 데이터로 적용하고, 상기 제1 인공지능 모델을 통한 추론을 수행함으로써, 상기 가전기기의 추천 코스를 나타내는 라벨 값을 획득하는 단계;
    를 포함하는, 방법.
  11. 가전기기에 인공지능 서비스를 제공하는 서버에 있어서,
    통신 인터페이스;
    적어도 하나의 가전기기의 행정 이력 데이터 및 적어도 하나의 명령어(instruction)을 저장하는 메모리; 및
    상기 메모리에 저장된 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서;
    를 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 통신 인터페이스를 통해 상기 가전기기로부터 코스 추천 서비스의 요청 신호를 수신하고,
    상기 가전기기의 디바이스 등록 정보 및 사용 이력 정보에 기초하여, 상기 가전기기가 신규 기기인지 여부를 판단하고, 상기 가전기기가 신규 기기로 판단된 경우 상기 가전기기 이전에 사용된 동일 타입의 기존 가전기기에 관하여 상기 메모리에 저장된 제1 행정 이력 데이터를 상기 가전기기에 대응되는 제2 행정 이력 데이터로 변환하고, 상기 제2 행정 이력 데이터를 제1 인공지능 모델에 입력 데이터로 적용하여 상기 가전기기의 추천 코스에 관한 정보를 획득하고,
    상기 가전기기의 추천 코스에 관한 정보를 상기 가전기기에 전송하도록 상기 통신 인터페이스를 제어하는, 서버.
  12. 제11 항에 있어서,
    상기 제1 행정 이력 데이터는,
    상기 기존 가전기기에 의해 수행된 코스 명칭, 코스 별 사용 빈도, 사용 시간, 사용 날짜, 요일, 및 코스를 구성하는 행정에 포함되는 복수의 동작들에 관한 설정값 중 적어도 하나에 관한 정보를 포함하는, 서버.
  13. 제11 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 기존 가전기기의 코스와 상기 가전기기의 코스 간의 기 설정된 코스 별 매핑 관계에 기초하여, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는, 서버.
  14. 제11 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제1 행정 이력 데이터로부터 적어도 하나의 특징 값을 추출하고,
    상기 추출된 적어도 하나의 특징 값을 제2 인공지능 모델에 입력 데이터로 적용하여, 상기 제2 인공지능 모델을 통한 추론을 수행하고,
    상기 추론을 통해 획득된 라벨값에 기초하여 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는, 서버.
  15. 제14 항에 있어서,
    상기 제2 인공지능 모델은,
    상기 기존 가전기기에 의해 수행 가능한 코스 및 상기 코스의 행정 정보로부터 추출된 특징 값을 입력 데이터로 적용하고, 상기 가전기기에 의해 수행 가능한 코스를 나타내는 라벨 값을 출력 데이터로 적용하는 지도 학습(supervised learning) 방식을 통해 트레이닝된 모델인, 서버.
  16. 제15 항에 있어서,
    상기 코스의 행정 정보는, 상기 코스를 구성하는 행정에 포함되는 복수의 동작들, 상기 복수의 동작들의 수행 순서, 및 상기 복수의 동작들의 설정값 중 적어도 하나에 관한 정보를 포함하는, 서버.
  17. 제11 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 기존 가전기기에 의해 수행 가능한 코스에 따른 제1 행정 정보와 상기 가전기기에 의해 수행 가능한 코스에 따른 제2 행정 정보 간의 유사도에 기초하여, 상기 제1 행정 정보와 상기 제2 행정 정보 간의 매핑 관계를 획득하고,
    상기 획득된 매핑 관계에 기초하여, 상기 제1 행정 이력 데이터를 상기 제2 행정 이력 데이터로 변환하는, 서버.
  18. 제11 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 통신 인터페이스를 통해 상기 가전기기로부터 사용 시간, 사용 날짜, 요일, 외부 온도, 습도, 및 미세먼지 중 적어도 하나에 관한 정보를 포함하는 사용 환경 정보를 획득하고,
    상기 사용 환경 정보로부터 특징 값을 추출하고, 상기 추출된 특징 값과 상기 제2 행정 이력 데이터로부터 추출된 특징 값을 이용하여 특징 벡터를 생성하고, 상기 특징 벡터를 상기 제1 인공지능 모델에 입력 데이터로 적용하고, 상기 제1 인공지능 모델을 통한 추론을 수행함으로써 상기 가전기기의 추천 코스를 나타내는 라벨 값을 획득하는, 서버.
  19. 제11 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제1 행정 이력 데이터로부터 추출된 특징 값을 이용하여 제1 특징 벡터를 생성하고,
    상기 제1 특징 벡터를 상기 제2 행정 이력 데이터에 대응되는 제2 특징 벡터로 변환하고,
    상기 제2 특징 벡터 및 상기 가전기기의 사용 환경 정보로부터 추출된 제3 특징 벡터를 상기 제1 인공지능 모델에 입력 데이터로 적용하고, 상기 제1 인공지능 모델을 통한 추론을 수행함으로써 상기 가전기기의 추천 코스를 나타내는 라벨 값을 획득하는, 서버.
  20. 제1 항 내지 제10 항 중 어느 하나의 항에 기재된 방법을 구현하기 위한 적어도 하나의 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020210128343A 2021-09-28 2021-09-28 서버, 가전기기, 및 서버가 가전기기에 인공지능 추천 서비스를 제공하는 방법 KR20230045456A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210128343A KR20230045456A (ko) 2021-09-28 2021-09-28 서버, 가전기기, 및 서버가 가전기기에 인공지능 추천 서비스를 제공하는 방법
PCT/KR2022/009754 WO2023054860A1 (ko) 2021-09-28 2022-07-06 서버, 가전기기, 및 서버가 가전기기에 인공지능 추천 서비스를 제공하는 방법
US17/869,961 US20230095648A1 (en) 2021-09-28 2022-07-21 Server, home appliance, and method, performed by the server, of providing artificial intelligence recommendation service to the home appliance

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210128343A KR20230045456A (ko) 2021-09-28 2021-09-28 서버, 가전기기, 및 서버가 가전기기에 인공지능 추천 서비스를 제공하는 방법

Publications (1)

Publication Number Publication Date
KR20230045456A true KR20230045456A (ko) 2023-04-04

Family

ID=85783064

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210128343A KR20230045456A (ko) 2021-09-28 2021-09-28 서버, 가전기기, 및 서버가 가전기기에 인공지능 추천 서비스를 제공하는 방법

Country Status (2)

Country Link
KR (1) KR20230045456A (ko)
WO (1) WO2023054860A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101819510B1 (ko) * 2011-08-22 2018-01-17 엘지전자 주식회사 세탁장치 및 이를 포함하여 이루어지는 온라인 시스템
KR102498739B1 (ko) * 2015-05-11 2023-02-13 삼성전자주식회사 홈 서버 및 이의 제어 방법
KR102070783B1 (ko) * 2017-04-25 2020-01-29 엘지전자 주식회사 사용자가 수행한 코스 및 옵션의 패턴을 인공지능을 통해 학습하여 맞춤형 코스와 옵션을 추천하는 의류처리장치와 그 제어방법 및 상기 의류처리장치를 포함하는 온라인 시스템
KR20210067605A (ko) * 2019-11-29 2021-06-08 엘지전자 주식회사 인공 지능을 이용한 상업용 세탁기의 제어 방법 및 그 시스템
KR20210092071A (ko) * 2020-01-15 2021-07-23 삼성전자주식회사 전자 장치 및 그 제어 방법

Also Published As

Publication number Publication date
WO2023054860A1 (ko) 2023-04-06

Similar Documents

Publication Publication Date Title
EP3666954B1 (en) Washing machine
CN108729117B (zh) 衣物处理装置及其控制方法和包括该装置的在线***
KR102070783B1 (ko) 사용자가 수행한 코스 및 옵션의 패턴을 인공지능을 통해 학습하여 맞춤형 코스와 옵션을 추천하는 의류처리장치와 그 제어방법 및 상기 의류처리장치를 포함하는 온라인 시스템
US11692293B2 (en) AI-based laundry treatment apparatus and operation method thereof
CN111334972B (zh) 洗涤调度装置及其方法
EP3674466B1 (en) Laundry treatment device and method of determining laundry course thereof
EP3705617B1 (en) Apparatus and operation method thereof
US8868218B2 (en) Customized control system for electrical appliances using remote device
CN106120242A (zh) 洗衣机及其控制装置和控制方法
KR20210067605A (ko) 인공 지능을 이용한 상업용 세탁기의 제어 방법 및 그 시스템
US10920356B2 (en) Optimizing processing methods of multiple batched articles having different characteristics
US11539546B2 (en) Home appliances and method for controlling home appliances
KR20230045456A (ko) 서버, 가전기기, 및 서버가 가전기기에 인공지능 추천 서비스를 제공하는 방법
US20230095648A1 (en) Server, home appliance, and method, performed by the server, of providing artificial intelligence recommendation service to the home appliance
JP7177589B2 (ja) 家電制御システム及び制御装置
CN114381903A (zh) 用于控制家用器具的***
KR20210089880A (ko) 세탁물 처리 장치
KR20240038184A (ko) 세탁기 및 그의 동작 방법
US20230122787A1 (en) Systems and methods for offloading machine computation from a home appliance to a remote device
KR20240033368A (ko) 건조기 및 그의 동작 방법
Seklou et al. SENITY: An emulator for smart energy management of 5G-connected households
CN118007355A (zh) 洗涤策略推荐方法、装置、智能洗衣机及存储介质