logo
專注油氣領域
與獨立思考者同行

采收率算不準?來試試人工神經網絡模型(下)

采收率算不準?來試試人工神經網絡模型(下)

摘要:人工神經網絡(ANN)是目前最為炙手可熱的建模方法,如何用它來計算采收率?效果又會如何呢?本文将為您介紹ANN原油采收率模型的詳細内容。

編譯丨TOM

在構建ANN時,存在兩個重要的未知因素:隐藏層的數量、模型中包含的神經元數量。常用方法是使ANN盡可能的簡單。對于大多數問題,一個隐藏層就足夠了。利用數據質量良好的數據集,就可以使神經元的數量最小化,使它們小于或等于模型的輸入數(計算原油采收率需要5個輸入數)。

不幸的是,研究發現,當使用少量神經元(小于等于5)時,ANN無法處理采收率問題。具體而言,由于神經元數量較低,該神經網絡無法模拟出高采收率與低采收率的趨勢,如下圖所示。

采收率算不準?來試試人工神經網絡模型(下)

由于神經網絡在擁有少量神經元的情況下,很難找到一個能夠涵蓋所有采收率的最優解,因此建立并評估了多個ANN模型。目标是找出最佳數量的神經元,以生成一個神經網絡。該神經網絡産生的數值,需要能夠涵蓋所有采收率。下圖展示了使用不同數量神經元構建的ANN的斜率以及R2相關因子(實際采收率與ANN模拟采收率)。

采收率算不準?來試試人工神經網絡模型(下)

在斟酌ANN中神經元的數量時,需要注意的是,數據可能會被過度拟合。神經網絡訓練是将數據拟合到複雜數學函數的過程。如果使用大量神經元,函數會過于精确地拟合訓練數據。那麼,當獨立數據(盲測試數據)在ANN中運行時,結果可能會不夠理想。

其原因是,由于神經網絡過于複雜,它已不再是訓練數據中的泛化模式,而是變成了查表模式。在這種情況下,ANN基本上重新生成了訓練中使用的輸入-輸出結果,根本無法準确處理數據表外的新輸入數據。牢記這一點,砂岩油藏的最終ANN原油采收率模型,是用十個神經元構建與訓練的。

砂岩油藏

下圖展示了砂岩油藏實際采收率與ANN模型基于訓練與盲測數據生成的采收率之間的對比:

采收率算不準?來試試人工神經網絡模型(下)

砂岩油藏:

1、ANN中擁有10個非線性神經元;
2、數據集:264個油藏;
3、訓練/盲測:218/46;
4、在訓練階段,随機抽取訓練數據集的20%來進行驗證檢查;
5、盲測數據集不是訓練的一部分;
6、代表正負25%變化的線。

ANN原油采收率模型經過訓練之後,70%ANN計算出的采收率在實際值的正負 25%之内。

所得到的代表砂岩油藏ANN原油采收率模型的方程如下圖所示。砂岩油藏ANN原油采收率模型中使用的參數範圍如下:

1、原始儲量:10至55000百萬桶;
2、滲透率:0.6至7000毫達西;
3、産層厚度:10至1800英尺;
4、孔隙度:5%至35%;
5、原油比重:15°至55°API;
6、原油粘度:0.1cp至88cp。

采收率算不準?來試試人工神經網絡模型(下)

使用上述範圍之外的輸入數據,可能會産生不合理的結果。謹記,即使使用上述範圍内的輸入數據,也可能産生不合理的結果,因為沒有足夠的訓練數據,來涵蓋所有可能的輸入組合。

舉例分析ANN原油采收率模型的計算。某個砂岩水驅油藏擁有以下性質:原始儲量為一千萬桶;滲透率為10毫達西;産層厚度為50英尺;孔隙度為20%;原油API為35°;粘度為0.13cp,計算得到的采收率為34.5%。

若使用ANN原油采收率模型時,缺失了相關參數數據,則可以使用缺失參數的平均值來進行有效的模拟。對于砂岩油藏數據集,平均值如下:Log(原始儲量)為2.6524、Log(滲透率)為4.3573、Log(粘度)為0.2167、Log(孔隙度)為3.2745、原油API比重為33.5。如果缺少多項參數,則不應使用ANN原油采收率模型。

結論

本文建立了砂岩油藏采收率的人工神經網絡模型。該模型70%的預測結果都是在實際采收率的正負25%變化範圍内。

盡管看似合理,但結果仍然存在很大差異。這種差異性來源于采收率的所有相關因素,也是輸入數據的可變性以及取平均值帶來的後果。

與所有采收率計算方法的情況一緻,應謹慎使用ANN原油采收率模型生成的結果,并且需要與其他技術進行核對。

利用人工神經網絡來構建預測采收率的通用模型,ANN原油采收率模型邁出了第一步。下一步是增加訓練數據集的大小,并進一步細化訓練數據。

For English, Please click here (展開/收縮)

未經允許,不得轉載本站任何文章:

評論 1

  1. #1

    25%的誤差等于基本是個坑,不算憑經驗也不會有10%的誤差。這個适合搞數學的提供一個模型結果,當作技術含量吧。

    匿名2周前 (10-02)回複