KR20210071130A - 컴퓨팅 장치, 컴퓨팅 장치의 동작 방법, 그리고 저장 매체 - Google Patents
컴퓨팅 장치, 컴퓨팅 장치의 동작 방법, 그리고 저장 매체 Download PDFInfo
- Publication number
- KR20210071130A KR20210071130A KR1020190160280A KR20190160280A KR20210071130A KR 20210071130 A KR20210071130 A KR 20210071130A KR 1020190160280 A KR1020190160280 A KR 1020190160280A KR 20190160280 A KR20190160280 A KR 20190160280A KR 20210071130 A KR20210071130 A KR 20210071130A
- Authority
- KR
- South Korea
- Prior art keywords
- semiconductor process
- machine learning
- result information
- inferred
- generator
- Prior art date
Links
- 238000011017 operating method Methods 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 239
- 239000004065 semiconductor Substances 0.000 claims abstract description 204
- 238000010801 machine learning Methods 0.000 claims abstract description 163
- 238000004422 calculation algorithm Methods 0.000 claims description 31
- 238000013528 artificial neural network Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 4
- 238000005094 computer simulation Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000005468 ion implantation Methods 0.000 description 3
- 238000000137 annealing Methods 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000005684 electric field Effects 0.000 description 2
- 230000000763 evoking effect Effects 0.000 description 2
- 239000012535 impurity Substances 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 239000002019 doping agent Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000000946 synaptic effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41885—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by modeling, simulation of the manufacturing system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
- G06F18/2178—Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24143—Distances to neighbourhood prototypes, e.g. restricted Coulomb energy networks [RCEN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Manufacturing & Machinery (AREA)
- Medical Informatics (AREA)
- Quality & Reliability (AREA)
- Automation & Control Theory (AREA)
- Probability & Statistics with Applications (AREA)
- Feedback Control In General (AREA)
Abstract
본 발명은 컴퓨팅 장치에 관한 것이다. 본 발명의 컴퓨팅 장치는 프로세서들을 포함한다. 프로세서들 중 적어도 하나의 프로세서는 반도체 공정 기계 학습 모듈을 실행하도록 구성된다. 반도체 공정 기계 학습 모듈은, 반도체 공정 파라미터들을 수신하고, 그리고 반도체 공정 파라미터들로부터 반도체 공정 결과 정보를 생성하고, 그리고 반도체 공정 결과 정보를 출력하도록 구성되는 기계 학습 생성기, 그리고 기계 학습 생성기로부터 반도체 공정 결과 정보를 수신하고, 그리고 반도체 공정 결과 정보가 참인지 판별하도록 구성되는 기계 학습 판별기를 포함한다.
Description
본 발명은 컴퓨팅 장치에 관한 것으로, 더 상세하게는 반도체 공정의 결과를 추론하도록 구성되는 기계 학습 모듈을 포함하는 컴퓨팅 장치, 컴퓨팅 장치의 동작 방법, 그리고 기계 학습 모듈의 명령들을 저장하는 저장 매체에 관한 것이다.
기계 학습과 연관된 기술들이 발전하면서, 다양한 응용들에 기계 학습을 적용하고자 하는 시도가 지속되고 있다. 기계 학습이 완료되면, 기계 학습 모듈은 반복적인 연산들 또는 복잡한 연산들을 용이하게 수행할 수 있다. 막대한 연산량을 수반하는 물리 모델 기반 전산 시뮬레이션은 기계 학습이 적용될 수 있는 유망한 분야들 중 하나일 수 있다.
종래의 물리 모델 기반 전산 시뮬레이션은, 예를 들어 반도체 공정 시에 사용되는 공정 파라미터들을 설정하고, 그리고 반도체 공정이 수행된 후의 반도체 공정 결과를 계산하는데 사용될 수 있다. 물리 모델 기반 전산 시뮬레이션은 공정을 실제로 실시해야 하는 비용을 줄일 수 있지만, 막대한 연산량으로 인해 여전히 긴 시간을 필요로 한다.
기계 학습 모듈이 물리 모델 기반 전산 시뮬레이션의 기능을 수행하도록 학습되면, 반도체 공정 파라미터들로부터 반도체 공정 결과를 계산하는 시간이 더 단축될 수 있다. 그러나 반도체 공정 결과의 신뢰성을 확보하기 위해, 기계 학습 모듈의 학습이 더 엄격한 조건에서 수행되어야 한다.
본 발명의 목적은 더 엄격한 조건에서 학습을 수행하고, 따라서 더 높은 정확도로 반도체 공정 파라미터들로부터 반도체 공정의 결과를 추론하는 기계 학습 모듈을 포함하는 컴퓨팅 장치, 컴퓨팅 장치의 동작 방법, 그리고 기계 학습 모듈의 명령들을 저장하는 저장 매체를 제공하는 데에 있다.
본 발명의 실시 예에 따른 컴퓨팅 장치는 프로세서들을 포함한다. 프로세서들 중 적어도 하나의 프로세서는 반도체 공정 기계 학습 모듈을 실행하도록 구성된다. 반도체 공정 기계 학습 모듈은, 반도체 공정 파라미터들을 수신하고, 그리고 반도체 공정 파라미터들로부터 반도체 공정 결과 정보를 생성하고, 그리고 반도체 공정 결과 정보를 출력하도록 구성되는 기계 학습 생성기, 그리고 기계 학습 생성기로부터 반도체 공정 결과 정보를 수신하고, 그리고 반도체 공정 결과 정보가 참인지 판별하도록 구성되는 기계 학습 판별기를 포함한다.
프로세서들을 포함하는 본 발명의 실시 예에 따른 컴퓨팅 장치의 동작 방법은, 프로세서들 중 적어도 하나의 프로세서를 이용하여, 반도체 공정 파라미터들로부터 반도체 공정 결과 정보를 생성하는 기계 학습 생성기의 지도 학습을 수행하는 단계, 그리고 적어도 하나의 프로세서를 이용하여, 반도체 공정 결과 정보가 참인지 판별하는 기계 학습 판별기 및 기계 학습 생성기로 구현되는 생성적 적대 신경망의 학습을 수행하는 단계를 포함한다.
본 발명의 실시 예에 따른 컴퓨터로 독출 가능한 비임시의 저장 매체는 프로세서에 의해 실행될 때 동작들을 수행하도록 구성되는 반도체 공정 기계 학습 모듈의 명령들을 저장하도록 구성된다. 동작들은, 반도체 공정 파라미터들을 수신하는 단계, 그리고 반도체 공정 파라미터들로부터 반도체 공정 결과 정보를 생성하는 단계를 포함한다. 반도체 공정 기계 학습 모듈은, 반도체 공정 파라미터들로부터 반도체 공정 결과 정보를 생성하도록 구성되고, 지도 학습에 기반하여 학습된 기계 학습 생성기, 그리고 반도체 공정 결과 정보가 참인지 판별하고, 그리고 기계 학습 생성기와 함께 생성적 적대 신경망을 구현하도록 구성되는 기계 학습 판별기에 기반하여 학습된다.
본 발명에 따르면, 기계 학습 모듈은 둘 이상의 기계 학습 시스템들의 조합에 기반하여 학습된다. 따라서, 더 높은 정확도로 반도체 공정 파라미터들로부터 반도체 공정의 결과를 추론하는 기계 학습 모듈을 포함하는 컴퓨팅 장치, 컴퓨팅 장치의 동작 방법, 그리고 기계 학습 모듈의 명령들을 저장하는 저장 매체가 제공된다.
도 1은 본 발명의 실시 예에 따른 컴퓨팅 장치를 보여주는 블록도이다.
도 2는 본 발명의 제1 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 3은 도 2의 반도체 공정 기계 학습 모듈의 동작 방법의 예를 보여주는 순서도이다.
도 4는 본 발명의 제2 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 5는 도 4의 반도체 공정 기계 학습 모듈의 동작 방법의 예를 보여주는 순서도이다.
도 6은 본 발명의 제3 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 7은 도 6의 반도체 공정 기계 학습 모듈의 동작 방법의 예를 보여주는 순서도이다.
도 8은 본 발명의 제4 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 9는 도 8의 반도체 공정 기계 학습 모듈의 동작 방법의 예를 보여주는 순서도이다.
도 10은 본 발명의 제5 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 11은 본 발명의 실시 예에 따른 반도체 공정 기계 학습 시스템의 예를 보여준다.
도 12는 물리 전산 시뮬레이션의 결과와 반도체 공정 기계 학습 모듈의 추론 결과를 보여준다.
도 2는 본 발명의 제1 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 3은 도 2의 반도체 공정 기계 학습 모듈의 동작 방법의 예를 보여주는 순서도이다.
도 4는 본 발명의 제2 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 5는 도 4의 반도체 공정 기계 학습 모듈의 동작 방법의 예를 보여주는 순서도이다.
도 6은 본 발명의 제3 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 7은 도 6의 반도체 공정 기계 학습 모듈의 동작 방법의 예를 보여주는 순서도이다.
도 8은 본 발명의 제4 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 9는 도 8의 반도체 공정 기계 학습 모듈의 동작 방법의 예를 보여주는 순서도이다.
도 10은 본 발명의 제5 실시 예에 따른 반도체 공정 기계 학습 모듈의 예를 보여준다.
도 11은 본 발명의 실시 예에 따른 반도체 공정 기계 학습 시스템의 예를 보여준다.
도 12는 물리 전산 시뮬레이션의 결과와 반도체 공정 기계 학습 모듈의 추론 결과를 보여준다.
이하에서, 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있을 정도로, 본 발명의 실시 예들이 명확하고 상세하게 기재될 것이다.
도 1은 본 발명의 실시 예에 따른 컴퓨팅 장치(100)를 보여주는 블록도이다. 도 1을 참조하면, 컴퓨팅 장치(100)는 프로세서들(110), 랜덤 액세스 메모리(120), 장치 드라이버(130), 스토리지 장치(140), 모뎀(150), 그리고 사용자 인터페이스들(160)을 포함할 수 있다.
프로세서들(110) 중 적어도 하나는 반도체 공정 기계 학습 모듈(200)을 실행할 수 있다. 반도체 공정 기계 학습 모듈(200)은 반도체 공정 시에 사용되는 장치들 및 자원들의 설정들을 나타내는 반도체 공정 파라미터들로부터 반도체 공정 결과 정보를 추론하고 학습하도록 구성될 수 있다.
예를 들어, 반도체 공정 기계 학습 모듈(200)은 프로세서들(110) 중 적어도 하나에 의해 실행되는 명령들(또는 코드들)의 형태로 구현될 수 있다. 이때, 적어도 하나의 프로세서는 반도체 공정 기계 학습 모듈(200)의 명령들(또는 코드들)을 랜덤 액세스 메모리(120)에 로드할 수 있다.
다른 예로서, 적어도 하나의 프로세서는 반도체 공정 기계 학습 모듈(200)을 구현하도록 제조될 수 있다. 다른 예로서, 적어도 하나의 프로세서는 다양한 기계 학습 모듈들을 구현하도록 제조될 수 있다. 적어도 하나의 프로세서는 반도체 공정 기계 학습 모듈(200)에 대응하는 정보를 수신함으로써, 반도체 공정 기계 학습 모듈(200)을 구현할 수 있다.
프로세서들(110)은, 예를 들어, 중앙 프로세싱 유닛(111)(CPU), 응용 프로세서(AP) 등과 같은 적어도 하나의 범용 프로세서를 포함할 수 있다. 프로세서들(110)은 또한 뉴럴 프로세싱 유닛(113), 뉴로모픽 프로세서(114), 그래픽 프로세싱 유닛(GPU) 등과 같은 적어도 하나의 특수 목적 프로세서를 포함할 수 있다. 프로세서들(110)은 두 개 이상의 동일한 종류의 프로세서들을 포함할 수 있다.
랜덤 액세스 메모리(120)는 프로세서들(110)의 동작 메모리로 사용되고, 컴퓨팅 장치(100)의 주 메모리 또는 시스템 메모리로 사용될 수 있다. 랜덤 액세스 메모리(120)는 동적 랜덤 액세스 메모리 또는 정적 랜덤 액세스 메모리와 같은 휘발성 메모리, 또는 상 변화 랜덤 액세스 메모리, 강유전체 랜덤 액세스 메모리, 자기 랜덤 액세스 메모리, 또는 저항성 랜덤 액세스 메모리와 같은 불휘발성 메모리를 포함할 수 있다.
장치 드라이버(130)는 프로세서들(110)의 요청에 따라 스토리지 장치(140), 모뎀(150), 사용자 인터페이스들(160) 등과 같은 주변 장치들을 제어할 수 있다. 스토리지 장치(140)는 하드 디스크 드라이브, 솔리드 스테이트 드라이브 등과 같은 고정식 스토리지 장치, 또는 외장형 하드 디스크 드라이브, 외장형 솔리드 스테이트 드라이브, 착탈식 메모리 카드 등과 같은 착탈식 스토리지 장치를 포함할 수 있다.
모뎀(150)은 외부의 장치와 원격 통신을 제공할 수 있다. 모뎀(150)은 외부의 장치와 무선 또는 유선 통신을 수행할 수 있다.
사용자 인터페이스들(160)은 사용자로부터 정보를 수신하고, 그리고 사용자에게 정보를 제공할 수 있다. 사용자 인터페이스들(160)은 디스플레이, 스피커 등과 같은 적어도 하나의 사용자 출력 인터페이스, 그리고 마우스(mice), 키보드, 터치 입력 장치 등과 같은 적어도 하나의 사용자 입력 인터페이스를 포함할 수 있다.
본 발명의 실시 예에 따른 컴퓨팅 장치(100)는 반도체 공정 기계 학습 모듈(200)의 학습을 수행할 수 있다. 특히, 컴퓨팅 장치(100)는 둘 이상의 기계 학습 시스템에 기반하여 반도체 공정 기계 학습 모듈(200)의 학습을 수행함으로써, 반도체 공정 기계 학습 모듈(200)의 신뢰성을 더 향상시킬 수 있다.
도 2는 본 발명의 제1 실시 예에 따른 반도체 공정 기계 학습 모듈(300)의 예를 보여준다. 예시적으로, 학습 모드의 반도체 공정 기계 학습 모듈(300)이 도 2에 도시된다. 도 1 및 도 2를 참조하면, 반도체 공정 기계 학습 모듈(300)은 생성기(310) 및 판별기(320)(discriminator)를 포함할 수 있다.
생성기(310)는 참 입력(TI)을 수신할 수 있다. 예를 들어, 참 입력(TI)은 랜덤 액세스 메모리, 스토리지 장치, 모뎀, 또는 사용자 인터페이스들(160)로부터 프로세서들(110) 중 적어도 하나에 의해 구현된 반도체 공정 기계 학습 모듈(300)로 전달될 수 있다.
참 입력(TI)은 반도체 공정 시에 사용되는 장치들 및 자원들의 설정들을 포함하는 반도체 공정 파라미터들을 포함할 수 있다. 예를 들어, 반도체 공정 파라미터들은 실제 반도체 공정에 사용되는 파라미터들 또는 전산 시뮬레이션의 입력으로 사용되는 파라미터들을 포함할 수 있다.
생성기(310)는 학습된 알고리즘에 기반하여, 추론된 출력(IO)을 생성할 수 있다. 추론된 출력은 참 입력(TI)의 공정 파라미터들을 이용하여 반도체 공정을 진행하였을 때 획득될 것으로 추론되는 반도체 공정 결과 정보를 포함할 수 있다.
판별기(320)는 추론된 출력(IO)을 수신할 수 있다. 판별기(320)는 추론된 출력(IO)이 참인지 또는 거짓인지 판별할 수 있다. 예를 들어, 판별기(320)는 추론된 출력(IO)이 추론의 결과인 것으로 판단될 때, 추론된 출력(IO)을 거짓으로 판별할 수 있다. 판별기(320)는 추론된 출력(IO)이 실제 공정의 결과인 것으로 판단될 때, 추론된 출력(IO)을 참으로 판별할 수 있다.
예시적으로, 판별기(320)는 참 출력(TO)을 더 수신할 수 있다. 참 출력(TO)은 참 입력(TI)을 이용하여 반도체 공정을 진행할 때 획득되는 반도체 공정 결과 정보를 포함할 수 있다. 참 출력(TO)은 실제 공정의 결과 정보 또는 전산 시뮬레이션을 통해 획득되는 공정의 결과 정보를 포함할 수 있다.
예를 들어, 참 출력(TO)은 랜덤 액세스 메모리, 스토리지 장치, 모뎀, 또는 사용자 인터페이스들(160)로부터 프로세서들(110) 중 적어도 하나에 의해 구현된 반도체 공정 기계 학습 모듈(300)로 전달될 수 있다.
판별기(320)는 추론된 출력(IO) 및 참 출력(TO) 중에서 어느 것이 참이고 어느 것이 거짓인지 판단할 수 있다. 예를 들어, 판별기(320)는 추론된 출력(IO) 및 참 출력(TO)에 대해 각각 거짓일 확률들 또는 참일 확률들을 판단할 수 있다.
판별기(320)의 판단 결과는 제1 손실(L1)일 수 있다. 제1 손실(L1)에 기반하여, 생성기(310)의 알고리즘 및 판별기(320)의 알고리즘이 갱신될 수 있다. 예시적으로, 알고리즘은 입력으로부터 출력을 생성하는 일련의 조직화된 기능들을 수행하는 개체일 수 있다.
예를 들어, 생성기(310) 및 판별기(320)는 신경망들일 수 있다. 제1 손실(L1)에 기반하여, 생성기(310) 및 판별기(320) 중 적어도 하나 또는 둘 모두의 가중치 값들(또는 시냅스 값들)이 갱신될 수 있다. 예시적으로, 생성기(310) 및 판별기(320)는 생성적 적대망(GAN)(Generative Adversarial Network)을 구현하며, 생성적 적대망의 시스템에 기반하여 학습될 수 있다
반도체 공정 기계 학습 모듈(300)은 제1 손실 계산기(330)를 더 포함할 수 있다. 제1 손실 계산기(330)는 추론된 출력(IO) 및 참 출력(TO) 사이의 차이를 나타내는 제2 손실(L2)을 계산할 수 있다. 생성기(310)는 제2 손실에 기반하여 알고리즘을 갱신할 수 있다.
상술된 바와 같이, 반도체 공정 기계 학습 모듈(300)은 생성적 적대망 시스템에 기반한 제1 손실(L1), 그리고 지도 학습 시스템에 기반한 제2 손실(L2)에 기반하여 학습된다. 둘 이상의 기계 학습 시스템들에 의해 학습되므로, 반도체 공정 기계 학습 모듈(300)의 신뢰성이 더 향상된다.
예시적으로, 생성기(310) 및 판별기(320)는 동일한 프로세서 또는 서로 다른 프로세서들에 의해 구현될 수 있다.
도 3은 도 2의 반도체 공정 기계 학습 모듈(300)의 동작 방법의 예를 보여주는 순서도이다. 도 2 및 도 3을 참조하면, S110 단계에서, 생성기(310)는 참 입력(TI)을 수신할 수 있다. S120 단계에서, 생성기(310)는 추론된 출력(IO)을 생성할 수 있다.
S130 단계에서, 판별기(320)는 추론된 출력(IO)이 참인지 판별함으로써, 제1 손실(L1)을 계산할 수 있다. S140 단계에서, 반도체 공정 기계 학습 모듈(300)은 제1 손실(L1)에 기반하여, 생성기(310)의 알고리즘 및 판별기(320)의 알고리즘 중 적어도 하나를 갱신할 수 있다.
S150 단계에서, 제1 손실 계산기(330)는 추론된 출력(IO) 및 참 출력(TO)을 비교함으로써 제2 손실(L2)을 계산할 수 있다. S160 단계에서, 반도체 공정 기계 학습 모듈(300)은 제2 손실(L2)에 기반하여 생성기(310)의 알고리즘을 갱신할 수 있다.
예시적으로, S130 단계 및 S140 단계의 학습과 S150 단계 및 S160 단계의 학습은 병렬적으로 수행될 수 있다. 다른 예로서, S130 단계 및 S140 단계의 학습과 S150 단계 및 S160 단계의 학습은 선택적으로 수행될 수 있다. 반도체 공정 기계 학습 모듈(300)은 S130 단계 및 S140 단계의 학습과 S150 단계 및 S160 단계의 학습 중 하나를 선택하여 수행하도록 설정될 수 있다.
다른 예로서, 반도체 공정 기계 학습 모듈(300)은 S130 단계 및 S140 단계의 학습과 S150 단계 및 S160 단계의 학습을 번갈아 수행하도록 설정될 수 있다. 반도체 공정 기계 학습 모듈(300)은 S130 단계 및 S140 단계의 학습과 S150 단계 및 S160 단계의 학습 중 하나를 주로 수행하되, 다른 하나의 학습을 주기적으로 수행하도록 설정될 수 있다.
다른 예로서, 반도체 공정 기계 학습 모듈(300)은 S130 단계 및 S140 단계의 학습과 S150 단계 및 S160 단계의 학습 중 하나를 선택하고, 그리고 선택된 학습을 반복할 수 있다. 선택된 학습의 손실이 문턱보다 작을 때, 반도체 공정 기계 학습 모듈(300)은 다른 하나의 학습을 선택하고, 그리고 선택된 학습을 반복할 수 있다.
도 4는 본 발명의 제2 실시 예에 따른 반도체 공정 기계 학습 모듈(400)의 예를 보여준다. 예시적으로, 추론 모드의 반도체 공정 기계 학습 모듈(400)이 도 4에 도시된다. 도 1 및 도 4를 참조하면, 반도체 공정 기계 학습 모듈(400)은 생성기(410)를 포함할 수 있다.
도 2 및 도 3을 참조하여 설명된 바와 같이, 생성기(410)는 생성적 적대망 시스템 및 지도 학습 시스템에 기반하여 학습이 완료된 상태일 수 있다. 생성기(410)는 참 입력(TI)을 수신하고, 참 입력으로부터 추론된 출력(IO)을 생성할 수 있다.
예를 들어, 참 입력(TI)은 랜덤 액세스 메모리, 스토리지 장치, 모뎀, 또는 사용자 인터페이스들(160)로부터 프로세서들(110) 중 적어도 하나에 의해 구현된 반도체 공정 기계 학습 모듈(400)로 전달될 수 있다. 반도체 공정 기계 학습 모듈(400)은 사용자 인터페이스들(160) 중 적어도 하나를 통해 추론된 출력(IO)을 사용자에게 제공할 수 있다.
옵션으로서, 반도체 공정 기계 학습 모듈(400)은 판별기(420)를 더 포함할 수 있다. 도 2 및 도 3을 참조하여 설명된 바와 같이, 판별기(420)는 생성적 적대망 시스템에 기반하여 학습이 완료된 상태일 수 있다. 판별기(420)는 추론된 출력(IO)이 참인지 거짓인지를 가리키는 제1 손실(L1)을 생성할 수 있다.
예를 들어, 판별기(420)는 추론된 출력(IO)이 참일 확률 또는 거짓일 확률을 가리키는 점수를 제1 손실(L1)로서 생성할 수 있다. 반도체 공정 기계 학습 모듈(400)은 제1 손실(L1)을 사용자 인터페이스들(160) 중 적어도 하나를 통해 사용자에게 제공할 수 있다.
도 5는 도 4의 반도체 공정 기계 학습 모듈(400)의 동작 방법의 예를 보여주는 순서도이다. 도 4 및 도 5를 참조하면, S210 단계에서, 생성기(410)는 참 입력(TI)을 수신할 수 있다. S220 단계에서, 생성기(410)는 기계 학습에 기반하여 참 입력(TI)으로부터 추론된 출력(IO)을 생성할 수 있다.
옵션으로서, S230 단계에서, 판별기(420)는 추론된 출력(IO)이 참인지를 판별함으로써 제1 손실(L1)을 계산할 수 있다. S240 단계에서, 반도체 공정 기계 학습 모듈(400)은 추론된 출력(IO)을 사용자에게 출력할 수 있다. 옵션으로서, 반도체 공정 기계 학습 모듈(400)는 제1 손실(L1)을 사용자에게 더 출력할 수 있다.
본 발명의 실시 예에 따르면, 반도체 공정 기계 학습 모듈(400)은 복잡한 계산들을 수행하지 않고, 기계 학습에 기반하여 참 입력(TI)으로부터 추론된 출력(IO)을 생성할 수 있다. 따라서, 반도체 공정의 결과를 획득하기 위한 시간 및 자원이 절감된다.
또한, 반도체 공정 기계 학습 모듈(400)은 추론된 출력(IO)이 참인지를 가리키는 제1 손실(L1)을 사용자에게 더 제공할 수 있다. 제1 손실(L1)은 추론된 출력(IO)의 신뢰성을 가리키는 지표로 사용될 수 있다.
도 6은 본 발명의 제3 실시 예에 따른 반도체 공정 기계 학습 모듈(500)의 예를 보여준다. 예시적으로, 학습 모드의 반도체 공정 기계 학습 모듈(500)이 도 6에 도시된다. 도 1 및 도 6을 참조하면, 반도체 공정 기계 학습 모듈(500)은 생성기(510), 판별기(520), 제1 손실 계산기(530), 인코더(540), 그리고 제2 손실 계산기(550)를 포함할 수 있다.
생성기(510)는 도 2를 참조하여 설명된 생성기(310)와 같이 참 입력(TI)으로부터 추론된 출력(IO)을 생성할 수 있다. 생성기(510)는 제1 손실(L1)을 생성하는 생성적 적대망 시스템에 기반하여 학습될 수 있고, 또한 제2 손실(L2)을 생성하는 지도 학습 시스템에 기반하여 학습될 수 있다.
판별기(520)는 도 2를 참조하여 설명된 판별기(320)와 같이 추론된 출력(IO) 및 참 출력(TO)으로부터 제1 손실(L1)을 생성할 수 있다. 판별기(520)는 제1 손실(L1)을 생성하는 생성적 적대망 시스템에 기반하여 학습될 수 있다.
도 2의 반도체 공정 기계 학습 모듈(300)과 비교하면, 반도체 공정 기계 학습 모듈(500)은 인코더(540) 및 제2 손실 계산기(550)를 더 포함할 수 있다. 인코더(540)는 참 출력(TO)으로부터 추론된 입력(II)을 생성하도록 학습될 수 있다.
제2 손실 계산기(550)는 참 입력(TI) 및 추론된 입력(II) 사이의 차이를 나타내는 제3 손실(L3)을 계산할 수 있다. 인코더(540)는 제3 손실(L3)을 생성하는 지도 학습 시스템에 기반하여 학습될 수 있다.
예시적으로, 추론된 출력(IO) 또는 참 출력(TO)은 수백 내지 수천 가지(또는 차원)의 정보들을 포함할 수 있다. 추론된 입력(II) 또는 참 입력(TI)은 수십(예를 들어, 14) 가지(또는 차원)의 정보들을 포함할 수 있다. 인코더(540)는 정보들의 수를 줄이는 관점에서 명명되지만, 인코더(540)의 기능은 인코더(540)의 명칭에 의해 한정되지 않는다.
예시적으로, 인코더(540)는 생성기(510)와 동일(또는 동일하게 학습된)하되, 입력과 출력이 교환된 알고리즘을 포함할 수 있다. 즉, 인코더(540)의 알고리즘이 제3 손실(L3)에 의해 학습(예를 들어, 갱신) 될 때, 생성기(510)의 알고리즘 또한 학습(예를 들어, 갱신) 될 수 있다. 반대로, 생성기(510)의 알고리즘이 제1 손실(L1) 또는 제2 손실(L2)에 의해 학습될 때, 인코더(540)의 알고리즘 또한 학습될 수 있다.
예시적으로, 인코더(540)는 참 출력(TO)으로부터 추론된 입력(II)을 생성하는 것으로 도시되지만, 인코더(540)는 추론된 출력(IO)으로부터 추론된 입력(II)을 생성하도록 구성될 수 있다. 인코더(540)는 참 출력(TO) 및 추론된 입력(II)을 교대로, 일정한 비율로, 또는 일정한 주기로 입력으로 선택하도록 구성될 수 있다.
예시적으로, 생성기(510) 및 인코더(540)는 오토 인코더(auto encoder) 시스템을 구성할 수 있다. 생성기(510)는 더 적은 차원의 참 출력(TO)으로부터 더 많은 차원의 추론된 출력(IO)을 생성할 수 있다. 인코더(540)는 더 많은 차원의 추론된 출력(IO)으로부터 추론된 입력(II)을 생성할 수 있다.
참 입력(TI)과 추론된 입력(II) 사이의 차이를 나타내는 제3 손실(L3)을 포함하는 오토 인코더 시스템에 기반하여, 생성기(510)의 알고리즘 및 인코더(540)의 알고리즘이 학습(예를 들어, 갱신)될 수 있다.
도 7은 도 6의 반도체 공정 기계 학습 모듈(500)의 동작 방법의 예를 보여주는 순서도이다. 도 6 및 도 7을 참조하면, S310 단계에서, 생성기(510)는 참 입력(TI)을 수신할 수 있다. S320 단계에서, 생성기(510)는 참 입력(TI)으로부터 추론된 출력(IO)을 생성할 수 있다. S325 단계에서, 인코더(340)는 참 출력(TO) 또는 추론된 출력(IO)으로부터 추론된 입력(II)을 생성할 수 있다.
S330 단계에서, 추론된 출력(IO)이 참인지를 판별함으로써, 판별기(520)는 제1 손실(L1)을 계산할 수 있다. S340 단계에서, 제1 손실(L1)에 기반하여 생성기(510) 및 판별기(520) 중 적어도 하나의 알고리즘이 갱신될 수 있다.
S350 단계에서, 추론된 출력(IO) 및 참 출력(TO)을 비교함으로써 제2 손실(L2)을 계산할 수 있다. S360 단계에서, 제2 손실(L2)에 기반하여 생성기(510) 및 인코더(540) 중 적어도 하나의 알고리즘이 갱신될 수 있다.
S360 단계에서, 추론된 입력(II) 및 참 입력(TI)을 비교함으로써, 제3 손실(L3)이 계산될 수 있다. S380 단계에서, 제3 손실(L3)에 기반하여 인코더(540) 및 생성기(510) 중 적어도 하나의 알고리즘이 갱신될 수 있다.
예시적으로, S330 단계 및 S340 단계의 학습(예를 들어, 제1 학습), S350 단계 및 S360 단계의 학습(예를 들어, 제2 학습), 그리고 S370 단계 및 S380 단계의 학습(예를 들어, 제3 학습)은 병렬적으로 수행될 수 있다. 다른 예로서, 제1 학습, 제2 학습 및 제3 학습은 선택적으로 수행될 수 있다. 반도체 공정 기계 학습 모듈(500)은 제1 학습, 제2 학습 및 제3 학습 중 하나를 선택하여 수행하도록 설정될 수 있다.
다른 예로서, 반도체 공정 기계 학습 모듈(500)은 제1 학습, 제2 학습 및 제3 학습을 번갈아 수행하도록 설정될 수 있다. 반도체 공정 기계 학습 모듈(500)은 제1 학습, 제2 학습 및 제3 학습 중 하나를 주로 수행하되, 다른 학습들을 주기적으로 수행하도록 설정될 수 있다.
다른 예로서, 반도체 공정 기계 학습 모듈(500)은 제1 학습, 제2 학습 및 제3 학습 중 하나를 선택하고, 그리고 선택된 학습을 반복할 수 있다. 선택된 학습의 손실이 문턱보다 작을 때, 반도체 공정 기계 학습 모듈(500)은 다른 하나의 학습을 선택하고, 그리고 선택된 학습을 반복할 수 있다.
도 8은 본 발명의 제4 실시 예에 따른 반도체 공정 기계 학습 모듈(600)의 예를 보여준다. 예시적으로, 추론 모드의 반도체 공정 기계 학습 모듈(600)이 도 8에 도시된다. 도 1 및 도 8을 참조하면, 반도체 공정 기계 학습 모듈(600)은 생성기(610)를 포함할 수 있다.
도 6 및 도 7을 참조하여 설명된 바와 같이, 생성기(610)는 생성적 적대망 시스템, 지도 학습 시스템, 그리고 오토 인코더 시스템 중 적어도 하나에 기반하여 학습이 완료된 상태일 수 있다. 생성기(610)는 참 입력(TI)을 수신하고, 참 입력으로부터 추론된 출력(IO)을 생성할 수 있다.
예를 들어, 참 입력(TI)은 랜덤 액세스 메모리, 스토리지 장치, 모뎀, 또는 사용자 인터페이스들(160)로부터 프로세서들(110) 중 적어도 하나에 의해 구현된 반도체 공정 기계 학습 모듈(600)로 전달될 수 있다. 반도체 공정 기계 학습 모듈(600)은 사용자 인터페이스들(160) 중 적어도 하나를 통해 추론된 출력(IO)을 사용자에게 제공할 수 있다.
옵션으로서, 반도체 공정 기계 학습 모듈(600)은 판별기(620)를 더 포함할 수 있다. 도 6 및 도 7을 참조하여 설명된 바와 같이, 판별기(620)는 생성적 적대망 시스템에 기반하여 학습이 완료된 상태일 수 있다. 판별기(620)는 추론된 출력(IO)이 참인지 거짓인지를 가리키는 제1 손실(L1)을 생성할 수 있다.
예를 들어, 판별기(60)는 추론된 출력(IO)이 참일 확률 또는 거짓일 확률을 가리키는 점수를 제1 손실(L1)로서 생성할 수 있다. 반도체 공정 기계 학습 모듈(600)은 제1 손실(L1)을 사용자 인터페이스들(160) 중 적어도 하나를 통해 사용자에게 제공할 수 있다.
옵션으로서, 반도체 공정 기계 학습 모듈(600)은 인코더(640)를 더 포함할 수 있다. 도 6 및 도 7을 참조하여 설명된 바와 같이, 인코더(640)는 지도 학습 시스템 및 오토 인코더 시스템 중 적어도 하나에 기반하여 학습이 완료된 상태일 수 있다.
코더(640)는 추론된 출력(IO)으로부터 추론된 입력(II)을 생성할 수 있다. 인코더(640)는 참 입력(TI)과 추론된 입력(II) 사이의 차이를 나타내는 제3 손실(L3)을 생성할 수 있다. 반도체 공정 기계 학습 모듈(600)은 제1 손실(L1)을 사용자 인터페이스들(160) 중 적어도 하나를 통해 사용자에게 제공할 수 있다.
도 9는 도 8의 반도체 공정 기계 학습 모듈(600)의 동작 방법의 예를 보여주는 순서도이다. 도 8 및 도 9를 참조하면, S410 단계에서, 생성기(610)는 참 입력(TI)을 수신할 수 있다. S420 단계에서, 생성기(610)는 참 입력(TI)으로부터 추론된 출력(IO)을 생성할 수 있다.
옵션으로서, S430 단계에서, 판별기(620)는 추론된 출력(IO)이 참인지 판별함으로써 제1 손실(L1)을 계산할 수 있다. 옵션으로서, S440 단계에서, 인코더(640)는 추론된 출력(IO)으로부터 추론된 입력(II)을 생성하고, 그리고 제2 손실 계산기(650)가 제3 손실(L3)을 계산할 수 있다.
S450 단계에서, 반도체 공정 기계 학습 모듈(600)은 추론된 출력(IO)을 사용자에게 제공할 수 있다. 옵션으로서, 반도체 공정 기계 학습 모듈(600)은 제1 손실(L1), 추론된 입력(II), 그리고 제3 손실(L3) 중 적어도 하나를 사용자에게 더 제공할 수 있다.
도 10은 본 발명의 제5실시 예에 따른 반도체 공정 기계 학습 모듈(700)의 예를 보여준다. 예시적으로, 학습 모드의 반도체 공정 기계 학습 모듈(700)이 도 10에 도시된다. 도 1 및 도 10을 참조하면, 반도체 공정 기계 학습 모듈(700)은 생성기(510), 판별기(520), 제1 손실 계산기(530), 인코더(540), 제2 손실 계산기(550), 그리고 추가적인 판별기(760)를 포함할 수 있다.
생성기(710)는 도 2를 참조하여 설명된 생성기(310)와 같이 참 입력(TI)으로부터 추론된 출력(IO)을 생성할 수 있다. 생성기(710)는 제1 손실(L1) 및 제2 손실(L2) 중 적어도 하나에 기반하여 학습될 수 있다.
판별기(720)는 도 2를 참조하여 설명된 판별기(320)와 같이 추론된 출력(IO) 및 참 출력(TO)으로부터 제1 손실(L1)을 생성할 수 있다. 판별기(720)는 제1 손실(L1)에 기반하여 학습될 수 있다.
인코더(740)는 참 출력(TO) 또는 추론된 출력(IO)으로부터 추론된 입력(II)을 생성할 수 있다. 제2 손실 계산기(550)는 참 입력(TI) 및 추론된 입력(II) 사이의 차이를 나타내는 제3 손실(L3)을 계산할 수 있다.
도 6을 참조하여 설명된 반도체 공정 기계 학습 모듈(500)과 비교하면, 반도체 공정 기계 학습 모듈(700)은 추가적인 판별기(760)를 더 포함할 수 있다. 추가적인 판별기(760)는 참 입력(TI) 및 추론된 입력(II)을 수신하고, 참 입력(TI) 및 추론된 입력(II)이 참인지 거짓인지를 나타내는 제4 손실(L4)을 생성할 수 있다.
예시적으로, 추가적인 판별기(760)는 인코더(740)와 함께 추가적인 생성적 적대망 시스템을 구현할 수 있다. 인코더(740)는 생성적 적대망 시스템의 생성을 구현하고, 추가적인 판별기(760)는 생성적 적대망 시스템의 판별을 구현할 수 있다. 즉, 제4 손실(L4)에 기반하여, 인코더(740)의 알고리즘 및 추가적인 판별기(760)의 알고리즘이 학습될 수 있다.
다른 예로서, 추가적인 판별기(760)는 생성기(710) 및 인코더(740)의 오토 인코더 시스템과 함께 생성적 적대망 시스템을 구현할 수 있다. 참 입력(TI)으로부터 추론된 출력(IO)을 생성하고, 그리고 추론된 출력(IO)으로부터 추론된 입력(II)을 생성하는 생성기(710) 및 인코더(740)의 오토 인코더 시스템은 생성적 적대망 시스템의 생성을 구현할 수 있다.
추가적인 판별기(760)는 생성적 적대망 시스템의 판별을 구현할 수 있다. 즉, 제4 손실(L4)에 기반하여, 생성기(710)의 알고리즘, 인코더(740)의 알고리즘, 그리고 추가적인 판별기(760)의 알고리즘이 갱신될 수 있다.
예시적으로, 판별기(720)는 인코더(740) 및 생성기(710)와 함께 생성적 적대망 시스템을 구현할 수 있다. 인코더(740)는 참 출력(TO)으로부터 추론된 입력(II)을 생성할 수 있다. 생성기(710)는 추론된 입력(II)으로부터 추론된 출력(IO)을 생성할 수 있다.
판별기(720)는 참 출력(TO) 및 추론된 출력(IO)이 참인지 거짓인지를 나타내는 제1 손실(L1)을 생성할 수 있다. 제1 손실(L1)에 기반하여, 인코더(740)의 알고리즘, 생성기(710)의 알고리즘, 그리고 판별기(720)의 알고리즘 중 적어도 하나가 학습될 수 있다.
예시적으로, 제1 내지 제4 손실들(L1~L4)의 각각에 기반한 학습, 또는 생성기(710), 판별기(720), 인코더(740) 및 추가적인 판별기(760)의 각각의 학습은 선택적으로, 교대로, 또는 주기적으로 수행될 수 있다.
반도체 공정 기계 학습 모듈(700)의 학습이 완료된 후에, 반도체 공정 기계 학습 모듈(700)은 추론 모드로 지정될 수 있다. 추론 모드에서, 제1 손실 계산기(730)는 제거될 수 있다. 판별기(720), 인코더(740), 제2 손실 계산기(750), 그리고 추가적인 판별기(760)는 옵션일 수 있다.
추론 모드에서, 반도체 공정 기계 학습 모듈(700)은 추론된 출력(IO)을 사용자에게 제공할 수 있다. 추론 모드에서, 반도체 공정 기계 학습 모듈(700)은 제1 손실(L1), 제3 손실(L3), 제4 손실(L4), 그리고 추론된 입력(II)을 옵션으로 사용자에게 제공할 수 있다.
상술된 실시 예들에서, 참 입력(IT) 및 추론된 입력(II)과 같이 입력으로 언급된 공정 파라미터들은 제조된 후의 목표 형태를 가리키는 목표 차원(target dimension), 사용하는 물질을 가리키는 물질(material), 이온 주입 공정의 조건들을 가리키는 IIP(Ion Implantation Process) 조건(condition), 어닐링(anneal) 공정의 조건을 가리키는 어닐링 조건(annealing condition), 에피택시얼(epitaxial) 성장 공정의 조건을 가리키는 에피 조건(epi condition), 클리닝(cleaning) 공정의 조건을 가라키는 클리닝 조건(cleaning condition), 그리고 장치의 콘택들에 입력되는 전압들의 레벨들을 가리키는 바이어스(bias) 중 적어도 하나를 포함할 수 있다.
또한, 상술된 실시 예들에서 참 출력(TO) 및 추론된 출력(IO)과 같이 출력으로 언급된 공정 결과들은 이온 주입 공정 등으로 인해 생성되는 장치 내의 불순물의 프로파일을 가리키는 도핑 프로파일(doping profile), 바이어스 되는 전압들의 레벨들에 따라 생성되는 장치 내 전기장의 프로파일을 가리키는 전기장 프로파일(electric field profile), 바이어스 되는 전압들의 레벨들에 따라 유발되는 장치 내의 전자 또는 홀의 이동도 프로파일을 가리키는 이동도 프로파일(mobility profile), 바이어스 되는 전압들의 레벨들에 따라 유발되는 장치 내의 전자 또는 홀의 프로파일을 가리키는 캐리어 밀도 프로파일(carrier density profile), 바이어스 되는 전압들의 레벨들에 따라 유발되는 장치 내의 전위의 프로파일을 가리키는 전위 프로파이(potential profile), 바이어스 되는 전압들의 레벨들에 따라 유발되는 장치 내의 원자가(valence) 또는 도전 밴드(conduction band)의 프로파일을 가리키는 에너지 밴드 프로파일(energy band profile), 바이어스 되는 전압들의 레벨들에 따라 유발되는 장치 내의 전류들의 프로파일을 가리키는 전류 프로파일(current profile), 그리고 장치 내의 문턱 전압, 구동 전류 등과 같이 지정된 방법으로 추출된 특성들을 가리키는 기타(ET) 중 적어도 하나를 포함할 수 있다.
도 11은 본 발명의 실시 예에 따른 반도체 공정 기계 학습 시스템(800)의 예를 보여준다. 도 11을 참조하면, 반도체 공정 기계 학습 시스템(800)은 제1 내지 제n 모듈들(801~80n), 그리고 조합 모듈(810)을 포함할 수 있다. 제1 내지 제n 모듈들(801~80n)의 각각은 도 1 내지 도 10을 참조하여 설명된 반도체 공정 기계 학습 모듈들(200, 300, 400, 500, 600, 700) 중 하나를 포함할 수 있다.
제1 내지 제n 모듈들(801~80n)은 제1 내지 제n 입력들(I1~In)을 각각 수신할 수 있다. 제1 내지 제n 입력들(I1~In)은 참 입력들 또는 추론된 입력들을 포함할 수 있다. 제1 내지 제n 모듈들(801~80n)은 제1 내지 제n 입력들(I1~In)로부터 각각 제1 내지 제n 출력들(O1~On)을 생성할 수 있다. 제1 내지 제n 출력들(O1~On)은 추론된 출력들을 포함할 수 있다.
제1 내지 제n 모듈들(801~80n)은 서로 다른 입력들 또는 동일한 입력들을 수신할 수 있다. 제1 내지 제n 모듈들(801~80n)은 동일한 방식으로 또는 서로 다른 방식들로 학습된 반도체 공정 기계 학습 모듈들일 수 있다.
조합 모듈(810)은 제1 내지 제n 출력들(O1~On)을 수신할 수 있다. 조합 모듈(810)은 제1 내지 제n 출력들(O1~On)을 가공하도록 학습된 신경망, 또는 제1 내지 제n 출력들(O1~On)을 사용자에게 제공하는 사용자 인터페이스들(160) 중의 하나일 수 있다.
물리 전산 시뮬레이션들 중 일부는 동일한 입력들에 대해 서로 다른 출력들이 계산될 수 있다. 제1 내지 제n 모듈들(801~80n)은 동일한 입력에 대해 서로 다른 출력들이 계산되는 사례들에 기반하여 학습될 수 있다. 즉, 반도체 공정 기계 학습 시스템(800)은 동일한 입력에 대해 서로 다른 출력들이 계산되는 전산 시뮬레이션 또한 학습하고 추론하도록 구현될 수 있다.
도 12는 물리 전산 시뮬레이션의 결과와 반도체 공정 기계 학습 모듈의 추론 결과를 보여준다. 도 12를 참조하면, 제1 내지 제3 예들(EG1~EG3)은 반도체 기판에 불순물(dopant)을 주입할 때의 물리 전산 시뮬레이션의 결과들 및 반도체 공정 기계 학습 모듈의 추론 결과들을 보여준다.
도 12에서, 점의 밀도가 높을수록 불순물의 밀도가 높을 수 있다. 도 12에 도시된 바와 같이, 반도체 공정 기계 학습 모듈의 추론 결과는 물리 전산 시뮬레이션의 계산 결과를 유사하게 추론하는 것으로 나타난다. 반도체 공정 기계 학습 모듈의 학습이 더 진행되면, 반도체 공정 기계 학습 모듈의 추론 결과는 물리 전산 시뮬레이션의 계산 결과를 더 근사하게 추론할 수 있다.
상술된 실시 예들에서, 제1, 제2, 제3 등의 용어들을 사용하여 본 발명의 기술적 사상에 따른 구성 요소들이 설명되었다. 그러나 제1, 제2, 제3 등과 같은 용어들은 구성 요소들을 서로 구별하기 위해 사용되며, 본 발명을 한정하지 않는다. 예를 들어, 제1, 제2, 제3 등과 같은 용어들은 순서 또는 임의의 형태의 수치적 의미를 내포하지 않는다.
상술된 실시 예들에서, 블록들을 사용하여 본 발명의 실시 예들에 따른 구성 요소들이 참조되었다. 블록들은 IC (Integrated Circuit), ASIC (Application Specific IC), FPGA (Field Programmable Gate Array), CPLD (Complex Programmable Logic Device) 등과 같은 다양한 하드웨어 장치들, 하드웨어 장치들에서 구동되는 펌웨어, 응용과 같은 소프트웨어, 또는 하드웨어 장치와 소프트웨어가 조합된 형태로 구현될 수 있다. 또한, 블록들은 IC 내의 반도체 소자들로 구성되는 회로들 또는 IP(Intellectual Property)로 등록된 회로들을 포함할 수 있다.
상술된 내용은 본 발명을 실시하기 위한 구체적인 실시 예들이다. 본 발명은 상술된 실시 예들뿐만 아니라, 단순하게 설계 변경되거나 용이하게 변경할 수 있는 실시 예들 또한 포함할 것이다. 또한, 본 발명은 실시 예들을 이용하여 용이하게 변형하여 실시할 수 있는 기술들도 포함될 것이다. 따라서, 본 발명의 범위는 상술된 실시 예들에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 할 것이다.
100: 컴퓨팅 장치
110: 프로세서들
120: 랜덤 액세스 메모리
130: 장치 드라이버
140: 스토리지 장치
150: 모뎀
160: 사용자 인터페이스들
300, 400, 500, 600, 700: 반도체 공정 기계 학습 모듈
310, 410, 510, 610, 710: 생성기
320, 420, 520, 620, 720: 판별기
330, 530: 제1 손실 계산기
540, 640, 740: 인코더
550, 650, 750: 제2 손실 계산기
760: 추가적인 판별기
110: 프로세서들
120: 랜덤 액세스 메모리
130: 장치 드라이버
140: 스토리지 장치
150: 모뎀
160: 사용자 인터페이스들
300, 400, 500, 600, 700: 반도체 공정 기계 학습 모듈
310, 410, 510, 610, 710: 생성기
320, 420, 520, 620, 720: 판별기
330, 530: 제1 손실 계산기
540, 640, 740: 인코더
550, 650, 750: 제2 손실 계산기
760: 추가적인 판별기
Claims (20)
- 프로세서들을 포함하고,
상기 프로세서들 중 적어도 하나의 프로세서는 반도체 공정 기계 학습 모듈을 실행하도록 구성되고,
상기 반도체 공정 기계 학습 모듈은:
반도체 공정 파라미터들을 수신하고, 그리고 상기 반도체 공정 파라미터들로부터 반도체 공정 결과를 생성하고, 그리고 상기 반도체 공정 결과 정보를 출력하도록 구성되는 기계 학습 생성기; 그리고
상기 기계 학습 생성기로부터 상기 반도체 공정 결과 정보를 수신하고, 그리고 상기 반도체 공정 결과 정보가 참인지 판별하도록 구성되는 기계 학습 판별기(discriminator)를 포함하는 컴퓨팅 장치. - 제1항에 있어서,
상기 기계 학습 생성기 및 상기 기계 학습 판별기 중 적어도 하나는 상기 판별 결과에 기반하여 알고리즘을 갱신하는 학습을 수행하도록 더 구성되는 컴퓨팅 장치. - 제1항에 있어서,
상기 반도체 공정 기계 학습 모듈은 상기 반도체 공정 결과 정보 및 주어진 반도체 공정 결과 정보를 비교하고, 그리고 상기 반도체 공정 결과 정모 및 상기 주어진 반도체 공정 결과 정보의 차이를 가리키는 손실을 계산하도록 구성되는 손실 계산기를 더 포함하고,
상기 기계 학습 생성기는 상기 손실에 기반하여 알고리즘을 갱신하는 학습을 수행하도록 더 구성되는 컴퓨팅 장치. - 제1항에 있어서,
상기 기계 학습 판별기는 주어진 반도체 공정 결과 정보를 더 수신하고, 그리고 상기 반도체 공정 결과 정보 및 상기 주어진 반도체 공정 결과 정보 중에서 하나를 참으로 그리고 다른 하나를 거짓으로 판단하도록 더 구성되는 컴퓨팅 장치. - 제1항에 있어서,
상기 반도체 공정 결과 정보 및 상기 판별 결과 중 적어도 하나를 사용자에게 출력하도록 구성되는 사용자 인터페이스를 더 포함하는 컴퓨팅 장치. - 제1항에 있어서,
상기 반도체 공정 기계 학습 모듈은 주어진 반도체 공정 결과를 수신하고, 상기 주어진 반도체 공정 결과로부터 추론된 반도체 공정 파라미터들을 생성하도록 구성되는 기계 학습 인코더를 더 포함하는 컴퓨팅 장치. - 제6항에 있어서,
상기 반도체 공정 기계 학습 모듈은 상기 반도체 공정 파라미터 및 상기 추론된 반도체 공정 파라미터들을 비교하고, 그리고 상기 반도체 공정 파라미터와 상기 추론된 반도체 공정 파라미터 사이의 차이를 나타내는 손실을 계산하도록 구성되는 계산기를 더 포함하고,
상기 기계 학습 인코더는 상기 손실에 기반하여 알고리즘을 갱신하는 학습을 수행하도록 더 구성되는 컴퓨팅 장치. - 제6항에 있어서,
상기 반도체 공정 결과 정보, 상기 판별 결과, 상기 추론된 반도체 공정 파라미터들, 그리고 상기 손실 중 적어도 하나를 사용자에게 출력하도록 구성되는 사용자 인터페이스를 더 포함하는 컴퓨팅 장치. - 제1항에 있어서,
상기 반도체 공정 기계 학습 모듈은 상기 반도체 공정 결과를 수신하고, 상기 반도체 공정 결과로부터 추론된 반도체 공정 파라미터들을 생성하도록 구성되는 기계 학습 인코더를 더 포함하는 컴퓨팅 장치. - 제9항에 있어서,
상기 반도체 공정 결과 정보, 상기 판별 결과, 그리고 상기 추론된 반도체 공정 파라미터들 중 적어도 하나를 사용자에게 출력하도록 구성되는 사용자 인터페이스를 더 포함하는 컴퓨팅 장치. - 제9항에 있어서,
상기 기계 학습 인코더는 상기 기계 학습 생성기의 알고리즘과 동일하되, 입력과 출력이 교환된 알고리즘을 포함하는 컴퓨팅 장치. - 제1항에 있어서,
상기 기계 학습 생성기 및 상기 기계 학습 판별기는 신경망에 기반하는 컴퓨팅 장치. - 프로세서들을 포함하는 컴퓨팅 장치의 동작 방법에 있어서:
상기 프로세서들 중 적어도 하나의 프로세서를 이용하여, 반도체 공정 파라미터들로부터 반도체 공정 결과 정보를 생성하는 기계 학습 생성기의 지도 학습을 수행하는 단계; 그리고
상기 적어도 하나의 프로세서를 이용하여, 상기 반도체 공정 결과 정보가 참인지 판별하는 기계 학습 판별기 및 상기 기계 학습 생성기로 구현되는 생성적 적대망의 학습을 수행하는 단계를 포함하는 동작 방법. - 제13항에 있어서,
상기 생성적 적대망의 학습을 수행하는 단계는, 상기 반도체 공정 결과 정보 및 주어진 반도체 공정 결과를 이용하여 지도 학습을 수행하는 단계를 포함하는 동작 방법. - 제13항에 있어서,
상기 적어도 하나의 프로세서를 이용하여, 주어진 반도체 공정 결과 정보로부터 추론된 반도체 공정 파라미터들을 생성하는 인코더의 지도 학습을 수행하는 단계를 더 포함하는 동작 방법. - 제15항에 있어서,
상기 적어도 하나의 프로세서를 이용하여, 상기 추론된 반도체 공정 파라미터들을 상기 기계 학습 생성기에 전달하는 단계를 더 포함하는 동작 방법. - 제16항에 있어서,
상기 기계 학습 생성기에 의해 상기 추론된 반도체 공정 파라미터들로부터 생성된 추론된 반도체 공정 결과 정보에 기반하여, 상기 기계 학습 생성기 및 상기 인코더에 의해 구현되는 오토 인코더의 학습을 수행하는 단계를 더 포함하는 동작 방법. - 프로세서에 의해 실행될 때 동작들을 수행하도록 구성되는 반도체 공정 기계 학습 모듈의 명령들을 저장하도록 구성되는 컴퓨터로 독출 가능한 비임시의 저장 매체에 있어서:
상기 동작들은:
반도체 공정 파라미터들을 수신하는 단계; 그리고
상기 반도체 공정 파라미터들로부터 반도체 공정 결과 정보를 생성하는 단계를 포함하고,
상기 반도체 공정 기계 학습 모듈은,
상기 반도체 공정 파라미터들로부터 상기 반도체 공정 결과 정보를 생성하도록 구성되고, 지도 학습에 기반하여 학습된 기계 학습 생성기; 그리고
상기 반도체 공정 결과 정보가 참인지 판별하고, 그리고 상기 기계 학습 생성기와 함께 생성적 적대망을 구현하도록 구성되는 기계 학습 판별기에 기반하여 학습된 저장 매체. - 제18항에 있어서,
상기 동작들은:
주어진 반도체 공정 결과 정보를 수신하는 단계; 그리고
상기 주어진 반도체 공정 결과 정보로부터 추론된 반도체 공정 파라미터들을 생성하는 단계를 더 포함하는 저장 매체. - 제18항에 있어서,
상기 반도체 공정 기계 학습 모듈은,
상기 주어진 반도체 공정 결과 정보로부터 상기 추론된 반도체 공정 파라미터들을 생성하도록 구성되고, 그리고 상기 기계 학습 생성기와 함께 오토 인코더를 구현하도록 구성되는 인코더에 기반하여 학습된 저장 매체.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190160280A KR20210071130A (ko) | 2019-12-05 | 2019-12-05 | 컴퓨팅 장치, 컴퓨팅 장치의 동작 방법, 그리고 저장 매체 |
US16/907,780 US20210174201A1 (en) | 2019-12-05 | 2020-06-22 | Computing device, operating method of computing device, and storage medium |
CN202011251713.7A CN112926743A (zh) | 2019-12-05 | 2020-11-11 | 计算设备,计算设备的操作方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190160280A KR20210071130A (ko) | 2019-12-05 | 2019-12-05 | 컴퓨팅 장치, 컴퓨팅 장치의 동작 방법, 그리고 저장 매체 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210071130A true KR20210071130A (ko) | 2021-06-16 |
Family
ID=76162606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190160280A KR20210071130A (ko) | 2019-12-05 | 2019-12-05 | 컴퓨팅 장치, 컴퓨팅 장치의 동작 방법, 그리고 저장 매체 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210174201A1 (ko) |
KR (1) | KR20210071130A (ko) |
CN (1) | CN112926743A (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022255790A1 (ko) | 2021-06-01 | 2022-12-08 | 제이투에이치바이오텍 주식회사 | 폐섬유화증의 예방 또는 치료용 약학 제제 |
US11982980B2 (en) | 2020-08-10 | 2024-05-14 | Samsung Electronics Co., Ltd. | Simulation method for semiconductor fabrication process and method for manufacturing semiconductor device |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113537057B (zh) * | 2021-07-14 | 2022-11-01 | 山西中医药大学 | 一种基于改进CycleGAN的面部穴位自动定位检测系统及方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070282480A1 (en) * | 2003-11-10 | 2007-12-06 | Pannese Patrick D | Methods and systems for controlling a semiconductor fabrication process |
WO2008039964A1 (en) * | 2006-09-28 | 2008-04-03 | Nec Laboratories America, Inc. | Software testing using machine learning |
US11580375B2 (en) * | 2015-12-31 | 2023-02-14 | Kla-Tencor Corp. | Accelerated training of a machine learning based model for semiconductor applications |
JP2022003423A (ja) * | 2018-08-09 | 2022-01-11 | 株式会社Preferred Networks | 学習方法、学習装置及びプログラム |
US10853554B2 (en) * | 2019-06-28 | 2020-12-01 | Intel Corporation | Systems and methods for determining a configuration for a microarchitecture |
US20210073669A1 (en) * | 2019-09-06 | 2021-03-11 | American Express Travel Related Services Company | Generating training data for machine-learning models |
-
2019
- 2019-12-05 KR KR1020190160280A patent/KR20210071130A/ko active Search and Examination
-
2020
- 2020-06-22 US US16/907,780 patent/US20210174201A1/en active Pending
- 2020-11-11 CN CN202011251713.7A patent/CN112926743A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11982980B2 (en) | 2020-08-10 | 2024-05-14 | Samsung Electronics Co., Ltd. | Simulation method for semiconductor fabrication process and method for manufacturing semiconductor device |
WO2022255790A1 (ko) | 2021-06-01 | 2022-12-08 | 제이투에이치바이오텍 주식회사 | 폐섬유화증의 예방 또는 치료용 약학 제제 |
Also Published As
Publication number | Publication date |
---|---|
US20210174201A1 (en) | 2021-06-10 |
CN112926743A (zh) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20210071130A (ko) | 컴퓨팅 장치, 컴퓨팅 장치의 동작 방법, 그리고 저장 매체 | |
Yuan et al. | Hybrid parallel chaos optimization algorithm with harmony search algorithm | |
Zhang et al. | Spatiotemporal chaos in mixed linear–nonlinear coupled logistic map lattice | |
dos Santos Coelho et al. | A self-adaptive chaotic differential evolution algorithm using gamma distribution for unconstrained global optimization | |
Okuyama et al. | An Ising computer based on simulated quantum annealing by path integral Monte Carlo method | |
Weber et al. | Distributed differential evolution with explorative–exploitative population families | |
Zhao et al. | A novel approach to building a robust fuzzy rough classifier | |
US11645562B2 (en) | Search point determining method and search point determining apparatus | |
Aglietti et al. | Dynamic causal Bayesian optimization | |
Saxena et al. | Entropy-based termination criterion for multiobjective evolutionary algorithms | |
Xin et al. | Exploration entropy for reinforcement learning | |
Ahmadi et al. | Risk-averse stochastic shortest path planning | |
Nápoles et al. | Recurrence-aware long-term cognitive network for explainable pattern classification | |
Bellinger et al. | Active Measure Reinforcement Learning for Observation Cost Minimization. | |
Mozafari et al. | A cooperative learning method based on cellular learning automata and its application in optimization problems | |
CN114037082A (zh) | 量子计算任务处理方法、系统及计算机设备 | |
Touri et al. | When infinite flow is sufficient for ergodicity | |
Al-Behadili et al. | Ant colony optimization algorithm for rule-based classification: Issues and potential solutions | |
Husnoo et al. | Fedisa: A semi-asynchronous federated learning framework for power system fault and cyberattack discrimination | |
Xie et al. | Parameters Optimization of Least Squares Support Vector Machines and Its Application. | |
US20220245500A1 (en) | Mitigating errors in algorithms performed using quantum information processors | |
Zhang et al. | Attribute index and uniform design based multiobjective association rule mining with evolutionary algorithm | |
Méléard et al. | Some stochastic models for structured populations: scaling limits and long time behavior | |
Li et al. | A learning classifier system based on genetic network programming | |
Liu et al. | Encoding and decoding algorithms for arbitrary dimensional Hilbert order |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |