Rのダウングレード

Rが4.0にアップグレードされたので、ついついインストールしてしまった。
もともとx.0のバージョンは安定版でも色々な問題(パッケージが対応していないなど)があるのでx.1あたりから使うのが鉄則なのだが、今回はコロナで暇だったこともあり、掟破りをしてしまったら、案の定バチが当たった。

パッケージが対応していないとかインストールできないとか・・・。

そういうわけで、Linuxのいいところはアプリケーションのアップグレードをしても複数バージョンが切り替えて使えるところと、RStudioのメニュから切り替えようとすると、がーん、メニュにそれがない。どうやらWindows(職場で使っていた)上のStandaloneにはその機能があるが、Linuxで使っているRStudio Serverにはその機能はないらしい。

そこは、リソース豊富なLinux。同じ悩みを持つ人は世界中にいるのでGoogleで検索してダウングレードの方法を見つけた。

sudo nano /etc/apt/sources.list で設定した4.0のリポジトリに#をつけてコメントアウト

sudo apt remove r-base-core #いまインストールされている最新バージョンをアンインストールする

apt-cache showpkg r-base #Rの最新より一つ前のバージョンを見つける

sudo apt-get install r-base-core=3.6.3-1bionic

以上おわり

こちらを参照
https://ja.coder.work/so/r/506566


出雲神話論

古事記に描かれている出雲神話は日本書紀においてはかなりの部分が端折られている。
この事実を紐解いていきながら、出雲が古代日本海の交易の拠点の一つであり越の国や筑紫の国と交流しつつ国家としての成立をなす前の一つの自治的な経済圏であったことを議論した内容。
文学者としての立場から古代史や考古学とは少し離れた視点で、ある意味、自由に論じているので学術的にどう評価されているかは不明だが、もともと自由は発想がなければ学問の進歩もないので、これまでの大和中心の日本史観に対してもさらなる出雲研究が期待されるきっかけでもある。



はじめてのオペレーションズ・リサーチ

2020年4月25日読了

OR(オペレーションズ・リサーチ)については学生時代に生協に積んであった宮川公男先生の「OR入門」が印象にある。教養課程の講義だったが当時はまったく関心がなく言葉だけが記憶にある程度。
本書はもともと講談社のブルーバックスで刊行されたものを筑摩書房が再版したもので、書店で偶然眼に入ったので購入。

ORとはハードウェアの運用の見直しのための調査検討して実際の対応を試験して問題解決に活かす考え方。問題解決はハードの性能向上に依って可能なこともあるが、現実にそれを待っていても時間や資金が許さなければ、運用に依って解決を図るしかない。運用で解決するには問題の捉え方を変える(つまりハードに帰責出来ない)ことになるが、それはオペレーションを変えるためにあえて戦略的に物事を考えること通じるものがある。大元は、なんの目的もなく開発された英国の電波レーダーをどのように用いたらよいか考えるプロジェクトから始まった。

本書で紹介されている問題は、航空機による特攻に対して戦艦側がどのような退避行動をとればよいかとか、戦場で食器を洗う兵隊の行列をいかに短くして休憩時間を稼ぐかといった、実践的(実戦的)問題が多い。そして全体を通して使われる事例が、戦闘場面で敵の(能力が異なる)戦車が二台現認されている状況で味方はどう攻撃すればよいか、という例を懇切丁寧にORの思考プロセスや方法を追いかけながら、一冊の本に仕上げている。通常、この手の本にありがちな、数式だらけとか概念定義ばかりとか、たくさんの手法で圧倒するようなところは一切ない。ゆえに、OR理論や技法について正確でもなく網羅的でもないが、わかりやすいしわかった気になる。

しかし著者のメッセージは明確で、ORは実践の中で鍛える能力であり、問題を発見してモデル化するところが実はとても難しい。
さらに、ORによって導き出された結果をそのまま上官に報告することはやってはならず、自分の現場認識を加えた判断を報告することが大切であることを強調している。いわば方法論だけ分かった気になりモデルを作って数字をこねくり回して結果を出して報告する者を、「にわかORワーカー」として戒める。

本書にもあるモデルを作ってモンテカルロ法でシミュレーションする方法は、統計学や機械学習の本には多く紹介されているが、そういった書物にはORとの関連は述べられていないし、逆に本書にも(書かれたのが古いから当たり前だが)機械学習等への言及はない。ただ、モンテカルロ法が1945にフォン・ノイマンによって考案されたというあたりを知ると、ルートはやはり軍事だったのかということがわかる。

軽い気持ちで購入した本だが、監査における統計学や機械学習の援用にもかなり強い示唆を得た。解決モデルを書物に求めるのではなく現場の実践に見出すことが必要であり、逆に現場にいる者には「見えるようになる」ためにも、ORの視点をインプットしておくことは肝要であろう。


Neo4jをインストールする

オープンソースカンファレンス2020春でネットワーク型データベースのNeo4jが紹介されていたので遊んでみたくなった。

インストールマニュアルはこちら。
https://neo4j.com/docs/operations-manual/current/installation/linux/debian/

以下、メモ

JavaのOpenJDKバージョンの確認

:~$ update-java-alternatives –list
java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64
java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64

デフォルトのOpenJDKを設定

:~$ sudo update-java-alternatives –jre –set java-1.11.0-openjdk-amd64

APTリポジトリの追加

:~$ wget -O – https://debian.neo4j.com/neotechnology.gpg.key | sudo apt-key add –
–2020-04-26 12:07:40– https://debian.neo4j.com/neotechnology.gpg.key
debian.neo4j.com (debian.neo4j.com) をDNSに問いあわせています… 99.86.32.2, 99.86.32.80, 99.86.32.102, …
debian.neo4j.com (debian.neo4j.com)|99.86.32.2|:443 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています… 200 OK
長さ: 6342 (6.2K) [application/pgp-keys]
`STDOUT’ に保存中

– 100%[===================>] 6.19K –.-KB/s 時間 0s

2020-04-26 12:07:41 (218 MB/s) – stdout へ出力完了 [6342/6342]

OK

リポジトリの追加

:~$ echo ‘deb https://debian.neo4j.com stable 4.0’ | sudo tee -a /etc/apt/sources.list.d/neo4j.list
deb https://debian.neo4j.com stable 4.0

いつものやつ

:~$ sudo apt update

取得:14 https://debian.neo4j.com stable InRelease [22.9 kB]
取得:15 https://debian.neo4j.com stable/4.0 i386 Packages [1,771 B]
取得:16 https://debian.neo4j.com stable/4.0 amd64 Packages [1,771 B]
27.2 kB を 6秒 で取得しました (4,526 B/s)
パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています
状態情報を読み取っています… 完了
パッケージはすべて最新です。

Neo4jのAPTリスト

:~$ apt list -a neo4j
一覧表示… 完了
neo4j/stable,stable 1:4.0.3 all
neo4j/stable,stable 1:4.0.2 all
neo4j/stable,stable 1:4.0.1 all
neo4j/stable,stable 1:4.0.0 all

最新版を指定してインストール

:~$ sudo apt install neo4j=1:4.0.3
パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています
状態情報を読み取っています… 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
gir1.2-keybinder-3.0 libjs-modernizr libjs-underscore libkeybinder-3.0-0
libqt5designer5 libqt5help5 libqt5multimedia5 libqt5multimediawidgets5
libqt5positioning5 libqt5qml5 libqt5quick5 libqt5sensors5 libqt5webchannel5
libqt5webkit5 linux-headers-4.15.0-91 linux-headers-4.15.0-91-generic
linux-image-4.15.0-91-generic linux-modules-4.15.0-91-generic
linux-modules-extra-4.15.0-91-generic python-gst-1.0 python-lxml
python3-pyqt5 python3-pyqt5.qtmultimedia python3-pyqt5.qtopengl
python3-pyqt5.qtsvg python3-pyqt5.qtwebkit python3-qtpy
これを削除するには ‘sudo apt autoremove’ を利用してください。
以下の追加パッケージがインストールされます:
cypher-shell daemon
以下のパッケージが新たにインストールされます:
cypher-shell daemon neo4j
アップグレード: 0 個、新規インストール: 3 個、削除: 0 個、保留: 0 個。
102 MB のアーカイブを取得する必要があります。
この操作後に追加で 116 MB のディスク容量が消費されます。
続行しますか? [Y/n]
取得:1 http://ftp.jaist.ac.jp/pub/Linux/ubuntu bionic/universe amd64 daemon amd64 0.6.4-1build1 [99.5 kB]
取得:2 https://debian.neo4j.com stable/4.0 amd64 cypher-shell all 4.0.3 [27.1 MB]
取得:3 https://debian.neo4j.com stable/4.0 amd64 neo4j all 1:4.0.3 [74.5 MB]
102 MB を 22秒 で取得しました (4,713 kB/s)
パッケージを事前設定しています …
以前に未選択のパッケージ daemon を選択しています。
(データベースを読み込んでいます … 現在 475148 個のファイルとディレクトリがインストールされています。)
…/daemon_0.6.4-1build1_amd64.deb を展開する準備をしています …
daemon (0.6.4-1build1) を展開しています…
以前に未選択のパッケージ cypher-shell を選択しています。
…/cypher-shell_4.0.3_all.deb を展開する準備をしています …
cypher-shell (4.0.3) を展開しています…
以前に未選択のパッケージ neo4j を選択しています。
…/neo4j_1%3a4.0.3_all.deb を展開する準備をしています …
neo4j (1:4.0.3) を展開しています…
cypher-shell (4.0.3) を設定しています …
daemon (0.6.4-1build1) を設定しています …
neo4j (1:4.0.3) を設定しています …
systemd (237-3ubuntu10.39) のトリガを処理しています …
man-db (2.8.3-2ubuntu0.1) のトリガを処理しています …
ureadahead (0.100.0-21) のトリガを処理しています …
ureadahead will be reprofiled on next reboot

リブート

起動に迷ってしまった。

ここを参考に。
http://sheepdogjam.cocolog-nifty.com/blog/2017/09/neo4jubuntu-c86.html
一日一事未満:Neo4jをUbuntuにインストールする

ブラウザで起動するのだが、単にlocalhost:7474ではだめです。
最初に、ターミナルから、

sudo service neo4j restart

次にブラウザを開いてから、localhost:7474
すると、パスワードを聞いてきます。初期パスワードは変更を求められます。
自分の場合、ローカルでしか使わないので、適当に。