3

相同的輸入在兩個情況下使用,但不同的結果從蟒模塊天青毫升實驗返回不同的結果比web服務

這裏返回是Python腳本,將結果返回給web服務:

import pandas as pd 
import sys 


    def get_segments(dataframe): 
    dataframe['segment']=dataframe['segment'].astype('str') 
    segments = dataframe.loc[~dataframe['segment'].duplicated()]['segment'] 
    return segments 


    def azureml_main(dataframe1 = None, dataframe2 = None): 

    df = dataframe1 
    segments = get_segments(df) 
    segmentCount =segments.size 

    if (segmentCount > 0) : 
     res = pd.DataFrame(columns=['segmentId','recommendation'],index=[range(segmentCount)]) 
    i=0  
    for seg in segments: 
     d= df.query('segment ==["{}"]'.format(seg)).sort(['count'],ascending=[0]) 

     res['segmentId'][i]=seg 
     recommendation='[' 
     for index, x in d.iterrows(): 
      item=str(x['ItemId']) 
      recommendation = recommendation + item + ',' 
     recommendation = recommendation[:-1] + ']' 
     res['recommendation'][i]= recommendation 
     i=i+1 
    else: 

     res = pd.DataFrame(columns=[seg,pdver],index=[range(segmentCount)]) 

return res, 

當在實驗它returnd實際itemIds,當在web服務返回一些數字

此代碼的目的是通過段列樞轉一些表建議

+0

嗨,這是不可能的只是在相同的輸入數據相同的模型中使用不同的消費方式返回不同的結果。正如你所說,它在webservice中使用模型時返回了一些數字,我猜它是否是一個像「539d0bc2fde945b6ac986b851d0000f0」這樣的作業id,請參閱[文章](https://azure.microsoft.com/en -us/documentation/articles/machine-learning-consume-web-services /)。 –

+0

事實並非如此,我得到了一個有效的答案(結構明智),但是它有不同的值 – marnun

回答

0

與微軟的產品團隊討論後。問題解決了。 產品團隊首先推出了對Web服務的更新,之後才推出了ML-Studio,它解決了「Execute python script」中的分類屬性問題。 該問題出現在流程的早期階段,與上面的python代碼無關。

+0

嗨,即時消息只有使用r腳本才具有相同的問題上下文。我實際上已經失去了問題的原因。現在,我的實驗結果正在產生我需要的結果。但是,當我去到web服務,即時獲取結果僅用於另一個ID。剛剛在SO上發佈了我的問題。 https://stackoverflow.com/questions/47545217/azure-machine-learning-web-service-produce-different-result-from-experiment-resu –

+0

@ArifSam,我建議你打開Azure支持票 – marnun