Автоматты аударма пайдаланылды

ResNet50 Және Косинус Ұқсастығын Іздеуге негізделген кескін Іздеу Жүйесінің Демонстрациясы

🎯 Мақсаты: Мүмкіндіктерді алу үшін ResNet50 көмегімен кескін іздеу жүйесінің логикасын және ұқсас кескіндерді іздеу үшін косинус ұқсастығын көрсету.

Бұл Кескінді Іздеу Алгоритмінің идеясы-k үміткерлерінің индекстерін қайтару үшін берілген кескін мен негізгі деректер жиынындағы барлық басқа кескіндер арасындағы ұқсастықтарды есептеу.

2 кескіннің ұқсастығын бағалау үшін біз барлық кескіндерді ерекшеліктерге айналдыруымыз керек ~ ендіру / векторлар деп аталатын сандық мәндер жиынтығы. Біз ResNet50-ді суреттерден мүмкіндіктерді алу үшін Қолданамыз, Жақын арада ResNet50 туралы.

Resnet50s есептеу тиімділігінің үйлесімі, ауқымды мәліметтер базасында алдын-ала дайындық (ImageNet) және әмбебаптығы оны компьютерлік көру тапсырмаларының кең ауқымында мүмкіндіктерді алу үшін тамаша таңдау жасайды. ResNet50 архитектурасы (несиелер: Викимедиа)

Косинус ұқсастығы екі кескін арасындағы ұқсастық көрсеткішін бағалау үшін пайдаланылады, себебі ол олардың мүмкіндік векторларының туралануын тиімді өлшейді, жоғары өлшемді және сирек деректерді жақсы өңдейді және есептеу жағынан тиімді. Косинус Ұқсастығының формуласы (несиелер: Википедия):  

Кескін іздеу функциясының Коды:

def search_similar_images (сұрау_симиляр_индексі, кескін_қасиеттері, кескін_файлдары, k=5):
    query_feature = image_features[query_image_index].пішінін өзгерту(1, -1)
    ұқсастықтар = косинус_симилярлығы (сұрау_симилярлығы, кескін_симилярлығы).тегістеу()
    top_k_indices = ұқсастықтар.аргсорт () [- к-1:-1][::-1] # ~ сұрау кескінінің өзін алып тастаңыз
    топ_к_индикаттарды қайтару

Сілтемелер:

1. https://www.tensorflow.org/api_docs/python/tf/keras/applications/resnet

2. https://en.wikipedia.org/wiki/Cosine_similarity

Kaggle Дәптері: https://www.kaggle.com/code/armanzhalgasbayev/image-search-engine-demo-resnet-cossim

Пікірлер 2

Кіру пікір қалдыру үшін