قاتتىق دېتال-يۇمشاق دېتال ئورتاق لايىھىلەش ئارقىلىق قىر ئۈسكۈنىلىرىگە ئۈنۈملۈك سۈنئىي ئەقىل مودېل ئورۇنلاشتۇرۇش
تونۇشتۇرۇش
قىرلىق ئۈسكۈنىلەرنىڭ كۆپىيىشى سۈنئىي ئىدراك (AI) قوللىنىشچان پروگراممىلىرىنىڭ دەل ۋاقتىدا ئورۇنلاشتۇرۇلۇشىغا يېڭى پۇرسەت يارىتىپ ، ئەقلىي ئىقتىدارلىق ئۆي ، ئاپتوماتىك ماشىنا ۋە سانائەتنى ئاپتوماتلاشتۇرۇش قاتارلىق قوللىنىشچان پروگراممىلارنى تەمىنلەيدۇ. قانداقلا بولمىسۇن ، چەكلىك ئۈسكۈنىلەرنىڭ چەكلىك ھېسابلاش مەنبەسى ۋە توك چەكلىمىسى سۈنئىي ئەقىل ئەندىزىسىنىڭ ئورۇنلاشتۇرۇلۇشىغا زور رىقابەت ئېلىپ كېلىدۇ. بۇ ماقالىدە سۈنئىي ئەقىل ، يۇمشاق دېتال قۇرۇلۇشى ۋە بىناكارلىقنىڭ كېسىشىش ئېغىزى ئۈستىدە ئىزدىنىپ ، ئەۋزەل ئۈسكۈنىلەرنىڭ ئىقتىدارىنى ئەلالاشتۇرىمىز ، سۈنئىي ئەقىل مودېل ئۈنۈمى ۋە قاتتىق دېتال-يۇمشاق دېتال ئورتاق لايىھىلەش تېخنىكىسىنىڭ يېقىنقى ئىلگىرىلەشلىرىدىن پايدىلىنىمىز.
قىرلىق ئۈسكۈنىلەرگە سۈنئىي ئەقىل مودېل ئورۇنلاشتۇرۇشنىڭ رىقابەتلىرى
قىر ئۈسكۈنىلىرى CPU ، ئىچكى ساقلىغۇچ ۋە توك سەرپىياتىنى ئۆز ئىچىگە ئالغان چەكلىك ھېسابلاش مەنبەسى بىلەن خاراكتېرلىنىدۇ. ئەنئەنىۋى سۈنئىي ئەقىل مودېللىرى كۆپىنچە بۇلۇتنى ئاساس قىلغان ئورۇنلاشتۇرۇش ئۈچۈن لايىھەلەنگەن ، قىر ئۈسكۈنىلەرگە ئەلالاشتۇرۇلمايدۇ. نەتىجىدە ، ئۇلار:
- ** ئىقتىدارنىڭ تۆۋەنلىشى **: سۈنئىي ئەقىل مودېللىرى قىر ئۈسكۈنىلەردە ئۈنۈملۈك ئىشلىمەسلىكى مۇمكىن ، بۇنىڭ بىلەن ئىنكاس قايتۇرۇش سۈرئىتى ئاستا ۋە توغرىلىق تۆۋەنلەيدۇ.
- ** توك سەرپىياتى **: سۈنئىي ئەقىل مودېللىرى زور كۈچ سەرپ قىلالايدۇ ، بۇ باتارېيە ئارقىلىق ھەرىكەتلىنىدىغان قىر ئۈسكۈنىلەرگە كۆڭۈل بۆلىدۇ.
- ** ئىچكى ساقلىغۇچ چەكلىمىسى **: سۈنئىي ئەقىل مودېللىرى كۆپ مىقداردا ئىچكى ساقلىغۇچقا ئېھتىياجلىق بولىدۇ ، بۇ ئىچكى ساقلىغۇچ مەنبەسى چەكلىك قىرلىق ئۈسكۈنىلەرگە جەڭ ئېلان قىلالايدۇ.
قاتتىق دېتال-يۇمشاق دېتال ئورتاق لايىھىلەش تېخنىكىسى
بۇ خىرىسلارنى ھەل قىلىش ئۈچۈن ، قاتتىق دېتال-يۇمشاق دېتال ئورتاق لايىھىلەش تېخنىكىسى ئۈمىدۋار ھەل قىلىش چارىسى سۈپىتىدە ئوتتۇرىغا چىقتى. بۇ تېخنىكىلار گىرۋەك ئۈسكۈنىسىنىڭ قاتتىق دېتال ۋە يۇمشاق دېتال زاپچاسلىرىنى ماس قەدەمدە لايىھىلەشنى ئۆز ئىچىگە ئالىدۇ ، ئۇلارنى سۈنئىي ئەقىل مودېلى ئورۇنلاشتۇرۇشقا ئەلالاشتۇرىدۇ.
** 1. Model Pruning **
مودېل پۇتاش سۈنئىي ئەقىل مودېلىدىن زۆرۈر بولمىغان ئېغىرلىق ۋە ئۇلىنىشلارنى چىقىرىپ تاشلاپ ، ئۇنىڭ چوڭ-كىچىكلىكى ۋە ھېسابلاش تەلىپىنى ئازايتىشنى ئۆز ئىچىگە ئالىدۇ. بۇ تېخنىكىنى نېرۋا تورى ۋە قارار دەرەخلىرىگە ئىشلىتىشكە بولىدۇ.
`` python مەشئەل ئەكىرىش torch.nn نى nn قىلىپ ئەكىرىڭ
class ModelPruning (nn.Module): def init __ (ئۆزى): دەرىجىدىن تاشقىرى (ModelPruning, self) . init __ () self.fc1 = nn.Linear (784, 128) self.fc2 = nn.Linear (128, 10)
def forward (self, x):
x = torch.relu (self.fc1 (x))
x = self.fc2 (x)
return x
model = ModelPruning () pruned_model = torch.nn.utils.prune_l1_ قۇرۇلما (مودېل ، 'ئېغىرلىق' ، 0.1) ``
** 2. بىلىملەرنى پارچىلاش **
بىلىملەرنى پارچىلاش بىلىملەرنى چوڭ ، مۇرەككەپ سۈنئىي ئەقىل ئەندىزىسىدىن كىچىكرەك ، ئاددىيراققا يۆتكەشنى ئۆز ئىچىگە ئالىدۇ. بۇ تېخنىكىنى AI مودېلىنىڭ چوڭ-كىچىكلىكى ۋە ھېسابلاش تەلىپىنى ئازايتىشقا ئىشلىتىشكە بولىدۇ.
`` python مەشئەل ئەكىرىش torch.nn نى nn قىلىپ ئەكىرىڭ
class KnowledgeDistillation (nn.Module): def init __ (ئۆزى): دەرىجىدىن تاشقىرى (بىلىملەرنى ئايرىش ، ئۆزى) . init __ () self.fc1 = nn.Linear (784, 128) self.fc2 = nn.Linear (128, 10)
def forward (self, x):
x = torch.relu (self.fc1 (x))
x = self.fc2 (x)
return x
teacher_model = ModelPruning () student_model = KnowledgeDistillation () ``
** 3. مىقدارلاشتۇرۇش **
مىقدارلاشتۇرۇش سۈنئىي ئەقىل مودېلىنىڭ ئېغىرلىقى ۋە ئاكتىپچانلىقىنىڭ توغرىلىقىنى ئازايتىشنى ، سۈنئىي ئەقىل مودېلىنىڭ ھېسابلاش تەلىپىنى ئازايتىشنى ئۆز ئىچىگە ئالىدۇ.
`` python مەشئەل ئەكىرىش torch.nn نى nn قىلىپ ئەكىرىڭ
class Quantization (nn.Module): def init __ (ئۆزى): دەرىجىدىن تاشقىرى (مىقدارلاشتۇرۇش ، ئۆزى) . init __ () self.fc1 = nn.Linear (784, 128) self.fc2 = nn.Linear (128, 10)
def forward (self, x):
x = torch.relu (self.fc1 (x))
x = self.fc2 (x)
return x
model = ModelPruning () quantized_model = torch.quantization.quantize_dynamic (مودېل ، {torch.nn.Linear}, dtype = torch.qint8) ``
ئەڭ كۆپ ئىشلىتىلىدىغان 5-10 بۇيرۇق / ئۈزۈندىلەر
| بۇيرۇق / Snippet | چۈشەندۈرۈش |
|---|---|
torch.nn.utils.prune_l1_ قۇرۇلما (مودېل ، 'ئېغىرلىق' ، 0.1) |
L1 نى تەڭشەش ئارقىلىق مودېل پۇتاش |
torch.quantization.quantize_dynamic (مودېل ، {torch.nn.Linear}, dtype = torch.qint8) |
ھەرىكەتچان مىقدارلاشتۇرۇش ئارقىلىق مىقدارلاشتۇرۇش |
torch.nn.utils.kldistance (ئوقۇتقۇچى_ مودېل ، ئوقۇغۇچى_ مودېل) |
KL پەرقلەندۈرۈش ئارقىلىق بىلىملەرنى پارچىلاش |
torch.nn.utils.weight_norm (model.fc1) |
ئېغىرلىق ئۆلچىمىدىن پايدىلىنىپ ئېغىرلىقنى نورماللاشتۇرۇش |
torch.nn.utils.clip_grad_norm_ (model.parameter (), 1.0) |
قىستۇرما دەرىجە ئۆلچىمى ئارقىلىق تەدرىجىي كېسىش |
torch.nn.utils.clip_grad_value_ (model.parameter (), 1.0) |
قىستۇرما دەرىجىدىكى قىممەتنى ئىشلىتىپ ئاستا-ئاستا كېسىش |
torch.nn.utils.remove_weight_norm (model.fc1) |
ئېغىرلىقنى نورماللاشتۇرۇش ئارقىلىق ئېغىرلىقنى نورماللاشتۇرۇش |
torch.nn.utils.fuse_conv_bn_eval (model.fc1) |
بىرىكمە قەۋەت بىرىكتۈرۈش بىرىكمە بىرىكمە bn eval |
torch.nn.utils.fuse_bn_eval (model.fc2) |
Fuse bn eval |
torch.nn.utils.fuse_bn_eval (model.fc1) |
Fuse bn eval |
Visualization
chart { "type": "bar", "data": { "بەلگە": ["مودېل كېسىش" ، "بىلىملەرنى پارچىلاش" ، "مىقدارلاشتۇرۇش"], "datasets": { "label": "ئېنىقلىق", "data": [0.9, 0.85, 0.8] } }, "options": { "title": { "display": true, "text": "توغرىلىق سېلىشتۇرۇش" }, "رىۋايەت": { "display": true } } } `
خۇلاسە
قىرغاق ئۈسكۈنىلىرىگە ئۈنۈملۈك سۈنئىي ئەقىل مودېلى ئورۇنلاشتۇرۇش قاتتىق دېتال ۋە يۇمشاق دېتال ئورتاق لايىھىلەش تېخنىكىسىنى بىرلەشتۈرۈشنى تەلەپ قىلىدۇ. مودېل پۇتاش ، بىلىملەرنى پارچىلاش ۋە مىقدارلاشتۇرۇش سۈنئىي ئەقىل مودېللىرىنىڭ چوڭ-كىچىكلىكى ۋە ھېسابلاش تەلىپىنى ئازايتىشتا قوللىنىلىدىغان بىر قىسىم تېخنىكىلار. ئاچقۇچىلار بۇ تېخنىكىلاردىن پايدىلىنىپ ، قىرغاق ئۈسكۈنىلىرى ئۈچۈن ئەلالاشتۇرۇلغان سۈنئىي ئەقىل مودېلىنى قۇرالايدۇ ، ئەقلىي ئىقتىدارلىق ئۆي ، ئاپتوماتىك ماشىنا ۋە سانائەت ئاپتوماتلاشتۇرۇش قاتارلىق ئەمەلىي قوللىنىشچان پروگراممىلارنى ئىشلىتەلەيدۇ.
كەلگۈسى خىزمەت
بۇ ساھەدىكى كەلگۈسى خىزمەتلەر تۆۋەندىكىلەرنى ئۆز ئىچىگە ئالىدۇ:
- ** يېڭى قاتتىق دېتال-يۇمشاق دېتال ئورتاق لايىھىلەش تېخنىكىسىنى تەرەققىي قىلدۇرۇش **: تەتقىقاتچىلار ۋە پروگراممېرلار قىرغاق ئۈسكۈنىلىرىنىڭ سۈنئىي ئەقىل مودېلىنى ئەلالاشتۇرۇشنىڭ يېڭى تېخنىكىسى ئۈستىدە ئىزدەنسە بولىدۇ.
- ** مودېل پۇتاش ۋە بىلىملەرنى ئايرىش ئالگورىزىمنى ياخشىلاش **: مودېل پۇتاش ۋە بىلىملەرنى پارچىلاشنىڭ تېخىمۇ ئۈنۈملۈك ھېسابلاش ئۇسۇلىنى تەرەققىي قىلدۇرۇش تېخىمۇ ياخشى ئىقتىدار ۋە توغرىلىقنى كەلتۈرۈپ چىقىرىدۇ.
- ** باشقا سۈنئىي ئەقىل مودېللىرىنىڭ ئىشلىتىلىشىنى تەكشۈرۈش **: باشقا سۈنئىي ئەقىل مودېللىرى ، مەسىلەن قارار دەرەخلىرى ۋە ئىختىيارى ئورمانلار ، قىر ئۈسكۈنىلەرنى ئورۇنلاشتۇرۇش ئۈچۈن ئىزدىنىشكە بولىدۇ.
قاتتىق دېتال يۇمشاق دېتالى ئورتاق لايىھىلەش ساھەسىنى داۋاملىق ئىلگىرى سۈرۈش ئارقىلىق ، قىر ئۈسكۈنىلەرگە تېخىمۇ ئۈنۈملۈك ۋە ئۈنۈملۈك سۈنئىي ئەقىل مودېلى قۇرالايمىز ، نۇرغۇن قوللىنىشچان پروگراممىلارنى ۋە ئەھۋاللارنى ئىشلىتەلەيمىز.