99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀實(shí)現(xiàn)數(shù)據(jù)科學(xué)研究結(jié)果可復(fù)制的十條規(guī)則
實(shí)現(xiàn)數(shù)據(jù)科學(xué)研究結(jié)果可復(fù)制的十條規(guī)則
2017-11-18
收藏

實(shí)現(xiàn)數(shù)據(jù)科學(xué)研究結(jié)果可復(fù)制的十條規(guī)則

一群科研人員在一篇論文中,講述了可復(fù)現(xiàn)性計(jì)算研究的十條規(guī)則。如果遵循這些規(guī)則,應(yīng)該會(huì)產(chǎn)生更具可復(fù)現(xiàn)性的結(jié)果。

所有的數(shù)據(jù)科學(xué)都是研究。僅僅因?yàn)檠芯拷Y(jié)果沒有發(fā)表在學(xué)術(shù)論文中,這不會(huì)改變我們試圖從龐雜數(shù)據(jù)中獲取洞見的事實(shí)。因此,對于任何從事內(nèi)部分析的數(shù)據(jù)科學(xué)家來說,那篇論文中的十條規(guī)則都應(yīng)該引起重視。

規(guī)則1:對于每個(gè)結(jié)果,都要記錄它的產(chǎn)生過程
知道研究結(jié)果的產(chǎn)生過程很重要。知道你如何從原始數(shù)據(jù)中得出該結(jié)論,這可以讓你:
為結(jié)果辯護(hù)
發(fā)現(xiàn)錯(cuò)誤時(shí)修改結(jié)果
在數(shù)據(jù)更新時(shí)復(fù)現(xiàn)結(jié)果
提交結(jié)果以供評審
如果你使用一種編程語言(R、Python、Julia、F#等等)來編寫你的分析腳本,那么過程應(yīng)該是清晰明了的,前提是避免了任何的手動(dòng)步驟。如果使用“鼠標(biāo)點(diǎn)擊”工具(比如Excel),這會(huì)使你更難記錄步驟,因?yàn)槟惚仨毭枋鲆幌盗惺謩?dòng)操作,而手動(dòng)操作很難記錄和復(fù)現(xiàn)。
規(guī)則2:避免手動(dòng)數(shù)據(jù)操作步驟
你可能很想在編輯器中打開數(shù)據(jù)文件,手動(dòng)修改格式錯(cuò)誤或者刪除異常值。而且,現(xiàn)代的操作系統(tǒng)使你可以輕松地剪切和粘貼應(yīng)用。然而,你應(yīng)該抵擋住這種走捷徑的誘惑。手動(dòng)數(shù)據(jù)操作是無法顯示蹤跡的操作。
規(guī)則3:存檔你使用的所有外部程序的準(zhǔn)確版本
理想情況下,你應(yīng)該創(chuàng)建一個(gè)包含所有腳本運(yùn)行軟件的虛擬機(jī)。這使你可以生成分析生態(tài)系統(tǒng)的快照,輕松實(shí)現(xiàn)結(jié)果的可復(fù)現(xiàn)性。
不過,這并不總是可行。例如,如果你使用云服務(wù),或者你分析的數(shù)據(jù)集非常龐大,那么你很難圈定整個(gè)環(huán)境進(jìn)行存檔。另外,商業(yè)工具的使用可能使你難以和其他人分享這樣的一個(gè)環(huán)境。
至少,你必須記錄你使用的所有軟件的版本,包括操作系統(tǒng)的版本。軟件的任何細(xì)微變化都可能影響到結(jié)果。
規(guī)則4:記錄所有自定義腳本的版本
應(yīng)該使用版本控制系統(tǒng)(比如Git)來記錄腳本的版本。你應(yīng)該標(biāo)記(快照)多個(gè)腳本,并在你產(chǎn)生的任何結(jié)果中索引那個(gè)標(biāo)記。這樣一來,如果你后來決定修改腳本(你肯定會(huì)這么做),你就可以及時(shí)找到產(chǎn)生特定結(jié)果的確切腳本。
規(guī)則5:盡量用標(biāo)準(zhǔn)格式記錄所有的中間結(jié)果
如果你遵循了規(guī)則1,應(yīng)該就有可能從原始數(shù)據(jù)中重現(xiàn)任何結(jié)果。不過,雖然這在理論上是可能的,但在實(shí)踐中存在種種限制。問題可能包括:
缺乏從頭開始運(yùn)行結(jié)果的資源(比如使用了大量的集群計(jì)算資源)
使用了商業(yè)工具,但沒有某些工具的授權(quán)
使用某些工具的技術(shù)能力不足
在這些情況下,從原始數(shù)據(jù)的派生數(shù)據(jù)集著手不失為明智之舉。這些中間數(shù)據(jù)集(比如CSV格式數(shù)據(jù))提供了更多的分析選擇,并且在出錯(cuò)的時(shí)候,更容易識別有問題的結(jié)果,不必重頭來過。
規(guī)則6:對于帶有隨機(jī)性的分析,要記錄潛在的隨機(jī)種子
數(shù)據(jù)科學(xué)家常常沒有為他們的分析設(shè)置種子值,因此不可能準(zhǔn)確復(fù)現(xiàn)機(jī)器學(xué)習(xí)研究。很多機(jī)器學(xué)習(xí)算法都包含隨機(jī)成分,雖然強(qiáng)勁的結(jié)果可能在統(tǒng)計(jì)上是可復(fù)現(xiàn)的,但沒什么能比得上與其他人產(chǎn)生的精確數(shù)據(jù)相一致。
如果你使用腳本和源代碼控制,你可以在腳本中設(shè)置種子值。
規(guī)則7:始終保存原始數(shù)據(jù)
如果你使用腳本/編程語言,圖表常常將自動(dòng)生成。但如果你使用Excel這樣的工具來繪制圖表,請確保你保存了原始數(shù)據(jù)。這使圖表可以復(fù)現(xiàn),也能對圖表背后的數(shù)據(jù)進(jìn)行更細(xì)致的檢查。
規(guī)則8:生成層次分析輸出結(jié)果,使越來越細(xì)致的層次可以被檢查
數(shù)據(jù)科學(xué)家的工作是以某種形式總結(jié)數(shù)據(jù),從數(shù)據(jù)中獲取洞見。
不過,總結(jié)也容易導(dǎo)致數(shù)據(jù)誤用,所以應(yīng)該讓相關(guān)方可以把總結(jié)分解成各個(gè)數(shù)據(jù)點(diǎn)。對于每個(gè)總結(jié)性結(jié)果,要與使用的數(shù)據(jù)聯(lián)系起來,以便對總結(jié)進(jìn)行推算。
規(guī)則9:把文本陳述和潛在結(jié)果聯(lián)系起來
歸根結(jié)底,數(shù)據(jù)分析的結(jié)果是以文字的形式呈現(xiàn),而文字是不精確的。有時(shí),結(jié)論和分析之間的聯(lián)系很難確定。由于論文常常是科研中最具影響力的部分,因此把論文和結(jié)果聯(lián)系起來至關(guān)重要,由于規(guī)則1的緣故,與原始數(shù)據(jù)聯(lián)系起來也很重要。
這可以通過在文本中添加腳注的方式來實(shí)現(xiàn)。腳注引用的文件或URL應(yīng)該包含引出論文中觀察發(fā)現(xiàn)的特定數(shù)據(jù)。如果你無法建立這種聯(lián)系,說明你可能沒有充分記錄所有步驟。
規(guī)則10:公開腳本、過程和結(jié)果
在商業(yè)環(huán)境中,可能不適合公開所有的數(shù)據(jù)。不過,向組織內(nèi)部的其他人公開數(shù)據(jù)是可以的?;谠频脑创a控制系統(tǒng),比如Bitbucket和GitHub,允許創(chuàng)建私密存儲(chǔ),任何獲得授權(quán)的同事都能訪問。
眾人的審視可以改善分析質(zhì)量,所以分享得越多,你的分析質(zhì)量就可能越高。


數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }