999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于TensorFlow.js前端機器學習進行線性回歸擬合及油井壓力預測研究

2020-04-08 16:15:44王鵬徐小輝肖萍李淑郭怡曉
中國管理信息化 2020年24期

王鵬 徐小輝 肖萍 李淑 郭怡曉

[摘 要]近年來,隨著人工智能技術的發展應用,機器學習的框架及研究工具逐漸成熟。其中,TensorFlow.js是由Google的AI團隊發布的一款基于硬件加速的JavaScript庫,用于訓練和部署機器學習,用戶在瀏覽器端就可以利用應用程序編程接口(Application Programming Interface,API)完成機器學習的基本任務。在油氣田開發領域中,產生的生產及分析數據具有數據量小、相關性強的特點,在機器學習過程中,大部分業務通過瀏覽器就能進行簡單的數據線性回歸、分類、目標識別、可視化等處理操作,具有簡單、快速、易學等特點。文章以線性回歸模型為例,對探井試油過程中的油管壓力數據采用前端機器學習方法進行線性回歸擬合,并實現壓力預測。

[關鍵詞]TensorFlow.js;前端機器學習;線性回歸;壓力預測

doi:10.3969/j.issn.1673 - 0194.2020.24.047

[中圖分類號]F270.7;TM715[文獻標識碼]A[文章編號]1673-0194(2020)24-0-02

0? ? ?引 言

油氣田開發領域建立了很多關系型數據庫,在進行探井或區塊業務分析過程中,實際使用的數據量并不大,不需要采用圖形處理器(Graphics Processing Unit,GPU)進行加速學習運算,在瀏覽器端就能營造一個回歸、神經網絡、長短期記憶網絡(Long Short-Term Memory,LSTM)等模型的訓練環境,讓用戶通過便捷的瀏覽器操作就能實現機器學習的整個過程,從而達到數據預測、分類、圖像識別等目的。

1? ? ?淺神經網絡和直線線性回歸擬合

神經網絡是機器學習中的一種模型,是一種模仿動物神經網絡行為特征,進行分布式并行信息處理的算法數學模型。這種網絡依靠系統的復雜程度,通過調整內部大量節點之間相互連接的關系,達到處理信息的目的。

淺神經網絡只包含一到兩層隱藏層,如圖1所示,包括輸入層、隱藏層和輸出層。神經元是神經網絡中的原子單元,給定神經元一個輸入x,它將得到對應的輸出a,并將其作為下一層的輸入。一個神經元可以認為是以下兩部分的結合:第一部分根據輸入和權重計算得到Z;第二部分在Z上施加激活函數得到神經元的最終輸出a。

直線線性回歸擬合是多項式曲線擬合的一個特例,即:一元一次多項式,由給定的一組數據點(xi,yi)去描繪直線y=w×x+b的近似圖像。直線擬合方法就是從給出的一大堆看上去雜亂無章的數據中找出規律,設法構造一條直線,反映所給數據點的趨勢,以消除所給數據的局部波動。TensorFlow.js就是通過訓練數據,實現一元線性回歸模型訓練,推測出線性回歸函數y=w×x+b中w和b的值,并通過驗證數據,驗證得到的函數是否符合預期。

2? ? ?TensorFlow.js前端機器學習的過程及方法

2.1? ?構建學習環境

在JavaScript項目中,TensorFlow.js的安裝方法有兩種:一種是通過script標簽引入;另外一種是通過npm安裝。

方法1:只需將以下腳本包含在html文件的header中即可自動加載最新版本的TensorFlow.js。其中,使用Script Tag如下。

方法2:使用yarn或npm將TensorFlow.js添加到您的項目中。注意:因為使用ES2017語法(如import),所以此工作流程假定您使用打包程序/轉換程序將代碼轉換為瀏覽器可以理解的內容。

yarn add @tensorflow/tfjs或npm install @tensorflow/tfjs

在js文件中輸入以下代碼:

import * as tf from '@tensorflow/tfjs';

2.2? ?準備訓練數據

訓練數據的初始化如下,這里tx是所有點數據的x坐標,ty是所有點數據的y坐標。

const train_x = tf.tensor1d(tx);

const train_y = tf.tensor1d(ty);

2.3? ?構建一個模型

TensorFlow.js有兩種創建機器學習的方法。

2.3.1? ?用Layers API創建模型

通過tf.model()創建LayersModel,這個方式適用于單獨測試每一層并檢查它們的輸出。

可以通過model.layers使用模型中的每一層,用model.inputLayers和model.outputLayers調用輸入層和輸出層。使用LayersModels讓驗證更方便:要求您定義輸入形狀,并用您定義的形狀驗證您對模型的輸入。LayersModel會自動計算模型中所有張量的形狀。知道張量的形狀后,模型可以自動創建需要的參數。

const input = tf.input({shape: [784]});

const dense1 = tf.layers.dense({units: 32, activation: 'relu'}).apply(input);

const dense2 = tf.layers.dense({units: 10, activation: 'softmax'}).apply(dense1);

const model = tf.model({inputs: input, outputs: dense2});

2.3.2? ?用Core API創建模型

用Core API創建的模型包含一系列函數。這些函數以一個或多個張量作為輸入,并輸出另一個張量。可以利用Core API定義的模型,創造自己的序列化方法。

const w = tf.variable(tf.scalar(Math.random()));

const b = tf.variable(tf.scalar(Math.random()));

function model(x) {return x.mul(w) .add(b);};

在Core API中,需要自己創建和初始化權重。每個權重都是一個Variable,TensorFlow.js會把Variable權重設為可訓練張量。可以用tf.variable()創建Variable或把一個已存在的張量放到Variable中。

2.4? ?訓練模型

一個訓練好的模型將提供從輸入數據到所需輸出數據的準確映射。訓練包含以下4個步驟:獲取一批數據到模型、根據模型得出預測值、對比預測值與真實值、確定每個參數的變更值,以便后期模型將來可以更好地預測該批次。

用Layers API創建的模型在訓練前必須先進行編譯,編譯LayersModel通過調用model.compile()與提供的優化器、損失函數、指標等選項,在編譯過程中,模型將進行一些驗證,以確保您選擇的選項彼此兼容,如下所示。

model.compile({optimizer:'sgd',loss: 'categoricalCrossentropy',metrics: ['accuracy']});

模型訓練則通過調用model.fit()方法實現,在后臺能自動對大的數據張量進行拆分調用,并將數據集分為訓練集和驗證集,且使用驗證集衡量訓練期間的進度,在計算有關數據批次的模型損失時調用optimizer.minimize()等各項操作,用法如下所示。

model.fit(xData,yData,{batchSize:20,epochs:5,});

用Core API創建的模型則需要用戶自行遍歷所有的批處理數,在每個批處理內,循環遍歷所有批次數據,在每個批次中,都會調用optimizer.minimize(),通過計算先前定義的變量梯度,實現最小化輸出,并通過模型定義的損失函數計算預測值和真實值的損失。

3? ? ?油井壓力實例預測

在準噶爾盆地南緣勘探井試油生產過程中,受到結蠟、含水、地層、產液量等因素影響,某勘探井的油管壓力在相同生產制度下隨著時間不斷變化,每天的數據有一定的波動性,需要采取線性回歸的方式進行后期穩定生產的壓力遞減預測。收集某一制度下油井的上千條壓力和時間數據,并將日期時間通過JavaScript內置函數Date()將日期處理轉換為時長作為xData進行訓練,該油井油壓數據小于100 MPa,因此可將油壓數據均除以100后進行歸一化處理,并作為yData進行訓練,以便在訓練過程中數據具有更好的收斂性。

4? ? 結 語

本文提出了一種基于TensorFlow.js前端機器學習進行油壓壓力預測的方法,該方法通過建立淺神經網絡模型,對歷史數據進行直線線性回歸擬合,對未來的壓力變化進行可靠預測。利用TensorFlow.js建立多層神經網絡模型,如Layers模型進行數據回歸分類,油氣井壓裂后實現產能預測;卷積神經網絡模型訓練圖像進行抽油機示功圖的智能識別等,在油氣田開發領域具有巨大的應用空間。

主要參考文獻

[1]J Schmidhuber.Deep Learning in Neural Networks:An Overview

[J].Neural Networks,2015,61:85-117.

[2]王全,梁敬文.基于TensorFlow的交通標志識別方法研究[J].價值工程,2019(27):204-206.

[3]劉巍,劉威,谷建偉.基于機器學習方法的油井日產油量預測[J].石油鉆采工藝,2020(1):70-75.

[4]彭巖,王萬森,王旭仁,等.基于機器學習的風險預測方法研究[J].計算機科學,2009(4):205-207.

[5]段澤英,肖春林,游莉,等.基于油田生產數據的油井生產趨勢預測方法研究[C]//2013數字與智能油氣田(國際)會議暨展會論文集,2013.

[6]游莉,肖春林,段澤英,等.基于油田生產數據的油井產量趨勢預測方法研究[J].中國管理信息化,2014(4):58-62.

主站蜘蛛池模板: 欧美午夜性视频| 色九九视频| 久久精品丝袜高跟鞋| 99re热精品视频国产免费| 久操线在视频在线观看| 亚洲欧美不卡视频| V一区无码内射国产| 国产成人精品高清不卡在线| 成人毛片免费在线观看| 日本免费一级视频| 国产成人精品一区二区三在线观看| 国产69精品久久久久孕妇大杂乱| 欧美亚洲中文精品三区| 欧美一区日韩一区中文字幕页| 亚洲另类色| 亚洲人成影院午夜网站| 欧美高清三区| 国产激情在线视频| 色爽网免费视频| 国产精品久久久久无码网站| 成人国产精品一级毛片天堂 | 欧美三级视频网站| 伊人激情综合网| 国产精品免费福利久久播放| 国产精品55夜色66夜色| 亚洲中文字幕97久久精品少妇| 一级毛片免费的| 亚洲国产成人麻豆精品| 国产精品思思热在线| 国产高清不卡| 国内精品手机在线观看视频| 亚洲色图欧美激情| 免费观看国产小粉嫩喷水| 欧美一区国产| 日韩欧美国产三级| 国产v精品成人免费视频71pao | 亚洲精品桃花岛av在线| 激情影院内射美女| 国产精品刺激对白在线| 久久人搡人人玩人妻精品| 久久久久国产一级毛片高清板| 农村乱人伦一区二区| 久久公开视频| 日本在线免费网站| 亚洲精品无码抽插日韩| 四虎影视无码永久免费观看| 国产欧美另类| 99久久精品国产精品亚洲| 在线观看欧美精品二区| a级毛片免费在线观看| 国产成人午夜福利免费无码r| 一级毛片a女人刺激视频免费| 天堂网亚洲综合在线| 91久久偷偷做嫩草影院免费看| 91年精品国产福利线观看久久| 日本成人一区| 欧美日本一区二区三区免费| 久久久黄色片| 亚洲一级毛片在线观| 欧美日韩国产精品va| 国产爽歪歪免费视频在线观看| 中文字幕不卡免费高清视频| 日韩精品一区二区三区中文无码 | 日韩欧美中文| 国产女同自拍视频| 国产高清在线丝袜精品一区| 日韩黄色大片免费看| 色综合成人| 欧美不卡视频在线观看| 精品久久蜜桃| 亚洲成在线观看| 九色视频在线免费观看| 制服丝袜一区| 99免费在线观看视频| 中文无码精品A∨在线观看不卡 | 99视频国产精品| 欧美伦理一区| 亚洲天堂2014| 亚洲AV成人一区国产精品| 国产91高跟丝袜| 超清无码熟妇人妻AV在线绿巨人| 午夜a级毛片|