tensorflow:: אופס:: FractionalMaxPool
#include <nn_ops.h>
מבצע איגום מקסימלי חלקי על הקלט.
תַקצִיר
איגום מקסימלי חלקי שונה במקצת מבריכה מקסימלית רגילה. באיגוד מקסימלי רגיל, אתה מקטין ערכת קלט על ידי לקיחת הערך המקסימלי של N x N תת-סעיפים קטנים יותר של הקבוצה (לעיתים קרובות 2x2), ומנסה להקטין את הסט בפקטור של N, כאשר N הוא מספר שלם. איגום מקסימלי חלקי, כפי שניתן לצפות מהמילה "שברית", אומר שיחס ההפחתה הכולל N אינו חייב להיות מספר שלם.
הגדלים של אזורי האיגום נוצרים באופן אקראי אך הם די אחידים. לדוגמה, בואו נסתכל על ממד הגובה, ואת האילוצים ברשימת השורות שיהוו גבולות בריכות.
ראשית אנו מגדירים את הדברים הבאים:
- input_row_length : מספר השורות מקבוצת הקלט
- output_row_length : שיהיה קטן מהקלט
- alpha = input_row_length / output_row_length : יחס ההפחתה שלנו
- K = קומה (אלפא)
- row_pooling_sequence : זוהי רשימת התוצאות של שורות גבול הבריכה
לאחר מכן, row_pooling_sequence אמור לספק את:
- a[0] = 0 : הערך הראשון של הרצף הוא 0
- a[end] = input_row_length : הערך האחרון של הרצף הוא הגודל
- K <= (a[i+1] - a[i]) <= K+1 : כל המרווחים הם בגודל K או K+1
- length(row_pooling_sequence) = output_row_length+1
לפרטים נוספים על איגום מקסימלי חלקי, ראה מאמר זה: בנג'מין גרהם, איסוף מקסימלי חלקי
טיעונים:
- scope: אובייקט Scope
- ערך: 4-D עם צורה
[batch, height, width, channels]
. - pooling_ratio: יחס איגום עבור כל ממד של
value
, תומך כרגע רק בממד שורה וקול ועליו להיות >= 1.0. לדוגמה, יחס איגום חוקי נראה כמו [1.0, 1.44, 1.73, 1.0]. הרכיבים הראשונים והאחרונים חייבים להיות 1.0 מכיוון שאנו לא מאפשרים איחוד על מידות אצווה וערוצים. 1.44 ו-1.73 הם יחס איסוף על מידות גובה ורוחב בהתאמה.
מאפיינים אופציונליים (ראה Attrs
):
- pseudo_random: כאשר הוא מוגדר כ-True, יוצר את רצף האיגום בצורה פסאודו אקראית, אחרת, בצורה אקראית. בדוק בנייר Benjamin Graham, Fractional Max-Pooling עבור ההבדל בין פסאודורנדום לאקראי.
- חופפים: כאשר מוגדר כ-True, פירוש הדבר בעת איגום, הערכים בגבול תאי האיגום הסמוכים משמשים את שני התאים. לְדוּגמָה:
index 0 1 2 3 4
value 20 5 16 3 7
אם רצף האיגום הוא [0, 2, 4], אז 16, באינדקס 2 ישמש פעמיים. התוצאה תהיה [20, 16] עבור איגום מרבי חלקי.
- דטרמיניסטי: כאשר הוא מוגדר כ-True, אזור איגום קבוע ישמש בעת איטרציה על צומת FractionalMaxPool בגרף החישוב. משמש בעיקר בבדיקת יחידה כדי להפוך את FractionalMaxPool לדטרמיניסטי.
- seed: אם ה-seed או seed2 מוגדרים כלא-אפס, מחולל המספרים האקראיים מוזרע על ידי ה-seed הנתון. אחרת, הוא נזרע על ידי זרע אקראי.
- seed2: זרע שני כדי למנוע התנגשות זרע.
החזרות:
- פלט
Output
: טנזור פלט לאחר איגום מקסימלי חלקי. -
Output
row_pooling_sequence: רצף אוסף שורות, הדרוש לחישוב שיפוע. -
Output
col_pooling_sequence: רצף איגום עמודות, הדרוש לחישוב שיפוע.
בנאים והורסים | |
---|---|
FractionalMaxPool (const :: tensorflow::Scope & scope, :: tensorflow::Input value, const gtl::ArraySlice< float > & pooling_ratio) | |
FractionalMaxPool (const :: tensorflow::Scope & scope, :: tensorflow::Input value, const gtl::ArraySlice< float > & pooling_ratio, const FractionalMaxPool::Attrs & attrs) |
תכונות ציבוריות | |
---|---|
col_pooling_sequence | |
operation | |
output | |
row_pooling_sequence |
פונקציות סטטיות ציבוריות | |
---|---|
Deterministic (bool x) | |
Overlapping (bool x) | |
PseudoRandom (bool x) | |
Seed (int64 x) | |
Seed2 (int64 x) |
מבנים | |
---|---|
tensorflow:: ops:: FractionalMaxPool:: Attrs | קובעי תכונות אופציונליים עבור FractionalMaxPool . |
תכונות ציבוריות
col_pooling_sequence
::tensorflow::Output col_pooling_sequence
מִבצָע
Operation operation
תְפוּקָה
::tensorflow::Output output
row_pooling_sequence
::tensorflow::Output row_pooling_sequence
תפקידים ציבוריים
FractionalMaxPool
FractionalMaxPool( const ::tensorflow::Scope & scope, ::tensorflow::Input value, const gtl::ArraySlice< float > & pooling_ratio )
FractionalMaxPool
FractionalMaxPool( const ::tensorflow::Scope & scope, ::tensorflow::Input value, const gtl::ArraySlice< float > & pooling_ratio, const FractionalMaxPool::Attrs & attrs )
פונקציות סטטיות ציבוריות
דטרמיניסטי
Attrs Deterministic( bool x )
חוֹפֵף
Attrs Overlapping( bool x )
PseudoRandom
Attrs PseudoRandom( bool x )
זֶרַע
Attrs Seed( int64 x )
זרע 2
Attrs Seed2( int64 x )
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2024-11-18 (שעון UTC).