
ç»åçæAIã®æã«é¢ããç ç©¶ #2 - CLIPãåºããããŒã¯ã³ã¯çŽè§£ããã®ã
æ¬ç ç©¶ã®ã·ãªãŒãºèšäº
ç»åçæAIã®æã«é¢ããç ç©¶ #1
ãäœæ
AIã¯æãèŠæãªã®ãã
ã¯ããã«
ä»åã¯ãç»åçæAIã®æã«é¢ããç ç©¶ 2çš¿ç®ãšããããšã§é²ããŠãããŸãã
åãã«è¬èŸãšããŠãååã®èšäºã¯å€ãã®æ¹ã«èŠãŠé ãããããšãããããŸããã
ãã®ç ç©¶ã·ãªãŒãºèšäºã¯ãæ¯èŒçãã£ãŒããªå
容ã«ãªãã®ã§ãã¡ã³ããŒã·ãã説æã«ãããéããåœåããã¡ã³ããŒã·ããåãã®ã³ã³ãã³ããšããäºå®ãšããŠããŸããã
ä»åŸãç ç©¶ã·ãªãŒãºèšäºã¯1çš¿ç®ã¯äžè¬å
¬éã2çš¿ç®ä»¥éã¯æ¯æŽè
åãã®éå®èšäºãšããŠãããŸãã
æ¬ã·ãªãŒãºãäºæ³ä»¥äžã®åé¿ã§ã楜ãã¿ã«ããŠé ããæ¹ãå€ãäžã倧å€å¿èŠããã§ããäœåãçè§£é ããŸããããããããé¡ãããŸãã
ä»åã¯ã2äžæå匱ã®èšäºãšãªã£ãŠããŸãã
ã³ãŒããŒã§ã飲ã¿ãªããããã£ããèŠãŠãã ããã
ååã®ãããã
ååãæ¬ç ç©¶ã®å€§æ ã§ãããäœæ AIã¯æãèŠæãªã®ããã説æããŸããã
ãããããããŸãããã
人éã®è³ç¥çµç³»ïŒãã¥ãŒãã³ïŒã®ãããªä»çµã¿ãæ°çã¢ãã«åïŒããŒã»ãããã³ïŒããæ°åŠçåŠçã§ç䌌çã«åŠç¿ãšåºåãåçŸããŠããã
AIã¯äººéã®ãããªæŠå¿µããã£ãŠãèªçºçæèã§çæããŠããããã§ã¯ãªãã
æã¯å€é¢ç¯ã§è€éãªæ§é ãéãªãã«ãã£ãŠã¯è€éãªèŠãæ¹ãããçºããã®ç¹åŸŽã¯èŸãããŠæç»ããããšãããã人éãæã€æŠå¿µãæšèããŠæç»ããããšã¯ãªãã
ãããŸã§ããç¹åŸŽã¢ãã«åïŒç»åå ã®ç©äœã®å¢çããè²åãã«éã¿ã¥ãããæ°å€åããæ°åŠçåŠçïŒãåºã«ããã€ãºç»åããæšè«ãåºåããã
ããã¯ã人éèªèº«ã®æèããã»ã¹ãæ°å€åããã¢ãã«ãããã°æ¥µããŠåªç§ãªã¬ããªã«ã§ãã
ãæŠå¿µãæããªããŸãŸãäžããããç¹åŸŽã ããåŠç¿ãããã®èŠæ±ã«å¯ŸããŠé«åºŠã«åçŸããŠã¿ãããã®ã§ããããæ¥µããŠåªç§ãšèšãããè² ããŸããã
ååãã¶ããºãããã®wakame74æ³ããã³ãã«åãäžããŸããã
ããã¯ãæ¡æ£ã¢ãã«ãšåŒã°ããæè¡ã¢ãã«ã§èŠããšãã«ãç³ã¿èŸŒã¿ãã¥ãŒã©ã«ãããã¯ãŒã¯ã®ä»çµã¿ãäžæãéšããŠããã®ã§ã¯ãªããããšç§ã¯æšå¯ããŸããã
ã¡ãŸãã§åã®wakame74æ³ãç¥ã£ãŠããŸããïŒ
â ã¶ããºã/blue.pen5805 (@blue_pen5805) May 9, 2023
ããã䜿ããšã€ã©ã¹ãå šäœã®å質åäžïŒæã®ç Žç¶»çãå€§å¹ ã«äœæžã§ããŸãïŒ
æ·»ä»ã®ã€ã©ã¹ããèŠãŠããã ããã°åããããããŸãïŒïŒå šéš t2i æªä¿®æ£ïŒ
äœ¿ãæ¹ã¯ç°¡åïŒããã³ããæ«å°Ÿã«74ããŒã¯ã³åã® wakame ãæ·»ããã ãã§ãïŒè©³ããã¯ALTãèŠãŠãïŒ#AIArt pic.twitter.com/RRbndhhG1b
ãšããã®ããåå説æããéããæ¡æ£ã¢ãã«ã®åçã¯äººå·¥ãã¥ãŒãã³ã§ããããŒã»ãããã³ãæ ¹åºã«ãããŸãã
ããŒã»ãããã³ã¯æ°åŠçåŠçã§å®çŸãããŠããã®ã§ãç¡æå³ãªããã³ããïŒè¿œå ããŒã¯ã³ãäžããŠãããã°ãä¿æ°ãšããŠåãã®ã§ã¯ãªããããšããæšè«ã«éããŸããã
ããã«äŒŒãæ€èšŒããTeaåž«å ãèšäºã«ããŠãããŸãã
ãã®å ŽãåããŠã玹ä»ããŸãã
ããã¯ãBREAKæ§æãšå ¥åããã空ããŒã¯ã³ïŒïŒã«ã³ãã§75ããŒã¯ã³ãŸã§åããïŒã§çæç©ã«å€åãããã®ãæ€èšŒãããã®ã§ãã
çµè«ãšããŠã¯ãBREAKæ§æãšå
¥åããã空ããŒã¯ã³ã§ã¯çæç©ã«å€§ããªå·®ç°ããããŸãã
ããã¯ãBREAKæ§æãš75ããŒã¯ã³ãŸã§åããã«ã³ããããããã«ç°ãªãããŒã¯ã³ãå²ãåœãŠãããŠããã®ãèµ·å ããŠããŸãã

BREAKã¯äºçŽãããæ§æã§ãããä»çµã¿ãšããŠã¯CLIPïŒèªç¶èšèªåŠçïŒã«ãããŠåŠçãããªãæååïŒç©ºçœã§ã¯ãªãåŠçãããªããããã¯ïŒã§75ããŒã¯ã³ãŸã§åããŠããŸããšããç¹æ®æ§æã§ãã
ããã°ãããã°ã©ã èšèªäžã®Nullã®ãããªãã®ã§åããŠããŸããåŠçããã«75ããŒã¯ã³ãŸã§å®è³ªSKIPãããŠããŸãã
ã§ãã®ã§ãéåžžã®ããŒã¯ã³ã§ããã«ã³ãã§ã¯æç€ºã空ã§ãã£ãŠããèšç®åŠçãããŠããŸããçæç©ã«å€åãçãããšããããšã«ãªããŸãã
å°ã話ãéžããŸãããããããä»åã®ç ç©¶ã«çœ®ãæããŠèããŠã¿ãŸãããã
ç¹æ®æ§æä»¥å€ã®éåžžã®ããŒã¯ã³ã¯ãAIã¯éåžžéãèšç®åŠçãããŸãã
æ
ã«ãwakameã®ãããªç¡æå³ãªããã³ããã§èšç®åŠçã®çµæã«æºãããäžããã°ãçæç©ã«ã圱é¿ãçãŸãããšããããšã«ãªããŸãã
èšãæããã°ãç¡æå³ãªããã³ããã«ããèšç®åŠçã®çµææ¬¡ç¬¬ã§ã¯ãææç»ã®ç Žç¶»ãå°ãªãç»åãçæã§ããã®ã§ã¯ãªããããšããã®ãç§ã®ä»åã®ããŒãã«ãªããŸãã
ã§ã¯ãã©ã®ããã«èª¿ã¹ãŠããã®ããææšã¯äœãªã®ãã説æããŠãããŸãã
ææšã®ç®åº
ä»åã¯ãwakameãš1girlã䜿ããããŠé ããŸãã
wakameã¯2ããŒã¯ã³äœ¿çšããŸãã

[wak]ã§1ããŒã¯ã³ïŒ11172ïŒã[ame]ã§1ããŒã¯ã³ïŒ780ïŒã®èš2ããŒã¯ã³ã§ãã
2ããŒã¯ã³çšãããããšããããšãªã®ã§ããã®æååãšããã³ãã[1girl]ãšã®ã³ãµã€ã³é¡äŒŒåºŠã調ã¹ãŠã¿ãŸãããã
ã³ãµã€ã³é¡äŒŒåºŠãšã¯ãç°ãªã2ã€ã®ãã¯ãã«ã®ã³ãµã€ã³å€ãåããã®ã§ãã
-1<0<1ãšãªãã1ã«è¿ã¥ãã»ã©è¿äŒŒããŠããææšã«ãªããŸãã
2ã€ã®ãã¯ãã«ã®å
ç©ã®å
¬åŒã¯ã髿 ¡ã§ç¿ããŸãããã
ã³ãµã€ã³é¡äŒŒåºŠã®å
¬åŒã¯ä»¥äžã«ãªããŸãã

1girlã¯éç倿°ã«ããŸãã
ã³ãµã€ã³é¡äŒŒåºŠã®Aã¯wak(11172)ãame(780)ãBã¯1girl(272,1611)ãšããŠ2ãã¯ãã«ã®é¡äŒŒåºŠãç®åºããŸãã
ããã«ããã2ã€ã®çžé¢ãèŠããŠããŸãã
èšãæããã°ã1girlã«wakameã圱é¿ãããšä»®å®ããŠãç®åºãããå€ã¯1ã€ã®ææšãšãªãããŸãã
ç®åºããããã«ã¹ã¯ãªãããäœã£ãŠèª¿ã¹ãŠã¿ãŸããã
# å€ä»£å
¥
a = np.array([args.A,args.B],dtype=float)
b = np.array([272,1611])
# ã³ãµã€ã³é¡äŒŒåºŠç®åº
dot = np.dot(a,b)
norm_a=np.linalg.norm(a)
norm_b=np.linalg.norm(b)
result=dot/(norm_a*norm_b)
print('{:.08f}'.format(result))a = wakame(11172,780)
b = 1girl(272,1611)
0.23475456é¡äŒŒåºŠã¯ çŽ0.23475456 ãšãªããŸããã
ãããã£ãŠãwakameãš1girlã¯æ¯èŒçé ããã¯ãã«ã«ååšããŠãããšããããšã«ãªããŸãã
ããã¯çµæ§éèŠã§ãé¡äŒŒåºŠãé ãããè¿ãããªãæååã圱é¿ããŠããã®ãããããŸããã
ããšã¯ãã®å€ä»è¿ãšãªãæååãããéããŠãããšã¯é¡äŒŒåºŠã®çµ±èšãåã£ãŠæ€èšŒããŠã¿ãããšããããšã«ãªããŸãã
ææšã®åãæ¹ã¯ã©ãã§ãè¯ãã£ããã§ãããã³ãµã€ã³é¡äŒŒåºŠã¯ãã£ãŒãã©ãŒãã³ã°ã§ã䜿ãããŠããããèŠªåæ§ãããã®ã§ã¯ïŒãšããåçŽãªçç±ã§æ¡çšããŠãŸãã
ãããããããã£ãšããææšã®ç®åºæ¹æ³ããããããããŸããã
é¡äŒŒåºŠã®çµ±èš
ææšãã§ããããä»åºŠã¯ç»ååå£«ãæ¯èŒãé¡äŒŒåºŠãç®åºããŠãããŸãããã
æ¹æ³ãšããŠã¯ãç¹åŸŽç¹æœåºæ³ïŒFeature DetectionïŒã«ããç®åºã«ãŠæ¯èŒããŸãã
ç¹åŸŽç¹æœåºãšã¯ããã¹ã¿ãŒïŒæ¯èŒå
ïŒãšãã¹ã¿ãŒïŒæ¯èŒå
ïŒã®ç»åå
ã®èŠçŽ ãæ¯èŒãããã®äžããç¹åŸŽçãªãã€ã³ããæœåºããã¢ã«ãŽãªãºã ã®äºãæããŸãã
代衚çãªã³ãŒããŒæ€åºæ³ã®å
¬åŒã¯ä»¥äžã
https://www.cse.psu.edu/~rtc12/CSE486/lecture06.pdf
ã³ãŒããŒæ€åºæ³(ã³ãŒããŒãããã ã€ã»ã)ãšã¯ãã³ã³ãã¥ãŒã¿ããžã§ã³ã«ãããŠç¢ºå®ãšãããç¹åŸŽç¹ãæœåºãç»åã®äžèº«ãæšæž¬ããããã®ææ³ã§ãããã³ãŒããŒæ€åºæ³ã¯åãæ€åºïŒç»åãããã³ã°ïŒç»å远跡ïŒã€ã¡ãŒãžã¢ã¶ã€ãã³ã°ïŒããã©ãç»åçæïŒ3Dã¢ããªã³ã°,ç©äœèªèã§ãã䜿ãããŠãããã³ãŒããŒæ€åºæ³ã¯ç¹åŸŽç¹æ€åºæ³ãšãå ±éç¹ãããã
https://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%BC%E3%83%8A%E3%83%BC%E6%A4%9C%E5%87%BA%E6%B3%95
äžå³ã®å±éåŒã«ã€ããŠã¯å²æããŸãã
æ°ã«ãªãæ¹ã¯äžå³ã®åºå
žå
ãã確èªãã ããã
ããããã¯ãŸãããã°ã©ãã³ã°ã®ãæéã§ãã
ãã®èšç®ãæã§1ã€1ã€ãã£ãŠãã£ãŠã¯ãå€åäžççµãããŸããã
äœæããã¹ã¯ãªããã¯ä»¥äžã«ãªããŸãã