قاتتىق دېتال-يۇمشاق دېتال ئورتاق لايىھىلەش ئارقىلىق قىرغاق ئۈسكۈنىلىرىگە سۈنئىي ئەقىل مودېلى ئورۇنلاشتۇرۇش | B4N1

قاتتىق دېتال-يۇمشاق دېتال ئورتاق لايىھىلەش ئارقىلىق قىرغاق ئۈسكۈنىلىرىگە سۈنئىي ئەقىل مودېلى ئورۇنلاشتۇرۇش

3 months ago · b4n1 Read time: 4 min

قاتتىق دېتال-يۇمشاق دېتال ئورتاق لايىھىلەش ئارقىلىق قىر ئۈسكۈنىلىرىگە ئۈنۈملۈك سۈنئىي ئەقىل مودېل ئورۇنلاشتۇرۇش

تونۇشتۇرۇش

قىرلىق ئۈسكۈنىلەرنىڭ كۆپىيىشى سۈنئىي ئىدراك (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 } } } `

خۇلاسە

قىرغاق ئۈسكۈنىلىرىگە ئۈنۈملۈك سۈنئىي ئەقىل مودېلى ئورۇنلاشتۇرۇش قاتتىق دېتال ۋە يۇمشاق دېتال ئورتاق لايىھىلەش تېخنىكىسىنى بىرلەشتۈرۈشنى تەلەپ قىلىدۇ. مودېل پۇتاش ، بىلىملەرنى پارچىلاش ۋە مىقدارلاشتۇرۇش سۈنئىي ئەقىل مودېللىرىنىڭ چوڭ-كىچىكلىكى ۋە ھېسابلاش تەلىپىنى ئازايتىشتا قوللىنىلىدىغان بىر قىسىم تېخنىكىلار. ئاچقۇچىلار بۇ تېخنىكىلاردىن پايدىلىنىپ ، قىرغاق ئۈسكۈنىلىرى ئۈچۈن ئەلالاشتۇرۇلغان سۈنئىي ئەقىل مودېلىنى قۇرالايدۇ ، ئەقلىي ئىقتىدارلىق ئۆي ، ئاپتوماتىك ماشىنا ۋە سانائەت ئاپتوماتلاشتۇرۇش قاتارلىق ئەمەلىي قوللىنىشچان پروگراممىلارنى ئىشلىتەلەيدۇ.

كەلگۈسى خىزمەت

بۇ ساھەدىكى كەلگۈسى خىزمەتلەر تۆۋەندىكىلەرنى ئۆز ئىچىگە ئالىدۇ:

  • ** يېڭى قاتتىق دېتال-يۇمشاق دېتال ئورتاق لايىھىلەش تېخنىكىسىنى تەرەققىي قىلدۇرۇش **: تەتقىقاتچىلار ۋە پروگراممېرلار قىرغاق ئۈسكۈنىلىرىنىڭ سۈنئىي ئەقىل مودېلىنى ئەلالاشتۇرۇشنىڭ يېڭى تېخنىكىسى ئۈستىدە ئىزدەنسە بولىدۇ.
  • ** مودېل پۇتاش ۋە بىلىملەرنى ئايرىش ئالگورىزىمنى ياخشىلاش **: مودېل پۇتاش ۋە بىلىملەرنى پارچىلاشنىڭ تېخىمۇ ئۈنۈملۈك ھېسابلاش ئۇسۇلىنى تەرەققىي قىلدۇرۇش تېخىمۇ ياخشى ئىقتىدار ۋە توغرىلىقنى كەلتۈرۈپ چىقىرىدۇ.
  • ** باشقا سۈنئىي ئەقىل مودېللىرىنىڭ ئىشلىتىلىشىنى تەكشۈرۈش **: باشقا سۈنئىي ئەقىل مودېللىرى ، مەسىلەن قارار دەرەخلىرى ۋە ئىختىيارى ئورمانلار ، قىر ئۈسكۈنىلەرنى ئورۇنلاشتۇرۇش ئۈچۈن ئىزدىنىشكە بولىدۇ.

قاتتىق دېتال يۇمشاق دېتالى ئورتاق لايىھىلەش ساھەسىنى داۋاملىق ئىلگىرى سۈرۈش ئارقىلىق ، قىر ئۈسكۈنىلەرگە تېخىمۇ ئۈنۈملۈك ۋە ئۈنۈملۈك سۈنئىي ئەقىل مودېلى قۇرالايمىز ، نۇرغۇن قوللىنىشچان پروگراممىلارنى ۋە ئەھۋاللارنى ئىشلىتەلەيمىز.


Have Questions?

Let's Talk

Contact me on LinkedIn