工業(yè)大數(shù)據(jù)與人工智能 第三章習(xí)題_第1頁(yè)
工業(yè)大數(shù)據(jù)與人工智能 第三章習(xí)題_第2頁(yè)
工業(yè)大數(shù)據(jù)與人工智能 第三章習(xí)題_第3頁(yè)
工業(yè)大數(shù)據(jù)與人工智能 第三章習(xí)題_第4頁(yè)
工業(yè)大數(shù)據(jù)與人工智能 第三章習(xí)題_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第三章習(xí)題答案什么是機(jī)器學(xué)習(xí)、深度學(xué)習(xí)、強(qiáng)化學(xué)習(xí)?答:機(jī)器學(xué)習(xí)是一門(mén)研究計(jì)算機(jī)怎樣模擬或?qū)崿F(xiàn)人類(lèi)的\t"/item/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/_blank"學(xué)習(xí)行為,以獲取新的知識(shí)或技能,重新組織已有的知識(shí)結(jié)構(gòu)使之不斷改善自身的性能。深度學(xué)習(xí)是指基于深層神經(jīng)網(wǎng)絡(luò)模型和方法的機(jī)器學(xué)習(xí)。強(qiáng)化學(xué)習(xí)是\t"/item/%E5%BC%BA%E5%8C%96%E5%AD%A6%E4%B9%A0/_blank"智能體(Agent)以“\t"/item/%E5%BC%BA%E5%8C%96%E5%AD%A6%E4%B9%A0/_blank"試錯(cuò)”的方式進(jìn)行學(xué)習(xí),通過(guò)與環(huán)境進(jìn)行交互獲得的\t"/item/%E5%BC%BA%E5%8C%96%E5%AD%A6%E4%B9%A0/_blank"獎(jiǎng)賞指導(dǎo)行為,目標(biāo)是使智能體獲得最大的獎(jiǎng)賞。試述機(jī)器學(xué)習(xí)能在工業(yè)領(lǐng)域的哪些環(huán)節(jié)起什么作用。答:通過(guò)對(duì)設(shè)備的傳感器數(shù)據(jù)(如溫度、振動(dòng)、壓力等)的實(shí)時(shí)監(jiān)控,機(jī)器學(xué)習(xí)模型能夠識(shí)別出設(shè)備狀態(tài)的變化趨勢(shì),提前預(yù)警故障,避免設(shè)備的突發(fā)性停機(jī)。機(jī)器學(xué)習(xí)可以通過(guò)對(duì)生產(chǎn)過(guò)程中的圖像、傳感器數(shù)據(jù)等進(jìn)行實(shí)時(shí)分析,自動(dòng)識(shí)別產(chǎn)品缺陷或生產(chǎn)異常。機(jī)器學(xué)習(xí)可以幫助優(yōu)化供應(yīng)鏈,通過(guò)對(duì)物流和供應(yīng)鏈數(shù)據(jù)的分析,機(jī)器學(xué)習(xí)模型能夠識(shí)別出潛在的瓶頸和效率低下的環(huán)節(jié),降低供應(yīng)鏈成本,提升物流效率,減少運(yùn)輸時(shí)間。機(jī)器學(xué)習(xí)可以用來(lái)開(kāi)發(fā)自適應(yīng)控制系統(tǒng),這些系統(tǒng)能夠根據(jù)實(shí)時(shí)數(shù)據(jù)和外部環(huán)境變化自動(dòng)調(diào)整其參數(shù),以適應(yīng)不同的生產(chǎn)條件或操作環(huán)境。提升控制精度,確保生產(chǎn)過(guò)程的穩(wěn)定性,減少人為干預(yù)。機(jī)器學(xué)習(xí)可以通過(guò)對(duì)設(shè)備、環(huán)境和操作數(shù)據(jù)的實(shí)時(shí)分析,檢測(cè)到潛在的安全隱患或異常行為。提高工作場(chǎng)所的安全性,減少事故和傷害,降低企業(yè)的安全風(fēng)險(xiǎn)。從網(wǎng)上下載或自己編程實(shí)現(xiàn)一個(gè)卷積神經(jīng)網(wǎng)絡(luò),并在手寫(xiě)字符識(shí)別數(shù)據(jù)集MNIST上進(jìn)行實(shí)驗(yàn)測(cè)試。答:importtorchimportnumpyasnpfrommatplotlibimportpyplotaspltfromtorch.utils.dataimportDataLoaderfromtorchvisionimporttransformsfromtorchvisionimportdatasetsimporttorch.nn.functionalasF"""卷積運(yùn)算使用mnist數(shù)據(jù)集,和10-4,11類(lèi)似的,只是這里:1.輸出訓(xùn)練輪的acc2.模型上使用torch.nn.Sequential"""#Superparameter------------------------------------------------------------------------------------batch_size=64learning_rate=0.01momentum=0.5EPOCH=10#Preparedataset------------------------------------------------------------------------------------transform=transforms.Compose([transforms.ToTensor(),transforms.Normalize((0.1307,),(0.3081,))])#softmax歸一化指數(shù)函數(shù)(/lz_peter/article/details/84574716),其中0.1307是mean均值和0.3081是std標(biāo)準(zhǔn)差train_dataset=datasets.MNIST(root='./data/mnist',train=True,transform=transform)#本地沒(méi)有就加上download=Truetest_dataset=datasets.MNIST(root='./data/mnist',train=False,transform=transform)#train=True訓(xùn)練集,=False測(cè)試集train_loader=DataLoader(train_dataset,batch_size=batch_size,shuffle=True)test_loader=DataLoader(test_dataset,batch_size=batch_size,shuffle=False)fig=plt.figure()foriinrange(12):plt.subplot(3,4,i+1)plt.tight_layout()plt.imshow(train_dataset.train_data[i],cmap='gray',interpolation='none')plt.title("Labels:{}".format(train_dataset.train_labels[i]))plt.xticks([])plt.yticks([])plt.show()#訓(xùn)練集亂序,測(cè)試集有序#Designmodelusingclass------------------------------------------------------------------------------classNet(torch.nn.Module):def__init__(self):super(Net,self).__init__()self.conv1=torch.nn.Sequential(torch.nn.Conv2d(1,10,kernel_size=5),torch.nn.ReLU(),torch.nn.MaxPool2d(kernel_size=2),)self.conv2=torch.nn.Sequential(torch.nn.Conv2d(10,20,kernel_size=5),torch.nn.ReLU(),torch.nn.MaxPool2d(kernel_size=2),)self.fc=torch.nn.Sequential(torch.nn.Linear(320,50),torch.nn.Linear(50,10),)defforward(self,x):batch_size=x.size(0)x=self.conv1(x)#一層卷積層,一層池化層,一層激活層(圖是先卷積后激活再池化,差別不大)x=self.conv2(x)#再來(lái)一次x=x.view(batch_size,-1)#flatten變成全連接網(wǎng)絡(luò)需要的輸入(batch,20,4,4)==>(batch,320),-1此處自動(dòng)算出的是320x=self.fc(x)returnx#最后輸出的是維度為10的,也就是(對(duì)應(yīng)數(shù)學(xué)符號(hào)的0~9)model=Net()#Constructlossandoptimizer------------------------------------------------------------------------------criterion=torch.nn.CrossEntropyLoss()#交叉熵?fù)p失optimizer=torch.optim.SGD(model.parameters(),lr=learning_rate,momentum=momentum)#lr學(xué)習(xí)率,momentum沖量#TrainandTestCLASS--------------------------------------------------------------------------------------#把單獨(dú)的一輪一環(huán)封裝在函數(shù)類(lèi)里deftrain(epoch):running_loss=0.0#這整個(gè)epoch的loss清零running_total=0running_correct=0forbatch_idx,datainenumerate(train_loader,0):inputs,target=dataoptimizer.zero_grad()#forward+backward+updateoutputs=model(inputs)loss=criterion(outputs,target)loss.backward()optimizer.step()#把運(yùn)行中的loss累加起來(lái),為了下面300次一除running_loss+=loss.item()#把運(yùn)行中的準(zhǔn)確率acc算出來(lái)_,predicted=torch.max(outputs.data,dim=1)running_total+=inputs.shape[0]running_correct+=(predicted==target).sum().item()ifbatch_idx%300==299:#不想要每一次都出loss,浪費(fèi)時(shí)間,選擇每300次出一個(gè)平均損失,和準(zhǔn)確率print('[%d,%5d]:loss:%.3f,acc:%.2f%%'%(epoch+1,batch_idx+1,running_loss/300,100*running_correct/running_total))running_loss=0.0#這小批300的loss清零running_total=0running_correct=0#這小批300的acc清零#torch.save(model.state_dict(),'./model_Mnist.pth')#torch.save(optimizer.state_dict(),'./optimizer_Mnist.pth')deftest():correct=0total=0withtorch.no_grad():#測(cè)試集不用算梯度f(wàn)ordataintest_loader:images,labels=dataoutputs=model(images)_,predicted=torch.max(outputs.data,dim=1)#dim=1列是第0個(gè)維度,行是第1個(gè)維度,沿著行(第1個(gè)維度)去找1.最大值和2.最大值的下標(biāo)total+=labels.size(0)#張量之間的比較運(yùn)算correct+=(predicted==labels).sum().item()acc=correct/totalprint('[%d/%d]:Accuracyontestset:%.1f%%'%(epoch+1,EPOCH,100*acc))#求測(cè)試的準(zhǔn)確率,正確數(shù)/總數(shù)returnacc#StarttrainandTest--------------------------------------------------------------------------------------if__name__=='__main__':acc_list_test=[]forepochinrange(EPOCH):train(epoch)#ifepoch%10==9:#每訓(xùn)練10輪測(cè)試1次acc_test=test()acc_list_test.append(acc_test)plt.plot(acc_list_test)plt.xlabel('Epoch')plt.ylabel('AccuracyOnTestSet')plt.show()自己編程實(shí)現(xiàn)一個(gè)K-均值算法聚類(lèi)網(wǎng)絡(luò),并思考聚類(lèi)網(wǎng)絡(luò)適合使用的場(chǎng)景。答:聚類(lèi)算法是“無(wú)監(jiān)督學(xué)習(xí)”的重要分支,處理的數(shù)據(jù)樣本不附帶標(biāo)記信息。該算法的目標(biāo)是將一組未被分類(lèi)的數(shù)據(jù)集分割成多個(gè)子群體,這些子群體被稱(chēng)為“簇”。聚類(lèi)網(wǎng)絡(luò)的常見(jiàn)使用場(chǎng)景為用戶(hù)畫(huà)像、新聞分類(lèi)、圖像分割等。對(duì)于目標(biāo)驅(qū)動(dòng)(Goal-directed)的強(qiáng)化學(xué)習(xí)任務(wù),目標(biāo)是到達(dá)某一狀態(tài),例如將汽車(chē)駕駛到預(yù)定位置。試為這樣的任務(wù)設(shè)置獎(jiǎng)賞函數(shù),并討論不同獎(jiǎng)賞函數(shù)的作用(例如每一步未達(dá)目標(biāo)的獎(jiǎng)賞為0、-1或1)。答:每一步未達(dá)目標(biāo)的獎(jiǎng)賞為0(零獎(jiǎng)勵(lì)):在這種設(shè)置下,智能體每走一步都不會(huì)獲得任何獎(jiǎng)勵(lì),直到最終達(dá)到目標(biāo)位置時(shí)才會(huì)獲得非零獎(jiǎng)勵(lì)。每個(gè)狀態(tài)轉(zhuǎn)移的獎(jiǎng)勵(lì)是0,這種設(shè)置的目標(biāo)是讓智能體學(xué)會(huì)如何最大化到達(dá)目標(biāo)的概率。每一步未達(dá)目標(biāo)的獎(jiǎng)賞為-1(懲罰):這種設(shè)置會(huì)對(duì)智能體在每一步的行動(dòng)施加負(fù)獎(jiǎng)勵(lì)(即懲罰),例如每移動(dòng)一步都給予-1獎(jiǎng)勵(lì),直到目標(biāo)被達(dá)到時(shí)才給予正獎(jiǎng)勵(lì)(如+10或其他合適的獎(jiǎng)勵(lì)值)。通過(guò)這種方式,智能體會(huì)盡量避免多次

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論