{"id":10006629,"date":"2022-09-29T19:05:24","date_gmt":"2022-09-29T11:05:24","guid":{"rendered":"https:\/\/ityet.com\/?p=10006629"},"modified":"2022-09-29T19:05:24","modified_gmt":"2022-09-29T11:05:24","slug":"%e8%b7%a8%e6%a8%a1%e6%80%81%e5%ad%a6%e4%b9%a0%e8%83%bd%e5%8a%9b%e5%86%8d%e5%8d%87%e7%ba%a7%ef%bc%8ceasynlp%e7%94%b5%e5%95%86%e6%96%87%e5%9b%be%e6%a3%80%e7%b4%a2%e6%95%88%e6%9e%9c%e5%88%b7%e6%96%b0sota","status":"publish","type":"post","link":"https:\/\/itmax.cn\/?p=10006629","title":{"rendered":"\u8de8\u6a21\u6001\u5b66\u4e60\u80fd\u529b\u518d\u5347\u7ea7\uff0cEasyNLP\u7535\u5546\u6587\u56fe\u68c0\u7d22\u6548\u679c\u5237\u65b0SOTA"},"content":{"rendered":"<p>\u7b80\u4ecb\uff1a\u00a0\u672c\u2f42\u7b80\u8981\u4ecb\u7ecd\u6211\u4eec\u5728\u7535\u5546\u4e0b\u5bf9CLIP\u6a21\u578b\u7684\u4f18\u5316\uff0c\u4ee5\u53ca\u4e0a\u8ff0\u6a21\u578b\u5728\u516c\u5f00\u6570\u636e\u96c6\u4e0a\u7684\u8bc4\u6d4b\u7ed3\u679c\u3002\u6700\u540e\uff0c\u6211\u4eec\u4ecb\u7ecd\u5982\u4f55\u5728EasyNLP\u6846\u67b6\u4e2d\u8c03\u7528\u4e0a\u8ff0\u7535\u5546CLIP\u6a21\u578b\u3002\u4f5c\u8005\uff1a\u718a\u516e\u3001\u6b22\u590f\u3001\u7ae0\u6377\u3001\u4e34\u5728\u00a0\u5bfc\u8bfb\u591a\u6a21\u6001\u5185\u5bb9\uff08\u4f8b\u5982\u56fe\u50cf\u3001\u6587\u672c\u3001\u8bed\u97f3\u3001\u89c6\u9891\u7b49\uff09\u5728\u4e92\u8054\u7f51\u4e0a\u7684\u7206\u70b8\u6027\u589e\u957f\u63a8\u52a8\u4e86\u5404\u79cd\u8de8\u6a21\u6001\u6a21\u578b\u7684\u7814\u7a76\u4e0e\u53d1\u5c55\uff0c\u652f\u6301\u4e86\u591a\u79cd\u8de8\u6a21\u6001\u5185\u5bb9\u7406\u89e3\u4efb\u52a1\u3002\u5728\u8fd9\u4e9b\u8de8\u6a21\u6001\u6a21\u578b\u4e2d\uff0cCLIP\uff08Contrastive Language-Image Pre-training\uff09\u662f\u4e00\u79cd\u7ecf\u5178\u7684\u6587\u56fe\u8de8\u6a21\u6001\u68c0\u7d22\u6a21\u578b\uff0c\u5b83\u5728\u5927\u89c4\u6a21\u56fe\u6587\u6570\u636e\u96c6\u4e0a\u8fdb\u884c\u4e86\u5bf9\u6bd4\u5b66\u4e60\u9884\u8bad\u7ec3\uff0c\u5177\u6709\u5f88\u5f3a\u7684\u6587\u56fe\u8de8\u6a21\u6001\u8868\u5f81\u5b66\u4e60\u80fd\u529b\u3002\u5728\u5148\u524d\u7684\u5de5\u4f5c\uff08\u770b\u8fd9\u91cc\uff09\u4e2d\uff0c\u4e2d\u2f42NLP\/\u591a\u6a21\u6001\u7b97\u6cd5\u6846\u67b6EasyNLP\u652f\u6301\u4e86CLIP\u7684\u57fa\u7840\u529f\u80fd\uff0c\u5305\u62ec\u6a21\u578b\u7684Finetune\u3001\u6587\u56fe\u5411\u91cf\u62bd\u53d6\u7b49\u3002\u5728\u672c\u671f\u7684\u5de5\u4f5c\u4e2d\uff0c\u6211\u4eec\u5bf9EasyNLP\u6846\u67b6\u8fdb\u884c\u4e86\u518d\u4e00\u6b21\u5347\u7ea7\uff0c\u63a8\u51fa\u4e86\u878d\u5408\u4e86\u4e30\u5bcc\u7535\u5546\u573a\u666f\u77e5\u8bc6\u7684CLIP\u6a21\u578b\uff0c\u5728\u7535\u5546\u6587\u56fe\u68c0\u7d22\u6548\u679c\u4e0a\u5237\u65b0\u4e86SOTA\u7ed3\u679c\uff0c\u5e76\u4e14\u5c06\u4e0a\u8ff0\u6a21\u578b\u514d\u8d39\u5f00\u6e90\uff0c\u8d21\u732e\u7ed9\u5f00\u6e90\u793e\u533a\u3002EasyNLP\uff08<a href=\"https:\/\/link.segmentfault.com\/?enc=7NGzkYd6m5QU%2FVGgjxYsnw%3D%3D.%2BDh7gUdORdI4oK8g%2FHFCqdcKmYqnMvqZztnoAtPRPY2M8MbAggAF1BfnCmxo1kCX\" rel=\"nofollow\">https:\/\/github.com\/alibaba\/Ea&#8230;<\/a>\uff09\u662f\u963f\u2fa5\u4e91\u673a\u5668\u5b66\u4e60PAI \u56e2\u961f\u57fa\u4e8e PyTorch \u5f00\u53d1\u7684\u6613\u2f64\u4e14\u4e30\u5bcc\u7684NLP\u7b97\u6cd5\u6846\u67b6\uff0c\u2f40\u6301\u5e38\u2f64\u7684\u4e2d\u2f42\u9884\u8bad\u7ec3\u6a21\u578b\u548c\u2f24\u6a21\u578b\u843d\u5730\u6280\u672f\uff0c\u5e76\u4e14\u63d0\u4f9b\u4e86\u4ece\u8bad\u7ec3\u5230\u90e8\u7f72\u7684\u2f00\u7ad9\u5f0f NLP \u5f00\u53d1\u4f53\u9a8c\u3002EasyNLP \u63d0\u4f9b\u4e86\u7b80\u6d01\u7684\u63a5\u2f1d\u4f9b\u2f64\u6237\u5f00\u53d1 NLP \u6a21\u578b\uff0c\u5305\u62ecNLP\u5e94\u2f64 AppZoo \u548c\u9884\u8bad\u7ec3 ModelZoo\uff0c\u540c\u65f6\u63d0\u4f9b\u6280\u672f\u5e2e\u52a9\u2f64\u6237\u2fbc\u6548\u7684\u843d\u5730\u8d85\u2f24\u9884\u8bad\u7ec3\u6a21\u578b\u5230\u4e1a\u52a1\u3002\u7531\u4e8e\u8de8\u6a21\u6001\u7406\u89e3\u9700\u6c42\u7684\u4e0d\u65ad\u589e\u52a0\uff0cEasyNLP\u4e5f\u2f40\u6301\u5404\u79cd\u8de8\u6a21\u6001\u6a21\u578b\uff0c\u63a8\u5411\u5f00\u6e90\u793e\u533a\uff0c\u5e0c\u671b\u80fd\u591f\u670d\u52a1\u66f4\u591a\u7684 NLP \u548c\u591a\u6a21\u6001\u7b97\u6cd5\u5f00\u53d1\u8005\u548c\u7814 \u7a76\u8005\uff0c\u4e5f\u5e0c\u671b\u548c\u793e\u533a\u2f00\u8d77\u63a8\u52a8 NLP \/\u591a\u6a21\u6001\u6280\u672f\u7684\u53d1\u5c55\u548c\u6a21\u578b\u843d\u5730\u3002\u672c\u2f42\u7b80\u8981\u4ecb\u7ecd\u6211\u4eec\u5728\u7535\u5546\u4e0b\u5bf9CLIP\u6a21\u578b\u7684\u4f18\u5316\uff0c\u4ee5\u53ca\u4e0a\u8ff0\u6a21\u578b\u5728\u516c\u5f00\u6570\u636e\u96c6\u4e0a\u7684\u8bc4\u6d4b\u7ed3\u679c\u3002\u6700\u540e\uff0c\u6211\u4eec\u4ecb\u7ecd\u5982\u4f55\u5728EasyNLP\u6846\u67b6\u4e2d\u8c03\u7528\u4e0a\u8ff0\u7535\u5546CLIP\u6a21\u578b\u3002CLIP\u6a21\u578b\u6280\u672f\u6982\u89c8OpenAI\u4e8e2021\u5e74\u63d0\u51fa\u7684CLIP\uff08Contrastive Language-Image Pre-training\uff09\u6a21\u578b\uff0c\u6536\u96c6\u4e864\u4ebf\u6587\u672c-\u56fe\u50cf\u5bf9\u8fdb\u884c\u56fe\u6587\u5bf9\u6bd4\u5b66\u4e60\u8bad\u7ec3\uff0c\u5efa\u7acb\u4e86\u56fe\u50cf\u548c\u6587\u672c\u7684\u5173\u8054\u6027\u3002CLIP\u6a21\u578b\u5305\u542b\u4e24\u90e8\u5206\uff0c\u5206\u522b\u4e3a\u56fe\u50cf\u548c\u6587\u672c\u7684Encoder\uff0c\u7528\u4e8e\u5bf9\u56fe\u50cf\u548c\u6587\u672c\u5206\u522b\u8fdb\u884c\u7279\u5f81\u62bd\u53d6\u3002CLIP\u7684\u56fe\u50cf\u7684Backbone\u6709\u591a\u4e2a\u9009\u62e9\uff0c\u65e2\u53ef\u4ee5\u4f7f\u7528\u7ecf\u5178\u7684ResNet\u7cfb\u5217\u6a21\u578b\uff0c\u4e5f\u53ef\u4ee5\u9009\u62e9\u8fd1\u4e24\u5e74\u66f4\u5148\u8fdb\u7684Transfomer\u7c7b\u6a21\u578b\uff0c\u4f8b\u5982ViT\u7b49\u3002\u5bf9\u4e8e\u6587\u672c\u800c\u8a00\uff0cCLIP\u4e00\u822c\u4f7f\u7528BERT\u7c7b\u6a21\u578b\uff0cRoBERTa\u7b49\u4e5f\u53ef\u4ee5\u4f5c\u4e3a\u9009\u62e9\u3002CLIP\u6a21\u578b\u57fa\u7840\u6280\u672fCLIP\u5728\u7279\u5f81\u62bd\u53d6\u540e\uff0c\u5206\u522b\u5bf9\u56fe\u6587\u5411\u91cf\u8fdb\u884cNormalization\uff0c\u4e4b\u540e\u8fdb\u4e00\u6b65\u8fdb\u884c\u5185\u79ef\u8ba1\u7b97\uff0c\u83b7\u53d6\u6837\u672c\u95f4\u7684\u76f8\u4f3c\u5ea6\u3002\u5728\u6a21\u578bLoss Function\u5c42\u9762\uff0c\u7531\u4e8e\u6211\u4eec\u5bf9\u8fdb\u884cNormalization\u4e4b\u540e\u7684\u56fe\u50cf\u548c\u6587\u672c\u5411\u91cf\u76f4\u63a5\u4f7f\u7528\u76f8\u4e58\u4ee5\u8ba1\u7b97\u4f59\u5f26\u8ddd\u79bb\uff0c\u76ee\u7684\u662f\u4f7f\u5f97\u5339\u914d\u7684\u56fe\u6587\u5bf9\u7684\u7ed3\u679c\u8d8b\u8fd1\u4e8e1\uff0c\u4e0d\u5339\u914d\u7684\u56fe\u6587\u5bf9\u7684\u7ed3\u679c\u8d8b\u8fd1\u4e8e0\uff1b\u5e76\u4e14\u4f18\u5316\u5bf9\u6bd4\u5b66\u4e60\u635f\u5931InfoNCE\u8fdb\u884c\u6a21\u578b\u7684\u9884\u8bad\u7ec3\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562755\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>CLIP\u7684\u53cc\u6d41\u67b6\u6784\u4f7f\u5f97\u5176\u5728\u63a8\u7406\u9636\u6bb5\u53ef\u4ee5\u975e\u5e38\u65b9\u4fbf\u5730\u7528\u4e8e\u8ba1\u7b97\u56fe\u6587\u76f8\u4f3c\u5ea6\uff0c\u56e0\u4e3aCLIP\u5df2\u7ecf\u5c06\u56fe\u6587\u7684\u8868\u793a\u6620\u5c04\u5230\u540c\u4e00\u4e2a\u5411\u91cf\u7a7a\u95f4\u3002\u6b64\u5916\uff0c\u901a\u8fc7\u5bf9\u7c7b\u522b\u6807\u7b7e\u8bbe\u8ba1Prompt\uff0cCLIP\u7684\u8fd8\u5177\u6709\u5f3a\u5927\u7684Zero-shot Classification\u80fd\u529b\u3002\u5982\u4e0b\u56fe\u6240\u793a\uff0c\u5c06\u6587\u672c\u6807\u7b7e\u8f6c\u5316\u4e3aPrompt \u201cA photo of a {object}.\u201d\uff0c\u5e76\u4e14\u4f7f\u7528\u76ee\u6807\u56fe\u50cf\u4f5c\u4e3a\u8f93\u51fa\u3002\u5982\u679c\u6587\u672c\u201cA photo of a dog.\u201d\u4e8e\u5f53\u524d\u56fe\u50cf\u5339\u914d\u5ea6\u6700\u9ad8\uff08\u5177\u6709\u6700\u5927\u7684\u4f59\u5f26\u76f8\u4f3c\u5ea6\uff09\uff0c\u5373\u53ef\u4ee5\u8bf4\u660e\uff0c\u5f53\u524d\u56fe\u50cf\u7684\u7269\u4f53\u662f\u201cdog\u201d\u3002\u7531\u6b64\u53ef\u89c1\uff0c\u9884\u8bad\u7ec3\u540e\u7684CLIP\u6a21\u578b\u53ef\u4ee5\u975e\u5e38\u597d\u7684\u76f4\u63a5\u5e94\u7528\u4e8e\u56fe\u50cf\u5206\u7c7b\u6a21\u578b\uff0c\u800c\u4e0d\u9700\u8981\u989d\u5916\u7684\u8bad\u7ec3\u3002<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562756\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u7535\u5546\u573a\u666f\u4e0bCLIP\u6a21\u578b\u7684\u4f18\u5316EasyNLP\u501f\u9274CLIP\u7684\u8f7b\u91cf\u5316\u3001\u6613\u8fc1\u79fb\u7684\u9884\u8bad\u7ec3\u67b6\u6784\uff0c\u6784\u5efa\u57fa\u4e8eCLIP\u5305\u542b\u56fe\u50cf\u548c\u6587\u672cEncoder\u4e24\u90e8\u5206\u7684\u53cc\u6d41\u6a21\u578b\uff0c\u540c\u65f6\u57fa\u4e8e\u5546\u54c1\u6570\u636e\uff0c\u4ee5\u4f18\u5316\u7535\u5546\u573a\u666f\u7684\u6587\u56fe\u68c0\u7d22\u4f18\u5316\u3002\u5177\u4f53\u6765\u8bf4\uff0c\u6211\u4eec\u91c7\u6837\u4e86200\u4e07\u7684\u5546\u54c1\u56fe\u6587\u6570\u636e\uff0c\u5728OpenCLIP\u516c\u5f00\u7684\u6a21\u578b\u6743\u91cd\u4e0a\u8fdb\u884c\u4e86\u7ee7\u7eed\u9884\u8bad\u7ec3\uff0c\u4f7f\u5f97\u6a21\u578b\u5177\u6709\u7535\u5546\u9886\u57df\u7684\u611f\u77e5\u80fd\u529b\u3002\u540c\u65f6\uff0c\u7531\u4e8e\u7535\u5546\u573a\u666f\u7684\u6587\u672c\u6982\u5ff5\u5206\u5e03\u7a00\u758f\uff0c\u56fe\u50cf\u4ee5\u5546\u54c1\u56fe\u4e3a\u4e3b\uff0c\u5177\u6709\u8f83\u4f4e\u7684\u573a\u666f\u4e30\u5bcc\u6027\uff0c\u56e0\u6b64\uff0c\u6211\u4eec\u5728\u9884\u8bad\u7ec3\u8fc7\u7a0b\u4e2d\u66f4\u52a0\u5173\u6ce8\u7535\u5546\u6982\u5ff5\u7684\u76f8\u5173\u77e5\u8bc6\uff0c\u5f15\u5165\u4e86\u56fe\u6587\u77e5\u8bc6\u7684\u7ec6\u7c92\u5ea6\u4ea4\u4e92\uff0c\u4f7f\u5f97\u6a21\u578b\u5177\u5907\u7535\u5546\u77e5\u8bc6\u7684\u8bc6\u522b\u80fd\u529b\u3002\u7279\u522b\u5730\uff0c\u6211\u4eec\u91cd\u70b9\u53c2\u8003\u4e86DeCLIP\u7684\u5de5\u4f5c\uff0c\u5bf9\u4e8e\u7535\u5546\u6982\u5ff5\u6784\u5efa\u5176Prototype\u8868\u5f81\uff0c\u5b58\u50a8\u5728Feature Queue\u4e2d\uff0c\u4ece\u800c\u5728\u8bad\u7ec3\u8fc7\u7a0b\u4e2d\u5173\u6ce8\u5f53\u524d\u56fe\u6587\u5bf9\u4e0e\u7535\u5546\u6982\u5ff5Prototype\u8868\u5f81\u7684\u5339\u914d\u4fe1\u606f\uff08\u89c1\u53c2\u8003\u6587\u732e8\uff09\u3002\u5bf9\u56fe\u50cf\u90e8\u5206\u7684\u8f93\u5165\uff0c\u6211\u4eec\u5c06\u56fe\u50cf\u7edf\u4e00Resize\u4e3a224\u00d7224\u7684\u5927\u5c0f\uff0c\u5e76\u8003\u8651\u4e0d\u540c\u7684\u5e94\u7528\u548c\u90e8\u7f72\u573a\u666f\uff0c\u91c7\u7528ViT-B-32\uff08Vision Transformer\u5c42\u6570\u4e3a12\uff0c\u56fe\u50cfPatch\u5927\u5c0f\u4e3a32\u00d732\uff09\u548cViT-L-14\uff08Vision Transformer\u5c42\u6570\u4e3a24\uff0c\u56fe\u50cfpatch\u5927\u5c0f\u4e3a14\u00d714\uff09\u4e24\u79cd\u6a21\u578b\u4f5c\u4e3a\u56fe\u50cf\u4fa7\u7684Encoder\u3002\u5bf9\u4e8e\u6587\u672c\u90e8\u5206\u7684\u8f93\u5165\uff0c\u6211\u4eec\u548cCLIP\u4e00\u6837\u91c7\u752812\u5c42Text Transformer\u4f5c\u4e3a\u6587\u672c\u4fa7Encoder\uff0c\u901a\u8fc7BPE\u5206\u8bcd\u5668\u505a\u6587\u672c\u9884\u5904\u7406\uff0c\u5e76\u9650\u5b9a\u6587\u672c\u8bcd\u957f\u5c0f\u4e8e77\u3002\u8fd9\u4e24\u4e2a\u7535\u5546\u573a\u666f\u7684CLIP\u6a21\u578b\u53c2\u6570\u914d\u7f6e\u5982\u4e0b\u8868\uff1a\u6a21\u578b\u914d\u7f6ealibaba-pai\/pai-clip-commercial-base-enalibaba-pai\/pai-clip-commercial-large-en\u53c2\u6570\u91cf\uff08Parameters\uff09151M428M\u5c42\u6570\uff08Number of Layers\uff091224\u6ce8\u610f\u529b\u5934\u6570\uff08Attention Heads\uff091216\u9690\u5411\u91cf\u7ef4\u5ea6\uff08Hidden Size\uff097681024\u6587\u672c\u957f\u5ea6\uff08Text Length\uff097777\u56fe\u50cf\u5e8f\u5217\u957f\u5ea6\uff08Image Patch Size\uff0932 x 3214 x 14\u56fe\u50cf\u5c3a\u5bf8\uff08Image Size\uff09224 x 224224 x 224\u8bcd\u8868\u5927\u5c0f\uff08Vocabulary Size\uff094940849408\u5982\u4e0a\u8868\u6240\u8ff0\uff0c\u7535\u5546CLIP\u6a21\u578b\u5305\u542b\u4e86\u4e24\u4e2a\u4e0d\u540c\u7684\u56fe\u50cfEncoder\u67b6\u6784\uff0c\u4e3a\u8868\u4e2d\u7684pai-clip-commercial-base-en\u548cpai-clip-commercial-large-en\u6a21\u578b\uff0c\u5206\u522b\u4ee3\u8868ViT-B-32\u548cViT-L-14\u4f5c\u4e3a\u56fe\u50cfBackbone\u3002\u6b64\u5916\uff0c\u6211\u4eec\u4e5f\u63d0\u4f9b\u4e86\u4e24\u4e2a\u4e2d\u6587\u7684\u9884\u8bad\u7ec3CLIP\u6a21\u578b\uff0c\u8d21\u732e\u5230\u5f00\u6e90\u793e\u533a\uff0c\u76f8\u5173\u914d\u7f6e\u5982\u4e0b\uff1a\u6a21\u578b\u914d\u7f6ealibaba-pai\/clip_chinese_roberta_base_vit_basealibaba-pai\/clip_chinese_roberta_base_vit_large\u53c2\u6570\u91cf\uff08Parameters\uff09188M406M\u5c42\u6570\uff08Number of Layers\uff091224\u6ce8\u610f\u529b\u5934\u6570\uff08Attention Heads\uff091216\u9690\u5411\u91cf\u7ef4\u5ea6\uff08Hidden Size\uff097681024\u6587\u672c\u957f\u5ea6\uff08Text Length\uff097777\u56fe\u50cf\u5e8f\u5217\u957f\u5ea6\uff08Image Patch Size\uff0916 x 1616 x 16\u56fe\u50cf\u5c3a\u5bf8\uff08Image Size\uff09224 x 224224 x 224\u8bcd\u8868\u5927\u5c0f\uff08Vocabulary Size\uff092112821128\u7535\u5546CLIP\u6a21\u578b\u6548\u679c\u8bc4\u6d4bFashion-Gen\u6570\u636e\u96c6\u662f\u4e00\u4e2a\u5927\u89c4\u6a21\u7684\u65f6\u5c1a\u573a\u666f\u7684\u56fe\u6587\u6570\u636e\u96c6\uff0c\u662f\u7535\u5546\u9886\u57dfFashionBERT\u3001KaleidoBERT\u3001CommerceMM\u7b49\u6a21\u578b\u7528\u6765\u8bc4\u6d4b\u68c0\u7d22\u6548\u679c\u7684\u8f83\u4e3a\u901a\u7528\u7684\u6570\u636e\u96c6\u3002Fashion-Gen\u5171\u5305\u542b293,088\u6761\u5546\u54c1\u56fe\u6587\u6570\u636e\uff0c\u5176\u4e2d\u8bad\u7ec3\u96c6\u5305\u542b260,480\u4e2a\u56fe\u6587\u5bf9\uff0c\u9a8c\u8bc1\u96c6\u548c\u6d4b\u8bd5\u96c6\u5305\u542b32,528\u6761\u56fe\u6587\u5bf9\u3002Fashion-Gen\u4e2d\u7684\u5546\u54c1\u6570\u636e\u5305\u542b48\u4e2a\u5927\u7c7b\u522b\uff0c121\u4e2a\u5c0f\u7c7b\u522b\uff0c\u5728\u8bad\u7ec3\u548c\u6d4b\u8bd5\u6570\u636e\u4e2d\u7c7b\u522b\u6700\u591a\u7684\u5305\u62ec&#8221;tops&#8221;\uff0c&#8221;sweaters&#8221;\uff0c&#8221;jackets &#038; coats&#8221;\u7b49\u3002\u6211\u4eec\u57fa\u4e8epai-clip-commercial-base-en\u548cpai-clip-commercial-large-en\u8fd9\u4e24\u4e2a\u6a21\u578b\u5728Fashion-Gen\u6570\u636e\u96c6\u4e0a\u8fdb\u884c\u4e8620\u4e2aepoch\u7684\u5fae\u8c03\u3002\u5982\u4e0b\u8868\u6240\u793a\uff0c\u5b9e\u9a8c\u7ed3\u679c\u8868\u660e\uff0c\u76f8\u6bd4\u4e8e\u73b0\u516c\u5e03\u7684SOTA\u6a21\u578b\uff08CommerceMM\uff09\uff0c\u5728\u6587\u5230\u56fe\u548c\u56fe\u5230\u6587\u7684\u68c0\u7d22\u7ed3\u679c\u4e0a\uff0c\u6211\u4eec\u7684\u7535\u5546CLIP\u5df2\u7ecf\u6709\u4e86\u663e\u8457\u7684\u6548\u679c\u63d0\u5347\u3002\u5176\u4e2d\uff0c<a href=\"https:\/\/segmentfault.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"5301323d381362\">[email&#160;protected]<\/a>\uff0c<a href=\"https:\/\/segmentfault.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"0250636c694237\">[email&#160;protected]<\/a>\u548c<a href=\"https:\/\/segmentfault.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"87d5e6e9ecc7b6b7\">[email&#160;protected]<\/a>\u5206\u522b\u4ee3\u8868\u56fe\u6587\u6216\u6587\u56fe\u68c0\u7d22\u7ed3\u679cTop 1\u3001Top 5\u548cTop 10\u4e2d\u542b\u6709\u6b63\u786e\u7ed3\u679c\u7684\u51c6\u786e\u7387\u3002\u6211\u4eec\u7684\u7535\u5546CLIP-large\u6a21\u578b\uff0c\u5728\u56fe\u6587\u68c0\u7d22\u7684\u7ed3\u679c\u4e0a\u63d0\u5347\u4e862.9\uff5e5.6\u4e2a\u767e\u5206\u70b9\uff0c\u5728\u6587\u56fe\u68c0\u7d22\u4e0a\u7684\u8868\u73b0\u66f4\u52a0\u4f18\u79c0\uff0c\u5728\u4e09\u4e2a\u8bc4\u6d4b\u6307\u6807\u4e0a\u63d0\u5347\u4e868.7\uff5e15\u4e2a\u767e\u5206\u70b9\u3002\u7535\u5546base\u6a21\u578b\u5728\u6587\u5230\u56fe\u7684\u68c0\u7d22\u7ed3\u679c\u4e0a\u4e0eCommerceMM\u76f8\u5f53\uff0c\u5374\u4f7f\u7528\u4e86\u66f4\u5c11\u7684\u53c2\u6570\u91cf\u3002\u7535\u5546CLIP\u65e0\u8bba\u5728large\u8fd8\u662fbase\u56fe\u50cfEncoder\u7684\u8bbe\u7f6e\u4e0b\uff0c\u90fd\u53d6\u5f97\u4e86\u6709\u7ade\u4e89\u529b\u7684\u7535\u5546\u573a\u666f\u8de8\u6a21\u6001\u68c0\u7d22\u80fd\u529b\u3002\u6587\u5230\u56fe\u68c0\u7d22\u8bc4\u6d4b\u7ed3\u679c\u6a21\u578b<a href=\"https:\/\/segmentfault.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"f4a6959a9fb4c5a6959a9f\">[email&#160;protected]<\/a>@<a href=\"https:\/\/segmentfault.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"3c096e5d52577c0d0c7a5d4f545553527e796e680e0a120b09080a1208040909120b08775d50595558537e796e680f0f12050a0c12090a04120a7f70756c0f0a12\">[email&#160;protected]<\/a>858.967.6CommerceMM39.661.572.7EI-CLIP28.457.169.4EasyNLP\u7535\u5546CLIPpai-clip-commercial-base-en39.561.570.0pai-clip-commercial-large-en54.675.181.4\u00a0\u56fe\u5230\u6587\u68c0\u7d22\u8bc4\u6d4b\u7ed3\u679c\u6a21\u578b<a href=\"https:\/\/segmentfault.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"f1a3909f9ab1c0a3909f9a\">[email&#160;protected]<\/a>@<a href=\"https:\/\/segmentfault.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"94a1c6f5faffd4a5a4d2f5e7fcfdfbfad6d1c6c0a6a7baada2a0a2baa7a5a1a6baa5a6dff5f8f1fdf0fbd6d1c6c0a6acbaa4a2a4baa5a2acbaa0d7d8ddc4a7a5ba\">[email&#160;protected]<\/a>955.464.1CommerceMM41.664.072.8EI-CLIP25.754.566.8EasyNLP\u7535\u5546CLIPpai-clip-commercial-base-en33.857.566.0pai-clip-commercial-large-en47.269.375.7\u00a0\u5982\u4e0b\u5c55\u793a\u4e86EasyNLP\u7535\u5546CLIP\u5728Fashion-Gen\u9a8c\u8bc1\u96c6\u4e0a\u7684\u6587\u56fe\u68c0\u7d22\u7ed3\u679c\uff0c\u5bf9\u4e8e\u76f8\u540c\u7684\u6587\u672c\uff0c\u6211\u4eec\u5206\u522b\u5c55\u793a\u4e86\u6211\u4eec\u6a21\u578b\u548c\u5f00\u6e90CLIP\u6a21\u578b\u7684Top-1\u56fe\u50cf\u68c0\u7d22\u7ed3\u679c\uff1aCaseQueryEasyNLP\u7535\u5546CLIPOpenCLIP1Midi skirt in pine green. Stiff, washed finish throughout. Oversized bow accent at waist. Ruffled detail at front. Concealed zip closure at back. Vented at back. Tonal stitching.<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562757\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><\/p>\n<p><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562758\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>2Jersey skirt in black. Elasticised waistband. Shirring at front waist. Drop-tail hem. Fully lined. Tonal stitching.<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562759\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><\/p>\n<p><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562760\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>3Long sleeve French terry pullover in black. Rib knit crewneck collar. Lace-up fastening at side-seams. Tonal stitching.<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562761\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><\/p>\n<p><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562762\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>4Long sleeve cotton-blend jersey henley in heather &#8216;medium&#8217; grey. Crewneck collar. Three-button placket. Rib knit cuffs. Tonal stitching.<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562763\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><\/p>\n<p><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562764\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>5Canvas slip-on sandals in black. Fringed edges throughout. Open round toe. Leather lining in beige. Round block heel. Tonal leather sole. Tonal stitching. Approx. 3\/&quot; heel.<br \/><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562765\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><\/p>\n<p><img decoding=\"async\" referrerpolicy=\"no-referrer\" src=\"https:\/\/segmentfault.com\/img\/remote\/1460000042562766\" alt=\"\u56fe\u7247\" title=\"\u56fe\u7247\" loading=\"lazy\"><br \/>\u00a0\u901a\u8fc7\u4e0a\u8ff0\u6848\u4f8b\u5c55\u793a\u53ef\u4ee5\u770b\u51fa\uff0cEasyNLP\u7535\u5546CLIP\u5728\u56fe\u6587\u4ea4\u4e92\u8fc7\u7a0b\u4e2d\u53ef\u4ee5\u6355\u6349\u66f4\u7ec6\u7c92\u5ea6\u7684\u65f6\u5c1a\u4fe1\u606f\uff0c\u66f4\u8fdb\u4e00\u6b65\u5728\u6982\u5ff5\u77e5\u8bc6\u5c42\u7ea7\u5b9e\u73b0\u56fe\u6587\u6837\u672c\u7684\u8de8\u6a21\u6001\u5bf9\u9f50\u3002\u5982case 1\u6240\u793a\uff0cEasyNLP\u7535\u5546CLIP\u66f4\u51c6\u786e\u7684\u6355\u6349\u4e86\u76ee\u6807\u5546\u54c1\u56fe\u7247\u7684\u4e3b\u4f53\u4e3a\u201cMidi skirt in pine green.\u201d\uff0c\u5e76\u4f7f\u5f97\u5305\u542b\u4e86\u201cmidi skirt\u201d\uff0c\u201cpine green\u201d\uff0c\u201cbow accent\u201d\uff0c\u201cruffled detail\u201d\u7b49\u7ec6\u7c92\u5ea6\u65f6\u5c1a\u6b63\u786e\u7684\u56fe\u50cf\u2014\u2014\u6b63\u9762\u8377\u53f6\u8fb9\u3001\u8170\u90e8\u542b\u6709\u8774\u8776\u7ed3\u88c5\u9970\u3001\u677e\u7eff\u8272\u3001\u4e2d\u957f\u534a\u8eab\u88d9\u7684\u5546\u54c1\u56fe\u4e0e\u6587\u672c\u6709\u66f4\u9ad8\u7684\u76f8\u4f3c\u5ea6\u3002\u6ca1\u6709\u5728\u9884\u8bad\u7ec3\u8fc7\u7a0b\u4e2d\u6ce8\u5165\u7535\u5546\u77e5\u8bc6\u7684\u6a21\u578b\u867d\u7136\u4e5f\u68c0\u7d22\u5230\u4e86\u677e\u7eff\u8272\u7684\u5546\u54c1\u56fe\uff0c\u4f46\u5728\u5546\u54c1\u4e3b\u4f53\u5b9a\u4f4d\u4e0a\u5373\u4ea7\u751f\u4e86\u9519\u8bef\u3002case 4\u5219\u66f4\u5173\u6ce8\u5230\u4e86\u7ec6\u7c92\u5ea6\u7684\u65f6\u5c1a\u6982\u5ff5\u201cthree-button placket.\u201d\uff0c\u4f7f\u5305\u542b\u8fd9\u4e9b\u7279\u5f81\u7684\u6b63\u786e\u56fe\u7247\uff08\u7b2c\u4e8c\u5217\uff09\u6392\u540d\u66f4\u9760\u524d\u3002case 4\u7b2c\u4e09\u5217\u7684\u5546\u54c1\u56fe\u867d\u7136\u540c\u6837\u53ef\u4ee5\u5339\u914d\u201clong sleeve\u201d\uff0c\u201c&#8217;medium&#8217; grey\u201d\u7b49\u7279\u5f81\uff0c\u4f46\u76f8\u6bd4\u4e8eground-truth\u56fe\u50cf\uff0c\u5176\u4ec5\u53cd\u6620\u4e86query\u7684\u90e8\u5206\u4fe1\u606f\u3002\u540c\u6837\u7684\uff0ccase 5\u4e2d\u7684\u9519\u8bef\u56fe\u50cf\u4ec5\u5173\u6ce8\u4e86\u201cin black\u201d\uff0c\u201cfringed edges\u201d\u7b49\u7ec6\u8282\u6982\u5ff5\uff0c\u800c\u5ffd\u89c6\u4e86query\u4e2d\u7279\u5f81\u7684\u4e3b\u4f53\u5e94\u4e3a\u201csandals\u201d\u3002\u901a\u8fc7EasyNLP\u7535\u5546CLIP\u5bf9\u4e8e\u56fe\u6587\u65f6\u5c1a\u6982\u5ff5\u7684\u5bf9\u9f50\uff0c\u5219\u53ef\u4ee5\u5f88\u597d\u7684\u907f\u514d\u8fd9\u4e9b\u9519\u8bef\u7684\u5339\u914d\u3002EasyNLP\u6846\u67b6\u4e2d\u7535\u5546CLIP\u6a21\u578b\u7684\u5b9e\u73b0\u5728EasyNLP\u6846\u67b6\u4e2d\uff0c\u6211\u4eec\u5728\u6a21\u578b\u5c42\u6784\u5efa\u4e86CLIP\u6a21\u578b\u7684Backbone\uff0c\u5176\u6838\u2f3c\u4ee3\u7801\u5982\u4e0b\u6240\u793a\uff1a\u00a0    def forward(self, inputs,feat=None):<\/p>\n<pre><code>    if self.model_type=='open_clip':\n        _device=self.open_clip.text_projection.device\n        logit_scale = self.open_clip.logit_scale.exp()\n    elif self.model_type=='chinese_clip':\n        _device=self.chinese_clip.text_projection.device\n        logit_scale = self.chinese_clip.logit_scale.exp()\n    else:\n        _device=self.text_projection.weight.device\n        logit_scale = self.logit_scale.exp()\n    if 'pixel_values' in inputs:\n        inputs['pixel_values']=inputs['pixel_values'].to(_device)\n    else:\n        inputs['pixel_values']=None\n    if 'input_ids' in inputs:\n        inputs['input_ids']=inputs['input_ids'].to(_device)\n    else:\n        inputs['input_ids']=None\n    if self.model_type=='open_clip':\n        image_embeds, text_embeds = self.open_clip(inputs['pixel_values'], inputs['input_ids']) \n    elif self.model_type=='chinese_clip':\n        image_embeds, text_embeds = self.chinese_clip(inputs['pixel_values'], inputs['input_ids'])             \n    else:\n        image_embeds=None\n        text_embeds=None\n        if 'input_ids' in inputs:\n            text_outputs = self.text_encoder(input_ids=inputs['input_ids'],\n            token_type_ids=inputs['token_type_ids'].to(_device),\n            attention_mask=inputs['attention_mask'].to(_device))\n            text_embeds = text_outputs[1]\n            text_embeds = self.text_projection(text_embeds)\n            text_embeds = text_embeds \/ text_embeds.norm(dim=-1, keepdim=True)\n        if 'pixel_values' in inputs:\n            vision_outputs = self.vision_encoder(\n                pixel_values=inputs['pixel_values']\n            )\n            image_embeds = vision_outputs[1].detach()\n            image_embeds = self.vision_projection(image_embeds)\n            image_embeds = image_embeds \/ image_embeds.norm(dim=-1, keepdim=True)\n    if feat is True:\n        return {'image_embeds':image_embeds,'text_embeds':text_embeds}\n    # cosine similarity as logits\n    logits_per_text = torch.matmul(text_embeds, image_embeds.t()) * logit_scale\n    logits_per_image = logits_per_text.T\n    return {'logits_per_text':logits_per_text,'logits_per_image':logits_per_image,'image_embeds':image_embeds,'text_embeds':text_embeds}\n\n# contrastive loss function, adapted from\n# https:\/\/sachinruk.github.io\/blog\/pytorch\/pytorch%20lightning\/loss%20function\/gpu\/2021\/03\/07\/CLIP.html\ndef contrastive_loss(self,logits: torch.Tensor) -&gt; torch.Tensor:\n    return nn.functional.cross_entropy(logits, torch.arange(len(logits), device=logits.device))\n\ndef clip_loss(self,similarity: torch.Tensor) -&gt; torch.Tensor:\n    caption_loss = self.contrastive_loss(similarity)\n    image_loss = self.contrastive_loss(similarity.T)\n    return (caption_loss + image_loss) \/ 2.0    \n\ndef compute_loss(self, forward_outputs, label_ids, **kwargs):\n    loss = self.clip_loss(forward_outputs['logits_per_text'])\n    return {'loss': loss}\u4e2d\u82f1\u6587CLIP\u6a21\u578b\u4f7f\u2f64\u6559\u7a0b\u4ee5\u4e0b\u6211\u4eec\u7b80\u8981\u4ecb\u7ecd\u5982\u4f55\u5728EasyNLP\u6846\u67b6\u4f7f\u2f64CLIP\u6a21\u578b\u3002\u5b89\u88c5EasyNLP\u2f64\u6237\u53ef\u4ee5\u76f4\u63a5\u53c2\u8003GitHub\uff08https:\/\/github.com\/alibaba\/EasyNLP\uff09\u4e0a\u7684\u8bf4\u660e\u5b89\u88c5EasyNLP\u7b97\u6cd5\u6846\u67b6\u3002\u6570\u636e\u51c6\u5907CLIP\u662f\u4e00\u4e2afinetune\u6a21\u578b\uff0c\u9700\u8981\u7528\u6237\u51c6\u5907\u4e0b\u6e38\u4efb\u52a1\u7684\u8bad\u7ec3\u4e0e\u9a8c\u8bc1\u6570\u636e\uff0c\u4e3atsv\u6587\u4ef6\u3002\u8fd9\u2f00\u2f42\u4ef6\u5305\u542b\u4ee5\u5236\u8868\u7b26\/t\u5206\u9694\u7684\u4e24\u5217\uff0c\u7b2c\u4e00\u5217\u662f\u6587\u672c\uff0c\u7b2c\u4e8c\u5217\u662f\u56fe\u7247\u7684base64\u7f16\u7801\u3002\u6837\u4f8b\u5982\u4e0b\uff1aLong sleeve stretch jersey pullover in 'burnt' red. Turtleneck collar. Tonal stitching. \/9j\/4AAQSkZJRgABAQAAAQABAAD\/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL\/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL\/wAARCAEAAQADASIAAhEBAxEB\/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL\/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6\/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL\/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6\/9oADAMBAAIRAxEAPwD3+iiigAooooAKKKKACiiigAooooAKKKKACiio5JUhiaSRgqICzE9gKAK2o6nZaRYyXt\/cJBbxjLO5x+Hua8W8S\/G26uJnt9CjS3hHAnmGXb3A7VxfxI8dXPibXpY4pmWwhYrAmeAP731NchapHICDuDH+LOKycm9jVRS3O6sPiX4r028+3Ndtcrn5o3YsrD6Z\/lXp3hn4y6bqxji1O2Nk7Y\/eK25P8RXz2LORpWSCaQsqluenApbedoASxAL8AHjHqaSbWw2k9z7PimjuIllidXjcZVlOQRUteP8AwR8VyajZ3OjXMm4w\/vYMn+HuPz5\/GvYK1TujJqzCiiimIKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigBK8++LXiuHQfCk9mjn7ber5aKvZf4iT24\/nXoVfOHxiafU\/G32KI71tYlVscgM3JJ\/MflUTdkXTV5HmNpZzahdrFEpaWRsAV6r4Y+GVuUWXUZi0h52r0FYPg\/T2sBNdyR72V9nHoK9C0vxnYef5BtbhcYBfadoz0zXHOcm7LY74U1GN3uTf8ACvtGt2kaNHPmLtbcc5rz7xt4LtrK3a4slY7OSp54r17UdbsbC2SW5cqr8rgZJ\/CuN1TWtN1iFktGd9+VIIxU80k7opRUlZnFfBq+ez+IdjHnCTh4z\/3yf8K+p6+aPAegyw+L9NvAWRYr8IF29Rnnn\/Pevpeu2m01ocFWLi1cWiiitDIKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigBDXj\/jrw1Npl1qOtrH5sMoZpQo+8pO78CCB+Few1g+LLC61fw\/daZZbVmul8vzH+7GuRkn8O1RON0XTlyyueLeDdQs5725jj3bPM+4\/Vcjoa71tPtba2eSOMDcK4G38LyeE\/Fl1p0plMcsayRTuuA7Drj867Ka\/T+zRHcGQbhjdGpJB\/CuCS5ZWPSg+eKZc+zxTXUSSqGIiG0kdPpWXqmnWGmQO8aKrY4OBx9KWzvVF4GlmuJG2bUDwsoA\/LrVTXfNurec\/M7BSI0Xu1J9i7Wdw+HN3Zajr1tbK6vLC0t2SvTpgD6\/Nn8K9nryv4VeBrrRJH1XUR5dwylY4scgNgkn8hXqtd9KPLE8ytLmlcKKKK0MgooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDhviXq2iaVoAl1NQ10c\/ZVX7+7uQfQd64bw94l06\/hVZZUI9Saq\/HfVoLjUdP0+CW3laBHaXY+XRiRwfTp0rxyOae2l8y3laNvVTj9K5Ky5pHq4ak1ST7n0Nf6ppNnbmSOSMf7rVB4C1XS\/EviO4tTK3n26ebGq8qwzg8+oyK8DuNQv7sbZ7mR19C3H5Cuq+Gepvo\/jfTJVnWGKSURSu3Qq3BH8uaiEFGSbLqU5Om7H1gkaxrtUYFOpoIIBBBB7inV3HjhRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAJWBf+NPDmmMUutXtVcdUR97D8FzXL\/FvxXPoWiR2NlJ5d1e5BcdVjHXH1zj86+ejMSMk81jUq8rsjuw2D9rHmk7I+gtV+M+gWasLK3ub1x0IXy1P4nn9K88174zeItURobBItNibgmL5nI\/3j0\/AV54059aiL5NYurJnfHA0o7IS6ke5kaSZi8jHJdjkk+9Vyjnpg\/hVjIPWnZWoudfKrFMxSd1A\/CpYlZGDdSOlTHBoyMUXBRSOu8O\/ErxJ4cVIre6Fxaqf+Pe4G5QPY9R+FeqaD8btGvQserWk9hL0LoPMj\/TkflXz4GqRZcVcakonLVwdOo77H1tY+LfD+psi2msWkjt0TzArH8DzW2MHoa+MxPgZB6V6\/8IfHF1JfL4f1CVpUkBNs7nJRgM7c+hFawrXdmcFfA8keaLvY9vooorc4AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDwD44TF\/FVtFniO0Xj0yzV5O2e1ekfGOQv47uVP8EMYH\/fOf615u7KvWuGfxs+hwqtRiMopSBgEU3PNSdQ7oKaTTs8ZNMJoAXNGaSgCmAuaM0maOtACgnFdR4BnMHjTRnBx\/pcY\/M4\/rXLjHStvwu5i8SaY46rdRH\/x4ULcyqq8H6H2B2oo7UV3nzIUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB85\/GWEx+O5WI4kt42H5Y\/pXmUy5zXr3xyjC+JrGQDlrPH5M1eRTDvXFPSbPoMI70YjIG3qRnpTivNR2YA3DPepiRmpe50U23EYRgUw1IxFRmgoKM0hpRQMcBmiTEQ3E8UqnFMuyDDjOM0LcmcuWLaEi559ea6bwdbm58XaRDjO67i\/9CFczFwAK7j4aIJPH+jAjOJs\/kpNNfEjKq7Um\/I+pu1FFFdx82FFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAeF\/HVf+J3pZ9bZh\/49Xjsw4r2T47Ef2vpQ\/wCnd\/8A0KvHJRmuKp8bPfwX8GJSTcjlh0zU+4tzitW70\/yvDGl3g58+adSf90r\/AI1mkYFKRvS1QwmkJBoYc02kagaBRSigBQ2Oab5M10ksqKTHDgufQE4H6mnsPlrrfCtir+DfF12ygiO3hQEjuZQf\/ZaqJhXdl935nJxpiu4+F\/8AyUPSB\/00b\/0E1xROK7X4WDd8Q9I\/32P\/AI41KPxIMR\/Cl6H1FRRRXcfNhRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAHgvx1mH\/AAkGnR5GVtc49Msf8K8jZs12vxW1M6j47vjnKW5EC\/8AAev65rhc\/NXFPWTZ9FhY8tKKPRdf0pYPg34auwBuN1MT\/wADJ\/8AiRXnzCvTvEV2v\/Cj\/DUDffe6fb9FL5\/mK8xbtRPdBhb2lfu\/zIyKZTzTTUnSJTlpvenLQA8\/dr0rwbahvhD4xmIGGaID\/gJB\/rXmw5FepeHR5HwK8QuDzJdqp+mUqobnLi\/hXqvzPK5D81d18J2A+IWk57lwP++GrhJDlzXUfD6+XT\/GukzyfdW5UE+zfL\/WlHRo0rrmpSXkfWdFFFdx80FFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUh4FLTX+430oA+P\/EtwbnxBqE5OS9xI35saxRyav6qf+JjP7u386i022a91K2tUGWmlWMfUnFcB9NH3aZ2\/jRGs\/BPg7TmBDfZpLlh\/vtkfpXBP1rrPH+tz6nr7W7rB5Omg2cHk5wURiAee9cezMTyv605avQWHTjTV93r94Gm0pNIBSNg6GnA0mD3oFAXJlxXqvhOP7f8ABXxNaIMvBMJsewCn\/wBlNeUKcGvT\/hDrFpFfahoV2SI9Wi8pOMjfgjB+oJqofFY5cWr0+ZdLM8tYYc1b0+Uw3kUinlWDD8DRqVo9lqNxaycPDI0bfUHFR23+uWpNtHA+zraTzraKT++gb8xU5qlpBJ0axJ6m3j\/9BFXTXej5l7hRRRQIKKKKACiiigAooooAKKKKACiiigAooooAKKKKACmnlSPanUHpQB8aa0uzVblfSVh+pqrZzyWl5FNEzLIh3KynBU9j+dXtf51y94\/5eJP\/AEI1mID5hOeMVwH08NYIkmlLEkkknqTVckmpGPPamZ+n5UIsQCnim04ZPQZoEJ+FJxQQw6gim49zQMerYNa2h6lJper2d9F9+3mWQfgc1j1PC3NDJkrqzOl+IcSJ421N4v8AVTyC4T3DqG\/rXOWozMtbPiK4F9baTeAHcbMQSE92jJX\/ANB21kWQH2lM9MinLciF1Ss+n6H2Tpq7NMtE\/uwoP\/HRVqobfH2aLHTYMflU1dx81LcKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAprZ2nHXFOqOWRYonkdgqKpZiewFAHxvq5Y6ncl87jKxP1yaopu3NgDHvV3VpFm1K5kU5V5GYH2JNVoY3kB2KW+grzz6imm4qxAxOe1Nw3qPyqw1rODzBJ\/3zTPJkHWN\/8AvmncpxZHg+o\/KnKo7\/yp3lt\/cf8AKlEbA\/cb8qLi5RpHoSPxppB\/vGpSh\/un8qYVI7H8qAsR\/N\/eNPQuDwR+VJjHr+VOU8+9AWNOS7WXw9DbNE4lt7p234+Xa6rxn1yhqlb\/AOv4pftEqwPb\/wDLKRldh7jIH8zTYOJR7UCcbRZ9m2OfsFtnr5S5\/IVZNU9LbdpVm3rAh\/8AHRVw13o+Ye4UUUUCCiiigAooooAKKKKACiiigAooooAKKKKACiiigAFVb6PzbC4j2B98TLtPfIPFWhVTUiV0y6KyeWwich8Z28HmhjW58cXSlJnVuCrEEVb0nB3jvnNU7o5kPOSSSTU2mnE2PavOlsfXYTdHQKBil25pE5FPNc56RGyVE4qcnimMMigaGYpdvsKdigZpiG7R6A\/hUckMZHMan8KnAqKVsChByoxb+KOMDYqqc9qrQ8yfhVi\/fLiq9ty4z0zzW8djzcVZNpH2RpH\/ACBrH\/r3j\/8AQRV41S0tVXSrNVLMogQAsMEjaOtXTXoI+Re4UUUUxBRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAlYPjFpk8Iap9n\/wBY0DID6buCfyNb1MkRZEZHUMjDBUjIIpNXVhxdmmfMl74FiTS4r1b93Z3RXVUGAGIGevvWTq+g\/wDCP6xHbLOZ0eMOrlcfhXrOraWlpeanoxG1SwntgD2zkAfjxXB+PhDDrenxI2WEG5h6ZNcMlZWPpMBVcqi13MyIfLUhFRxdBUtcp7jGECmsvFOOaG6UAJim4p1JnmgYY4qvOMA5NWCcCs+5l600CMe7OZiOtNtwyvnBx9K67wIsba3dTvGJPLhwARnGT1\/Su10ywFzoEVvBarLNeTOEVkHOWPP0xXSloeLjK1ps9k0idbnRrGdSCJLeNgR3yoq7VHR7E6Zo9nZEhjBCsZI6cCr1dy2PmHuLRRRTEFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB8+\/FTxBc6X8R28slo0towUzjsTkeh5rPM+n+LbF5miQ36ofLlUhXyBnaw7iqvxc\/f\/EW\/wDRVjX8kFcrbWsce1xneOQQcVw1JK7PqcLhm6cJRdnZGzAf3a561KTUMX3QKmxXIz2Bcimt0oNNY0AKaTikLUm6gY2U\/KaybpiMgd61JDkVUErW11HcJGkjxMHVH6Ej1q4ibsjp\/CWmT6AlzfapNDaw3MW3a7DeB1zjtXcfDfxHY6x4smsrVd0VrZnyXYdMMAcfga8M1XUL7UbhpLtyTnhBwo+gruPgnN5Hj+NScCa3kT9M\/wBK64fEjwMXSlKE5S3sfTFFFFdZ86FFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUHpQB8x\/ENhP441V+uJyv5AD+lc5FwQK2PF0nm+KNTkznN1J\/6Eaxojk8GvMk7tn3WGjy0oryX5GhGal3YFQxdKmK8c1izcTcD3pjNSkYqNulAx55pPpSDmnUANfhapSMMmrr4281QkO5jiqQFeSNXHzDmuo+GpFn470pxxum2fmCP61zLVteF5TD4k0yUHBW6jP\/AI8K1i7NHLiYc1KS8n+R9WUUDpRXpHw4UUUUAFFFFABRRRQAUUUUAf\/Z\u6211\u4eec\u5df2\u51c6\u5907\u597d\u6d4b\u8bd5\u7528\u7684\u4e2d\u82f1\u6587\u6570\u636e\uff0c\u901a\u8fc7\u4e0b\u5217\u793a\u4f8b\u4e2d\u7684shell\u811a\u672c\u5373\u53ef\u81ea\u52a8\u4e0b\u8f7d\u3002\u00a0CLIP\u6587\u56fe\u68c0\u7d22\u5fae\u8c03\u4e0e\u6d4b\u8bd5\u793a\u4f8b\u6211\u4eec\u63d0\u4f9b\u4e86CLIP\u4f7f\u7528\u793a\u4f8b\uff0c\u4f4d\u4e8eEasyNLP\/examples\/clip_retrieval\u4e2d\u6587\u793a\u4f8b# \u4e2d\u6587\u8bad\u7ec3\uff0c\u6267\u884c\u5982\u4e0b\u811a\u672c\u65f6\u6240\u9700\u7684\u6570\u636e\u6587\u4ef6\u4f1a\u81ea\u52a8\u4e0b\u8f7d<\/code><\/pre>\n<p>sh run_clip_local.sh 0 train_cn #\u5176\u4e2d0\u4ee3\u8868\u6240\u8981\u4f7f\u7528\u7684\u663e\u5361\u7f16\u53f7<\/p>\n<h2>\u6211\u4eec\u63d0\u4f9b\u4e24\u79cd\u4e2d\u6587\u6743\u91cd<\/h2>\n<h2>alibaba-pai\/clip_chinese_roberta_base_vit_base<\/h2>\n<h2>alibaba-pai\/clip_chinese_roberta_base_vit_large<\/h2>\n<h2>\u5bf9\u5e94\u7684\u547d\u4ee4\u5982\u4e0b\uff0c\u6e90\u7801\u7ec6\u8282\u8bf7\u67e5\u770brun_clip_local.sh\u6587\u4ef6<\/h2>\n<h2>easynlp \/<\/h2>\n<h2>&#8211;mode train \/<\/h2>\n<h2>&#8211;worker_gpu=1 \/<\/h2>\n<h2>&#8211;tables=.\/MUGE_MR_train_base64_part.tsv,.\/MUGE_MR_valid_base64_part.tsv \/<\/h2>\n<h2>&#8211;input_schema=text:str:1,image:str:1 \/<\/h2>\n<h2>&#8211;first_sequence=text \/<\/h2>\n<h2>&#8211;second_sequence=image \/<\/h2>\n<h2>&#8211;checkpoint_dir=.\/clip_cn_model\/ \/<\/h2>\n<h2>&#8211;learning_rate=1e-6  \/<\/h2>\n<h2>&#8211;epoch_num=1  \/<\/h2>\n<h2>&#8211;random_seed=42 \/<\/h2>\n<h2>&#8211;logging_steps=100 \/<\/h2>\n<h2>&#8211;save_checkpoint_steps 200 \/<\/h2>\n<h2>&#8211;sequence_length=32 \/<\/h2>\n<h2>&#8211;micro_batch_size=32 \/<\/h2>\n<h2>&#8211;app_name=clip \/<\/h2>\n<h2>&#8211;save_all_checkpoints \/<\/h2>\n<h2>&#8211;user_defined_parameters=&#8217;pretrain_model_name_or_path=alibaba-pai\/clip_chinese_roberta_base_vit_base&#8217;<\/h2>\n<h2>\u4e2d\u6587\u6d4b\u8bd5<\/h2>\n<p>sh run_clip_local.sh 0 evaluate_cn<\/p>\n<h2>\u751f\u6210\u79bb\u7ebf\u6587\u56fe\u7279\u5f81\u793a\u4f8b<\/h2>\n<p>sh run_clip_local.sh 0 predict_cn_text<br \/>sh run_clip_local.sh 0 predict_cn_image\u82f1\u6587\u6570\u636e# \u82f1\u6587\u8bad\u7ec3<\/p>\n<h2>\u82f1\u6587\u540c\u6837\u63d0\u4f9b\u4e24\u79cd\u5c3a\u5bf8\u7684\u6743\u91cd<\/h2>\n<h2>alibaba-pai\/pai-clip-commercial-base-en<\/h2>\n<h2>alibaba-pai\/pai-clip-commercial-large-en<\/h2>\n<p>sh run_clip_local.sh 0 train_en<\/p>\n<h2>easynlp \/<\/h2>\n<h2>&#8211;mode train \/<\/h2>\n<h2>&#8211;worker_gpu=1 \/<\/h2>\n<h2>&#8211;tables=.\/fashiongen_1to1_train.tsv,.\/fashiongen_1to1_test.tsv \/<\/h2>\n<h2>&#8211;input_schema=text:str:1,image:str:1 \/<\/h2>\n<h2>&#8211;first_sequence=text \/<\/h2>\n<h2>&#8211;second_sequence=image \/<\/h2>\n<h2>&#8211;checkpoint_dir=.\/clip_en_model\/ \/<\/h2>\n<h2>&#8211;learning_rate=1e-6  \/<\/h2>\n<h2>&#8211;epoch_num=1  \/<\/h2>\n<h2>&#8211;random_seed=42 \/<\/h2>\n<h2>&#8211;logging_steps=100 \/<\/h2>\n<h2>&#8211;save_checkpoint_steps 200 \/<\/h2>\n<h2>&#8211;sequence_length=32 \/<\/h2>\n<h2>&#8211;micro_batch_size=32 \/<\/h2>\n<h2>&#8211;app_name=clip \/<\/h2>\n<h2>&#8211;save_all_checkpoints \/<\/h2>\n<h2>&#8211;user_defined_parameters=&#8217;pretrain_model_name_or_path=alibaba-pai\/pai-clip-commercial-base-en&#8217;<\/h2>\n<h2>\u82f1\u6587\u6d4b\u8bd5<\/h2>\n<p>sh run_clip_local.sh 0 evaluate_en\u672a\u6765\u5c55\u671b\u5728\u672a\u6765\uff0c\u6211\u4eec\u8ba1\u5212\u5728EasyNLP\u6846\u67b6\u4e2d\u96c6\u6210\u66f4\u591aNLP\u7684\u591a\u6a21\u6001\u7684\u77e5\u8bc6\u6a21\u578b\uff0c\u8986\u76d6\u5404\u4e2a\u5e38\u89c1\u9886\u57df\u548c\u4efb\u52a1\uff0c\u656c\u8bf7\u671f\u5f85\u3002\u6211\u4eec\u4e5f\u5c06\u5728EasyNLP\u6846\u67b6\u4e2d\u96c6\u6210\u66f4\u591aSOTA\u6a21\u578b\uff08\u7279\u522b\u662f\u4e2d\u2f42\u6a21\u578b\uff09\uff0c\u6765\u2f40\u6301\u5404\u79cdNLP\u548c\u591a\u6a21\u6001\u4efb\u52a1\u3002\u6b64\u5916\uff0c \u963f\u2fa5\u4e91\u673a\u5668\u5b66\u4e60PAI\u56e2\u961f\u4e5f\u5728\u6301\u7eed\u63a8\u8fdb\u591a\u6a21\u6001\u6a21\u578b\u7684\u2f83\u7814\u2f2f\u4f5c\uff0c\u6b22\u8fce\u2f64\u6237\u6301\u7eed\u5173\u6ce8\u6211\u4eec\uff0c\u4e5f\u6b22\u8fce\u52a0\u2f0a \u6211\u4eec\u7684\u5f00\u6e90\u793e\u533a\uff0c\u5171\u5efaNLP\u548c\u591a\u6a21\u6001\u7b97\u6cd5\u5e93\uff01Github\u5730\u5740\uff1a<a href=\"https:\/\/link.segmentfault.com\/?enc=0AoRBsdjxpGk56KQWCpGHg%3D%3D.7Y1XDZSs6KPqu4zniysqWsog31k53SEYH9kTeb2WUzeccHoH9iXL39MuD6l2ScnU\" rel=\"nofollow\">https:\/\/github.com\/alibaba\/Ea&#8230;<\/a> C, Qiu M, Zhang T, et al. EasyNLP: A Comprehensive and Easy-to-use Toolkit for Natural Language Processing. arXiv, 2021.Radford A, Kim J W, Hallacy C, et al. Learning transferable visual models from natural language supervision. PMLR, 2021.Rostamzadeh N, Hosseini S, Boquet T, et al. Fashion-gen: The generative fashion dataset and challenge. arXiv, 2018.Gao D, Jin L, Chen B, et al. Fashionbert: Text and image matching with adaptive loss for cross-modal retrieval. ACM SIGIR, 2020: 2251-2260.Zhuge M, Gao D, Fan D P, et al. Kaleido-bert: Vision-language pre-training on fashion domain. CVPR, 2021: 12647-12657.Yu L, Chen J, Sinha A, et al. Commercemm: Large-scale commerce multimodal representation learning with omni retrieval. ACM SIGKDD, 2022: 4433-4442.Ma H, Zhao H, Lin Z, et al. EI-CLIP: Entity-Aware Interventional Contrastive Learning for E-Commerce Cross-Modal Retrieval. CVPR, 2022: 18051-18061.Li Y, Liang F, Zhao L, et al. Supervision Exists Everywhere: A Data Efficient Contrastive Language-Image Pre-training Paradigm. ICLR 2022.\u963f\u91cc\u7075\u6770\u56de\u987e\u963f\u91cc\u7075\u6770\uff1a\u963f\u91cc\u4e91\u673a\u5668\u5b66\u4e60PAI\u5f00\u6e90\u4e2d\u6587NLP\u7b97\u6cd5\u6846\u67b6EasyNLP\uff0c\u52a9\u529bNLP\u5927\u6a21\u578b\u843d\u5730\u963f\u91cc\u7075\u6770\uff1a\u9884\u8bad\u7ec3\u77e5\u8bc6\u5ea6\u91cf\u6bd4\u8d5b\u593a\u51a0\uff01\u963f\u91cc\u4e91PAI\u53d1\u5e03\u77e5\u8bc6\u9884\u8bad\u7ec3\u5de5\u5177\u963f\u91cc\u7075\u6770\uff1aEasyNLP\u5e26\u4f60\u73a9\u8f6cCLIP\u56fe\u6587\u68c0\u7d22\u963f\u91cc\u7075\u6770\uff1aEasyNLP\u4e2d\u6587\u6587\u56fe\u751f\u6210\u6a21\u578b\u5e26\u4f60\u79d2\u53d8\u827a\u672f\u5bb6\u963f\u91cc\u7075\u6770\uff1aEasyNLP\u96c6\u6210K-BERT\u7b97\u6cd5\uff0c\u501f\u52a9\u77e5\u8bc6\u56fe\u8c31\u5b9e\u73b0\u66f4\u4f18Finetune\u963f\u91cc\u7075\u6770\uff1a\u4e2d\u6587\u7a00\u758fGPT\u5927\u6a21\u578b\u843d\u5730 \u2014 \u901a\u5f80\u4f4e\u6210\u672c&#038;\u9ad8\u6027\u80fd\u591a\u4efb\u52a1\u901a\u7528\u81ea\u7136\u8bed\u8a00\u7406\u89e3\u7684\u5173\u952e\u91cc\u7a0b\u7891\u963f\u91cc\u7075\u6770\uff1aEasyNLP\u73a9\u8f6c\u6587\u672c\u6458\u8981\uff08\u65b0\u95fb\u6807\u9898\uff09\u751f\u6210\u539f\u6587\u94fe\u63a5\uff1a<a href=\"https:\/\/link.segmentfault.com\/?enc=MJITjSzbp%2F8umgsrKkutTQ%3D%3D.DpnWNNN4yoCtJ7GephZ0mipF8cr0qDr9bTYBCrcM3ra4o68MUcf%2FDCx0crbR%2F7il\" rel=\"nofollow\">https:\/\/click.aliyun.com\/m\/10&#8230;<\/a>\u672c\u6587\u4e3a\u963f\u91cc\u4e91\u539f\u521b\u5185\u5bb9\uff0c\u672a\u7ecf\u5141\u8bb8\u4e0d\u5f97\u8f6c\u8f7d\u3002<\/p>\n<p><a href=\"https:\/\/segmentfault.com\/a\/1190000042562753\">https:\/\/segmentfault.com\/a\/1190000042562753<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u7b80\u4ecb\uff1a\u00a0\u672c\u2f42\u7b80\u8981\u4ecb\u7ecd\u6211\u4eec\u5728\u7535\u5546\u4e0b\u5bf9CLIP\u6a21\u578b\u7684\u4f18\u5316\uff0c\u4ee5\u53ca\u4e0a\u8ff0\u6a21\u578b\u5728\u516c\u5f00\u6570\u636e\u96c6\u4e0a\u7684\u8bc4\u6d4b\u7ed3\u679c\u3002\u6700\u540e\uff0c\u6211\u4eec\u4ecb\u7ecd\u5982\u4f55 [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[],"tags":[],"class_list":["post-10006629","post","type-post","status-publish","format-standard","hentry"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/itmax.cn\/index.php?rest_route=\/wp\/v2\/posts\/10006629","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/itmax.cn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itmax.cn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/itmax.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=10006629"}],"version-history":[{"count":0,"href":"https:\/\/itmax.cn\/index.php?rest_route=\/wp\/v2\/posts\/10006629\/revisions"}],"wp:attachment":[{"href":"https:\/\/itmax.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=10006629"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itmax.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=10006629"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itmax.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=10006629"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}