Аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайны арқылы шеткі құрылғыларда AI моделін тиімді орналастыру | B4N1

Аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайны арқылы шеткі құрылғыларда AI моделін тиімді орналастыру

3 months ago · b4n1 Read time: 3 min

Кіріспе

Смартфондар, смарт үй құрылғылары және автономды көліктер сияқты шеткі құрылғылардың таралуы осы құрылғыларда AI моделін тиімді орналастырудың өзекті қажеттілігін тудырды. Дәстүрлі AI моделін орналастыру әдістері көбінесе бұлтқа негізделген инфрақұрылымға сүйенеді, бұл кешіктіруді, қауіпсіздік мәселелерін және жоғары қуат тұтынуды тудыруы мүмкін. Осы қиындықтарды шешу үшін AI моделінің өнімділігін, қуатты тұтынуды және шеткі құрылғылардағы кешігуді оңтайландыруға мүмкіндік беретін перспективті тәсіл ретінде аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайны пайда болды.

AI, Edge Computing және Co-Design қиылысы

Жиектерді есептеу орталықтандырылған бұлтта немесе деректер орталығында емес, деректер көзіне жақын желінің шетінде деректерді өңдеуді білдіреді. AI үлгілері, керісінше, үлкен көлемдегі деректерді өңдеу және талдау үшін айтарлықтай есептеу ресурстарын қажет етеді. AI, шеттік есептеулер және бірлескен дизайнның қиылысы шеткі құрылғыларда AI моделін тиімді орналастыруға қол жеткізу үшін аппараттық және бағдарламалық құрал құрамдастарын бірлескен оңтайландыруды қамтиды.

Аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайнының артықшылықтары

Аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайны бірнеше артықшылықтарды ұсынады, соның ішінде:

  • Жақсартылған өнімділік: Аппараттық және бағдарламалық жасақтама құрамдастарын бірге оңтайландыру арқылы бірлескен дизайн AI моделін қолдануда айтарлықтай өнімділікті жақсартуға әкелуі мүмкін.
  • Қуатты тұтынуды азайту: Бірлескен дизайн қуатты аз пайдалану үшін аппараттық және бағдарламалық құрал құрамдастарын оңтайландыру арқылы қуат тұтынуды азайтуға көмектеседі.
  • Төменгі кідіріс: Бірлескен дизайн деректерді жылдам өңдеу және байланыс үшін аппараттық және бағдарламалық құрал құрамдастарын оңтайландыру арқылы кідірісті азайтуға көмектеседі.
  • Икемділікті арттыру: Бірлескен дизайн әртүрлі шеткі құрылғыларда оңай орналастыруға болатын икемді және бейімделгіш AI үлгілерін жасауға мүмкіндік береді.

Практикалық фокус: код мысалы

Шеткі құрылғыларда AI үлгісін орналастыруға арналған аппараттық-бағдарламалық қамтамасыз етудің қарапайым мысалын қарастырайық. Біз танымал Python кітапханасын, TensorFlow, негізгі AI моделін Raspberry Pi, танымал шеткі құрылғыда орналастыру үшін қолданамыз.

тензор ағынын tf ретінде импорттау
tensorflow.keras импорттау қабаттарынан

# AI моделінің архитектурасын анықтаңыз
үлгі = tf.keras.Sequential([
    layers.Conv2D(32, (3, 3), белсендіру='relu', input_shape=(28, 28, 1)),
    қабаттар.MaxPooling2D((2, 2)),
    қабаттар.Flatten(),
    қабаттар.Тығыз(64, белсендіру='relu'),
    қабаттар.Тығыз(10, белсендіру='softmax')
])

# Модельді құрастыру
model.compile(оптимизатор='адам',
              loss='sparse_categorical_crossentropy',
              метрика=['дәлдік'])

# MNIST деректер жинағын жүктеңіз
(X_train, y_train), (X_test, y_test) = tf.keras.datasets.mnist.load_data()

# Деректерді алдын ала өңдеу
X_train = X_train.reshape(-1, 28, 28, 1).astype('float32') / 255.0
X_test = X_test.reshape(-1, 28, 28, 1).atype('float32') / 255.0

# Үлгіні жаттықтырыңыз
model.fit(X_train, y_train, epochs=5, pack_size=128)

# Модельді бағалаңыз
test_loss, test_acc = model.evaluate(X_test, y_test)
басып шығару(f'Тест дәлдігі: {test_acc:.2f}')

Бұл код мысалы TensorFlow көмегімен Raspberry Pi жүйесінде негізгі AI үлгісін орналастыруды көрсетеді. Модель MNIST деректер жинағында оқытылады және сынақ жиынында бағаланады. Код шеткі құрылғыларда AI моделін орналастыруға арналған аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайнының қарапайымдылығы мен икемділігін көрсетеді.

Ең көп қолданылатын 5-10 пәрмендер/үзінділер

Мұнда аппараттық-бағдарламалық қамтамасыз етуді бірлесіп жобалауға арналған ең жиі қолданылатын командалар мен үзінділердің кейбірі берілген:

  • TensorFlow: tf.keras.Sequential(), tf.keras.layers.Conv2D(), tf.keras.layers.MaxPooling2D()
  • Raspberry Pi: sudo apt-get update, sudo apt-get install python3-pip, pip3 install tensorflow
  • Бірлескен дизайн: co-design.py -h, co-design.py -m <model_name>, co-design.py -d <құрылғы_аты>

Визуализация

Мұнда Chart.js көмегімен аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайнының артықшылықтарының визуализациясы берілген:

{
  "түрі": "бар",
  «деректер»: {
    "labels": ["Дәстүрлі AI моделін орналастыру", "Аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайны"],
    "деректер жинағы": [
      {
        "label": "Өнімділік",
        "деректер": [10, 20],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      },
      {
        "label": "Қуат тұтыну",
        "деректер": [50, 30],
        "backgroundColor": "rgba(54, 162, 235, 0,2)",
        "borderColor": "rgba(54, 162, 235, 1)",
        "borderWidth": 1
      },
      {
        "label": "Кідіріс",
        "деректер": [100, 50],
        "backgroundColor": "rgba(255, 206, 86, 0,2)",
        "borderColor": "rgba(255, 206, 86, 1)",
        "borderWidth": 1
      }
    ]
  },
  "опциялар": {
    «атауы»: {
      "дисплей": шын,
      "text": "Аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайнының артықшылықтары"
    },
    «таразы»: {
      "yAxes": [
        {
          «кенелер»: {
            "beginAtZero": шын
          }
        }
      ]
    }
  }
}

Бұл визуализация аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайнымен дәстүрлі AI үлгісін қолданудың өнімділігін, қуат тұтынуын және кешігуін салыстырады.

Қорытынды

Аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайны AI моделін шеткі құрылғыларда тиімді орналастырудың перспективалы тәсілі ретінде пайда болды. Аппараттық және бағдарламалық құрал құрамдастарын бірге оңтайландыру арқылы бірлескен дизайн өнімділікті айтарлықтай жақсартуға, қуат тұтынуды азайтуға және кідіріс уақытын төмендетуге әкелуі мүмкін. Бұл мақалада қарапайым код үлгісін және артықшылықтардың визуализациясын қоса алғанда, аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайнының артықшылықтары мен практикалық қолдануларына егжей-тегжейлі шолу жасалды. Шеткі AI-ға сұраныс өсіп келе жатқандықтан, аппараттық-бағдарламалық қамтамасыз етудің бірлескен дизайны тиімді және тиімді AI үлгілерін әзірлеуде маңызды рөл атқаратын болады.


Have Questions?

Let's Talk

Contact me on LinkedIn