> > > Everything to Remember
본문 바로가기
반응형

전체 글59

[bayesian-optimization / Optuna / BoTorch] Python으로 Bayesian Optimization 시작하기: BO 패키지 사용법과 하이퍼파라미터 완전 정리 안녕하세요.“기억하고자 하는 모든 것”을 담아내는 “리멤버미” 입니다.최적화 문제를 풀다 보면, 목적함수의 식을 깔끔하게 알 수 없거나, 한 번 평가하는 데 시간이 오래 걸리거나, gradient를 쓰기 어려운 경우가 있습니다. 이런 상황에서 자주 등장하는 방법이 바로 BO(Bayesian Optimization) 입니다. 공식 문서들도 BO를 비싼(expensive) black-box 함수를 적은 평가 횟수로 최적화하기 위한 방법으로 설명하고 있고, 핵심 아이디어는 Gaussian Process 같은 surrogate model로 목적함수를 근사한 뒤 acquisition function으로 다음 탐색 지점을 고르는 것입니다.핵심만 먼저 말하면, Python에서 BO를 시작할 때는 보통 아래 흐름으로 .. 2026. 4. 8.
[인공지능/AI/최적화]휴리스틱 알고리즘 BO(Bayesian Optimization)란? 적은 실험으로 최적점을 똑똑하게 찾는 방법 안녕하세요.“기억하고자 하는 모든 것”을 담아내는 “리멤버미” 입니다. 최적화 문제를 풀다 보면 이런 상황을 자주 만나게 됩니다.한 번 평가하는 데 시간이 오래 걸리거나, 실제 실험 비용이 크거나, 시뮬레이션 한 번 돌리는 것 자체가 부담스러운 경우입니다. 이럴 때는 무작정 많은 점을 찍어보는 방식이 비효율적입니다. 바로 이런 문제를 다룰 때 자주 언급되는 방법이 BO(Bayesian Optimization) 입니다. BO는 비용이 큰 black-box function을 적은 평가 횟수로 순차적으로 최적화하는 대표적인 방법으로 소개되며, 하이퍼파라미터 최적화, A/B 테스트, 과학·공학 문제 등 폭넓은 영역에 적용됩니다.핵심만 먼저 말하면,BO는 실제 목적함수를 자주 직접 계산하지 않고, 먼저 그 함수를.. 2026. 4. 8.
[scipy / pymoo] Python으로 Differential Evolution 시작하기: DE 패키지 사용법과 하이퍼파라미터 완전 정리 안녕하세요.“기억하고자 하는 모든 것”을 담아내는 “리멤버미” 입니다. 최적화 문제를 풀다 보면, 미분이 어렵거나 목적함수가 울퉁불퉁해서 전통적인 방법으로는 잘 안 풀리는 경우가 있습니다. 이럴 때 자주 언급되는 전역 최적화 기법 중 하나가 바로 DE(Differential Evolution) 입니다. SciPy 문서에서도 differential evolution은 다변수 함수의 global minimum을 찾기 위한 확률적(stochastic) 전역 최적화 방법으로 소개하고 있으며, gradient를 직접 사용하지 않고 넓은 후보 공간을 탐색할 수 있다고 설명합니다.이번 글에서는 DE 알고리즘의 이론을 길게 파기보다, Python에서 어떤 패키지로 시작하면 좋은지, 그리고 주요 하이퍼파라미터를 어떻게 .. 2026. 4. 8.
[인공지능/최적화/AI] 휴리스틱 알고리즘 DE(Differential Evolution)란? 벡터 차이로 해를 진화시키는 전역 최적화 방법 안녕하세요.“기억하고자 하는 모든 것”을 담아내는 “리멤버미” 입니다. 최적화 문제를 풀다 보면, 해 공간이 너무 넓어서 어디부터 찾아야 할지 막막한 경우가 많습니다.특히 목적함수가 비선형이거나, 매끄럽지 않거나, 미분 정보를 쓰기 어렵거나, 지역 최적해에 쉽게 갇히는 문제에서는 전통적인 방법만으로 답을 찾기 까다로운 경우가 있습니다. 이런 상황에서 자주 언급되는 대표적인 메타휴리스틱 중 하나가 바로 DE(Differential Evolution) 입니다. DE는 Storn과 Price가 제안한 확률적 개체군 기반 최적화 기법으로, 여러 후보 해 사이의 차이 벡터를 이용해 새로운 해를 만든다는 점이 핵심입니다.핵심만 먼저 말하면, DE는 “좋은 해 주변을 무작정 흔드는 방식”이 아니라, 현재 개체군 안에.. 2026. 4. 8.
[PyGAD / DEAP] Python으로 Genetic Algorithm 시작하기: 유전 알고리즘 패키지 사용법과 하이퍼파라미터 완전 정리 안녕하세요.“기억하고자 하는 모든 것”을 담아내는 “리멤버미” 입니다. 유전 알고리즘(Genetic Algorithm, GA)은 경우의 수가 많고, 미분 기반 최적화가 어려운 문제를 풀 때 자주 쓰이는 대표적인 휴리스틱 최적화 기법입니다.특히 설계 변수 조합이 많거나, 해 공간이 복잡한 문제에서 꽤 유용하게 활용됩니다.이번 글에서는 유전 알고리즘 이론 자체보다, Python에서 어떤 패키지를 쓰면 좋은지, 그리고 주요 하이퍼파라미터는 어떤 의미를 가지는지 중심으로 가볍게 정리해보겠습니다.어떤 Python 패키지를 쓰면 좋을까?유전 알고리즘을 Python에서 구현할 때 많이 쓰이는 패키지는 대표적으로 PyGAD와 DEAP입니다.PyGADPyGAD는 유전 알고리즘을 비교적 간단하게 실행할 수 있는 패키지입니.. 2026. 4. 7.
[최적화/AI] 유전 알고리즘(Genetic Algorithm)이란? 선택·교차·돌연변이로 이해하는 핵심 원리 안녕하세요.“기억하고자 하는 모든 것”을 담아내는 “리멤버미” 입니다. 최적화 문제를 다루다 보면, 해를 한 번에 정확히 계산해서 찾기 어려운 경우가 많습니다.특히 변수 조합이 너무 많거나, 함수가 매끄럽지 않거나, 미분이 어렵거나, 정수 조건과 제약조건이 함께 얽혀 있으면 전통적인 방법만으로는 풀기 까다로운 경우가 많습니다. 이런 상황에서 자주 등장하는 접근이 바로 유전 알고리즘(Genetic Algorithm, GA) 입니다. MathWorks는 GA를 확률적(stochastic) 이고 개체군 기반(population-based) 인 알고리즘으로 설명하며, 연속 변수뿐 아니라 정수 제약이 있는 문제와 비매끄러운 문제에도 적용할 수 있다고 설명합니다. 핵심만 먼저 말하면, 유전 알고리즘은 좋은 해를 가.. 2026. 4. 7.
[simanneal / scipy_dual_annealing] Python으로 Simulated Annealing 시작하기: SA 패키지 사용법과 하이퍼파라미터 완전 정리 안녕하세요.“기억하고자 하는 모든 것”을 담아내는 리멤버미입니다. 지난 글에서 SA(Simulated Annealing) 알고리즘 자체의 개념을 정리했다면, 이번에는 조금 더 실무적인 관점에서 Python에서 SA를 어떻게 써야 하는지, 그리고 하이퍼파라미터는 어떤 의미를 가지는지 정리해보겠습니다.Python에서 SA를 다룰 때 많이 언급되는 축은 크게 두 가지입니다.하나는 조합 최적화나 이산 상태 탐색에 직관적인 simanneal이고, 다른 하나는 SciPy가 제공하는 연속 변수용 전역 최적화 함수 scipy.optimize.dual_annealing입니다. simanneal은 PyPI 기준으로 Simulated Annealing 전용 패키지이며, 최신 공개 릴리스는 0.5.0입니다. 반면 dual_a.. 2026. 4. 7.
[인공지능/최적화/AI] 휴리스틱 알고리즘 SA(Simulated Annealing)란 무엇인가? 국소해를 넘어서 더 좋은 해를 찾는 방법 안녕하세요.“기억하고자 하는 모든 것”을 담아내는 “리멤버미” 입니다. 최적화 문제를 풀다 보면 자주 부딪히는 벽이 있습니다.바로 지금 당장은 좋아 보이지만 전체적으로는 최선이 아닌 해, 즉 local minimum(국소 최솟값) 입니다.이럴 때 자주 등장하는 대표적인 휴리스틱 알고리즘이 바로 SA, Simulated Annealing 입니다.SA는 금속을 천천히 식히며 더 안정적인 상태로 가는 과정에서 아이디어를 가져온 확률적 최적화 기법으로, 1983년 Kirkpatrick, Gelatt, Vecchi에 의해 대표적인 메타휴리스틱으로 정리된 방법입니다. 핵심은 초반에는 비교적 과감하게 탐색하고, 후반에는 점점 안정적으로 수렴하는 데 있습니다.SA를 한 문장으로 설명하면“지금보다 나쁜 선택도 가끔은 받.. 2026. 4. 7.
[전자/디스플레이/회로] 픽셀 회로에서 Source Follower와 Diode Connection이란? 안녕하세요. “기억하고자 하는 모든 것”을 담아내는 “리멤버미” 입니다.디스플레이 TFT 회로를 보다 보면 source follower와 diode connection이라는 표현이 자주 나옵니다.둘 다 트랜지스터 하나로 설명되는 경우가 많아서 처음 보면 비슷해 보이지만, 실제로는 출력을 어디서 보느냐, 노드가 어떻게 결정되느냐가 꽤 다릅니다.오늘은 이 두 개념을 회로를 처음 접하는 분도 이해할 수 있도록 최대한 쉽게 정리해보겠습니다.핵심만 먼저 말하면 source follower는 입력 전압을 따라가는 출력 노드를 만들 때 자주 쓰이고,diode connection은 게이트와 드레인을 묶어 스스로 동작점을 잡는 노드를 만들 때 자주 쓰입니다.왜 둘이 자주 헷갈릴까?둘 다 트랜지스터 한 개만 놓고 설명되는.. 2026. 4. 6.
반응형