আপনি কীভাবে নিউরাল নেটওয়ার্ক আর্কিটেকচারটি ভিজ্যুয়ালাইজ করবেন?


79

স্নায়ুবিক নেটওয়ার্ক সম্পর্কিত একটি বিষয় সম্পর্কে একটি কাগজ লেখার / উপস্থাপনা করার সময়, কেউ সাধারণত নেটওয়ার্ক আর্কিটেকচারটি ভিজ্যুয়ালাইজ করে।

সাধারণ স্থাপত্যগুলি স্বয়ংক্রিয়ভাবে দেখার জন্য ভাল / সহজ উপায়গুলি কী কী?




1
গভীর শেখার ভিজ্যুয়ালাইজেশন পদ্ধতির জরিপ (ম্যানুয়াল এবং স্বয়ংক্রিয় উভয়) সহ আমি সংশ্লেষিত নিউরাল নেটওয়ার্কগুলির সরল চিত্রগুলি লিখেছি । এই থ্রেড থেকে আমি প্রচুর অনুপ্রেরণা এবং লিঙ্ক পেয়েছি - থেক্স!
পাইটর মিগডাল

উত্তর:


25

টেনসরফ্লো, কেরাস, এমএক্সনেট, পাইটর্চ

যদি নিউরাল নেটওয়ার্কটি টেনসরফ্লো গ্রাফ হিসাবে দেওয়া হয়, তবে আপনি টেনসরবোর্ডের সাহায্যে এই গ্রাফটি কল্পনা করতে পারেন ।

এমএনআইএসটি সিএনএন দেখতে কেমন তা এখানে রয়েছে:

এখানে চিত্র বর্ণনা লিখুন

আপনি নিজেরাই নাম / স্কোপ যুক্ত করতে পারেন (যেমন "ড্রপআউট", "সফটম্যাক্স", "এফসি 1", "কনফ 1", "কনফ 2")।

ব্যাখ্যা

নিম্নলিখিতটি কেবল বাম গ্রাফ সম্পর্কে। আমি ডান অর্ধেক 4 টি ছোট গ্রাফ উপেক্ষা করি।

প্রতিটি বাক্স প্যারামিটার সহ একটি স্তর যা শিখতে পারে। অনুমানের জন্য, তথ্য নীচে থেকে উপরের দিকে প্রবাহিত হয়। উপবৃত্তগুলি হ'ল স্তর যা শিখে যাওয়া পরামিতি ধারণ করে না।

বাক্সগুলির রঙের কোনও অর্থ নেই।

আমি ড্যাশযুক্ত ছোট বাক্সগুলির মূল্য সম্পর্কে নিশ্চিত নই ("গ্রেডিয়েন্টস", "অ্যাডাম", "সংরক্ষণ করুন")।


এটি ভাল, আমি কনফাইআর, কনফাই 2 ইত্যাদি নামটি এড়িয়ে চলার চেষ্টা করছি, আমি পরে কন এর সমস্ত নাম সিএনভি হিসাবে বানাতে চাই, আমি কী করব ??
সুদীপ দাস

+1 টি। এটি কেবল টিএফ-এর জন্যই নয়: এমএক্সনেট এবং পাইটর্চেরও কিছু সমর্থন রয়েছে
জাকুব বার্টকজুক

@ সুদীপডাস আপনি কোডগুলিতে স্তরগুলিতে নাম যুক্ত করতে পারেন, যা এটির পরিকল্পনা করার সাথে সাথে দেখাবে।
বেন

আমি প্রতিটি স্তরটির নাম "সিএনভি" হিসাবে কীভাবে দেখাব, যদি আমি এটি প্রতিটি স্তরের "CONV" হিসাবে লিখি তবে আমি ত্রুটি পেয়ে যাব, কারণ প্রতিটি স্তরের টিএফ বিধি হিসাবে একটি অনন্য নাম থাকতে হবে, তবে আমি জানতে চাই, তা হ'ল এই সমস্যা কাটিয়ে ওঠার আর কোন উপায় আছে ?? @ বেন
সুদীপ দাস

1
@ আমি লিংকটি ঠিক করেছি
মার্টিন থোমা

22

আমি সম্প্রতি এনএন আর্কিটেকচার অঙ্কন এবং এসভিজি রফতানির জন্য একটি সরঞ্জাম তৈরি করেছি, যার নাম এনএন-এসভিজি

এখানে চিত্র বর্ণনা লিখুন


1
এসভিজি ডাউনলোড করুন
চিত্র

আমার জন্য কাজ করে 1/23/19। আপনার যদি এখনও সমস্যা হয় তবে দয়া করে কোনও সমস্যা খোলার জন্য নির্দ্বিধায়।
অ্যালেক্স লেনাইল

1
এটিই একমাত্র সঠিক উত্তর
কৃত্রিমভাবে

দুর্দান্ত সরঞ্জাম তবে, আমি লক্ষ করেছি যে অ্যালেক্সনেট স্টাইলে টেনারগুলির মাত্রাগুলি ভুল করে উপস্থাপিত হয়েছিল (প্রস্থ এবং উচ্চতার মাত্রা)
ফ্লাইসফাস্ট


11

আমি কেরাস-সিক্যুয়াল-এসসিআই (অস্বীকৃতি: আমি লেখক) ব্যবহার করে এএসসিআইআই ভিজুয়ালাইজেশন যুক্ত করব।

সিআইএফএআর -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

11

নেট্রন নামে একটি ওপেন সোর্স প্রকল্প রয়েছে

নিউরন হ'ল নিউরাল নেটওয়ার্ক, গভীর শিখন এবং মেশিন লার্নিং মডেলগুলির জন্য একটি দর্শক।

নেট্রন ওএনএনএক্স (.অনেক্স, .পিবি), কেরাস (.এইচ 5, .কেরাস), কোরিএমএল (। এমএম মডেল) এবং টেনসরফ্লো লাইট (.tflite) সমর্থন করে। ক্যাফের (.caffemodel), ক্যাফ 2 (পূর্বাভাস_নেট.পিবি), এমএক্সনেট (-সাইম্বল.জসন), টেনসরফ্লো.জেএস (মডেল.জসন, .পিবি) এবং টেনসরফ্লো (.পিবি, .মেটা) জন্য পরীক্ষামূলক সমর্থন নেট্রনের রয়েছে।

এখানে চিত্র বর্ণনা লিখুন



8

Keras

Keras.utils.vis_utils মডিউল একটি (Graphviz ব্যবহার করে) Keras মডেল চক্রান্ত ইউটিলিটি ফাংশন প্রদান করে

নিম্নলিখিতটি একটি নেটওয়ার্ক মডেল দেখায় যা প্রথম লুকানো স্তরে 50 টি নিউরন রয়েছে এবং 104 ইনপুট ভেরিয়েবলের প্রত্যাশা করে।

plot_model(model, to_file='model.png', show_shapes=True, show_layer_names=True)

এখানে চিত্র বর্ণনা লিখুন


আমি কি এটি ল্যাটেক্সের সামঞ্জস্যপূর্ণ ফর্ম্যাটে ব্যবহার করতে পারি?
পুশপেন.পল

8

পাইথন প্যাকেজটি এসভিজি, পিএনজি বা পিআইএল চিত্রগুলি তৈরি conxকরতে ফাংশনটির সাথে অ্যাক্টিভেশনগুলির সাথে নেটওয়ার্কগুলি ভিজ্যুয়ালাইজ net.picture()করতে পারে:

এখানে চিত্র বর্ণনা লিখুন

কনক্স কেরাসে নির্মিত এবং কেরাসের মডেলগুলিতে পড়তে পারে। প্রতিটি ব্যাংকের রঙিন মানচিত্র পরিবর্তন করা যেতে পারে এবং এটি সমস্ত ব্যাঙ্কের প্রকারগুলি প্রদর্শন করতে পারে।

আরও তথ্য এখানে পাওয়া যাবে: http://conx.readthedocs.io/en/latest/


6

আমি একটি ড্রাগ-এন্ড-ড্রপ নিউরাল নেটওয়ার্ক ভিজ্যুয়ালাইজার (এবং আরও অনেক) নিয়ে কাজ করছি। এখানে LeNet- এর মতো আর্কিটেকচারের জন্য ভিজ্যুয়ালাইজের উদাহরণ রয়েছে's লেনেটের মতো আর্কিটেকচারের ভিজ্যুয়ালাইজেশন ফ্যান-আউট এবং ফ্যান-ইন সহ মডেলগুলিও বেশ সহজেই মডেল করা হয়। আপনি https://math.mit.edu/ennui/ এ ওয়েবসাইটটি দেখতে পারেন


আমার ব্রাউজারটি ট্রেন টিপে রাখার সময় ক্রাশ
চালিয়ে যায়

1
এটি চেক করার জন্য ধন্যবাদ. হ্যাঁ, এই বাগটি সম্প্রতি পপ আপ হয়েছে এবং এটি Chrome এ ওয়েবজিএল-এ সাম্প্রতিক কিছু পরিবর্তনের ফলাফল বলে মনে হচ্ছে। ফায়ারফক্সে সবকিছুই কাজ করা উচিত। আমি যখন জানব তখন আমি আপনাকে আপডেট করব।
জেসি

tks, আপনার ভিজ্যুয়ালাইজারটি আশ্চর্যজনক, tf খেলার মাঠের চেয়ে বড় দেখায় :)
ডাটদিনহোকোক

1
ধন্যবাদ! আপনার যদি সমস্যা বা ধারণা থাকে তবে আমাকে জানান। আমাদের কোডও প্রজন্মের মতো মজাদার জিনিস!
জেসি

5

আর-তে nnetকোনও প্লট ফাংশন নিয়ে আসে না, তবে এর জন্য কোড এখানে সরবরাহ করা হয়

বিকল্পভাবে, আপনি আরও সাম্প্রতিক এবং আইএমএইচওর আরও ভাল প্যাকেজ ব্যবহার করতে পারেন neuralnetযা একটি plot.neuralnetফাংশন বৈশিষ্ট্যযুক্ত , তাই আপনি কেবল এটি করতে পারেন:

data(infert, package="datasets")
plot(neuralnet(case~parity+induced+spontaneous, infert))

neuralnet

neuralnetযতটা ব্যবহার করা হয় না nnetকারণ nnetঅনেক পুরোনো এবং R-Cran সঙ্গে জাহাজে করা হয়। তবে neuralnetআরও প্রশিক্ষণের অ্যালগরিদম রয়েছে, সহিষ্ণু ব্যাকপ্রোপেশন সহ যা টেনসরফ্লোর মতো প্যাকেজগুলিতেও নেই, এবং হাইপারপ্যারামিটার পছন্দগুলি থেকে অনেক বেশি দৃust় এবং সামগ্রিকভাবে আরও বৈশিষ্ট্য রয়েছে।



4

নিউরাল নেটওয়ার্ক ভিজ্যুয়ালাইজেশন সম্পর্কে কিছু অভিনব বিকল্প প্রচেষ্টা রয়েছে।

এই নিবন্ধগুলি দেখুন:

অত্যাশ্চর্য 'এআই মস্তিষ্কের স্ক্যানগুলি' মেশিনগুলি নতুন দক্ষতা শিখার সাথে সাথে কী দেখবে তা প্রকাশ করে

একটি এআই 'মস্তিষ্ক' এর ভিতরে - মেশিন লার্নিংয়ের চেহারা কেমন?

এই পন্থাগুলি নিউরাল নেটওয়ার্ক অপারেশনটি ভিজ্যুয়ালাইজ করার দিকে আরও বেশি আলোকিত, তবে, এনএন আর্কিটেকচার ফলাফল প্রাপ্ত চিত্রগুলিতেও কিছুটা দৃশ্যমান।

উদাহরণ:

এখানে চিত্র বর্ণনা লিখুন

এখানে চিত্র বর্ণনা লিখুন

এখানে চিত্র বর্ণনা লিখুন

এখানে চিত্র বর্ণনা লিখুন


21
আমরা এখানে কি দেখতে দয়া করে ব্যাখ্যা করুন। এটি দেখতে সুন্দর দেখাচ্ছে, তবে আমি বুঝতে পারি না কীভাবে অভিনব চিত্রগুলি নেটওয়ার্কটির ক্রিয়াকলাপ বুঝতে সহায়তা করে।
মার্টিন থোমা

আমি "অভিনব চিত্র" শব্দটির আপনার অবমাননাকর ব্যবহার পছন্দ করি না। @ মার্টিন
স্পোর্টস ২

9
আমি আপনাকে আক্রমণ করার অর্থ চাইনি, তবে আমার প্রশ্নের উত্তর না দিয়ে আপনার অত্যধিক প্রতিরক্ষামূলক উত্তর নিজেই বলে speaks - আমি "লেগো বাক্স" ডায়াগ্রামে একটি "ব্যাখ্যা" অংশ যুক্ত করেছি।
মার্টিন থোমা

1
যাইহোক: দ্বিতীয় লিঙ্কটি মারা গেছে।
মার্টিন থোমা

4
@ মার্টিনথোমা এটি স্পষ্টভাবে ডেটা আর্ট, ডেটা নয় ( লিসাচার্লোটারস্টোস্ট . github.io/2015/12/19/… )।
পাইওর মিগডাল

3

কাগজপত্রের জন্য নিফটি প্রতি নয়, তবে তাদের টপোলজি কেমন হতে পারে তা নিউরাল নেটওয়ার্ক সম্পর্কে অনেক কিছু জানেন না এমন লোকদের দেখানোর জন্য খুব দরকারী। এই জাভাস্ক্রিপ্ট লাইব্রেরি (Neataptic) আপনাকে আপনার নেটওয়ার্কটি কল্পনা করতে দেয়:

এখানে চিত্র বর্ণনা লিখুন


3

ডিপ ভিজুয়ালাইজেশনের মাধ্যমে নিউরাল নেটওয়ার্কগুলি বোঝার জন্য আপনি জনপ্রিয় কাগজটি পড়তে পারেন যা সমঝোতার জালের দৃশ্যায়ন নিয়ে আলোচনা করে। এর বাস্তবায়ন কেবল প্রতিটি স্তরকেই প্রদর্শন করে না তবে কাগজটিতে গভীরভাবে আলোচিত সক্রিয়করণ, ওজন, ডিকনভোলিউশন এবং অন্যান্য অনেকগুলি চিত্রও চিত্রিত করে। এটি কোড আছে caffe'। মজার অংশটি হ'ল আপনি নিজের প্রশিক্ষণপ্রাপ্ত মডেলটিকে নিজের সাথে প্রতিস্থাপন করতে পারেন।


2

টেনসরস্পেস-জেএস নেটওয়ার্ক আর্কিটেকচারের 3 ডি ভিজুয়ালাইজেশনের জন্য দুর্দান্ত সরঞ্জাম:

এখানে চিত্র বর্ণনা লিখুন

https://tensorspace.org/

এবং এখানে একটি প্রোগ্রাম কীভাবে লিখবেন সে সম্পর্কে একটি সুন্দর পোস্ট দেওয়া হয়েছে:

https://medium.freecodecamp.org/tensorspace-js-a-way-to-3d-visualize-neural-networks-in-browsers-2c0afd7648a8


আপনি কি এই সরঞ্জামের একটি লিঙ্ক সরবরাহ করতে পারেন?
পাইওটার মিগডাল

1
@ পাইওটারমিগডাল আমি উত্তর আপডেট করেছি।
আলী মির্জায়ে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.