25、深度学习-自学之路-卷积神经网络基于MNIST数据集的程序展示
import keras #添加Keraskuimport sys,numpy as np from keras.utils import np_utilsimport osfrom keras.datasets import mnist print("licheng:"+"20"+'\n') np.random.seed(1)(x_train,y_train),(x_test,y_test) = mnist.load_data() #第一次进行Mnist 数据的下载 images,labels = (x_train[0:1000].reshape(1000,28*28)/255,y_train[0:1000]) #将图片信息和图片标识信息赋值给images 和labels ''' print("x_train[0:1000]"+str(x_train[0:1000])) print("x_train[0:1000].reshape(1000,28*28)"+str(x_train[0:1000].reshape(1000,28*28)))#是一个全零的矩阵 print("images:"+str(images))#感觉是一个10*100的矩阵。 print("labels"+str(labels))#0-10的杂乱的数字 ''' one_hot_lables = np.zeros((len(labels),10))#创建一个1000行,10列的全零矩阵 #print("one_hot_lables"+str(one_hot_lables))#for i,l in enumerate(labels):one_hot_lables[i][l] =1; labels = one_hot_lablestest_images = x_test.reshape(len(x_test),28*28)/256 test_lables = np.zeros((len(y_test),10)) for i,l in enumerate(y_test):test_lables[i][l] = 1def tanh(x):return np.tanh(x)def tanh2deriv(output):return 1-(output**2)def softmax(x):temp = np.exp(x)return temp/np.sum(temp,axis=1,keepdims=True)#relu = lambda x:(x>=0)*x #relu2deriv = lambda x:x>=0alpha,iterations = (2,300) #hidden_size, pixels_per_image,num_labels = (784,10) batch_size = 128input_rows = 28 input_cols = 28kernel_rows = 3 kernel_cols = 3 num_kernels = 16hidden_size = ((input_rows - kernel_rows)*(input_cols - kernel_cols))*num_kernelskernels = 0.02*np.random.random((kernel_rows*kernel_cols,num_kernels)) -0.01 weight_1_2 = 0.2*np.random.random((hidden_size,num_labels)) - 0.1def get_image_section(layer,row_from,row_to,col_from,col_to):section = layer[:,row_from:row_to,col_from:col_to]return section.reshape(-1,1,row_to-row_from,col_to-col_from)for j in range(iterations):#一共循环350次error,correct_cnt = (0.0,0)for i in range(int(len(images)/batch_size)): #有多少个图片就有多少个循环,#for i in range(1):batch_start,batch_end = ((i*batch_size),((i+1)*batch_size))#batch_start, batch_end = (0, 1)layer_0 = images[batch_start:batch_end] #每一张图片解析出来的对应的像素点的单列矩阵或者是单行layer_0 = layer_0.reshape(layer_0.shape[0],28,28)#把layer_0重塑成一个三维数组,1,28,28#print("layer_0.shape"+str(np.shape(layer_0)))#print("layer_0"+str(" ")+str(layer_0))#layer_0.shapesects = list()#print("layer_0.shape[1]" +str(layer_0.shape[1]))#print("layer_0.shape[2]" + str(layer_0.shape[2]))for row_start in range(layer_0.shape[1] - kernel_rows):for col_start in range(layer_0.shape[2]-kernel_cols):sect = get_image_section(layer_0,row_start,row_start+kernel_rows,col_start,col_start+kernel_cols)#if row_start == 0:#print("sect" +str(" ")+str(sect))sects.append(sect)#将数据打散成3*3的小数据,然后组合在一起。一行可以转化成25个小的3*3#print("sect" +str(" ")+str(sect))expanded_input = np.concatenate(sects,axis =1)#print("expanded_input" + str(" ") + str(expanded_input))es = expanded_input.shape #输出为:es (1, 625, 3, 3)#print("es" + str(" ") + str(es))#print("es[0]" + str(" ") + str(es[0]))#print("es[1]" + str(" ") + str(es[1]))flattened_input = expanded_input.reshape(es[0]*es[1],-1) #输出为:flattened_input.shape (625, 9)#print("flattened_input.shape" + str(" ") + str(np.shape(flattened_input)))kernel_output = flattened_input.dot(kernels)#输出为:kernel_output.shape (625, 16)#print("kernel_output" + str(" ") + str(kernel_output))#print("kernel_output.shape" + str(" ") + str(np.shape(kernel_output)))#print("layer_0:"+str(layer_0))#layer_1 = relu(np.dot(layer_0,weight_0_1))#对二层神经网络的数据进行rule处理。小于0的数字都为0,大于0的数字都是本身。layer_1 = tanh(kernel_output.reshape(es[0],-1))#print("layer_1.shape" + str(" ") + str(np.shape(layer_1)))#layer_1.shape (1, 10000)dropout_mask = np.random.randint(2,size=layer_1.shape)layer_1 *= dropout_mask*2#layer_2 = np.dot(layer_1,weight_1_2)#将第二层神经网络的值和第二层的权重加权和得到输出数据。layer_2 = softmax(np.dot(layer_1,weight_1_2))#error += np.sum((labels[batch_start:batch_end] - layer_2)**2)#把每一张图片的误差值进行累加for k in range(batch_size):labelset = labels[batch_start+k:batch_start+k+1]_inc = int(np.argmax(layer_2[k:k+1])== \np.argmax(labelset))#把每次预测成功率进行累加。correct_cnt +=_inc#layer_2_delta = np.full((100,10),(np.sum(labels[batch_start:batch_end]-layer_2))/batch_size)#print(layer_2.shape)layer_2_delta = (labels[batch_start:batch_end]-layer_2)\/(batch_size * layer_2.shape[0])#计算权重反向误差第二层#layer_2_delta = (labels[batch_start:batch_end]-layer_2) #计算权重反向误差第二层layer_1_delta = layer_2_delta.dot(weight_1_2.T)*tanh2deriv(layer_1)#第一层权重误差layer_1_delta *= dropout_maskweight_1_2 += alpha *layer_1.T.dot(layer_2_delta)#修改第一层权重l1d_reshape = layer_1_delta.reshape(kernel_output.shape)k_update = flattened_input.T.dot(l1d_reshape)kernels -= alpha*k_update#weight_0_1 += alpha *layer_0.T.dot(layer_1_delta)#修改第二层权重text_correct_cnt = 0#sys.stdout.write("\r"+"I:"+str(j)+"error"+str(error/float(len(images)))[0:5] + "correct"+str(correct/float(len(images))))#验证测试组的数字被预测出来的概率。 #for j in range(10): # if(j%10 == 0 or j == iterations-1): # error,correct = (0.0,0)for i in range(len(test_images)):layer_0 = test_images[i:i+1]layer_0 = layer_0.reshape(layer_0.shape[0],28,28)layer_0.shapesects = list()for row_start in range(layer_0.shape[1] - kernel_rows):for col_start in range(layer_0.shape[2] - kernel_cols):sect = get_image_section(layer_0,row_start,row_start+kernel_rows,col_start,col_start+kernel_cols)sects.append(sect) expanded_input = np.concatenate(sects,axis =1)es = expanded_input.shapeflattened_input = expanded_input.reshape(es[0]*es[1],-1)kernel_output = flattened_input.dot(kernels)layer_1 = tanh(kernel_output.reshape(es[0],-1))layer_2 = np.dot(layer_1,weight_1_2)#error += np.sum((test_lables[i:i+1]-layer_2)**2)text_correct_cnt += int(np.argmax(layer_2)==np.argmax(test_lables[i:i+1]))if(j % 1 == 0): print("\n"+"j"+str(j))sys.stdout.write("test-acc:"+str(text_correct_cnt/float(len(test_images))) + \"train-acc:"+str(correct_cnt/float(len(images))))print() #训练结果 ''' licheng:20j0 test-acc:0.0288train-acc:0.055j1 test-acc:0.0273train-acc:0.037j2 test-acc:0.028train-acc:0.037j3 test-acc:0.0292train-acc:0.04j4 test-acc:0.0339train-acc:0.046j5 test-acc:0.0478train-acc:0.068j6 test-acc:0.0758train-acc:0.083j7 test-acc:0.1316train-acc:0.096j8 test-acc:0.2138train-acc:0.127j9 test-acc:0.2942train-acc:0.148j10 test-acc:0.3563train-acc:0.181j11 test-acc:0.4023train-acc:0.209j12 test-acc:0.4359train-acc:0.238j13 test-acc:0.4472train-acc:0.286j14 test-acc:0.4389train-acc:0.274j15 test-acc:0.3951train-acc:0.257j16 test-acc:0.2222train-acc:0.243j17 test-acc:0.0613train-acc:0.112j18 test-acc:0.0266train-acc:0.035j19 test-acc:0.0127train-acc:0.026j20 test-acc:0.0133train-acc:0.022j21 test-acc:0.0185train-acc:0.038j22 test-acc:0.0363train-acc:0.038j23 test-acc:0.0929train-acc:0.067j24 test-acc:0.1994train-acc:0.081j25 test-acc:0.3085train-acc:0.154j26 test-acc:0.4275train-acc:0.204j27 test-acc:0.5324train-acc:0.256j28 test-acc:0.5917train-acc:0.305j29 test-acc:0.6323train-acc:0.341j30 test-acc:0.6607train-acc:0.426j31 test-acc:0.6815train-acc:0.439j32 test-acc:0.7048train-acc:0.462j33 test-acc:0.717train-acc:0.484j34 test-acc:0.7313train-acc:0.505j35 test-acc:0.7355train-acc:0.53j36 test-acc:0.7417train-acc:0.548j37 test-acc:0.747train-acc:0.534j38 test-acc:0.7492train-acc:0.55j39 test-acc:0.7459train-acc:0.562j40 test-acc:0.7352train-acc:0.54j41 test-acc:0.708train-acc:0.496j42 test-acc:0.6486train-acc:0.456j43 test-acc:0.5212train-acc:0.353j44 test-acc:0.3312train-acc:0.234j45 test-acc:0.2055train-acc:0.174j46 test-acc:0.2162train-acc:0.136j47 test-acc:0.2694train-acc:0.171j48 test-acc:0.3255train-acc:0.172j49 test-acc:0.361train-acc:0.186j50 test-acc:0.4221train-acc:0.21j51 test-acc:0.5172train-acc:0.223j52 test-acc:0.6008train-acc:0.262j53 test-acc:0.6478train-acc:0.308j54 test-acc:0.6763train-acc:0.363j55 test-acc:0.696train-acc:0.402j56 test-acc:0.7079train-acc:0.434j57 test-acc:0.7209train-acc:0.441j58 test-acc:0.7304train-acc:0.475j59 test-acc:0.7358train-acc:0.475j60 test-acc:0.7405train-acc:0.525j61 test-acc:0.7499train-acc:0.517j62 test-acc:0.7534train-acc:0.517j63 test-acc:0.7608train-acc:0.538j64 test-acc:0.7646train-acc:0.554j65 test-acc:0.7726train-acc:0.57j66 test-acc:0.779train-acc:0.586j67 test-acc:0.7854train-acc:0.595j68 test-acc:0.7853train-acc:0.591j69 test-acc:0.7927train-acc:0.605j70 test-acc:0.7975train-acc:0.64j71 test-acc:0.8013train-acc:0.621j72 test-acc:0.8028train-acc:0.626j73 test-acc:0.8095train-acc:0.631j74 test-acc:0.8099train-acc:0.638j75 test-acc:0.8157train-acc:0.661j76 test-acc:0.8155train-acc:0.639j77 test-acc:0.8183train-acc:0.65j78 test-acc:0.8217train-acc:0.67j79 test-acc:0.8247train-acc:0.675j80 test-acc:0.8237train-acc:0.666j81 test-acc:0.8269train-acc:0.673j82 test-acc:0.8273train-acc:0.704j83 test-acc:0.8313train-acc:0.674j84 test-acc:0.8293train-acc:0.686j85 test-acc:0.8333train-acc:0.699j86 test-acc:0.8358train-acc:0.694j87 test-acc:0.8375train-acc:0.704j88 test-acc:0.837train-acc:0.697j89 test-acc:0.8398train-acc:0.704j90 test-acc:0.8396train-acc:0.687j91 test-acc:0.8436train-acc:0.705j92 test-acc:0.8436train-acc:0.711j93 test-acc:0.8447train-acc:0.721j94 test-acc:0.845train-acc:0.719j95 test-acc:0.8471train-acc:0.724j96 test-acc:0.8478train-acc:0.726j97 test-acc:0.848train-acc:0.718j98 test-acc:0.8495train-acc:0.719j99 test-acc:0.85train-acc:0.73j100 test-acc:0.8513train-acc:0.737j101 test-acc:0.8504train-acc:0.73j102 test-acc:0.8506train-acc:0.717j103 test-acc:0.8528train-acc:0.74j104 test-acc:0.8531train-acc:0.733j105 test-acc:0.8538train-acc:0.73j106 test-acc:0.8568train-acc:0.721j107 test-acc:0.857train-acc:0.75j108 test-acc:0.8558train-acc:0.731j109 test-acc:0.8578train-acc:0.744j110 test-acc:0.8589train-acc:0.754j111 test-acc:0.8578train-acc:0.732j112 test-acc:0.8583train-acc:0.747j113 test-acc:0.859train-acc:0.747j114 test-acc:0.8597train-acc:0.751j115 test-acc:0.8602train-acc:0.74j116 test-acc:0.8601train-acc:0.753j117 test-acc:0.8588train-acc:0.746j118 test-acc:0.8611train-acc:0.741j119 test-acc:0.8616train-acc:0.731j120 test-acc:0.8632train-acc:0.753j121 test-acc:0.8611train-acc:0.743j122 test-acc:0.8629train-acc:0.752j123 test-acc:0.8647train-acc:0.76j124 test-acc:0.8651train-acc:0.766j125 test-acc:0.8659train-acc:0.752j126 test-acc:0.868train-acc:0.756j127 test-acc:0.8649train-acc:0.767j128 test-acc:0.8661train-acc:0.747j129 test-acc:0.8669train-acc:0.753j130 test-acc:0.8695train-acc:0.753j131 test-acc:0.8691train-acc:0.76j132 test-acc:0.866train-acc:0.756j133 test-acc:0.8668train-acc:0.769j134 test-acc:0.8691train-acc:0.77j135 test-acc:0.8681train-acc:0.757j136 test-acc:0.8702train-acc:0.77j137 test-acc:0.8705train-acc:0.77j138 test-acc:0.8685train-acc:0.768j139 test-acc:0.8664train-acc:0.774j140 test-acc:0.8668train-acc:0.756j141 test-acc:0.8704train-acc:0.783j142 test-acc:0.8702train-acc:0.775j143 test-acc:0.8728train-acc:0.769j144 test-acc:0.8725train-acc:0.776j145 test-acc:0.8721train-acc:0.772j146 test-acc:0.8717train-acc:0.765j147 test-acc:0.8747train-acc:0.777j148 test-acc:0.8746train-acc:0.77j149 test-acc:0.8735train-acc:0.778j150 test-acc:0.8733train-acc:0.785j151 test-acc:0.8732train-acc:0.76j152 test-acc:0.8724train-acc:0.779j153 test-acc:0.8755train-acc:0.772j154 test-acc:0.8728train-acc:0.773j155 test-acc:0.8755train-acc:0.784j156 test-acc:0.8731train-acc:0.774j157 test-acc:0.8743train-acc:0.782j158 test-acc:0.8762train-acc:0.772j159 test-acc:0.8755train-acc:0.79j160 test-acc:0.8751train-acc:0.774j161 test-acc:0.8749train-acc:0.782j162 test-acc:0.8744train-acc:0.78j163 test-acc:0.8766train-acc:0.782j164 test-acc:0.874train-acc:0.796j165 test-acc:0.8754train-acc:0.798j166 test-acc:0.8766train-acc:0.794j167 test-acc:0.8747train-acc:0.784j168 test-acc:0.8768train-acc:0.796j169 test-acc:0.8757train-acc:0.789j170 test-acc:0.8767train-acc:0.79j171 test-acc:0.8732train-acc:0.791j172 test-acc:0.8766train-acc:0.797j173 test-acc:0.8773train-acc:0.789j174 test-acc:0.8778train-acc:0.781j175 test-acc:0.8758train-acc:0.799j176 test-acc:0.8774train-acc:0.785j177 test-acc:0.8766train-acc:0.796j178 test-acc:0.8784train-acc:0.803j179 test-acc:0.8788train-acc:0.794j180 test-acc:0.8779train-acc:0.794j181 test-acc:0.8779train-acc:0.8j182 test-acc:0.8786train-acc:0.791j183 test-acc:0.8778train-acc:0.787j184 test-acc:0.8768train-acc:0.781j185 test-acc:0.8765train-acc:0.786j186 test-acc:0.8764train-acc:0.793j187 test-acc:0.8788train-acc:0.796j188 test-acc:0.8792train-acc:0.789j189 test-acc:0.8764train-acc:0.79j190 test-acc:0.8774train-acc:0.787j191 test-acc:0.8766train-acc:0.782j192 test-acc:0.8802train-acc:0.798j193 test-acc:0.8783train-acc:0.789j194 test-acc:0.8797train-acc:0.785j195 test-acc:0.8792train-acc:0.807j196 test-acc:0.878train-acc:0.796j197 test-acc:0.8785train-acc:0.801j198 test-acc:0.8777train-acc:0.81j199 test-acc:0.8772train-acc:0.784j200 test-acc:0.8777train-acc:0.792j201 test-acc:0.8784train-acc:0.794j202 test-acc:0.8788train-acc:0.795j203 test-acc:0.8802train-acc:0.781j204 test-acc:0.8798train-acc:0.804j205 test-acc:0.878train-acc:0.779j206 test-acc:0.8788train-acc:0.792j207 test-acc:0.8763train-acc:0.793j208 test-acc:0.8794train-acc:0.792j209 test-acc:0.8798train-acc:0.803j210 test-acc:0.8788train-acc:0.804j211 test-acc:0.8792train-acc:0.797j212 test-acc:0.8764train-acc:0.791j213 test-acc:0.88train-acc:0.801j214 test-acc:0.8812train-acc:0.799j215 test-acc:0.8806train-acc:0.79j216 test-acc:0.88train-acc:0.8j217 test-acc:0.8804train-acc:0.802j218 test-acc:0.8786train-acc:0.807j219 test-acc:0.8819train-acc:0.797j220 test-acc:0.8795train-acc:0.799j221 test-acc:0.8789train-acc:0.815j222 test-acc:0.879train-acc:0.816 j223 test-acc:0.8793train-acc:0.809 j224 test-acc:0.8814train-acc:0.795 j225 test-acc:0.8796train-acc:0.799 j226 test-acc:0.8805train-acc:0.806 j227 test-acc:0.8803train-acc:0.808 j228 test-acc:0.8782train-acc:0.801 j229 test-acc:0.8803train-acc:0.814j230 test-acc:0.8808train-acc:0.8j231 test-acc:0.8808train-acc:0.798j232 test-acc:0.8808train-acc:0.82j233 test-acc:0.8794train-acc:0.794j234 test-acc:0.8809train-acc:0.806j235 test-acc:0.8807train-acc:0.808j236 test-acc:0.8789train-acc:0.802j237 test-acc:0.8796train-acc:0.81j238 test-acc:0.8768train-acc:0.805j239 test-acc:0.8781train-acc:0.792j240 test-acc:0.8786train-acc:0.809j241 test-acc:0.8761train-acc:0.802j242 test-acc:0.8775train-acc:0.811j243 test-acc:0.8806train-acc:0.814j244 test-acc:0.8795train-acc:0.804j245 test-acc:0.8787train-acc:0.801j246 test-acc:0.8776train-acc:0.795j247 test-acc:0.8785train-acc:0.808j248 test-acc:0.8788train-acc:0.803j249 test-acc:0.8776train-acc:0.813j250 test-acc:0.879train-acc:0.808j251 test-acc:0.8788train-acc:0.803j252 test-acc:0.8791train-acc:0.812j253 test-acc:0.8793train-acc:0.804j254 test-acc:0.8779train-acc:0.815j255 test-acc:0.8798train-acc:0.811j256 test-acc:0.8798train-acc:0.806j257 test-acc:0.8801train-acc:0.803j258 test-acc:0.8779train-acc:0.795j259 test-acc:0.8799train-acc:0.803j260 test-acc:0.8801train-acc:0.805j261 test-acc:0.8788train-acc:0.807j262 test-acc:0.8786train-acc:0.804j263 test-acc:0.8792train-acc:0.806j264 test-acc:0.8779train-acc:0.796j265 test-acc:0.8785train-acc:0.821j266 test-acc:0.8794train-acc:0.81j267 test-acc:0.8784train-acc:0.816j268 test-acc:0.8777train-acc:0.812j269 test-acc:0.8792train-acc:0.812j270 test-acc:0.8779train-acc:0.813j271 test-acc:0.8782train-acc:0.82j272 test-acc:0.8791train-acc:0.821j273 test-acc:0.878train-acc:0.823j274 test-acc:0.8788train-acc:0.816j275 test-acc:0.8794train-acc:0.82j276 test-acc:0.8779train-acc:0.829j277 test-acc:0.8794train-acc:0.809j278 test-acc:0.8751train-acc:0.806j279 test-acc:0.8796train-acc:0.813j280 test-acc:0.88train-acc:0.816j281 test-acc:0.8797train-acc:0.819j282 test-acc:0.8805train-acc:0.809j283 test-acc:0.8804train-acc:0.811j284 test-acc:0.8779train-acc:0.808j285 test-acc:0.8818train-acc:0.82j286 test-acc:0.8791train-acc:0.822j287 test-acc:0.8792train-acc:0.817j288 test-acc:0.877train-acc:0.814j289 test-acc:0.8785train-acc:0.807j290 test-acc:0.8781train-acc:0.817j291 test-acc:0.8795train-acc:0.82j292 test-acc:0.8803train-acc:0.824j293 test-acc:0.8779train-acc:0.812j294 test-acc:0.8784train-acc:0.816j295 test-acc:0.8771train-acc:0.817j296 test-acc:0.877train-acc:0.826j297 test-acc:0.8775train-acc:0.816j298 test-acc:0.8774train-acc:0.804j299 test-acc:0.8775train-acc:0.814 '''
从运行结果上看,其实和我们上次的程序处理的差不多。
其实这么来看的话,我们就需要进行更多的优化。其实有很多人已经做过相关的优化程序。后面我们将会学习的时候,更加深入的去理解别的更好的算法。
相关文章:
25、深度学习-自学之路-卷积神经网络基于MNIST数据集的程序展示
import keras #添加Keraskuimport sys,numpy as np from keras.utils import np_utilsimport osfrom keras.datasets import mnist print("licheng:""20"\n) np.random.seed(1)(x_train,y_train),(x_test,y_test) mnist.load_data() #第一次…...

【C++】解锁<list>的正确姿势
> 🍃 本系列为初阶C的内容,如果感兴趣,欢迎订阅🚩 > 🎊个人主页:[小编的个人主页])小编的个人主页 > 🎀 🎉欢迎大家点赞👍收藏⭐文章 > ✌️ 🤞 …...
Qt中的事件
写一个 可以拖动的按钮 DraggablePushButton.h 头文件 #ifndef DRAGGABLEPUSHBUTTON_H #define DRAGGABLEPUSHBUTTON_H#include <QPushButton> #include <QMouseEvent>class DraggablePushButton : public QPushButton {Q_OBJECTpublic:explicit DraggablePushBu…...

变化检测相关论文可读list
一些用得上的: 遥感变化检测常见数据集https://github.com/rsdler/Remote-Sensing-Change-Detection-Dataset/ 代码解读:代码解读 | 极简代码遥感语义分割,结合GDAL从零实现,以U-Net和建筑物提取为例 NeurIPS2024: https://mp.w…...
Ansible中playbook的变量
变量 playbook的变量有以下几种 在playbook中用户自定义的变量远程主机中由Ansible收集的变量在文件模板中使用的上述两种变量把任务结果作为一个变量使用,叫注册变量用户在执行playbook时,通过命令行传入的变量,叫做额外变量 在playbook中…...

亚信安全正式接入DeepSeek
亚信安全致力于“数据驱动、AI原生”战略,早在2024年5月,推出了“信立方”安全大模型、安全MaaS平台和一系列安全智能体,为网络安全运营、网络安全检测提供AI技术能力。自2024年12月DeepSeek-V3发布以来,亚信安全人工智能实验室利…...

相似性图相关性重构网络用于无监督跨模态哈希
《Similarity Graph-correlation Reconstruction Network for unsupervised cross-modal hashing》 摘要1. 引言2. 相关工作2.1. 监督跨模态哈希方法2.2. 无监督跨模态哈希方法 3. 方法论3.1 问题定义3.2 特征提取3.3 模态内关系图构建3.4. 局部关系图重置3.5. 跨模态关系图构建…...
【Bug】属性 PackageVersion 应在所有目标框架中具有单个值,但却具有以下值
文章目录 问题问题代码原因解决处理Bug的具体步骤 问题 严重性 代码 说明 项目 文件 行 禁止显示状态 错误(活动) NU1105 无法读取“x”的项目信息: 属性 PackageVersion 应在所有目标框架中具有单个值,但却具有以下值: 1.0.0, 1.0.5 x (net8.0-android), x (net8.…...

C++ Primer 类型转换
欢迎阅读我的 【CPrimer】专栏 专栏简介:本专栏主要面向C初学者,解释C的一些基本概念和基础语言特性,涉及C标准库的用法,面向对象特性,泛型特性高级用法。通过使用标准库中定义的抽象设施,使你更加适应高级…...

【CS61A 2024秋】Python入门课,全过程记录P7(Week13 Macros至完结)【完结撒花!】
文章目录 关于新的问题更好的解决方案Week13Mon Macros阅读材料Lab 11: Programs as Data, MacrosQ1: WWSD: QuasiquoteQ2: If ProgramQ3: Exponential PowersQ4: Repeat Wed SQL阅读材料Disc 11: MacrosQ1: Mystery MacroQ2: Multiple AssignmentQ3: Switch Optional Contest:…...

SSH隧道+Nginx:绿色通道详解(SSH Tunnel+nginx: Green Channel Detailed Explanation)
SSH隧道Nginx:内网资源访问的绿色通道 问题背景 模拟生产环境,使用两层Nginx做反向代理,请求公网IP来访问内网服务器的网站。通过ssh隧道反向代理来实现,重点分析一下nginx反代的基础配置。 实验环境 1、启动内网服务器的tomca…...

LabVIEW用户界面设计原则
在LabVIEW开发中,用户界面(UI)设计不仅仅是为了美观,它直接关系到用户的操作效率和体验。一个直观、简洁、易于使用的界面能够大大提升软件的可用性,尤其是在复杂的实验或工业应用中。设计良好的UI能够减少操作错误&am…...

Datawhale 数学建模导论二 2025年2月
第6章 数据处理与拟合模型 本章主要涉及到的知识点有: 数据与大数据Python数据预处理常见的统计分析模型随机过程与随机模拟数据可视化 本章内容涉及到基础的概率论与数理统计理论,如果对这部分内容不熟悉,可以参考相关概率论与数理统计的…...
SQL CASE表达式的用法
SQL CASE表达式的用法 一、CASE表达式的基础语法简单CASE表达式搜索CASE表达式 二、简单CASE表达式的应用示例三、搜索CASE表达式的应用示例四、CASE表达式在聚合函数中的应用五、嵌套CASE表达式的应用 今天在也无力用到了CASE表达式,于是有了这篇博客,C…...

趣味魔法项目 LinuxPDF —— 在 PDF 中启动一个 Linux 操作系统
最近,一位开源爱好者开发了一个LinuxPDF 项目(ading2210/linuxpdf: Linux running inside a PDF file via a RISC-V emulator),它的核心功能是在一个 PDF 文件中启动并运行 Linux 操作系统。它通过巧妙地使用 PDF 文件格式中的 Ja…...

win32汇编环境,窗口程序使用跟踪条(滑块)控件示例一
;运行效果 ;win32汇编环境,窗口程序使用跟踪条(滑块)控件示例一 ;生成2条横的跟踪条,分别设置不同的数值范围,设置不同的进度副度的例子 ;直接抄进RadAsm可编译运行。重要部分加备注。 ;下面为asm文件 ;>>>>>>>>>>>>>>>>>…...

mars3d接入到uniapp的时候ios上所有地图的瓦片都无法加载解决方案
用的是【Mars3d】官网的uniapp的仓库,安卓没有问题,但是ios的不行 相关链接 mars3d-uni-app: uni-app技术栈下的Mars3D项目模板 解决方案:感觉所有图片请求全被拦截了 uniapp的ios内核不允许跨域,需要先把瓦片下载后转base64&…...

使用 Notepad++ 编辑显示 MarkDown
Notepad 是一款免费的开源文本编辑器,专为 Windows 用户设计。它是替代记事本(Notepad)的最佳选择之一,因为它功能强大且轻量级。Notepad 支持多种编程语言和文件格式,并可以通过插件扩展其功能。 Notepad 是一款功能…...
wordpress主题制作
工具/原料 <P><BR>使用divcss语言编写的html静态页面一个</P> <P>Macromedia Dreamweaver软件<BR></P> WordPress主题结构分析 1 1、index.php首页模板(最基本) ---- 1、header.php头部 ---- 2、sidebar.php侧边…...

MybatisPlus常用增删改查
记录下MybatisPlus的简单的增删改查 接口概述 Service和Mapper区别 Mapper简化了单表的sql操作步骤(CRUD),而Serivce则是对Mapper的功能增强。 Service虽然加入了数据库的操作,但还是以业务功能为主,而更加复杂的SQL…...
PTC过流保护器件工作原理及选型方法
PTC过流保护器件 (Positive Temperature Coefficient,正温度系数热敏电阻)是一种过流保护元件,其工作原理基于电阻值随温度变化的特性。当电路正常工作时,PTC的阻值很小,电流可以顺畅通过;但当…...
Ubuntu20.04启动python的虚拟环境
如果你使用 mkvirtualenv 来创建虚拟环境,说明你已经安装了 virtualenvwrapper,这是一个用于管理 Python 虚拟环境的工具。 激活虚拟环境 要激活你使用 mkvirtualenv 创建的虚拟环境,按照以下步骤操作: 1.确保已经安装了 virtu…...

在CSDN发布AWS Proton解决方案:实现云原生应用的标准化部署
引言:云原生时代的部署挑战 在云原生应用开发中,基础设施管理的复杂性已成为团队面临的核心挑战。随着微服务架构的普及,每个服务可能包含数十个AWS资源(如Lambda、API Gateway、ECS集群等),传统的手动配置…...

thinkphp-queue队列随笔
安装 # 创建项目 composer create-project topthink/think 5.0.*# 安装队列扩展 composer require topthink/think-queue 配置 // application/extra/queue.php<?php return [connector > Redis, // Redis 驱动expire > 0, // 任务的过期时间…...

云计算 Linux Rocky day03(which、快捷键、mount、家目录、ls、alias、mkdir、rm、mv、cp、grep)
云计算 Linux Rocky day03(which、快捷键、mount、家目录、ls、alias、mkdir、rm、mv、cp、grep) 目录 云计算 Linux Rocky day03(which、快捷键、mount、家目录、ls、alias、mkdir、rm、mv、cp、grep)1.which找到命令所对应的程序…...

[华为eNSP] OSPF综合实验
目录 配置流程 画出拓扑图、标注重要接口IP 配置客户端IP 配置服务端IP 配置服务器服务 配置路由器基本信息:名称和接口IP 配置路由器ospf协议 测试结果 通过配置OSPF路由协议,实现跨多路由器的网络互通,并验证终端设备的访问能力。 …...

会计 - 金融负债和权益工具
一、金融负债和权益工具区分的基本原则 (1)是否存在无条件地避免交付现金或其他金融资产的合同义务 如果企业不能无条件地避免以交付现金或其他金融资产来履行一项合同义务,则该合同义务符合金融负债的义务。 常见的该类合同义务情形包括:- 不能无条件避免的赎回; -强制…...

PDF 转 HTML5 —— HTML5 填充图形不支持 Even-Odd 奇偶规则?(第一部分)
在填充 PDF 中的图形时(以及许多其他技术中),你可以选择使用 Even-Odd(奇偶) 或 Non-Zero(非零) 填充规则。 对于那些已经在想“你在说啥?”的朋友,别担心,我…...

Leetcode 1892. 页面推荐Ⅱ
1.题目基本信息 1.1.题目描述 表: Friendship ---------------------- | Column Name | Type | ---------------------- | user1_id | int | | user2_id | int | ---------------------- (user1_id,user2_id) 是 Friendship 表的主键(具有唯一值的列的组合…...

高效绘制业务流程图!专业模板免费下载
在复杂的业务流程管理中,可视化工具已成为提升效能的核心基础设施。为助力开发者、项目经理及业务架构师高效落地流程标准化,本文将为你精选5套开箱即用的专业流程图模板。这些模板覆盖跨部门协作、电商订单、客户服务等高频场景,具备以下核心…...