KR102233078B1 - 데이터 처리 및 송신을 위한 방법과 위험한 행동 식별을 위한 방법 및 장치 - Google Patents

데이터 처리 및 송신을 위한 방법과 위험한 행동 식별을 위한 방법 및 장치 Download PDF

Info

Publication number
KR102233078B1
KR102233078B1 KR1020197009043A KR20197009043A KR102233078B1 KR 102233078 B1 KR102233078 B1 KR 102233078B1 KR 1020197009043 A KR1020197009043 A KR 1020197009043A KR 20197009043 A KR20197009043 A KR 20197009043A KR 102233078 B1 KR102233078 B1 KR 102233078B1
Authority
KR
South Korea
Prior art keywords
action
user
data
service data
client
Prior art date
Application number
KR1020197009043A
Other languages
English (en)
Other versions
KR20190042080A (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
Application filed by 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. filed Critical 어드밴스드 뉴 테크놀로지스 씨오., 엘티디.
Publication of KR20190042080A publication Critical patent/KR20190042080A/ko
Application granted granted Critical
Publication of KR102233078B1 publication Critical patent/KR102233078B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/316User authentication by observing the pattern of computer usage, e.g. typical user behaviour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4016Transaction verification involving fraud or risk level assessment in transaction processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2115Third party

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)
  • Peptides Or Proteins (AREA)

Abstract

서비스 데이터의 위험 식별을 위한 방법, 시스템, 및 컴퓨터-판독가능 저장 매체(computer-readable storage media)는, 클라이언트측 컴퓨팅 디바이스에 의해, 클라이언트측 컴퓨팅 디바이스 상에서의 사용자 입력과 연관된 제1 동작 행동에 대응하는 제1 서비스 데이터를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 서비스 데이터에 대응하는 제1 변수로서, 제1 고유값(eigenvalue)을 포함하는 제1 변수를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 동작 행동 이전의 제2 시간에 수행된 제2 동작 행동에 대응하는 제2 고유값을 리트리빙(retrieving)하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 시간 및 제2 시간의 감쇠 함수를 처리함으로써, 감쇠값을 생성하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 집성화 함수를 사용해, 제1 변수, 제2 고유값, 및 감쇠값을 처리함으로써, 집성화된 데이터를 생성하는 동작, 및 하나 이상의 프로세서에 의해, 위험 식별 모형을 사용해, 집성화된 데이터를 처리함으로써, 제1 동작 행동과 연관된 위험을 결정하는 동작을 사용한다.

Description

데이터 처리 및 송신을 위한 방법과 위험한 행동 식별을 위한 방법 및 장치
[우선권의 청구]
본 출원은, 2016년 8월 31일에 출원된 중국 특허 출원 제201610796941.X호의 우선권 및 2017년 8월 30일에 출원된 미국 특허 출원 제15/691,098호의 우선권을 청구하며, 이 중국 특허 출원 및 미국 특허 출원의 전체 내용은 본 명세서에 참조로서 통합된다.
[배경기술]
위험 식별은 여러 맥락에서 유용하다. 예를 들면, 서비스 데이터는 디바이스 보안과 데이터 액세스 사이의 균형을 개선할 수 있다. 이러한 작업은, 취득된 서비스 데이터에 대한 정확한 위험 점수를 계산하는 데 의존한다. 점점 증가하는 수의 새로운 유형의 데이터와, 상이한 데이터 소스들에 대한 점점 증가하는 액세스가능성은, 위험 식별에 대한 추가적인 과제를 제공한다. 위험 식별과 연관된 통상적인 기술적 문제는, 서비스 데이터의 시간 스트림(time stream)이, 시스템들 사이의 다수의 호출을 통해 요청 및 수신된다는 점이다. 예컨대, 호출의 수는 서비스 데이터의 양에 비례할 수 있으며, 이에 의해, 서비스 데이터의 양의 증가는, 위험 식별과 연관된 처리 시간을 연장시키고, 그 외에도 컴퓨팅 리소스를 비효율적으로 소비하게 된다.
본 개시의 구현예는, 위험 식별을 위해 서비스 데이터를 전송하기 위한 컴퓨터-구현 방법을 포함한다. 일부 구현예에서, 동작들은, 클라이언트측 컴퓨팅 디바이스에 의해, 클라이언트측 컴퓨팅 디바이스 상에서의 사용자 입력과 연관된 제1 동작 행동에 대응하는 제1 서비스 데이터를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 서비스 데이터에 대응하는 제1 변수로서, 제1 고유값(eigenvalue)를 포함하는 제1 변수를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 동작 행동 이전의 제2 시간에 수행된 제2 동작 행동에 대응하는 제2 고유값을 리트리빙(retrieving)하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 시간 및 제2 시간의 감쇠 함수를 처리함으로써, 감쇠값을 생성하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 집성화 함수를 사용해, 제1 변수, 제2 고유값, 및 감쇠값을 처리함으로써, 집성화된 데이터를 생성하는 동작, 및 하나 이상의 프로세서에 의해, 위험 식별 모형을 사용해, 집성화된 데이터를 처리함으로써, 제1 동작 행동과 연관된 위험을 결정하는 동작을 포함한다.
전술한 구현예는, 컴퓨터-구현 방법; 컴퓨터-구현 방법을 수행하기 위한 컴퓨터-판독가능 명령어를 저장한 비일시적 컴퓨터-판독가능 매체; 및 비일시적 컴퓨터-판독가능 매체 상에 저장된 명령어/컴퓨터-구현 방법을 수행하도록 구성된 하드웨어 프로세서와 상호운용가능하게 커플링된 컴퓨터 메모리를 포함하는 컴퓨터-구현 시스템을 사용하여 구현가능하다.
이러한 구현예 및 다른 구현예는 각각 선택적으로 다음의 특징 중 하나 이상을 포함할 수 있다. 집성화된 데이터를 생성하는 데 응답하여, 제2 고유값을 삭제하고; 하나 이상의 프로세서는 서버측 컴퓨팅 디바이스 내에 통합될 수 있고; 동작들은, 집성화된 데이터를 클라이언트측 컴퓨팅 디바이스로부터 서버측 컴퓨팅 디바이스로 송신하는 동작을 더 포함할 수 있고; 집성화 함수는, 합산 연산, 최대값의 식별, 및 비반복적 결과의 식별 중 적어도 하나를 정의하는 수학적 연산을 포함할 수 있고; 감쇠 함수는, 지수 함수, 로그 함수, 삼각 함수, 이동창 유형의 함수(moving window type function), 및 다항식 유형의 함수 중 적어도 하나를 정의하는 수학적 연산을 포함할 수 있고; 동작들은, 제1 동작 행동과 연관된 위험을 클라이언트측 컴퓨팅 디바이스의 사용자에게 디스플레이하는 동작을 더 포함할 수 있다.
다음의 장점 중 하나 이상을 실현하기 위하여, 본 명세서에 설명된 주제는 특정한 구현예로 구현될 수 있다. 첫 번째로, 네트워크 및 클라이언트 디바이스 리소스에 미치는 영향을 최소화하기 위하여, 서비스 데이터(예컨대, 시간 스트림) 수집 및 처리가 효율적으로 설계된다. 두 번째로, 서버 시스템으로부터의 요청된 시간 스트림의 수에 독립적으로, 클라이언트 디바이스와 서버 시스템 사이의 호출의 수를 최소화함으로써 송신 시간이 최적화된다. 세 번째로, 일반적으로 클라이언트 디바이스보다 더 나은 처리 능력(예컨대, 더 빠른/더 효율적인 프로세서 또는 더 많은 양의 시스템/저장 메모리)으로 구성되는, 서버 시스템에서 복수의 처리 동작을 수행함으로써 처리 시간이 최적화된다. 네 번째로, 예시 아키텍처의 컴포넌트는, 버스를 통해 프론트엔드 서버로부터 백엔드 서버로 전송되는 단일 메시지 내에서 다수의 서비스 데이터의 송신을 가능하게 하고, 백엔드 서버에서 데이터 처리의 적어도 일부(예컨대, 위험 식별)를 수행하고, 단일 응답(예컨대, 위험 점수)을 수신하도록 구성되었다. 다섯 번째로, 감쇠 함수의 반복적 계산의 장점은, 데이터의 규모에 따라서 클라이언트의 저장 오버헤드 및 컴퓨팅 오버헤드가 변화하지 않도록, 계산된 데이터 전부를 영구적으로 저장하지 않아도 된다는 점이며, 이는 클라이언트의 저장, 송신, 및 컴퓨팅 능력을 크게 향상시킬 수 있다. 위험 식별 규칙은, 집성화된 데이터를 입력으로서만 사용할 수 있으며, 이는 컴퓨팅 리소스의 소비를 줄이는 장점을 제공한다. 다른 장점들은 당업자에게 분명할 것이다.
본 명세서의 주제의 하나 이상의 구현예의 세부사항이 상세한 설명, 청구범위, 및 첨부 도면에 설명되어 있다. 상세한 설명, 청구범위, 및 첨부 도면으로부터 본 명세서의 주제의 다른 특징, 양상, 및 장점이 분명해질 것이다.
도 1은, 본 개시의 구현예들을 실행하기 위해 사용될 수 있는 예시 아키텍처를 도시한다.
도 2는, 본 개시의 구현예들에 따른 예시 컴포넌트 아키텍처를 도시한다.
도 3은, 본 개시의 한 구현예에 따른, 서비스 데이터에 대한 위험 식별을 위한 예시 방법을 나타내는 흐름도이다.
도 4는, 본 개시의 한 구현예에 따른, 본 개시에 설명된 바와 같이, 본 명세서에 설명된 알고리즘, 방법, 기능, 프로세스, 흐름, 및 절차와 연관된 계산적 기능을 제공하기 위해 사용되는 예시 컴퓨터 시스템을 나타내는 블록도이다.
유사한 참조 번호 및 지시가 다양한 도면에서 유사한 요소를 나타낸다.
본 개시의 구현예는 일반적으로, 서비스 데이터의 위험을 결정하기 위한 위험 식별 모형에 대한 데이터 전송에 관한 것이며, 위험 식별 모형은 서비스 데이터에 대한 서비스 파라미터의 정의를 제공한다. 더 상세하게, 본 개시의 구현예는, 클라이언트측 프록시로부터 서버측 컴퓨팅 디바이스로의 데이터의 송신과 연관된 시간을 줄이기 위한, 집성화된 서비스 데이터의 전송에 관한 것이며, 그 외에도 다른 기법보다 더 효율적인 컴퓨팅 리소스의 사용을 제공한다.
구현예는, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 시간에 수행된 제1 동작 행동을 포함하는 사용자 입력을 수신하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 동작 행동에 대응하는 제1 서비스 데이터를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 서비스 데이터에 대응하는 제1 변수로서, 제1 변수의 각각은 제1 고유값을 포함하는, 제1 변수를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 동작 행동 이전의 제2 시간에 수행된 제2 동작 행동에 대응하는 제2 고유값을 리트리빙하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 시간 및 제2 시간의 감쇠 함수를 처리함으로써, 감쇠값을 생성하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 집성화 함수를 사용해, 제1 변수, 제2 고유값, 및 감쇠값을 처리함으로써, 집성화된 데이터를 생성하는 동작, 및 하나 이상의 프로세서에 의해, 위험 식별 모형을 사용해, 집성화된 데이터를 처리함으로써, 제1 동작 행동과 연관된 위험을 결정하는 동작을 포함할 수 있다. 서비스 데이터의 위험을 결정하기 위하여, 위험 식별 모형은 서비스 데이터의 시간 스트림을 이용할 수 있다. 시간 스트림은 지속적으로 변화할 수 있고, 대량의 이력적 베이스를 포함할 수 있다는 점을 고려하면, 클라이언트측 프록시로부터 서버측 컴퓨팅 디바이스로의 시간 스트림의 송신은 리소스 집약적인 프로세스일 수 있다. 본 명세서에 더 상세하게 설명되는 바와 같이, 본 개시의 구현예는 이러한 과제를 해결한다. 예컨대, 본 개시의 구현예에 따라서, 클라이언트측 프록시로부터 서버측 컴퓨팅 디바이스로 서비스 데이터를 송신하기 위한 리소스 요구를 줄이기 위하여, 서비스 데이터는 송신 이전에 집성화될 수 있고, 위험 식별 모형은, 집성화된 데이터를 처리하도록 구성될 수 있다.
다음의 상세한 설명은, 임의의 당업자가, 하나 이상의 특정한 구현예의 맥락에서 개시된 주제를 만들고 사용할 수 있게 하도록 제시된다. 개시된 구현예의 다양한 수정, 변경, 및 치환이 이루어질 수 있고, 당업자에게 수월하게 분명해질 것이며, 정의된 일반적인 원리는, 본 개시의 범위로부터 벗어나지 않으면서, 다른 구현예 및 응용예에 적용될 수 있다. 일부 경우, 불필요한 세부사항을 통해, 본 명세서에 설명된 하나 이상의 구현예를 불명확하게 하지 않기 위하여, 그리고 그러한 세부사항은 당업자의 기술에 포함되어 있으므로, 본 명세서에 설명된 주제를 이해하는 데 불필요한 세부사항은 생략될 수 있다. 본 개시는, 설명된 또는 예시된 구현예로 제한되도록 의도된 것이 아니라, 본 명세서에 설명된 원리 및 특징에 모순되지 않는 가장 넓은 범위가 부여되도록 의도된 것이다.
도 1은, 본 개시의 구현예들을 실행하기 위해 사용될 수 있는 예시 아키텍처(100)를 도시한다. 도시된 예시에서, 예시 아키텍처(100)는 하나 이상의 클라이언트 디바이스(102), 서버 시스템(104), 및 네트워크(106)를 포함한다. 서버 시스템(104)은 하나 이상의 서버 디바이스(108)를 포함한다. 도시된 예시에서, 사용자(110)는 클라이언트 디바이스(102)와 상호작용한다. 한 예시 맥락에서, 사용자(110)는, 서버 시스템(104)에 의해 호스팅되는 소프트웨어 애플리케이션(또는 "애플리케이션")과 상호작용하는 사용자를 포함할 수 있다.
일부 예시에서, 클라이언트 디바이스(102)는 네트워크(106)를 통해 서버 디바이스(108) 중 하나 이상과 통신할 수 있다. 일부 예시에서, 클라이언트 디바이스(102)는, 데스크톱 컴퓨터, 랩톱 컴퓨터, 핸드헬드 컴퓨터, 태블릿 컴퓨터, PDA(personal digital assistant), 셀룰러 전화, 네트워크 어플라이언스, 카메라, 스마트폰, EGPRS(enhanced general packet radio service) 모바일 전화, 미디어 플레이어, 내비게이션 디바이스, 이메일 디바이스, 게임 콘솔, 또는 이들 디바이스나 다른 데이터 처리 디바이스 중 임의의 2개 이상 디바이스의 적절한 조합과 같은, 임의의 적절한 유형의 컴퓨팅 디바이스를 포함할 수 있다. 일부 구현예에서, 클라이언트 디바이스(102)는, 서비스 데이터를 저장하는 데이터 저장소를 포함한다. 일부 구현예에서, 클라이언트 디바이스(102)는, (예컨대, 컴퓨팅 디바이스(102)에 의해 실행되는 웹 브라우저 상에서 씬 클라이언트를 사용하여) 고객이 액세스할 수 있는 분석 웹 애플리케이션을 호스팅한다. 일부 구현예에서, 분석 웹 애플리케이션은, 데이터베이스, 웹페이지, 또는 데이터베이스와 웹페이지의 조합으로부터 수신된 서비스 데이터(예컨대, 서비스 데이터의 시간 스트림)를 처리하고, 서비스 데이터를 처리하고, 서비스 데이터를 더 작은 크기의 데이터로 집성화한 후, 집성화된 서비스 데이터를 네트워크(106)를 통해 서버 시스템(104)에 전송한다.
일부 구현예에서, 네트워크(106)는, 임의의 수의 통신 디바이스, 모바일 컴퓨팅 디바이스, 고정형 컴퓨팅 디바이스, 및 서버 시스템을 연결하는, LAN(local area network), WAN(wide area network), 인터넷, 셀룰러 네트워크, 전화 네트워크(예컨대, PSTN), 또는 이들의 적절한 조합과 같은, 대형 컴퓨터 네트워크를 포함할 수 있다.
일부 구현예에서, 각 서버 디바이스(108)는 적어도 하나의 서버, 및 서비스 데이터를 저장하는 적어도 하나의 데이터 저장소를 포함한다. 일부 구현예에서, 그리고 본 명세서에 설명된 바와 같이, 서버 시스템(104)은, 서비스 데이터를 저장하고 서비스 데이터에 대한 액세스를 제공하는 제삼자 서비스 제공자에 의해 제공될 수 있다. 도 1에 도시된 예시에서, 서버 디바이스(108)는, 웹 서버, 애플리케이션 서버, 프록시 서버, 네트워크 서버, 또는 서버 풀을 포함하나 이에 한정되지 않는 다양한 형태의 서버를 대표하도록 의도된다. 일반적으로, 서버 시스템은 애플리케이션 서비스에 대한 요청을 수락하고, 네트워크(106)를 통해 임의의 수의 클라이언트 디바이스(예컨대, 클라이언트 디바이스(102))에 그러한 서비스를 제공한다.
본 개시의 구현예에 따라서, 서버 시스템(104)은 (예컨대, 하나 이상의 컴퓨팅 디바이스에 의해 실행되는 하나 이상의 컴퓨터-실행가능 프로그램으로서 제공되는) 위험 식별 서비스를 호스팅할 수 있다. 예컨대, 다수의 서비스 데이터 또는 집성화된 서비스 데이터를 포함하는 입력 데이터가 (예컨대, 클라이언트 디바이스(102)로부터) 서버 시스템에 제공될 수 있고, 서버 시스템(104)은, 결과 데이터를 제공하기 위해, 위험 식별 서비스를 통해 입력 데이터를 처리할 수 있다. 예컨대, 사용자(110)에게 디스플레이하기 위해, 서버 시스템(104)은 네트워크(106)를 통해 결과 데이터를 클라이언트 디바이스(102)에 전송할 수 있다.
본 명세서에서 더 상세히 논의되는 바와 같이, 본 개시의 구현예는 하나 이상의 장점을 달성한다. 네트워크 및 클라이언트 디바이스 리소스에 미치는 영향을 최소화하기 위하여, 서비스 데이터(예컨대, 시간 스트림) 수집 및 처리가 효율적으로 설계된다. 특히, 본 개시의 구현예는 데이터 송신 시간을 최적화한다. 서버 시스템(104)으로부터의 요청된 시간 스트림의 수에 독립적으로, 클라이언트 디바이스(102)와 서버 시스템(104) 사이의 호출의 수를 최소화함으로써 송신 시간이 최적화된다. 본 개시의 구현예는 데이터 처리 시간을 최적화하고 클라이언트 디바이스(102)의 처리 요건을 최소화한다. 일반적으로 클라이언트 디바이스(102)보다 더 나은 처리 능력(예컨대, 더 빠른/더 효율적인 프로세서 또는 더 많은 양의 시스템/저장 메모리)으로 구성되는, 서버 시스템(104)에서 복수의 처리 동작을 수행함으로써 처리 시간이 최적화된다.
일부 구현예에서, 시간 스트림의 집성화를 비롯한 본 개시의 구현예를 통합하도록 수정되는 것은 오직 클라이언트 디바이스(102)이다. 예컨대, 클라이언트 디바이스(102)의 표준 컴포넌트와 같은, 애플리케이션 드라이버는, 도 3을 참조하여 설명되는 동작을 수행할 수 있는 대응 구성으로 대체될 수 있다. 서비스 데이터를 리트리빙하기 위해 사용되는 연관된 서치 알고리즘을 비롯하여, 데이터베이스는 수정되지 않는다.
본 명세서에 더 상세히 설명되는 바와 같이, 본 개시의 구현예는 대체로 브라우저에 독립적으로 기능하며, 브라우저에 대한 임의의 수정을 요구하지 않는다(예컨대, 브라우저 확장기능 또는 플러그인을 요구하지 않음). 또한, 본 개시의 구현예는, 분석 애플리케이션에서 사용되는 일반적인 동작인 필터링, 리샘플링, 집성화, 및 위험 식별과 같이, 단순한 서치보다 더 많은 동작을 지원한다. 본 개시의 구현예는 또한, 서비스 데이터의 각 시간 스트림에 대한 단일 호출들을 수행하는 것이 아니라, 동작 행동과 연관된 위험을 계산하기 위해, 단일 시점에, 집성화된 스트림을 백엔드 시스템에 제공한다.
도 2는, 본 개시의 구현예들에 따른 예시 컴포넌트 아키텍처(200)를 도시한다. 일부 구현예에서, 예시 아키텍처(200)의 컴포넌트는 클라이언트 디바이스(202)(예컨대, 클라이언트 디바이스(102)), 사용자 인터페이스(204), 애플리케이션 드라이버(206), 및 데이터베이스 드라이버(208)를 포함한다. 특정한 경우, 사용자 인터페이스(204), 애플리케이션 드라이버(206), 및 데이터베이스 드라이버(208)는, 상이한 서버들에 포함될 수 있다. 예컨대, 사용자 인터페이스(204)는 클라이언트측 애플리케이션 서버 상에 제공될 수 있다. 일부 구현예에서, 사용자 인터페이스(204)는 다수의 클라이언트측 애플리케이션 서버에 걸쳐 제공될 수 있다. 애플리케이션 드라이버(206) 및 데이터베이스 드라이버(208)는 클라이언트측 또는 서버측 백엔드에 포함될 수 있다.
클라이언트 디바이스(202)는 클라이언트측 컴퓨팅 디바이스, 또는 해당 클라이언트측 컴퓨팅 디바이스를 사용하는 사용자를 포함할 수 있다. 클라이언트 디바이스(202)는, 사용자 인터페이스(204)를 통해 사용자(210)로부터 사용자 입력을 수신하도록 구성될 수 있다. 도시된 예시에서, 사용자 인터페이스(204)는 처리 모듈(212) 및 디스플레이 모듈(214)을 포함한다. 처리 모듈(212)은 애플리케이션 모듈(216), 데스크톱 라이브러리(218), 및 브라우저(220)를 포함할 수 있다. 처리 모듈(212)은 사용자(210)가 애플리케이션(예컨대, 서비스 데이터를 포함하는 웹 브라우징 애플리케이션)을 선택할 수 있게 할 수 있고, 애플리케이션 내에서 사용자 입력을 제공하며, 사용자 입력은, 서비스 데이터를 결정하기 위해 프리셋 변수에 기초하여 처리된다.
클라이언트 디바이스(202) 상에 설치된 애플리케이션은 복수의 페이지를 포함할 수 있고, 사용자(210)는 복수의 페이지 중 임의의 페이지에 액세스할 수 있다. 예컨대, 사용자(210)는, 클라이언트 애플리케이션의 제1 페이지에 기초하여, 제2 페이지에 대한 액세스를 제공하는 동작을 선택(클릭, 터치, 또는 스와이프 등)한다. 생성된 서비스 데이터는, 사용자의 애플리케이션 페이지 액세스에 기초하여 분류될 수 있다. 서비스 데이터의 분류는, 동일한 페이지에 관한 사용자의 동작 행동의 분석을 가능하게 한다.
일부 구현예에서, 애플리케이션 페이지 중 한 페이지에 대응하는 서비스 데이터는, 하나 이상의 프리셋 변수에 기초하여 분류될 수 있다. 프리셋 변수는, 측정된 파라미터의 유형에 기초하여 정의될 수 있다. 프리셋 변수의 한 예는, 애플리케이션 페이지 중 한 페이지의 일부 또는 한 애플리케이션 페이지 전체에 관하여 측정될 시간적 파라미터를 정의하는 변수일 수 있다. 시간적 파라미터에 기초하여 취득되는 서비스 데이터의 한 예는 시점 i에서의 동작 행동("현재의 동작 행동") 및 시점 j에서의 동작 행동("과거의 동작 행동")을 포함할 수 있다. 제1 페이지의 액세스 시간과 연관된 "과거의 동작 행동"은 제1 페이지 브라우징의 시작 날짜 및 시간(예컨대, 각각 8/30/2017 및 03:01)과, 시간 단위로 표현된 브라우징 행동의 지속시간(예컨대, 5초)의 기록을 포함할 수 있다. 제1 페이지의 액세스 시간과 연관된 "현재의 동작 행동"은 제1 페이지 브라우징의 시작 날짜 및 시간(예컨대, 각각 8/30/2017 및 03:37)과, 시간 단위로 표현된 브라우징 행동의 지속시간(예컨대, 3초)의 기록을 포함할 수 있다.
프리셋 변수의 또 다른 예는, 애플리케이션 페이지 중 한 페이지의 일부 또는 한 애플리케이션 페이지 전체에 관하여 측정될 금융 파라미터를 정의하는 변수일 수 있다. 금융 파라미터에 기초하여 취득되는 서비스 데이터의 한 예는 결제 행동을 포함할 수 있다. 결제 행동은, 예컨대, 결제 유형, 결제 날짜 및 시간, 결제 주기에 관한 결제일, 결제 금액, 및 사용된 통화를 포함할 수 있다.
데스크톱 라이브러리는, 선택된 애플리케이션과 함께 사용될 하나 이상의 기능 또는 기능 그룹을 사용자(예컨대, 클라이언트 디바이스(202)의 관리자)가 선택할 수 있게 할 수 있다. 브라우저(220)는, 인터넷 웹 페이지와 같은, 애플리케이션의 페이지를 통해 처리 모듈(212)에 대한 액세스를 가능하게 할 수 있다. 처리 모듈(212)은, 애플리케이션 드라이버(206)에 전송될 사용자 입력을 수신할 수 있다. 디스플레이 모듈(214)은, 애플리케이션 드라이버(206) 및 데이터베이스 드라이버(208)에 의해 수행되는 서비스 데이터의 하나 이상의 처리 단계를 디스플레이하거나 숨기도록 구성될 수 있다. 예컨대, 디스플레이 모듈(214)은, 위험 식별 유닛(256)에 의해 결정된, 사용자 입력과 연관된 위험 결과를 디스플레이하도록 구성될 수 있다. 디스플레이 모듈(214)은, 차트 및 그래프를 디스플레이하도록 구성된 하나 이상의 애플리케이션을 포함할 수 있다. 일부 구현예에서, 사용자 인터페이스(204)는, 애플리케이션 드라이버(206)로부터 반환된 결과를 저장하기 위한 로컬 데이터베이스(도시되지 않음)도 포함하며, 도 3을 참조하여 설명되는 전처리(pre-processing)를 지원한다.
도시된 구현예에서, 애플리케이션 드라이버(206)는 게이트웨이(222), 프레임워크(224), 계획 모듈(226), 이벤트 모듈(228), 메시지 버스 모듈(230), 이벤트 액세스 모듈(232), 위험 모형 모듈(234), 사용자 관리 모듈(236), 인가 모듈(238), 및 데이터 사전(240)을 포함한다. 애플리케이션 드라이버(206)는, 사용자 입력, 서비스 데이터, 및 집성화된 서비스 데이터를 처리하도록 구성될 수 있다. 예컨대, 애플리케이션 드라이버(206)는, 클라이언트 디바이스(202)가 게이트웨이(222)를 사용하여 브라우저(220)를 통해 상호작용하는, 애플리케이션(예컨대, 웹 애플리케이션)을 호스팅한다. 더 상세하게, 그리고 본 개시에 따라서, 클라이언트 디바이스(202)는 사용자 인터페이스(204)를 통해 애플리케이션 드라이버(206)(및 애플리케이션)와 상호작용한다. 프레임워크(224), 계획 모듈(226), 이벤트 모듈(228), 메시지 버스 모듈(230), 이벤트 액세스 모듈(232), 및 위험 모형 모듈(234)은, 버스를 통해 데이터베이스 드라이버(208)에 전송할 메시지를 생성하기 위해, 데이터 사전(240) 내에 설정된 파라미터에 기초하여, 사용자 인터페이스(204)로부터 수신된 서비스 데이터를 처리하도록 구성될 수 있다. 사용자 관리 모듈(236) 및 인가 모듈(238)은, 사용자가 서비스 위험 모형을 생성 및 업데이트하고, 사용자와 연관된 데이터를 관리할 수 있게 하는 보조 모듈이다. 데이터 사전(240)은, 선택된 애플리케이션, 또는 애플리케이션 드라이버(206)의 모듈에 의해 사용되는 하나 이상의 용어 및 파라미터의 정의를 사용자(210)에게 제공할 수 있다. 프레임워크(224)는, 처리된 서비스 데이터(예컨대, 집성화된 서비스 데이터)를, 데이터베이스 드라이버(208)에 의해 관리되는 데이터베이스에 송신하도록 구성될 수 있다.
데이터베이스 드라이버(208)는 계획 컨텐츠(242), 코어 컴퓨팅 엔진(252), 위험 식별 모듈(256), 애플리케이션 기능 라이브러리(258), 및 예측 분석 라이브러리(260)를 포함할 수 있다. 데이터베이스 드라이버(208)는, 서비스 데이터의 처리에 기초하여 서비스 데이터(예컨대, 시간 스트림)를 추출하도록 구성될 수 있다. 데이터베이스 드라이버(208)는, 항목 참조에 기초하여, 데이터베이스 서버에 유지되는 데이터베이스로부터 다수의 서비스 데이터 스트림을 리트리빙할 것을 요구하는 기능을 포함할 수 있다. 도 3을 참조하여 상세히 설명되는 바와 같이, 본 개시의 구현예에 따라서, 데이터베이스에 의해 리트리빙되는 서비스 데이터 스트림은, 서비스 데이터 스트림을 집성화한 후 결과를 위험 식별 모듈(256)에 전송하도록 구성된, 코어 컴퓨팅 엔진(252)에 전송된다.
계획 컨텐츠(242)는 코어 컴퓨팅 엔진(252)과 통신할 수 있다. 코어 컴퓨팅 엔진(252)은 데이터 처리 유닛(253), 색인 파싱 유닛(254), 및 집성화 유닛(255)을 포함한다. 도 3을 참조하여 상세히 설명되는 바와 같이, 데이터 처리 유닛(253)은, 입력된 서비스 데이터를 파싱하고, 집성화된 색인 요건에 기초하여 처리될 서비스 데이터의 규모를 추출하는 데 사용될 수 있다. 집성화된 색인 파싱 유닛(254)은, 위험 모형 모듈(234)에 의해 제공되는 애플리케이션 모형에 의해 지시되는 파라미터를 추출하기 위해 서비스 데이터를 파싱하는 데 사용될 수 있다. 파싱 파라미터는 데이터 주체, 객체, 규모, 및 시간 창을 포함할 수 있다. 파싱된 서비스 데이터는, 집성화 유닛(255)의 하나 이상의 함수를 사용하여 집성화될 수 있다. 집성화 유닛(255)은, 파싱된 서비스 데이터를 처리하고 통계적 특징의 근사값(프리셋 변수 또는 동적으로 설정되는 변수)을 계산하도록 구성될 수 있다. 예컨대, 도 3을 참조하여 상세히 설명되는 바와 같이, 집성화 유닛(255)은, 감쇠 연산을 수행하도록 구성될 수 있다.
위험 식별 모듈(256)은, 집성화된 서비스 데이터를 집성화 유닛(255)으로부터 리트리빙하기 위해, 코어 컴퓨팅 엔진(252)에 액세스할 수 있다. 도 3을 참조하여 상세히 설명되는 바와 같이, 위험 점수를 생성하기 위해, 위험 식별 모듈(256)은, 사용자 인터페이스(204)를 통해 선택된 애플리케이션에 매칭되는 형식, 및 위험 모형 모듈(234)에 의해 지시되는 위험 모형 내에 포함된 하나 이상의 파라미터에 기초하여, 집성화된 서비스 데이터를 처리할 수 있다. 사용자 인터페이스(204)는, 위험 식별 모듈(256)로부터 위험 점수를 수신하고, 디스플레이 모듈(214)을 사용하여 위험 점수를 디스플레이하도록 구성된다.
본 개시의 구현예는 프론트엔드 서버(클라이언트 디바이스(202) 및 사용자 인터페이스(204) 포함) 및 백엔드 서버(애플리케이션 드라이버(206) 및 데이터베이스 드라이버(208) 포함)를 포함한다. 프론트엔드 서버가 수정되므로, 본 개시의 구현예는, 데이터베이스 서비스 데이터를 다른 애플리케이션 코드 및 사용자 인터페이스로부터 깔끔하게 분리하는 웹 애플리케이션 아키텍처를 목표로 한다. 프론트엔드 서버는 애플리케이션이 업그레이드될 때 수정될 수 있다. 예컨대, 예전 버전의 애플리케이션으로부터 새 버전의 애플리케이션으로의 업그레이드는, 데이터의 연속적인 포착을 가능하게 하기 위한 프론트엔드 서버의 수정을 트리거링할 수 있다. 사용자 인터페이스 컴포넌트(예컨대, 이미지)와 디자인(및 다른 리소스)은, JavaScript 코드와 함께 통합된 HTML 및 CSS로서 다운로드될 수 있다. 클라이언트 디바이스에서 또는 클라우드 서버 상에서 서비스 데이터를 지속적으로 저장 및 처리하기 위하여, 클라이언트는 요청(예컨대, OData 요청)을 발행하며, 요청은 데이터베이스 엔진에 의해 처리된다. 일부 구현예에서, 요청은 백엔드 데이터베이스를 위한 쿼리(예컨대, SQL 쿼리)로 변환된다. 클라이언트 디바이스는 쿼리 응답을 처리할 수 있으며 동적으로 생성되는 HTML을 사용하여 쿼리 응답을 디스플레이할 수 있다.
본 개시의 구현예는, 서비스 데이터의 처리 속도를 높이도록 설계된다. 특히, 예시 아키텍처(200)의 컴포넌트는, 버스를 통해 프론트엔드 서버(예컨대, 클라이언트 디바이스의 사용자 인터페이스(204))로부터 백엔드 서버(예컨대, 애플리케이션 드라이버(206))로 전송되는 단일 메시지 내에서 다수의 서비스 데이터의 송신을 가능하게 하고, 백엔드 서버(예컨대, 애플리케이션 드라이버(206))에서 데이터 처리의 적어도 일부(예컨대, 위험 식별)를 수행하고, 단일 응답(예컨대, 위험 점수)을 수신하도록 구성되었다. 일부 예시에서, 이후 프론트엔드 서버(예컨대, 처리 모듈(212))에 의해 처리 동작의 일부(예컨대, 파싱)가 그 응답으로 실행될 수 있다. 프론트엔드 전처리를 사용하여, 애플리케이션 프로그래머는 표준 인터페이스에 의지할 수 있다.
도 3은, 도 1 및 도 2를 참조하여 설명된 바와 같은 하나 이상의 컴퓨팅 디바이스를 사용하여 실행되는 하나 이상의 컴퓨터-실행가능 프로그램으로서 제공될 수 있는 예시 방법(300)을 도시한다. 일부 구현예에서, 예시 방법(300)은, 본 개시의 구현예에 따라서, 위험 모형을 사용해 서비스 데이터의 위험을 식별하기 위하여 실행된다. 일부 구현예에서, 예시 방법(300)의 다양한 단계는, 동시에, 조합되어, 루프 내에서, 또는 임의의 순서로 실행될 수 있다.
클라이언트측 컴퓨팅 디바이스에 의해 사용자 입력이 수신된다(단계(302)). 사용자 입력은, 애플리케이션, 애플리케이션 페이지, 또는 애플리케이션 페이지의 일부와 연관된 복수의 동작 행동을 포함할 수 있다. 동작 행동은, 웹 페이지 상에서 사용자에 의해 트리거링되는 브라우징 행동, 클라이언트 디바이스의 제어부를 활성화하는 사용자에 의해 트리거링되는 선택 행동(클릭), 상이한 서비스들을 위해 사용자에 의해 개시되는 서비스 처리 행동, 또는 웹 페이지와 같은, 애플리케이션에 의해 지원되는 다른 동작을 포함할 수 있다. 단계(302)로부터, 방법(300)은 단계(304)로 진행한다.
컴퓨팅 디바이스의 하나 이상의 프로세서에 의해 서비스 데이터가 생성된다(단계(304)). 예컨대, 동작 행동을 실행하기 위해 사용자가 클라이언트 디바이스를 사용할 때, 서비스 데이터가 생성된다. 예컨대, 동작 행동이, 웹 페이지와 상호작용하는 사용자에 의해 트리거링되는 브라우징 행동이라면, 대응하는 생성되는 서비스 데이터는, 사용자에 의해 브라우징된 페이지에 관한 주소 정보, 사용자가 브라우징 행동을 트리거링한 시간, 페이지의 사용 지속시간, 또는 웹 페이지와의 사용자 상호작용을 기술하는 다른 파라미터를 포함할 수 있다. 동작 행동이, (결제 서비스와 같은) 상이한 서비스들을 위해 사용자에 의해 개시되는 서비스 처리 행동이라면, 대응하는 생성되는 서비스 데이터는 타겟 객체(예컨대, 상점의 이름), 서비스 시간, 서비스의 정량적 값(예컨대, 결제 금액), 또는 사용자의 서비스 페이지와의 상호작용을 기술하는 다른 파라미터를 포함할 수 있다.
서비스 데이터는, JAVASCRIPT, 또는, 동작 행동에 응답하여 서비스 데이터를 자동으로 리트리빙하도록 구성된, 클라이언트 디바이스 상에 설치된 애플리케이션의 다른 언어를 사용하여 수집될 수 있다. 일부 구현예에서, 서비스 데이터는 동작 행동의 유형에 기초하여 분류될 수 있다. 각 유형의 동작 행동은, 수집된 서비스 데이터의 논리적 기술과 같은, 규칙에 의해 정의될 수 있다. 단계(304)로부터, 방법(300)은 단계(306)로 진행한다.
컴퓨팅 디바이스의 하나 이상의 프로세서에 의해 프리셋 변수가 결정된다(단계(306)). 프리셋 변수(속도 변수)는, 동작 행동에 대응하기 위한 각 규칙에 연관되어 있으며, 서비스 데이터로부터 추출될 수 있다. 실행 주체, 객체, 생성 시간, 및, 서비스 데이터와 연관된, 다른 프리셋 변수를 결정하기 위해, 규칙을 사용하여 서비스 데이터가 처리(파싱)될 수 있다.
예컨대, 동작 행동이 웹 페이지의 브라우징 행동을 포함한다면, 프리셋 변수는, 특정한 페이지 내에서 사용자에 의해 수행된 브라우징 행동의 지속시간, 및 (일간, 주간, 월간, 또는 연간과 같은) 특정한 시간 간격 내에 특정한 페이지에 대해 사용자에 의해 수행된 브라우징 행동의 수 중 적어도 하나 이상을 포함한다. 동작 행동이 결제 행동이라면, 프리셋 변수는 결제 금액을 포함한다.
각 프리셋 변수는 고유값을 포함하며, 이는 서비스 데이터의 일부에 연관된 정량적 값이다. 서비스 데이터 내에 포함된 각 프리셋 변수의 고유값이 리트리빙된다. 예컨대, 동작 행동이, 특정한 웹 페이지에 대한 브라우징 행동이라면, (브라우징 지속시간과 같은) 프리셋 변수의 고유값은 (초, 분, 시간, 또는 일과 같은) 시간 단위로 표현될 수 있다. 동작 행동이 결제 행동이라면, (결제 금액과 같은) 프리셋 변수의 고유값은 통화 단위로 표현될 수 있다. 일부 구현예에서, 프리셋 변수의 값을 획득하는 데 사용되는 서비스 데이터는, 프리셋 변수를 결정한 후에 삭제될 수 있다. 일부 구현예에서, 클라이언트는, 프리셋 변수의 값을 계산 및 획득하고 모든 서비스 데이터 및 모든 프리셋 변수를 저장하기 위해, 전술한 프리셋 알고리즘을 호출할 수 있다. 단계(306)로부터, 방법(300)은 단계(308)로 진행한다.
컴퓨팅 디바이스의 하나 이상의 프로세서에 의해 집성화된 데이터가 생성된다(단계(308)). 집성화된 데이터를 생성하는 단계는, 하나 이상의 연산을 사용하여, 프리셋 변수에 대응하는 2개 이상의 고유값을 처리하는 단계를 포함할 수 있다. 각 고유값은, 완료된 동작에 대응할 수 있다. 사용자가 한 동작을 완료했다고(예컨대, 사용자에 의해 또 다른 동작이 개시됨) 결정하는 데 응답하여, 프리셋 변수에 대응하는 고유값을 포함하는 결과가 결정될 수 있다.
예를 들면, 사용자 A는 시간 XX에 페이지 Pa 상에서 제1 브라우징 동작을 실행할 수 있다. 제1 생성된 서비스 데이터는 시간 XX, 사용자 A, 브라우징 페이지 Pa, 및, 시간 단위로 표현된 고유값(5s)을 갖는, 브라우징 지속시간을 포함한다. 소비된 대상의 변수에 대응하는 고유값 및 서비스 데이터가 저장 유닛 내에 기록될 수 있다. 사용자 A는 시간 YY에 페이지 Pa 상에서 제2 브라우징 동작을 실행할 수 있다. 제2 생성된 서비스 데이터는 시간 YY, 사용자 A, 브라우징 페이지 Pa, 및, 시간 단위로 표현된 고유값(3s)을 갖는, 브라우징 지속시간을 포함한다. 본 맥락의 예시 내에서, 제1 고유값은 5s이고 제2 고유값은 3s이며, 두 고유값 모두는, 동일한 웹 페이지에 대한 브라우징 지속시간에 대응한다. 프리셋 알고리즘은, 프리셋 변수의 감쇠값을 결정하기 위해, 하나 이상의 기록된 고유값을 사용할 수 있다.
감쇠값, 및 제1(현재의) 동작 행동에 대응하는 프리셋 변수의 제1 고유값을 포함하는 제1 결과가 프리셋 알고리즘에 대한 입력으로서 사용되어, (제1 동작 행동보다 이후의) 후속적인 동작 행동의 프리셋 변수에 대응하는 집성화된 결과(제1 결과와 감쇠값의 곱의 값)를 획득할 수 있다.
감쇠값은, 감쇠 함수를 사용하여 획득될 수 있다. 감쇠값은, 새 동작이 완료되고 새 고유값이 기록될 때마다 갱신될 수 있다. 감쇠값은 동작마다 상이하거나 동일할 수 있다.
합산, 최대값 구하기, 비반복적 결과의 수(distinct count) 구하기, 평균값 구하기, 또는 다른 계산 방법과 같은, 수학적 연산(들)을 사용하여, 프리셋 변수에 대응하는 집성화된 결과가 획득될 수 있다. 예컨대, 합산에 기초하는 집성화된 결과는
Figure 112019031952464-pct00001
으로서 표현될 수 있으며, 여기서 F(t n )은, n번째 동작 행동 후의 프리셋 변수에 대응하는 집성화된 결과이고, F(t n-1 )은, (n-1)번째 동작 행동 후의 프리셋 변수의 집성화된 결과이고, t n 은, n번째 동작 행동이 발생하는 때의 시간 정보이고, t n-1 은, (n-1)번째 동작 행동이 발생하는 때의 시간 정보이고, decay(t n , t n-1 )은, (n-1)번째 동작 행동 후의 프리셋 변수에 대응하는 집성화된 결과의 감쇠 함수이고, f(t n )은, n번째 동작 행동에 대응하는 프리셋 변수의 고유값(결과)이다. 예컨대, f(t n )은 "현재의 동작 행동"에 대응하는 증분값을 나타내며, 여기서, 프리셋 변수가 감쇠 지속시간(decay sum)이라면, f(t n )은 "현재의 동작 행동"의 지속시간과 같고, 프리셋 변수가 감쇠 횟수(decay count)라면, f(t n )은 1과 같다.
감쇠 함수는, "과거의 동작 행동"이 발생하는 순간과 "현재의 동작 행동"이 발생하는 순간 사이의 간격 지속시간인 (t n - t n- 1 )을 입력값(독립 변수)으로서 사용할 수 있다. 실용적인 서비스 요건에 따라서, 프리셋 알고리즘(수학식 1)의 출력값은 간격 지속시간 (t n - t n- 1 )에 음의 상관관계를 갖는다. 이러한, 역 상관관계는, 더 과거에 일어난 일보다는 최근에 일어난 일이 더 중요하다는 것을 나타낸다. (t n - t n- 1 )의 값은, 마지막 이벤트의 가중치를 나타낸다. 오래전에 이벤트가 일어났다면, 가중치 (t n - 1)은 (t n - t n- 1 )보다 더 작다. 더 오래된 이벤트일 수록, 현재의 동작 행동에 미치는 영향이 더 작다.
간격 지속시간이 더 클수록, 감쇠 함수의 출력값(종속 변수)이 더 작다. 감쇠 함수는 지수 함수(Exp), 로그 함수(log), 삼각 함수(1/tan(x + π/4)), 이동창 유형의 함수, 다항식 유형의 함수, 또는 임의의 다른 수학적 함수를 포함할 수 있으나 이들로 한정되지 않는다. 감쇠 함수는 또한, g((t n - t n-1 )/W)로 정의될 수 있으며, 여기서 t n 은 "현재의 동작 행동"이 일어나는 순간이고, t n-1 은 "과거의 동작 행동"이 일어나는 순간이고, W는 통계적 창 계수이다. t n = t n-1 일 때, 감쇠 함수의 값은 1이고; t n > t n-1 일 때, 감쇠 함수의 값은 1보다 작고; t n - t n-1 이 무한대에 접근할 때, 감쇠 함수의 값은 0에 접근한다.
브라우징 행동의 맥락 내에서, 클라이언트에 의해 수집된 사용자의 동작 행동에 대응하는 서비스 데이터는, 제1 페이지에 대한 제1 브라우징 행동("과거의 동작 행동"), 해당 브라우징 행동이 일어나는 시간(예컨대, 03:01), 및 해당 브라우징 행동의 지속시간(예컨대, 5초), 그리고 제1 페이지에 대한 제2 브라우징 행동("현재의 동작 행동"), 해당 브라우징 행동이 일어나는 시간(예컨대, 03:01:30), 및 해당 브라우징 행동의 지속시간(예컨대, 3초)을 포함할 수 있다.
제1 페이지 상에서 브라우징 행동을 수행하는 사용자의 (decay sum과 같은) 감쇠 지속시간 F(t n )을 결정하기 위해, 프리셋 변수가 처리될 수 있다.
Figure 112019031952464-pct00002
에 따라서, 현재의 동작 행동의 감쇠 지속시간 F(t n )은, (0.5와 같은) 감쇠 함수 decay(t n , t n-1 )의 출력값, "과거의 동작 행동"의 감쇠 지속시간 F(t n-1 ), 및 (3초와 같은) 브라우징 행동의 지속시간 f(t n )에 기초하여 결정된다.
집성화된 결과인 F(t n-1 )은, 03:01 이전에 저장된 프리셋 변수의 값을 포함한다. n=1인 경우("과거의 동작 행동" 이전에 사용자가 클라이언트 상에서 클라이언트 애플리케이션을 실행한 적이 없다면), F(t 0 )=0의 값을 설정함으로써 프리셋 변수가 초기화될 수 있다. n=1인 경우, 감쇠 지속시간 F(t 1 )은 브라우징 행동의 지속시간(예컨대, 5초)과 같다.
예시 파라미터인 F(t 1 ) = 5를 고려하면, 현재의 행동의 감쇠 지속시간 F(t n )F(t n-1 )의 값을 사용하여 결정될 수 있으며, 본 맥락의 예시에서 이 값은 F(t 1 )이다. 예컨대,
Figure 112019031952464-pct00003
이다.
동일한 페이지의 후속 사용의 경우, 사용자가 브라우징 행동을 수행할 때마다, 클라이언트 디바이스는, 브라우징 행동에 대응하는 서비스 데이터를 수집하며, 수학식 1과 같은, 동일한 수학적 공식을 사용하여, (감쇠 지속시간과 같은) 집성화된 서비스 데이터를 생성한다.
본 맥락의 예시를 계속 진행하여, 이 순간에 계산되어야 할 프리셋 변수는, 동일한 페이지에 대한 브라우징 행동을 수행하는 사용자의 감쇠 횟수(decay count)라고 가정된다. 이후, "과거의 동작 행동"에 관하여, 감쇠 함수의 출력값이 0.3과 같다고 가정되고, 계산을 통해 획득된 감쇠 횟수는, decay count = F(t n-1 )* 0.3 +1이며, 여기서 F(t n-1 )은, 03:01 이전에 저장된 프리셋 변수의 값을 지칭하고, "과거의 동작 행동" 이전에 사용자가 클라이언트 상에서 클라이언트 애플리케이션을 실행한 적이 없다면, 프리셋 변수의 값이 초기화될 수 있다. 계산을 통해 획득된 decay count = 0 * 0.3 + 1 = 1이 저장될 수 있다. 이후, "현재의 동작 행동"에 관하여, 감쇠 함수의 출력값이 0.9와 같다고 가정되며, 그러면 계산을 통해 획득되는 감쇠 횟수는, decay count = 현재 저장된 decay count의 값 * 감쇠 함수의 출력값 + 1 = 1 * 0.9 + 1 = 1.9이다. 후속적인 사용 방법에서, 사용자가 제1 페이지에 대한 브라우징 행동을 수행할 때마다, 클라이언트는, 해당 브라우징 행동에 대응하는 서비스 데이터를 수집 및 획득할 수 있으며, 전술된 계산 공식에 따라서, 감쇠 횟수(decay count)의 집성화된 계산을 수행할 수 있다.
본 명세서에 설명된 "과거의 동작 행동" 및 그다음 사용자 동작은, 동일한 페이지에 대한 2개의 인접한 (브라우징 행동과 같은) 동작 행동이다. 03:01에 제1 페이지에 대한 브라우징 행동이 일어나기 전에, 03:00에 제1 페이지에 대한 또 다른 브라우징 행동이 일어난다면, 03:00에 일어나는 브라우징 행동은 "과거의 동작 행동"으로서 지칭될 수 있고, 03:01에 일어나는 브라우징 행동은 "현재의 동작 행동"으로서 지칭될 수 있다.
동일한 페이지의 브라우징에 대한 "과거의 동작 행동"과 "현재의 동작 행동" 사이의 간격이, 일정한 수치값보다 더 크다면, 감쇠 함수의 출력값은 0에 접근할 수 있다. 감쇠 지속시간은, decay sum ≒ "현재의 동작 행동"의 브라우징 지속시간이며, 계산을 통해 획득되는 감쇠 횟수는, decay count ≒ 1이다.
프리셋 변수의 값을 계산하기 위해, 전술한 프리셋 알고리즘을 적용해야 하는 시간은, 특정한 간격으로 한정되지 않는다. 결제 행동의 맥락의 예시 내에서, 결제 금액의 집성화된 결과는, 5일(432000초)의 시간 창을 한계치로서 사용하여 결정될 수 있다.
선택된 시간 창에 대하여, 감쇠 함수는,
Figure 112019031952464-pct00004
이고, 여기서 t n 은, 현재의 결제 행동이 일어나는 시간(초 단위로 계산됨)이고, t n-1 은, 바로 이전의 결제 행동이 일어나는 시간이다.
표 1은, 상이한 시간들에서의 계산을 통해 획득된 집성화된 결과들의 개략적인 표이다.
결제 시간 금액 지난번의 결과 집성화된 결과 SUM(금액) 5일간
t1 = 07/01/2016 15:10:11 37.00 sum = 0, t0 = t1 = 0 0 * pow(e,0) + 37 = SUM1
t2 = 07/02/2016 14:20:17 12.00 sum = 37, t2 - t1 = 83406 SUM1 * pow(e, -83406/432000) + 12 = SUM2
t3 = 07/04/2016 10:19:51 55.00 sum = SUM2, t3 - t2 = 158374 SUM2 * pow(e, -158374/432000) + 55 = SUM3
t4 = 07/07/2016 19:23:01 90.00 sum = SUM3, t4 - t3 = 291790 SUM3 * pow(e, -291790/432000) + 90 = SUM4
t5 = 07/13/2016 17:10:33 140.00 sum = SUM4, t5 - t4 = 510452 SUM4 * pow(e, -510452/432000) + 140 = SUM5
t6 = 07/19/2016 09:20:25 19.00 sum = SUM5, t6 - t5 = 490192 SUM5 * pow(e, -291790/432000) + 19 = SUM6
t7 = 07/20/2016 13:55:59 23.00 sum = SUM6, t7 - t6 = 102934 SUM6 * pow(e, -291790/432000) + 23 = SUM7
t8 = 07/23/2016 03:30:13 201.00 sum = SUM7, t8 - t7 = 221654 SUM7 * pow(e, -291790/432000) + 201 = SUM8
표 1에서 사용되는 집성화 알고리즘은,
Figure 112019031952464-pct00005
이다.
F n -1 은 제1 결과이고, k는 감쇠 창 계수 또는 상수 계수이고, 근사적인 계산으로부터 초래되는 오차는 k를 조정하여 최적화될 수 있고, T n 은 제1 고유값이다.
최대값을 구하는 데 기초하는 집성화된 결과는,
Figure 112019031952464-pct00006
으로서 표현될 수 있다.
비반복적 결과의 수(distinct count)를 구하는 데 기초하는 집성화된 결과는,
Figure 112019031952464-pct00007
로서 표현될 수 있으며, 여기서 E( t last )는, 동작 행동이 가장 최근에 실행된 시간이다.
평균값을 구하는 데 기초하는 집성화된 결과는,
Figure 112019031952464-pct00008
으로서 표현될 수 있다.
클라이언트 디바이스는, 수집된 서비스 데이터 내에 포함된 프리셋 변수에 대응하는 집성화된 결과를 계산 및 획득하기 위해, 프리셋 알고리즘을 사용할 수 있다. 동작 행동을 실행하는 사용자에 의해 생성되는 서비스 데이터가 수집될 때마다, 현재의 동작 행동에 대응하는 프리셋 변수가 결정되어, 현재의 동작 이후, 프리셋 변수에 대응하는 집성화된 결과를 계산할 수 있다.
일부 구현예에서, 프리셋 변수의 집성화된 결과는 반복적 계산을 통해 획득될 수 있다. 반복적 계산에 따라서, 제1(또는 특정) 동작 행동이 시작점으로서 사용될 수 있다. 모든 후속적 동작 행동에 대하여, 집성화된 결과를 결정하기 위해, 집성화 방법이 트리거링될 수 있다. 클라이언트 디바이스에 의해 수집되는 서비스 데이터의 연속적인 갱신은, 프리셋 변수의 집성화된 결과의 연속적인 변화를 트리거링할 수 있다. 프리셋 변수의 집성화된 결과의 계산 방법은 경량 계산(lightweight computing)을 포함할 수 있다.
일부 구현예에서, 클라이언트는, 클라이언트 디바이스의 특정한 애플리케이션에 의해 디스플레이되는 동일한 페이지의 복수의 사용자의 동작 행동에 대응하는 수집된 서비스 데이터를 저장하고, 주기적으로 또는 불규칙적인 간격으로 프리셋 알고리즘을 수행하여, 집성화된 데이터를 계산할 수 있다. 일부 구현예에서, 집성화된 데이터를 계산한 후, 클라이언트는 일부 또는 모든 서비스 데이터 및 프리셋 변수를 삭제할 수 있다. 일부 구현예에서, 클라이언트 디바이스가 프리셋 변수의 집성화된 결과를 계산하고 이를 국부적으로 저장한 후, 이전에 국부적으로 저장된 "과거의 동작 행동"에 대응하는 프리셋 변수의 집성화된 결과는 삭제될 수 있다. 이러한 방식으로, 클라이언트는, 경량 저장에 의한 계산을 통해 획득된 프리셋 변수의 값에 대한 저장 방법을 구현할 수 있다. 감쇠 함수의 반복적 계산의 장점은, 데이터의 규모에 따라서 클라이언트의 저장 오버헤드 및 컴퓨팅 오버헤드가 변화하지 않도록, 계산된 데이터 전부를 영구적으로 저장하지 않아도 된다는 점이며, 이는 클라이언트의 저장, 송신, 및 컴퓨팅 능력을 크게 향상시킬 수 있다. 단계(308)로부터, 방법(300)은 단계(310)로 진행한다.
집성화된 데이터가 서버에 전송되어야 할지의 여부가 결정된다(단계(310)). 프리셋 변수의 집성화된 결과를 서버에 전송할지의 여부의 선택은, 컴퓨팅 디바이스의 애플리케이션의 파라미터 설정에 따라서 결정될 수 있다. 일부 구현예에서, (플래그 또는 트리거와 같은) 파라미터 설정은 컴퓨팅 디바이스의 사용자에 의해 활성화 또는 비활성화될 수 있다. 프리셋 변수의 집성화된 결과를 서버에 전송할 때의 선택은, 미리 구성된 트리거 메커니즘에 따라서 결정될 수 있다. 예컨대, 프리셋 변수의 집성화된 결과는 연속적으로 계산되고 국부적으로 저장될 수 있다. 특정한 시간 간격으로 또는 특정한 수의 동작 행동마다, 클라이언트 디바이스는, 현재 저장되어 있는 프리셋 변수의 집성화된 결과를 서버에 전송한다. 대안적으로, 클라이언트 디바이스는, 트리거링 행동의 식별에 응답하여, 집성화된 결과를 서버에 전송한다. 예를 들면, 사용자에 의해 트리거링되는 결제 이벤트에 응답하여, 클라이언트는, 현재 저장되어 있는 프리셋 변수의 집성화된 결과를 취득하고, 취득된 프리셋 변수의 집성화된 결과를 결제 이벤트의 거래 데이터와 함께 서버에 전송한다. 집성화된 데이터 송신은, 상대적으로 짧은 시간 내에 완료될 수 있고, 이에 의해 데이터 송신 방법에서 네트워크 리소스 소비를 줄이는, 결정된 집성화된 데이터의 일부의 실시간 송신, 및, 처리 리소스를 줄이는, 모든 집성화된 데이터의 비동기식 송신을 포함할 수 있다. 단계(310)로부터, 방법(300)은 단계(312) 또는 단계(314)로 진행한다.
컴퓨팅 디바이스의 한 컴포넌트가, 집성화된 데이터를 송신하도록 구성되어 있다면, 집성화된 데이터는 추가적인 처리를 위해 클라이언트 디바이스로부터 서버에 송신된다(단계(312)). 그렇지 않다면, 집성화된 데이터는 클라이언트 디바이스에서 추가적으로 처리된다. 위험 점수를 결정하기 위해, 집성화된 데이터가 처리된다(단계(314)). 위험 점수를 결정하는 단계는, 집성화된 결과를 위험 모형에 입력하는 단계, 및 위험 모형으로부터의 출력 결과에 따라서, 사용자의 동작 행동에 대한 위험 식별을 수행하는 단계를 포함한다. 서버는, 클라이언트에 의해 전송되는 프리셋 변수의 값을 수신하고, 이를 위험 식별 모형에 대한 입력으로서 사용한다.
위험 식별을 수행하기 위하여, 프리셋 변수의 계산된 집성화된 결과는, 서버 또는 클라이언트 디바이스의 프로세서에 의해, 클라이언트 또는 클라이언트 디바이스에 저장된 위험 식별 모형을 이용하여, 처리될 수 있다. 예컨대, 위험 식별 모형은, 위험 식별 규칙을 사용해, 위험 정보를 생성하기 위하여, 집성화된 데이터를 처리할 수 있다. 위험 정보는, 동작 행동에 연관된 위험의 수준을 나타내는 위험 점수를 포함할 수 있다. 위험 점수는 수치값 또는 정성적 값(예컨대, 낮은 위험, 중간 위험, 및 높은 위험)일 수 있다. 위험 식별 규칙은, 집성화된 데이터를 입력으로서만 사용할 수 있으며, 이는 컴퓨팅 리소스의 소비를 줄이는 장점을 제공한다. 일부 구현예에서, 위험 식별 규칙은, 위험 점수를 결정하기 위해, 집성화된 데이터를 프리셋 임계치에 비교하는 것을 포함할 수 있다. 예컨대, 프리셋 임계치는 동작 행동의 유형, 집성화된 데이터를 결정하기 위해 사용되는 수학적 함수, 제1 동작으로부터의 시간 간격, 또는 다른 파라미터에 의존할 수 있다. 일부 구현예에서, 위험 식별 모형은, 대응하는 위험 방지 규칙의 적용에 의한 위험 방지 및 제어를 포함할 수 있다. 단계(314)로부터, 방법(300)은 단계(316)로 진행한다.
위험 정보가 디스플레이된다(단계(316)). 위험 정보는 차트 또는 그래프로서 디스플레이될 수 있다. 높은 위험을 결정하는 데 응답하여, 경보가 발행될 수 있다. 일부 구현예에서, 경보는, 해당 경보를 트리거링한 위험과 연관된 클라이언트 디바이스 기능을 식별하기 위한 하나 이상의 후처리(post-processing) 동작을 트리거링할 수 있다. 일부 구현예에서, 후처리 동작은, 높은 위험과 연관된 위험을 제거(행동을 차단)하는 동작, 및 해당 위험과 연관된 메시지를 디스플레이하는 동작을 포함할 수 있다. 예컨대, 비보안 사이트를 브라우징하는 동작이, 높은 위험으로서 식별된다면, 해당 특정 사이트에 대한 액세스가 차단된다. 단계(316) 이후, 방법(300)은 정지한다.
도 4는, 본 개시의 한 구현예에 따른, 본 명세서에 설명된 알고리즘, 방법, 기능, 프로세스, 흐름, 및 절차와 연관된 계산적 기능을 제공하기 위해 사용되는 예시 컴퓨터 시스템(400)의 블록도이다. 도시된 컴퓨터(402)는, 서버, 데스크톱 컴퓨터, 랩톱/노트북 컴퓨터, 무선 데이터 포트, 스마트폰, PDA(personal data assistant), 태블릿 컴퓨팅 디바이스, 이들 디바이스 내의 하나 이상의 프로세서, 또 다른 컴퓨팅 디바이스, 또는 컴퓨팅 디바이스의 물리적 인스턴스나 가상 인스턴스, 또는 컴퓨팅 디바이스의 물리적 인스턴스나 가상 인스턴스의 조합을 비롯한, 컴퓨팅 디바이스들의 조합과 같은, 임의의 컴퓨팅 디바이스를 망라하도록 의도된다. 또한, 컴퓨터(402)는, 사용자 정보를 받아들일 수 있는, 키패드, 키보드, 터치 스크린, 또 다른 입력 디바이스, 또는 입력 디바이스들의 조합과 같은, 입력 디바이스, 그리고 그래픽 유형의 사용자 인터페이스(UI)(또는 GUI) 또는 다른 UI 상의 디지털 데이터, 시각, 청각, 또는 또 다른 유형의 정보, 또는 정보 유형들의 조합을 비롯한, 컴퓨터(402)의 동작과 연관된 정보를 전달하는 출력 디바이스를 포함하는 컴퓨터를 포함할 수 있다.
컴퓨터(402)는, 컴퓨터 시스템 내에서, 본 개시에 설명된 주제를 수행하기 위한, 클라이언트, 네트워크 컴포넌트, 서버, 데이터베이스나 또 다른 지속부(persistency)로서의 역할, 또는 또 다른 역할이나 조합된 역할로 소용될 수 있다. 도시된 컴퓨터(402)는 네트워크(430)와 통신가능하게 커플링된다. 일부 구현예에서, 컴퓨터(402)의 하나 이상의 컴포넌트는, 클라우드 컴퓨팅 기반 환경, 로컬 환경, 글로벌 환경, 또 다른 환경, 또는 환경들의 조합을 비롯한, 환경 내에서 동작하도록 구성될 수 있다.
상위 수준에서, 컴퓨터(402)는, 본 명세서에 설명된 주제와 연관된 데이터 및 정보를 수신, 송신, 처리, 저장, 또는 관리하기 위해 동작가능한 전자 컴퓨팅 디바이스이다. 일부 구현예에 따라서, 컴퓨터(402)는, 애플리케이션 서버, 이메일 서버, 웹 서버, 캐싱 서버, 스트리밍 데이터 서버, 또 다른 서버, 또는 서버들의 조합을 비롯한, 서버도 포함하거나 이러한 서버와도 통신가능하게 커플링될 수 있다.
컴퓨터(402)는 네트워크(430)를 통해 (예컨대, 또 다른 컴퓨터(402) 상에서 실행되는 클라이언트 소프트웨어 애플리케이션으로부터) 요청을 수신하고, 수신된 요청을 소프트웨어 애플리케이션 또는 소프트웨어 애플리케이션들의 조합을 사용해 처리함으로써, 수신된 요청에 응답할 수 있다. 또한, 내부 사용자로부터(예컨대, 명령 콘솔로부터 또는 또 다른 내부 액세스 방법에 의해), 외부 또는 제삼자로부터, 또는 다른 엔티티, 개인, 시스템, 또는 컴퓨터로부터, 요청이 컴퓨터(402)에 전송될 수도 있다.
컴퓨터(402)의 컴포넌트들의 각각은 시스템 버스(403)를 사용하여 통신할 수 있다. 일부 구현예에서, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합을 비롯한, 컴퓨터(402)의 임의의 또는 모든 컴포넌트는, API(application programming interface)(412), 서비스 계층(413), 또는 API(412)와 서비스 계층(413)의 조합을 사용하여 시스템 버스(403)를 통해 인터페이싱할 수 있다. API(412)는 루틴, 데이터 구조, 및 객체 클래스에 대한 사양(specification)을 포함할 수 있다. API(412)는 컴퓨터 언어에 독립적이거나 종속적일 수 있으며, 완전한 인터페이스, 단일 기능, 또는 한 세트의 API까지도 지칭할 수 있다. 서비스 계층(413)은, 컴퓨터(402)에, 또는 컴퓨터(402)에 통신가능하게 커플링된 다른 컴포넌트(도시 여부 무관)에, 소프트웨어 서비스를 제공한다. 컴퓨터(402)의 기능은, 이 서비스 계층을 사용하는 모든 서비스 소비자가 액세스가능할 수 있다. 서비스 계층(413)에 의해 제공되는 것과 같은, 소프트웨어 서비스는, 재사용가능한, 정의된 기능을, 정의된 인터페이스를 통해 제공한다. 예컨대, 인터페이스는, XML(extensible markup language) 형식, 또 다른 형식, 또는 형식들의 조합으로 데이터를 제공하는, JAVA, C++, 또 다른 컴퓨팅 언어, 또는 컴퓨팅 언어들의 조합으로 작성된 소프트웨어일 수 있다. API(412) 또는 서비스 계층(413)은 컴퓨터(402)의 통합된 컴포넌트인 것으로 도시되었지만, 대안적인 구현예에서는 API(412) 또는 서비스 계층(413)을 컴퓨터(402)의 다른 컴포넌트에 대한, 또는 컴퓨터(402)에 통신가능하게 커플링된 다른 컴포넌트(도시 여부 무관)에 대한 독립형 컴포넌트로서 도시할 수 있다. 또한, API(412) 또는 서비스 계층(413)의 임의의 또는 모든 부분은, 본 개시의 범위로부터 벗어나지 않으면서, 또 다른 소프트웨어 모듈, 엔터프라이즈 애플리케이션, 또는 하드웨어 모듈의 하위 요소(child) 또는 서브모듈로서 구현될 수 있다.
컴퓨터(402)는 인터페이스(404)를 포함한다. 도 4에는 단일 인터페이스(404)로서 도시되었지만, 컴퓨터(402)의 특정한 필요사항, 요구사항, 또는 특정한 구현예에 따라서 2개 이상의 인터페이스(404)가 사용될 수 있다. 인터페이스(404)는, 분산형 환경에서 네트워크(430)에 통신가능하게 링크된 또 다른 컴퓨팅 시스템(도시 여부 무관)과 통신하기 위해 컴퓨터(402)에 의해 사용된다. 일반적으로, 인터페이스(404)는 네트워크(430)와 통신하도록 동작가능하고, 소프트웨어, 하드웨어, 또는 소프트웨어와 하드웨어의 조합 내에 인코딩된 논리를 포함한다. 더 구체적으로, 인터페이스(404)는, 도시된 컴퓨터(402)의 내부 및 외부에 물리적 신호를 전달하기 위해 네트워크(430) 또는 인터페이스의 하드웨어가 동작가능하도록, 통신과 연관된 하나 이상의 통신 프로토콜을 지원하는 소프트웨어를 포함할 수 있다.
컴퓨터(402)는 프로세서(405)를 포함한다. 도 4에는 단일 프로세서(405)로서 도시되었지만, 컴퓨터(402)의 특정한 필요사항, 요구사항, 또는 특정한 구현예에 따라서 2개 이상의 프로세서가 사용될 수 있다. 일반적으로, 프로세서(405)는, 본 개시에 설명된 바와 같이, 컴퓨터(402)의 동작 및 임의의 알고리즘, 방법, 기능, 프로세스, 흐름, 및 절차를 수행하기 위하여, 명령어를 실행하고 데이터를 다룬다.
컴퓨터(402)는, 컴퓨터(402), 네트워크(430)에 통신가능하게 링크된 또 다른 컴포넌트(도시 여부 무관), 또는 컴퓨터(402)와 또 다른 컴포넌트의 조합을 위한 데이터를 보유할 수 있는 데이터베이스(406)도 포함한다. 예컨대, 데이터베이스(406)는 인메모리(in-memory) 데이터베이스, 종래의 데이터베이스, 또는 본 개시에 모순되지 않는 데이터를 저장한 또 다른 유형의 데이터베이스일 수 있다. 일부 구현예에서, 컴퓨터(402) 및 본 명세서에 설명된 기능의 특정한 필요사항, 요구사항, 또는 특정한 구현예에 따라서, 데이터베이스(406)는 2개 이상의 상이한 데이터베이스 유형의 조합(예컨대, 인메모리 데이터베이스와 종래 데이터베이스의 하이브리드 데이터베이스)일 수 있다. 도 4에는 단일 데이터베이스(406)로서 도시되었지만, 컴퓨터(402) 및 본 명세서에 설명된 기능의 특정한 필요사항, 요구사항, 또는 특정한 구현예에 따라서, 유사한 또는 상이한 유형의 2개 이상의 데이터베이스가 사용될 수 있다. 데이터베이스(406)는 컴퓨터(402)의 통합형 컴포넌트로서 도시되었지만, 대안적 구현예에서, 데이터베이스(406)는 컴퓨터(402)의 외부에 있을 수 있다. 도시된 바와 같이, 데이터베이스(406)는, 전술한 고유값을 갖는 변수(416) 및 집성화된 데이터(418)를 보유한다.
컴퓨터(402)는, 컴퓨터(402), 네트워크(430)에 통신가능하게 링크된 또 다른 컴포넌트 또는 컴포넌트들(도시 여부 무관), 또는 컴퓨터(402)와 또 다른 컴포넌트의 조합을 위한 데이터를 보유할 수 있는 메모리(407)도 포함한다. 메모리(407)는, 본 개시에 모순되지 않는 임의의 데이터를 저장할 수 있다. 일부 구현예에서, 컴퓨터(402) 및 본 명세서에 설명된 기능의 특정한 필요사항, 요구사항, 또는 특정한 구현예에 따라서, 메모리(407)는 2개 이상의 상이한 유형의 메모리의 조합(예컨대, 반도체와 자기 저장장치의 조합)일 수 있다. 도 4에는 단일 메모리(407)로서 도시되었지만, 컴퓨터(402) 및 본 명세서에 설명된 기능의 특정한 필요사항, 요구사항, 또는 특정한 구현예에 따라서, 유사한 또는 상이한 유형의 2개 이상의 메모리(407)가 사용될 수 있다. 메모리(407)는 컴퓨터(402)의 통합형 컴포넌트로서 도시되었지만, 대안적 구현예에서 메모리(407)는 컴퓨터(402)의 외부에 있을 수 있다.
애플리케이션(408)은, 컴퓨터(402)의 특정한 필요사항, 요구사항, 또는 특정한 구현예에 따라서, 특히 본 개시에 설명된 기능과 관련된, 기능을 제공하는 알고리즘적 소프트웨어 엔진이다. 예컨대, 애플리케이션(408)은 하나 이상의 컴포넌트, 모듈, 또는 애플리케이션으로서의 역할로 소용될 수 있다. 또한, 단일 애플리케이션(408)으로서 도시되었지만, 애플리케이션(408)은 다수의 애플리케이션(408)으로서 컴퓨터(402) 상에 구현될 수 있다. 또한, 애플리케이션(408)은 컴퓨터(402)에 통합된 것으로 도시되었지만, 대안적 실시예에서 애플리케이션(408)은 컴퓨터(402)의 외부에 있을 수 있다.
컴퓨터(402)는 전력 공급장치(414)도 포함할 수 있다. 전력 공급장치(414)는, 사용자가 교체할 수 있도록 또는 사용자가 교체할 수 없도록 구성될 수 있는 재충전식 또는 비재충전식 배터리를 포함할 수 있다. 일부 구현예에서, 전력 공급장치(414)는 (재충전, 대기, 또는 또 다른 전력 관리 기능을 포함한) 전력 변환 또는 관리 회로를 포함할 수 있다. 일부 구현예에서, 전력 공급장치(414)는, 예컨대, 컴퓨터(402)에 전력을 공급하거나 재충전식 배터리를 재충전하기 위하여, 컴퓨터(402)가 벽면 소켓 또는 또 다른 전원에 플러깅될 수 있도록 하는 전원 플러그를 포함할 수 있다.
네트워크(430)를 통해 통신하는 각 컴퓨터(402)를 포함하는 컴퓨터 시스템과 연관된 또는 이러한 컴퓨터 시스템의 외부에 있는 임의의 수의 컴퓨터(402)가 존재할 수 있다. 또한, "클라이언트" 또는 "사용자"라는 용어나 다른 적절한 용어는, 적절한 경우, 본 개시의 범위로부터 벗어나지 않으면서, 상호교환가능하게 사용될 수 있다. 또한, 본 개시는 여러 사용자가 한 컴퓨터(402)를 사용하거나 한 사용자가 다수의 컴퓨터(402)를 사용할 수 있음을 예상한다.
본 명세서에 설명된 주제의 구현예는 하나 이상의 특징을 단독으로 또는 조합으로 포함할 수 있다.
예컨대, 제1 구현예에서, 서비스 데이터의 위험 식별을 위한 컴퓨터-구현 방법은, 클라이언트측 컴퓨팅 디바이스에 의해, 클라이언트측 컴퓨팅 디바이스 상에서의 사용자 입력과 연관된 제1 동작 행동에 대응하는 제1 서비스 데이터를 결정하는 단계, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 서비스 데이터에 대응하는 제1 변수로서, 제1 고유값을 포함하는 제1 변수를 결정하는 단계, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 동작 행동 이전의 제2 시간에 수행된 제2 동작 행동에 대응하는 제2 고유값을 리트리빙하는 단계, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 시간 및 제2 시간의 감쇠 함수를 처리함으로써, 감쇠값을 생성하는 단계, 클라이언트측 컴퓨팅 디바이스에 의해, 집성화 함수를 사용해, 제1 변수, 제2 고유값, 및 감쇠값을 처리함으로써, 집성화된 데이터를 생성하는 단계, 및 하나 이상의 프로세서에 의해, 위험 식별 모형을 사용해, 집성화된 데이터를 처리함으로써, 제1 동작 행동과 연관된 위험을 결정하는 단계를 포함한다.
전술한 또는 다른 설명된 구현예는 각각, 선택적으로, 다음의 특징 중 하나 이상을 포함할 수 있다.
다음의 특징 중 임의의 특징과 조합가능한 제1 특징은, 집성화된 데이터를 생성하는 데 응답하여, 제2 고유값을 삭제하는 단계를 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제2 특징에서, 하나 이상의 프로세서는 서버측 컴퓨팅 디바이스 내에 통합되어 있다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제3 특징은, 집성화된 데이터를 클라이언트측 컴퓨팅 디바이스로부터 서버측 컴퓨팅 디바이스에 송신하는 단계를 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제4 특징에서, 집성화 함수는, 합산 연산, 최대값의 식별, 및 비반복적 결과의 식별 중 적어도 하나를 정의하는 수학적 연산을 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제5 특징에서, 감쇠 함수는, 지수 함수, 로그 함수, 삼각 함수, 이동창 유형의 함수, 및 다항식 유형의 함수 중 적어도 하나를 정의하는 수학적 연산을 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제6 특징은, 제1 동작 행동과 연관된 위험을 클라이언트측 컴퓨팅 디바이스의 사용자에게 디스플레이하는 단계를 포함한다.
제2 구현예에서, 비일시적 컴퓨터-판독가능 매체는, 동작들을 수행하기 위해 컴퓨터 시스템에 의해 실행가능한 하나 이상의 명령어를 저장하며, 동작들은, 클라이언트측 컴퓨팅 디바이스에 의해, 클라이언트측 컴퓨팅 디바이스 상에서의 사용자 입력과 연관된 제1 동작 행동에 대응하는 제1 서비스 데이터를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 서비스 데이터에 대응하는 제1 변수로서, 제1 고유값을 포함하는 제1 변수를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 동작 행동 이전의 제2 시간에 수행된 제2 동작 행동에 대응하는 제2 고유값을 리트리빙하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 시간 및 제2 시간의 감쇠 함수를 처리함으로써, 감쇠값을 생성하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 집성화 함수를 사용해, 제1 변수, 제2 고유값, 및 감쇠값을 처리함으로써, 집성화된 데이터를 생성하는 동작, 및 하나 이상의 프로세서에 의해, 위험 식별 모형을 사용해, 집성화된 데이터를 처리함으로써, 제1 동작 행동과 연관된 위험을 결정하는 동작을 포함한다.
전술한 또는 다른 설명된 구현예는 각각, 선택적으로, 다음의 특징 중 하나 이상을 포함할 수 있다.
다음의 특징 중 임의의 특징과 조합가능한 제1 특징은, 집성화된 데이터를 생성하는 데 응답하여, 제2 고유값을 삭제하는 동작을 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제2 특징에서, 하나 이상의 프로세서는 서버측 컴퓨팅 디바이스 내에 통합되어 있다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제3 특징은, 집성화된 데이터를 클라이언트측 컴퓨팅 디바이스로부터 서버측 컴퓨팅 디바이스에 송신하는 동작을 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제4 특징에서, 집성화 함수는, 합산 연산, 최대값의 식별, 및 비반복적 결과의 식별 중 적어도 하나를 정의하는 수학적 연산을 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제5 특징에서, 감쇠 함수는, 지수 함수, 로그 함수, 삼각 함수, 이동창 유형의 함수, 및 다항식 유형의 함수 중 적어도 하나를 정의하는 수학적 연산을 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제6 특징은, 제1 동작 행동과 연관된 위험을 클라이언트측 컴퓨팅 디바이스의 사용자에게 디스플레이하는 동작을 포함한다.
제3 구현예에서, 컴퓨터-구현 시스템은 하나 이상의 컴퓨터 및, 하나 이상의 컴퓨터와 상호운용가능하게 커플링되고, 하나 이상의 컴퓨터에 의해 실행될 때 동작들을 수행하는 명령어를 저장한 유형의(tangible) 비일시적 기계-판독가능 매체를 갖는 하나 이상의 컴퓨터 메모리 디바이스를 포함하며, 동작들은, 클라이언트측 컴퓨팅 디바이스에 의해, 클라이언트측 컴퓨팅 디바이스 상에서의 사용자 입력과 연관된 제1 동작 행동에 대응하는 제1 서비스 데이터를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 서비스 데이터에 대응하는 제1 변수로서, 제1 고유값을 포함하는 제1 변수를 결정하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 동작 행동 이전의 제2 시간에 수행된 제2 동작 행동에 대응하는 제2 고유값을 리트리빙하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 제1 시간 및 제2 시간의 감쇠 함수를 처리함으로써, 감쇠값을 생성하는 동작, 클라이언트측 컴퓨팅 디바이스에 의해, 집성화 함수를 사용해, 제1 변수, 제2 고유값, 및 감쇠값을 처리함으로써, 집성화된 데이터를 생성하는 동작, 및 하나 이상의 프로세서에 의해, 위험 식별 모형을 사용해, 집성화된 데이터를 처리함으로써, 제1 동작 행동과 연관된 위험을 결정하는 동작을 포함한다.
전술한 또는 다른 설명된 구현예는 각각, 선택적으로, 다음의 특징 중 하나 이상을 포함할 수 있다.
다음의 특징 중 임의의 특징과 조합가능한 제1 특징은, 집성화된 데이터를 생성하는 데 응답하여, 제2 고유값을 삭제하는 동작을 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제2 특징에서, 하나 이상의 프로세서는 서버측 컴퓨팅 디바이스 내에 통합되어 있다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제3 특징은, 집성화된 데이터를 클라이언트측 컴퓨팅 디바이스로부터 서버측 컴퓨팅 디바이스에 송신하는 동작을 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제4 특징에서, 집성화 함수는, 합산 연산, 최대값의 식별, 및 비반복적 결과의 식별 중 적어도 하나를 정의하는 수학적 연산을 포함한다.
이전의 또는 다음의 특징 중 임의의 특징과 조합가능한 제5 특징에서, 감쇠 함수는, 지수 함수, 로그 함수, 삼각 함수, 이동창 유형의 함수, 및 다항식 유형의 함수 중 적어도 하나를 정의하는 수학적 연산을 포함한다.
본 명세서에 설명된 주제 및 기능적 동작의 구현예는, 디지털 전자 회로부로, 유형적으로 수록된 컴퓨터 소프트웨어 또는 펌웨어로, 본 명세서에 개시된 구조 및 그 구조적 등가물을 비롯한 컴퓨터 하드웨어로, 또는 이들 중 하나 이상의 조합으로 구현될 수 있다. 본 명세서에 설명된 주제의 소프트웨어 구현예는, 하나 이상의 컴퓨터 프로그램으로서, 즉, 데이터 처리 장치에 의한 실행을 위해 또는 데이터 처리 장치의 동작을 제어하기 위해 유형의 비일시적 컴퓨터-판독가능 컴퓨터-저장 매체 상에 인코딩된 하나 이상의 컴퓨터 프로그램 명령어 모듈로서 구현될 수 있다. 대안적으로, 또는 추가적으로, 프로그램 명령어는, 인공적으로 생성되어 전파되는 신호, 예컨대, 데이터 처리 장치에 의한 실행을 위해 수신기 장치로 송신할 정보를 인코딩하기 위하여 생성되는 기계-생성형 전기, 광학, 또는 전자기 신호 내에/상에 인코딩될 수 있다. 컴퓨터-저장 매체는 기계-판독가능 저장 디바이스, 기계-판독가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 디바이스, 또는 컴퓨터-저장 매체들의 조합일 수 있다. 하나 이상의 컴퓨터를 구성한다는 것은, 하나 이상의 컴퓨터가, 하나 이상의 컴퓨터에 의해 소프트웨어가 실행될 때 특정한 컴퓨팅 동작이 수행되도록 설치된 하드웨어, 펌웨어, 또는 소프트웨어(또는 하드웨어, 펌웨어, 및 소프트웨어의 조합)를 갖는다는 것을 의미한다.
"실-시간", "실 시간", "실시간", "실 (고속) 시간(RFT)", "근 실-시간(NRT)", "준 실-시간", 또는 (당업자에 의해 이해되는) 이와 유사한 용어는, 행동과 응답이 실질적으로 동시에 발생한다고 개인이 인지하도록, 행동과 응답이 시간적으로 근접하다는 것을 의미한다. 예컨대, 데이터에 액세스하기 위한 개인의 행동에 수반되는 데이터의 디스플레이(또는 디스플레이의 초기화)에 대한 응답에 대한 시간차는 1밀리초(ms) 미만, 1초(s) 미만, 또는 5s 미만일 수 있다. 요청된 데이터는 즉각적으로 디스플레이(또는 디스플레이를 위해 초기화)될 필요가 없지만, 요청된 데이터는, 본 명세서에 설명된 컴퓨터 시스템의 처리 한계, 그리고, 예컨대, 데이터를 수집하거나, 정확히 측정하거나, 분석하거나, 처리하거나, 저장하거나, 송신하는 데 요구되는 시간을 고려하여, 임의의 의도적인 지연 없이 디스플레이(또는 디스플레이를 위해 초기화)된다.
"데이터 처리 장치", "컴퓨터", 또는 "전자 컴퓨터 디바이스"라는 용어(또는 당업자에 의해 이해되는 등가물)는, 데이터 처리 하드웨어를 지칭하며, 예를 들면, 프로그래밍가능 프로세서, 컴퓨터, 또는 다수의 프로세서나 컴퓨터를 비롯하여, 데이터를 처리하기 위한 모든 종류의 장치, 디바이스, 및 기계를 망라한다. 이러한 장치는, 특수 목적 논리 회로부, 예컨대, CPU(central processing unit), FPGA(field programmable gate array), 또는 ASIC(application-specific integrated circuit)일 수도 있거나 이러한 특수 목적 논리 회로부를 더 포함할 수도 있다. 일부 구현예에서, 데이터 처리 장치 또는 특수 목적 논리 회로부(또는 데이터 처리 장치와 특수 목적 논리 회로부의 조합)는 하드웨어 기반이거나 소프트웨어 기반(또는 하드웨어 기반 및 소프트웨어 기반 둘 다의 조합)일 수 있다. 이러한 장치는, 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드, 예컨대, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 또는 실행 환경들의 조합을 구성하는 코드를 선택적으로 포함할 수 있다. 본 개시는, 어떠한 유형의 운영 체제, 예컨대 LINUX, UNIX, WINDOWS, MAC OS, ANDROID, IOS, 또 다른 운영 체제, 또는 운영 체제들의 조합을 갖는 데이터 처리 장치의 사용을 고려한다.
프로그램, 소프트웨어, 소프트웨어 애플리케이션, 모듈, 소프트웨어 모듈, 스크립트, 또는 코드로도 지칭되거나 설명될 수 있는 컴퓨터 프로그램은, 컴파일러형이나 인터프리터형 언어, 또는 선언형이나 절차형 언어를 비롯한 임의의 형태의 프로그래밍 언어로 작성될 수 있으며, 독립형 프로그램, 또는, 컴퓨팅 환경에서의 사용을 위한, 모듈, 컴포넌트, 서브루틴, 또는 또 다른 유닛을 비롯한 임의의 형태로 배치될 수 있다. 컴퓨터 프로그램은 파일 시스템 내의 파일에 대응할 수 있으나, 그러할 필요는 없다. 프로그램은, 다른 프로그램 또는 데이터를 보유한 파일의 일부, 예컨대, 마크업 언어 문서 내에 저장된 하나 이상의 스크립트에 저장되거나, 해당 프로그램 전용 단일 파일에 저장되거나, 다수의 조정된 파일, 예컨대, 하나 이상의 모듈, 서브프로그램, 또는 코드의 부분들을 저장한 파일들에 저장될 수 있다. 컴퓨터 프로그램은 한 컴퓨터 상에서, 또는 한 지점에 위치되거나, 다수의 지점에 걸쳐 분산되고 통신 네트워크에 의해 상호연결된 다수의 컴퓨터 상에서 실행되기 위하여 배치될 수 있다.
다양한 도면에 도시된 프로그램의 부분들은, 다양한 객체, 방법, 또는 다른 프로세스를 사용해, 본 명세서에 설명된 특징 및 기능을 구현하는 개별적인 모듈로서 도시되어 있을 수 있지만, 적절한 경우, 프로그램은 그 대신 다수의 서브모듈, 제삼자 서비스, 컴포넌트, 라이브러리 등을 포함할 수 있다. 반대로, 적절한 경우, 다양한 컴포넌트의 특징 및 기능이 단일 컴포넌트에 조합될 수 있다. 계산적 결정을 실행하기 위해 사용되는 임계치는 정적으로, 동적으로, 또는 정적 및 동적 두 방식 모두로 결정될 수 있다.
본 명세서에 설명된 방법, 프로세스, 또는 논리 흐름은, 본 개시에 모순되지 않는 기능의 하나 이상의 예시를 나타내며, 설명된 또는 도시된 구현예로 본 개시를 제한하도록 의도된 것이 아니라, 본 명세서에 설명된 원리 및 특징에 모순되지 않는 가장 넒은 범위가 부여되도록 의도된 것이다. 본 명세서에 설명된 방법, 프로세스, 또는 논리 흐름은, 입력 데이터에 대해 연산을 수행하고 출력 데이터를 생성함으로써 기능을 수행하기 위한 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래밍가능 컴퓨터에 의해 수행될 수 있다. 이러한 방법, 프로세스, 또는 논리 흐름은 특수 목적 논리 회로부, 예컨대, CPU, FPGA, 또는 ASIC에 의해 수행될 수도 있거나, 이러한 특수 목적 논리 회로부로서 장치가 구현될 수도 있다.
컴퓨터 프로그램의 실행을 위한 컴퓨터는, 범용 또는 특수 목적 마이크로프로세서, 둘 다, 또는 또 다른 유형의 CPU를 기반으로 할 수 있다. 일반적으로, CPU는 메모리로부터 명령어 및 데이터를 수신하고 메모리에 기입한다. 컴퓨터의 필수 요소는, 명령어를 수행 또는 실행하기 위한 CPU, 그리고 명령어 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한, 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스, 예컨대, 자기 디스크, 자기-광학 디스크, 또는 광학 디스크를 포함할 것이며, 또는, 이러한 대용량 저장 디바이스로부터 데이터를 수신하거나, 이러한 대용량 저장 디바이스에 데이터를 전송하거나, 둘 다를 수행하도록, 이러한 대용량 저장 디바이스에 동작가능하게 커플링될 것이다. 그러나, 컴퓨터가 그러한 디바이스를 가질 필요는 없다. 또한, 컴퓨터는 또 다른 디바이스, 예컨대, 모바일 전화, PDA(personal digital assistant), 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, GPS(global positioning system) 수신기, 또는 휴대용 메모리 저장 디바이스 내에 임베딩될 수 있다.
컴퓨터 프로그램 명령어 및 데이터를 저장하기 위한 비일시적 컴퓨터-판독가능 매체는, 예를 들면, 반도체 메모리 디바이스, 예컨대, RAM(random access memory), ROM(read-only memory), PRAM(phase change memory), SRAM(static random access memory), DRAM(dynamic random access memory), EPROM(erasable programmable read-only memory), EEPROM(electrically erasable programmable read-only memory), 및 플래시 메모리 디바이스; 자기 디바이스, 예컨대, 테이프, 카트리지, 카세트, 내장형/탈착형 디스크; 자기-광학 디스크; 및 광학 메모리 디바이스, 예컨대, DVD(digital video disc), CD-ROM, DVD+/-R, DVD-RAM, DVD-ROM, HD-DVD, 및 BLURAY, 및 다른 광학 메모리 기술을 비롯한, 모든 형태의 영구적/비영구적 또는 휘발성/비휘발성 메모리, 매체, 및 메모리 디바이스를 포함할 수 있다. 메모리는, 캐시, 클래스, 프레임워크, 애플리케이션, 모듈, 백업 데이터, 작업, 웹 페이지, 웹 페이지 템플리트, 데이터 구조, 데이터베이스 테이블, 동적 정보를 저장한 저장소, 또는 임의의 파라미터, 변수, 알고리즘, 명령어, 규칙, 제한사항, 또는 참조를 포함한 다른 적절한 정보를 비롯한, 다양한 객체 또는 데이터를 저장할 수 있다. 또한, 메모리는, 로그, 정책, 보안 또는 액세스 데이터, 또는 보고 파일과 같은, 다른 적절한 데이터를 포함할 수 있다. 프로세서 및 메모리는 특수 목적 논리 회로부에 의해 보완되거나 특수 목적 논리 회로부에 포함될 수 있다.
사용자와의 상호작용이 가능하도록 하기 위하여, 본 명세서에 설명된 주제의 구현예는, 사용자에게 정보를 디스플레이하기 위한 디스플레이 디바이스, 예컨대, CRT(cathode ray tube), LCD(liquid crystal display), LED(Light Emitting Diode), 또는 플라즈마 모니터, 그리고, 사용자가 컴퓨터에 입력을 제공하도록 할 수 있는, 포인팅 디바이스, 예컨대, 마우스, 트랙볼, 또는 트랙패드, 및 키보드를 갖는 컴퓨터 상에 구현될 수 있다. 입력은, 감압식 태블릿 컴퓨터 표면, 정전용량식 멀티터치 스크린, 또는 또 다른 유형의 터치스크린과 같은, 터치스크린을 사용하여 컴퓨터에 제공될 수도 있다. 사용자와 상호작용하기 위하여 다른 유형의 디스플레이가 사용될 수 있다. 예컨대, 사용자에게 제공되는 피드백은, (시각, 청각, 촉각, 또는 피드백 유형들의 조합과 같은) 임의의 형태의 감각 피드백일 수 있다. 사용자로부터의 입력은, 음향, 음성, 또는 촉각 입력을 비롯한 임의의 형태로 수신될 수 있다. 또한, 컴퓨터는, 사용자에 의해 사용되는 디바이스에 문서를 전송하고 해당 디바이스로부터 문서를 수신함으로써, (예컨대, 웹 브라우저로부터 수신되는 요청에 응답하여, 사용자의 클라이언트 디바이스 상의 웹 브라우저에 웹 페이지를 전송함으로써) 사용자와 상호작용할 수 있다.
"그래픽 사용자 인터페이스" 또는 "GUI"라는 용어는, 하나 이상의 그래픽 사용자 인터페이스, 그리고 특정한 그래픽 사용자 인터페이스의 디스플레이의 각각을 설명하기 위하여 단수형 또는 복수형으로 사용될 수 있다. 따라서, GUI는, 정보를 처리하고 정보 결과를 사용자에게 효율적으로 제공하는 웹 브라우저, 터치 스크린, 또는 CLI(command line interface)를 포함하지만 이에 한정되지 않는 임의의 그래픽 사용자 인터페이스를 나타낼 수 있다. 일반적으로, GUI는 복수의 사용자 인터페이스(UI) 요소를 포함할 수 있으며, 그 일부 또는 모두는, 인터랙티브 필드(interactive field), 풀다운 목록, 및 버튼과 같이, 웹 브라우저와 연관되어 있을 수 있다. 이러한 UI 요소 및 다른 UI 요소는 웹 브라우저의 기능에 관련되어 있거나 웹 브라우저의 기능을 나타낼 수 있다.
본 명세서에 설명된 주제의 구현예는, 예컨대 데이터 서버로서의, 백엔드 컴포넌트를 포함하는, 또는 미들웨어 컴포넌트, 예컨대, 애플리케이션 서버를 포함하는, 또는 프론트엔드 컴포넌트, 예컨대, 사용자가 본 명세서에 설명된 주제의 구현예와 상호작용할 수 있도록 하는 그래픽 사용자 인터페이스 또는 웹 브라우저를 갖는 클라이언트 컴퓨터를 포함하는, 또는 하나 이상의 그러한 백엔드 컴포넌트나, 미들웨어 컴포넌트나, 프론트엔드 컴포넌트의 임의의 조합을 포함하는 컴퓨팅 시스템으로 구현될 수 있다. 시스템의 컴포넌트들은 임의의 형태 또는 매체의 유선 또는 무선 디지털 데이터 통신(또는 데이터 통신의 조합), 예컨대, 통신 네트워크에 의해 상호연결될 수 있다. 통신 네트워크의 예는, LAN(local area network), RAN(radio access network), MAN(metropolitan area network), WAN(wide area network), WIMAX(Worldwide Interoperability for Microwave Access), 예컨대 802.11 a/b/g/n 또는 802.20(또는 802.11x와 802.20의 조합이나 본 개시에 모순되지 않는 다른 프로토콜)을 사용하는 WLAN(wireless local area network), 인터넷의 모두 또는 일부, 또 다른 통신 네트워크, 또는 통신 네트워크들의 조합을 포함한다. 통신 네트워크는, 예컨대, IP(Internet Protocol) 패킷, Frame Relay 프레임, ATM 셀(Asynchronous Transfer Mode cell), 음성, 동영상, 데이터, 또는 다른 정보를 사용하여 네트워크 주소 사이에서 통신할 수 있다.
컴퓨팅 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 멀리 떨어져 있으며, 통상적으로 통신 네트워크를 통해 상호작용한다. 클라이언트와 서버의 관계는, 각 컴퓨터 상에서 실행되고 서로에 대해 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의해 발생한다.
본 명세서는 다수의 특정한 구현예의 세부사항을 포함하고 있지만, 이들은 임의의 발명의 범위 또는 청구 대상이 될 수 있는 것의 범위에 대한 제한으로서 해석되어서는 안 되며, 오히려, 특정한 발명의 특정한 구현예에 특유할 수 있는 특징의 설명으로서 해석되어야 한다. 분리된 구현예의 맥락에서 본 명세서에 설명된 특정한 특징들은 단일 구현예에서 조합되어 구현될 수도 있다. 반대로, 단일 구현예의 맥락에서 설명된 다양한 특징은 다수 구현예에서 분리되어 또는 임의의 부분조합으로 구현될 수도 있다. 또한, 전술한 특징은 특정한 조합으로 작동하는 것으로 설명되고 최초에 그와 같이 청구될 수도 있으나, 청구된 조합으로부터의 하나 이상의 특징은, 일부 경우, 조합으로부터 삭제될 수 있고, 청구된 조합은 부분조합 또는 부분조합의 변형예에 관한 것일 수 있다.
지금까지 본 명세서의 주제의 특정한 구현예가 설명되었다. 설명된 구현예의 다른 구현예, 변형예, 및 치환예는, 당업자에게 분명할 바와 같이, 다음 청구범위 내에 있다. 도면 또는 청구항에 동작들이 특정한 순서로 묘사되어 있으나, 이는 바람직한 결과를 달성하기 위하여 그러한 동작들이, 도시된 특정한 순서 또는 순차적 순서로 수행될 것 또는 설명된 모든 동작이 수행될 것(일부 동작은 선택적인 것으로 간주될 수 있음)을 요구하는 것으로 이해되어서는 안 된다. 특정한 상황에서, 멀티태스킹 또는 병렬 처리(또는 멀티태스킹과 병렬 처리의 조합)가 이로울 수 있으며 적절하다고 간주되는 방식으로 수행될 수 있다.
또한, 전술한 구현예에서의 다양한 시스템 모듈 및 컴포넌트의 분리 또는 통합은, 모든 구현예에서 그러한 분리 또는 통합을 요구하는 것으로 이해되어서는 안 되며, 설명된 프로그램 컴포넌트 및 시스템은 일반적으로 단일 소프트웨어 제품에 함께 통합되거나 다수의 소프트웨어 제품으로 패키징될 수 있는 것으로 이해되어야 한다.
따라서, 전술한 예시 구현예들은 본 개시를 한정하거나 제한하지 않는다. 본 개시의 사상 및 범위로부터 벗어나지 않으면서, 다른 변화, 대체, 및 변경 또한 가능하다.
또한, 임의의 청구된 구현예는 적어도 컴퓨터-구현 방법; 컴퓨터-구현 방법을 수행하기 위한 컴퓨터-판독가능 명령어를 저장한 비일시적 컴퓨터-판독가능 매체; 및 비일시적 컴퓨터-판독가능 매체 상에 저장된 명령어 또는 컴퓨터-구현 방법을 수행하도록 구성된 하드웨어 프로세서와 상호운용가능하게 커플링된 컴퓨터 메모리를 포함하는 컴퓨터 시스템에 적용가능한 것으로 간주된다.

Claims (20)

  1. 데이터를 처리하기 위한 방법에 있어서,
    클라이언트 디바이스의 사용자가 제1 시간에 제1 동작 행동을 실행함으로써 생성된 서비스 데이터를 수집하는 단계(304);
    상기 제1 동작 행동에 대응하는 프리셋 변수를 결정하는 단계(306);
    상기 사용자가 상기 제1 시간 이전인 제2 시간에 제2 동작 행동을 실행한 후의 상기 프리셋 변수에 대응하는 제1 결과를 취득하는 단계(308);
    상기 제1 결과에 따라서, 상기 제1 동작 행동에 대응하고 상기 서비스 데이터 내에 포함되어 있는 상기 프리셋 변수의 제1 고유값(eigenvalue)을 계산하는 단계(308);
    상기 사용자가 상기 제2 동작 행동을 실행할 때 생성된 제1 시간 정보 및 상기 사용자가 상기 제1 동작 행동을 실행할 때 생성된 제2 시간 정보를 결정하는 단계;
    상기 제1 시간 정보 및 상기 제2 시간 정보에 따라서, 상기 프리셋 변수의 감쇠값을 결정하는 단계 - 상기 감쇠값은 상기 제2 시간 정보에 기초하여 가중화됨(weighted) - ;
    상기 제1 결과, 상기 제1 고유값, 및 상기 감쇠값에 따라서, 그리고 프리셋 알고리즘을 이용함으로써, 상기 제1 동작 행동 후의 상기 프리셋 변수에 대응하는 제2 결과를 획득하도록 계산하는 단계;
    상기 제2 결과를 획득하는 데 응답하여, 상기 서비스 데이터 및 상기 제1 결과를 삭제하는 단계; 및
    상기 제2 결과에 기초하여, 상기 클라이언트 디바이스의 사용자의 신원의 신뢰성을 식별하는 단계
    를 포함하는, 데이터를 처리하기 위한 방법.
  2. 삭제
  3. 제1항에 있어서, 상기 제2 결과를 획득하도록 계산하는 단계는,
    상기 제1 결과와 상기 감쇠값의 곱의 값을 계산하는 단계; 및
    상기 곱의 값과 상기 제1 고유값을 합산하는 단계를 포함하고, 획득되는 합산 값은, 상기 제1 동작 행동 후의 상기 프리셋 변수에 대응하는 상기 제2 결과인, 데이터를 처리하기 위한 방법.
  4. 제1항에 있어서,
    상기 감쇠값은, 상기 프리셋 변수에 대응하는 누적된 결과의 감쇠 계수에 비례하는 감쇠 함수를 사용해 결정되고, 상기 감쇠 함수는, 지수 함수, 로그 함수, 삼각 함수, 이동창 유형의 함수(moving window type function), 또는 다항식 유형의 함수를 포함하는, 데이터를 처리하기 위한 방법.
  5. 제1항에 있어서, 상기 동작 행동은, 상기 사용자에 의해 브라우징되는 페이지에 대한 브라우징 행동을 포함하고, 상기 프리셋 변수는, 동일 페이지에 대해 상기 사용자에 의해 수행된 상기 브라우징 행동의 지속시간과, 동일 페이지에 대해 상기 사용자에 의해 수행된 상기 브라우징 행동의 수 중 적어도 하나 이상을 포함하는, 데이터를 처리하기 위한 방법.
  6. 제5항에 있어서, 상기 서비스 데이터는, 상기 사용자에 의해 브라우징된 상기 페이지에 관한 주소 정보, 상기 사용자가 상기 브라우징 행동을 트리거링하는 때의 시간, 및 상기 사용자가 상기 페이지 상에 머무른 시간 길이 중 적어도 하나를 포함하는, 데이터를 처리하기 위한 방법.
  7. 제5항에 있어서, 상기 브라우징 행동은, 상기 페이지의 지정된 영역에 대응하는, 데이터를 처리하기 위한 방법.
  8. 제1항에 있어서, 상기 동작 행동은 결제 행동을 포함하고, 상기 프리셋 변수는 상기 사용자의 결제 행동에 대한 결제 금액을 포함하는, 데이터를 처리하기 위한 방법.
  9. 제8항에 있어서, 상기 서비스 데이터는, 상기 결제 행동에 대응하는 타겟 객체, 상기 사용자가 상기 결제 행동을 트리거링하는 때의 시간, 및 상기 결제 행동에 대응하는 결제 금액 중 적어도 하나를 포함하는, 데이터를 처리하기 위한 방법.
  10. 제1항과 제3항 내지 제9항 중 어느 한 항에 있어서,
    상기 제1 동작 행동에 의해 생성된 상기 서비스 데이터 내에 포함된 적어도 하나의 프리셋 변수에 대응하는 누적된 결과를 결정하는 단계로서, 상기 누적된 결과는, 상기 클라이언트 디바이스 상에서 상기 사용자에 의해 실행된 상기 제1 동작 행동 내에 포함된 적어도 하나의 프리셋 변수 객체의 누적된 결과인, 상기 누적된 결과를 결정하는 단계; 및
    상기 누적된 결과를 서버에 전송하는 단계를 더 포함하는, 데이터를 처리하기 위한 방법.
  11. 제10항에 있어서,
    상기 사용자의 식별된 신원에 기초하여, 상기 누적된 결과에 따라서, 상기 사용자의 동작 행동에 대한 위험 식별을 수행하는 단계를 더 포함하는, 데이터를 처리하기 위한 방법.
  12. 데이터를 처리하기 위한 디바이스에 있어서, 제1항과 제3항 내지 제9항 중 어느 한 항의 방법을 수행하도록 구성된 복수의 모듈을 포함하는, 데이터를 처리하기 위한 디바이스.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020197009043A 2016-07-22 2017-08-31 데이터 처리 및 송신을 위한 방법과 위험한 행동 식별을 위한 방법 및 장치 KR102233078B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
CN201610587326 2016-07-22
CN201610796941.XA CN107645533A (zh) 2016-07-22 2016-08-31 数据处理方法、数据发送方法、风险识别方法及设备
CN201610796941.X 2016-08-31
US15/691,098 2017-08-30
US15/691,098 US10417426B2 (en) 2016-07-22 2017-08-30 Aggregating service data for transmission and risk analysis
PCT/US2017/049654 WO2018045191A1 (en) 2016-07-22 2017-08-31 Aggregating service data for transmission and risk analysis

Publications (2)

Publication Number Publication Date
KR20190042080A KR20190042080A (ko) 2019-04-23
KR102233078B1 true KR102233078B1 (ko) 2021-03-30

Family

ID=61108393

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197009043A KR102233078B1 (ko) 2016-07-22 2017-08-31 데이터 처리 및 송신을 위한 방법과 위험한 행동 식별을 위한 방법 및 장치

Country Status (10)

Country Link
US (1) US10417426B2 (ko)
EP (1) EP3507963B1 (ko)
JP (1) JP6788104B2 (ko)
KR (1) KR102233078B1 (ko)
CN (1) CN107645533A (ko)
MY (1) MY194851A (ko)
PH (1) PH12019500450A1 (ko)
SG (1) SG11201901595PA (ko)
TW (1) TWI676913B (ko)
WO (1) WO2018045191A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11481709B1 (en) 2021-05-20 2022-10-25 Netskope, Inc. Calibrating user confidence in compliance with an organization's security policies
WO2022246131A1 (en) * 2021-05-20 2022-11-24 Netskope, Inc. Scoring confidence in user compliance with an organization's security policies

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190310920A1 (en) * 2018-04-04 2019-10-10 International Business Machines Corporation Pre-Fetching and Staging of Restore Data on Faster Tiered Storage
CN109861953B (zh) * 2018-05-14 2020-08-21 新华三信息安全技术有限公司 一种异常用户识别方法及装置
CN109003091A (zh) * 2018-07-10 2018-12-14 阿里巴巴集团控股有限公司 一种风险防控处理方法、装置及设备
CN109034965B (zh) * 2018-07-16 2020-12-25 深圳美图创新科技有限公司 一种产品推荐方法、计算设备及存储介质
CN110659807B (zh) * 2019-08-29 2022-08-26 苏宁云计算有限公司 一种基于链路的风险用户识别方法及装置
CN110827026B (zh) * 2019-11-05 2023-09-08 武汉快马金云信息技术有限公司 一种聚合支付中基于规则链的热部署动态风控处理系统
CN113780404A (zh) * 2020-01-14 2021-12-10 支付宝(杭州)信息技术有限公司 资源数据的处理方法及装置
PE20230952A1 (es) * 2020-07-09 2023-06-13 Featurespace Ltd Arquitectura de red neuronal para el procedimiento de datos de transacciones
CN113344104A (zh) * 2021-06-23 2021-09-03 支付宝(杭州)信息技术有限公司 一种数据处理方法、装置、设备及介质
CN114021149B (zh) * 2021-11-17 2022-06-03 山东云天安全技术有限公司 基于修正参数预测工控网漏洞的系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012527691A (ja) * 2009-05-19 2012-11-08 サイバーセキュアー, インコーポレイテッド アプリケーションレベルセキュリティのためのシステムおよび方法
US20150026027A1 (en) * 2009-06-12 2015-01-22 Guardian Analytics, Inc. Fraud detection and analysis
US20160127401A1 (en) * 2014-10-30 2016-05-05 Splunk Inc. Capture triggers for capturing network data

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020178046A1 (en) 2001-03-20 2002-11-28 David Lawrence Product and service risk management clearinghouse
US20050125341A1 (en) 2003-09-16 2005-06-09 John Miri Method, system and program for credit risk management utilizing credit exposure
JP5097130B2 (ja) * 2006-12-27 2012-12-12 パナソニック株式会社 情報端末、セキュリティデバイス、データ保護方法及びデータ保護プログラム
JP4508207B2 (ja) * 2007-04-24 2010-07-21 Sky株式会社 管理者の不当閲覧防止方法及び不当閲覧防止システム、並びに不当閲覧防止プログラム
US8595194B2 (en) * 2009-09-15 2013-11-26 At&T Intellectual Property I, L.P. Forward decay temporal data analysis
US9245045B2 (en) 2012-05-17 2016-01-26 Citelighter, Inc. Aggregating missing bibliographic information in a collaborative environment
US9392463B2 (en) * 2012-12-20 2016-07-12 Tarun Anand System and method for detecting anomaly in a handheld device
WO2014160296A1 (en) * 2013-03-13 2014-10-02 Guardian Analytics, Inc. Fraud detection and analysis
CN104216894B (zh) * 2013-05-31 2017-07-14 国际商业机器公司 用于数据查询的方法和系统
WO2015159926A1 (ja) * 2014-04-15 2015-10-22 株式会社Ubic 情報漏洩検知装置、情報漏洩検知方法、および情報漏洩検知プログラム
US10212176B2 (en) 2014-06-23 2019-02-19 Hewlett Packard Enterprise Development Lp Entity group behavior profiling
CN104063504B (zh) * 2014-07-08 2018-07-13 百度在线网络技术(北京)有限公司 网页的综合访问权值的确定方法及访问记录的排序方法
CN105450705B (zh) * 2014-08-29 2018-11-27 阿里巴巴集团控股有限公司 业务数据处理方法及设备
US9952353B2 (en) * 2014-09-13 2018-04-24 International Business Machines Corporation Aggregation and analytics for application-specific optimization based on multiple data sources
US9800605B2 (en) * 2015-01-30 2017-10-24 Securonix, Inc. Risk scoring for threat assessment
US20150213276A1 (en) * 2015-02-28 2015-07-30 Brighterion, Inc. Addrressable smart agent data structures
US9591014B2 (en) * 2015-06-17 2017-03-07 International Business Machines Corporation Capturing correlations between activity and non-activity attributes using N-grams
IL248241B (en) * 2015-10-12 2020-04-30 Verint Systems Ltd A system and method for evaluating cyber security awareness
TWI599905B (zh) * 2016-05-23 2017-09-21 緯創資通股份有限公司 惡意碼的防護方法、系統及監控裝置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012527691A (ja) * 2009-05-19 2012-11-08 サイバーセキュアー, インコーポレイテッド アプリケーションレベルセキュリティのためのシステムおよび方法
US20150026027A1 (en) * 2009-06-12 2015-01-22 Guardian Analytics, Inc. Fraud detection and analysis
US20160127401A1 (en) * 2014-10-30 2016-05-05 Splunk Inc. Capture triggers for capturing network data

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11481709B1 (en) 2021-05-20 2022-10-25 Netskope, Inc. Calibrating user confidence in compliance with an organization's security policies
WO2022246131A1 (en) * 2021-05-20 2022-11-24 Netskope, Inc. Scoring confidence in user compliance with an organization's security policies

Also Published As

Publication number Publication date
US20180060587A1 (en) 2018-03-01
TWI676913B (zh) 2019-11-11
SG11201901595PA (en) 2019-03-28
MY194851A (en) 2022-12-19
WO2018045191A1 (en) 2018-03-08
CN107645533A (zh) 2018-01-30
JP2019533851A (ja) 2019-11-21
US10417426B2 (en) 2019-09-17
PH12019500450A1 (en) 2019-11-11
EP3507963A4 (en) 2019-08-28
KR20190042080A (ko) 2019-04-23
EP3507963B1 (en) 2021-08-04
JP6788104B2 (ja) 2020-11-18
EP3507963A1 (en) 2019-07-10
TW201812668A (zh) 2018-04-01

Similar Documents

Publication Publication Date Title
KR102233078B1 (ko) 데이터 처리 및 송신을 위한 방법과 위험한 행동 식별을 위한 방법 및 장치
US20220050842A1 (en) Querying a database
US8880592B2 (en) User interface implementation for partial display update
US10169417B2 (en) Detecting logical relationships based on structured query statements
US9774662B2 (en) Managing transactional data for high use databases
US20120254722A1 (en) Interactive user interface implementation and development environment therefor
US20230057068A1 (en) Request throttling using pi-es controller
JP6678829B2 (ja) ユーザ信用評価
US10191792B2 (en) Application abnormality detection
US20240078219A1 (en) Tuning external invocations utilizing weight-based parameter resampling
US10067849B2 (en) Determining dynamic statistics based on key value patterns
US20230101554A1 (en) Automated training environment selection
US11204913B2 (en) Generic data state transfer interface to the state of data and information for a reporting system
US20240005201A1 (en) Multi-step forecasting via temporal aggregation
US20230113287A1 (en) Techniques for determining cross-validation parameters for time series forecasting
US12001269B2 (en) System for tuning a java virtual machine
US20230066530A1 (en) Optimizing the response time of data profiling in interactive sessions
US20240020188A1 (en) System for tuning a java virtual machine
US20230306367A1 (en) Methods, apparatuses and computer program products for managing feature preload data object processing operations in a card-based collaborative workflow management system
US20240037071A1 (en) Document based monitoring
CN116089325A (zh) 基于温室气体数据的数据高速缓存

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant