python - 最小化具有多个变量的黑盒函数的值 - Python
问题描述
我有一个包含输入列 x0、x1...xn 和一列结果值 y 的多行数据框。
df = pd.read_csv("data.csv")
results = df['y']
inputs = df.drop('y')
我想最小化y的值。我知道存在提供最小值 y 的输入 x0->xn 的组合。
结果值 y 来自一个黑匣子,我无法通过代码连接到该黑匣子。
是否有一种算法可以确定输入的最佳猜测以最小化 y?然后我会手动重复/收敛,直到我将 y 减少到足以满足我的口味。
输入值必须 >= 0,并且是整数
我想象的糟糕的伪代码:
restrictions = (inputs >= 0 & inputs.astype(int))
result = minimize_function(inputs, results, restrictions)
result.x are new inputs
result.y is predicted result (optional)
我检查了 scipy.optimize 但如果该功能确实未知,我不确定如何使用。
谢谢!
解决方案
推荐阅读
- sql - 如何将当前值与旧值并列?
- api - 多对多关系的 API 路径
- workbox - Workbox - 推送和推送通知?
- css - 在 React Native 中具有绝对位置的中心活动指示器
- bash - 用任何内容替换文件中的令牌
- google-cloud-platform - 什么是 GCP 别名 IP(次要范围)以及如何使用它?
- node.js - 为什么 http get 没有到达服务器?
- google-kubernetes-engine - Kubernetes - 入口服务显示不健康状态
- angular - Angular - 如何跟踪 FormGroup 中的数组数组
- javascript - nouislider 手柄通过其杆长度