স্নায়ুবিক নেটওয়ার্ক সম্পর্কিত একটি বিষয় সম্পর্কে একটি কাগজ লেখার / উপস্থাপনা করার সময়, কেউ সাধারণত নেটওয়ার্ক আর্কিটেকচারটি ভিজ্যুয়ালাইজ করে।
সাধারণ স্থাপত্যগুলি স্বয়ংক্রিয়ভাবে দেখার জন্য ভাল / সহজ উপায়গুলি কী কী?
স্নায়ুবিক নেটওয়ার্ক সম্পর্কিত একটি বিষয় সম্পর্কে একটি কাগজ লেখার / উপস্থাপনা করার সময়, কেউ সাধারণত নেটওয়ার্ক আর্কিটেকচারটি ভিজ্যুয়ালাইজ করে।
সাধারণ স্থাপত্যগুলি স্বয়ংক্রিয়ভাবে দেখার জন্য ভাল / সহজ উপায়গুলি কী কী?
উত্তর:
যদি নিউরাল নেটওয়ার্কটি টেনসরফ্লো গ্রাফ হিসাবে দেওয়া হয়, তবে আপনি টেনসরবোর্ডের সাহায্যে এই গ্রাফটি কল্পনা করতে পারেন ।
এমএনআইএসটি সিএনএন দেখতে কেমন তা এখানে রয়েছে:
আপনি নিজেরাই নাম / স্কোপ যুক্ত করতে পারেন (যেমন "ড্রপআউট", "সফটম্যাক্স", "এফসি 1", "কনফ 1", "কনফ 2")।
নিম্নলিখিতটি কেবল বাম গ্রাফ সম্পর্কে। আমি ডান অর্ধেক 4 টি ছোট গ্রাফ উপেক্ষা করি।
প্রতিটি বাক্স প্যারামিটার সহ একটি স্তর যা শিখতে পারে। অনুমানের জন্য, তথ্য নীচে থেকে উপরের দিকে প্রবাহিত হয়। উপবৃত্তগুলি হ'ল স্তর যা শিখে যাওয়া পরামিতি ধারণ করে না।
বাক্সগুলির রঙের কোনও অর্থ নেই।
আমি ড্যাশযুক্ত ছোট বাক্সগুলির মূল্য সম্পর্কে নিশ্চিত নই ("গ্রেডিয়েন্টস", "অ্যাডাম", "সংরক্ষণ করুন")।
আমি সম্প্রতি এনএন আর্কিটেকচার অঙ্কন এবং এসভিজি রফতানির জন্য একটি সরঞ্জাম তৈরি করেছি, যার নাম এনএন-এসভিজি
ক্যাফেতে আপনি নেটপ্যারামিটার প্রোটোফার আঁকার জন্য ক্যাফে / ড্র.পি ব্যবহার করতে পারেন :
মতলবটিতে আপনি ভিউ (নেট) ব্যবহার করতে পারেন
আমি কেরাস-সিক্যুয়াল-এসসিআই (অস্বীকৃতি: আমি লেখক) ব্যবহার করে এএসসিআইআই ভিজুয়ালাইজেশন যুক্ত করব।
সিআইএফএআর -10 এর জন্য একটি ছোট নেটওয়ার্ক ( এই টিউটোরিয়াল থেকে ) হবে:
OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%)
Input ##### 32 32 3
Conv2D \|/ ------------------- 896 2.1%
relu ##### 30 30 32
MaxPooling2D Y max ------------------- 0 0.0%
##### 15 15 32
Conv2D \|/ ------------------- 18496 43.6%
relu ##### 13 13 64
MaxPooling2D Y max ------------------- 0 0.0%
##### 6 6 64
Flatten ||||| ------------------- 0 0.0%
##### 2304
Dense XXXXX ------------------- 23050 54.3%
softmax ##### 10
ভিজি 16 এর জন্য এটি হবে:
OPERATION DATA DIMENSIONS WEIGHTS(N) WEIGHTS(%)
Input ##### 3 224 224
InputLayer | ------------------- 0 0.0%
##### 3 224 224
Convolution2D \|/ ------------------- 1792 0.0%
relu ##### 64 224 224
Convolution2D \|/ ------------------- 36928 0.0%
relu ##### 64 224 224
MaxPooling2D Y max ------------------- 0 0.0%
##### 64 112 112
Convolution2D \|/ ------------------- 73856 0.1%
relu ##### 128 112 112
Convolution2D \|/ ------------------- 147584 0.1%
relu ##### 128 112 112
MaxPooling2D Y max ------------------- 0 0.0%
##### 128 56 56
Convolution2D \|/ ------------------- 295168 0.2%
relu ##### 256 56 56
Convolution2D \|/ ------------------- 590080 0.4%
relu ##### 256 56 56
Convolution2D \|/ ------------------- 590080 0.4%
relu ##### 256 56 56
MaxPooling2D Y max ------------------- 0 0.0%
##### 256 28 28
Convolution2D \|/ ------------------- 1180160 0.9%
relu ##### 512 28 28
Convolution2D \|/ ------------------- 2359808 1.7%
relu ##### 512 28 28
Convolution2D \|/ ------------------- 2359808 1.7%
relu ##### 512 28 28
MaxPooling2D Y max ------------------- 0 0.0%
##### 512 14 14
Convolution2D \|/ ------------------- 2359808 1.7%
relu ##### 512 14 14
Convolution2D \|/ ------------------- 2359808 1.7%
relu ##### 512 14 14
Convolution2D \|/ ------------------- 2359808 1.7%
relu ##### 512 14 14
MaxPooling2D Y max ------------------- 0 0.0%
##### 512 7 7
Flatten ||||| ------------------- 0 0.0%
##### 25088
Dense XXXXX ------------------- 102764544 74.3%
relu ##### 4096
Dense XXXXX ------------------- 16781312 12.1%
relu ##### 4096
Dense XXXXX ------------------- 4097000 3.0%
softmax ##### 1000
নেট্রন নামে একটি ওপেন সোর্স প্রকল্প রয়েছে
নিউরন হ'ল নিউরাল নেটওয়ার্ক, গভীর শিখন এবং মেশিন লার্নিং মডেলগুলির জন্য একটি দর্শক।
নেট্রন ওএনএনএক্স (.অনেক্স, .পিবি), কেরাস (.এইচ 5, .কেরাস), কোরিএমএল (। এমএম মডেল) এবং টেনসরফ্লো লাইট (.tflite) সমর্থন করে। ক্যাফের (.caffemodel), ক্যাফ 2 (পূর্বাভাস_নেট.পিবি), এমএক্সনেট (-সাইম্বল.জসন), টেনসরফ্লো.জেএস (মডেল.জসন, .পিবি) এবং টেনসরফ্লো (.পিবি, .মেটা) জন্য পরীক্ষামূলক সমর্থন নেট্রনের রয়েছে।
এখানে আরও একটি উপায় রয়েছে - গ্রাভভিজ ব্যবহার করে ডটনেটস , থিয়াগো জি মার্টিনসের এই পোস্টটি থেকে ভারী অনুপ্রাণিত ।
Keras
Keras.utils.vis_utils মডিউল একটি (Graphviz ব্যবহার করে) Keras মডেল চক্রান্ত ইউটিলিটি ফাংশন প্রদান করে
নিম্নলিখিতটি একটি নেটওয়ার্ক মডেল দেখায় যা প্রথম লুকানো স্তরে 50 টি নিউরন রয়েছে এবং 104 ইনপুট ভেরিয়েবলের প্রত্যাশা করে।
plot_model(model, to_file='model.png', show_shapes=True, show_layer_names=True)
পাইথন প্যাকেজটি এসভিজি, পিএনজি বা পিআইএল চিত্রগুলি তৈরি conx
করতে ফাংশনটির সাথে অ্যাক্টিভেশনগুলির সাথে নেটওয়ার্কগুলি ভিজ্যুয়ালাইজ net.picture()
করতে পারে:
কনক্স কেরাসে নির্মিত এবং কেরাসের মডেলগুলিতে পড়তে পারে। প্রতিটি ব্যাংকের রঙিন মানচিত্র পরিবর্তন করা যেতে পারে এবং এটি সমস্ত ব্যাঙ্কের প্রকারগুলি প্রদর্শন করতে পারে।
আরও তথ্য এখানে পাওয়া যাবে: http://conx.readthedocs.io/en/latest/
আমি একটি ড্রাগ-এন্ড-ড্রপ নিউরাল নেটওয়ার্ক ভিজ্যুয়ালাইজার (এবং আরও অনেক) নিয়ে কাজ করছি। এখানে LeNet- এর মতো আর্কিটেকচারের জন্য ভিজ্যুয়ালাইজের উদাহরণ রয়েছে's ফ্যান-আউট এবং ফ্যান-ইন সহ মডেলগুলিও বেশ সহজেই মডেল করা হয়। আপনি https://math.mit.edu/ennui/ এ ওয়েবসাইটটি দেখতে পারেন
আর-তে nnet
কোনও প্লট ফাংশন নিয়ে আসে না, তবে এর জন্য কোড এখানে সরবরাহ করা হয় ।
বিকল্পভাবে, আপনি আরও সাম্প্রতিক এবং আইএমএইচওর আরও ভাল প্যাকেজ ব্যবহার করতে পারেন neuralnet
যা একটি plot.neuralnet
ফাংশন বৈশিষ্ট্যযুক্ত , তাই আপনি কেবল এটি করতে পারেন:
data(infert, package="datasets")
plot(neuralnet(case~parity+induced+spontaneous, infert))
neuralnet
যতটা ব্যবহার করা হয় না nnet
কারণ nnet
অনেক পুরোনো এবং R-Cran সঙ্গে জাহাজে করা হয়। তবে neuralnet
আরও প্রশিক্ষণের অ্যালগরিদম রয়েছে, সহিষ্ণু ব্যাকপ্রোপেশন সহ যা টেনসরফ্লোর মতো প্যাকেজগুলিতেও নেই, এবং হাইপারপ্যারামিটার পছন্দগুলি থেকে অনেক বেশি দৃust় এবং সামগ্রিকভাবে আরও বৈশিষ্ট্য রয়েছে।
নিউরাল নেটওয়ার্ক ভিজ্যুয়ালাইজেশন সম্পর্কে কিছু অভিনব বিকল্প প্রচেষ্টা রয়েছে।
এই নিবন্ধগুলি দেখুন:
একটি এআই 'মস্তিষ্ক' এর ভিতরে - মেশিন লার্নিংয়ের চেহারা কেমন?
এই পন্থাগুলি নিউরাল নেটওয়ার্ক অপারেশনটি ভিজ্যুয়ালাইজ করার দিকে আরও বেশি আলোকিত, তবে, এনএন আর্কিটেকচার ফলাফল প্রাপ্ত চিত্রগুলিতেও কিছুটা দৃশ্যমান।
উদাহরণ:
কাগজপত্রের জন্য নিফটি প্রতি নয়, তবে তাদের টপোলজি কেমন হতে পারে তা নিউরাল নেটওয়ার্ক সম্পর্কে অনেক কিছু জানেন না এমন লোকদের দেখানোর জন্য খুব দরকারী। এই জাভাস্ক্রিপ্ট লাইব্রেরি (Neataptic) আপনাকে আপনার নেটওয়ার্কটি কল্পনা করতে দেয়:
ডিপ ভিজুয়ালাইজেশনের মাধ্যমে নিউরাল নেটওয়ার্কগুলি বোঝার জন্য আপনি জনপ্রিয় কাগজটি পড়তে পারেন যা সমঝোতার জালের দৃশ্যায়ন নিয়ে আলোচনা করে। এর বাস্তবায়ন কেবল প্রতিটি স্তরকেই প্রদর্শন করে না তবে কাগজটিতে গভীরভাবে আলোচিত সক্রিয়করণ, ওজন, ডিকনভোলিউশন এবং অন্যান্য অনেকগুলি চিত্রও চিত্রিত করে। এটি কোড আছে caffe'
। মজার অংশটি হ'ল আপনি নিজের প্রশিক্ষণপ্রাপ্ত মডেলটিকে নিজের সাথে প্রতিস্থাপন করতে পারেন।
টেনসরস্পেস-জেএস নেটওয়ার্ক আর্কিটেকচারের 3 ডি ভিজুয়ালাইজেশনের জন্য দুর্দান্ত সরঞ্জাম:
এবং এখানে একটি প্রোগ্রাম কীভাবে লিখবেন সে সম্পর্কে একটি সুন্দর পোস্ট দেওয়া হয়েছে:
ক্যাফ মডেলগুলির জন্য নেটস্কোপ আমার প্রতিদিনের সরঞ্জাম।