KR20190136893A - 강건한 자동화 학습 시스템을 생성하고 훈련된 자동화 학습 시스템을 시험하기 위한 방법, 장치 및 컴퓨터 프로그램 - Google Patents

강건한 자동화 학습 시스템을 생성하고 훈련된 자동화 학습 시스템을 시험하기 위한 방법, 장치 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20190136893A
KR20190136893A KR1020180130138A KR20180130138A KR20190136893A KR 20190136893 A KR20190136893 A KR 20190136893A KR 1020180130138 A KR1020180130138 A KR 1020180130138A KR 20180130138 A KR20180130138 A KR 20180130138A KR 20190136893 A KR20190136893 A KR 20190136893A
Authority
KR
South Korea
Prior art keywords
learning system
automated learning
value
output
layer
Prior art date
Application number
KR1020180130138A
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 카네기 멜론 유니버시티
Publication of KR20190136893A publication Critical patent/KR20190136893A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Feedback Control In General (AREA)

Abstract

본 발명은 신경망(100)을 훈련하기 위한 방법, 신경망(100)을 시험하기 위한 방법 뿐만 아니라 신경망(100)을 기만할 수 있는 적대적 예제를 검출하기 위한 방법에 관한 것이다. 중첩된 분류가 제2 신경망(500)을 통해 역전파되고, 제2 신경망(500)의 출력값은 신경망(100)의 입력이 적대적 예제인지 여부를 판정하는데 이용된다. 본 발명의 설정 방법들은 제2 신경망(500)의 이 이용에 기초한다. 본 발명은 또한 상기 방법들을 수행하도록 구성된 컴퓨터 프로그램 및 장치에 관한 것이다.

Description

강건한 자동화 학습 시스템을 생성하고 훈련된 자동화 학습 시스템을 시험하기 위한 방법, 장치 및 컴퓨터 프로그램 {METHOD, APPARATUS AND COMPUTER PROGRAM FOR GENERATING ROBUST AUTOMATED LEARNING SYSTEMS AND TESTING TRAINED AUTOMATED LEARNING SYSTEMS}
본 발명은 특히 입력의 적대적 수정(adversarial modification)에 대한 보장된 강건성(robustness)을 갖는 자동화 학습 시스템을 생성하기 위한 방법에 관한 것이다. 본 발명은 또한 이러한 방법을 수행하도록 구성된 장치 뿐만 아니라 컴퓨터 프로그램에 관한 것이다.
선공개되지 않은 독일 특허 출원 DE 10 2018 200 724호는 자동화 학습 시스템을 위한 유니버설 적대적 섭동(universal adversarial perturbation)을 결정하기 위한 방법을 개시하고 있다. 유니버설 적대적 섭동은 다수의 훈련 이미지 및 대응하는 타겟 시맨틱 분할(semantic segmentation)에 의존하여 결정된다. 유니버설 적대적 섭동은 신경망(neural network)의 임의적 입력 이미지에 중첩될 때 신경망을 기만(fool)하도록 구성된다.
선공개되지 않은 독일 특허 출원 DE 10 2018 208 763호는 적대적 섭동에 대한 훈련된 신경망의 강건성을 성취하기 위해 신경망을 훈련하기 위한 방법을 개시하고 있다. 방법은 신경망을 훈련하는 단계, 유니버설 적대적 섭동을 결정하는 단계 및 유니버설 적대적 섭동에 의존하여 신경망을 재훈련하는 단계를 포함한다.
멧젠(Metzen) 등의 ["Universal adversarial perturbations against semantic image segmentation." in: The IEEE International Conference on Computer Vision (ICCV) 2017]에 개시된 바와 같이, 육안으로 가시화되지 않는 이미지의 적대적 수정에 기인하여 사람을 이미지 내에서 사라지게 하는 것이 가능하다.
최근에, 자율 주행은 자율 자동차의 환경을 감지하는 카메라에 기초할 수 있다. 신경망을 포함하는 지능형 이미지 처리는 감지된 이미지에 의존하여 자율 자동차를 제어하기 위해 이러한 카메라의 이미지를 처리한다. 그러나, 지능형 이미지 처리, 특히 신경망은 섭동된 이미지에 의해 기만되는 것이 가능하다. 섭동은 종래기술 섹션에서 전술된 것과 같은 이미지의 적대적 수정일 수 있다. 섭동 이미지는 신경망을 기만할 수 있지만, 수정된 이미지는 육안에 원래 묘사된 장면과는 상이하지 않다. 따라서, 신경망은 적대적 공격에 고도로 취약하다. 가능한 방어는 각각의 훈련 이미지의 부가로 생성된 적대적 수정을 갖는 신경망을 보유하는 것이다. 이러한 것은, 신경망을 기만할 수 있는 이미지의 수정을 생성하는 것이 시간 소모적이고 고비용이고 크래프팅 적대적 예제에 의해 커버되지 않았지만, 여전히 신경망을 기만할 수 있는 수정이 남아 있는 높은 확률이 존재하기 때문에 불리하다. 특히, 이 접근법에 의해, 입력 이미지의 모든 가능한 적대적 섭동에 대한 신경망의 강건성을 제공하는 것이 가능하지 않다.
본 발명은 신경망이 적대적 섭동과 같은 섭동에 대해 가능하게 강건성인지 여부를 판정하기 위한 방법을 제안한다. 따라서, 본 발명은 공격자가 분류자의 완전한 지식이 제공되더라도, 보장되는 설계 분류자가 적대적 섭동에 대해 강건하게 한다. 이 보장은 입력의 가능한 적대적 예제의 전체 공간에 걸쳐 성립한다.
본 발명의 제1 양태에 따르면, 자동화 학습 시스템을 테스트하기 위한 방법이 개시된다. 자동화 학습 시스템이 주어진 크기 이하인 수정에 대해 강건한지 여부가 테스트된다. 이는 크기 제약을 고려하는 모든 임의적 및/또는 가능한 수정이 자동화 학습 시스템의 출력값을 주어진 타겟 출력값으로 변경하지 않는 것을 암시한다. 더욱이, 적어도 자동화 학습 시스템의 테스트 입력값의 수정이 주어진 타겟 출력값에 대응하는, 바람직하게는 동일한 자동화 학습 시스템의 출력값을 변경하는지 여부가 테스트될 수 있다.
타겟 출력값에 대응하는 자동화 학습 시스템의 출력값이라는 것은, 출력값이 타겟 출력값과 동일하고 또는 출력값은 타겟 출력값과 동일한 범위 또는 위치에서 그 최대값을 갖는 것이라는 것을 이해할 수 있다.
작은 수정을 받게되는 테스트 입력값은, 이것이 자동화 학습 시스템 내로 공급되고 자동화 학습 시스템을 통해 전파될 때 자동화 학습 시스템이 타겟 출력값을 출력하게 한다. 테스트 입력값의 수정은 주어진 수정 크기 이하이다. 특히, 수정은 수정의 사이즈가 미리결정된 수정 크기 이하이면 그리고 이하인 경우에만 작은 수정이다. 자동화 학습 시스템은 적어도 테스트 입력값을 수신하는 입력 계층 및 자동화 학습 시스템의 출력값을 출력하는 출력 계층을 포함한다. 상기 자동화 학습 시스템의 출력값은 다수의 클래스 중 적어도 하나로의 테스트 입력값의 분류를 특징화할 수도 있다.
자동화 학습 시스템을 테스트하기 위한 방법은 이하의 단계를 포함한다:
- 타겟 출력값에 의존하여 그리고 테스트 입력값에 할당되고 테스트 입력값에 할당된 테스트 입력값, 특히 라벨의 참 분류를 특징화할 수도 있는 출력값에 의존하여 제2, 바람직하게는 중첩된 출력값을 결정하는 단계. 중첩된 출력값은 중첩된 분류를 특징화할 수도 있고, 제2 분류를 특징화할 수도 있음.
제2 출력값은 중첩된 출력값이고, 출력값과 타겟 출력값 사이의 차이 또는 자동화 학습 시스템의 결정된 출력값과 타겟 출력값 사이의 차이 중 하나에 의존하여 결정되는 것이 제안됨.
- 자동화 학습 시스템에 기초하여 제2 자동화 학습 시스템을 제공하는 단계. 제2 자동화 학습 시스템은 자동화 학습 시스템과 동일한 계층, 특히 동일한 아키텍처, 특히 역순으로 동일한 연결된 계층들을 갖는다. 제2 자동화 학습 시스템의 각각의 계층은 자동화 학습 시스템의 하나의 대응 계층에, 바람직하게는 정확하게 대응함.
제2 자동화 학습 시스템의 출력 계층은 자동화 학습 시스템의 입력 계층에 대응하는데, 즉 제2 자동화 학습 시스템의 출력은 상기 제2 자동화 학습 시스템의 출력 계층에 의해 출력되고, 상기 출력 계층은 자동화 학습 시스템의 입력 계층에 대응함. 제2 자동화 학습 시스템의 입력 계층은 자동화 학습 시스템의 출력 계층에 대응하는데, 즉 제2 자동화 학습 시스템의 입력은 상기 제2 자동화 학습 시스템의 입력 계층 내로 공급되고, 상기 입력 계층은 자동화 학습 시스템의 출력 계층에 대응함.
- 제2 자동화 학습 시스템을 통해 제2 출력값을 전파하는 단계.
- 제2 자동화 학습 시스템을 통한 제2 출력값의 전파로부터 발생하는 출력값에 의존하여, 수정 크기에 의존하여, 그리고 테스트 입력값에 의존하여, 수정이 타겟 출력값에 대응하는 자동화 학습 시스템의 출력값을 야기하는지 여부를 판정하는 단계.
이 양태의 장점은 자동화 학습 시스템의 강건성이 제2 자동화 학습 시스템으로서 자동화 학습 시스템의 재사용에 기인하여 효율적으로 결정될 수 있다는 것이다.
자동화 학습 시스템이 타겟 출력값을 결정하지 않고 정확한 출력값을 결정하면, 자동화 학습 시스템은 상기 수정이 주어진 크기 이하인 제한에 관하여 각각의 가능한 수정에 대하여 강건하다. 타겟 출력값은 본 발명의 상이한 양태에 의존하여 선택될 수 있다. 제1 양태에서, 주어진 타겟 출력값은 테스트 입력값에 대응하는 라벨링된 출력값과는 상이하다. 제2 양태에서, 출력값은 테스트 입력값에 의존하여 자동화 학습 시스템에 의해 결정된 출력값과는 상이하다.
바람직하게는, 자동화 학습 시스템은 은폐된 계층 중 적어도 하나에 대한 입력값으로서 출력값을 제공함으로써 서로 연결된 은폐된 계층을 포함한다. 입력 계층은 은폐된 계층 중 적어도 하나와 연결될 수 있다. 출력 계층은 은폐된 계층의 적어도 하나의 출력값 및/또는 입력 계층의 출력을 입력으로서 수신한다.
여기서, 제2 자동화 학습 시스템의 은폐된 계층은 자동화 학습 시스템의 은폐된 계층에 역순으로 정렬되는데; 즉 자동화 학습 시스템의 은폐된 계층은, 그 출력부에서, 후속의 은폐된 계층의 입력으로 통과되는 중간값을 제공하고, 후속의 은폐된 계층에 대응하는 제2 자동화 학습 시스템의 계층은, 그 출력부에서, 상기 은폐된 계층에 대응하는 제2 자동화 학습 시스템의 계층으로 통과되는 중간값을 제공한다. 달리 말하면, 제2 자동화 학습 시스템의 입력 계층 내로 공급된 신호가 자동화 학습 시스템의 계층에 역순으로 일련의 대응하는 계층을 통해 전파된다.
크기는 입력값의 수정의 세기 또는 강도를 특징화한다. 크기는 수정을 특징화하는 값일 수 있다. 수정의 예는 적대적 섭동일 수 있다. 수정은 수정의 노름값(norm value)을 결정함으로써 측정될 수 있다. 바람직하게는, 수정은 수정 없이 원래 입력값에 대해 측정된다.
자동화 학습 시스템의 아키텍처는 계층에 의해 설명될 수 있고, 바람직하게는 계층은 서로 배열되어 연결된다. 따라서, 동일한 아키텍처는, 제2 자동화 학습 시스템이 자동화 학습 시스템에 유사한 계층의 동일한 배열을 포함하는 것을 의미한다.
자동화 학습 시스템은 예를 들어, (심층-) 신경망 또는 콘볼루션(convolutional) 신경망 또는 순환 신경망(recurrent neural network) 또는 캡슐네트워크(CapsuleNetwork) 또는 서포트 벡터 머신(support vector machine), 또는 가우스 프로세스(Gaussian Process)로서 컴퓨터 구현될 수 있다.
기계 학습 시스템을 위한 자동화 학습 시스템을 이용하는 것이 제안된다. 기계 학습 시스템은 예를 들어, 그 환경을 탐사하고 그 환경에 의한 피드백으로부터 또는 주어진 피드백으로부터 학습함으로써 미리규정된 작업을 해결하기 위해 학습하는 로봇과 같은 지능형 기계일 수 있다.
제2 자동화 학습 시스템의 출력값에 의존하여 그리고 수정 크기에 의존하여 그리고 테스트 입력값에 의존하여 목적 함수를 결정하는 것이 제안된다. 다음에, 결정된 목적 함수는 미리결정된 임계치에 비교된다. 테스트 입력값에 대한 작은 수정이 상기 테스트 입력값의 출력값이 타겟 출력값에 대응하게 하지 않는지 여부가 상기 비교의 결과에 의존하여 판정된다. 결정된 목적 함수가 미리결정된 임계치를 초과하면, 작은 수정은 상기 테스트 입력값의 출력값이 타겟 출력값에 대응하게 하지 않는 것으로 판정된다.
유리하게는, 훈련된 자동 학습 시스템이 테스트된다. 훈련된 자동화 학습 시스템 하에서, 자동화 학습 시스템은 주어진 작업을 해결하는 것이 가능하고, 해결을 위한 방법은 자동화 학습 시스템에 의해 자체 학습되고, 특히 자동화 학습 시스템의 매개변수화에 캡처된다는 것을 이해할 수 있을 것이다. 통상적으로, 자동화 학습 시스템은 센서값과 같은 데이터 내의 복잡한 관계를 학습하고, 주어진 작업을 해결하기 위해 학습된 관계를 이용한다. 분류를 위한 훈련된 자동화 학습 시스템은 훈련 절차 후에 유리하게 매개변수화되어, 바람직하게는 완전한 훈련 데이터 세트가 훈련 입력값으로 할당된 클래스에 따라 정확하게 분류되게 된다. 그러나, 훈련 절차는 훈련 데이터 세트를 기억하지 않게 하기 위해 주어진 기준이 도달된 후에 종료되어야 한다.
대안적인 실시예에서, 제1 양태에 따른 방법은 자동화 학습 시스템의 승인을 위해 사용될 수 있다.
자동화 학습 시스템은 분류자일 수 있다. 자동화 학습 시스템, 특히 분류자는 다수의 클래스 중 적어도 하나로의 입력값의 분류를 특징화하는 출력값을 결정하도록 구성된다. 다른 실시예에서, 자동화 학습 시스템은 분할 또는 회귀를 수행하도록 구성된다.
용어 분류는 광범위하게 이해될 수 있다. 분류는 자동화 학습 시스템이 자동화 학습 시스템의 각각의 입력값에 적어도 클래스를 할당하는 것일 수 있고, 여기서 클래스는 입력값의 특성 및/또는 특징 및/또는 대상을 특징화한다. 분할은 특정 종류의 분류로서 보여질 수 있고, 분할을 위해, 입력값의 요소의 적어도 일부는 적어도 하나의 클래스에 할당되고, 또한 시맨틱 구역이 다수의 클래스 중 적어도 하나에 할당될 수 있다. 이미지 캡셔닝(captioning) 및 물체 인식/검출이 또한 특정 종류의 분류로서 보여질 수 있다. 용어 회귀는, 자동화 학습 시스템의 입력값이 자동화 학습 시스템에 의해 적절한 방식으로 계속되는 것을 의미한다.
분류 또는 회귀를 수행하도록 구성된 자동화 학습 시스템의 입력값은 주어진 예에 한정되는 것은 아니고, 이들은 원하는 바에 따라 선택될 수 있다. 분류 또는 회귀를 수행하도록 구성된 자동화 학습 시스템의 출력값은 자동화 학습 시스템의 대응 입력값의 분류 또는 회귀를 특징화할 수 있다.
수정이 타겟 출력값에 대응하는 자동화 학습 시스템의 출력값을 야기하지 않을 때 강건성 인증서를 발행하는 것이 제안된다.
강건성 인증서는 본 발명의 다른 양태를 수행한 후에 또한 생성될 수 있다는 것을 주목한다.
본 발명의 제2 양태에 따르면, 타겟 출력값에 대응하는 자동화 학습 시스템에 의해 결정된 출력값을 야기하는 테스트 입력값의 수정, 특히 적대적 예제를 검출하기 위한 방법이 개시된다. 타겟 출력값은 자동화 학습 시스템의 결정된 출력값과는 상이할 수도 있다. 제2 양태는 테스트 입력값의 출력값, 즉 상기 테스트 입력값이 자동화 학습 시스템 내로 공급되어 그를 통해 전파될 때 자동화 학습 시스템이 출력하는 출력값이 타겟 출력값에 대응하는 출력값을 야기하도록, 자동화 학습 시스템에 대한 테스트 입력값이 테스트 입력값의 작은 수정, 특히 적대적 예제를 갖고 수정될 수도 있는지 여부를 검출하기 위해 이용될 수 있다.
본 발명의 상이한 양태에서, 제2 자동화 학습 시스템의 출력값에 의존하여 그리고 수정 크기에 의존하여 그리고 테스트 입력값에 의존하여 목적 함수를 결정하는 것이 제안된다.
목적 함수는 수정이 출력값을 타겟 출력값으로 변경하는지 여부를 판정하는 솔루션에 보장된 하계를 특징화한다.
본 발명의 제3 양태에 따르면, 타겟 출력값으로의 대응 출력값의 변경을 유발하지 않는 테스트 입력값으로의 수정의 최대 가능한 수정 크기를 결정하기 위한 방법이 개시된다. 출력값은, 특히 수정을 받게되는 테스트 입력값이 자동화 학습 시스템 내에 공급되어 그를 통해 전파될 때 자동화 학습 시스템에 의해 출력되는 값이다.
이 양태는 예를 들어, 입력을 거짓 클래스로 오분류하지 않고 가장 강한 수정 크기가 결정될 수 있어, 가능하게는 자동화 학습 시스템의 출력이 수정된 입력값에 의해 타겟 출력값으로 플립될 수 없게 되기 때문에 유리하다.
결정된 출력값과는 각각 상이한 또는 테스트 입력값에 할당된 출력값과는 상이한 다수의 상이한 타겟 출력값에 대해 각각 다수의 상이한 제2 출력값을 결정하는 것이 제안된다. 상기 제2 출력값은 복수의 대응 출력값을 출력하는 자동화 학습 시스템을 통해 전파되고, 여기서 목적 함수는 상기 복수의 대응 출력값에 의존하여, 즉 상기 복수의 대응 출력값의 모든 출력값에 의존하여 결정된다.
이는 다른 클래스가 입력값의 수정에 의해 유발된 자동화 학습 시스템에 의해 가능하게 결정되지 않기 때문에, 주어진 수정 크기 내의 입력값의 어떠한 수정도 자동화 학습 시스템을 기만하지 않을 것을 보장하는 장점을 갖는다.
본 발명의 제4 양태에 따르면, 자동화 학습 시스템을 훈련하기 위한 방법이 개시된다. 방법은 이하의 단계를 포함한다:
- 주어진 수정 크기와, 훈련 입력값 및 대응 훈련 출력값을 포함하는 훈련 데이터를 제공하는 단계. 훈련 출력값은 각각의 입력값의 참/라벨링된 분류를 특징화할 수도 있음.
- 자동화 학습에 기초하여 제2 자동화 학습 시스템을 제공하는 단계.
- 각각의 훈련 입력값에 대해, 타겟 출력값에 의존하여 그리고 각각의 훈련 입력값에 대응하는 출력값, 즉 각각의 훈련 입력값이 자동화 학습 시스템 내로 공급되고 그를 통해 전파될 때 자동화 학습 시스템에 의해 출력된 출력값에 의존하여 대응 제2 출력값을 결정하는 단계.
- 제2 자동화 학습 시스템의 입력값으로서 제2 출력값을 공급하고 제2 자동화 학습 시스템을 통해 제2 출력값을 전파하는 단계.
- 주어진 수정 크기에 의존하여 그리고 훈련 입력값 중 적어도 하나에 의존하여 그리고 각각의 훈련 입력값 중 상기 적어도 하나에 대응하는 제2 출력값을 전파함으로써 결정된 제2 자동화 학습 시스템의 출력값 중 적어도 하나에 의존하여 적어도 목적 함수를 결정하는 단계.
- 결정된 목적 함수에 의존하고 목적 함수를 결정하는데 이용되었던 각각의 훈련 입력값에 대응하는 적어도 훈련 출력값에 의존하는 손실 함수를 결정하는 단계.
- 주어진 최적화 기준에 관하여 손실 함수를 최적화하기 위해, 특히 최소화하기 위해 자동화 학습 시스템의 매개변수를 조정하는 단계.
손실 함수는 특히 2개의 값들 사이의 수학적 거리 측정에 의해, 거리를 측정하거나 특징화한다. 손실 함수는 크로스-엔트로피 손실, 힌지 손실 또는 제로-원 손실일 수 있다. 유리하게는, 최적화는 손실 함수의 합에 걸쳐 행해지고, 여기서 각각의 손실 함수는 적어도 하나의 목적 함수에 따라 결정된다.
제4 양태에 따르면, 방법이 다음의 단계를 더 포함하는 것이 제안된다: 본 발명의 제3 양태에 따른 방법에 의해 훈련된 자동화 학습 시스템의 최대 수정 크기를 결정하는 단계. 상기 최대 안전 수정 크기가 미리결정된 제2 임계치보다 작으면 훈련된 자동화 학습 시스템의 훈련을 계속하는 단계. 이는 훈련을 계속하기 전에 자동화 학습 시스템의 훈련된 매개변수의 일부 또는 모두의 값을 리셋하는 단계를 포함할 수도 있다.
각각의 양태에서, 계층의 각각의 변환은 각각의 함수에 의해 특징화되는 것이 제안된다. 제2 변환은 함수의 공액에 관련된 제2 함수, 특히 펜첼 공액 함수(Fenchel conjugate function)에 의해 특징화된다.
함수는 각각의 계층의 입력값을 대응 출력값 상에 맵핑하거나 또는 변환에 따라 대응하는 출력값 세트와 입력값을 각각 연계할 수 있다. 함수는 몇몇 매개변수에 의해 정의될 수 있다.
각각의 양태에서, 지시기 함수는 자동화 학습 시스템의 각각의 계층에 대해 결정되고, 여기서 각각의 계층에 대해, 상기 계층의 입력부가 자동화 학습 시스템의 정확하게 하나의 다른 계층에 (직접) 연결되면 대응 지시기 함수는 0으로 설정되는 것이 제안된다. 만일 그렇지 않으면, 지시기 함수는 "무한대"로서 해석되는 값에 동일하게 선택될 수도 있고, 여기서 제2 함수는 상기 지시기 함수에 의존하여 결정된다. 바람직하게는, 이는 지시기 함수의 공액 함수의 근사이다.
스킵 연결이 사용되지 않으면, 관련 공액 함수는 지시기 함수의 정확한 공액 함수라는 것을 주목한다.
각각의 양태에서, 목적 함수는, 자동화 학습 시스템의 입력값을 제2 자동화 학습 시스템의 출력에 곱한 곱(product)을 특징화하는 제1 항, 및 수정 크기에 의해 가중된 제2 자동화 학습 시스템의 출력값의 주어진 노름을 특징화하는 제2 항에 의존하여 결정되는 것이 제안된다.
자동화 학습 시스템의 입력값의 수정의 수정 크기가 제1 노름(예를 들어, lp-노름)에 의해 결정될 때, 이어서 주어진 노름은 제1 노름의 듀얼 노름(예를 들어, lq-노름)인 것을 주목한다. 듀얼 노름은 1/p+1/q=1로서 정의된다.
각각의 양태에서, 계층들 중 적어도 하나는 적어도 2개의 다른 계층과 연결되고 연결된 계층의 출력값을 그 입력값으로서 수신하는 것이 제안된다. 각각의 양태에서, 변환들 중 적어도 하나는 비선형 함수, 특히 정류된 선형 함수(소위 ReLu 함수)에 의해 특징화되는 것이 제안된다. 각각의 양태에서, 변환들 중 적어도 하나는 부분적으로 매개변수에 의해 특징화된 선형 변환인 것이 제안된다.
각각의 양태에서, 그 변환이 비선형 함수에 의해 특징화되는, 적어도 계층의 입력값은 상계 및 하계에 의해 특징화된 입력값의 제한된 허용가능한 세트를 갖는 것이 제안된다.
이는 값들이 경계한정되어 더 정확한 목적 함수를 야기하는 장점을 갖는다.
각각의 양태에 대해, 자동화 학습 시스템은 배치 정규화 계층을 포함하는 것이 제안된다. 배치 정규화 계층의 변환은 주어진 평균 및 주어진 분산에 의존하여 입력값의 평균 및 분산의 시프트에 의해 특징화된다.
바람직하게는, 주어진 평균 및 주어진 분산은 입력값의 각각의 요소에 대해 개별적으로 제공되는 것을 주목한다.
각각의 양태에서, 입력값의 제한된 허용가능한 세트는 선형 부등식을 충족하는 입력값에 또한 제한되는 것이 제안된다.
입력값의 세트는 이에 의해 또한 제한된다. 이에 의해, 더 정확한 목적 함수가 결정될 수 있다. 더욱이, 매개변수는 경계들의 의존성을 캡처하고, 허용가능한 값들의 세트 주위에 더 타이트한 경계 및 따라서 자동화 학습 시스템의 출력부에서 적대적 다포체의 경계, 특히 다수의 계층을 갖는 큰 자동화 학습 시스템에 대해, 개량된 성능을 생성한다. 게다가, 활성화 함수의 경계들은 더 타이트하여 더 작은 에러를 야기하고, 더 강건한 자동화 학습 시스템을 야기하는 훈련이 성취될 수 있다.
각각의 양태에서, 매개변수들 중 하나는 이전의 연결된 계층의 상계 및 하계를 포함하는 행렬인 것이 제안된다.
각각의 양태에서, 목적 함수를 위한 임계치는 0 이상이고, 바람직하게는 미리결정된 양의 바이어스 이하인 것이 제안된다.
바이어스는 결정의 공차 또는 안전 마진, 예를 들어 자동화 학습 시스템이 적대적 예제에 대해 강건한지 아닌지 여부를 특징화한다. 이에 의해, 목적 함수의 신뢰성이 증가된다.
제4 양태에서, 계층은 그룹화되고 그룹화된 계층은 서로 개별적으로 훈련되는 것이 제안된다.
이는 목적 함수 내의 수정 크기의 영향이 감소되는 장점을 갖는다. 이후에, 전체 캐스케이드가 훈련될 수 있다.
기술 시스템의 물리적 액추에이터가 특히 본 발명의 각각의 양태에 따라, 자동화 학습 시스템의 출력값에 의존하여 제어될 수 있다. 자동화 학습 시스템이 본 발명의 제1 양태에 따라 테스트되어 있는 경우에, 물리적 액추에이터는 자동화 학습 시스템의 출력값에 의해 적어도 서로 나란히 또는 즉시 제어될 수 있다. 더욱이, 자동화 학습 시스템의 입력값은 적대적 예제인지 여부가 제2 양태에 따라 테스트될 수 있다. 입력값이 적대적 예제가 아닌 것으로 판정되면, 물리적 액추에이터는 자동화 학습 시스템의 출력값에 의존하여 제어될 수 있고, 그렇지 않으면 자동화 학습 시스템의 출력값은 배출이 거절될 수 있다. 물리적 액추에이터는 기술 시스템의 부분일 수 있다. 기술 시스템은 예를 들어, 적어도 부분적 자율 기계, 로봇, 차량, 기계 공구, 공장, 또는 드론과 같은 비행 물체일 수 있다. 물리적 액터는 엔진 또는 브레이크의 부분일 수도 있다.
컴퓨터-구현된 방법을 갖는 것이 제안되고, 여기서 적어도 프로세서는 본 발명의 상이한 양태의 방법의 단계들을 수행한다. 자동화 학습 시스템은 또한 하드웨어 또는 하드웨어와 소프트웨어의 혼성으로 구현될 수 있다.
다른 실시예에서, 자동화 학습 시스템의 출력값은 제어 신호 또는 제어 명령을 결정하는데 사용될 수 있다. 제어 신호 또는 제어 명령은 물리적 액추에이터를 제어하는데 사용될 수 있다. 물리적 액추에이터는 제어 신호 또는 제어 명령에 대응하여 제어될 수도 있다. 다른 실시예에서, 제어 유닛은 물리적 액추에이터를 제어한다. 제어 유닛은 자동화 학습 시스템의 출력에 의존하여 제어 신호 또는 제어 명령을 결정하도록 구성될 수 있다. 제어 유닛이 자동화 학습 시스템의 출력값에 의존하여 물리적 액추에이터를 직접 또는 간접 제어하는 것이 또한 가능하다.
자동화 학습 시스템의 입력값은 센서로부터 수신될 수 있고 또는 인터넷 또는 다른 데이터 전송 시스템 또는 통신 시스템을 거쳐 외부에서 수신될 수 있다.
본 발명의 다른 양태에서, 본 발명의 전술된 방법들 중 임의의 것을 수행하도록 구성된 컴퓨터 프로그램이 제안된다. 컴퓨터 프로그램은 - 컴퓨터 상에서 실행될 때 - 상기 컴퓨터가 본 발명의 상이한 양태의 모든 그 단계를 갖는 방법을 수행하게 하는 명령을 포함한다. 더욱이, 컴퓨터 프로그램이 저장되어 있는 컴퓨터 판독가능 저장장치가 제안된다. 더욱이, 본 발명의 방법을 수행하도록 구성된 장치가 제안된다.
본 발명의 다른 양태에서, 본 발명의 제1 내지 제4 양태의 방법들 중 하나를 수행함으로써 얻어진 제품이 제안된다.
본 발명의 전술된 양태의 실시예는 이하의 도면을 참조하여 이하의 상세한 설명에 설명된다.
도 1은 입력값 및 입력값의 가능한 섭동 뿐만 아니라 적대적 다포체를 갖는 출력값을 갖는 신경망의 개략도를 도시하고 있는 도면.
도 2는 적대적 다포체 및 결정 경계를 각각 갖는 출력값의 2개의 개략도를 도시하고 있는 도면.
도 3은 목적 함수를 결정하기 위한 방법의 흐름도의 실시예를 개략적으로 도시하고 있는 도면.
도 4는 활성화 함수의 상계 및 하계를 결정하기 위한 방법의 흐름도의 실시예를 개략적으로 도시하고 있고 스킵 연결을 갖는 신경망의 개략도를 도시하고 있는 도면.
도 5는 듀얼 신경망을 통해 입력값을 전파하기 위한 방법의 흐름도의 개략 실시예를 도시하고 있고 듀얼 신경망의 개략도를 또한 도시하고 있는 도면.
도 6은 목적 함수에 의해 신경망을 훈련하기 위한 방법의 흐름도의 실시예를 개략적으로 도시하고 있는 도면.
도 7은 랜덤 코시 투영(random Cauchy projection)을 결정하기 위한 방법의 흐름도의 개략 실시예를 도시하고 있는 도면.
도 8은 신경망의 간섭 중에 적대적 예제를 검출하기 위한 방법의 흐름도의 실시예를 개략적으로 도시하고 있는 도면.
도 9는 입력값(들)의 최대 허용가능한 섭동을 발견하기 위한 방법의 흐름도의 개략 실시예를 도시하고 있는 도면.
도 10은 활성화 함수의 더 타이트한 경계를 결정하기 위한 방법의 흐름도의 개략 실시예를 도시하고 있는 도면.
도 11은 신경망을 갖는 적어도 부분적 자율 로봇을 동작하기 위한 방법의 흐름도의 실시예를 개략적으로 도시하고 있는 도면.
도 12는 액추에이터를 제어하는 자동화 학습 시스템을 갖는 액추에이터 제어 시스템을 도시하고 있는 도면.
도 13은 부분적 자율 로봇을 제어하는 액추에이터 제어 시스템을 도시하고 있는 도면.
도 14는 제조 기계를 제어하는 액추에이터 제어 시스템을 도시하고 있는 도면.
도 15는 자동화 개인 비서를 제어하는 액추에이터 제어 시스템을 도시하고 있는 도면.
도 16은 액세스 제어 시스템을 제어하는 액추에이터 제어 시스템을 도시하고 있는 도면.
도 17은 감시 시스템을 제어하는 액추에이터 제어 시스템을 도시하고 있는 도면.
도 18은 특히 의료용 이미징 시스템을 제어하는 액추에이터 제어 시스템을 도시하고 있는 도면.
도 19는 강건한 신경망을 훈련하도록 구성된 훈련 시스템을 도시하고 있는 도면.
도 1은 신경망(100)으로서 자동화 학습 시스템의 실시예의 개략도를 도시하고 있다. 신경망(100)은 다수의 계층(110)을 포함한다. 각각의 계층(110)은 입력부(150) 및 출력부를 갖는 뉴런(120)을 포함한다. 뉴런(120)의 입력부(150)에서 수신된 입력값은 뉴런(120)의 활성화라 칭한다.
뉴런(120)은 이들의 활성화에 의존하여 출력값을 결정한다. 또한, 뉴런은 각각의 뉴런(120)의 활성화에 의존하여 출력값을 결정하는데 이용되는 활성화 함수(130)를 포함한다. 도 1에 도시된 활성화 함수(130)는 정류된 선형 함수(소위 ReLu)이다.
신경망(100)의 계층은 연결부(140)에 의해 서로 (직접) 연결된다. 연결부(140)는 제2 연결 계층에 대응하는 뉴런의 입력부와 제1 연결 계층의 뉴런의 출력부를 연결하고, 제2 연결 계층의 연결된 뉴런에 입력값으로서 출력값을 제공한다. 바람직하게는, 연결부(140)는 출력값에 매개변수를 곱하고, 곱셈된 출력값을 입력값으로서 제공한다. 계층(110) 중 하나는 신경망(100)의 입력 계층이다. 입력 계층은 신경망(100)의 입력값(151)을 입력값으로서 수신한다. 신경망(100)은 출력 계층을 더 포함한다. 출력 계층의 출력부(170)에서 제공된 출력값은 신경망(100)의 출력값(171)이다.
도 1에 도시된 바와 같이, 계층(110)은 열로 배열될 수 있고, 여기서 계층들은 후속 계층과 각각 연결된다. 신경망(100)은 배치 정규화(batch normalization) 계층 및/또는 최대-풀링(max-pooling) 계층 및/또는 선형-풀링(linear-pooling) 계층을 포함할 수도 있다.
신경망(100)의 입력값(151)은 스칼라, 벡터, 행렬 또는 텐서(tensor)일 수 있다. 예를 들어, 입력값은 화상 또는 오디오 신호 또는 센서값일 수 있다. 출력값(171)은 본 실시예에서 벡터일 수 있는데, 이는 예를 들어, 다수의 클래스 중 하나로 입력값의 분류를 특징화한다. 본 실시예에서, 출력 계층의 각각의 출력부(170)는 클래스 중 하나를 특징화한다. 활성화는 대응 계층(110)의 차원에 의존하여 스칼라, 벡터, 행렬 또는 텐서일 수 있다.
k개의 계층을 고려하면, 신경망(fθ)은 이하의 식에 의해 제공되고,
Figure pat00001
(1)
신경망의 입력값 z1 = x, fθ(x) = zk, 계층 j 내지 계층 i의 함수 fi,j 및 매개변수화 θ를 갖는다.
도 1에 도시된 바와 같이, 신경망(100)의 입력값(151)은 주어진 범주 내에서 변할 수 있다(입력 섭동(160)). 예를 들어, 측정 노이즈에 기인하여, 입력값은 변할 수 있는데, 이는 섭동값(ε)에 의해 특징화될 수 있다. 입력값은 또한 입력값의 적대적 수정에 기인하여 변할 수 있다. 수정은 국부적으로 제한될 수 있는데, 예를 들어 입력 이미지의 시맨틱 구역만이 수정되는데, 이는 또한 섭동값(ε)에 의해 특징화된다. 섭동값(ε)은 수정의 최대값 또는 수정의 평균일 수 있다.
최대 섭동은 유계(bounded) 입력 섭동(160)에 의해 도 1에 개략적으로 도시되어 있다. 유계 입력 섭동(160)은 이하와 같이 수학적으로 설명될 수 있고:
Figure pat00002
(2)
여기서 B(x)는 최대 허용가능한 입력 섭동(160)을 위한 입력 제약(input constraint)을 표현하고,
Figure pat00003
는 입력값(x)의 p-노름-유계 수정(p-norm-bounded modification)(Δ)을 특징화한다. 수정(Δ)은 예를 들어, 입력값(x)의 노이즈 또는 적대적 섭동일 수 있고, 여기서 수정(Δ)은 예를 들어, 입력값(x)의 노이즈 또는 적대적 예제에 기인하는 모든 가능한 수정을 설명한다. 섭동(ε)은 입력값(x)의 수정(Δ)의 상계로서 보여질 수 있다.
신경망(100)을 기만할 수 있는 B(x) 내의 입력값(x)의 수정(Δ)이 존재하는지 여부를 판정하기 위해, 이하의 최적화 문제가 해결되어야 하고:
Figure pat00004
(3)
여기서, 입력값(x)은 주어진 클래스 y* = ytrue 및 타겟 클래스 ytarg가 할당되고
Figure pat00005
Figure pat00006
이다. 타겟 클래스 ytarg는 임의적으로 선택될 수 있고 주어진 클래스 y*과는 상이한 클래스이다. 식 (3)의 결과는 타겟 클래스 ytarg로서 신경망에 의해 분류되는, B(x) 내의 최대 적대적 입력값(x)을 설명하는 스칼라이지만, 입력값(x)은 주어진 클래스 ytrue에 속한다. 이 스칼라가 양의 값이면, 적대적 예제의 오분류에 기인하여 신경망을 기만하는 입력값(x)의 적대적 예제가 존재하지 않는다. 스칼라가 양의 값이면, B(x) 내의 모든 수정에 대한 보장된 강건성이 존재한다.
식 (3)에 따른 최적화 문제는 주어진 클래스 ytrue와는 상이한 모든 상이한 타겟 클래스에 대해 해결될 수 있다. 식 (3)에 따른 최적화 문제의 결과가 주어진 클래스와는 상이한 모든 타겟 클래스에 대해 양의 값이면, 신경망(100)에 의해 오분류될 수 있는 입력값(x)의 노름 유계 적대적 수정(Δ)이 존재하지 않는다. 중요한 요점은 식 (3)의 최소값이 양의 값이면, 적대적 예제가 B(x) 내에 존재하지 않는 것이 보장된다.
식 (3)에 따른 최적화 문제를 해결하는 것은 매우 비효율적일 것이기 때문에, 문제는 특히 듀얼 최적화 문제에 의해 경계한정될 수 있다. 듀얼 문제의 솔루션은 실행가능한 듀얼 솔루션이고 식 (3)에 주어진 바와 같은 주 최적화 문제의 솔루션에 보장된 하계를 제공한다.
듀얼 문제는 예를 들어 라그랑주 승수(Lagrangian multiplies)와 같은 주 최적화 문제에 제약을 추가함으로써 구성될 수 있다.
이 경우에, 스킵 연결이 사용될 때, 식 (3)의 제약은 서로 의존한다. 따라서, 지시기 함수가 듀얼 최적화 문제를 결정하는데 사용된다. 지시기 함수는 이하와 같이 주어질 수 있다:
Figure pat00007
(4)
i = 2, ... , k에 대해.
지시기 함수의 펜첼 공액 함수에 관련된 '의사'-공액 함수는 이하에 의해 주어진다:
Figure pat00008
(5)
i = 1, ..., k-1에 대해. 식 (5)의 공액 함수는 식 (4)의 정확한 공액 함수가 아니고, 따라서 X* i는 '의사'-공액 함수라 칭한다.
지시기 함수의 '의사'-공액은 이하의 식에 의해 상계 한정될 수 있다:
Figure pat00009
(6)
상기 식들에 의해, 식 (3)에 따른 최적화 문제는 식 (3)의 하계로서 재기입될 수 있다. 이 하계는 이하의 식에 의해 표현되고:
Figure pat00010
(7)
여기서,
Figure pat00011
는 식 (2)의 p-노름에 대한 듀얼 노름이다.
max-항은 목적 함수(J)로서 재기입될 수 있다:
Figure pat00012
(8)
목적 함수(J)는 식 (7)의 이하의 식에 의해 주어진 듀얼 신경망을 사용하여 효율적으로 결정될 수 있고:
Figure pat00013
(9)
여기서, gi,j는 듀얼 계층이고, 상기 계층의 듀얼 활성화 함수에 의한 듀얼 변환을 특징으로 한다.
이하, 2개의 상이한 듀얼 계층이 예시적으로 개시된다. 선형 계층에 대한 듀얼 계층 (zi+1 = Wizi + bi)은 이하와 같이 표현될 수 있다:
Figure pat00014
(10)
ReLu 활성화 함수를 갖는 계층에 대한 듀얼 계층 (zi +1 = max{zi, 0})은 이하와 같이 주어지고:
Figure pat00015
(11)
여기서, Di는 대각 행렬이고:
Figure pat00016
(12)
Figure pat00017
,
Figure pat00018
,
Figure pat00019
는 음, 양 및 스패닝 0(spanning zero) 활성화의 세트를 각각 나타낸다. 이들 활성화의 세트는 대응 활성화의 상계 및 하계(u, l)에 의존하고 보조 제약으로서 보여질 수 있다. 활성화의 상계(u)가 0보다 작으면, 활성화는 음의 활성화를 갖는 활성화의 세트(
Figure pat00020
)에 대응한다. 하계(l)가 양의 값이면, 활성화는 양의 활성화를 갖는 활성화의 세트(
Figure pat00021
)에 대응한다. 하계 및 상계가 0의 점에 걸치면, 활성화는 세트(
Figure pat00022
)에 대응한다. 하계 및 상계를 결정하기 위한 방법이 도 4에 도시되어 있다.
전술된 바와 같이, 목적 함수가 양의 값이면, 신경망(100)을 기만하는 입력값(x)의 수정이 존재하지 않는다. 그러나, 목적 함수가 음의 값이면, 입력값(x)의 수정이 입력값의 분류를 타겟 분류로 변화하는지 여부를 보장하는 것이 가능하지 않다. 도 2에 개략적으로 도시된 바와 같이, 신경망(100)의 출력값(171)은 출력 적대적 다포체(180)에 의해 경계한정된다. 출력 적대적 다포체(180)는 신경망(100)의 ReLu 활성화 함수와 같은 비선형 활성화 함수에 기인하여 비볼록형 세트이다. 간단화를 위해, 비선형 활성화 함수는 근사될 수 있고, 이는 출력 적대적 다포체(180)의 근사를 야기한다.
ReLu 활성화 함수의 근사는 볼록 껍질(convex hull)로 ReLu를 경계한정함으로써 행해질 수 있다. 볼록 껍질은 3개의 선형식, 즉 음의 입력값에 대해 1개, 양의 입력값에 대해 1개 및 2개의 선형식의 스패닝된 영역을 폐쇄하는 제3 선형식에 의해 설명된다.
출력 적대적 다포체의 근사는 유계 볼록 다포체(200)에 의해 도 2에 도시되어 있다.
더욱이, 도 2는 출력 적대적 다포체(180) 및 유계 볼록 다포체(200)를 교차하는 결정 경계(201)를 도시하고 있다. 이는 신경망(100)의 출력값(171)이 출력 적대적 다포체(180)의 영역(220) 내에 있으면 오분류될 수 있다는 것을 암시한다. 입력값의 수정이 영역(220) 내로의 신경망(100)의 출력값의 시프트를 야기하면, 이는 입력값의 거짓 분류를 야기할 것이다. 이 경우에, 목적 함수는 결정 경계(201)를 교차할 때, 출력값(171)의 시프트가 다른 분류를 야기할 수 있기 때문에 음의 값일 것이다. 이 경우에, 입력값의 수정을 오분류하는 것에 대한 강건성이 존재하지 않는다.
제2 결정 경계(202)가 단지 유계 볼록 다포체(200)만을 교차하고 출력 적대적 다포체(180)는 교차하지 않으면, 목적 함수(J)는 또한 음의 값이지만, 모든 가능한 출력값이 제2 결정 경계(202)로 나눠지지 않은 출력 적대적 다포체(180) 내에 있기 때문에, 입력값(x)의 임의의 수정은 거짓 분류를 야기하지 않을 것이다. 이 경우에, 입력값의 수정을 오분류하는 것에 대한 강건성이 존재할 것이다. 그러나, 출력 적대적 다포체(180)의 근사에 기인하여, 목적 함수(J)는 정확하지 않다.
따라서, 목적 함수(J)가 음의 값이면, 입력의 수정이 신경망(100)을 기만할 수 있는지 여부를 판정하는 것이 가능하지 않다. 양의 목적 함수에 대해서만, 입력값의 수정이 신경망(100)을 기만하지 않는다는 보장된 결정이 이루어질 수 있다.
도 3은 식 (8)의 목적 함수(J)를 결정하기 위한 방법의 개략 흐름도(300)를 도시하고 있다.
방법은 단계 301에서 시작한다. 이 단계 301에서, 입력값(x) 및 입력값(x)의 참 분류 ytrue 및 타겟 분류 ytarg 및 주어진 섭동(ε)이 제공된다.
다음에, 단계 302에서, 식 (3)에 따른 변수(c)가 결정된다.
후속 단계 303에서, 입력값(x)은 신경망(100)을 통해 전파되고, 뉴런(또는 활성화 함수)의 활성화의 상계 및 하계(l, u)가 결정된다. 이들 경계(l, u)를 결정하기 위한 방법이 도 4에 도시되어 있다.
단계 303을 완료한 후에, 단계 304가 수행된다. 이 단계에서, 듀얼 신경망은 식 (9)에 따라 구성된다. 그 후에, 단계 305가 수행된다. 이 단계에서, 변수(c)는 식 (9)에 따라 듀얼 신경망을 통해 전파된다. 단계 304 및 305의 더 상세한 설명이 도 5에 제공되어 있다.
단계 306에서, 식 (8)에 따른 목적 함수(J)는 입력값(x)에 의존하여 그리고 듀얼 신경망의 출력값(v1) 및 주어진 섭동(ε)에 의존하여 결정된다.
도 4는 스킵 연결부(410)를 갖는 신경망(100)을 도시하고 있다. 신경망(100)의 본 실시예에서, 모든 뉴런은 ReLu 활성화 함수를 가질 수도 있다. 또한, 도 4는 스킵 연결부(410)를 갖는 신경망(100)의 계층의 입력값의 상계 및 하계를 결정하기 위한 방법, 특히 ReLu 활성화 함수를 갖는 뉴런의 활성화의 상계 및 하계를 결정하기 위한 방법의 흐름도(400)의 실시예를 도시하고 있다.
계층의 입력값의 상계 및 하계를 결정하기 위한 방법은 단계 401로 시작한다. 이 단계에서, 입력값(x) 및 섭동(ε)이 제공되고 다양한 변수가 이하의 식에 따라 초기화되고:
Figure pat00023
(13)
여기서,
Figure pat00024
는 본 예에서 모든 열의 행렬(l1) 노름을 나타낸다. 다른 노름들이 또한 고려가능하다.
단계 402에서, 루프가 신경망의 계층에 걸쳐 시작된다. 루프는 i=2에 의해 초기화되고, i가 k-1이 될 때까지 반복된다. 루프의 제1 단계(403)에서, 활성화 세트(
Figure pat00025
,
Figure pat00026
,
Figure pat00027
)는 계층(i)의 상계 및 하계의 값에 의존하여 결정된다.
다음에, 단계 404에서, 새로운 항이 이하의 식에 따라 초기화된다:
Figure pat00028
(14)
그 후에(단계 405), 기존의 항은 이하의 식에 따라 전파된다:
Figure pat00029
(15)
단계 406에서, 경계는 이하와 같이 계산된다:
Figure pat00030
(16)
부가적으로, 루프 인덱스(i)는 단계 406에서 증가된다. i가 k-1과 동일하면, 단계 407이 수행된다. 이 단계에서, 상계 및 하계(l1:k, u1:k)가 리턴된다. 그렇지 않으면(i < k-1), 단계 403 내지 406이 반복된다. 각각의 뉴런이 비선형 활성화 함수를 갖는 것이 아니면, 각각의 뉴런에 대한 경계를 결정하도록 요구되지 않는다는 것을 주목한다.
신경망이 다른 비선형 활성화 함수를 포함하면, 식 (16)은 각각의 합:
Figure pat00031
Figure pat00032
으로 각각 대체함으로써 식 (6)에 관하여 수정될 수 있다는 것을 주목한다. 게다가, 듀얼 변환(gi)은 단계 404 및 405에서 적용되어야 한다.
도 5는 듀얼 스킵 연결부(510)를 갖는 듀얼 신경망(510)을 도시하고 있다. 듀얼 신경망(510)의 본 실시예에서, 듀얼 신경망(510)은 도 4에 도시된 신경망(100)에 기초하여 생성된다. 또한, 도 5는 듀얼 신경망(510)을 구성하고 식 (9)에 따라 듀얼 신경망(510)을 통해 입력값(-c)을 전파하는 방법의 흐름도(500)의 실시예를 도시하고 있다.
이 방법은 듀얼 신경망(510)을 생성함으로써 단계 501에서 시작한다. 예시적으로, 신경망(100)의 아키텍처가 복사되고, 신경망(100)의 입력 계층 및 출력 계층은 듀얼 신경망(510)의 출력 계층 및 입력 계층으로서 각각 재구성된다. 이는 입력값(-c)이 듀얼 신경망(510)을 통해 전파될 때, 신경망(100)의 입력의 전파에 대해, 듀얼 신경망(510)의 입력은 역방향으로 전파되는 것을 의미한다. 도 5의 듀얼 네트워크가 180도만큼 회전될 때, 듀얼 신경망의 입력값은 신경망(100)에 대해 듀얼 신경망을 통해 정방향으로 전파한다는 것을 주목한다.
단계 502에서, 각각의 계층의 활성화 함수는 각각의 듀얼 활성화 함수로 대체된다. 듀얼 활성화 함수는 식 (6) 또는 식 (10) 내지 (12)에 따라 결정될 수 있다.
후속 단계 503에서, 듀얼 신경망(510)의 입력은 입력으로서 변수(c)를 수신하고 또는 식 (9)에 따라 입력값으로서 -c가 이용되어 듀얼 문제의 솔루션으로서 목적 함수(J)를 결정한다.
그 후에(단계 504), 듀얼 신경망(510)의 입력은 듀얼 신경망(500)을 통해 계층 단위로 전파된다. 출력 계층이 단계 504에서 그 출력값을 결정한 후에, 이어지는 단계 506에서, 출력값은 듀얼 신경망(510)의 출력값으로서 리턴된다.
도 6은 신경망(100)의 입력값의 적대적 섭동에 대해 강건하게 보장되도록 신경망(100)을 훈련하기 위한 방법의 흐름도(600)의 실시예를 도시하고 있다.
이 훈련 방법은 단계 601에서 시작한다. 여기서, 훈련 데이터는 훈련 입력값(x)에 할당되는 N개의 훈련 입력값(x) 및 N개의 훈련 출력값(ytrue)을 각각 포함한다. 출력값(ytrue)은 각각의 입력값(x)의 참 분류일 수 있다. 섭동값(ε)은 단계 601에서 또한 제공된다. N개의 쌍의 입력값 및 출력값을 포함하는 훈련 데이터는 배치라 칭한다는 것을 주목한다. 하나 초과의 배치가 이용가능하면, 이 방법은 각각의 배치에 대해 반복될 수 있다. 부가적으로 또는 대안적으로, 방법은 주어진 기준이 부합될 때까지 동일한 배치에 대해 다수회 반복될 수 있다. 이 훈련 방법은 비지도 학습에 대해 또한 사용될 수 있는데, 여기서 비지도 학습 접근법에 따르면, 훈련 데이터는 이에 따라 구조화되고 그리고/또는 라벨링되어야 한다는 것을 주목한다. 각각의 훈련 입력값(x)은 하나 초과의 대응하는 훈련 출력값(ytrue)을 가질 수도 있다는 것이 또한 고려가능하다.
다음에, 훈련 데이터에 걸쳐 i=1, ..., N에 대한 루프가 단계 602에서 시작된다.
단계 603에서, i번째 훈련 입력값(xi)에 대해, 식 (3)에 따른 변수(ci)는 할당된 참 분류(yi true)와는 상이한 각각의 원하는 타겟 분류(yi targ)에 대해 생성된다. 각각의 원하는 타겟 분류에 대한 변수(ci)는 행렬:
Figure pat00033
로서 표현될 수 있다. 상기 행렬에 포함된 각각의 결정된 변수(ci)는 i번째 훈련 입력값(xi)에 대한 목적 함수(J)를 결정하는데 이용될 수 있다. 다음에, 목적 함수(Ji)는 도 3에 도시된 방법에 따라 결정된다.
그 후에(단계 604), 결정된 목적 함수(Ji)와 훈련 출력값(yi) 사이의 차이를 특징화하는 손실 함수(Li)가 결정된다. 바람직하게는, 0-1 손실 함수가 이용된다. 듀얼 신경망(500)의 상이한 출력값, 목적 함수 및/또는 상이한 이용된 훈련 출력값에 대한 다수의 상이한 손실 함수를 사용하는 것이 또한 가능하다. 루프의 인덱스 i는 1만큼 증가되고, 단계 603 및 604는 단계 602에서 정의된 바와 같이, 인덱스 i가 N에 동일할 때까지 반복된다.
모든 훈련 데이터에 걸친 루프가 완료될 때, 단계 605가 수행된다. 여기서, 각각의 결정된 손실 함수(Li)가 합산되고 모든 손실 함수에 걸친 합이 예를 들어, 이하와 같이 최적화된다:
Figure pat00034
(17)
식 (17)은 경사 하강법(gradient descent)에 의해 최적화될 수 있다. 경사 하강법은 손실 함수(Li)에 걸친 합을 최소화하기 위해 신경망(100)의 매개변수(θ)의 변화(Δθ)를 결정한다. 유리하게는, 매개변수(θ)의 변화(Δθ)는 상기 매개변수들을 조정하는데 사용되고, 단계 605는 매개변수(θ)의 결정된 변화(Δθ)가 주어진 임계치보다 작을 때까지 반복된다.
도 7은 도 6에 설명된 바와 같이 신경망(100)의 효율을 증가시키고 훈련을 가속하기 위한, 특히 단계 603을 가속하기 위한 방법의 흐름도(700)를 개략적으로 도시하고 있다. 도 3의 단계 306을 가속하기 위해 이 방법을 이용하는 것이 또한 가능하다.
식 (8)에 의해 정의된 목적 함수를 리캡한다(recap):
Figure pat00035
. 제2 및 제3 항
Figure pat00036
의 계산은 전체 듀얼 신경망(500)에 의존하고, 따라서 계산 비용이 높다. 그러나, 이들 항은 도 7의 도시된 방법에 따라 효율적으로 근사될 수 있다.
제1 단계 701에서, 듀얼 신경망(500)의 각각의 계층에 대한 하계 및 상계가 주어진다.
다음 단계 702에서, 행렬(R1)은 |z1|×r의 사이즈로 초기화된다. 행렬(R1)의 요소는 코시 분포로부터 샘플링된다. 이 행렬(R1)은 l1 경계에 대응한다.
그 후에, 단계 703에서, 계층 i=2, ..., k에 걸친 루프가 루프 인덱스 i로 시작된다.
단계 704에서, 인덱스 j=1, ..., i-1에 걸쳐 반복되고, 여기서 인덱스 j의 각각의 값에 대해, 새로운 랜덤 행렬
Figure pat00037
이 결정되고,
Figure pat00038
가 결정된다. 이는 듀얼망을 통해 전파하는 r개의 랜덤 벡터(및 부가의 벡터, 예를 들어, 1T)에 대응한다.
단계 704가 완료된 후에, 단계 705가 수행된다. 단계 705에서, 새로운 행렬
Figure pat00039
Figure pat00040
가 결정된다(di는 식 (19)에 따라 결정됨). 다음에, 인덱스 i는 1만큼 증가되고, 단계 704 및 705는 i=k가 충족될 때까지 반복된다.
단계 706에서, ReLu 계층에 대한 항
Figure pat00041
및 항
Figure pat00042
은 더 효율적으로 계산될 수 있다. 듀얼 노름이 l1 노름에 동일한 경우에, 이는 이하의 식에 의해 효율적으로 계산될 수 있고:
Figure pat00043
(18)
여기서 R은 |z1|×r 표준 코시 랜덤 행렬이고, 중앙값이 제2 축에 걸쳐 취해진다.
ReLu 함수의 제2 항은 이하와 같이 표현된다:
Figure pat00044
(19)
도 8은 입력값(x)의 가능한 적대적 예제를 검출하기 위한 방법의 흐름도(800)의 실시예를 도시하고 있다.
제1 단계 801에서, 신경망(100)은 입력값에 의존하여 출력값(ypred)을 결정한다.
단계 802에서, 목적 함수(J)는 이하의 식에 따라 모든 가능한 타겟 분류에 대해 결정된다:
Figure pat00045
(20)
이어지는 단계 803에서, 목적 함수(J)는 임계치와 비교된다. 예를 들어:
Figure pat00046
이고, 이어서 신경망(100)에 의해 오분류될 수 있는 입력의 수정이 존재하지 않는다. 목적 함수(J)가 양의 값이면, 비교의 결과는 참이고, 이는 오분류될 수 있는 볼 B(x) 내의 입력 이미지의 수정이 존재하지 않는 것을 특징화한다. 그렇지 않으면, 목적 함수가 양의 값이 아니면, 비교의 결과는 거짓이다.
선택적으로, 단계 804가 수행된다. 이 단계에서, 신경망(100)의 출력값(ypred)은 비교의 결과에 의존하여 해제되거나 거절된다. 예를 들어, 비교의 결과가 참이면, 출력값(ypred)은 기술 시스템을 제어하는데 이용될 수 있다(더 많은 정보를 위해, 도 12 참조). 대안적으로, 단계 803의 결과가 참일 때, 권한부여(authorization) 신호 또는 강건성 인증서가 생성될 수 있다. 권한부여 신호 또는 강건성 인증서는 출력값(ypred)을 이용하기 전에 검사하는데 사용될 수 있다. 바람직하게는, 권한부여 신호 및/또는 강건성 인증서는 악의적인 조작을 방지하도록 암호화된다.
도 9는 신경망(100)의 출력값이 신경망(100)에 의해 결정된 클래스 이외의 다른 클래스로 높은 확실성으로 플립될 수 없도록 최대 섭동값(ε)을 결정하기 위한 방법의 흐름도(900)를 개략적으로 도시하고 있다. 이는 또한 측정으로서, 얼마나 멀리 결정 경계가 신경망의 출력부로부터 이격되어 있는지가 보여질 수 있다.
제1 단계 901에서, 신경망(100)은 입력값에 의존하여 출력값(ypred)을 결정한다.
단계 902에서, 목적 함수(J)는 모든 가능한 타겟 분류에 대해 결정된다:
Figure pat00047
.
다음에(단계 903), 최대 섭동값(ε)이 결정된다. 이는 이하의 식에 따라 결정될 수 있다:
Figure pat00048
(21)
특히, 식 (21)은 뉴튼법을 이용하여 해결될 수 있다. 부가적으로 또는 대안적으로, 2진 검색이 식 (21)을 해결하는데 사용될 수 있다. 식 (21)을 해결하기 위한 다른 방법은 목적 함수가 양의 값으로 유지되는 동안 ε을 증분적으로 증가하는 것일 수 있다.
선택적으로, 주어진 입력값에 대한 최대 섭동값이 결정되면, 단계 901 내지 903이 다른 입력값에 대해 반복될 수 있다. 2개 초과의 최대 섭동이 상이한 입력값에 대해 결정되면, 단계 904가 수행된다. 여기서, 최소 결정된 섭동값이 확인되고 리턴된다. 이 리턴된 섭동값에 의존하여, 강건성 인증서가 생성될 수 있다. 이 강건성 인증서는 설명된 방법들 중 하나에서 사용될 수 있는데, 여기서 주어진 섭동값(ε)이 요구된다.
도 10은 활성화 함수의, 특히 ReLu 활성화 함수를 갖는 뉴런의 더 타이트한 경계를 결정하기 위한 방법의 흐름도(1000)의 실시예를 개략적으로 도시하고 있다.
방법은 단계 1001에서 시작한다. 이 단계에서, 신경망(100)이 주어지고, 여기서 신경망은 ReLu 활성화 함수를 갖고 예시적으로 배치 정규화 계층을 갖고 fθ에 의해 설명될 수 있다. 더욱이, 단계 1001에서, 입력값(x) 및 섭동(ε)이 제공된다.
후속의 단계 1002에서, 상계 및 하계(li, ui)는 각각의 계층(i)에 대해, 특히 계층의 각각의 뉴런에 대해 결정된다. 상계 및 하계는 도 4에 도시된 방법에 따라 결정될 수 있다. 대안적으로, 상계는 이 경우에 듀얼 신경망(500)을 통해 열 단위로 전파될 수 있는 양의 대각 행렬(c = I)에 의해 주어지는 변수(c)를 듀얼 신경망(500)을 통해 전파함으로써 결정될 수 있고, 입력값(x)에 의존하여 스케일링된 상기 전파된 대각 행렬의 각각의 계층에 대한 최대값이 상계로서 사용된다. 동일한 절차가 c = -I를 전파함으로써 행해질 수 있고, 하계인 그 최대값을 결정할 수 있다.
다음에, 단계 1003에서, 단계 1002의 결정된 상계 및 하계에 추가하여, 선형 부등식 Aizi ≤ bi가 초기화되고, 계층(i)의 입력값(zi)은 입력값의 이하의 허용가능한
Figure pat00049
세트에 제한된다:
Figure pat00050
(22)
행렬(Ai)의 초기화는 행렬(Ai)의 제1 차원의 임의적 사이즈(m)를 선택함으로써 행해지고, 여기서 제2 차원은 계층의 사이즈에 의존한다: dim(zi). 행렬(Ai)의 제1 차원은 신경망(100) 내의 대응 계층(i)의 위치에 비례하고 대응 계층(i)의 뉴런의 수에 다항식일 수 있다.
바람직하게는, 신경망(100)의 제1 계층은 입력값의 노름 유계 수정의 더 양호한 근사가 설명될 수 있는 장점을 갖는 행렬(Ai)을 포함한다. 더 깊은 계층, 예를 들어 마지막 몇개의 계층은 출력 적대적 다포체(180)와 유계 볼록 다포체(200) 사이의 에러를 최소화하기 위해 행렬(Ai)을 포함해야 한다. 더욱이, 더 깊은 신경망(100)의 계층이 얻어질수록, 행렬(Ai)의 더 큰 사이즈가 선택되어야 한다. 행렬(Ai)의 특정 사이즈(m)를 선택함으로써, m개의 부가의 제약이 입력값의 허용가능한 세트(
Figure pat00051
)를 제한하도록 추가된다.
행렬(Ai)의 다른 실시예에서, 상기 행렬은 콘볼루션 행렬일 수 있다.
단계 1004에서, 행렬(Ai)의 요소가 결정된다. 행렬(Ai)의 요소를 결정하기 위한 2개의 옵션이 존재한다. 제1 옵션에서, 요소는 주어진 분포(예를 들어, 가우스 분포, 원점 주위에 정렬됨)로부터 랜덤으로 샘플링된다. 다른 옵션에서, 요소는 이전의 계층의 상계 및 하계이다.
선형 부등식 Aizi ≤ bi의 벡터(bi)는 벡터(bi)를 결정하기 위해(듀얼 신경망을 통해 행렬(I)을 전파함으로써 상계 및 하계를 결정하기 위한 단계 1002와 유사하게) 듀얼 신경망을 통해 ci = Ai를 행 단위로 전파함으로써 상계를 결정하기 위해 대안적인 방법에 따라 결정될 수 있다.
이어지는 단계 1005에서, 행렬(Ai)의 요소가 최적화된다. 활성화 함수가 ReLu 활성화 함수에 의해 제공되는 경우에, 행렬(ai)의 요소에 걸친 최적화는 특히 행렬(Ai)의 요소에 의존하여 경사 하강법에 의해 이하의 식을 해결함으로써 행해질 수 있다.
Figure pat00052
(23)
다른 실시예에서, 경사 하강법의 스텝 사이즈는 식 (23)의 최소값을 발견하는 프로세스에 의존하여 변할 수 있다.
행렬(Ai)의 요소가 이전의 계층의 상계 및 하계가 되도록 선택되면, 행렬(Ai)의 요소는 경사 하강법을 이용함으로써 유사하게 식 (23)에 따라 최적화될 수 있다. 부가적으로 또는 대안적으로, 초기화된 행렬(Ai)은 이전의 계층의 변환을 특징화하는 역행렬을 행렬(Ai)에 곱함으로써 최적화될 수 있다. 바람직하게는, 역행렬은 특히 이전의 계층의 가중치를 포함하는 행렬(Wi)의 역 또는 의사역, 좌측 또는 우측 역이다.
행렬(Ai)의 요소가 단계 1005에서 최적화된 후에, 벡터(bi)는 단계 1006에서 업데이트될 수 있다. 예를 들어, 단계 1004에서 행해진 바와 같다.
선택적 후속 단계에서, 상계 및 하계는 예를 들어, 단계 1002에 따라 업데이트될 수 있다. 행렬(Ai) 및 벡터(bi)는 서로 링크되어 있고 이들 중 하나가 변경되면, 다른 하나가 적응되어야 하기 때문에, 단계 1005 및 단계 1006을 반복하는 것이 가능하다.
듀얼 신경망의 각각의 듀얼 계층(i)의 듀얼 변환은 각각의 듀얼 계층(i)의 미리 결정된 또는 업데이트된 상계 및 하계와 함께 행렬(Ai)에 의해 결정될 수 있다. 식 (23)에 따른 최적화 문제는 공액 ReLu 함수의 식 (6)에 따른 상계로서 식 (23)에 의해 특징화된 듀얼 변환을 결정하기 위해 λ에 의존하여(식 (23)의 최적화 문제를 최소화하는 λ에 대한 값을 발견함) 해결되어야 한다(예를 들어, 경사 하강법에 의해).
도 11은 적어도 부분적 자율 로봇 또는 차량과 같은 기술 시스템을 제어하고, 선택적으로 기술 시스템을 제어하기 전에 적대적 예제를 선택적으로 검출하기 위해 훈련된 신경망(100)을 이용하기 위한 방법의 흐름도(1100)를 도시하고 있다. 기술 시스템의 상이한 구성은 후속의 도 12 내지 도 18에 예시적으로 도시되어 있다는 것을 주목한다.
이 방법은 단계 1101에서 시작한다. 이 단계는 훈련 입력 이미지 및 할당된 훈련 출력값을 포함하는 훈련 데이터(D)를 취득하는데 사용된다. 훈련 입력 이미지는 카메라의 이미지일 수 있고, 각각의 훈련 출력값은 훈련 이미지의 분류를 다수의 클래스 중 하나, 예를 들어 클래스 보행자 또는 상이한 도로 표지판으로 특징화할 수 있다. 이들 훈련 데이터(D)는 도 19에 도시된 바와 같이 훈련 시스템으로 제공될 수도 있고, 이는 도 6에 설명된 방법에 따라 신경망(100)을 훈련하도록 구성된다.
다음에(단계 1102), 신경망(100)은 단계 1101의 훈련 데이터(D)를 갖고 도 6에 설명된 방법에 따라 훈련된다. 신경망(100)을 훈련한 후에, 도 9에 설명된 바와 같은 최대 섭동(ε)을 결정하기 위한 방법이 수행될 수도 있고, 바람직하게는 각각의 훈련 입력 이미지가 최대 섭동(ε)을 결정하는데 사용된다. 단계 1102는 서버 상에서 또는 기술 시스템 자체 내에서 수행될 수 있다. 훈련된 신경망, 특히 매개변수화 및 선택적으로 아키텍처, 및 적용가능할 때, 최대 섭동(ε)이 서버로부터 기술 시스템 내로 전송되고 기술 시스템의 저장장치 내에 저장될 수 있다. 부가적으로, 입력 이미지의 수정이 도 3에 따라 훈련된 신경망을 기만할 수 있는지 여부에 대해 훈련된 신경망을 테스트하기 위한 방법이 수행될 수 있다.
단계 1103에서, 기술 시스템의 센서, 예를 들어 카메라가 환경을 감지하고, 훈련된 신경망은 센서값, 예를 들어 이미지를 수신한다.
단계 1104에서, 훈련된 신경망은 센서값에 의존하여 출력값을 결정한다.
단계 1105가 수행될 수도 있다. 여기서, 수신된 센서값은 이것이 도 8에 설명된 바와 같은 센서값의 적대적 예제인지 여부가 검사된다. 인증 신호가 적대적 예제의 검출의 결과에 의존하여 생성될 수 있다.
단계 1104 또는 단계 1105 후에, 단계 1106이 수행된다. 단계 1104의 출력값에 의존하여, 기술 시스템을 위한 제어 신호가 생성된다. 제어 신호는 단계 1105의 인증 신호에 의존할 수도 있다. 하나의 실시예에서, 인증 신호가 신경망의 입력이 적대적 예제가 아닌 것을 특징화하는 경우에만, 제어 신호가 생성된다. 다른 실시예에서, 생성된 제어 신호는 제어 신호에 의존하여 폐기될 수 있다. 기술 시스템의 모터 또는 제동 시스템이 단계 1106의 제어 신호에 의해 제어될 수 있다.
도 12에는 그 환경(1220) 내의 액추에이터(1210)의 하나의 실시예가 도시되어 있다. 액추에이터(1210)는 액추에이터 제어 시스템(1240)과 상호작용한다. 액추에이터(1210) 및 그 환경(1220)은 함께 액추에이터 시스템이라 칭할 것이다. 바람직하게 균등하게 이격된 거리에서, 센서(1230)가 액추에이터 시스템의 조건을 감지한다. 센서(1230)는 다수의 센서를 포함할 수도 있다. 감지된 조건을 인코딩하는 센서(1230)의 출력 신호(S)(또는 센서(1230)가 복수의 센서를 포함하는 경우에, 각각의 센서에 대한 출력 신호(S))가 액추에이터 제어 시스템(1240)에 전송된다. 다른 실시예에서, 액추에이터 제어 시스템(1240)은 액추에이터 제어 시스템(1240)을 테스트하기 위한 가상 센서값을 수신할 수 있다.
이에 의해, 액추에이터 제어 시스템(1240)은 센서 신호(S)의 스트림을 수신한다. 이는 이어서 액추에이터(1210)에 전송되는 센서 신호(S)의 스트림에 의존하여 일련의 액추에이터 제어 명령(A)을 계산한다.
액추에이터 제어 시스템(1240)은 선택적 수신 유닛(1250) 내에 센서(1230)의 센서 신호(S)의 스트림을 수신한다. 수신 유닛(1250)은 센서 신호(S)를 입력 신호(x)로 변환한다. 대안적으로, 수신 유닛(1250)이 없는 경우에, 각각의 센서 신호(S)는 입력 신호(x)로서 직접 취해질 수도 있다. 입력 신호(x)는 예를 들어, 센서 신호(S)로부터 발췌부로서 제공될 수도 있다. 대안적으로, 센서 신호(S)는 입력 신호(x)를 산출하도록 처리될 수도 있다. 입력 신호(x)는 예를 들어, 비디오 레코딩의 이미지 또는 프레임을 포함할 수도 있다. 달리 말하면, 입력 신호(x)는 센서 신호(S)에 따라 제공된다.
입력 신호(x)는 이어서 예를 들어, 신경망(100)에 의해 제공될 수도 있는 자동화 학습 시스템(1260)으로 통과된다.
자동화 학습 시스템(1260)은 매개변수 저장장치(P) 내에 저장되어 이에 의해 제공되는 매개변수(θ)에 의해 특징화된다.
자동화 학습 시스템(1260)은 입력 신호(x)로부터 출력 신호(y)를 결정한다. 출력 신호(y)는 출력 신호(y)를 제어 신호 또는 제어 명령(A)으로 변환하는 변환 유닛(1280)으로 전송된다. 액추에이터 제어 명령(A)은 이어서 이에 따라 액추에이터(1210)를 제어하기 위해 액추에이터(1210)에 전송된다.
액추에이터(1210)는 액추에이터 제어 명령(A)을 수신하고, 이에 따라 제어되고, 액추에이터 제어 명령(A)에 대응하는 동작을 수행한다. 액추에이터(1210)는 액추에이터 제어 명령(A)을 다른 제어 명령으로 변환하는 제어 로직을 포함할 수도 있고, 다른 제어 명령은 이어서 액추에이터(1210)를 제어하는데 사용된다.
다른 실시예에서, 액추에이터 제어 시스템(1240)은 센서(1230)를 포함할 수도 있다. 센서(1230)는 카메라, 레이더 또는 라이더 센서일 수 있다. 센서는 이들에 한정되는 것은 아니고, 오디오 센서와 같은 다른 고려가능한 센서가 또한 적용가능하다. 또 다른 실시예에서, 액추에이터 제어 시스템(1240)은 대안적으로 또는 부가적으로 액추에이터(1210)를 포함할 수도 있다.
더욱이, 액추에이터 제어 시스템(1240)은 프로세서(45)(또는 복수의 프로세서)와, 수행되면 액추에이터 제어 시스템(1240)이 이전의 도면들 중 하나에 따른 방법을 수행하게 하는 명령어가 저장되어 있는 적어도 하나의 기계-판독가능 저장 매체(46)를 포함할 수도 있다.
액추에이터(1210)에 대안적으로 또는 부가적으로, 실시예는 액추에이터 제어 명령(A)에 따라 또한 제어될 수도 있는 디스플레이 유닛(1210a)을 포함할 수도 있다. 대안적으로, 디스플레이 유닛(1210a)은 측정 시스템에 속하고, 여기서 자동화 학습 시스템은 입력값에 의존하여 측정값을 결정하는데 사용된다.
액추에이터 제어 시스템(1240)의 다른 실시예에서, 액추에이터 제어 시스템(1240)은 강건성 인증서 생성기(1247)를 포함한다. 강건성 인증서 생성기(1247)는 예를 들어, 도 8에 도시된 방법에 대응하는 강건성 인증서를 생성하도록 구성된다. 생성된 강건성 인증서가 디스플레이 유닛(1210a) 상에 표시될 수도 있고 또는 액추에이터(1210)를 제어하기 위해 제어 명령(A)을 해제하는데 사용될 수도 있다. 다른 실시예에서, 액추에이터 제어 시스템(1240)은 도 8에 따른 방법을 실행하는 적대적 예제 검출기(1248)를 포함한다.
상기 실시예의 모두에서, 자동화 학습 시스템(1260)은 다수의 미리규정된 클래스 중 하나에 속하는 입력 신호(x)를 분류하도록 구성된 분류자를 포함할 수도 있다. 다른 실시예에서, 자동화 학습 시스템(1260)은 이미지 구역을 분류하도록 구성되고 또는 이미지를 화소 단위로 분류하도록 구성된다.
부가적으로 또는 대안적으로, 출력 신호(y) 또는 제어 신호 또는 제어 명령(A)은 디스플레이 유닛(1210a) 상에 표시된다.
도 13은 액추에이터 제어 시스템(1240)이 자동화 학습 시스템(1260)의 출력값에 의존하여, 적어도 부분적 자율 로봇, 예를 들어 적어도 부분적 자율 차량(1300)을 제어하는데 사용되는 실시예를 도시하고 있다.
센서(1230)는 하나 이상의 비디오 센서 및/또는 하나 이상의 레이더 센서 및/또는 하나 이상의 초음파 센서 및/또는 하나 이상의 라이더 센서 및 하나 이상의 위치 센서(예를 들어, GPS와 같은)를 포함할 수도 있다. 이들 센서의 일부 또는 모두는 바람직하게는 그러나 필수적이지는 않게 차량(1300) 내에 일체화된다. 대안적으로 또는 부가적으로, 센서(1230)는 액추에이터 시스템의 상태를 결정하기 위한 정보 시스템을 포함할 수도 있다. 이러한 정보 시스템에 대한 일례는, 환경(1220) 내의 날씨의 현재 또는 미래 상태를 결정하는 날씨 정보 시스템이다. 다른 정보가 통신 시스템에 의해 또는 인터넷을 거쳐 수신될 수도 있다.
예를 들어, 입력 신호(x)를 사용하여, 자동화 학습 시스템(1260)은 예를 들어, 적어도 부분적 자율 로봇의 부근의 물체를 검출할 수도 있다. 출력 신호(y)는 적어도 부분적 자율 로봇의 부근에 위치된 물체를 특징화하는 정보를 포함할 수도 있다. 제어 명령(A)은 이어서 예를 들어, 상기 검출된 물체와의 충돌을 회피하도록, 이 정보에 따라 결정될 수도 있다.
바람직하게는 차량(1300) 내에 일체화되는 액추에이터(1210)는 차량(1300)의 브레이크, 추진 시스템, 엔진, 구동열, 또는 스티어링에 의해 제공될 수도 있다. 액추에이터 제어 명령(A)은, 차량(1300)이 상기 검출된 물체와의 충돌을 회피하도록 액추에이터(또는 액추에이터들)(1210)가 제어되도록 결정될 수도 있다. 검출된 물체는 또한 이들 자동화 학습 시스템(1260)이 이들 물체를 예를 들어, 보행자 또는 나무인 것으로 간주할 가능성이 가장 높은 것에 따라 분류될 수도 있고, 액추에이터 제어 명령(A)은 분류에 의존하여 결정될 수도 있다.
다른 실시예에서, 적어도 부분적 자율 로봇은 예를 들어, 비행, 수영, 다이빙 또는 걷기에 의해 이동할 수도 있는 다른 이동식 로봇(도시 생략)에 의해 제공될 수도 있다. 이동식 로봇은 특히, 적어도 부분적 자율 잔디깍기, 또는 적어도 부분적 자율 청소 로봇일 수도 있다. 모든 상기 실시예에서, 액추에이터 제어 명령(A)은, 이동식 로봇이 상기 식별된 물체와의 충돌을 회피할 수도 있도록 이동식 로봇의 추진 유닛 및/또는 스티어링 및/또는 브레이크가 제어되도록 결정될 수도 있다.
다른 실시예에서, 적어도 부분적 자율 로봇은 환경(1220) 내의 식물의 상태를 결정하기 위해, 센서(1230), 바람직하게는 광학 센서를 사용하는 원예 로봇(도시 생략)에 의해 제공될 수도 있다. 액추에이터(1210)는 화학물질을 스프레이하기 위한 노즐일 수도 있다. 식물의 식별된 종 및/또는 식별된 상태에 의존하여, 액추에이터 제어 명령(A)은 액추에이터(1210)가 적합한 양의 적합한 화학물질을 식물에 스프레이하게 하도록 결정될 수도 있다.
또 다른 실시예에서, 적어도 부분적 자율 로봇이 예를 들어, 세탁기, 난로, 오븐, 전자렌지, 또는 식기세척기와 같은 가전제품(도시 생략)에 의해 제공될 수도 있다. 센서(1230), 예를 들어 광학 센서는 가전제품에 의한 처리를 경험하기 위한 물체의 상태를 검출할 수도 있다. 예를 들어, 가전제품이 세탁기인 경우에, 센서(1230)는 세탁기 내부의 세탁물의 상태를 검출할 수도 있다. 액추에이터 제어 신호(A)는 이어서 세탁물의 검출된 재료에 의존하여 결정될 수도 있다.
도 14에는 액추에이터 제어 시스템(1240)이 제조 기계(1411), 예를 들어, 제조 라인의 부분으로서, 예를 들어 제조 시스템(200)의 펀치 커터, 커터 또는 건 드릴을 제어하는데 사용되는 실시예가 도시되어 있다. 액추에이터 제어 시스템(1240)은 액추에이터(1210)를 제어하고, 액추에이터는 이어서 액추에이터 제어 시스템(1240)의 자동화 학습 시스템(1260)의 출력값에 의존하여 제조 기계(1413)를 제어한다.
센서(1230)는 예를 들어, 제조된 제품(1412)의 특성을 캡처하는 광학 센서에 의해 제공될 수도 있다. 자동화 학습 시스템(1260)은 이들 캡처된 특성으로부터 제조된 제품(1412)의 상태 또는 제조된 제품(1412) 자체를 결정할 수도 있다. 제조 기계(1411)를 제어하는 액추에이터(1210)가 이어서 자동화 학습 시스템(1260)에 의해 결정된 또는 액추에이터 제어 시스템(1240)에 의해 결정된 제조된 제품(1412)의 후속 제조 단계를 위해 제조된 제품(1412)의 결정된 상태에 의존하여 제어될 수도 있다. 대안적으로, 액추에이터(1210)는 제조된 제품(1412)의 결정된 상태에 의존하여 후속의 제조된 제품(1412)의 제조 중에 제어되는 것이 고려될 수도 있다.
도 15에는 액추에이터 제어 시스템(1240)이 자동화 개인 비서(1502)를 제어하기 위해 사용되는 실시예가 도시되어 있다. 바람직한 실시예에서, 센서(1230)는 인간 사용자(1501)의 음성 명령을 수신하는 음향 센서일 수도 있다. 센서(1230)는 예를 들어, 사용자(1501)의 제스처의 비디오 이미지를 수신하기 위한 광학 센서를 또한 포함할 수도 있다.
액추에이터 제어 시스템(1240)은 이어서 자동화 개인 비서(1502)를 제어하기 위해 액추에이터 제어 명령(A)을 결정한다. 액추에이터 제어 명령(A)은 센서(1230)의 센서 신호(S)에 따라 결정된다. 센서 신호(S)는 액추에이터 제어 시스템(1240)에 전송된다. 예를 들어, 자동화 학습 시스템(1260)은, 예를 들어 사용자(1501)에 의해 행해진 제스처를 식별하기 위해 제스처 인식 알고리즘을 수행하도록 구성될 수도 있고, 또는 사용자(1501)에 의해 발언된 구두 명령을 식별하기 위해 음성 명령 인식 알고리즘을 수행하도록 구성될 수도 있다. 액추에이터 제어 시스템(1240)은 이어서 자동화 개인 비서(1502)로의 전송을 위해 액추에이터 제어 명령(A)을 결정할 수도 있다. 이는 이어서 상기 액추에이터 제어 명령(A)을 자동화 개인 비서(1502)에 전송한다.
예를 들어, 액추에이터 제어 명령(A)은 자동화 학습 시스템(1260)에 의해 인식된 식별된 사용자 제스처 또는 식별된 사용자 음성 명령에 따라 결정될 수도 있다. 이는 이어서 자동화 개인 비서(1502)가 데이터베이스로부터 정보를 인출하고 이 인출된 정보를 사용자(1501)에 의한 수신을 위해 적합한 형태로 출력하게 하는 정보를 포함할 수도 있다.
다른 실시예에서, 자동화 개인 비서(1502) 대신에, 액추에이터 제어 시스템(1240)은 식별된 사용자 제스처 또는 식별된 사용자 음성 명령에 따라 제어된 가전제품(도시 생략)을 제어하는 것이 고려될 수도 있다. 가전제품은 세탁기, 난로, 오븐, 전자렌지 또는 식기세척기일 수도 있다.
도 16에는 액추에이터 제어 시스템이 액세스 제어 시스템(1602)을 제어하는 실시예가 도시되어 있다. 액세스 제어 시스템이 액세스를 물리적으로 제어하도록 설계될 수도 있다. 이는 예를 들어, 도어(1601)를 포함할 수도 있다. 센서(1230)는 액세스가 허가되어야 하는지 여부를 판정하기 위해 관련되는 장면을 검출하도록 구성된다. 이는 예를 들어, 사람의 얼굴을 검출하기 위해, 이미지 또는 비디오 데이터를 제공하기 위한 광학 센서일 수도 있다. 자동화 학습 시스템(1260)은 예를 들어, 데이터베이스 내에 저장된 인지된 사람과 아이덴티티를 정합함으로써 이 이미지 또는 비디오 데이터를 해석하고, 이에 의해 사람의 아이덴티티를 결정하도록 구성될 수도 있다. 액추에이터 제어 신호(A)는 이어서 예를 들어, 결정된 아이덴티티에 따라, 자동화 학습 시스템(1260)의 해석에 의존하여 결정될 수도 있다. 액추에이터(1210)는 액추에이터 제어 신호(A)에 의존하여 액세스를 허가하거나 허가하지 않는 로크(lock)일 수도 있다. 비-물리적, 논리적 액세스 제어가 또한 가능하다. 다른 실시예에서, 액추에이터 제어 시스템은 가열 시스템을 제어하고, 여기서 액추에이터 제어 시스템은 측정된 온도 및/또는 습도값에 의존하여 그리고 선택적으로 일기예보 또는 주간(daytime)에 의존하여 소유자의 원하는 기후를 결정하도록 구성된다.
도 17에는 액추에이터 제어 시스템(1240)이 감시 시스템(1701)을 제어하는 실시예가 도시되어 있다. 본 실시예는 도 16에 도시된 실시예와 거의 동일하다. 따라서, 단지 상이한 양태만이 상세히 설명될 것이다. 센서(1230)는 감시 하에 있는 장면을 검출하도록 구성된다. 액추에이터 제어 시스템은 반드시 액추에이터(1210)를 제어하는 것은 아니지만, 디스플레이(1210a)는 제어한다. 예를 들어, 자동화 학습 시스템(1260)은 광학 센서(1230)에 의해 검출된 장면이 의심스러운지 여부를 판정할 수도 있다. 디스플레이(1210a)에 전송되는 액추에이터 제어 신호(A)는 이어서 예를 들어, 디스플레이(1210a)가 자동화 학습 시스템(1260)에 의해 의심스러운 것으로 간주되는 물체를 하이라이트하게 하도록 구성될 수도 있다.
도 18에는, 예를 들어 MRI 장치, x-레이 이미징 장치 또는 초음파 이미징 장치와 같은 이미징 시스템(1800)을 제어하기 위한 액추에이터 제어 시스템(1240)의 실시예가 도시되어 있다. 센서(1230)는 예를 들어, 그 감지된 이미지가 자동화 학습 시스템(1260)에 의해 해석되는 이미징 센서일 수도 있다. 액추에이터 제어 신호(A)는 이어서 이 해석에 따라 선택될 수도 있고, 이에 의해 디스플레이(1210a)를 제어한다. 예를 들어, 자동화 학습 시스템(1260)은 감지된 이미지의 구역을 잠재적으로 이상이 있는 것으로 해석할 수도 있다. 이 경우에, 액추에이터 제어 신호(A)는 디스플레이(1210a)가 잠재적 이상 구역을 이미징하고 하이라이팅하여 표시하게 하도록 결정될 수도 있다.
도 19에는 자동화 학습 시스템(1260)을 (재)훈련하기 위한 훈련 시스템(1900)의 실시예가 도시되어 있고, 특히 훈련 시스템은 도 6에 따른 방법을 수행하도록 구성된다. 훈련 데이터 유닛(1901)이 자동화 학습 시스템(1260)으로 통과된 입력 신호(x)를 결정한다. 예를 들어, 훈련 데이터 유닛(1901)은 훈련 데이터의 세트(T)가 저장되어 있는 컴퓨터-구현된 데이터베이스(Q)에 액세스할 수도 있다. 세트(T)는 입력 신호(x)와 대응하는 원하는 라벨링된 출력 신호(ytrue)의 쌍을 포함한다. 훈련 데이터 유닛(1901)은 예를 들어 랜덤으로 세트(T)로부터 샘플을 선택한다. 선택된 샘플의 입력 신호(x)는 자동화 학습 시스템(1260)으로 통과된다. 원하는 출력 신호(ytrue)는 평가 유닛(1902)으로 통과된다.
자동화 학습 시스템(1260)은 입력 신호(x)로부터 출력 신호(y)를 계산하도록 구성된다. 이들 출력 신호(x)는 또한 평가 유닛(1902)으로 통과된다.
수정 유닛(1903)이 평가 유닛(1902)으로부터의 입력에 의존하여 업데이트된 매개변수(θ')를 결정한다. 업데이트된 매개변수(θ')가 자동화 학습 시스템의 현재 매개변수(θ)를 대체하거나 업데이트된 매개변수(θ')에 따라 매개변수를 조정하기 위해 매개변수 저장 장치(P)에 전송된다.
예를 들어, 평가 유닛(1902)은 출력 신호(y) 및 원하는 출력(ytrue)에 의존하여 손실 함수(L)의 값을 결정하는 것이 고려될 수도 있다. 수정 유닛(1903)은 이어서, 손실 함수(L)를 최적화하기 위해 예를 들어 확률론적 경사 하강법을 사용하여 업데이트된 매개변수(θ')를 계산할 수도 있다.
더욱이, 훈련 시스템(1900)은 프로세서(1904)(또는 복수의 프로세서)와, 수행되면 액추에이터 제어 시스템(1900)이 본 발명의 하나의 양태에 따른 방법을 수행하게 하는 명령어가 저장되어 있는 적어도 하나의 기계-판독가능 저장 매체(1905)를 포함할 수도 있다.
바람직하게는, 프로세서(1904)는 적어도 중앙 처리 유닛(CPU), 그래픽 프로세싱 유닛(GPU) 및/또는 텐서 프로세싱 유닛(TPU)을 포함한다. 대안적으로, 프로세서(1904)는 인터넷과 같은 통신 시스템을 거쳐 서로 접속된 분산형 컴퓨터 시스템으로 분할될 수 있다. 컴퓨터 시스템은 예를 들어, 데이터 서버와 같은 백엔드 구성요소, 및 예를 들어 애플리케이션/클라이언트 서버와 같은 미들웨어 구성요소 및 예를 들어 그래픽 인터페이스 및/또는 카메라 또는 센서 네트워크와 같은 센서를 갖는 컴퓨터와 같은 프론트엔드 구성요소를 포함할 수도 있다.

Claims (28)

  1. 자동화 학습 시스템(100), 특히 인공 신경망을 테스트하기 위한 방법이며, 상기 방법은 자동화 학습 시스템(100)의 테스트 입력값(x)에 대한 작은 수정(Δ)이 자동화 학습 시스템(100)의 출력값(ypred)이 미리규정된 타겟 출력값(ytarg)에 대응하게 할 수도 있는지 여부를 판정하고,
    테스트 입력값(x)의 수정은 수정의 사이즈가 미리결정된 수정 크기(ε) 이하이면 작은 수정(Δ)이고,
    자동화 학습 시스템(100)은 테스트 입력값(x)을 수신하기 위한 입력 계층 및 자동화 학습 시스템(100)의 출력값(ypred)을 출력하기 위한 출력 계층을 포함하고, 방법은 이하의 단계:
    - 미리규정된 타겟 출력값(ytarg) 및 기준 출력값에 의존하는 제2 출력값(c)을 결정하는 단계로서, 기준 출력값은 a) 테스트 입력값(x)에 할당된 출력값(ytrue) 또는 b) 자동화 학습 시스템(100)의 출력값(ypred) 중 하나인, 단계;
    - 자동화 학습 시스템(100)에 기초하여 제2 자동화 학습 시스템(500)을 제공하는 단계로서,
    제2 자동화 학습 시스템(500)의 각각의 계층은 자동화 학습 시스템(100)의 하나의 대응 계층(110)에 대응하고,
    제2 자동화 학습 시스템(500)의 출력 계층은 자동화 학습 시스템(100)의 입력 계층에 대응하고, 제2 자동화 학습 시스템(500)의 입력 계층은 자동화 학습 시스템(100)의 출력 계층에 대응하는, 단계;
    - 제2 자동화 학습 시스템(500)의 입력 계층 내로 제2 출력값(c)을 공급하고 제2 자동화 학습 시스템(500)을 통해 제2 출력값(c)을 전파하는 단계;
    - 제2 자동화 학습 시스템(500)을 통한 제2 출력값(c)의 전파로부터 발생하는 출력값에 의존하여, 테스트 입력값(x)에 대한 작은 수정(Δ)이 자동화 학습 시스템(100)의 출력값이 미리규정된 타겟 출력값(ytarg)에 대응하게 할 수도 있는지 여부를 판정하는 단계를 포함하는, 방법.
  2. 제1항에 있어서, 수정(Δ)이 자동화 학습 시스템(100)의 출력값이 타겟 출력값에 대응하게 하지 않으면 강건성 인증서가 발행되는, 방법.
  3. 제2항에 있어서, 기술 시스템의 물리적 액추에이터(1210)가 자동화 학습 시스템(100)의 출력값에 의존하여 그리고 제2항에 따른 발행된 강건성 인증서에 의존하여 제어되는, 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    - 제2 자동화 학습 시스템(500)의 출력값에 의존하여 그리고 수정 크기(ε)에 의존하여 그리고 테스트 입력값(x)에 의존하여 목적 함수(J)를 결정하는 단계;
    - 결정된 목적 함수(J)를 미리결정된 임계치에 비교하는 단계; 및
    - 테스트 입력값(x)에 대한 작은 수정(Δ)이 상기 테스트 입력값(x)의 출력값(ypred)이 미리규정된 타겟 출력값(ytarg)에 대응하게 하지 않는지 여부를, 상기 비교의 결과에 의존하여 판정하는 단계를 더 포함하는, 방법.
  5. 대응 출력값(ypred)의 변화가 미리규정된 타겟 출력값(ytarg)에 대응하게 하지 않는 테스트 입력값(x)에 대한 수정(Δ)의 최대 안전 수정 크기를 결정하기 위한 방법이며, 방법은 이하의 단계:
    - 미리규정된 타겟 출력값(ytarg) 및 기준 출력값에 의존하는 제2 출력값(c)을 결정하는 단계로서, 기준 출력값은 a) 테스트 입력값(x)에 할당된 출력값(ytrue) 또는 b) 자동화 학습 시스템(100)의 출력값(ypred) 중 하나인, 단계;
    - 자동화 학습 시스템(100)에 기초하여 제2 자동화 학습 시스템(500)을 제공하는 단계로서,
    제2 자동화 학습 시스템(500)의 각각의 계층은 자동화 학습 시스템(100)의 하나의 대응 계층(110)에 대응하고,
    제2 자동화 학습 시스템(500)의 출력 계층은 자동화 학습 시스템(100)의 입력 계층에 대응하고, 제2 자동화 학습 시스템(500)의 입력 계층은 자동화 학습 시스템(100)의 출력 계층에 대응하는, 단계;
    - 제2 자동화 학습 시스템(500)의 입력 계층 내로 제2 출력값(c)을 공급하고 제2 자동화 학습 시스템(500)을 통해 제2 출력값(c)을 전파하는 단계;
    - 테스트 입력값(x)에 의존하여 그리고 제2 자동화 학습 시스템(500)을 통한 제2 출력값(c)의 전파로부터 발생하는 출력값에 의존하여, 그리고 수정 크기(ε)에 의존하여 목적 함수(J)를 결정하는 단계,
    - 목적 함수(J)가 미리결정된 임계치보다 작아지지 않도록 목적 함수(J)에 의존하여 최대 안전 수정 크기를 결정하는 단계를 더 포함하는, 방법.
  6. 제4항 또는 제5항에 있어서, 목적 함수(J)를 위한 미리결정된 임계치는 0 이상인, 방법.
  7. 제4항 내지 제7항 중 어느 한 항에 있어서, 복수의 제2 출력값(c) 중 하나는 복수의 미리규정된 타겟 출력값의 각각의 하나에 대해 결정되고,
    복수의 미리규정된 타겟 출력값의 각각의 하나는 기준 출력값과는 다른 상이한 출력값에 대응하고,
    상기 복수의 제2 출력값(c)은 복수의 대응 출력값을 출력하는 제2 자동화 학습 시스템(500)을 통해 전파되고,
    목적 함수(J)는 상기 복수의 대응 출력값에 의존하여 결정되는, 방법.
  8. 자동화 학습 시스템(100)의 제공된 입력값(x)이 이상인지 여부를 검출하기 위한 방법이며,
    제5항 내지 제7항 중 어느 한 항에 따른 방법에 의해 최대 안전 수정 크기(ε)를 결정하는 단계;
    제1항에 따른 방법에 의해 상기 자동화 학습 시스템(100)을 테스트함으로써 상기 자동화 학습 시스템(100)의 상기 제공된 입력값이 이상인 것으로 판정하는 단계를 포함하고,
    미리결정된 수정 크기(ε)는 상기 최대 안전 수정 크기(ε)보다 크지 않도록 선택되고, 테스트 입력값(x)은 상기 입력값(x)과 동일하도록 선택되고, 입력값이 작은 수정(Δ)을 받게함으로써 자동화 학습 시스템(100)의 출력값이 변화하게 될 수도 있다는 것을 제1항에 따른 방법이 산출하면 상기 입력값이 이상이라고 판정되는, 방법.
  9. 자동화 학습 시스템(100)을 훈련하기 위한 방법이며,
    - 미리결정된 수정 크기(ε)와, 훈련 입력값(x) 및 대응 훈련 출력값(ytrue)의 모두를 포함하는 훈련 데이터를 제공하는 단계;
    - 자동화 학습 시스템(100)에 기초하여 제2 자동화 학습 시스템(500)을 제공하는 단계로서,
    제2 자동화 학습 시스템(500)의 각각의 계층은 자동화 학습 시스템(100)의 하나의 대응 계층(110)에 대응하고,
    제2 자동화 학습 시스템(500)의 출력 계층은 자동화 학습 시스템(100)의 출력 계층에 대응하고, 제2 자동화 학습 시스템(500)의 입력 계층은 자동화 학습 시스템(100)의 출력 계층에 대응하는, 단계;
    - 각각의 훈련 입력값(xi)에 대해, 미리규정된 타겟 출력값(yi targ)에 의존하여 그리고 각각의 훈련 입력값(xi)에 대응하는 출력값(yi pred)에 의존하여 대응 제2 출력값(ci)을 결정하는 단계;
    - 제2 자동화 학습 시스템(500)의 입력 계층 내로 대응 제2 출력값(ci)의 각각을 공급하고 제2 자동화 학습 시스템(500)을 통해 대응 제2 출력값(ci)을 전파하여 제2 자동화 학습 시스템(500)의 대응 출력값을 산출하는 단계;
    - 미리결정된 수정 크기(ε)에 의존하여 그리고 훈련 입력값(xi) 중 적어도 하나에 의존하여 그리고 제2 자동화 학습 시스템(500)의 대응 출력값 중 적어도 하나의 의존하여 적어도 목적 함수(Ji)를 결정하는 단계;
    - 결정된 목적 함수(Ji)에 의존하고 상기 훈련 입력값(xi) 중 적어도 하나에 대응하는 적어도 훈련 출력값(yi true)에 또한 의존하는 손실 함수(L)를 결정하는 단계;
    - 상기 결정된 손실 함수(L)를 최적화하기 위한 자동화 학습 시스템(100)의 매개변수를 조정하는 단계를 포함하는, 방법.
  10. 제9항에 있어서, 각각의 훈련 입력값(xi)에 대해, 각각의 훈련 입력값(xi)에 의존하여 자동화 학습 시스템(100)에 의해 결정되는 출력값(yi pred)과는 다른 복수의 상이한 출력값에 의존하여 복수의 대응하는 상이한 제2 출력값(ci)이 결정되고,
    각각의 훈련 입력값의 상기 복수의 대응하는 상이한 제2 출력값(ci)은 제2 자동화 학습 시스템(500)의 입력 계층 내로 공급되고 제2 자동화 학습 시스템(500)을 통해 전파되고,
    목적 함수(J)는 훈련 입력값(xi) 중 적어도 하나에 의존하여 그리고 제2 자동화 학습 시스템(500)을 통해 상기 훈련 입력값(xi) 중 적어도 하나에 대응하는 복수의 상이한 제2 출력값(ci) 중 적어도 하나를 전파하는 것으로부터 발생하는 제2 자동화 학습 시스템(500)의 출력값에 의존하여 결정되는, 방법.
  11. 제9항 또는 제10항에 있어서,
    제5항에 따른 또는 제5항에 종속하는 제6항 또는 제7항에 따른 방법에 의해 훈련된 자동화 학습 시스템(100)의 최대 안전 수정 크기(ε)를 결정하는 단계; 및
    상기 최대 안전 수정 크기가 미리결정된 제2 임계치보다 작으면 훈련된 자동화 학습 시스템(100)의 훈련을 계속하는 단계를 더 포함하는, 방법.
  12. 제9항 내지 제11항 중 어느 한 항에 있어서, 계층들은 그룹화되고,
    그룹화된 계층은 서로 개별적으로 훈련되는, 방법.
  13. 기술 시스템, 특히 로봇, 차량, 기계 또는 전동 공구를 제어하기 위한 시스템이며, 자동화 학습 시스템(100)은 제9항 또는 제10항에 따른 방법에 의해 훈련 방법으로 훈련되고, 훈련된 자동화 학습 시스템(100)은 기술 시스템의 상태를 특징화하는 입력 데이터 및/또는 기술 시스템을 제어하기 위한 매개변수를 수신하고, 기술 시스템의 액추에이터(1210)는 훈련된 자동화 학습 시스템(100)의 출력값에 의존하여 제어되는, 방법.
  14. 제4항 내지 제13항 중 어느 한 항에 있어서, 목적 함수(J)는, 자동화 학습 시스템(100)의 입력값을 제2 자동화 학습 시스템(500)의 출력(v1 T)에 곱한 곱을 특징화하는 제1 항(v1 T *x), 및
    수정 크기(ε)에 의해 가중된 제2 자동화 학습 시스템(500)의 출력값의 미리결정된 노름을 특징화하는 제2 항
    Figure pat00053
    에 의존하여 결정되는, 방법.
  15. 제14항에 있어서, 목적 함수의 제1 항은 제2 자동화 학습 시스템(500)의 출력의 미리결정된 제2 노름값
    Figure pat00054
    에 의존하여 결정되고,
    제2 노름값은 랜덤 코시 투영에 의해 근사되고,
    상기 근사를 위해, 랜덤 코시 행렬이 제2 자동화 학습 시스템(500)을 통해 전파되고,
    제2 노름은 전파된 랜덤 코시 행렬의 출력값에 걸친 중앙값을 결정함으로써 결정되고,
    목적 함수(J)의 제2 항은 또한 랜덤 코시 투영에 의해 근사되는, 방법.
  16. 제1항 내지 제15항 중 어느 한 항에 있어서, 자동화 학습 시스템(100)의 각각의 계층은 미리결정된 각각의 변환(130)에 의해 각각의 계층의 입력값에 의존하여 출력값을 계산하고,
    제2 자동화 학습 시스템(500)의 각각의 계층은 각각의 미리결정된 제2 변환에 의존하여 출력값을 계산하고,
    자동화 학습 시스템(100)의 계층의 각각의 변환은 각각의 함수(fi)에 의해 특징화되고,
    각각의 제2 변환은 자동화 학습 시스템(100)의 각각의 대응하는 계층의 함수(fi)의 공액, 특히 펜첼 공액 함수(fi *)에 관련된 제2 함수(fi *)에 의해 특징화되는, 방법.
  17. 제16항에 있어서, 지시기 함수(Xi)가 자동화 학습 시스템(100)의 각각의 계층(i)에 대해 규정되고,
    각각의 계층(i)에 대해, 상기 계층(i)의 입력부가 자동화 학습 시스템(100)의 정확하게 하나의 다른 계층에 연결되면 대응 지시기 함수(Xi)는 0으로 설정되고,
    제2 함수(fi *)는 상기 지시기 함수(Xi)에 의존하여 결정되고,
    각각의 계층(i)에 대해, 상기 계층(i)의 입력부가 자동화 학습 시스템(100)의 적어도 2개의 다른 계층에 연결되면 대응 지시기 함수(Xi)는 0으로 설정되는, 방법.
  18. 제17항에 있어서, 각각의 지시기 함수(Xi)의 각각의 공액 함수(Xi *)는 지시기 함수(Xi)의 공액 함수(Xi *)의 상계에 의해 근사되고,
    상계는 적어도 2개의 보조 함수(g, h)에 의해 특징화되고,
    제1 보조 함수(h)는 지시기 함수(Xi)의 공액 함수(Xi *)의 상계의 값을 특징화하고,
    제2 보조 함수(g)는 제1 보조 함수(h)를 결정하기 위한 미리규정된 제약인, 방법.
  19. 제18항에 있어서, 목적 함수(J)를 결정하는 단계는 제2 자동화 학습 시스템(500)의 모든 계층(i)의 공액 함수(Xi *)의 상계의 제1 보조 함수(h)에 걸친 합에 또한 의존하는, 방법.
  20. 제1항 내지 제19항 중 어느 한 항에 있어서, 계층들 중 적어도 하나는 적어도 2개의 다른 계층에 연결되고 상기 연결된 계층의 출력값을 그 입력값으로서 수신하고,
    변환들 중 적어도 하나는 비선형 함수, 특히 정류된 선형 함수이고,
    변환들 중 적어도 하나는 부분적으로 매개변수(W, b)에 의해 특징화된 선형 변환이고,
    그 변환이 비선형 함수인, 적어도 계층의 입력값은 상계 및 하계(u, l)에 의해 특징화된 입력값의 제한된 허용가능한 세트를 갖고,
    그 변환이 ReLu 함수인, 상기 계층의 제2 변환은 이하와 같이 정의되고:
    a) 상계(
    Figure pat00055
    )가 0보다 작으면, 입력값의 제2 변환은 값 0으로의 각각의 입력값의 맵핑이고,
    b) 하계(
    Figure pat00056
    )가 0보다 크면, 입력값의 제2 변환은 입력값과 동일한 값 상의 각각의 입력값의 선형 맵핑이고,
    c) 하계 및 상계(
    Figure pat00057
    )가 0에 걸쳐 스패닝하면, 제2 변환은 입력값을 매개변수(α)만큼 가중하는 제2 선형 맵핑인, 방법.
  21. 제20항에 있어서, 제2 변환의 매개변수(α)는 상계(u) 및 하계(l)에 의존하여 선택되고,
    선형 변환은 행렬(W)과 입력값의 곱셈으로서 제공되고,
    선형 변환의 제2 변환은 상기 행렬(W)의 전치 행렬(WT)과 입력값의 곱셈에 의해 특징화되고,
    자동화 학습 시스템(100)은 배치 정규화 계층을 더 포함하고,
    배치 정규화 계층의 변환은 미리결정된 평균 및 미리결정된 분산에 의존하여 입력값의 평균 및 분산의 시프트에 의해 특징화되고,
    배치 정규화 계층의 제2 변환은 미리결정된 분산에 의한 입력값의 나눗셈에 의해 특징화되는, 방법.
  22. 제20항 또는 제21항에 있어서, 입력값의 제한된 허용가능한 세트는 선형 부등식(Ax≤b)을 충족하는 입력값에 또한 제한되고, 선형 부등식은 적어도 제1 매개변수(A) 및 제2 매개변수(b)에 의해 특징화되는, 방법.
  23. 제22항에 있어서, 제1 매개변수(A)는 그 변환이 비선형 함수에 의해 특징화되는, 계층의 입력값의 요소들 사이의 상관성을 특징화하는, 방법.
  24. 제22항 또는 제23항에 있어서, 제1 매개변수는 이전의 계층의 상계 및 하계를 포함하는 행렬(A)이고, 상기 행렬(A)은 이전의 계층의 변환을 특징화하는 다른 행렬로 곱해지고,
    상기 다른 행렬은 상기 이전의 계층의 가중 행렬의 의사-역인, 방법.
  25. 제22항 내지 제24항 중 어느 한 항에 있어서, 제2 매개변수(b)는 미리결정된 제약을 받게되는 각각의 계층의 입력값에 의해 제공되는 벡터 또는 행렬을 곱한 행렬(A)의 전치 행렬(AT)의 최적화, 특히 최소화에 의존하여 결정되는, 방법.
  26. 제9항의 방법 또는 제9항에 종속하는 제10항 내지 제12항 중 어느 한 항 또는 제14항 내지 제25항 중 어느 한 항의 방법 중 하나에 따른 훈련 방법에 의해 얻어진 자동화 학습 시스템(100).
  27. 컴퓨터에 의해 실행될 때, 컴퓨터가 제1항 내지 제25항 중 어느 한 항에 따른 방법을 수행하게 하는 명령어를 포함하는 컴퓨터 프로그램.
  28. 제27항에 따른 컴퓨터 프로그램을 포함하는 컴퓨터-판독가능 데이터 캐리어.
KR1020180130138A 2018-05-30 2018-10-29 강건한 자동화 학습 시스템을 생성하고 훈련된 자동화 학습 시스템을 시험하기 위한 방법, 장치 및 컴퓨터 프로그램 KR20190136893A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862677896P 2018-05-30 2018-05-30
US62/677,896 2018-05-30
US201862736858P 2018-09-26 2018-09-26
US62/736,858 2018-09-26

Publications (1)

Publication Number Publication Date
KR20190136893A true KR20190136893A (ko) 2019-12-10

Family

ID=66589347

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180130138A KR20190136893A (ko) 2018-05-30 2018-10-29 강건한 자동화 학습 시스템을 생성하고 훈련된 자동화 학습 시스템을 시험하기 위한 방법, 장치 및 컴퓨터 프로그램

Country Status (9)

Country Link
US (2) US11386328B2 (ko)
EP (1) EP3576021A1 (ko)
KR (1) KR20190136893A (ko)
CN (1) CN110554602B (ko)
AU (1) AU2018256516A1 (ko)
BR (1) BR102019001258A2 (ko)
CA (1) CA3022728A1 (ko)
DE (1) DE102018218586A1 (ko)
MX (1) MX2018013242A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220030635A (ko) * 2020-09-03 2022-03-11 부산대학교 산학협력단 적대적 사례에 강인한 심층 신경망 모델을 위한 입력 장치 및 방법

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11547052B1 (en) * 2018-10-10 2023-01-10 Hydro-Gear Limited Partnership Audible operator feedback for riding lawn mower applications
US11200438B2 (en) 2018-12-07 2021-12-14 Dus Operating Inc. Sequential training method for heterogeneous convolutional neural network
US11200318B2 (en) * 2018-12-28 2021-12-14 Mcafee, Llc Methods and apparatus to detect adversarial malware
US11625487B2 (en) * 2019-01-24 2023-04-11 International Business Machines Corporation Framework for certifying a lower bound on a robustness level of convolutional neural networks
US11068069B2 (en) * 2019-02-04 2021-07-20 Dus Operating Inc. Vehicle control with facial and gesture recognition using a convolutional neural network
US20210150306A1 (en) * 2019-11-14 2021-05-20 Qualcomm Incorporated Phase selective convolution with dynamic weight selection
CN111027628B (zh) * 2019-12-12 2022-03-11 支付宝(杭州)信息技术有限公司 一种模型确定方法和系统
US10846407B1 (en) 2020-02-11 2020-11-24 Calypso Ai Corp Machine learning model robustness characterization
US11568021B2 (en) 2020-02-21 2023-01-31 Alibaba Group Holding Limited Vector-vector multiplication techniques for processing systems
CN111368886B (zh) * 2020-02-25 2023-03-21 华南理工大学 一种基于样本筛选的无标注车辆图片分类方法
DE102020202870A1 (de) * 2020-03-06 2021-09-09 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zur Validierung und Auswahl auf maschinellem Lernen basierender Modelle zur Zustandsüberwachung einer Maschine
CN111401292B (zh) * 2020-03-25 2023-05-26 成都东方天呈智能科技有限公司 一种融合红外图像训练的人脸识别网络构建方法
CN111461307B (zh) * 2020-04-02 2022-04-29 武汉大学 一种基于生成对抗网络的通用扰动生成方法
EP3896613B1 (en) * 2020-04-14 2024-06-05 Robert Bosch GmbH Device and method for training a classifier and assessing the robustness of a classifier
US20210334646A1 (en) * 2020-04-28 2021-10-28 International Business Machines Corporation Robustness-aware quantization for neural networks against weight perturbations
DE102020114339A1 (de) * 2020-05-28 2021-12-02 Ebm-Papst Mulfingen Gmbh & Co. Kg Verfahren zum Betreiben eines Ventilatorsystems und Ventilatorsystem mit einem rückwärtsgekrümmten Radialventilator
US12020166B2 (en) * 2020-05-29 2024-06-25 Robert Bosch Gmbh Meta-learned, evolution strategy black box optimization classifiers
CN111709878B (zh) 2020-06-17 2023-06-23 北京百度网讯科技有限公司 人脸超分辨率实现方法、装置、电子设备及存储介质
DE102020208737A1 (de) 2020-07-13 2022-01-13 Volkswagen Aktiengesellschaft Verfahren und Vorrichtung zum Bewerten und Zertifizieren einer Robustheit eines KI-basierten Informationsverarbeitungssystems
US11687619B2 (en) * 2020-10-02 2023-06-27 Robert Bosch Gmbh Method and system for an adversarial training using meta-learned initialization
DE102020213058A1 (de) 2020-10-15 2022-04-21 Volkswagen Aktiengesellschaft Verfahren und Vorrichtung zum teilautomatisierten oder vollautomatisierten Steuern eines Fahrzeugs
DE102020213057A1 (de) 2020-10-15 2022-04-21 Volkswagen Aktiengesellschaft Verfahren und Vorrichtung zum Überprüfen eines beim teilautomatisierten oder vollautomatisierten Steuern eines Fahrzeugs verwendeten KI-basierten Informationsverarbeitungssystems
JP7561013B2 (ja) 2020-11-27 2024-10-03 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング データ処理装置、ニューラルネットワークの深層学習の方法及びプログラム
US11907334B2 (en) * 2020-12-08 2024-02-20 International Business Machines Corporation Neural network negative rule extraction
US20220207413A1 (en) * 2020-12-28 2022-06-30 International Business Machines Corporation Loss augmentation for predictive modeling
EP4083859A1 (en) * 2021-04-30 2022-11-02 Robert Bosch GmbH Improved training of classifiers and/or regressors on uncertain training data
CN114200841B (zh) * 2021-12-13 2023-05-23 电子科技大学 一种基于模糊反步的网联汽车系统安全控制方法
CN115114395B (zh) * 2022-04-15 2024-03-19 腾讯科技(深圳)有限公司 内容检索及模型训练方法、装置、电子设备和存储介质
CN114756214B (zh) * 2022-06-15 2022-08-12 中国海洋大学 基于OpenCV和插件的图像处理方法、装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4884216A (en) * 1987-11-09 1989-11-28 Michael Kuperstein Neural network system for adaptive sensory-motor coordination of multijoint robots for single postures
US8688616B2 (en) * 2010-06-14 2014-04-01 Blue Prism Technologies Pte. Ltd. High-dimensional data analysis
US8712940B2 (en) * 2011-05-31 2014-04-29 International Business Machines Corporation Structural plasticity in spiking neural networks with symmetric dual of an electronic neuron
CN104392143B (zh) * 2014-12-09 2017-05-17 北京四方继保自动化股份有限公司 一种自适应量子神经网络汽轮机故障趋势预测方法
CN105512725B (zh) * 2015-12-14 2018-08-28 杭州朗和科技有限公司 一种神经网络的训练方法和设备
US11144889B2 (en) * 2016-04-06 2021-10-12 American International Group, Inc. Automatic assessment of damage and repair costs in vehicles
US10810481B2 (en) * 2017-01-11 2020-10-20 Thomas Danaher Harvey Method and system to count movements of persons from vibrations in a floor
DE102018200724A1 (de) 2017-04-19 2018-10-25 Robert Bosch Gmbh Verfahren und Vorrichtung zum Verbessern der Robustheit gegen "Adversarial Examples"
WO2019227294A1 (zh) * 2018-05-28 2019-12-05 华为技术有限公司 图像处理方法、相关设备及计算机存储介质
DE102018208763A1 (de) 2018-06-04 2019-12-05 Robert Bosch Gmbh Verfahren, Vorrichtung und Computerprogramm zum Betreiben eines maschinellen Lernsystems

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220030635A (ko) * 2020-09-03 2022-03-11 부산대학교 산학협력단 적대적 사례에 강인한 심층 신경망 모델을 위한 입력 장치 및 방법

Also Published As

Publication number Publication date
US11386328B2 (en) 2022-07-12
US20190370660A1 (en) 2019-12-05
CA3022728A1 (en) 2019-11-30
US20200026996A1 (en) 2020-01-23
BR102019001258A2 (pt) 2019-12-03
EP3576021A1 (en) 2019-12-04
DE102018218586A1 (de) 2020-01-09
CN110554602A (zh) 2019-12-10
US11676025B2 (en) 2023-06-13
MX2018013242A (es) 2019-12-02
AU2018256516A1 (en) 2019-12-19
CN110554602B (zh) 2024-10-01

Similar Documents

Publication Publication Date Title
KR20190136893A (ko) 강건한 자동화 학습 시스템을 생성하고 훈련된 자동화 학습 시스템을 시험하기 위한 방법, 장치 및 컴퓨터 프로그램
US11055632B2 (en) Method and device for improving the robustness against “adversarial examples”
CN112541520A (zh) 用于为神经网络生成反事实数据样本的设备和方法
US20180307188A1 (en) Method and device for improving the robustness with respect to &#34;adversarial examples&#34;
JP7060762B2 (ja) 拡充識別器を訓練するための装置および方法
KR20210068993A (ko) 분류기를 훈련하는 디바이스 및 방법
EP3754557A1 (en) Robustness indicator unit, certificate determination unit, training unit, control unit and computer-implemented method to determine a robustness indicator
TWI845580B (zh) 用於訓練神經網路的方法
CN113811894B (zh) 对车辆的驾驶功能的ki模块的监测
JP2023010697A (ja) 異常検出及びセグメンテーションのための対比予測符号化
EP4027273A1 (en) Device and method to improve reinforcement learning with synthetic environment
US20230259658A1 (en) Device and method for determining adversarial patches for a machine learning system
JP7264410B2 (ja) 「敵対的サンプル」に対するロバスト性を改善する装置及び方法
KR20210127638A (ko) 분류기를 훈련하고 분류기의 강건성을 평가하기 위한 디바이스 및 방법
US20230418246A1 (en) Device and method for determining adversarial perturbations of a machine learning system
US20220230416A1 (en) Training of machine learning systems for image processing
US20230351262A1 (en) Device and method for detecting anomalies in technical systems
EP3690760A1 (en) Device and method to improve the robustness against &#34;adversarial examples&#34;
KR20230138314A (ko) 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법

Legal Events

Date Code Title Description
N231 Notification of change of applicant