טיש פון קאָנטענץ[באַהאַלטן][ווייַזן]
- וואָס איז בילד קלאַסאַפאַקיישאַן?
- ווי אַזוי אַרבעט בילד קלאַסאַפאַקיישאַן?
בילד קלאַסאַפאַקיישאַן ניצן Tensorflow & Keras אין פּיטהאָן+-
- 1. ינסטאָלינג רעקווירעמענץ
- 2. ימפּאָרטינג דיפּענדאַנסיז
- 3. יניטיאַליזינג פּאַראַמעטערס
- 4. לאָודינג די דאַטאַסעט
- 5. קריייטינג די מאָדעל
- 6. טראַינינג די מאָדעל
- טעסטינג די מאָדעל
- 7. ימפּאָרטינג די יוטילאַטיז פֿאַר טעסטינג
- 8. מאכן אַ פּיטהאָן וועגווייַזער
- 9. לאָודינג פּרובירן דאַטן & מאָדעל
- 10. אפשאצונג & פּרעדיקטיאָן
- 11. רעזולטאַטן
- סאָף
עס איז ריאַשורינג צו וויסן אַז מיר האָבן געראטן צו אַרייַנציען ראָובאַץ מיט אונדזער ינייט אַבילאַטיז צו לערנען ביי ביישפּיל און זען זייער סוויווע. די פונדאַמענטאַל אַרויסרופן איז די לערנען קאָמפּיוטערס צו "זען" ווי יומאַנז וואָלט דאַרפֿן פיל מער צייט און מי.
אָבער, ווען מיר באַטראַכטן די פּראַקטיש ווערט אַז די בקיעס איצט גיט צו אָרגאַנאַזיישאַנז און ענטערפּריסעס, די מי איז ווערטיק. אין דעם אַרטיקל, איר וועט לערנען וועגן בילד קלאַסאַפאַקיישאַן, ווי עס אַרבעט און זייַן פּראַקטיש ימפּלאַמענטיישאַן. לאמיר אנהייבן.
וואָס איז בילד קלאַסאַפאַקיישאַן?
די אַרבעט פון פידינג אַ בילד אין אַ נעוראַל נעץ און ווייל עס רעזולטאַט עטלעכע פאָרעם פון פירמע פֿאַר דעם בילד איז באקאנט ווי בילד דערקענונג. דער רעזולטאַט פירמע פון די נעץ וועט שטימען צו אַ פאַר-דיפיינד קלאַס.
עס קען זיין פילע קלאסן אַסיינד צו די בילד, אָדער פשוט איינער. ווען עס איז בלויז איין קלאַס, דער טערמין "דערקענונג" איז אָפט געניצט, כאָטש ווען עס זענען קייפל קלאסן, דער טערמין "קלאַסיפיקאַטיאָן" איז אָפט געניצט.
אָבדזשעקט דיטעקשאַן איז אַ סובסעט פון בילד קלאַסאַפאַקיישאַן אין וואָס באַזונדער קאַסעס פון אַבדזשעקץ זענען דיטעקטאַד ווי געהערן צו אַ געגעבן קלאַס אַזאַ ווי אַנימאַלס, וועהיקלעס אָדער יומאַנז.
ווי אַזוי אַרבעט בילד קלאַסאַפאַקיישאַן?
א בילד אין די פאָרעם פון בילדצעלן איז אַנאַלייזד דורך אַ קאָמפּיוטער. עס אַקאַמפּלישיז דעם דורך טרעאַטינג די בילד ווי אַ זאַמלונג פון מאַטריץ, די גרייס פון וואָס איז באשלאסן דורך די בילד האַכלאָטע. סימפּלי גערעדט, בילד קלאַסאַפאַקיישאַן איז די לערנען פון סטאַטיסטיש דאַטן ניצן אַלגערידאַמז פֿון אַ קאָמפּיוטער ס פּערספּעקטיוו.
בילד קלאַסאַפאַקיישאַן איז אַטשיווד אין דיגיטאַל בילד פּראַסעסינג דורך גרופּינג בילדצעלן אין פּרידיטערמינד גרופּעס, אָדער "קלאסן." די אַלגערידאַמז טיילן די בילד אין אַ סאַקסעשאַן פון נאָוטווערדי קעראַקטעריסטיקס, וואָס ראַדוסאַז די מאַסע פֿאַר די לעצט קלאַססיפיער.
די קוואַלאַטיז מיטטיילן די קלאַססיפיער וועגן די בילד ס טייַטש און פּאָטענציעל קלאַסאַפאַקיישאַן. ווייַל די רעשט פון די פּראַסעסאַז אין קלאַסאַפייינג אַ בילד זענען אָפענגיק אויף עס, די כאַראַקטעריסטיש יקסטראַקשאַן אופֿן איז די מערסט קריטיש פאַסע.
די דאַטן צוגעשטעלט צו די אַלגערידאַם איז אויך קריטיש אין בילד קלאַסאַפאַקיישאַן, ספּעציעל סופּערווייזד קלאַסאַפאַקיישאַן. אין פאַרגלייַך צו אַ שרעקלעך דאַטאַסעט מיט דאַטן ימבאַלאַנס באזירט אויף קלאַס און נידעריק בילד און אַנאַטיישאַן קוואַליטעט, אַ געזונט-אָפּטימיזעד קלאַסאַפאַקיישאַן דאַטאַסעט פּערפאָרמז אַדמראַבלי.
בילד קלאַסאַפאַקיישאַן ניצן Tensorflow & Keras אין פּיטהאָן
מיר וועלן נוצן די CIFAR-10 דאַטאַסעט (וואָס כולל ערקראַפט, ערפּליינז, פייגל און אנדערע 7 זאכן).
1. ינסטאָלינג רעקווירעמענץ
די קאָד אונטן וועט ינסטאַלירן אַלע פּרירעקוואַזאַץ.
2. ימפּאָרטינג דיפּענדאַנסיז
מאַכן אַ train.py טעקע אין פּיטהאָן. דער קאָד אונטן וועט אַרייַנפיר דיפּענדאַנסיז פון Tensorflow און Keras.
3. יניטיאַליזינג פּאַראַמעטערס
CIFAR-10 כולל בלויז 10 בילד קאַטעגאָריעס, אַזוי נומער קלאסן פשוט אָפּשיקן צו די נומער פון קאַטעגאָריעס צו קלאַסיפיצירן.
4. לאָודינג די דאַטאַסעט
די פֿונקציע ניצט די Tensorflow Datasets מאָדולע צו לאָדן די דאַטאַסעט, און מיר שטעלן מיט אינפֿאָרמאַציע צו True צו באַקומען עטלעכע אינפֿאָרמאַציע וועגן אים. איר קענט דרוקן עס צו זען וואָס פעלדער און זייער וואַלועס זענען, און מיר וועלן נוצן די אינפֿאָרמאַציע צו צוריקקריגן די נומער פון סאַמפּאַלז אין די טריינינג און טעסטינג שטעלט.
5. קריייטינג די מאָדעל
איצט מיר וועלן בויען דריי לייַערס, יעדער קאַנסיסטינג פון צוויי קאָנוונעץ מיט אַ מאַקסימום-פּאָלינג און רעלו אַקטאַוויישאַן פונקציע, נאכגעגאנגען דורך אַ גאָר קאָננעקטעד 1024 אַפּאַראַט סיסטעם. אין פאַרגלייַך מיט ResNet50 אָדער Xception, וואָס זענען מאָדערן מאָדעלס, דאָס קען זיין אַ קאַמפּעראַטיוולי קליינטשיק מאָדעל.
6. טראַינינג די מאָדעל
איך געוויינט Tensorboard צו מעסטן די אַקיעראַסי און אָנווער אין יעדער עפּאָס און צושטעלן אונדז אַ שיינע אַרויסווייַזן נאָך ימפּאָרטינג די דאַטן און דזשענערייטינג די מאָדעל. לויפן די פאלגענדע קאָד; דיפּענדינג אויף דיין קפּו / גפּו, טריינינג וועט נעמען עטלעכע מינוט.
צו נוצן Tensorboard, פּונקט טיפּ די פאלגענדע באַפֿעל אין די וואָקזאַל אָדער באַפֿעלן פּינטלעך אין די קראַנט וועגווייַזער:
איר וועט זען אַז וואַלאַדיישאַן אָנווער איז רידוסינג און די אַקיעראַסי איז רייזינג צו וועגן 81%. אַז ס פאַנטאַסטיש!
טעסטינג די מאָדעל
ווען די טריינינג איז פאַרטיק, די לעצט מאָדעל און ווייץ זענען געראטעוועט אין די רעזולטאַטן טעקע, אַלאַוינג אונדז צו באַן אַמאָל און מאַכן פֿאָרויסזאָגן ווען מיר קלייַבן. גיי די קאָד אין אַ נייַע פּיטהאָן טעקע געהייסן test.py.
7. ימפּאָרטינג די יוטילאַטיז פֿאַר טעסטינג
8. מאכן אַ פּיטהאָן וועגווייַזער
מאַכן אַ פּיטהאָן ווערטערבוך וואָס טראַנסלייץ יעדער ינטאַדזשער ווערט צו די צונעמען פירמע פון די דאַטאַסעט:
9. לאָודינג פּרובירן דאַטן & מאָדעל
די פאלגענדע קאָד וועט לאָדן די פּראָבע דאַטן און מאָדעל.
10. אפשאצונג & פּרעדיקטיאָן
די פאלגענדע קאָד וועט אָפּשאַצן און מאַכן פֿאָרויסזאָגן אויף די זשאַבע בילדער.
11. רעזולטאַטן
דער מאָדעל פּרעדיקטעד די זשאַבע מיט 80.62% אַקיעראַסי.
סאָף
אָוקיי, מיר זענען פאַרטיק מיט דעם לעקציע. כאָטש 80.62% איז נישט גוט פֿאַר אַ ביסל CNN, איך שטארק רעקאָמענדירן איר צו טוישן די מאָדעל אָדער קוק אין ResNet50, Xception אָדער אנדערע מאָדערן מאָדעלס פֿאַר בעסער רעזולטאַטן.
איצט אַז איר האָט געבויט דיין ערשטער בילד דערקענונג נעץ אין Keras, איר זאָל עקספּערימענט מיט דעם מאָדעל צו אַנטדעקן ווי פאַרשידענע פּאַראַמעטערס פּראַל אויף די פאָרשטעלונג.
לאָזן אַ ענטפֿערן