±à¼ÍƼö: |
À´Ô´ÓÚcsdn£¬Ò»¿ªÊ¼½éÉÜΪÖ÷£¬È»ºó½éÉܵĸÅÄîΪÖ÷£¬×îºó½áºÏÒ½ÁÆÊµÀýÏêϸ½éÉܵģ¬Ï£Íû¶Ô´ó¼ÒÓаïÖú¡£ |
|
ÖÜËÄÍíÉϺú¸ç¸ø´ó¼Ò¼òµ¥ÅàѵÁËÒ»ÏÂnlpµÄһЩËã·¨£¬¸Ð¾õÊÜÒæ·Ëdz¡£»ØÈ¥Ö®ºó·´Ê¡ÁËһϣ¬ÓжÎʱ¼äû¿´»úÆ÷ѧϰµÄ¶«Î÷ÁË£¬nlpҪץ£¬»úÆ÷ѧϰҲҪѧ¡£¿ª¸ö¿Ó£¬¼Ç¼ºÍ·ÖÏíÒ»ÏÂѧϰÄÚÈÝ£¨Ê鼮Ϊ¡¶python»úÆ÷ѧϰ¼°Êµ¼ù¡·£©¡£
Ê×ÏÈÏÈÒÔ½éÉÜΪÖ÷¡£
1959Ä꣬ÃÀ¹úµÄǰIBMÔ±¹¤ÈûçѶû¿ª·¢ÁËÒ»¸öÎ÷ÑóÆå³ÌÐò£¬Õâ¸ö³ÌÐò¿ÉÒÔÔÚÓÚÈËÀàÆåÊÖ¶ÔÞĵĹý³ÌÖУ¬²»¶Ï¸ÄÉÆ×Ô¼ºµÄÆåÒÕ¡£ÔÚ4ÄêÖ®ºó£¬Õâ¸ö³ÌÐòսʤÁËÉè¼ÆÕß±¾ÈË£»²¢ÇÒÓÖ¹ýÁË3Ä꣬սʤÁËÃÀ¹úһλ±£³Ö8Ä곣ʤ²»°ÜµÄרҵÆåÊÖ¡£
×î½ü¹È¸èµÄDeepMindÑо¿ÍŶÓÕýʽÐû²¼Æä´´ÔìºÍ׫дµÄ»úÆ÷ѧϰ³ÌÐòAlphaGoÒÔ4:1µÄ×ܱȷֻ÷°ÜÁËÊÀ½ç¶¥¼¶Ñ¡ÊÖÀîÊÀʯ£¬ºóÀ´½ø»¯ºóµÄAlphaGoÓÖÒÔ3:0µÄ×ܱȷֻ÷°ÜÁËÊÀ½çÅÅÃûµÚÒ»µÄ¿Â½à¡£
¸ù¾Ý»úÆ÷ѧϰÀíÂÛÏÈÇý¡¢çÑÈü¶ûÏÈÉúµÄ˵·¨£¬Ëû²¢Ã»Óбàд¾ßÌåµÄ³ÌÐò¸æËßÎ÷ÑóÆå³ÌÐòÈçºÎÐÐÆå¡£ÊÂʵÉÏ£¬ÕâÒ²ÊDz»¿ÉÄܵģ¬ÒòΪÏÂÆå²ßÂÔǧ±äÍò»¯£¬ÎÒÃÇÎÞ·¨Í¨¹ý±àдÍ걸µÄ£¬ÄÄÅÂÊǹ̶¨µÄÖ´Ðйæ³ÌÀ´ÌôÕ½ÈËÀàÆåÊÖ¡£´ÓÈûçѶûµÄÎ÷ÑóÆå³ÌÐò£¬µ½¹È¸èµÄAlphaGo£¬ÎÒÃÇ¿ÉÒÔ×ܽá³ö»úÆ÷ѧϰϵͳµÄÈçÏÂÌØµã£º
1£©Ðí¶à»úÆ÷ѧϰϵͳËù½â¾öµÄ¶¼ÊÇÎÞ·¨Ö±½ÓʹÓù̶¨¹æÔò»òÕßÁ÷³Ì´úÂëÍê³ÉµÄÎÊÌ⣬ͨ³£ÕâÀàÎÊÌâ¶ÔÈËÀà¶øÑԺܼòµ¥¡£±ÈÈ磬¼ÆËã»úºÍÊÖ»úÀïµÄ¼ÆËãÆ÷¾Í²»ÊôÓھ߱¸ÖÇÄܵÄϵͳ£¬ÒòΪÀïÃæµÄ¼ÆËã·½·¨¶¼ÓÐÇå³þ¶øÇҹ̶¨µÄ¹æ³Ì£»µ«ÊÇÈç¹ûÒªÇóһ̨»úÆ÷È¥±æ±ðÒ»ÕÅÏàÆ¬ÖÐÓÐÄÄЩÈ˺ÍÎïÌ壬Õâ¶ÔÈËÀ´½²ºÜÈÝÒ×£¬»úÆ÷È´ºÜÄÑ×öµ½¡£
2£©Ëùν¾ß±¸¡°Ñ§Ï°¡±ÄÜÁ¦µÄ³ÌÐò¶¼ÊÇÖ¸ËüÄܹ»²»¶ÏµØ´Ó¾ÀúºÍÊý¾ÝÖÐÎüÈ¡¾Ñé½Ìѵ£¬´Ó¶øÓ¦¶ÔδÀ´µÄÔ¤²âÈÎÎñ¡£ÎÒÃÇϰ¹ß°ÑÕâÖÖ¶ÔΪδ֪µÄÔ¤²âÄÜÁ¦½Ð×ö·º»¯Á¦¡£
3£©»úÆ÷ѧϰ¸ü¼ÓÓÕÈ˵ĵط½ÔÚÓÚ£¬Ëü¾ß±¸²»¶Ï¸ÄÉÆ×ÔÉíÓ¦¶Ô¾ßÌåÈÎÎñµÄÄÜÁ¦¡£ÎÒÃÇϰ¹ß°ÑÕâÖÖÍê³ÉÈÎÎñµÄÄÜÁ¦³ÆÎªÐÔÄÜ¡£ÈûçѶûµÄÎ÷ÑóÆå³ÌÐòºÍ¹È¸èµÄAlphaGo¶¼ÊǵäÐ͵ĽèÖú¹ýÈ¥¶ÔÞĵľÑé»òÆåÆ×£¬²»¶ÏÌá¸ß×ÔÉíÐÔÄܵĻúÆ÷ѧϰϵͳ¡£
ÒÔÉÏÊÇͨ¹ýÎ÷ÑóÆå³ÌÐòµÄÀý×Ó×ܽáµÄһЩ»úÆ÷ѧϰϵͳËù¾ß±¸µÄÌØÐ§£¬µ«ÊÇÕâÀïÔÙÒýÊöÒ»ÏÂÃÀ¹ú¿¨ÄÚ»ù÷¡´óѧ£¨´óѧѧµÄ¿Î³ÌÊǼ¸ÄêǰÒýÈëµÄcmuµÄ½Ì³Ì¡£¡£»°ËµºÜÏÛĽȥcmu¶ÁÑеÄС»ï°é£¬×î½ü»¹ÄÃÁË΢ÈíµÄspecial
offer£©»úÆ÷ѧϰÁìÓòµÄÖøÃû½ÌÊÚTom MitchellµÄ¾µä¶¨ÒåÀ´²ûÊö»úÆ÷ѧϰÀíÂ۵ĿªÆª£º
Ó¢ÎÄÔ»°ÕâÀï¾Í²»´òÁË£¬¸ÐÐËȤ¿ÉÒÔ×Ô¼ºÈ¥°Ù¶È£¬´Ë´¦·Å·Ò룺Èç¹ûÒ»¸ö³ÌÐòÔÚʹÓüÈÓеľÑ飨E£©Ö´ÐÐijÀàÈÎÎñ£¨T£©µÄ¹ý³ÌÖб»È϶¨Îª¡°¾ß±¸Ñ§Ï°ÄÜÁ¦µÄ¡±£¬ÄÇôËüÒ»¶¨ÐèÒªÕ¹ÏÖ³ö£ºÀûÓÃÏÖÓеľÑ飨E£©£¬²»¶Ï¸ÄÉÆÆäÍê³É¼È¶¨ÈÎÎñ£¨T£©µÄÐÔÄÜ£¨P£©µÄÌØÖÊ¡£
˵°×ÁË£¬¾ÍÊÇ˵¡°Ö»ÓÐÄÜÀûÓÃÏÖÓоÑé²»¶ÏÍêÉÆ×ÔÉíÐÔÄܵijÌÐò²ÅÓÐ×ʸñ³ÆÎª»úÆ÷ѧϰ³ÌÐò¡£¡±
¼ÌÐøÒÔ½éÉÜΪÖ÷
ÈÎÎñ£º
»úÆ÷ѧϰµÄÈÎÎñÓкܶ࣬ÕâÀïÎÒÃDzàÖØÓÚ¶ÔÁ½ÀྵäµÄÈÎÎñ½øÐн²½âºÍʵ¼ù£º¼à¶½Ñ§Ï°ºÍ·Ç¼à¶½Ñ§Ï°¡£¹ØÓÚÕâÁ½ÕߵĸÅÄ²»Çå³þµÄ¿ÉÒÔÈ¥¿´¼à¶½Ñ§Ï°ºÍ·Ç¼à¶½Ñ§Ï°µÄÇø±ð¡£
ÕâÀï²¹³äÒ»µã·Ç¼à¶½Ñ§Ï°µÄÄÚÈÝ£¬·Ç¼à¶½Ñ§Ï°³£Óõļ¼Êõ°üÀ¨Êý¾Ý½µÎ¬ºÍ¾ÛÀàÎÊÌâµÈ¡£Ö÷Òª²¹³äÊý¾Ý½µÎ¬µÄ¸ÅÄÊý¾Ý½µÎ¬ÊǶÔÊÂÎïµÄÌØÐÔ½øÐÐѹËõºÍɸѡ£¬ÕâÏîÈÎÎñÏà¶Ô±È½Ï³éÏó¡£Èç¹ûÎÒÃÇûÓÐÌØ¶¨µÄÁìÓò֪ʶ£¬ÊÇÎÞ·¨Ô¤ÏÈÏÈÈ·¶¨²ÉÑùÄÄЩÊý¾ÝµÄ£»¶øÈç½ñ£¬´«¸ÐÉ豸µÄ²ÉÑù³É±¾Ïà¶Ô½ÏµÍ£¬Ïà·´£¬É¸Ñ¡ÓÐЧÐÅÏ¢µÄ³É±¾¸ü¸ß¡£±ÈÈ磬ÔÚʶ±ðͼÏñÖÐÈËÁ³µÄÈÎÎñÖУ¬ÎÒÃÇ¿ÉÒÔÖ±½Ó¶ÁÈ¡µ½Í¼ÏñÏñËØÐÅÏ¢£¬ÈôÊÇÖ±½ÓʹÓÃÕâЩÏñËØÐÅÏ¢£¬ÄÇôÊý¾ÝµÄά¶È»á·Ç³£¸ß£¬ÌرðÊÇÔÚͼÏñ·Ö±æÂÊÔ½À´Ô½¸ßµÄ½ñÌì¡£Òò´Ë£¬ÎÒÃÇͨ³£»áʹÓÃÊý¾Ý½µÎ¬µÄ¼¼Êõ¶ÔͼÏñ½øÐнµÎ¬£¬±£Áô×î¾ßÓÐÇø·Ö¶ÈµÄÏñËØ×éºÏ¡£
¾Ñ飺
ÎÒÃÇϰ¹ßÐԵذÑÊý¾ÝÊÓ×÷¾Ñ飻ÊÂʵÉÏ£¬Ö»ÓÐÄÇЩ¶ÔѧϰÈÎÎñÓÐÓõÄÌØ¶¨ÐÅÏ¢²Å»á±»ÁÐÈ뿼ÂÇ·¶Î§¡£¶øÎÒÃÇͨ³£°ÑÕâЩ·´Ó³Êý¾ÝÄÚÔÚ¹æÂɵÄÐÅÏ¢½Ð×öÌØÕ÷¡£±ÈÈçÇ°ÃæÌáµ½µÄÈËÁ³Í¼Ïñʶ±ðÈÎÎñÖУ¬ÎÒÃǺÜÉÙÖ±½Ó°ÑͼÏñ×îÔʼµÄÏñËØÐÅÏ¢×÷Ϊ¾Ñé½»¸øÑ§Ï°ÏµÍ³£»¶øÊÇͨ¹ý½µÎ¬£¬ÉõÖÁһЩ¸üΪ¸´ÔÓµÄÊý¾Ý´¦Àí·½·¨µÃµ½¸ü¼ÓÓÐÖúÓÚÈËÁ³Ê¶±ðµÄÂÖÀªÌØÕ÷¡£
¶ÔÓڼලѧϰÎÊÌ⣬ÎÒÃÇËùÓµÓеľÑé°üÀ¨ÌØÕ÷ºÍ±ê¼Ç/Ä¿±êÁ½¸ö²¿·Ö¡£ÎÒÃÇÒ»°ãÓÃÒ»¸öÌØÕ÷ÏòÁ¿À´ÃèÊöÒ»¸öÊý¾ÝÑù±¾£»±ê¼Ç/Ä¿±êµÄ±íÏÖÐÎʽÔòÈ¡¾öÓڼලѧϰµÄÖÖÀà¡£
Î޼ලѧϰÎÊÌâ×ÔȻûÓбê¼Ç/Ä¿±ê£¬Òò´ËÎÞ·¨´ÓÊÂÔ¤²âÈÎÎñ£¬È´¸üÊʺ϶ÔÊý¾Ý½á¹¹µÄ·ÖÎö¡£ÕýÊÇÒòΪÕâ¸öÇø±ð£¬ÎÒÃǾ³£¿ÉÒÔ»ñµÃ´óÁ¿µÄÎ޼ලÊý¾Ý£»¶ø¼à¶½Êý¾ÝµÄ±ê×¢ÒòΪ¾³£ºÄ·Ñ´óÁ¿µÄʱ¼ä¡¢½ðÇ®ºÍÈËÁ¦£¬ËùÒÔÊý¾ÝÁ¿Ïà¶Ô½ÏÉÙ¡£
ÐÔÄÜ£º
ËùνÐÔÄÜ£¬±ãÊÇÆÀ¼ÛËùÍê³ÉÈÎÎñÖÊÁ¿µÄÖ¸±ê¡£ÎªÁËÆÀ¼ÛѧϰģÐÍÍê³ÉÈÎÎñµÄÖÊÁ¿£¬ÎÒÃÇÐèÒª¾ß±¸ÏàÍ¬ÌØÕ÷µÄÊý¾Ý£¬²¢½«Ä£Ð͵ÄÔ¤²â½á¹ûͬÏà¶ÔÓ¦µÄÕýÈ·´ð°¸½øÐбȶԡ£ÎÒÃdzÆÕâÑùµÄÊý¾Ý¼¯Îª²âÊÔ¼¯¡£¶øÇÒ¸üÎªÖØÒªµÄÊÇ£¬ÎÒÃÇÐèÒª±£Ö¤£¬³öÏÖÔÚ²âÊÔ¼¯ÖеÄÊý¾ÝÑù±¾Ò»¶¨²»Äܱ»ÓÃÓÚÄ£ÐÍѵÁ·¡£¼ò¶øÑÔÖ®£¬ÑµÁ·¼¯ºÍ²âÊÔ¼¯Ö®¼äÊÇ»¥³âµÄ¡£
¶ÔÓÚÔ¤²âÐÔÖʵÄÎÊÌ⣬ÎÒÃǾ³£¹Ø×¢Ô¤²âµÄ¾«¶È¡£¾ßÌåÀ´½²£º·ÖÀàÎÊÌ⣬ÎÒÃÇÒª¸ù¾ÝÔ¤²âÕýÈ·Àà±ðµÄ°Ù·Ö±ÈÀ´ÆÀ¼ÛÆäÐÔÄÜ£¬Õâ¸öÖ¸±êͨ³£±»³Æ×÷׼ȷÐÔ£»»Ø¹éÎÊÌâÔòÎÞ·¨Ê¹ÓÃÀàËÆµÄÖ¸±ê£¬ÎÒÃÇͨ³£»áºâÁ¿Ô¤²âÖµÓëʵ¼ÊÖµÖ®¼äµÄÆ«²î´óС¡£
ÒÔϾÍÒª½áºÏ¾ßÌåpython´úÂëºÍÀôó½ÖµÄÖ×ÁöÔ¤²âÎÊÌâÁË¡£
¸ù¾ÝÉÏÊöµÄÃèÊö£¬´ó¼Ò¿ÉÒÔÈ·¶¨¡°Á¼/¶ñÐÔÈéÏÙ°©Ö×ÁöÔ¤²â¡±µÄÎÊÌâÊôÓÚ¶þ·ÖÀàÈÎÎñ¡£´ýÔ¤²âµÄÀà±ð·Ö±ðÊÇÁ¼ÐÔÈéÏÙ°©Ö×ÁöºÍ¶ñÐÔÈéÏÙ°©Ö×Áö¡£Í¨³£ÎÒÃÇʹÓÃÀëÉ¢µÄÕûÊýÀ´´ú±íÀà±ð¡£ÈçÏÂ±í£¬¡°Ö×ÁöÀàÐÍ¡±Ò»ÁÐÁгöÁËÖ×ÁöµÄÀàÐÍ£»0´ú±íÁ¼ÐÔ£¬1´ú±í¶ñÐÔ¡£

ÍêÕûµÄÊý¾Ý¼¯Ö×ÁöµÄÌØÕ÷²»Ö¹ÕâÁ½¸ö£¬µ«ÊÇÔÚÕâ¸öÀý×ÓÖÐÎÒÃÇֻȡÕâÁ½¸öÌØÕ÷£¬²¢ÇÒ²âÊÔ¼¯ÊýÁ¿Îª175Ìõ¡£ÎÒÃÇÏÈ¿´Ò»ÏÂÕâ175ÌõÖ×ÁöÑù±¾ÔÚ¶þÎ¬ÌØÕ÷¿Õ¼äµÄ·Ö²¼Çé¿ö£¬ÈçÏÂͼËùʾ¡£X´ú±í¶ñÐÔÖ×Áö£¬O´ú±íÁ¼ÐÔÖ×Áö¡£

»æÖÆÕâÕÅͼµÄ´úÂëÈçÏ£º
# -*- coding:utf-8
-*-
# µ¼Èëpandas°ü£¬±ðÃûΪpd
import pandas as pd
# ʹÓÃpandasµÄread_csvº¯Êý£¬½«ÑµÁ·¼¯¶ÁÈ¡½øÀ´²¢´æÖÁ±äÁ¿df_train
df_train = pd.read_csv('breast-cancer-train.csv')
# ʹÓÃpandasµÄread_csvº¯Êý£¬½«²âÊÔ¼¯¶ÁÈ¡½øÀ´²¢´æÖÁ±äÁ¿df_test
df_test = pd.read_csv('breast-cancer-test.csv')
# ѡȡClump ThicknessºÍCell Size×÷ÎªÌØÕ÷£¬¹¹½¨²âÊÔ¼¯ÖеÄÕý¸º·ÖÀàÑù±¾
df_test_negative = df_test.loc[df_test['Type']
== 0][['Clump Thickness', 'Cell Size']]
df_test_positive = df_test.loc[df_test['Type']
== 1][['Clump Thickness', 'Cell Size']]
# µ¼Èëmatplotlib¹¤¾ß°üÖеÄpyplot²¢ÃüÃûΪplt
import matplotlib.pyplot as plt
# »æÖÆÍ¼ÖеÄÁ¼ÐÔÖ×ÁöÑù±¾µã£¬±ê¼ÇΪºìÉ«µÄo
plt.scatter(df_test_negative['Clump Thickness'],
df_test_negative['Cell Size'], marker='o', s=200,
c='red')
# »æÖÆÍ¼ÖеĶñÐÄÖ×ÁöÑù±¾µã£¬±ê¼ÇΪºÚÉ«µÄx
plt.scatter(df_test_positive['Clump Thickness'],
df_test_positive['Cell Size'], marker='x', s=150,
c='black')
# »æÖÆx£¬yÖá˵Ã÷
plt.xlabel('Clump Thickness')
plt.ylabel('Cell Size')
# ÏÔʾͼ
plt.show() |
ËæºóÎÒÃÇËæ»ú³õʼ»¯Ò»¸ö¶þÀà·ÖÀàÆ÷£¬Õâ¸ö·ÖÀàÆ÷ÓÃÒ»ÌõÖ±ÏßÀ´»®·ÖÁ¼/¶ñÐÔÖ×Áö¡£¾ö¶¨ÕâÌõÖ±ÏßµÄ×ßÏòÓÐÁ½¸öÒòËØ£ºÖ±ÏßµÄбÂʺͽؾࡣÕâЩ±»ÎÒÃdzÆÎªÄ£Ð͵IJÎÊý£¬Ò²ÊÇ·ÖÀàÆ÷ÐèҪͨ¹ýѧϰ´ÓѵÁ·Êý¾ÝÖеõ½µÄ¡£×î³õ£¬Ëæ»ú³õʼ»¯²ÎÊýµÄ·ÖÀàÆ÷µÄÐÔÄܱíÏÖÈçÏÂͼËùʾ£º

»æÖÆÕâÕÅͼµÄ´úÂëÈçÏ£º
<span style="font-size:12px;">#
-*- coding:utf-8 -*-
# µ¼Èëpandas°ü£¬±ðÃûΪpd
import pandas as pd
# µ¼Èëmatplotlib¹¤¾ß°üÖеÄpyplot²¢ÃüÃûΪplt
import matplotlib.pyplot as plt
# ʹÓÃpandasµÄread_csvº¯Êý£¬½«ÑµÁ·¼¯¶ÁÈ¡½øÀ´²¢´æÖÁ±äÁ¿df_train
df_train = pd.read_csv('breast-cancer-train.csv')
# ʹÓÃpandasµÄread_csvº¯Êý£¬½«²âÊÔ¼¯¶ÁÈ¡½øÀ´²¢´æÖÁ±äÁ¿df_test
df_test = pd.read_csv('breast-cancer-test.csv')
# ѡȡClump ThicknessºÍCell Size×÷ÎªÌØÕ÷£¬¹¹½¨²âÊÔ¼¯ÖеÄÕý¸º·ÖÀàÑù±¾
df_test_negative = df_test.loc[df_test['Type']
== 0][['Clump Thickness', 'Cell Size']]
df_test_positive = df_test.loc[df_test['Type']
== 1][['Clump Thickness', 'Cell Size']]
# µ¼Èënumpy¹¤¾ß°ü£¬ÖØÃüÃûΪnp
import numpy as np
# ÀûÓÃnumpyÖеÄrandomº¯ÊýËæ»ú²ÉÑùÖ±ÏߵĽؾàºÍϵÊý
intercept = np.random.random([1])
coef = np.random.random([2])
lx = np.arange(0, 12)
ly = (-intercept - lx * coef[0]) / coef[1]
# »æÖÆÒ»ÌõËæ»úÖ±Ïß
plt.plot(lx, ly, c='yellow')
plt.scatter(df_test_negative['Clump Thickness'],
df_test_negative['Cell Size'], marker='o', s=200,
c='red')
plt.scatter(df_test_positive['Clump Thickness'],
df_test_positive['Cell Size'], marker='x', s=150,
c='black')
plt.xlabel('Clump Thickness')
plt.ylabel('Cell Size')
plt.show()</span> |
ËæºóÎÒÃÇʹÓÃÒ»¶¨Á¿ÑµÁ·Ñù±¾£¬·ÖÀàÆ÷Ëù±íÏÖµÄÐÔÄÜÓÐÁË´ó·ù¶ÈµÄÌáʾ£¬ÈçÏÂͼ£º
»æÖÆÕâÕÅͼµÄ´úÂëÈçÏ£º
<span style="font-size:12px;">#
-*- coding:utf-8 -*-
# µ¼Èëpandas°ü£¬±ðÃûΪpd
import pandas as pd
# µ¼Èënumpy¹¤¾ß°ü£¬ÖØÃüÃûΪnp
import numpy as np
# µ¼Èëmatplotlib¹¤¾ß°üÖеÄpyplot²¢ÃüÃûΪplt
import matplotlib.pyplot as plt
# µ¼ÈësklearnÖеÄÂ߼˹µÙ»Ø¹é·ÖÀàÆ÷
from sklearn.linear_model import LogisticRegression
# ʹÓÃpandasµÄread_csvº¯Êý£¬½«ÑµÁ·¼¯¶ÁÈ¡½øÀ´²¢´æÖÁ±äÁ¿df_train
df_train = pd.read_csv('breast-cancer-train.csv')
# ʹÓÃpandasµÄread_csvº¯Êý£¬½«²âÊÔ¼¯¶ÁÈ¡½øÀ´²¢´æÖÁ±äÁ¿df_test
df_test = pd.read_csv('breast-cancer-test.csv')
# ѡȡClump ThicknessºÍCell Size×÷ÎªÌØÕ÷£¬¹¹½¨²âÊÔ¼¯ÖеÄÕý¸º·ÖÀàÑù±¾
df_test_negative = df_test.loc[df_test['Type']
== 0][['Clump Thickness', 'Cell Size']]
df_test_positive = df_test.loc[df_test['Type']
== 1][['Clump Thickness', 'Cell Size']]
lr = LogisticRegression()
# ʹÓÃǰ10ÌõѵÁ·Ñù±¾Ñ§Ï°Ö±ÏßµÄϵÊýºÍ½Ø¾à
lr.fit(df_train[['Clump Thickness', 'Cell Size']][:10],
df_train['Type'][:10])
print 'Testing accuracy (10 training samples):',
lr.score(df_test[['Clump Thickness', 'Cell Size']],
df_test['Type'])
intercept = lr.intercept_
coef = lr.coef_[0, :]
lx = np.arange(0, 12)
# Ô±¾Õâ¸ö·ÖÀàÃæÓ¦¸ÃÊÇlx*coef[0] + ly*coef[1] + intercept=0
Ó³Éäµ½2Î¬Æ½ÃæÉÏÖ®ºó£¬Ó¦¸ÃÊÇ£º
ly = (-intercept - lx * coef[0]) / coef[1]
plt.plot(lx, ly, c='green')
plt.scatter(df_test_negative['Clump Thickness'],
df_test_negative['Cell Size'], marker='o', s=200,
c='red')
plt.scatter(df_test_positive['Clump Thickness'],
df_test_positive['Cell Size'], marker='x', s=150,
c='black')
plt.xlabel('Clump Thickness')
plt.ylabel('Cell Size')
plt.show()</span> |
printµÄֵΪ£ºTesting accuracy (10 training samples): 0.868571428571
ÈçÉÏͼËùʾ£¬µ±Ñ§Ï°ÁË10ÌõѵÁ·Ñù±¾Ê±£¬·ÖÀàÆ÷µÄÐÔÄܸĽøÁËһЩ£¬²âÊÔ¼¯ÉϵķÖÀà׼ȷÐÔΪ86.9%£»ÎÒÃǼÌÐøÑ§Ï°ËùÓÐѵÁ·Ñù±¾£¬·ÖÀàÆ÷µÄÐÔÄܽøÒ»²½ÌáÉý£¬ÔÚ²âÊÔ¼¯ÉϵķÖÀà׼ȷÐÔ×îÖÕ´ïµ½93.7%£¬ÈçÏÂͼ£º
»æÖÆÕâÕÅͼµÄ´úÂëÈçÏ£º
# -*- coding:utf-8
-*-
# µ¼Èëpandas°ü£¬±ðÃûΪpd
import pandas as pd
# µ¼Èënumpy¹¤¾ß°ü£¬ÖØÃüÃûΪnp
import numpy as np
# µ¼Èëmatplotlib¹¤¾ß°üÖеÄpyplot²¢ÃüÃûΪplt
import matplotlib.pyplot as plt
# µ¼ÈësklearnÖеÄÂ߼˹µÙ»Ø¹é·ÖÀàÆ÷
from sklearn.linear_model import LogisticRegression
# ʹÓÃpandasµÄread_csvº¯Êý£¬½«ÑµÁ·¼¯¶ÁÈ¡½øÀ´²¢´æÖÁ±äÁ¿df_train
df_train = pd.read_csv('breast-cancer-train.csv')
# ʹÓÃpandasµÄread_csvº¯Êý£¬½«²âÊÔ¼¯¶ÁÈ¡½øÀ´²¢´æÖÁ±äÁ¿df_test
df_test = pd.read_csv('breast-cancer-test.csv')
# ѡȡClump ThicknessºÍCell Size×÷ÎªÌØÕ÷£¬¹¹½¨²âÊÔ¼¯ÖеÄÕý¸º·ÖÀàÑù±¾
df_test_negative = df_test.loc[df_test['Type']
== 0][['Clump Thickness', 'Cell Size']]
df_test_positive = df_test.loc[df_test['Type']
== 1][['Clump Thickness', 'Cell Size']]
lr = LogisticRegression()
# ʹÓÃǰ10ÌõѵÁ·Ñù±¾Ñ§Ï°Ö±ÏßµÄϵÊýºÍ½Ø¾à
lr.fit(df_train[['Clump Thickness', 'Cell Size']],
df_train['Type'])
print 'Testing accuracy (10 training samples):',
lr.score(df_test[['Clump Thickness', 'Cell Size']],
df_test['Type'])
intercept = lr.intercept_
coef = lr.coef_[0, :]
lx = np.arange(0, 12)
# Ô±¾Õâ¸ö·ÖÀàÃæÓ¦¸ÃÊÇlx*coef[0] + ly*coef[1] + intercept=0
Ó³Éäµ½2Î¬Æ½ÃæÉÏÖ®ºó£¬Ó¦¸ÃÊÇ£º
ly = (-intercept - lx * coef[0]) / coef[1]
plt.plot(lx, ly, c='green')
plt.scatter(df_test_negative['Clump Thickness'],
df_test_negative['Cell Size'], marker='o', s=200,
c='red')
plt.scatter(df_test_positive['Clump Thickness'],
df_test_positive['Cell Size'], marker='x', s=150,
c='black')
plt.xlabel('Clump Thickness')
plt.ylabel('Cell Size')
plt.show() |
printµÄֵΪTesting accuracy (10 training samples): 0.937142857143
Õâ·Ý´úÂëÖ»Êǰï´ó¼ÒÀíÇåÒ»ÏÂ×îΪ»ù´¡µÄpython±à³ÌÒªËØ£¬·½±ã¶ÔºóÃæµÄʵÀý½øÐÐÀí½âºÍʵ¼ù¡£
Êý¾ÝµØÖ·http://pan.baidu.com/s/1jI00k8Q£¬´ó¼Ò¿ÉÒÔÈ¥ÏÂÔØ¡£
|