ÀÖÓãµç¾º

  • ½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

    È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

    ͼÏñ·ÖÀàÊÇʲô£¿AlexNetÊÖдÊý×ÖͼÏñʶ±ð

    ¸üÐÂʱ¼ä:2022Äê12ÔÂ07ÈÕ16ʱ57·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

    ͼÏñ·ÖÀà

    ͼÏñ·ÖÀàʵÖÊÉϾÍÊÇ´Ó¸ø¶¨µÄÀà±ð¼¯ºÏÖÐΪͼÏñ·ÖÅä¶ÔÓ¦±êÇ©µÄÈÎÎñ¡£Ò²¾ÍÊÇ˵ÎÒÃǵÄÈÎÎñÊÇ·ÖÎöÒ»¸öÊäÈëͼÏñ²¢·µ»ØÒ»¸ö¸ÃͼÏñÀà±ðµÄ±êÇ©¡£

    ¼Ù¶¨Àà±ð¼¯Îªcategories = {dog, cat, panda}£¬Ö®ºóÎÒÃÇÌṩһÕÅͼƬ¸ø·ÖÀàÄ£ÐÍ£¬ÈçÏÂͼËùʾ£º

    ͼÏñ·ÖÀà

    ·ÖÀàÄ£Ð͸øÍ¼Ïñ·ÖÅä¶à¸ö±êÇ©£¬Ã¿¸ö±êÇ©µÄ¸ÅÂÊÖµ²»Í¬£¬Èçdog:95%£¬cat:4%£¬panda:1%£¬¸ù¾Ý¸ÅÂÊÖµµÄ´óС½«¸ÃͼƬ·ÖÀàΪdog£¬ÄǾÍÍê³ÉÁËͼÏñ·ÖÀàµÄÈÎÎñ¡£ÏÂÃæÀûÓÃAlexNetÍê³ÉͼÏñ·ÖÀà¹ý³ÌµÄ½²½â¡£

    AlexNetÍêÊÖдÊý×ÖÊÆÊ¶±ð

    2012Ä꣬AlexNetºá¿Õ³öÊÀ£¬¸ÃÄ£Ð͵ÄÃû×ÖÔ´ÓÚÂÛÎĵÚÒ»×÷ÕßµÄÐÕÃûAlex Krizhevsky ¡£AlexNetʹÓÃÁË8²ã¾í»ýÉñ¾­ÍøÂ磬ÒԺܴóµÄÓÅÊÆÓ®µÃÁËImageNet 2012ͼÏñʶ±ðÌôÕ½Èü¡£ËüÊ×´ÎÖ¤Ã÷ÁËѧϰµ½µÄÌØÕ÷¿ÉÒÔ³¬Ô½ÊÖ¹¤Éè¼ÆµÄÌØÕ÷£¬´Ó¶øÒ»¾Ù´òÆÆ¼ÆËã»úÊÓ¾õÑо¿µÄ·½Ïò¡£

    AlexNetʹÓÃImageNetÊý¾Ý¼¯½øÐÐѵÁ·£¬µ«ÒòΪImageNetÊý¾Ý¼¯½Ï´óѵÁ·Ê±¼ä½Ï³¤£¬ÎÒÃÇÈÔÓÃÇ°ÃæµÄMNISTÊý¾Ý¼¯À´ÑÝʾAlexNet¡£¶ÁÈ¡Êý¾ÝµÄʱ½«Í¼Ïñ¸ßºÍ¿íÀ©´óµ½AlexNetʹÓõÄͼÏñ¸ßºÍ¿í227¡£Õâ¸öͨ¹ýtf.image.resize_with_padÀ´ÊµÏÖ¡£

    Êý¾Ý¶ÁÈ¡

    Ê×ÏÈ»ñÈ¡Êý¾Ý,²¢½øÐÐά¶Èµ÷Õû£º

    import numpy as np
    # »ñÈ¡ÊÖдÊý×ÖÊý¾Ý¼¯
    (train_images, train_labels), (test_images, test_labels) = mnist.load_data()
    # ѵÁ·¼¯Êý¾Ýά¶ÈµÄµ÷Õû£ºN H W C
    train_images = np.reshape(train_images,(train_images.shape[0],train_images.shape[1],train_images.shape[2],1))
    # ²âÊÔ¼¯Êý¾Ýά¶ÈµÄµ÷Õû£ºN H W C
    test_images = np.reshape(test_images,(test_images.shape[0],test_images.shape[1],test_images.shape[2],1))
    ÓÉÓÚʹÓÃÈ«²¿Êý¾ÝѵÁ·Ê±¼ä½Ï³¤£¬ÎÒÃǶ¨ÒåÁ½¸ö·½·¨»ñÈ¡²¿·ÖÊý¾Ý£¬²¢½«Í¼Ïñµ÷ÕûΪ227*227´óС£¬½øÐÐÄ£ÐÍѵÁ·£º
    # ¶¨ÒåÁ½¸ö·½·¨Ëæ»ú³éÈ¡²¿·ÖÑù±¾ÑÝʾ# »ñȡѵÁ·¼¯Êý¾Ýdef get_train(size):
        # Ëæ»úÉú³ÉÒª³éÑùµÄÑù±¾µÄË÷Òý
        index = np.random.randint(0, np.shape(train_images)[0], size)
        # ½«ÕâЩÊý¾Ýresize³É227*227´óС
        resized_images = tf.image.resize_with_pad(train_images[index],227,227,)
        # ·µ»Ø³éÈ¡µÄ
        return resized_images.numpy(), train_labels[index]# »ñÈ¡²âÊÔ¼¯Êý¾Ý def get_test(size):
        # Ëæ»úÉú³ÉÒª³éÑùµÄÑù±¾µÄË÷Òý
        index = np.random.randint(0, np.shape(test_images)[0], size)
        # ½«ÕâЩÊý¾Ýresize³É227*227´óС
        resized_images = tf.image.resize_with_pad(test_images[index],227,227,)
        # ·µ»Ø³éÑùµÄ²âÊÔÑù±¾
        return resized_images.numpy(), test_labels[index]
    µ÷ÓÃÉÏÊöÁ½¸ö·½·¨£¬»ñÈ¡²ÎÓëÄ£ÐÍѵÁ·ºÍ²âÊÔµÄÊý¾Ý¼¯£º
    # »ñȡѵÁ·Ñù±¾ºÍ²âÊÔÑù±¾
    train_images,train_labels = get_train(256)
    test_images,test_labels = get_test(128)
    ΪÁËÈôó¼Ò¸üºÃµÄÀí½â£¬ÎÒÃǽ«Êý¾Ýչʾ³öÀ´£º
    # Êý¾Ýչʾ£º½«Êý¾Ý¼¯µÄǰ¾Å¸öÊý¾Ý¼¯½øÐÐչʾfor i in range(9):
        plt.subplot(3,3,i+1)
        # ÒÔ»Ò¶ÈͼÏÔʾ£¬²»½øÐвåÖµ
        plt.imshow(train_images[i].astype(np.int8).squeeze(), cmap='gray', interpolation='none')
        # ÉèÖÃͼƬµÄ±êÌ⣺¶ÔÓ¦µÄÀà±ð
        plt.title("Êý×Ö{}".format(train_labels[i]))
    ½á¹ûΪ£º
    1670403185154_36.png
    0 ·ÖÏíµ½£º
    ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
    ¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿