官术网_书友最值得收藏!

Problems with traditional NN

Scenario 1: Let's create a new image where the original image is translated by 1 pixel toward the left. In the following code, we are looping through the columns of the image and copying the pixel values of the next column to the current column:

for i in range(pic.shape[0]):
if i<20:
pic[:,i]=pic[:,i+1]
plt.imshow(pic)

The left translated average 1 image looks as follows:

Let’s go ahead and predict the label of the image using the built model:

model.predict(pic.reshape(1,784)/255)

The model's prediction on the translated image is as follows:

We can see a prediction of 1, though with a lower probability than when pixels were not translated.

Scenario 2: A new image is created in which the pixels of the original average 1 image are shifted by 2 pixels to the right:

pic=np.zeros((28,28))
pic2=np.copy(pic)
for i in range(X_train1.shape[0]):
pic2=X_train1[i,:,:]
pic=pic+pic2
pic=(pic/X_train1.shape[0])
pic2=np.copy(pic)
for i in range(pic.shape[0]):
if ((i>6) and (i<26)):
pic[:,i]=pic2[:,(i-1)]
plt.imshow(pic)

The right translated average 1 image looks as follows:

The prediction of this image is as follows:

model.predict(pic.reshape(1,784)/255)

The model's prediction on the translated image is as follows:

We can see that the prediction is incorrect with an output of 3. This is the problem that we will be addressing by using a CNN.

主站蜘蛛池模板: 黎城县| 吉木乃县| 贵港市| 平度市| 凤冈县| 西吉县| 宁国市| 长治市| 闽侯县| 鄱阳县| 二连浩特市| 社旗县| 长泰县| 天津市| 嵊州市| 秭归县| 金堂县| 西乡县| 滨州市| 长武县| 和平县| 南岸区| 称多县| 高雄市| 阿城市| 拉萨市| 哈巴河县| 沐川县| 广水市| 中山市| 晋中市| 石柱| 靖宇县| 三亚市| 陆良县| 瑞丽市| 连平县| 兴城市| 汉川市| 阳山县| 湟源县|