Keras бол Python хэл дээр бичигдсэн, Theano, TensorFlow эсвэл CNTK дээр ажиллах чадвартай, нээлттэй эхийн өндөр түвшний мэдрэлийн сүлжээний framework юм. Үүнийг Google-ийн инженерүүдийн нэг Франсуа Чоллет бүтээсэн. Энэ нь гүн мэдрэлийн сүлжээг ашиглан илүү хурдан туршилт хийхэд туслах зорилгоор хэрэглэгчдэд ээлтэй, өргөтгөх боломжтой, модульчлагдсан. Энэ нь зөвхөн Convolutional Networks болон Recurrent Networks-ыг тусад нь дэмждэг төдийгүй тэдгээрийн хослолыг дэмждэг.
Энэ нь доод түвшний тооцоолол хийх боломжгүй тул үүнийг шийдвэрлэхийн тулд Backend library ашигладаг. Арын сан нь TensorFlow, CNTK эсвэл Theano дээр ажиллах боломжийг олгодог доод түвшний API-д зориулсан өндөр түвшний API багцын үүрэг гүйцэтгэдэг.
Анх нээлтээ хийхдээ 4800 гаруй хөгжүүлэгчтэй байсан бол одоо 250,000 хөгжүүлэгч болжээ. Энэ нь жил бүр өсснөөс хойш 2 дахин өссөн байна. Майкрософт, Google, NVIDIA, Amazon зэрэг томоохон компаниуд Керасын хөгжилд идэвхтэй хувь нэмэр оруулсан. Энэ нь гайхалтай салбарын харилцан үйлчлэлтэй бөгөөд Netflix, Uber, Google, Expedia гэх мэт алдартай фирмүүд ашиглагддаг.
Керас юугаараа онцлог вэ?
- Хэрэглэгчийн туршлагад анхаарлаа хандуулах нь Keras-ийн гол хэсэг байсаар ирсэн.
- Энэ нь олон платформыг бөгөөд олон платформыг дэмждэг бөгөөд энэ нь бүх кодлогчдыг кодлоход нэгдэхэд тусалдаг.
- Бүх ойлголтыг ойлгоход хялбар.
- Хурдан прототипийг дэмждэг.
- CPU болон GPU дээр саадгүй ажилладаг.
- Аливаа архитектурыг зохион бүтээх эрх чөлөөг олгодог бөгөөд дараа нь төслийн API болгон ашигладаг.
- Эхлэх нь үнэхээр маш энгийн.
- Загваруудыг хялбархан бүтээх нь үнэндээ Керасыг онцгой болгодог.
Keras-ийг R болон Python-д хөгжүүлж болох бөгөөд ингэснээр кодыг TensorFlow, Theano, CNTK, эсвэл MXNet-ээр шаардлагын дагуу ажиллуулж болно. Keras-ийг CPU, NVIDIA GPU, AMD GPU, TPU гэх мэт дээр ажиллуулж болно. Энэ нь TensorFlow үйлчилгээ, GPU хурдатгал (WebKeras, Keras.js), Android (TF)-ээр ажиллахыг бүрэн дэмждэг тул Keras-тай загвар гаргах нь үнэхээр энгийн гэдгийг баталгаажуулдаг. , TF Lite), iOS (Native CoreML) болон Raspberry Pi.
Загварын түвшний сан болох өндөр түвшний блокуудыг болгосноор гүнзгий суралцах загваруудыг хөгжүүлэхэд тусалдаг. Тензорын бүтээгдэхүүн, эргэлт гэх мэт бүх доод түвшний тооцооллыг Керас өөрөө хийдэггүй, харин арын хөдөлгүүр болохын тулд оновчтой болгосон тусгай тензорын манипуляцийн сангаас хамаардаг. Керас үүнийг маш сайн удирдаж чадсан тул тензорын нэг номын санг нэгтгэж, тухайн номын сантай холбоотой үйлдлүүдийг гүйцэтгэхийн оронд Keras-д өөр өөр арын хөдөлгүүрүүдийг залгахыг санал болгож байна.