범주형 입력에 대한 연속형 설명자를 사용하는 베이즈 선택안녕,
한 고객이 단일 범주형 입력값(예: 촉매 유형)을 여러 개의 연속형 변수(예: 화학적 특성)를 사용하여 설명할 수 있는 상황에서 베이즈 옵트를 사용하는 방법에 대해 문의했습니다.
설명자 표를 후보 집합으로 사용하면 가능할 거라고 알고 있습니다. 혹시 고객이 이렇게 하는 사례를 보신 분이 있나요? 아니면 시스템 엔지니어가 시뮬레이션 예제를 통해 실험해 본 적이 있나요?
감사해요
필
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택안녕하세요 @Phil_Kay 님 ,
그들은 촉매의 구성 효과가 전체 공정에 미치는 영향을 파악하기 위해 (모델을 구축하여) 촉매 구성을 제어/조정하려는 것인가요?
저도 비슷한 경험을 고객들로부터 했습니다(예를 들어 향수 개발 분야에서). 고객들은 A, B, C 화합물을 사용할 수 있고, 그 구성 성분(예: 오일 10%, 알코올 5%)도 알고 있지만, 비율을 조절할 수 없어서 의도적인 실험을 할 수 없다는 것입니다. 그래서 BayesOpt를 사용해도 별 도움이 되지 않았습니다.
건배,
벤
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택안녕하세요 @Phil_Kay 님 , 도움이 될까 해서 첨부된 표를 보여드립니다. 이 표는 "화학적 설명자를 사용하여 촉매 유형을 예측하기 위해 QSAR 데이터를 시뮬레이션하세요. 현실적인 화학적 관계를 사용하고 일부 설명자가 유의미한지 확인하세요."라는 프롬프트와 함께 생성된 것입니다.
XGBoost 모델용 스크립트도 있는데, 제대로 작동하는 것 같습니다.
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택고마워, 벤. 내 생각에 그들이 궁극적으로 하려는 것은 최적의 수율을 내는 최고의 촉매를 선택하는 것이다. 선택할 수 있는 촉매는 50개 정도 될 수 있다. 각 촉매는 서로 다른 화학적 특성을 반영하여 설명 변수에 대해 고유한 값을 가질 것이다. 모든 촉매를 일일이 테스트하는 것은 반응 횟수가 너무 많아지기 때문에, 설명 변수를 베이즈 선택(Bayes opt)의 요인으로 사용하여 촉매 특성 공간을 합리적으로 탐색하고 최적의 촉매를 찾는 것이 목표일 것이다.
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택감사합니다, @russ_wolfinger 님 . 아주 좋아 보입니다. 하지만 제가 생각하는 경우는 촉매가 각각 50개씩 있는 후보군입니다. 죄송합니다, 제가 "촉매 유형"이라는 표현을 제대로 설명하지 못한 것 같습니다. 각 촉매는 고유한 설명자 값을 가질 것입니다.
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택설명해주셔서 감사합니다, 필.
혹시 여러 변수들의 함수로서 최적화되어야 할 연속적인 목표값 Y(예: 수율)가 있는 것일까요? 그렇다면 촉매 이름은 행 레이블 역할을 하는 것일까요?
이러한 가정을 전제로, BayesOpt를 사용하여 Y 값을 최적화하는 설명자 값을 찾을 수 있습니다. 최적의 설명자 값을 찾았다면, 최적의 설명자 조합(또는 최소한 그에 근접한 조합)을 가진 촉매를 합성할 수 있어야 할 것입니다.
또는 QSAR(정량적 구조-활성 관계) 모델링을 통해 설명 변수의 함수로 Y에 대한 예측 모델을 구축할 수 있습니다. XGBoost 또는 Torch를 사용하면 프로파일러를 통해 Y를 최적화하거나, 구축된 모델을 이용하여 알려진 설명 변수를 가진 현재 측정되지 않은 촉매를 예측할 수 있습니다.
촉매에 대한 SMILES 문자열이 있는 경우 Torch에는 일반적으로 매우 잘 작동하는 그래프 신경망 모델이 있습니다.
시뮬레이션 데이터에 '수율' 열을 추가했습니다.
러셀
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택네, 수율이 가장 흔한 반응 변수이지만, 불순물 함량과 비용도 추가적인 변수가 될 수 있습니다. 수율은 알 수 없고 반응을 진행해봐야만 알 수 있습니다. 그런데 50가지 촉매 모두에 대해 반응을 진행하는 것은 비용적으로 불가능합니다. 따라서 베이즈 선택법을 사용하여 촉매 특성 공간을 효율적으로 탐색해야 합니다. 결국에는 가장 좋은 결과를 보인 촉매를 사용하게 될 것입니다. 하지만 모델이 제시하는 최적의 특성이 기존 촉매와는 다른 경우라면, 후보 촉매 목록을 늘려 고려할 수도 있습니다.
제 생각에는 이것은 가능하고 비교적 간단할 것 같습니다.
하지만 온도나 pH 같은 추가적인 공정 변수를 고려하는 것이 가능할지는 확신이 서지 않습니다. 이러한 변수들이 중요할 것으로 예상됩니다. 제 생각에는 촉매 특성 변수에 대한 후보 집합과 공정 요인 변수에 대한 후보 집합(예: 공간 채움 설계)을 만든 다음, 이 둘의 곱을 구하는 방법밖에 없을 것 같습니다. 그렇게 되면 각 촉매와 그 특성 변수에 대해 여러 공정 요인을 고려한 방대한 후보 집합이 생성될 것입니다.
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택BayesOpt에서 수율을 반응 변수로 사용할 때 고려해야 할 사항이 하나 있습니다. 수율 목표를 "최대화"로 설정하고 절대 단위(예: g/L) 대신 백분율로 수율을 입력하는 경우, 알고리즘이 OLS처럼 비물리적인 값(예: 103% 수율)을 예측할 수 있습니다. 이로 인해 실험에 대한 이상한 제안이 나올 수 있습니다.제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택안녕하세요 @Phil_Kay 님 ,
귀하의 경우에 적합할 수 있는 공개 데이터가 있습니다: https://github.com/SigmanGroup/Threshold/tree/main/examples
방금 데이터셋을 빠르게 다운로드하여 후보 집합 및 조회 테이블로 사용하여 테스트해 보았습니다. (이것은 관련 논문인 것 같습니다 : https://www.science.org/doi/10.1126/science.abj4213?referrer=https%3A%2F%2Fgithub.com%2FSigmanGroup%2FThreshold%2Ftree%2Fmain )
제가 처음 간단히 사용해본 결과, BayesOpt가 한 가지 권장 사항(그 한 가지 반응에 대해서는 정확한 권장 사항이었지만)에서 멈춰버린 듯한 문제가 있었습니다.
데모에는 합성 데이터가 더 "안전한" 선택일지도 모릅니다...
도움이 되길 바랍니다.
플로리안
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택음, 최적값을 아주 효과적으로 찾아낸 것 같네요! 공정 변수와 촉매 특성 간의 상호작용까지 고려하면 훨씬 더 흥미로운 결과가 나올 것 같습니다. 하지만 앞서 말씀드린 것처럼, 현재로서는 그런 워크플로우를 구현하기는 어려울 것 같습니다.
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택정말 그렇군요 
네, 그런 경우에는 합성 데이터셋을 사용하는 것이 좋은 방법일 수 있습니다.
유니레버는 베이즈옵트가 제품 개발 및 공정 개발 분야에서 특히 뛰어난 성능을 발휘한다고 밝혔습니다. 다만, 촉매/QSAR 대신 원료의 화학적 특성을 사용하고 교반 등의 공정 변수도 고려한다는 점이 다릅니다. 현재 평가 중이며 아직 구체적인 내용은 공개하지 않았지만, 10월 말쯤에는 더 자세한 정보나 사례 연구를 접할 수 있을 것으로 예상됩니다.
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택그렇게 된다면 정말 좋겠네요. 앞으로 고객들로부터 더 많은 성공 사례가 나오기 시작할 것이고, 이를 통해 저희가 제공하는 가치를 더욱 확실히 알 수 있을 거라고 생각합니다.
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택훌륭한 데이터입니다, 플로리안. 공유해 주셔서 감사합니다. 예측 모델링 관점에서 이러한 유형의 데이터는 매우 유용한 정보를 제공합니다.
1. 가우시안 프로세스와 BayesOpt가 제공하는 반복적인 편의성. GP는 매끄러운 시스템에 가장 적합할 가능성이 높습니다. Torch의 MixedModel도 유사합니다.
2. XGBoost / LightGBM / Boosted Trees: 급격한 변화 또는 불연속성이 있는 비선형 상호작용 시스템에 가장 적합합니다.
3. Torch 및 JMP의 신경망: 중간 정도의 평활도를 가진 시스템에 가장 적합하며, 가우시안 프로세스와 부스팅 트리의 중간 정도의 성능을 보입니다. 풍부한 구조를 표현할 수 있습니다.
4. Torch에서 SMILES에 대한 그래프 신경망: 화학 구조에 가장 충실하며, 잠재적으로 모든 모델 중 최고일 수 있습니다.
3번과 4번 모델은 쉽게 하나의 모델로 결합될 수 있으며, 최상의 예측 결과는 이 모든 모델을 조합하여 얻을 수 있습니다.
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택@MikeD_Anderson 응답 값에서 %로 표시되는 문제를 처리하는 좋은 팁이 있을까요? 고객사(예: 해산 비율)에서 이 문제를 자주 접하는데, 측정값이 %뿐인 경우 엄격한 상한선을 설정하는 방법을 잘 모르겠습니다. 가상 실행을 해봐도 BayesOpt가 여전히 상한선을 초과하는 경우가 있습니다.
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택@Ben_BarrIngh - "정답"은 확률 과정에 대한 GenReg와 같은 기능(BayesOpt 구현에서 사용하는 대리 모델)이 필요하다는 것입니다. 이를 통해 베타 분포(즉, GaSP 모델링 대신 BeSP)를 적용할 수 있습니다. 이러한 기능을 위한 수학적 모델은 존재하지만, 개발팀이나 제품 관리자에게 문의하여 해당 기능에 대한 로드맵이 있는지 확인해야 합니다.
현재로서는 제가 생각해낸 최선의 방법은 '수율(%)'과 같은 용어를 최대화 목표에서 목표값으로 바꾸고 목표값을 99.5% 정도로 설정하는 것입니다. 그런 다음 선호도 곡선의 상한과 하한을 조정하여 100%를 초과하는 값을 무시하도록 할 수 있습니다. 베이즈 최적화 도구가 현재 플랫폼에서 이 작업을 수행하는 데 약간 어려움이 있으므로 응답 열의 속성에 이러한 설정을 직접 입력해야 합니다. 이 방법은 어느 정도 효과가 있지만, 일종의 편법입니다.

제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택매우 유용합니다, 감사합니다 @MikeD_Anderson
제목: 범주형 입력에 대한 연속형 설명자를 사용한 베이즈 선택비율 응답의 로짓을 구하는 방법도 있습니다. 로지스틱 회귀 분석은 합격/불합격 여부를 (–∞, +∞) 범위의 데이터로 변환합니다. 그런 다음 예측값에 로지스틱 함수를 적용하여 다시 비율 단위로 변환하면 됩니다. (JMP에 로짓 백분율 함수가 있을 것 같은데, 그러면 100을 곱할 필요가 없습니다.)