histoire d'une niche technologique

fabrice depaulis

La cabane à oiseaux

#1

La cabane à oiseaux

La cabane c'est ...

#2

Reconnaissance aviaire

IA

ML

DL

neurone formel

couche d'entrée

couches cachées

couche de sortie

réseau de neurones

from keras.layers import Dense

model = Sequential()
model.add(Dense(12, input_dim=8, activation='relu'))
model.add(Dense(8, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
model.fit(X, y, epochs=150, batch_size=10)

300

300

90000

300

300 * 90000 = 18 000 000

from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
from keras.models import Sequential

model = Sequential() 
model.add(Conv2D(filters=32, input_shape=(IMG_ROWS, IMG_COLS, 3), kernel_size=(5,5)))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Flatten())
model.add(Dense(1024, activation="relu"))
model.add(Dense(NUM_OF_CLASSES, activation="softmax"))

CNN

Classification

chien

chat

camion

...

Classification

mésange

rouge gorge

...

base_model = applications.VGG16(weights="imagenet", 
                                include_top=False, 
                                input_shape=(IMG_ROWS, IMG_COLS, 3))

for layer in base_model.layers:
  layer.trainable = False
model_ft_top = Sequential()
model_ft_top.add(Flatten())
model_ft_top.add(Dense(1024, activation="relu"))
model_ft_top.add(Dropout(0.5))
model_ft_top.add(Dense(num_of_classes, activation="softmax"))
model_ft = Model(inputs=base_model.input, outputs=model_ft_top(base_model.output))

model_ft.compile(
	optimizer=SGD(lr=1e-4, momentum=0.9),
	loss="categorical_crossentropy",
	metrics=["accuracy"],
)

Résultats

F1 score : 0.96

Made with Slides.com