ベクトルの差を求める

ディープラーニングの計算で必要なベクトルの差をPerlで求めましょう。

Perlでは、ベクトルは配列で表現します。ベクトルと聞くと、ソフトウェアエンジニアは頭が痛くなるんじゃないかと思いますが、配列と言ってもらえると「なんだぁ~」ってなりますよね。

ベクトルの差を求めるPerlのプログラムです。

use strict;
use warnings;

# ベクトルの差
sub vec_sub {
  my ($vec1, $vec2) = @_;

  my $vec_sub = [];

  for (my $i = 0; $i < @$vec1; $i++) {
    $vec_sub->[$i] = $vec1->[$i] - $vec2->[$i];
  }
  
  return $vec_sub;
}

my $vec1 = [1, 2, 3];
my $vec2 = [4, 5, 6];

# ベクトルの差
my $vec_sub = vec_sub($vec1, $vec2);

# -3 -3 -3
print "@$vec_sub\n";
Perlテキスト処理のエッセンス
  • 初級者向け・テキスト処理と正規表現の基本をマスター
業務に役立つPerl
  • 実務者向け・ログ解析など日本語を含むテキスト処理の実践!
Perlクラブ
  • 仲間と出会い
    ゆとりあるエンジニアライフを送る