イントロダクション
機械学習を理解するために「どうしたら良いか?」を考えていたら行列を使える必要があることに気が付きました。
機械学習、ディープラーニングなどでよく目にするPythonでは「NumPy」というライブラリ?があるのですが、それのJava版がND4Jだということで早速使ってみたいと思いました。
計算など行うので、BigDecimalを使えた方が良いですので下に参考を載せておきます。
今回ではないですが、ゲームのマップ作製・コントロールにもND4Jを使ってみました。
例としては次のようなイメージです。
『行列を使用して、マップを作成しました。3列X3列のマップです。「1」がゴールです。』
縦✕横を示しています。
ND4Jのインストール
こちらのサイトを参考にしました。下のようにPOMファイルに追記します。
<peoperties> <nd4j.version>0.7.2</nd4j.version> </properties> ・ ・ ・ <dependency> <groupId>org.nd4j</groupId> <artifactId>nd4j-native-platform</artifactId> <version>${nd4j.version}</version> </dependency>
ちなみにプロジェクトのMaven化は下のような感じです。
Mavenのサイトで詳細な情報が観れます。ちなみに参考サイトのND4Jのバージョンは7.xでしたが、最新(2019/02/14現在)のバージョンは0.9.1でした(安定版)
https://mvnrepository.com/artifact/org.nd4j/nd4j-api
ちなみにここから「JAR」ファイルをダウンロードできます。
ダウンロードしたらEclipseのビルドパスに追加します。下のような感じです。
ND4Jをインストールし終わると以下のような感じになります。
ND4Jを動かしてみる
public class FirstNd4j { public static void main(String[] args) { INDArray arr = Nd4j.zeros(3); System.out.println(arr); } }
ND4J版のハローワールドです。
処理としては、ゼロ埋めした配列を、配列長3で作成して表示するというものです。
でわでわ。。。
- Java 初めてでも大丈夫〜ステップアッププログラミングのススメ〜
- ステップアッププログラミング〜Java FxでHelloWorld解説〜
- Java StepUpPrograming〜JavaFX で四則計算〜
- Java StepUpPrograming〜JavaFXで画面切り替えを作る1〜
- Java StepUpPrograming〜JavaFXで画面切り替え2ボタン作成〜
- Java StepUpPrograming〜JavaFXで画面切り替え3アクション〜
- Java StepUpPrograming〜JavaFXで画面切り替え4Pane切り替え〜
- Java StepUpPrograming〜JavaFXで画面切り替え5WebEngine〜