能源大數(shù)據(jù)分析理論與實(shí)踐 課件 10.煤炭大數(shù)據(jù)案例_第1頁
能源大數(shù)據(jù)分析理論與實(shí)踐 課件 10.煤炭大數(shù)據(jù)案例_第2頁
能源大數(shù)據(jù)分析理論與實(shí)踐 課件 10.煤炭大數(shù)據(jù)案例_第3頁
能源大數(shù)據(jù)分析理論與實(shí)踐 課件 10.煤炭大數(shù)據(jù)案例_第4頁
能源大數(shù)據(jù)分析理論與實(shí)踐 課件 10.煤炭大數(shù)據(jù)案例_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

煤炭大數(shù)據(jù)分析案例10CaseofCoalBigDataAnalysis10.1煤炭類型識(shí)別

案例描述:通過識(shí)別煤炭的類型,可以幫助礦工和科學(xué)家更好地了解煤炭的特性和用途,若將煤炭類型自動(dòng)識(shí)別技術(shù)應(yīng)用于機(jī)器,則可以實(shí)現(xiàn)對(duì)煤炭的自動(dòng)識(shí)別與揀選。本案例描述了如何使用卷積神經(jīng)網(wǎng)絡(luò)(CNN)來實(shí)現(xiàn)煤炭類型的自動(dòng)識(shí)別。本案例采用的數(shù)據(jù)集為4類煤炭的圖片數(shù)據(jù)集,包括無煙煤(Anthracite)、煙煤(Bituminous)、褐煤(Lignite)和泥煤(Peat),數(shù)據(jù)來源于Kaggle。10.1.2實(shí)現(xiàn)步驟CNN模型的訓(xùn)練共包含7步。步驟1:數(shù)據(jù)收集和準(zhǔn)備。收集煤炭圖片數(shù)據(jù)集,確保每個(gè)類別都有足夠數(shù)量的圖片。將數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集,通常可以將20%或30%的數(shù)據(jù)作為測(cè)試集。步驟2:數(shù)據(jù)預(yù)處理。對(duì)圖片進(jìn)行預(yù)處理,包括調(diào)整圖片大小、歸一化像素值等,可以通過Python的圖片處理庫(OpenCV)來完成。步驟3:建立CNN模型。使用Python的深度學(xué)習(xí)框架(TensorFlow)建立CNN模型。CNN模型應(yīng)包括卷積層、池化層和全連接層,以及適當(dāng)?shù)募せ詈瘮?shù)(如ReLU)和正則化技術(shù)(Dropout)。步驟4:模型訓(xùn)練。使用訓(xùn)練集對(duì)CNN模型進(jìn)行訓(xùn)練,通過將圖片數(shù)據(jù)傳遞給模型并提供相應(yīng)的標(biāo)簽,模型將學(xué)習(xí)如何區(qū)分不同類型的煤炭。步驟5:模型評(píng)估。使用測(cè)試集評(píng)估訓(xùn)練后的CNN模型的性能,計(jì)算準(zhǔn)確率、精確率、召回率等指標(biāo),以衡量模型在識(shí)別不同煤炭類型方面的表現(xiàn)。步驟6:模型優(yōu)化(可選)。根據(jù)評(píng)估結(jié)果,可能需要調(diào)整CNN模型的超參數(shù),如學(xué)習(xí)率、層數(shù)、卷積核大小等,以獲得更好的性能。步驟7:預(yù)測(cè)新數(shù)據(jù)。當(dāng)CNN模型完成訓(xùn)練并優(yōu)化后,可以使用它來預(yù)測(cè)新的煤炭圖片類型。將新的煤炭圖片輸入模型,并獲取模型的預(yù)測(cè)結(jié)果。10.1.3程序?qū)崿F(xiàn)與結(jié)果分析首先需要導(dǎo)入CNN模型使用的包,os用于識(shí)別文件路徑,cv2用來讀取和處理圖片文件,pickle用于存儲(chǔ)和讀取數(shù)據(jù)(也可不使用),keras用于建立CNN模型。importnumpyasnpimportmatplotlib.pyplotaspltimportosimportcv2importpicklefromtensorflowimportkerasfromkeras.modelsimportSequentialfromkeras.layersimportDense,Activation,Flatten,Conv2D,MaxPooling2Dimportrandom10.1.3程序?qū)崿F(xiàn)與結(jié)果分析對(duì)所有圖片數(shù)據(jù)進(jìn)行預(yù)處理,將所有圖片處理成IMG_SIZE定義的像素大小的灰度圖片。DATADIR="Coal_Classification"CATEGPRIES=["Anthracite","Bituminous","Lignite","Peat"]IMG_SIZE=50training_data=[]defcreate_training_data():forcategoryinCATEGPRIES:path=os.path.join(DATADIR,category)class_num=CATEGPRIES.index(category)forimginos.listdir(path):try:img_array=cv2.imread(os.path.join(path,img),cv2.IMREAD_GRAYSCALE)new_array=cv2.resize(img_array,(IMG_SIZE,IMG_SIZE))training_data.append([new_array,class_num])exceptExceptionase:passcreate_training_data()10.1.3程序?qū)崿F(xiàn)與結(jié)果分析然后打亂圖片數(shù)據(jù)集的順序,對(duì)所有圖片提取特征(像素值)和標(biāo)簽,將數(shù)據(jù)序列化,并保存為X.pickle、y.pickle二進(jìn)制文件。random.shuffle(training_data)X=[]y=[]forfeatures,labelintraining_data:X.append(features)y.append(label)pickle_out=open('X.pickle',"wb")pickle.dump(X,pickle_out)pickle_out.close()pickle_out=open('y.pickle',"wb")pickle.dump(y,pickle_out)pickle_out.close()10.1.3程序?qū)崿F(xiàn)與結(jié)果分析加載X.pickle、y.pickle數(shù)據(jù),利用Keras框架建立CNN模型,訓(xùn)練CNN模型。模型結(jié)構(gòu)中采用了128個(gè)3×3的卷積核,模型結(jié)構(gòu)并不是固定的,可以根據(jù)訓(xùn)練效果對(duì)卷積層進(jìn)行增加或減少。Flatten后建立一個(gè)128個(gè)神經(jīng)元的隱藏層(使用ReLU激活函數(shù)),輸出層為4個(gè)神經(jīng)元(使用Sigmoid型激活函數(shù))。模型訓(xùn)練中使用SGD算法進(jìn)行參數(shù)更新,其中學(xué)習(xí)率設(shè)置為0.05,將20%的數(shù)據(jù)作為驗(yàn)證集。最后進(jìn)行繪圖。X=pickle.load(open('X.pickle','rb'))y=pickle.load(open('y.pickle','rb'))X=np.array(X).reshape(-1,IMG_SIZE,IMG_SIZE,1)y=keras.utils.to_categorical(np.array(y))X=X/255.0model=Sequential()model.add(Conv2D(128,(3,3),input_shape=X.shape[1:]))model.add(Activation('relu'))model.add(MaxPooling2D(pool_size=(2,2)))model.add(Conv2D(128,(3,3)))model.add(Activation('relu'))model.add(MaxPooling2D(pool_size=(2,2)))model.add(Flatten())model.add(Dense(128))10.1.3程序?qū)崿F(xiàn)與結(jié)果分析model.add(Activation('relu'))model.add(Dense(4))model.add(Activation('sigmoid'))sgd=keras.optimizers.SGD(learning_rate=0.05)pile(loss='categorical_crossentropy',optimizer=sgd,metrics=['accuracy'])history=model.fit(X,y,batch_size=10,epochs=30,validation_split=0.2)model.save('model_cnn.h5')loss=history.history['loss']val_loss=history.history['val_loss']plt.plot(loss,label='loss')plt.plot(val_loss,label='val_loss')plt.title('modelloss')plt.ylabel('loss')plt.xlabel('epoch')plt.legend(['train','valid'],loc='upperleft')plt.savefig('./loss.png')10.1.3程序?qū)崿F(xiàn)與結(jié)果分析model.save('model_cnn.h5')的作用是將模型結(jié)構(gòu)和訓(xùn)練結(jié)果存儲(chǔ)為H5類型的文件,需要安裝好h5py包,才能正常運(yùn)行該行代碼。h5py包是Python中用于讀取和寫入HDF5文件格式數(shù)據(jù)的軟件包,HDF5指的是層次型數(shù)據(jù)格式,主要用于存儲(chǔ)和管理大數(shù)據(jù)集和復(fù)雜數(shù)據(jù)對(duì)象。這種存儲(chǔ)模型的方式既可以存儲(chǔ)神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),又可以存儲(chǔ)訓(xùn)練結(jié)果。訓(xùn)練完成后,可以使用存儲(chǔ)的H5類型的文件進(jìn)行新的應(yīng)用。CNN模型的訓(xùn)練結(jié)果如圖

10-1所示。可以看出,在訓(xùn)練集上CNN模型的準(zhǔn)確率可以達(dá)到90%以上,而在驗(yàn)證集上并不理想,這主要是驗(yàn)證集的樣本量不足導(dǎo)致的。圖10-1CNN模型的訓(xùn)練結(jié)果10.1.3程序?qū)崿F(xiàn)與結(jié)果分析訓(xùn)練完成后,可以加載CNN模型,利用CNN模型對(duì)新的圖片進(jìn)行識(shí)別分類,并輸出分類結(jié)果。本案例中建立了名為to_predict_Bituminous的文件夾,隨機(jī)挑選幾張煙煤圖片(復(fù)制幾張圖片粘貼于to_predict_Bituminous文件夾即可),加載模型并進(jìn)行預(yù)測(cè),代碼如下。fromkeras.modelsimportload_modelimportnumpyasnpimportcv2importosIMG_SIZE=50DATADIR="Coal_Classification"CATEGPRIES=["Anthracite","Bituminous","Lignite","Peat"]model=load_model('model_cnn.h5')predict_imgs=[]DATADIR="Coal_Classification"path=os.path.join(DATADIR,"to_predict_Bituminous")10.1.3程序?qū)崿F(xiàn)與結(jié)果分析forimginos.listdir(path):try:img_predict_array=cv2.imread(os.path.join(path,img),cv2.IMREAD_GRAYSCALE)#將圖片的大小統(tǒng)一為50像素×50像素new_array=cv2.resize(img_predict_array,(IMG_SIZE,IMG_SIZE))predict_imgs.append(new_array)exceptExceptionase:passpredict_imgs=np.array(predict_imgs).reshape(-1,IMG_SIZE,IMG_SIZE,1)predict_imgs=predict_imgs/255.0predict=model.predict(predict_imgs)print('5張煙煤圖片的識(shí)別結(jié)果為:')forpredict_iinpredict:print("概率為%.3f,判斷為%s"%(max(predict_i),CATEGPRIES[np.argmax(predict_i)]))10.2煤礦地震預(yù)測(cè)案例描述煤礦開采是一項(xiàng)非常危險(xiǎn)的作業(yè),如易燃?xì)怏w積聚、巖石爆炸和隧道坍塌等,安全問題對(duì)煤礦生產(chǎn)影響巨大。因此,礦業(yè)公司必須考慮并盡可能規(guī)避這些危險(xiǎn),為礦工提供安全的工作條件。其中一類危險(xiǎn)被稱為“煤礦地震”或“煤礦誘發(fā)地震”,這是采煤活動(dòng)引起的地下巖層應(yīng)力重新分布和釋放導(dǎo)致的,會(huì)危害礦工安全和造成設(shè)備損壞。但是,煤礦地震一般難以有效防范,甚至難以確定性地預(yù)測(cè)。當(dāng)前,預(yù)測(cè)煤礦地震是機(jī)器學(xué)習(xí)和預(yù)測(cè)分析領(lǐng)域的一個(gè)難題。10.2.2模型方法與數(shù)據(jù)集本案例的目標(biāo)是使用Logistic回歸算法來預(yù)測(cè)地震中的能量讀數(shù)和撞擊次數(shù)是否會(huì)導(dǎo)致嚴(yán)重的地震危險(xiǎn)并評(píng)估其預(yù)測(cè)準(zhǔn)確性,以驗(yàn)證Logistic回歸算法在解決這一問題上的效果。本案例使用了UCI機(jī)器學(xué)習(xí)庫中一個(gè)名為“SeismicBumps”的數(shù)據(jù)集,其中包含大量的記錄,涵蓋各種分類和數(shù)值變量,可用于預(yù)測(cè)煤礦地震。這些數(shù)據(jù)來自波蘭的Zabrze-Bielszowice煤礦的儀器,總共包括2584個(gè)記錄。建立數(shù)據(jù)集的目的是使用一個(gè)工作班次期間的能量讀數(shù)和撞擊計(jì)數(shù)來預(yù)測(cè)下一個(gè)工作班次期間是否會(huì)發(fā)生“危險(xiǎn)性撞擊”。在這里,被定義為“危險(xiǎn)性撞擊”的事件是指地震事件的能量大于10000J,并且一個(gè)工作班次是指一個(gè)8小時(shí)的時(shí)間段。數(shù)據(jù)集中主要包含18個(gè)輸入變量(特征)和1個(gè)二進(jìn)制輸出變量(標(biāo)簽),其說明如表

10-1所示。序號(hào)特征或標(biāo)簽變量說明1seismic表示通過地震方法獲得的礦山工作中的班次地震危險(xiǎn)評(píng)估結(jié)果,包含4個(gè)可能的值,分別表示不同的危險(xiǎn)程度:a—無危險(xiǎn),b—低危險(xiǎn),c—高危險(xiǎn),d—危險(xiǎn)狀態(tài)2seismoacoustic表示通過聲波地震方法獲得的礦山工作中的班次地震危險(xiǎn)評(píng)估結(jié)果,包含4個(gè)可能的值,分別表示不同的危險(xiǎn)程度:a—無危險(xiǎn),b—低危險(xiǎn),c—高危險(xiǎn),d—危險(xiǎn)狀態(tài)3shift表示班次類型的信息,其中W代表采煤班次,N代表準(zhǔn)備班次4genergy表示前一個(gè)班次中由最活躍的地震儀(GMax)記錄的地震能量5gpuls表示前一個(gè)班次中GMax記錄的地震脈沖的數(shù)量6gdenergy表示了前一個(gè)班次中GMax記錄的能量與前八個(gè)班次中平均能量的差異7gdpuls表示前一個(gè)班次中GMax記錄的脈沖數(shù)量與前八個(gè)班次中平均脈沖數(shù)量的差異8ghazard表示僅基于來自GMax的記錄通過聲波地震方法獲得的礦山工作中的班次地震危險(xiǎn)評(píng)估結(jié)果9nbumps表示前一個(gè)班次中記錄的地震撞擊的數(shù)量10nbumps2表示前一個(gè)班次中記錄的撞擊能量在范圍[102,103)內(nèi)的地震數(shù)量11nbumps3表示前一個(gè)班次中記錄的撞擊能量在范圍[103,104)內(nèi)的地震數(shù)量12nbumps4表示前一個(gè)班次中記錄的撞擊能量在范圍[104,105)內(nèi)的地震數(shù)量13nbumps5表示前一個(gè)班次中記錄的撞擊能量在范圍[105,106)內(nèi)的地震數(shù)量14nbumps6表示前一個(gè)班次中記錄的撞擊能量在范圍[106,107)內(nèi)的地震數(shù)量15nbumps7表示前一個(gè)班次中記錄的撞擊能量在范圍[107,108)內(nèi)的地震數(shù)量16nbumps89表示前一個(gè)班次中記錄的撞擊能量在范圍[108,1010)內(nèi)的地震數(shù)量17energy表示前一個(gè)班次中記錄的地震撞擊的總能量18maxenergy表示前一個(gè)班次中記錄的地震撞擊的最大能量19class數(shù)據(jù)集的標(biāo)簽,其中“1”表示在下一個(gè)班次中發(fā)生了高能量地震撞擊(被認(rèn)為是“危險(xiǎn)狀態(tài)”),而“0”表示在下一個(gè)班次中沒有發(fā)生高能量地震撞擊(被認(rèn)為是“非危險(xiǎn)狀態(tài)”)表10-1數(shù)據(jù)集的特征和標(biāo)簽說明10.1.3程序?qū)崿F(xiàn)與結(jié)果分析(1)數(shù)據(jù)集明顯具有不均衡性,存在地震可能的記錄明顯少于正常情況,因此需要考慮對(duì)不均衡數(shù)據(jù)進(jìn)行處理,以提升模型預(yù)測(cè)的準(zhǔn)確性,原因在于Logistic回歸算法對(duì)樣本不均衡比較敏感。Logistic回歸算法采用經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化作為模型的學(xué)習(xí)準(zhǔn)則,即它的優(yōu)化目標(biāo)是最小化模型在訓(xùn)練集上的平均損失,這種算法天然地會(huì)將關(guān)注點(diǎn)更多地放在多數(shù)類別的擬合情況上,因?yàn)槎鄶?shù)類別的分類正確與否,更加影響最終的整體損失情況。而在樣本不均衡的建模任務(wù)中,人們常常更關(guān)注的是少數(shù)類別的分類正確與否,這就導(dǎo)致實(shí)際的建模目標(biāo)和模型本身的優(yōu)化目標(biāo)是不一致的。10.1.3程序?qū)崿F(xiàn)與結(jié)果分析(2)處理樣本不均衡問題的方法一般分為兩種:權(quán)重法和采樣法。權(quán)重法分為類別權(quán)重法和樣本權(quán)重法。類別權(quán)重法將權(quán)重加在類別上,若類別的樣本量多,則類別的權(quán)重設(shè)低一些,反之類別的權(quán)重設(shè)高一些;樣本權(quán)重法的權(quán)重加在樣本上,若類別的樣本量多,則其每個(gè)樣本的權(quán)重低,反之每個(gè)樣本的權(quán)重高。采樣法可以分為上采樣(或過采樣)、下采樣(或子采樣)。上采樣對(duì)樣本量少的類別進(jìn)行采樣,直到和樣本量多的類別量級(jí)差不多,SMOTE(SyntheticMinorityOver-samplingTechnique)是一種流行的過采樣方法之一,它通過在少數(shù)類別樣本之間合成新的樣本來增加樣本量,從而均衡數(shù)據(jù)集;下采樣對(duì)樣本量多的類別進(jìn)行采樣,直到和樣本量少的類別量級(jí)差不多。10.2.3程序?qū)崿F(xiàn)與結(jié)果分析1)數(shù)據(jù)的導(dǎo)入與清洗首先需要導(dǎo)入相關(guān)的庫,然后使用arff.loadarff()函數(shù)加載剛剛下載的ARFF文件,這將返回兩個(gè)值:data和meta,data是包含數(shù)據(jù)的結(jié)構(gòu)化對(duì)象,meta是與數(shù)據(jù)相關(guān)的元數(shù)據(jù)(如特征信息)。使用pandas庫創(chuàng)建一個(gè)DataFrame對(duì)象df,將data中的數(shù)據(jù)轉(zhuǎn)換為DataFrame,使數(shù)據(jù)更容易分析和處理。將數(shù)據(jù)集中的類別變量轉(zhuǎn)化為數(shù)值變量,這里使用Scikit-Learn(sklearn)庫中的LabelEncoder類來將類別變量轉(zhuǎn)換為標(biāo)簽編碼。通過調(diào)用fit_transform方法,將每列中的類別變量轉(zhuǎn)換為標(biāo)簽編碼形式。數(shù)據(jù)的導(dǎo)入與清洗代碼如下defETL_data():data,meta=arff.loadarff("seismic-bumps.arff")df=pd.DataFrame(data)label_encoder=LabelEncoder()df['seismic']=label_encoder.fit_transform(df['seismic'])df['seismoacoustic']=label_encoder.fit_transform(df['seismoacoustic'])df['shift']=label_encoder.fit_transform(df['shift'])df['ghazard']=label_encoder.fit_transform(df['ghazard'])mlb=MultiLabelBinarizer()df['class']=mlb.fit_transform(df['class'])returndf10.2.3程序?qū)崿F(xiàn)與結(jié)果分析2)Logistic回歸模型訓(xùn)練創(chuàng)建特征變量和目標(biāo)變量的數(shù)據(jù)集,特征變量X定義為df中除'class'列外的所有其他列,使用drop方法從df中刪除'class'列,目標(biāo)變量y定義為'class'列。將數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集。使用train_test_split函數(shù)從特征變量X和目標(biāo)變量y中創(chuàng)建4個(gè)數(shù)據(jù)集:X_train(訓(xùn)練集特征)、X_test(測(cè)試集特征)、y_train(訓(xùn)練集目標(biāo))、y_test(測(cè)試集目標(biāo))。10.2.3程序?qū)崿F(xiàn)與結(jié)果分析2)Logistic回歸模型訓(xùn)練test_size=0.2表示將數(shù)據(jù)集劃分成80%的訓(xùn)練集和20%的測(cè)試集。這是一種常見的劃分比例,但可以根據(jù)需要進(jìn)行調(diào)整。LogisticRegression方法中penalty是正則化選項(xiàng),主要有兩種:“l(fā)1”和“l(fā)2”,默認(rèn)為“l(fā)2”;C是正則化系數(shù)的倒數(shù),其值越小,正則化越強(qiáng),通常默認(rèn)為1;solver用來指定Logistic回歸的優(yōu)化方法,liblinear表示使用坐標(biāo)軸下降法來迭代優(yōu)化損失函數(shù),也可以選擇其他方法;max_iter用來設(shè)置最大的迭代次數(shù);random_state是隨機(jī)種子,用于確保每次運(yùn)行代碼時(shí)都獲得相同的隨機(jī)劃分。10.2.3程序?qū)崿F(xiàn)與結(jié)果分析deftrain_and_predict(df):X=df.drop('class',axis=1)y=df['class']X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3,random_state=42)model=LogisticRegression(penalty='l2',C=1.0,solver='liblinear',max_iter=100,random_state=42)model.fit(X_train,y_train)y_pred=model.predict(X_test)accuracy=accuracy_score(y_test,y_pred)print(f"準(zhǔn)確率:{accuracy:.2f}")print(classification_report(y_test,y_pred))10.2.3程序?qū)崿F(xiàn)與結(jié)果分析defsmote_train_predict(df):X=df.drop('class',axis=1)y=df['class']oversampler=SMOTE(sampling_strategy=0.5,random_state=0)os_features,os_labels=oversampler.fit_resample(X,y)counter=Counter(os_labels)print(counter)X_train_smote_sample,X_test_smote_sample,y_train_smote_sample,y_test_smote_sample=\train_test_split(os_features,os_labels,test_size=0.3,random_state=0)model=LogisticRegression(penalty='l2',C=1,solver='liblinear',max_iter=100,random_state=0)model.fit(X_train_smote_sample,y_train_smote_sample)y_pred=model.predict(X_test_smote_sample)accuracy=accuracy_score(y_test_smote_sample,y_pred)print(f"準(zhǔn)確率:{accuracy:.2f}")print(classification_report(y_test_smote_sample,y_pred))上述代碼未對(duì)不均衡數(shù)據(jù)進(jìn)行處理,可以使用SMOTE方法對(duì)不均衡數(shù)據(jù)進(jìn)行處理,代碼如下。10.2.3程序?qū)崿F(xiàn)與結(jié)果分析defsmote_train_predict(df):X=df.drop('class',axis=1)y=df['class']oversampler=SMOTE(sampling_strategy=0.5,random_state=0)os_features,os_labels=oversampler.fit_resample(X,y)counter=Counter(os_labels)print(counter)X_train_smote_sample,X_test_smote_sample,y_train_smote_sample,y_test_smote_sample=\train_test_split(os_features,os_labels,test_size=0.3,random_state=0)model=LogisticRegression(penalty='l2',C=1,solver='liblinear',max_iter=100,random_state=0)model.fit(X

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論