主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

シャムネットワークの学習とイメージの比較



シャムネットワークは深層学習ネットワークの一種で,同じアーキテクチャをもち,同じパラメーターと重みを共有する,2つ以上の同一のサブネットワークを使用します。シャムネットワークは通常,比較可能な2つの事例の関係性を見つけることに関わるタスクに使用されます。シャムネットワークの一般的な使用例には,顔認識,シグネチャ検証[1],またはパラフレーズ識別[2]などがあります。学習中に重みを共有することで学習させるパラメーターが少なくなり,比較的少量の学習データで良い結果が得られるため,シャムネットワークはこれらのタスクにおいて良好に動作します。

シャムネットワークは特に,クラスの数が多く,各クラスの観測値が少ない場合に役立ちます。このような場合,イメージをこれらのクラスに分類するよう深層畳み込みニューラルネットワークに学習させるだけの十分なデータがありません。代わりに,シャムネットワークによって2つのイメージが同じクラスに属するかどうかを判定することができます。

この例では,Omniglotデータセット[3]を使用してシャムネットワークに学習させ,手書き文字のイメージを比較します[4]。Omniglotデータセットには 50 個のアルファベットの文字セットが含まれ、そのうち 30 個が学習用に、20 個がテスト用に分けられています。それぞれのアルファベットには、Ojibwe (カナダ先住民文字) の 14 個の文字から Tifinagh の 55 個の文字まで、数多くの文字が含まれています。そして、それぞれの文字には 20 個の手書きの観測値があります。この例では、2 つの手書きの観測値が同じ文字の異なるインスタンスであるかを特定するよう、ネットワークに学習させます。

,次元次元削减のためためのシャムネットワーク学习を参照してください。

学习データの読み込みとととと

Omniglot学習データセットをダウンロードして解凍します。

url =“https://github.com/brendenlake/omniglot/raw/master/python/images_background.zip”;downloadfolder = tempdir;filename = fullfile(downloadFolder,“images_background.zip”);dataFolderTrain = fullfile (downloadFolder,'images_background');如果~存在(dataFolderTrain“dir”) disp (“下载Omniglot训练数据(4.5 MB)…”) websave(文件名,url);解压缩(文件名,downloadFolder);结尾disp (“培训数据下载。”
训练数据下载。

关节imageDatastoreを使用して学習データをイメージデータストアとして読み込みます。ファイル名からラベルを抽出して标签プロパティを设定し,ラベルをを动词でします。

imdsTrain = imageDatastore (dataFolderTrain,......“IncludeSubfolders”,真的,......“LabelSource”'没有任何');files = imdstrain.files;零件= split(文件,filesep);标签=加入(零件(:,(结束2):(结束-1)),'_');imdsTrain。标签=categorical(labels);

Omniglot学習データセットは30個のアルファベットのモノクロの手書き文字で構成され,それぞれの文字について20個の観測値をもちます。イメージのサイズは105 x 105 x 1で各ピクセルの値は0.から1の範囲内です。

ランダムに選択したイメージを表示します。

idxs = randperm(numel(imdstrain.files),8);为了i = 1:num (idxs) subplot(4,2,i) imshow(readimage(imdsTrain,idxs(i))) title(imdsTrain. labels (idxs(i)),“翻译”“没有”);结尾

類似イメージと非類似イメージのペアの作成

ネットワークに学習させるには,データを類似イメージまたは非類似イメージのペアにグループ化しなければなりません。ここで,類似イメージは同じ文字の異なる手書きのインスタンスで,ラベルが同じであるのに対し,非類似イメージは異なる文字で,ラベルが異なります。关节getsiameSebatch.(この例のサポート关节の節で定義)は類似イメージまたは非類似イメージのランダム化されたペアであるpairImage1pairImage2を作成します。また,この関数は,イメージのペアが互いに類似か非類似かを識別するラベルpairLabelを返します。イメージイメージの类似ペアペアのの场pairLabel = 1,非类似ペアのの合并はpairLabel = 0ににます。

一例として5つのイメージのペアをもつ,典型的な小さいセットを作成します。

Batchsize = 10;[锥形图1,BileImage2,Biabel] = GetsIAMESEBATCH(IMDStrain,Batchsize);

生成されたイメージのを表示します。

为了我= 1:batchSize如果Biaplabel(i)== 1 s =“相似的”;别的s =“不同的”;结尾子图(2,5,i)imshow([BileImage1(:,:,:,i)绑架2(:,:,:,i)]);标题结尾

この例では,学校ループの反复ごと,イメージのペア180个个成るるが作作作作作作作代ます。これにより,类似ペアと非类似のがほぼ等しいと类似ランダムのがほぼ等しい大声のランダムイメージのさせることができます。

ネットワークアーキテクチャの定義

シャムシャムネットワークのアーキテクチャアーキテクチャを次図に示し示しの図に示し

2つのイメージを比较するために,各イメージが,重みをを共する2つの同一个サブののを通讯します。サブサブは,105 x 105 x 1の各イメージを4096次元の特价ベクトルにします。同じ同じクラスのイメージののて次元表现は类似しいいいいいいのののの出徴徴はは,减算减算组みわされ,そのにより组み组みれ,その结果が単出をを全协商演算に渡されます。乙状结肠演算は,この値を0.から1の间の确率に変换ますますはは,イメージが类似か非类似のネットワークのをを示しますはののの更更は,ネットワーク予测と真のの间におけるバイナリ交差エントロピー损失が实用さます。

この例では,2つの同一个サブがdlnetworkオブジェクトオブジェクトとして定义されれ最终の全协商および乙状结肠演算は,サブサブネットワークの力に対する关键词。

105 x 105 x 1のイメージを受け取り,サイズが4096の特徴ベクトルを出力する一連の層としてサブネットワークを作成します。

convolution2dLayerオブジェクトでは,狭い正式分布ををて重み重みバイアスををします。

maxpooling2dlayer.オブジェクトでは,ストライドを2に設定します。

最終の全康统计层オブジェクトでは,出力サイズを4096に指定し,狭い正規分布を使用して重みとバイアスを初期化します。

图层= [imageInputlayer([105 105 1],'名称''输入1'“归一化”'没有任何')卷积2dlayer(10,64,'名称'“conv1”“WeightsInitializer”“narrow-normal”“BiasInitializer”“narrow-normal”)剥离('名称'“relu1”) maxPooling2dLayer (2'走吧'2,'名称'“maxpool1”) convolution2dLayer (7128,'名称''conv2'“WeightsInitializer”“narrow-normal”“BiasInitializer”“narrow-normal”)剥离('名称''relu2') maxPooling2dLayer (2'走吧'2,'名称'“maxpool2”)卷积2dlayer(4,128,'名称'“conv3”“WeightsInitializer”“narrow-normal”“BiasInitializer”“narrow-normal”)剥离('名称''relu3') maxPooling2dLayer (2'走吧'2,'名称'“maxpool3”) convolution2dLayer (5256,'名称'“conv4”“WeightsInitializer”“narrow-normal”“BiasInitializer”“narrow-normal”)剥离('名称''relu4') fullyConnectedLayer (4096,'名称''fc1'“WeightsInitializer”“narrow-normal”“BiasInitializer”“narrow-normal”));lgraph = layerGraph(层);

カスタム学习ループを使使してに学习习せ,自动分子を有象にには,层グラフをdlnetworkオブジェクトに変换します。

dlnet = dlnetwork(3);

最終の全协商演算の重みを作成します。標準偏差0.01の狭い正規分布からランダムに選択してサンプリングし,重みを初期化します。

Fcweights = Dlarray(0.01 * Randn(1,4096));FCBIAS = DLARRAY(0.01 * RANDN(1,1));fcparams = struct(......“fcweights”fcWeights,......“fcbias”, fcBias);

ネットワークネットワーク使使ためため,2つのサブネットワーク减算,全互连,演算および乙状结肠演算をどのように組み合わせるかを定義する関数前亚胺(この例のサポート关节の节で定义)を作物成し。关联前亚胺は,ネットワーク,全协商演算のパラメーターを含む构造体,および2つの学习イメージを受け取り。关联前亚胺は2つのイメージの类似度のの予测を出します。

モデル勾配関数の定義

关节modelGradients(この例のサポート关节の节で定义)を作物成し。关联modelGradientsは,シャムネットワークdlnet全协商演算のためのパラメーターパラメーター体,入力データのミニバッチX1およびX2とそのラベル绑定を受け取ります。关键词损失値と,ネットワークの学习可なについての损失の勾配を返しますます返します返し返し

シャムネットワークの目的は,2つの入力X1X2を区別することです。ネットワーク出力は0.から1の间の确率です。値値0.に近いほどイメージは非類似と予測され,1には,予测,予测とのラベルののますますれますますれれれれれれれれれれれ予测示し示し予测近い近いささ类似予测予测予测予测予测示し示し予测示し示し予测予测予测予测予测予测予测予测予测予测予测予测示し示しははははははははl

损失 = - Tlog. y - 1 - T. 日志 1 - y

ここで,真のラベル T. は0または1を取り, y は予測されたラベルです。

学習オプションの指定

学习中に使使オプションをますます习させ习。

numIterations = 10000;miniBatchSize = 180;

Adam最适化のオプション指定します。

  • 学習率を0.00006に設定します。

  • 移動平均勾配と移動平均2乗勾配の減衰率について,dlnetfcparams.のどちらも[]に初期化。

  • 勾配の减衰系数号0.9に,2乘勾配の减衰减衰数号0.99に设定。

learningRate = 6 e-5;trailingAvgSubnet = [];trailingAvgSqSubnet = [];trailingAvgParams = [];trailingAvgSqParams = [];gradDecay = 0.9;gradDecaySq = 0.99;

GPUが利用できる料,GPUで学习を行い。GPUをををするは,并行计算工具箱™,および计算能力3.0以上のCUDA®対応NVIDIA®GPUが必要です。GPUがが使必要です。GPUが使使で,关键词データをgpuにに配置できるできるどうか自动的に検出するははexecutionEnvironmentの値を“汽车”に设定します.gpuががない合,学校にgpuをを使使しない合并,executionEnvironmentの値を“中央处理器”に設定します。学習に必ずGPUを使用するには,executionEnvironmentの値を“GPU”に設定します。

executionenvironment =“汽车”;

学士学位,それぞれの反复には,それぞれの反复反复ででき。“培训 - 进展”を含む変数绘图を作物成しし。学习の进行状况プロットをしないないないないは,この値を“没有”に設定します。

plots =.“培训 - 进展”;

学習損失の進行状況をプロットするためのプロットパラメーターを初期化します。

plotRatio = 16/9;如果情节= =“培训 - 进展”trainingPlot =图;trainingPlot.Position (3) = plotRatio * trainingPlot.Position (4);trainingPlot。可见='在';TrainingPlotaxes = GCA;LineloSstrain =动画线(培训架);xlabel(培训帆布,“迭代”) ylabel (trainingPlotAxes“损失”)标题(培训架,“损失在训练”结尾

モデルの学习

カスタム学習ループを使用してモデルに学習させます。学習データ全体をループ処理し,各反復でネットワークパラメーターを更新します。

それぞれそれぞれの反复でで次いいい

  • イメージイメージペアのバッチ作作作者の節で定義されている関数getsiameSebatch.をを使て,イメージペアとラベルのバッチを。

  • 基于なる型单身的dlarrayオブジェクトにデータを変换し,イメージデータを次元ラベル'SSCB'(空间,空间,频道,批量)に,ラベルを'cb'(通道,批量)にに。

  • GPUで学习するする合,データをGPUArray.オブジェクトオブジェクト変换。

  • 关节dlfeval.およびmodelGradientsをを用してモデルの勾配评価评価します。

  • 关节adamupdateを使用してネットワークパラメーターを更新。

%循环小批。为了迭代= 1:NUMITRATIONS%提取小批图像对和对标签[x1,x2,pairlabels] = getsiamesebatch(Indstrain,minibatchsize);%转换小批数据到美元。指定尺寸标签%'SSCB'(空间,空间,通道,批量)用于图像数据dlx1 = dlarray(单(x1),'SSCB');dlX2 = dlarray(单(X2),'SSCB');%如果在GPU上训练,则将数据转换为gpuArray。如果(executionEnvironment = =“汽车”&& canusegpu)||executionenvironment ==.“GPU”DLX1 = GPUARRAY(DLX1);DLX2 = GPUARRAY(DLX2);结尾%使用Model梯度和发电机状态进行评估的% dlfeval和模型梯度函数%的例子。[梯度,梯度,梯度日本,损失] = DLFeval(@ MapeStrients,Dlnet,FcParams,DLX1,DLX2,Biabels);loadValue = double(收集(提取物));%更新Siamese子网参数。[Dlnet,trailingavgsubnet,trailingavgsqsubnet] =......adamupdate (dlnet gradientsSubnet,......TrailigeAvgsubnet,Trailighavgsqsubnet,迭代,学习,Graddecay,Graddecaysq);%更新fullconnect参数。[FcParams,trailighavgparams,trailingavgsqparams] =......adamupdate (fcParams gradientsParams,......TrailighavgParams,Trailingavgsqparams,迭代,学习,Graddecay,Graddecaysq);%更新培训损失进度图。如果情节= =“培训 - 进展”addpoints (lineLossTrain迭代,lossValue);结尾drawnow;结尾

ネットワークの精细のの

Omniglotテストテストデータセットををダウンロードて解冻しし

url ='https://github.com/brendenlake/omniglot/raw/master/python/images_evalization.zip';downloadfolder = tempdir;filename = fullfile(downloadFolder,'images_evaluation.zip');datafoldertest = fullfile(DownloadFolder,'images_evaluation');如果〜存在(DataFoldert,“dir”) disp (“下载Omniglot测试数据(3.2 MB)……”) websave(文件名,url);解压缩(文件名,downloadFolder);结尾disp (“测试数据下载”。
测试数据下载。

关节imageDatastoreを使用してテストデータをイメージデータストアとして読み込みます。ファイル名からラベルを抽出して标签プロパティを设定し,ラベルをを动词でします。

imdstest = imageageataStore(DataFoldertest,......“IncludeSubfolders”,真的,......“LabelSource”'没有任何');files = imdstest.files;零件= split(文件,filesep);标签=加入(零件(:,(结束2):(结束-1)),'_');imdsTest。标签=categorical(labels);

テストデータセットには,ネットワークが学習済みのアルファベットとは異なる20個のアルファベットが含まれています。合計で,テストデータセットには659個の異なるクラスが存在します。

numclasses = numel(唯一(imdstest.labels))
numclasses = 659.

ネットワークの精度を計算するには,テストペアとして5つのランダムなミニバッチのセットを作成します。关节predictSiamese(この例のサポート关节のので定义定义使使し,ネットワークの予测のとミニバッチ平等精选のを行。

精度= 0(1、5);accuracyBatchSize = 150;为了我= 1:5%提取小批图像对和对标签[XAcc1, XAcc2 pairLabelsAcc] = getSiameseBatch (imdsTest accuracyBatchSize);%转换小批数据到美元。指定尺寸标签% 'SSCB'(空间、空间、通道、批处理)用于图像数据。dlxacc1 = dlarray(单个(xacc1),'SSCB');dlxacc2 = dlarray(单个(xacc2),'SSCB');%如果使用GPU,则将数据转换为gpuArray。如果(executionEnvironment = =“汽车”&& canusegpu)||executionenvironment ==.“GPU”dlXAcc1 = gpuArray (dlXAcc1);dlXAcc2 = gpuArray (dlXAcc2);结尾%使用培训的网络评估预测dly = predictsiamese(dlnet,f​​cparams,dlxacc1,dlxacc2);%将预测转换为二进制0或1Y =聚集(提取物(DILLY));y =圆形(y);分数的%计算平均准确性准确性(i)= sum(y == biabelabelsacc)/ creamacacebatchsize;结尾所有小匹匹匹匹配项都会计算精度averageAccuracy =意味着(准确性)* 100
averageAccuracy = 88.6667

イメージイメージのテストセットセットとのの

ネットワークが類似ペアと非類似ペアを正しく識別しているかを視覚的にチェックするには,テスト用にイメージのペアの小さいバッチを作成します。関数predictSiameseを使用して各テストペアの予測を取得します。イメージのペアを,予測,確率スコア,および予測の正誤を示すラベルと共に表示します。

testbatchsize = 10;[xtest1,xtest2,biabelstest] = getsiamesebatch(Indstest,testbatchsize);将测试批数据转换为美元。指定尺寸标签% 'SSCB'(空间,空间,通道,批处理)用于图像数据和'CB'标签的%(通道,批)dlxtest1 = dlarray(单个(xtest1),'SSCB');dlXTest2 = dlarray(单(XTest2),'SSCB');%如果使用GPU,则将数据转换为GPUArray如果(executionEnvironment = =“汽车”&& canusegpu)||executionenvironment ==.“GPU”dlXTest1 = gpuArray (dlXTest1);dlXTest2 = gpuArray (dlXTest2);结尾%计算预测的概率dlyscore = predictsiamese(dlnet,f​​cparams,dlxtest1,dlxtest2);yscore =聚集(提取数据(Dlyscore));%将预测转换为二进制0或1ypred = round(yscore);%提取数据以绘图xtest1 =提取数据(dlxtest1);xtest2 =提取数据(dlxtest2);%绘制带有预测标签和预测得分的图像testingPlot =图;testingPlot.Position (3) = plotRatio * testingPlot.Position (4);testingPlot。可见='在';为了i = 1:元素个数(pairLabelsTest)如果Ypred(i)== 1 predlabel =“相似的”;别的predLabel =“不同的”;结尾如果pairLabelsTest(i) == YPred(i) testStr =“{暗绿色}\ bf \颜色正确\ rm \换行符”;别的teststr =.“\ bf \ color {红色}不正确\ rm \ newline”;结尾子图(2,5,i)imshow([xtest1(:,:,:,i)xtest2(::,:,:,i)]);标题(teststr +“\ color {black}预测:”+ predLabel +“\ newlineScore:“+ yscore(i));结尾

ネットワークは,それらのイメージが学習データセットにまったく含まれていない場合でも,テストイメージを比較して類似度を判定することができます。

サポート关节

学習と予測のためのモデル関数

ネットワークネットワーク学习中学相关数前亚胺が实用さます。この関数は,サブネットワークや全协商演算および乙状结肠演算をどのように組み合わせて完全なシャムネットワークを形成するかを定義します。前亚胺はネットワーク構造と 2 つの学習イメージを受け取り、2 つのイメージの類似度についての予測を出力します。この例では、関数前亚胺についてネットワークアーキテクチャの定義の節で紹介されています。

函数dlX1, Y = forwardSiamese (dlnet fcParams dlX2)%ForwardSiamese接受网络和一对培训图像,并返回一个对该对的概率的百分比类似(更接近1)或%不相似(接近0)。训练时使用前连体。%通过双子网传递第一张图像F1 =前进(DLNET,DLX1);f1 = sigmoid(f1);%通过双子网传递第二个图像F2 =前进(DLNET,DLX2);F2 = Sigmoid(F2);%减去特征向量Y = ABS(F1  -  F2);%通过全连接操作传递结果Y = fullyconnect (Y, fcParams.FcWeights, fcParams.FcBias);%转换为0到1之间的概率。y = sigmoid(y);结尾

关节predictSiameseは学习済みネットワークををて2つのイメージの类似に关键字はをます。附近,以前に定义たた关键前亚胺にに类似していいただし,predictSiameseは关节向前ではなく関数预测をネットワークで使用します。これは,一部の深層学習層が学習中および予測中に異なる動作をするためです。この例では,関数predictSiameseについてネットワークの精细ののの節で紹介されています。

函数Y =预测isiamese(Dlnet,f​​cparams,dlx1,dlx2)% predictSiamese接受网络和图像对,并返回对两者相似概率的预测%(接近1)%或不相似(更接近0)。在预测期间使用预测。%通过双子网传递第一张图像F1 =预测(DLNET,DLX1);f1 = sigmoid(f1);%通过双子网传递第二个图像F2 =预测(dlnet dlX2);F2 = Sigmoid(F2);%减去特征向量Y = ABS(F1  -  F2);%通过全连接操作传递结果Y = fullyconnect (Y, fcParams.FcWeights, fcParams.FcBias);%转换为0到1之间的概率。y = sigmoid(y);结尾

モデル勾配関数

关节modelGradientsは,シャムdlnetworkオブジェクトの,ミニバッチミニバッチ力データX1X2のペア,およびそれらが類似か非類似かを示すラベルを受け取ります。この関数は,ネットワーク内の学習可能なパラメーターについての損失の勾配と,予測とグラウンドトゥルースの間のバイナリ交差エントロピー損失を返します。この例において,関数modelGradientsについては,モデル勾配関数の定義の節で説明されています。

函数(gradientsSubnet gradientsParams,亏损)= modelGradients (dlnet、fcParams dlX1, dlX2, pairLabels)模型梯度函数计算二元交叉熵损失%配对图像并返回丢失和损耗的渐变%网络学习参数%通过网络传递图像对dlX1, Y = forwardSiamese (dlnet fcParams dlX2);计算二元交叉熵损失损失= BinaryCrossentropy(Y,Biaplabels);%计算关于网络的损失的渐变% 参数[gradientsSubnet, gradientsParams] = dlgradient(损失,dlnet.Learnables fcParams);结尾函数损失= BinaryCrossentropy(Y,Biaplabels)%binarycrossentropy接受网络的预测y,真实%标签和Biabelabels,并返回二进制交叉熵损耗值。%获得预测的精度,以防止由于浮动而导致的误差%点精度Precision =底层(Y);%将小于浮点精度的值转换为eps。Y(Y < eps(precision)) = eps(precision);%在1-eps和1到1-eps之间转换值。Y(Y > 1 - eps(precision)) = 1 - eps(precision);%计算每对二进制交叉熵损失log(Y) - (1 -pairLabels). log(Y) - (1 -pairLabels). log(Y)*日志(1 - Y);在小纤维和标准化中所有对的%总和。损失=总和(损失)/ numel(Biaplabels);结尾

イメージイメージペアのバッチ作作作者

次の関数は,ラベルに基づいて類似または非類似のイメージのランダム化されたペアを作成します。この例では,関数getsiameSebatch.について類似イメージと非類似イメージのペアの作成の節で紹介されています。

函数[x1,x2,biaplabels] = getsiameSebatch(IMDS,Minibatchsize)%getsiamesebatch返回一个随机选择的批处理或配对图像。在%平均值,这个函数产生一个相似和不同的平衡集%对。miniBatchSize pairLabels = 0 (1);imgSize =大小(readimage (imd, 1));if ([imgSize 1 miniBatchSize] = 0); / /指定一个最小的字节[imgSize 1 miniBatchSize] = 0; / /设置一个最小的批次为了i = 1: minbatchsize choice = rand(1);如果选择<0.5 [Biredx1,Biredx2,Biaplabels(i)] = GetSimilarPair(IMDS.Labels);别的[pairIdx1, pairIdx2 pairLabels (i)) = getDissimilarPair (imds.Labels);结尾X1(:::,:,i)= IMDS.ReadImage(BiredX1);x2(::,:,i)= imds.readimage(Biredx2);结尾结尾函数[Biredx1,Biredx2,Biabel] = GetSimilarePair(ClassLabel)%GetImilarSiaMesepair返回一个随机的图像索引在相同的类和相似的对标签= 1。%找到所有唯一类。classes =唯一(classlabel);%选择一个随机选择的类,这将用于获得类似的对。classChoice =兰迪(元素个数(类));%从所选类中找到所有观察的指标。idx =找到(classLabel = =类(classChoice));%随机选择来自所选类的两个不同的图像。BiredxChoice = Randperm(Numel(IDXS),2);BiredX1 = IDXS(BiredXchoice(1));Biredx2 = IDXS(BiredXchoice(2));Biaplabel = 1;结尾函数[Biredx1,BiridX2,Label] = GetDissimilarPair(ClassLabel)% getDissimilarSiamesePair返回图像的随机索引对%是在不同的类和不同的对标签= 0。%找到所有唯一类。classes =唯一(classlabel);%随机选择两个不同的类,这将用于获得一个不同的对。classesChoice = randperm(元素个数(类),2);%从第一和第二类中找到所有观察的指数。idxs1 = find(classlabel == classes(classeschoice(1)));idxs2 = find(classlabel == classes(classeschoice(2)));%随机选择每个类的一个图像。Biredx1Choice = RANDI(NUMER(IDXS1));Biredx2Choice = RANDI(NUMER(IDXS2));BiredX1 = IDXS1(BiredX1Choice);BiredX2 = IDXS2(BiredX2Choice);标签= 0;结尾

参考文献

[1] Bromley, J., I. Guyon, Y. LeCunn, E. Säckinger,和R. Shah。”使用“暹罗”时间延迟神经网络签名验证。“在第六次国际神经信息处理系统会议(NIPS 1993),1994年,PP737-744中的诉讼程序中。可用使用“暹罗”时滞神经网络的签名验证在NIPS会议记录网站上。

[2] Wenpeg,Y.和HSchütze。“卷曲神经网络,用于解释鉴定。“在2015年ACL的北美章会议上的讨论会上,2015年,PP901-911。可提供卷积神经网络,用于解释在ACL选集网站上

[3] Lake,B. M.,Salakhutdinov,R.和Tenenbaum,J.B。“通过概率程序归纳的人级概念学习。《科学》,35 (6),(2015)pp1332-1338。

[4] Koch, G., Zemel, R.和Salakhutdinov, R.(2015)。用于一次性图像识别的暹罗神经网络“。在第32届国际机械学习会议上的诉讼程序中,37(2015)。可用用于一次性图像识别的暹罗神经网络在ICML'15网站上。

参考

||||

関連するトピック