草庐IT

query-optimization

全部标签

python - 使用 scipy.optimize.linprog 进行线性规划

我刚刚用scipy.optimize.linprog检查了简单的线性规划问题:1*x[1]+2x[2]->max1*x[1]+0*x[2]=10*x[1]+1*x[2]>=11*x[1]+1*x[2]得到了一个非常奇怪的结果,我预计x[1]会是1而x[2]会是5,但是:>>>printoptimize.linprog([1,2],A_ub=[[1,1]],b_ub=[6],bounds=(1,5),method='simplex')status:0slack:array([4.,4.,4.,0.,0.])success:Truefun:3.0x:array([1.,1.])messag

python - 如何在 scipy.optimize 函数上强制执行更大的步骤?

我有一个函数compare_images(k,a,b)比较两个二维数组a和b在函数内部,我将sigma=k的gaussian_filter应用到a我的想法是估计我必须多少平滑图像a以使其与图像b相似问题是我的函数compare_images只会在k变化超过0.5时返回不同的值,如果我这样做fmin(compare_images,init_guess,(a,b)它通常卡在init_guess值上。我认为问题是fmin(和minimize)往往从非常小的步骤开始,在我的例子中,这将为重现完全相同的返回值compare_images,所以该方法认为它已经找到了最小值。它只会尝试几次。有没有办

Python Scipy Optimization.minimize 使用 SLSQP 显示最大化结果

我正在学习使用scipy.optimize.minimize优化多元约束非线性问题,但收到了奇怪的结果。我的问题:minimizeobjfunobjfunx*yconstraints0我的代码:fromscipyimportoptimizedeffunc(x):returnx[0]*x[1]bnds=((0,100),(0,5))cons=({'type':'eq','fun':lambdax:x[0]+x[1]-5})x0=[0,0]res=optimize.minimize(func,x0,method='SLSQP',bounds=bnds,constraints=cons)收到

python - Pandas.dataframe.query() - 获取非空行(Pandas 相当于 SQL : "IS NOT NULL")

我正在使用以下代码从pandas数据框中获取具有某些值的行。我需要将此代码转换为pandas.query()。results=rs_gp[rs_gp['Col1'].notnull()]当我转换为:results=rs_gp.query('Col1!=None')它给了我错误Noneisnotdefined 最佳答案 我们可以利用NaN!=NaN的事实:In[1]:np.nan==np.nanOut[1]:False因此将列与自身进行比较将只返回非NaN值:rs_gp.query('Col1==Col1')演示:In[42]:df=

python - SQL炼金术ORM : modify the columns returned from a query

如果我有一个SQLAlchemyORM查询:admin_users=Session.query(User).filter_by(is_admin=True)是否可以修改该查询返回的列?例如,我只能选择User.id列,并在子查询中使用它:admin_email_addresses=Session.query(EmailAddress)\.filter(EmailAddress.user_id.in_(admin_users.select_columns(User.id))注意:.values()方法将不起作用,因为它执行查询并返回可迭代的结果(例如,EmailAddress.user_

python - keras 的 Model.train_on_batch 和 tensorflow 的 Session.run([train_optimizer]) 有什么区别?

在下面的神经网络训练的Keras和Tensorflow实现中,keras实现中的model.train_on_batch([x],[y])与sess有何不同。run([train_optimizer,cross_entropy,accuracy_op],feed_dict=feed_dict)在Tensorflow实现中?特别是:这两行如何导致训练中的不同计算?:keras_version.pyinput_x=Input(shape=input_shape,name="x")c=Dense(num_classes,activation="softmax")(input_x)model=

python - scipy.optimize.minimize(method='trust-constr') 不会在 xtol 条件下终止

我已经建立了一个具有线性等式约束的优化问题如下sol0=minimize(objective,x0,args=mock_df,method='trust-constr',bounds=bnds,constraints=cons,options={'maxiter':250,'verbose':3})objective是加权和函数,其系数/权重将被优化以使其最小化。由于我在系数和约束上有边界,所以我使用了trust-constrscipy.optimize.minimize内的方法.最小化可行,但我不明白终止条件。根据trust-constrdocumentation它应该终止于xtol

python - 将 pandas DataFrame query() 方法与 isin() 结合起来

所以我想将isin()方法与df.query()一起使用,以选择列表中具有id的行:id_list。类似question之前被问过,但他们使用了典型的df[df['id'].isin(id_list)]方法。我想知道是否有办法改用df.query()。df=pd.DataFrame({'a':list('aabbccddeeff'),'b':list('aaaabbbbcccc'),'c':np.random.randint(5,size=12),'d':np.random.randint(9,size=12)})id_list=["a","b","c"]这会产生一个错误df.quer

python - Django 1.2 等效于 QuerySet.query.as_sql()

在Django1.1中,我能够使用以下符号生成QuerySet使用的SQL:QuerySet.query.as_sql()在Django1.2中,这引发为AttributeError。有人知道Django1.2中与该方法等效的方法吗?谢谢 最佳答案 在Django1.1中,QuerySet.query返回一个BaseQuery对象,现在返回一个Query对象。查询对象定义了一个返回SQL的__str__方法。 关于python-Django1.2等效于QuerySet.query.as_

python - 使用 scipy.optimize 和 loglikelihood 查找 beta 二项式分布的 alpha 和 beta

如果成功概率p在二项式分布中具有形状参数α>0和β>0。形状参数定义成功的概率。我想找到α和β的值,它们从beta二项分布的角度最能描述我的数据。我的数据集players包含有关命中次数(H)、击球次数(AB)和转换次数(H/AB)很多棒球运动员。我借助JulienD在BetaBinomialFunctioninPython中的回答估算了PDFfromscipy.specialimportbetafromscipy.miscimportcombpdf=comb(n,k)*beta(k+a,n-k+b)/beta(a,b)接下来,我编写了一个我们将最小化的对数似然函数。defloglik