Vous êtes sur la page 1sur 4

pandas librairie provide structure de donnee appelee dataframe : pour representer les donnes

sous forme de tableau


on tend a representer dataset sous forme d un dicc cle represente input (variable) et les valeurs sont
des valeurs exp

dataset={‘cle1’:[1,2,3], ‘cle2’:[4,5,6]}

import pandas as pd
df=pd.dataframe.from_dict[dataset)

from_dict : car le point de dep est un dic


on a stocke dataframe dans un var df

pour l afficher on ecrit df.head( ) //df.head(10) affiche 10 premiers lignes


df fonctionne comme u dicc : df[col1] affiche les val de col1 + index0
df[col1].values //tableau de valeurs seuls
le standard aujordhuui les donnes externes se trouvent sous forme de csv et on peut le charger dans
un dataframe
df=pd .read_csv(url,index_col=0) sans index_col=0 la colonne de l index se duplique

df.columns array de colonnes


df.describe() pour afficher les statistics min max 25 % ,,,

df = df.rename(columns = {‘nom init’ : ‘nouv nom’})


df=df.drop(columns=[‘col1’ , ‘col2’ ]) //supprimr 2 colonnes

df[col1],head() = df[col1]

df [df [‘company’] == ‘audi] affiche tout les colonnes de df ou company = audi

df [df[‘company’] == ‘audi’][‘price’] affiche la colonne de price ou company = audi

statistique : min() max() mean() //moy var() //variance sum() count() value_counts() // comptr les
occurrences uniques
TPU des processeur tres rapides et puissants pour czlculer dans des matrices a haute dimention :
tensor (ps : tensorflow) = tensor processing unit
colab offre une bonne infrastructure pour les tpu
+
bon a savoir : transfer learning , GAN, TPU, GPT-2 , fastAI
AI 1950
ML 1980
DL 2010
AI c est plutot aspect philosophique : la capacite des machines a etre egales a lhomme
ML machin capable d apprendre pour resoudre un prob sans avoir besoin de programmer sa solution
expliciitement
partie de ml which focus on architectures de plusieurs couche de res de neuronnes
unsupervised : clustering & dimention regression (no label : on utilise unsupervised quand on a pas
bcp d info sur datast) => classifier ddans des grp c puissant il ne demande pas bcp innfo mais
demand bcp d attention pour assurer a coherence des grp

reinforcement : donner une maitrique sur ce qu il fait + ensemble d action


raisons de ml : bcp de donnes + capacite av de calc (processeur ) +expoiter model pre trained pour
créer nouv app
exploits : resnet res neuronnes human lvl accurancy object det 2015
alphaGo world champ game 2017
deepfakes realistic content manipulation 2018/2019 manipuler des images
gpt-2 generate realistic conditional text (nlp 2019) generer des textes
matplotlib : visualisation de donnes

where to start : jupyter/colab + py + fastAI+pytorch/tensorflow+keras

3etapes : injecter les donnes , choisir res nuronnes , choisir classifieur

limiyts : 2015 : an AI HR engine recruiting male more than females in important positions
2019 : 10times less accurate woith black faces
from fastai,vision import *
from fastai,metrics import error_rate

import warnings
warnings,filterwarnings(« ignore », category=UserWarning, module= « torch,nn,functional »)

folder = « downloads »
path = Path(‘/contents/downloads’)
dest = path
dest,mkdir(parents= True, exist_ok =True)

pip install git+https://github,com/Joeclinton1/google-images-download,git

from google_images_download import google_images_download


response = google_images_download,googleimagesdownload()
arguments = {« keywords » : »cat,dog », « limit » :100, « print_url »:False]
paths = response,download(arguments)
print(paths)

path.ls()
classes

path = untar_data(URLs.PETS) ; path //extraire des donnes avec fastai

path.ls()

classes = [‘cat’, ‘dog’]

for c in classes :
print(c)
verify_images(path/c, dlete=True, max_size=500) //verif bonne taille

verifier chemin d acces aux images


definition des chemins d acces
path_anno = path/’annotatons’
path_img = path/’images’

on a tjrs besoins de take a look to the data set


sometimes labels are stored in file names
so we n edd extract them grace a imageDataBunch,from_name_re to get labels from file names

fnames = get_image_files(path_img)
fnames[:5]

nop.random.seed(2)
pat = r’/([^/]+)_\d+.jpg$’
np.random.seed(42)
data= ImageDataBunch,from_name_re(path_img, fnames, pat, ds_tfms=get_transforms(), size=224,
bs=64).normalize(imagenet_stats)

data.classes

data.show_batch(rows=4 , figsize=(8,10))

print(data.classes)
len(data.classes),data.c
//ordre shih houni

learn = cnn_lerner(data, models.resnet34, metrics=error_rate)


learn.fit(4)
GPU a utuliser et nn pas none (cpu : par def)
learn.save(‘satge-1’)

we need to see the categories that the model most confused with one another
to see the predicted values was reasonable or not => the classifier is working correctly or not
when we plot the confusion matrix the distribution is heavily skewed : the model makees the same
mistakes over and over aganin but rarely confuses other categories which is normal

interp = ClassificationInterpretation.from_larner(learn)

losses, idxs= interp.top_losses()


len(data.valid_ds)==len(losses)==len(idxs)
interp.plot_top_losses(9, figsize=(15,11))
prediction/actual/loss/probability

interp.plot_confusion_matrix(figsize=(8,5), dpi=120)

verifier labels des images dont la prediction st eronee : tnjm el label ghalet

doc(interp.plot_top_losses)
interp.plot_confusion_matrix(figsize=(12,12), dpi=60)
matrice de confusion pour pres ou le model a commis plus d erreur
les erreurs dans le diagonale sont bonnes et on espere qu elles soient eleves et lses autres sont les
confusions
intrp.most_confused(min_val=2)
learn.unfreeze()
learn.fit_one_cycle(1)
learn.load(‘stage-1’) ;
learn.lr_find()
learn.recorder.plot()
learn.unfreeze()
learn.fit_one_cycle(2, max_lr=slice(le-6, le-4))

Vous aimerez peut-être aussi