CoolFace
Apppublic

SV12/ERA_Session13

sourceHugging Facemitupdated 2y agoView on Hugging Face
0likes
common.cpython-310.pyc56 linesDownload Raw Back to __pycache__
1o

2�"+fj�@s�ddlZddlZddlmZddlZddlZddlm	Z	ddl3mZdd�Zdd�Z
dd	d4�Zdd�Zd
d�Zdd�Zdd�Zdd�Zd dd�Zdd�Zd!dd�ZdS)"�N��summary)�LRFinderc	Cs8t||||d�}|j||||dd�|��|��dS)N)�model�	optimizer�	criterion�device�exp)Ztrain_loader�start_lr�end_lr�num_iterZ	step_mode)rZ5range_test�plot�reset)	rrrrZtrainloader�numiterZstartlrZendlr�	lr_finder�r�=C:\Users\Shubham\Documents\ERA\ERA Session-13\utils\common.py�find_lrs��rcCs(tjjj||||d|ddddd�	}|S)N��dF�linear)	r�max_lr�steps_per_epoch�epochs�	pct_start�6div_factor�three_phase�final_div_factor�anneal_strategy)�torch�optim�lr_scheduler�7OneCycleLR)r�maxlr�stepsr�	schedulerrrr�one_cycle_lrs�r&�cs\t|j�D]&\�}tj�fdd�t|j�D�|d�}ttj|j|dd��t	�8|�qdS)Ncsg|]9\}}|�kr|�qSrr)�.0�n�x��crr�10<listcomp>/sz5show_random_images_for_each_class.<locals>.<listcomp>)�k)r���)�axes)�	enumerate�classes�random�sample�targets�
show_img_grid�np�	transpose�data�plt�title)�11train_dataZnum_images_per_class�clsZrand_targetsrr+r�!show_random_images_for_each_class,s��r@cCs\ztj�|�����}Wnt�|�}tj�|�}Ytjdd�t�	|�12ddd��dS)N��13rB��figsizer0r1r)�torchvision�utils�	make_grid�cpu�detachr�14from_numpyr<�figure�imshow�permute)r;Zgrid_imgrrrr86s15r8cCstt|��\}}t|�dS)N)�next�iterr8)Zdata_loaderr;�targetrrr�show_random_imagesAsrQcCs t||dddfgd�dd�dS)Nr/� )�16input_size�output_size�17num_params�kernel_sizer0)rrSZ	col_names�verboser)r�18batch_sizerrr�show_model_summaryFs1920�rYcCs�t�|d|d�t�|d|d�t�ddg�t�d�t�d�t�d�t��t�|d|d	�t�|d|d21�t�ddg�t�d�t�d
�t�d�t��dS)N�epochZ	trainlossZtestlossz22Train LosszValidation Loss�Epochs�LosszLoss vs EpochsZtrainaccZtestaccz	Train AcczValidation Acc�AccuracyzAccuracy vs Epochs)r<r
�legend�xlabel�ylabelr=�show)�resultsrrr�
lossacc_plotsOs232425262728rccCs>t�t|�|d�t�d�t�d�t�d�t��dS)N�lrr[z
Learning RatezLearning Rate vs Epochs)r<r
�ranger_r`r=ra)rb�lengthrrr�lr_plotsas29303132rgrBc
Cs�ggg}}}t���T|D]I\}}|�|�|�|�}}||�}	|	jddd�}33t�|34��|k���}|D]!}t|�|kr@n|�||�|�||�|�|35|���q6qWd�n1scwY|||fS)Nr0T��dim�keepdim)r�no_grad�to�argmax�argwhere�squeeze�len�append)
rZ36testloaderrZ	mis_countZmisimgsZmistgtsZmispredsr;rP�output�predZ
misclassified�idxrrr�get_misclassifiedis"37���38rucCs�|��g}t���H|D]=\}}|�|�|�|�}}t||�D] \}}|�d�}||�}	|	jddd�}39|40|krA|�|||41f�q!t|�|krJnq
Wd�n1sUwY|d|�S)z�42    Function to run the model on test set and return misclassified images43    :param model: Network Architecture44    :param device: CPU/GPU45    :param test_loader: DataLoader for test set46    rr0TrhN)	�evalrrkrl�zip�	unsqueezermrqrp)rrZtest_loader�countZmisclassified_datar;rP�image�labelrrrsrrr�get_misclassified_data�s$4748����r|rAr1rc49	Cs�tj|d�}t|�}t|�D]L}t�|||d�||d���d�}	|dur,||	�}	t�t�	|	d��t�50d|||d���d|||d�����t�g�t�
g�qdS)	NrCr0rrH)r0r1rzLabel: z 51 Prediction: r1)r<rKrpre�subplotrorlrLr9r:r=�item�xticks�yticks)52r;r4�size�rows�colsZ
inv_normalize�figZnumber_of_samples�i�imgrrr�plot_misclassified�s653�r�)r')rB)rAr1rN)�numpyr9r5�matplotlib.pyplot�pyplotr<rrEZ	torchinforZtorch_lr_finderrrr&r@r8rQrYrcrgrur|r�rrrr�<module>s$5455	56)