Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
ÉîÈëÀí½âFFMÔ­ÀíÓëʵ¼ù
 

À´Ô´£ºCSDN ·¢²¼ÓÚ£º2016-3-16

  7993  次浏览      31
 

FMºÍFFMÄ£ÐÍÊÇ×î½ü¼¸ÄêÌá³öµÄÄ£ÐÍ£¬Æ¾½èÆäÔÚÊý¾ÝÁ¿±È½Ï´ó²¢ÇÒÌØÕ÷Ï¡ÊèµÄÇé¿öÏ£¬ÈÔÈ»Äܹ»µÃµ½ÓÅÐãµÄÐÔÄܺÍЧ¹ûµÄÌØÐÔ£¬ÂÅ´ÎÔÚ¸÷´ó¹«Ë¾¾Ù°ìµÄCTRÔ¤¹À±ÈÈüÖлñµÃ²»´íµÄÕ½¼¨¡£ÃÀÍŵãÆÀ¼¼ÊõÍŶÓÔڴDSPµÄ¹ý³ÌÖУ¬Ì½Ë÷²¢Ê¹ÓÃÁËFMºÍFFMÄ£ÐͽøÐÐCTRºÍCVRÔ¤¹À£¬²¢ÇÒÈ¡µÃÁ˲»´íµÄЧ¹û¡£±¾ÎÄÖ¼ÔÚ°ÑÎÒÃǶÔFMºÍFFMÔ­ÀíµÄ̽Ë÷ºÍÓ¦Óõľ­Ñé½éÉܸøÓÐÐËȤµÄ¶ÁÕß¡£

ǰÑÔ

ÔÚ¼ÆËã¹ã¸æÁìÓò£¬µã»÷ÂÊCTR£¨click-through rate£©ºÍת»¯ÂÊCVR£¨conversion rate£©ÊǺâÁ¿¹ã¸æÁ÷Á¿µÄÁ½¸ö¹Ø¼üÖ¸±ê¡£×¼È·µÄ¹À¼ÆCTR¡¢CVR¶ÔÓÚÌá¸ßÁ÷Á¿µÄ¼ÛÖµ£¬Ôö¼Ó¹ã¸æÊÕÈëÓÐÖØÒªµÄÖ¸µ¼×÷Óá£Ô¤¹ÀCTR/CVR£¬Òµ½ç³£Óõķ½·¨ÓÐÈ˹¤ÌØÕ÷¹¤³Ì + LR(Logistic Regression)¡¢GBDT(Gradient Boosting Decision Tree) + LR[1][2][3]¡¢FM£¨Factorization Machine£©[2][7]ºÍFFM£¨Field-aware Factorization Machine£©[9]Ä£ÐÍ¡£ÔÚÕâЩģÐÍÖУ¬FMºÍFFM½üÄêÀ´±íÏÖÍ»³ö£¬·Ö±ðÔÚÓÉCriteoºÍAvazu¾Ù°ìµÄCTRÔ¤²â¾ºÈüÖжáµÃ¹Ú¾ü[4][5]¡£

¿¼Âǵ½FFMÄ£ÐÍÔÚCTRÔ¤¹À±ÈÈüÖеIJ»Ë×Õ½¼¨£¬ÃÀÍŵãÆÀ¼¼ÊõÍŶÓÔڴDSP£¨Demand Side Platform£©[6]ƽ̨ʱ£¬ÔÚÕ¾ÄÚCTR/CVRµÄÔ¤¹ÀÉÏʹÓÃÁ˸ÃÄ£ÐÍ£¬È¡µÃÁ˲»´íµÄЧ¹û¡£±¾ÎÄÊÇ»ùÓÚ¶ÔFFMÄ£Ð͵ÄÉî¶Èµ÷ÑкÍʹÓþ­Ñ飬´ÓÔ­Àí¡¢ÊµÏÖºÍÓ¦Óü¸¸ö·½Ãæ¶ÔFFM½øÐÐ̽ÌÖ£¬Ï£ÍûÄܹ»´ÓÔ­ÀíÉϽâÊÍFFMÄ£ÐÍÔÚµã»÷ÂÊÔ¤¹ÀÉÏÈ¡µÃÓÅÐãЧ¹ûµÄÔ­Òò¡£ÒòΪFFMÊÇÔÚFMµÄ»ù´¡ÉϸĽøµÃÀ´µÄ£¬ËùÒÔÎÒÃÇÊ×ÏÈÒýÈëFMÄ£ÐÍ£¬±¾ÎÄÕ½Ú×éÖ¯·½Ê½ÈçÏ£º

  1. Ê×ÏȽéÉÜFMµÄÔ­Àí¡£
  2. Æä´Î½éÉÜFFM¶ÔFMµÄ¸Ä½ø¡£
  3. È»ºó½éÉÜFFMµÄʵÏÖϸ½Ú¡£
  4. ×îºó½éÉÜÄ£ÐÍÔÚDSP³¡¾°µÄÓ¦Óá£

FMÔ­Àí

FM£¨Factorization Machine£©ÊÇÓÉKonstanz´óѧSteffen Rendle£¨ÏÖÈÎÖ°ÓÚGoogle£©ÓÚ2010Äê×îÔçÌá³öµÄ£¬Ö¼ÔÚ½â¾öÏ¡ÊèÊý¾ÝϵÄÌØÕ÷×éºÏÎÊÌâ[7]¡£ÏÂÃæÒÔÒ»¸öʾÀýÒýÈëFMÄ£ÐÍ¡£¼ÙÉèÒ»¸ö¹ã¸æ·ÖÀàµÄÎÊÌ⣬¸ù¾ÝÓû§ºÍ¹ã¸æÎ»Ïà¹ØµÄÌØÕ÷£¬Ô¤²âÓû§ÊÇ·ñµã»÷ÁË¹ã¸æ¡£Ô´Êý¾ÝÈçÏÂ[8]

Clicked Country Day Ad_type
1 USA 26/11/15 Movie
0 China 1/7/14 Game
1 China 19/2/15 Game

¡°Clicked¡±ÊÇlabel£¬Country¡¢Day¡¢Ad_typeÊÇÌØÕ÷¡£ÓÉÓÚÈýÖÖÌØÕ÷¶¼ÊÇcategoricalÀàÐ͵ģ¬ÐèÒª¾­¹ý¶ÀÈȱàÂ루One-Hot Encoding£©×ª»»³ÉÊýÖµÐÍÌØÕ÷¡£

Clicked Country=USA Country=China Day=26/11/15 Day=1/7/14 Day=19/2/15 Ad_type=Movie Ad_type=Game
1 1 0 1 0 0 1 0
0 0 1 0 1 0 0 1
1 0 1 0 0 1 0 1

ÓÉÉϱí¿ÉÒÔ¿´³ö£¬¾­¹ýOne-Hot±àÂëÖ®ºó£¬´ó²¿·ÖÑù±¾Êý¾ÝÌØÕ÷ÊDZȽÏÏ¡ÊèµÄ¡£ÉÏÃæµÄÑùÀýÖУ¬Ã¿¸öÑù±¾ÓÐ7Î¬ÌØÕ÷£¬µ«Æ½¾ù½öÓÐ3Î¬ÌØÕ÷¾ßÓзÇÁãÖµ¡£Êµ¼ÊÉÏ£¬ÕâÖÖÇé¿ö²¢²»ÊÇ´ËÀý¶ÀÓеģ¬ÔÚÕæÊµÓ¦Óó¡¾°ÖÐÕâÖÖÇé¿öÆÕ±é´æÔÚ¡£ÀýÈ磬CTR/CVRÔ¤²âʱ£¬Óû§µÄÐÔ±ð¡¢Ö°Òµ¡¢½ÌÓýˮƽ¡¢Æ·ÀàÆ«ºÃ£¬ÉÌÆ·µÄÆ·ÀàµÈ£¬¾­¹ýOne-Hot±àÂëת»»ºó¶¼»áµ¼ÖÂÑù±¾Êý¾ÝµÄÏ¡ÊèÐÔ¡£ÌرðÊÇÉÌÆ·Æ·ÀàÕâÖÖÀàÐ͵ÄÌØÕ÷£¬ÈçÉÌÆ·µÄÄ©¼¶Æ·ÀàÔ¼ÓÐ550¸ö£¬²ÉÓÃOne-Hot±àÂëÉú³É550¸öÊýÖµÌØÕ÷£¬µ«Ã¿¸öÑù±¾µÄÕâ550¸öÌØÕ÷£¬ÓÐÇÒ½öÓÐÒ»¸öÊÇÓÐЧµÄ£¨·ÇÁ㣩¡£Óɴ˿ɼû£¬Êý¾ÝÏ¡ÊèÐÔÊÇʵ¼ÊÎÊÌâÖв»¿É±ÜÃâµÄÌôÕ½¡£

One-Hot±àÂëµÄÁíÒ»¸öÌØµã¾ÍÊǵ¼ÖÂÌØÕ÷¿Õ¼ä´ó¡£ÀýÈ磬ÉÌÆ·Æ·ÀàÓÐ550Î¬ÌØÕ÷£¬Ò»¸öcategoricalÌØÕ÷ת»»Îª550άÊýÖµÌØÕ÷£¬ÌØÕ÷¿Õ¼ä¾çÔö¡£

ͬʱͨ¹ý¹Û²ì´óÁ¿µÄÑù±¾Êý¾Ý¿ÉÒÔ·¢ÏÖ£¬Ä³Ð©ÌØÕ÷¾­¹ý¹ØÁªÖ®ºó£¬ÓëlabelÖ®¼äµÄÏà¹ØÐԾͻáÌá¸ß¡£ÀýÈ磬¡°USA¡±Óë¡°Thanksgiving¡±¡¢¡°China¡±Óë¡°Chinese New Year¡±ÕâÑùµÄ¹ØÁªÌØÕ÷£¬¶ÔÓû§µÄµã»÷ÓÐ×ÅÕýÏòµÄÓ°Ïì¡£»»¾ä»°Ëµ£¬À´×Ô¡°China¡±µÄÓû§ºÜ¿ÉÄÜ»áÔÚ¡°Chinese New Year¡±ÓдóÁ¿µÄä¯ÀÀ¡¢¹ºÂòÐÐΪ£¬¶øÔÚ¡°Thanksgiving¡±È´²»»áÓÐÌØ±ðµÄÏû·ÑÐÐΪ¡£ÕâÖÖ¹ØÁªÌØÕ÷ÓëlabelµÄÕýÏòÏà¹ØÐÔÔÚʵ¼ÊÎÊÌâÖÐÊÇÆÕ±é´æÔڵģ¬Èç¡°»¯×±Æ·¡±ÀàÉÌÆ·Óë¡°Å®¡±ÐÔ£¬¡°ÇòÀàÔ˶¯Åä¼þ¡±µÄÉÌÆ·Óë¡°ÄС±ÐÔ£¬¡°µçӰƱ¡±µÄÉÌÆ·Óë¡°µçÓ°¡±Æ·ÀàÆ«ºÃµÈ¡£Òò´Ë£¬ÒýÈëÁ½¸öÌØÕ÷µÄ×éºÏÊǷdz£ÓÐÒâÒåµÄ¡£

¶àÏîʽģÐÍÊǰüº¬ÌØÕ÷×éºÏµÄ×îÖ±¹ÛµÄÄ£ÐÍ¡£ÔÚ¶àÏîʽģÐÍÖУ¬ÌØÕ÷ xi ºÍ xj µÄ×éºÏ²ÉÓà xixj ±íʾ£¬¼´ xi ºÍ xj ¶¼·ÇÁãʱ£¬×éºÏÌØÕ÷ xixj ²ÅÓÐÒâÒå¡£´Ó¶Ô±ÈµÄ½Ç¶È£¬±¾ÎÄÖ»ÌÖÂÛ¶þ½×¶àÏîʽģÐÍ¡£Ä£Ð͵ıí´ïʽÈçÏ£º


(1)

ÆäÖУ¬n ´ú±íÑù±¾µÄÌØÕ÷ÊýÁ¿£¬xi ÊÇµÚ i ¸öÌØÕ÷µÄÖµ£¬w0¡¢wi¡¢wij ÊÇÄ£ÐͲÎÊý¡£

´Ó¹«Ê½(1)¿ÉÒÔ¿´³ö£¬×éºÏÌØÕ÷µÄ²ÎÊýÒ»¹²ÓÐ n(n1)/2 ¸ö£¬ÈÎÒâÁ½¸ö²ÎÊý¶¼ÊǶÀÁ¢µÄ¡£È»¶ø£¬ÔÚÊý¾ÝÏ¡ÊèÐÔÆÕ±é´æÔÚµÄʵ¼ÊÓ¦Óó¡¾°ÖУ¬¶þ´ÎÏî²ÎÊýµÄѵÁ·ÊǺÜÀ§Äѵġ£ÆäÔ­ÒòÊÇ£¬Ã¿¸ö²ÎÊý wij µÄѵÁ·ÐèÒª´óÁ¿ xi ºÍ xj ¶¼·ÇÁãµÄÑù±¾£»ÓÉÓÚÑù±¾Êý¾Ý±¾À´¾Í±È½ÏÏ¡Ê裬Âú×ã¡°xi ºÍ xj ¶¼·ÇÁ㡱µÄÑù±¾½«»á·Ç³£ÉÙ¡£ÑµÁ·Ñù±¾µÄ²»×㣬ºÜÈÝÒ×µ¼Ö²ÎÊý wij ²»×¼È·£¬×îÖÕ½«ÑÏÖØÓ°ÏìÄ£Ð͵ÄÐÔÄÜ¡£

ÄÇô£¬ÈçºÎ½â¾ö¶þ´ÎÏî²ÎÊýµÄѵÁ·ÎÊÌâÄØ£¿¾ØÕó·Ö½âÌṩÁËÒ»ÖÖ½â¾ö˼·¡£ÔÚmodel-basedµÄЭͬ¹ýÂËÖУ¬Ò»¸örating¾ØÕó¿ÉÒÔ·Ö½âΪuser¾ØÕóºÍitem¾ØÕó£¬Ã¿¸öuserºÍitem¶¼¿ÉÒÔ²ÉÓÃÒ»¸öÒþÏòÁ¿±íʾ[8]¡£±ÈÈçÔÚÏÂͼÖеÄÀý×ÓÖУ¬ÎÒÃǰÑÿ¸öuser±íʾ³ÉÒ»¸ö¶þάÏòÁ¿£¬Í¬Ê±°Ñÿ¸öitem±íʾ³ÉÒ»¸ö¶þάÏòÁ¿£¬Á½¸öÏòÁ¿µÄµã»ý¾ÍÊǾØÕóÖÐuser¶ÔitemµÄ´ò·Ö¡£

ÀàËÆµØ£¬ËùÓжþ´ÎÏî²ÎÊý wij ¿ÉÒÔ×é³ÉÒ»¸ö¶Ô³ÆÕó W£¨ÎªÁË·½±ã˵Ã÷FMµÄÓÉÀ´£¬¶Ô½ÇÔªËØ¿ÉÒÔÉèÖÃΪÕýʵÊý£©£¬ÄÇôÕâ¸ö¾ØÕó¾Í¿ÉÒÔ·Ö½âΪ W=VTV£¬V µÄµÚ j ÁбãÊÇµÚ j Î¬ÌØÕ÷µÄÒþÏòÁ¿¡£»»¾ä»°Ëµ£¬Ã¿¸ö²ÎÊý wij=vi,vj£¬Õâ¾ÍÊÇFMÄ£Ð͵ĺËÐÄ˼Ïë¡£Òò´Ë£¬FMµÄÄ£ÐÍ·½³ÌΪ£¨±¾ÎIJ»ÌÖÂÛFMµÄ¸ß½×ÐÎʽ£©:


(2)

ÆäÖУ¬vi ÊÇµÚ i Î¬ÌØÕ÷µÄÒþÏòÁ¿£¬, ´ú±íÏòÁ¿µã»ý¡£ÒþÏòÁ¿µÄ³¤¶ÈΪ k£¨kԶԶСÓÚn£©£¬°üº¬ k ¸öÃèÊöÌØÕ÷µÄÒò×Ó¡£¸ù¾Ý¹«Ê½(2)£¬¶þ´ÎÏîµÄ²ÎÊýÊýÁ¿¼õÉÙΪ kn¸ö£¬Ô¶ÉÙÓÚ¶àÏîʽģÐ͵IJÎÊýÊýÁ¿¡£ÁíÍ⣬²ÎÊýÒò×Ó»¯Ê¹µÃ xhxi µÄ²ÎÊýºÍ xixj µÄ²ÎÊý²»ÔÙÊÇÏ໥¶ÀÁ¢µÄ£¬Òò´ËÎÒÃÇ¿ÉÒÔÔÚÑù±¾Ï¡ÊèµÄÇé¿öÏÂÏà¶ÔºÏÀíµØ¹À¼ÆFMµÄ¶þ´ÎÏî²ÎÊý¡£¾ßÌåÀ´Ëµ£¬xhxi ºÍ xixj µÄϵÊý·Ö±ðΪ vh,vi ºÍ vi,vj£¬ËüÃÇÖ®¼äÓй²Í¬Ïî vi¡£Ò²¾ÍÊÇ˵£¬ËùÓаüº¬¡°xi µÄ·ÇÁã×éºÏÌØÕ÷¡±£¨´æÔÚij¸ö j¡Ùi£¬Ê¹µÃ xixj¡Ù0£©µÄÑù±¾¶¼¿ÉÒÔÓÃÀ´Ñ§Ï°ÒþÏòÁ¿ vi£¬ÕâºÜ´ó³Ì¶ÈÉϱÜÃâÁËÊý¾ÝÏ¡ÊèÐÔÔì³ÉµÄÓ°Ïì¡£¶øÔÚ¶àÏîʽģÐÍÖУ¬whi ºÍ wij ÊÇÏ໥¶ÀÁ¢µÄ¡£

ÏÔ¶øÒ×¼û£¬¹«Ê½(2)ÊÇÒ»¸öͨÓõÄÄâºÏ·½³Ì£¬¿ÉÒÔ²ÉÓò»Í¬µÄËðʧº¯ÊýÓÃÓÚ½â¾ö»Ø¹é¡¢¶þÔª·ÖÀàµÈÎÊÌ⣬±ÈÈç¿ÉÒÔ²ÉÓÃMSE£¨Mean Square Error£©Ëðʧº¯ÊýÀ´Çó½â»Ø¹éÎÊÌ⣬Ҳ¿ÉÒÔ²ÉÓÃHinge/Cross-EntropyËðʧÀ´Çó½â·ÖÀàÎÊÌâ¡£µ±È»£¬ÔÚ½øÐжþÔª·ÖÀàʱ£¬FMµÄÊä³öÐèÒª¾­¹ýsigmoid±ä»»£¬ÕâÓëLogistic»Ø¹éÊÇÒ»ÑùµÄ¡£Ö±¹ÛÉÏ¿´£¬FMµÄ¸´ÔÓ¶ÈÊÇ O(kn2)¡£µ«ÊÇ£¬Í¨¹ý¹«Ê½(3)µÄµÈʽ£¬FMµÄ¶þ´ÎÏî¿ÉÒÔ»¯¼ò£¬Æä¸´ÔÓ¶È¿ÉÒÔÓÅ»¯µ½ O(kn)[7]¡£Óɴ˿ɼû£¬FM¿ÉÒÔÔÚÏßÐÔʱ¼ä¶ÔÐÂÑù±¾×÷³öÔ¤²â¡£


(3)

ÎÒÃÇÔÙÀ´¿´Ò»ÏÂFMµÄѵÁ·¸´ÔÓ¶È£¬ÀûÓÃSGD£¨Stochastic Gradient Descent£©ÑµÁ·Ä£ÐÍ¡£Ä£Ð͸÷¸ö²ÎÊýµÄÌݶÈÈçÏÂ:

FMÓëÆäËûÄ£Ð͵ĶԱÈ

FMÊÇÒ»ÖֱȽÏÁé»îµÄÄ£ÐÍ£¬Í¨¹ýºÏÊʵÄÌØÕ÷±ä»»·½Ê½£¬FM¿ÉÒÔÄ£Äâ¶þ½×¶àÏîʽºËµÄSVMÄ£ÐÍ¡¢MFÄ£ÐÍ¡¢SVD++Ä£Ð͵È[7]¡£

Ïà±ÈSVMµÄ¶þ½×¶àÏîʽºË¶øÑÔ£¬FMÔÚÑù±¾Ï¡ÊèµÄÇé¿öÏÂÊÇÓÐÓÅÊÆµÄ£»¶øÇÒ£¬FMµÄѵÁ·/Ô¤²â¸´ÔÓ¶ÈÊÇÏßÐԵ쬶ø¶þÏî¶àÏîʽºËSVMÐèÒª¼ÆËãºË¾ØÕ󣬺˾ØÕó¸´ÔӶȾÍÊÇNƽ·½¡£

Ïà±ÈMF¶øÑÔ£¬ÎÒÃǰÑMFÖÐÿһÏîµÄrating·Ö¸ÄдΪ:

´Ó¹«Ê½(2)ÖпÉÒÔ¿´³ö£¬ÕâÏ൱ÓÚÖ»ÓÐÁ½ÀàÌØÕ÷ u ºÍ i µÄFMÄ£ÐÍ¡£¶ÔÓÚFM¶øÑÔ£¬ÎÒÃÇ¿ÉÒÔ¼ÓÈÎÒâ¶àµÄÌØÕ÷£¬±ÈÈçuserµÄÀúÊ·¹ºÂòƽ¾ùÖµ£¬itemµÄÀúÊ·¹ºÂòƽ¾ùÖµµÈ£¬µ«ÊÇMFÖ»ÄܾÖÏÞÔÚÁ½ÀàÌØÕ÷¡£SVD++ÓëMFÀàËÆ£¬ÔÚÌØÕ÷µÄÀ©Õ¹ÐÔÉ϶¼²»ÈçFM£¬Ôڴ˲»ÔÙ׸Êö¡£

FFMÔ­Àí

FFM£¨Field-aware Factorization Machine£©×î³õµÄ¸ÅÄîÀ´×ÔYu-Chin Juan£¨ÈîØ¹ÇÕ£¬±ÏÒµÓÚÖйų́Íå´óѧ£¬ÏÖÔÚÃÀ¹úCriteo¹¤×÷£©ÓëÆä±ÈÈü¶ÓÔ±£¬ÊÇËûÃÇ½è¼øÁËÀ´×ÔMichael JahrerµÄÂÛÎÄ[14]ÖеÄfield¸ÅÄîÌá³öÁËFMµÄÉý¼¶°æÄ£ÐÍ¡£Í¨¹ýÒýÈëfieldµÄ¸ÅÄFFM°ÑÏàͬÐÔÖʵÄÌØÕ÷¹éÓÚͬһ¸öfield¡£ÒÔÉÏÃæµÄ¹ã¸æ·ÖÀàΪÀý£¬¡°Day=26/11/15¡±¡¢¡°Day=1/7/14¡±¡¢¡°Day=19/2/15¡±ÕâÈý¸öÌØÕ÷¶¼ÊÇ´ú±íÈͮ򵀣¬¿ÉÒԷŵ½Í¬Ò»¸öfieldÖС£Í¬Àí£¬ÉÌÆ·µÄÄ©¼¶Æ·Àà±àÂëÉú³ÉÁË550¸öÌØÕ÷£¬Õâ550¸öÌØÕ÷¶¼ÊÇ˵Ã÷ÉÌÆ·ËùÊôµÄÆ·À࣬Òò´ËËüÃÇÒ²¿ÉÒԷŵ½Í¬Ò»¸öfieldÖС£¼òµ¥À´Ëµ£¬Í¬Ò»¸öcategoricalÌØÕ÷¾­¹ýOne-Hot±àÂëÉú³ÉµÄÊýÖµÌØÕ÷¶¼¿ÉÒԷŵ½Í¬Ò»¸öfield£¬°üÀ¨Óû§ÐÔ±ð¡¢Ö°Òµ¡¢Æ·ÀàÆ«ºÃµÈ¡£ÔÚFFMÖУ¬Ã¿Ò»Î¬ÌØÕ÷ xi£¬Õë¶ÔÆäËüÌØÕ÷µÄÿһÖÖfield fj£¬¶¼»áѧϰһ¸öÒþÏòÁ¿ vi,fj¡£Òò´Ë£¬ÒþÏòÁ¿²»½öÓëÌØÕ÷Ïà¹Ø£¬Ò²ÓëfieldÏà¹Ø¡£Ò²¾ÍÊÇ˵£¬¡°Day=26/11/15¡±Õâ¸öÌØÕ÷Óë¡°Country¡±ÌØÕ÷ºÍ¡°Ad_type¡±ÌØÕ÷½øÐйØÁªµÄʱºòʹÓò»Í¬µÄÒþÏòÁ¿£¬ÕâÓë¡°Country¡±ºÍ¡°Ad_type¡±µÄÄÚÔÚ²îÒìÏà·û£¬Ò²ÊÇFFMÖС°field-aware¡±µÄÓÉÀ´¡£

¼ÙÉèÑù±¾µÄ n ¸öÌØÕ÷ÊôÓÚ f ¸öfield£¬ÄÇôFFMµÄ¶þ´ÎÏîÓÐ nf¸öÒþÏòÁ¿¡£¶øÔÚFMÄ£ÐÍÖУ¬Ã¿Ò»Î¬ÌØÕ÷µÄÒþÏòÁ¿Ö»ÓÐÒ»¸ö¡£FM¿ÉÒÔ¿´×÷FFMµÄÌØÀý£¬ÊǰÑËùÓÐÌØÕ÷¶¼¹éÊôµ½Ò»¸öfieldʱµÄFFMÄ£ÐÍ¡£¸ù¾ÝFFMµÄfieldÃô¸ÐÌØÐÔ£¬¿ÉÒÔµ¼³öÆäÄ£ÐÍ·½³Ì¡£


(4)

ÆäÖУ¬fj ÊÇµÚ j ¸öÌØÕ÷ËùÊôµÄfield¡£Èç¹ûÒþÏòÁ¿µÄ³¤¶ÈΪ k£¬ÄÇôFFMµÄ¶þ´Î²ÎÊýÓÐ nfk ¸ö£¬Ô¶¶àÓÚFMÄ£Ð굀 nk ¸ö¡£´ËÍ⣬ÓÉÓÚÒþÏòÁ¿ÓëfieldÏà¹Ø£¬FFM¶þ´ÎÏî²¢²»Äܹ»»¯¼ò£¬ÆäÔ¤²â¸´ÔÓ¶ÈÊÇ O(kn2)¡£

ÏÂÃæÒÔÒ»¸öÀý×Ó¼òµ¥ËµÃ÷FFMµÄÌØÕ÷×éºÏ·½Ê½[9]¡£ÊäÈë¼Ç¼ÈçÏ£º

User Movie Genre Price
YuChin 3Idiots Comedy, Drama $9.99

ÕâÌõ¼Ç¼¿ÉÒÔ±àÂë³É5¸öÌØÕ÷£¬ÆäÖС°Genre=Comedy¡±ºÍ¡°Genre=Drama¡±ÊôÓÚͬһ¸öfield£¬¡°Price¡±ÊÇÊýÖµÐÍ£¬²»ÓÃOne-Hot±àÂëת»»¡£ÎªÁË·½±ã˵Ã÷FFMµÄÑù±¾¸ñʽ£¬ÎÒÃǽ«ËùÓеÄÌØÕ÷ºÍ¶ÔÓ¦µÄfieldÓ³Éä³ÉÕûÊý±àºÅ¡£

Field name Field index Feature name Feature index
User 1 User=YuChin 1
Movie 2 Movie=3Idiots 2
Genre 3 Genre=Comedy 3
Price 4 Genre=Drama 4
Price 5

ÄÇô£¬FFMµÄ×éºÏÌØÕ÷ÓÐ10ÏÈçÏÂͼËùʾ¡£

ÆäÖУ¬ºìÉ«ÊÇfield±àºÅ£¬À¶É«ÊÇÌØÕ÷±àºÅ£¬ÂÌÉ«ÊÇ´ËÑù±¾µÄÌØÕ÷ȡֵ¡£¶þ´ÎÏîµÄϵÊýÊÇͨ¹ýÓëÌØÕ÷fieldÏà¹ØµÄÒþÏòÁ¿µã»ýµÃµ½µÄ£¬¶þ´ÎÏî¹²ÓÐ n(n1)/2 ¸ö¡£

FFMʵÏÖ

Yu-Chin JuanʵÏÖÁËÒ»¸öC++°æµÄFFMÄ£ÐÍ£¬Ô´Âë¿É´ÓGithubÏÂÔØ[10]¡£Õâ¸ö°æ±¾µÄFFMÊ¡ÂÔÁ˳£ÊýÏîºÍÒ»´ÎÏģÐÍ·½³ÌÈçÏÂ:


(5)

ÆäÖУ¬C2 ÊÇ·ÇÁãÌØÕ÷µÄ¶þÔª×éºÏ£¬j1 ÊÇÌØÕ÷£¬ÊôÓÚfield f1£¬wj1,f2 ÊÇÌØÕ÷ j1 ¶Ôfield f2 µÄÒþÏòÁ¿¡£´ËFFMÄ£ÐͲÉÓÃlogistic loss×÷ΪËðʧº¯Êý£¬ºÍL2³Í·£ÏÒò´ËÖ»ÄÜÓÃÓÚ¶þÔª·ÖÀàÎÊÌâ¡£

ÆäÖУ¬yi¡Ê{1,1} ÊÇµÚ i ¸öÑù±¾µÄlabel£¬L ÊÇѵÁ·Ñù±¾ÊýÁ¿£¬¦Ë Êdzͷ£ÏîϵÊý¡£Ä£ÐͲÉÓÃSGDÓÅ»¯£¬ÓÅ»¯Á÷³ÌÈçÏÂ:

²Î¿¼ Algorithm1, ÏÂÃæ¼òµ¥½âÊÍÒ»ÏÂFFMµÄSGDÓÅ»¯¹ý³Ì¡£
Ëã·¨µÄÊäÈë tr¡¢va¡¢pa ·Ö±ðÊÇѵÁ·Ñù±¾¼¯¡¢ÑéÖ¤Ñù±¾¼¯ºÍѵÁ·²ÎÊýÉèÖá£

  1. ¸ù¾ÝÑù±¾ÌØÕ÷ÊýÁ¿£¨tr.n£©¡¢fieldµÄ¸öÊý£¨tr.m£©ºÍѵÁ·²ÎÊý£¨pa£©£¬Éú³É³õʼ»¯Ä£ÐÍ£¬¼´Ëæ»úÉú³ÉÄ£Ð͵IJÎÊý£»
  2. Èç¹û¹éÒ»»¯²ÎÊý pa.norm ÎªÕæ£¬¼ÆËãѵÁ·ºÍÑéÖ¤Ñù±¾µÄ¹éÒ»»¯ÏµÊý£¬Ñù±¾ i µÄ¹éÒ»»¯ÏµÊýΪ R[i]=1/¡ÎX[i]¡Î £»
  3. ¶ÔÿһÂÖµü´ú£¬Èç¹ûËæ»ú¸üвÎÊý pa.rand ÎªÕæ£¬Ëæ»ú´òÂÒѵÁ·Ñù±¾µÄ˳Ðò£»
  4. ¶Ôÿһ¸öѵÁ·Ñù±¾£¬Ö´ÐÐÈçϲÙ×÷:
    • ¼ÆËãÿһ¸öÑù±¾µÄFFMÏ¼´¹«Ê½(5)ÖеÄÊä³ö £»
    • ¼ÆËãÿһ¸öÑù±¾µÄѵÁ·Îó²î£¬ÈçËã·¨Ëùʾ£¬ÕâÀï²ÉÓõÄÊǽ»²æìØËðʧº¯Êý log(1+e)£»
    • ÀûÓõ¥¸öÑù±¾µÄËðʧº¯Êý¼ÆËãÌÝ¶È g¦µ£¬ÔÙ¸ù¾ÝÌݶȸüÐÂÄ£ÐͲÎÊý£»
      ¶Ôÿһ¸öÑéÖ¤Ñù±¾£¬¼ÆËãÑù±¾µÄFFMÊä³ö£¬¼ÆËãÑéÖ¤Îó²î£»
  5. ÖØ¸´²½Öè3~5£¬Ö±µ½µü´ú½áÊø»òÑéÖ¤Îó²î´ïµ½×îС¡£

ÔÚSGDѰÓÅʱ£¬´úÂë²ÉÓÃÁËһЩС¼¼ÇÉ£¬¶ÔÓÚÌáÉý¼ÆËãЧÂÊÊǷdz£ÓÐЧµÄ¡£

µÚÒ»£¬Ìݶȷֲ½¼ÆËã¡£²ÉÓÃSGDѵÁ·FFMÄ£ÐÍʱ£¬Ö»²ÉÓõ¥¸öÑù±¾µÄËðʧº¯ÊýÀ´¼ÆËãÄ£ÐͲÎÊýµÄÌݶȡ£

ÉÏÃæµÄ¹«Ê½±íÃ÷£¬Lerr/ Óë¾ßÌåµÄÄ£ÐͲÎÊýÎ޹ء£Òò´Ë£¬Ã¿´Î¸üÐÂÄ£ÐÍʱ£¬Ö»Ðè¼ÆËãÒ»´Î£¬Ö®ºóÖ±½Óµ÷Óà Lerr/ µÄÖµ¼´¿É¡£¶ÔÓÚ¸üРnfk ¸öÄ£ÐͲÎÊý£¬ÕâÖÖ·½Ê½Äܹ»¼«´óÌáÉýÔËËãЧÂÊ¡£

µÚ¶þ£¬×ÔÊÊӦѧϰÂÊ¡£´Ë°æ±¾µÄFFMʵÏÖûÓвÉÓó£ÓõÄÖ¸ÊýµÝ¼õµÄѧϰÂʸüвßÂÔ£¬¶øÊÇÀûÓà nfk ¸ö¸¡µãÊýµÄÁÙʱ¿Õ¼ä£¬×ÔÊÊÓ¦µØ¸üÐÂѧϰÂÊ¡£Ñ§Ï°ÂÊÊDzο¼AdaGradËã·¨¼ÆËãµÄ[11]£¬°´ÈçÏ·½Ê½¸üÐÂ

µÚÈý£¬OpenMP¶àºË²¢ÐмÆËã¡£OpenMPÊÇÓÃÓÚ¹²ÏíÄÚ´æ²¢ÐÐϵͳµÄ¶à´¦ÀíÆ÷³ÌÐòÉè¼ÆµÄ±àÒë·½°¸£¬±ãÓÚÒÆÖ²ºÍ¶àºËÀ©Õ¹[12]¡£FFMµÄÔ´Âë²ÉÓÃÁËOpenMPµÄAPI£¬¶Ô²ÎÊýѵÁ·¹ý³ÌSGD½øÐÐÁ˶àÏß³ÌÀ©Õ¹£¬Ö§³Ö¶àÏ̱߳àÒë¡£Òò´Ë£¬OpenMP¼¼Êõ¼«´óµØÌá¸ßÁËFFMµÄѵÁ·Ð§ÂʺͶàºËCPUµÄÀûÓÃÂÊ¡£ÔÚѵÁ·Ä£ÐÍʱ£¬ÊäÈëµÄѵÁ·²ÎÊýns_threadsÖ¸¶¨ÁËÏß³ÌÊýÁ¿£¬Ò»°ãÉ趨ΪCPUµÄºËÐÄÊý£¬±ãÓÚÍêÈ«ÀûÓÃCPU×ÊÔ´¡£

µÚËÄ£¬SSE3Ö¸Áî²¢Ðбà³Ì¡£SSE3È«³ÆÎªÊý¾ÝÁ÷µ¥Ö¸Áî¶àÊý¾ÝÀ©Õ¹Ö¸Á3£¬ÊÇCPU¶ÔÊý¾Ý²ã²¢ÐеĹؼüÖ¸ÁÖ÷ÒªÓÃÓÚ¶àýÌåºÍÓÎÏ·µÄÓ¦ÓóÌÐòÖÐ[13]¡£SSE3Ö¸Áî²ÉÓÃ128λµÄ¼Ä´æÆ÷£¬Í¬Ê±²Ù×÷4¸öµ¥¾«¶È¸¡µãÊý»òÕûÊý¡£SSE3Ö¸ÁîµÄ¹¦Äܷdz£ÀàËÆÓÚÏòÁ¿ÔËËã¡£ÀýÈ磬a ºÍ b ²ÉÓÃSSE3Ö¸ÁîÏà¼Ó£¨a ºÍ b ·Ö±ð°üº¬4¸öÊý¾Ý£©£¬Æä¹¦ÄÜÊÇ a ÖеÄ4¸öÔªËØÓë b ÖÐ4¸öÔªËØ¶ÔÓ¦Ïà¼Ó£¬µÃµ½4¸öÏà¼ÓºóµÄÖµ¡£²ÉÓÃSSE3Ö¸Áîºó£¬ÏòÁ¿ÔËËãµÄËٶȸü¼Ó¿ì½Ý£¬Õâ¶Ô°üº¬´óÁ¿ÏòÁ¿ÔËËãµÄFFMÄ£ÐÍÊǷdz£ÓÐÀûµÄ¡£

³ýÁËÉÏÃæµÄ¼¼ÇÉÖ®Í⣬FFMµÄʵÏÖÖл¹Óкܶàµ÷Óż¼ÇÉÐèҪ̽Ë÷¡£ÀýÈ磬´úÂëÊǰ´fieldºÍÌØÕ÷µÄ±àºÅÉêÇë²ÎÊý¿Õ¼äµÄ£¬Èç¹ûѡȡÁË·ÇÁ¬Ðø»ò¹ý´óµÄ±àºÅ£¬¾Í»áÔì³É´óÁ¿µÄÄÚ´æÀË·Ñ£»ÔÚÿ¸öÑù±¾ÖмÓÈëֵΪ1µÄÐÂÌØÕ÷£¬Ï൱ÓÚÒýÈëÁËÒò×Ó»¯µÄÒ»´ÎÏ±ÜÃâÁËȱÉÙÒ»´ÎÏî´øÀ´µÄÄ£ÐÍÆ«²îµÈ¡£

FFMÓ¦ÓÃ

ÔÚDSPµÄ³¡¾°ÖУ¬FFMÖ÷ÒªÓÃÀ´Ô¤¹ÀÕ¾ÄÚµÄCTRºÍCVR£¬¼´Ò»¸öÓû§¶ÔÒ»¸öÉÌÆ·µÄDZÔÚµã»÷Âʺ͵ã»÷ºóµÄת»¯ÂÊ¡£

CTRºÍCVRÔ¤¹ÀÄ£ÐͶ¼ÊÇÔÚÏßÏÂѵÁ·£¬È»ºóÓÃÓÚÏßÉÏÔ¤²â¡£Á½¸öÄ£ÐͲÉÓõÄÌØÕ÷´óͬСÒ죬Ö÷ÒªÓÐÈýÀࣺÓû§Ïà¹ØµÄÌØÕ÷¡¢ÉÌÆ·Ïà¹ØµÄÌØÕ÷¡¢ÒÔ¼°Óû§-ÉÌÆ·Æ¥ÅäÌØÕ÷¡£Óû§Ïà¹ØµÄÌØÕ÷°üÀ¨ÄêÁä¡¢ÐÔ±ð¡¢Ö°Òµ¡¢ÐËȤ¡¢Æ·ÀàÆ«ºÃ¡¢ä¯ÀÀ/¹ºÂòÆ·ÀàµÈ»ù±¾ÐÅÏ¢£¬ÒÔ¼°Óû§½üÆÚµã»÷Á¿¡¢¹ºÂòÁ¿¡¢Ïû·Ñ¶îµÈͳ¼ÆÐÅÏ¢¡£ÉÌÆ·Ïà¹ØµÄÌØÕ÷°üÀ¨ËùÊôÆ·Àà¡¢ÏúÁ¿¡¢¼Û¸ñ¡¢ÆÀ·Ö¡¢ÀúÊ·CTR/CVRµÈÐÅÏ¢¡£Óû§-ÉÌÆ·Æ¥ÅäÌØÕ÷Ö÷ÒªÓÐä¯ÀÀ/¹ºÂòÆ·ÀàÆ¥Åä¡¢ä¯ÀÀ/¹ºÂòÉÌ¼ÒÆ¥Åä¡¢ÐËȤƫºÃÆ¥ÅäµÈ¼¸¸öά¶È¡£

ΪÁËʹÓÃFFM·½·¨£¬ËùÓеÄÌØÕ÷±ØÐëת»»³É¡°field_id:feat_id:value¡±¸ñʽ£¬field_id´ú±íÌØÕ÷ËùÊôfieldµÄ±àºÅ£¬feat_idÊÇÌØÕ÷±àºÅ£¬valueÊÇÌØÕ÷µÄÖµ¡£ÊýÖµÐ͵ÄÌØÕ÷±È½ÏÈÝÒ×´¦Àí£¬Ö»Ðè·ÖÅäµ¥¶ÀµÄfield±àºÅ£¬ÈçÓû§ÆÀÂ۵÷֡¢ÉÌÆ·µÄÀúÊ·CTR/CVRµÈ¡£categoricalÌØÕ÷ÐèÒª¾­¹ýOne-Hot±àÂë³ÉÊýÖµÐÍ£¬±àÂë²úÉúµÄËùÓÐÌØÕ÷ͬÊôÓÚÒ»¸öfield£¬¶øÌØÕ÷µÄÖµÖ»ÄÜÊÇ0»ò1£¬ÈçÓû§µÄÐÔ±ð¡¢ÄêÁä¶Î£¬ÉÌÆ·µÄÆ·ÀàidµÈ¡£³ý´ËÖ®Í⣬»¹ÓеÚÈýÀàÌØÕ÷£¬ÈçÓû§ä¯ÀÀ/¹ºÂòÆ·À࣬Óжà¸öÆ·ÀàidÇÒÓÃÒ»¸öÊýÖµºâÁ¿Óû§ä¯ÀÀ»ò¹ºÂòÿ¸öÆ·ÀàÉÌÆ·µÄÊýÁ¿¡£ÕâÀàÌØÕ÷°´ÕÕcategoricalÌØÕ÷´¦Àí£¬²»Í¬µÄÖ»ÊÇÌØÕ÷µÄÖµ²»ÊÇ0»ò1£¬¶øÊÇ´ú±íÓû§ä¯ÀÀ»ò¹ºÂòÊýÁ¿µÄÊýÖµ¡£°´Ç°Êö·½·¨µÃµ½field_idÖ®ºó£¬ÔÙ¶Ôת»»ºóÌØÕ÷˳Ðò±àºÅ£¬µÃµ½feat_id£¬ÌØÕ÷µÄÖµÒ²¿ÉÒÔ°´ÕÕ֮ǰµÄ·½·¨»ñµÃ¡£

CTR¡¢CVRÔ¤¹ÀÑù±¾µÄÀà±ðÊǰ´²»Í¬·½Ê½»ñÈ¡µÄ¡£CTRÔ¤¹ÀµÄÕýÑù±¾ÊÇÕ¾ÄÚµã»÷µÄÓû§-ÉÌÆ·¼Ç¼£¬¸ºÑù±¾ÊÇÕ¹ÏÖµ«Î´µã»÷µÄ¼Ç¼£»CVRÔ¤¹ÀµÄÕýÑù±¾ÊÇÕ¾ÄÚÖ§¸¶£¨·¢Éúת»¯£©µÄÓû§-ÉÌÆ·¼Ç¼£¬¸ºÑù±¾Êǵã»÷µ«Î´Ö§¸¶µÄ¼Ç¼¡£¹¹½¨³öÑù±¾Êý¾Ýºó£¬²ÉÓÃFFMѵÁ·Ô¤¹ÀÄ£ÐÍ£¬²¢²âÊÔÄ£Ð͵ÄÐÔÄÜ¡£

#(field) (feature) AUC Logloss
Õ¾ÄÚCTR 39 2456 0.77 0.38
Õ¾ÄÚCVR 67 2441 0.92 0.13

ÓÉÓÚÄ£ÐÍÊǰ´ÌìѵÁ·µÄ£¬Ã¿ÌìµÄÐÔÄÜÖ¸±ê¿ÉÄÜ»áÓÐЩ²¨¶¯£¬µ«±ä»¯·ù¶È²»ÊǺܴó¡£Õâ¸ö±íµÄ½á¹û˵Ã÷£¬Õ¾ÄÚCTR/CVRÔ¤¹ÀÄ£ÐÍÊǷdz£ÓÐЧµÄ¡£

ÔÚѵÁ·FFMµÄ¹ý³ÌÖУ¬ÓÐÐí¶àСϸ½ÚÖµµÃÌØ±ð¹Ø×¢¡£

µÚÒ»£¬Ñù±¾¹éÒ»»¯¡£FFMĬÈÏÊǽøÐÐÑù±¾Êý¾ÝµÄ¹éÒ»»¯£¬¼´ pa.norm ÎªÕæ£»Èô´Ë²ÎÊýÉèÖÃΪ¼Ù£¬ºÜÈÝÒ×Ôì³ÉÊý¾ÝinfÒç³ö£¬½ø¶øÒýÆðÌݶȼÆËãµÄnan´íÎó¡£Òò´Ë£¬Ñù±¾²ãÃæµÄÊý¾ÝÊÇÍÆ¼ö½øÐйéÒ»»¯µÄ¡£

µÚ¶þ£¬ÌØÕ÷¹éÒ»»¯¡£CTR/CVRÄ£ÐͲÉÓÃÁ˶àÖÖÀàÐ͵ÄÔ´ÌØÕ÷£¬°üÀ¨ÊýÖµÐͺÍcategoricalÀàÐ͵ȡ£µ«ÊÇ£¬categoricalÀà±àÂëºóµÄÌØÕ÷ȡֵֻÓÐ0»ò1£¬½Ï´óµÄÊýÖµÐÍÌØÕ÷»áÔì³ÉÑù±¾¹éÒ»»¯ºócategoricalÀàÉú³ÉÌØÕ÷µÄÖµ·Ç³£Ð¡£¬Ã»ÓÐÇø·ÖÐÔ¡£ÀýÈ磬һÌõÓû§-ÉÌÆ·¼Ç¼£¬Óû§Îª¡°ÄС±ÐÔ£¬ÉÌÆ·µÄÏúÁ¿ÊÇ5000¸ö£¨¼ÙÉèÆäËüÌØÕ÷µÄֵΪÁ㣩£¬ÄÇô¹éÒ»»¯ºóÌØÕ÷¡°sex=male¡±£¨ÐÔ±ðΪÄУ©µÄÖµÂÔСÓÚ0.0002£¬¶ø¡°volume¡±£¨ÏúÁ¿£©µÄÖµ½üËÆÎª1¡£ÌØÕ÷¡°sex=male¡±ÔÚÕâ¸öÑù±¾ÖеÄ×÷Óü¸ºõ¿ÉÒÔºöÂÔ²»¼Æ£¬ÕâÊÇÏ൱²»ºÏÀíµÄ¡£Òò´Ë£¬½«Ô´ÊýÖµÐÍÌØÕ÷µÄÖµ¹éÒ»»¯µ½ [0,1] ÊǷdz£±ØÒªµÄ¡£

µÚÈý£¬Ê¡ÂÔÁãÖµÌØÕ÷¡£´ÓFFMÄ£Ð͵ıí´ïʽ(4)¿ÉÒÔ¿´³ö£¬ÁãÖµÌØÕ÷¶ÔÄ£ÐÍÍêȫûÓй±Ïס£°üº¬ÁãÖµÌØÕ÷µÄÒ»´ÎÏîºÍ×éºÏÏî¾ùΪÁ㣬¶ÔÓÚѵÁ·Ä£ÐͲÎÊý»òÕßÄ¿±êÖµÔ¤¹ÀÊÇûÓÐ×÷Óõġ£Òò´Ë£¬¿ÉÒÔʡȥÁãÖµÌØÕ÷£¬Ìá¸ßFFMÄ£ÐÍѵÁ·ºÍÔ¤²âµÄËÙ¶È£¬ÕâÒ²ÊÇÏ¡ÊèÑù±¾²ÉÓÃFFMµÄÏÔÖøÓÅÊÆ¡£

ºó¼Ç

±¾ÎÄÖ÷Òª½éÉÜÁËFFMµÄ˼·À´Ô´ºÍÀíÂÛÔ­Àí£¬²¢½áºÏÔ´Âë˵Ã÷FFMµÄʵ¼ÊÓ¦ÓúÍһЩСϸ½Ú¡£´ÓÀíÂÛÉÏ·ÖÎö£¬FFMµÄ²ÎÊýÒò×Ó»¯·½Ê½¾ßÓÐһЩÏÔÖøµÄÓÅÊÆ£¬ÌرðÊʺϴ¦ÀíÑù±¾Ï¡ÊèÐÔÎÊÌ⣬ÇÒÈ·±£Á˽ϺõÄÐÔÄÜ£»´ÓÓ¦Óýá¹ûÀ´¿´£¬Õ¾ÄÚCTR/CVRÔ¤¹À²ÉÓÃFFMÊǷdz£ºÏÀíµÄ£¬¸÷ÏîÖ¸±ê¶¼ËµÃ÷ÁËFFMÔÚµã»÷ÂÊÔ¤¹À·½ÃæµÄ׿Խ±íÏÖ¡£µ±È»£¬FFM²»Ò»¶¨ÊÊÓÃÓÚËùÓг¡¾°ÇÒ¾ßÓг¬Ô½ÆäËûÄ£Ð͵ÄÐÔÄÜ£¬ºÏÊʵÄÓ¦Óó¡¾°²ÅÄܳɾÍFFMµÄ¡°ÍþÃû¡±¡£

 

   
7993 ´Îä¯ÀÀ       31
     
Ïà¹ØÎÄÕ Ïà¹ØÎĵµ Ïà¹ØÊÓÆµ



ÎÒÃǸÃÈçºÎÉè¼ÆÊý¾Ý¿â
Êý¾Ý¿âÉè¼Æ¾­Ñé̸
Êý¾Ý¿âÉè¼Æ¹ý³Ì
Êý¾Ý¿â±à³Ì×ܽá
Êý¾Ý¿âÐÔÄܵ÷Óż¼ÇÉ
Êý¾Ý¿âÐÔÄܵ÷Õû
Êý¾Ý¿âÐÔÄÜÓÅ»¯½²×ù
Êý¾Ý¿âϵͳÐÔÄܵ÷ÓÅϵÁÐ
¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
¸ß¼¶Êý¾Ý¿â¼Ü¹¹Ê¦
Êý¾Ý²Ö¿âºÍÊý¾ÝÍÚ¾ò¼¼Êõ
HadoopÔ­Àí¡¢²¿ÊðÓëÐÔÄܵ÷ÓÅ
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

MySQLË÷Òý±³ºóµÄÊý¾Ý½á¹¹
MySQLÐÔÄܵ÷ÓÅÓë¼Ü¹¹Éè¼Æ
SQL ServerÊý¾Ý¿â±¸·ÝÓë»Ö¸´
ÈÃÊý¾Ý¿â·ÉÆðÀ´ 10´óDB2ÓÅ»¯
oracleµÄÁÙʱ±í¿Õ¼äдÂú´ÅÅÌ
Êý¾Ý¿âµÄ¿çƽ̨Éè¼Æ


²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿â
¸ß¼¶Êý¾Ý¿â¼Ü¹¹Éè¼ÆÊ¦
HadoopÔ­ÀíÓëʵ¼ù
Oracle Êý¾Ý²Ö¿â
Êý¾Ý²Ö¿âºÍÊý¾ÝÍÚ¾ò
OracleÊý¾Ý¿â¿ª·¢Óë¹ÜÀí


GE Çø¿éÁ´¼¼ÊõÓëʵÏÖÅàѵ
º½Ìì¿Æ¹¤Ä³×Ó¹«Ë¾ Nodejs¸ß¼¶Ó¦Óÿª·¢
ÖÐÊ¢Òæ»ª ׿Խ¹ÜÀíÕß±ØÐë¾ß±¸µÄÎåÏîÄÜÁ¦
ijÐÅÏ¢¼¼Êõ¹«Ë¾ PythonÅàѵ
ij²©²ÊITϵͳ³§ÉÌ Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À
ÖйúÓÊ´¢ÒøÐÐ ²âÊÔ³ÉÊì¶ÈÄ£Ðͼ¯³É(TMMI)
ÖÐÎïÔº ²úÆ·¾­ÀíÓë²úÆ·¹ÜÀí