JavaFX + ND4J 〜数学への挑戦:5グラフを描く〜

イントロダクション

前回は、ND4Jで色々なベクトル(配列)を生成するプログラムを作成しました。(GitにUPしているサンプルコードです)、ここでわかったのは機械学習で扱うデータ→ベクトルを扱うためのプログラム方法を理解した。。。というところです。

グラフを描画する

ここにきてようやく「JavaFX」の出番です。グラフを描くのに、参考にしている本はPythonを使用しているのでJavaでは理解できません。。。

しかし、Javaは色んなところで役に立ちます。JavaFXを使えば画面などはチョチョイのチョイ?で作ることができます。

LineChartを使って見る〜ワンポイントレッスン的な〜

Oracleのページを参照して実装してみました。※上のものは自分が作ってものではありません。

そして、参考にしている本にはグラフが沢山あるので、必然的に沢山のグラフを描く必要があります。なので、グラフの土台を作りこの本の続きをやろうと考えました。

まずは設計

どの様な仕組みを作ってグラフの量産をして、行列の計算や数学の関数を表現するか?を考えて作成します。とりあえずは下の様な感じで作りました。

設計内容など、オブジェクト指向的に作成しました、詳細は下のリンク先に記載しております。

  1. JavaFX + ND4J 〜グラフ作成の準備〜
  2. JavaFX + ND4J 〜グラフ作成:とりあえず表示〜

しかし問題が。。。

上のプログラムで使用したクラス「LineChart」は滑らかな曲線が描けないのです。「折れ線グラフ」として申し分ないのですが、機械学習では「2次関数〜」も使用するので、滑らかなグラフも必要です。そんなわけでグラフの量産アプリを作成しました。

次は、

滑らかなグラフを描く!

でわでわ。。。