2019年2月15日金曜日

Neovimでクリップボードを使う

(1) 方法
いろいろなサイトに解説がありますが、私が確認したのはこちら。
1. xsel のインストール
     $ sudo apt-get install xsel
2. ~/.config/nvim/init.vim に以下を追記
     set clipboard+=unnamed
( :help clipboard を参照。set clipboard+=unnamedplusとすると通常のヤンクもクリップボードに反映されるようだ。)
3. neovimにて
     i. ヤンク:  ビジュアル選択した後で、"+y でヤンク。
               "*y ではうまくいかない。
     ii. プット:  ブラウザなどでマウス等でセレクトしてC-cにてコピー。
                その後neovim上のノーマルモードで  "+p でプット。
(2) 環境
   GalliumOS 2.1 + chromebook14(CB3-431) Edgar
(3) 参考サイト
    neovim/vimでクリップボードと連携

2019年1月19日土曜日

LXterminal のオプション設定

LXterminal にオプションを設定する方法。
1. 左下 スタートメニュー --> システムツール  --> LXterminal を出す。
2. LXterminal の文字の上で、マウス右クリックからプロパティを選択。
3. コマンドの欄にて以下のように変更
   lxterminal   --> lxterminal --geometry=80x40 -e "bash -il"

Lubuntuに一般ユーザーを追加したが、ターミナルを開いてもプロンプトが設定されていない、キーボードショートカット(ctrl+hなど) が効かない、historyなどのコマンドも効かない問題があった。その対処方法。

参考サイト
1. Lubuntu/LXDEのLXTerminalをlogin-shellとしてメニューから起動する
2. Raspberry PiのLXTerminalで~/.bash_profileが読まれないのでなんとかするメモ

2019年1月9日水曜日

Neovim のインストール



(1) インストール
   こちらのサイトのubuntuの項目の方法。
   stable を使用。unstableを使用した方がいいのか。
(2) 環境
   GalliumOS 2.1 + chromebook14(CB3-431) Edgar
(3) vim設定
   .vimrc の設定内容は ~/.config/nvim/init.vim に記載。ファイルがなければ新規作成。
(4) メンテナンス
   1. へんなマークが現れる問題
          set guicursor=
         をinit.vim に記載。参考サイト

(2019/04/04追記)
インストールをしなくとも、GitHubのlinuxの項目に記載されている
curl -LO https://github.com/neovim/neovim/releases/download/nightly/nvim.appimage
chmod u+x nvim.appimage
./nvim.appimage
によって、~/nvim.appimageを呼び出すことで起動可能。
設定は上記(3)のとおり、~/.config/nvim/init.vim に記載する。

機械学習の学習(1)

機械学習の学習についての個人備忘録 I

ようやく簡単なmnist の多項分類モデルをjupyter notebook 上にてKerasでnn層のみ(*1)で記載する(ところまで到達。
(*1) openCVやCNNを使用しない状態。

(1) 参考文献・資料
1. 詳解ディープラーニング / 巣籠悠輔氏著 / マイナビ出版
2. Pythonで動かして学ぶ深層学習の教科書 / 石川聡彦氏著 / 翔泳社
3. Udemy  Kaggleで学ぼうPythonとKerasで学ぶディープラーニング開発入門 / 井上博樹氏
4. gacco  機械学習・深層学習

(2) 本日の発見
1. mnist の学習には約1分間/1epoch もの時間がかかり、学習スピードアップにはマシンスペック(CPU/GPU)が必要。
     現在のマシンはGalliumOS 2.1 on chromebook14(CB3-431) + jupyter notebook with miniconda
2. Tensorflowのバージョンが古い(ex. 1.5.0)と、KerasにてDense構文のパラメータ内にノード数と活性化関数を表記する方法での記載でエラーが発生する(1層目にはinput_shapeを明示する必要があるようだ)。Tensorflow 1.10 程度にまげ上げるとエラー解消(ノード数の設定と活性化関数の指定だけでOK)。
3. Tensorflow1.11 にてmodel.save でエラー発生。1.10では問題発生しない。こちらに記載あり。

(3) 本日の疑問
1. 機械学習・深層学習を行う上でKerasではなく、Tensorflowで記述するメリットは何か。
     Kerasではパラメータの詳細を設定できないケースがあるかもしれない。
2. Kerasでの学習モデル層の記載で、全層構成を表示するにはどうするか。
3. __file__ が使えない。どこかのサイトで jupyter notebook では__file__は使えないとあったが、書籍には特にそういう記載はなかったと思います。

2018年7月1日日曜日

農作業での指爪の汚れを取る

標題件、オレンジ果汁が効いたようだ。
酸っぱいので、レモン果汁や酢などでも効果はあるかも。試してませんが。
農作業後の手指には土が入り込むだけでなく、黒いシミのようなモノが着く。石鹸で洗っても取れない。数日後に自然に取れるのを待つしかないかと今回も思っていた。
今日はたまたま食事後にオレンジを切ってくれたので食べ、その後に手を見たら手指の汚れがキレイに取れていた。すぐに汚れが取れて嬉しかった一方で、その汚れを知らない間に食べていたかもしれない危機感を同時に感じたが、食べ終わったあとではどうすることも出来ず…
次回再度試したい。

2018年5月12日土曜日

ubuntu17.10 でのUSキーボードの設定

結論から。
ターミナルにて以下コマンドを実行するだけ。即変更される。
setxkbmap -layout us
(en でないところに注意)

日本語キーボードにするなら
setxkbmap -layout jp

ubuntu17.10日本語版はもちろんキーボードは日本語設定になっているわけで、
USキーボードを使うときはレイアウトが異なっているので、USキーボードを
使う際にはレイアウト設定の変更が必要であるが、ググっても複雑な設定の
変更方法しか載っていない。
以前どこかのサイトで見つけた上記方法で簡単に済ませたい。

2018年3月17日土曜日

GalliumOSのインストール他

2018/03/17
先日chromebookにGalliumOSをインストール成功。備忘録です。
特に特別なことはしてません。
以下のサイトをメインで参考にさせていただいた。というか、ほぼそのままマネ。
- GalliumOSのインストール
          Gallium OS on Edgar
- 日本語入力ソフトのインストール
          ElementaryOSを入れて最初にやったこと
- anaconda/python のインストール
          Anacondaでpython環境をインストールする
       
参考にさせてもらったサイトはその他にもいろいろあります。

(1) インストール環境
   1. マシン :  acer chromebook14 CB3-431
(2) やりたいこと
   1. 内蔵ストレージにGalliumOSをインストール
          chromebook全体では32GB。eMMCなので増設不可みたい。
   2. ChromeOS とGalliumOSのデュアルブート
   3. GalliumOSは英語表示のままでOK。
   4. GalliumOSにて日本語入力可能にする。
        デフォルトで日本語表示は可能となっている。
   5. python開発環境のインストール
           jupyter(ipython notebook)の立ち上げる。

(3) 必要なもの
    1. USBストレージ(chromebookリカバリ用) 1個
    2. インターネット接続環境
     本体のフタを開けてネジを外す作業は不要です。
(4) 必ずしなければならないこと。
   1. GalliumOSをインストールする前にChromeOSのリカバリメディアを作成すること。
   2. Chromebookのディベロッパーモードへの移行をできるだけ早くすること。
        ディベロッパーモードにするときに内部ストレージの内容が全て消されるため。
(5) 作業順序:
   1. ChromeOSのリカバリメディアを作成
        メディア用USBメモリを挿して、リカバリメディア作成用アプリを起動。
   2. Chromebookをディベロッパーモードにする。
        i. ctrl + F3(refresh) を押しながらchromebookの電源をON
        ii. ctrl + d でディベロッパーモードを起動。
        その他詳細は参照サイト情報を見てください。
        wifiの設定はctrl+alt+F2 ではなく、guestとしてログインしてから設定。
   3. Mr.Chromeboxで Legacy Bootをインストール
   4. chrxにてchromebook内部にGalliumOS用パーティションを作成
           推奨の23GBを設定。
   5. chrxにてGalliumOSをインストール
           1時間ちょっとかかった。
   6. GalliumOSを起動してセットアップ
        i. ユーザー名とパスワードを入力してログイン
        ii. パスワードを初期値から変更。結局ターミナルでのpasswdコマンドで実施。
        iii. chromiumのkeyring(パスワード)の設定を求めらたので、適当に設定。
        iv. chromiumの日本語フォントの漢字表示が少しおかしかった(旧字体)ので、フォントをTakaoPGothicに変更。
        v. 
   7. 日本語入力をセットアップ
        ibusではなく、fcitxにてmozcをインストールした。
        その他の日本語パッケージはインストールせず。
        i. ターミナルから sudo apt install fcitx-mozc  を実行。
           これだけで関連パッケージが自動でインストールされるよう。
        ii. GUIメニューからlanguage support にて install をクリック。
        iii. GUIメニューのfcitx configuration にてmozc japanese を追加。
        iv. 一旦logout してから再度login。
        v. 日本語入力できることを確認。
            デフォルトではctrl + space にて入力モードの切り替え可能。
   8. anacondaのインストール
        参考サイトにあるように /home/user/anaconda3/bin へのパスを自動で追加しないように
        設定。都度設定が面倒なので、別ファイルに記載してシェルとして実行しようと
        してたら、ipythonが起動できず。結局シェルがうまく働いておらず、anacondaへの
        パスが効いていなかった。export PATH=/home/user/anaconda3/bin:$PATH をテキストで
        記述し、bashではなくsourceコマンドで実行したらうまくパスが設定でき、
        ipython notebookを実行してようやくブラウザ上にjupyterが表示された。
(6) トラブル
   1. GalliumOS起動直後に自宅wifi(buffalo/air station)につながらず。
        原因および復帰した理由は不明。
        当初connection failed, disconnected の状態が続いた。
         自宅wifiルータのSSIDが表示されていたのでwifiが全く動作していなかった
        訳ではない。wifiルーターとの相性が悪かったのかなという気もする。
        モバイルルーター(Aterm)で接続したら接続できたので、そのまま再度設置型のwifi
        ルータを接続したら直後は接続できたが、20秒くらいしたらまた自動でconnection fail
        となった。再度Atermに接続した状態で、update( update & upgrade)を実行。
        Atermにて接続した状態で5分くらいしてから、再度設置型ルーターを接続しに行くと
        安定して接続成功した。
   2. GalliusOSで毎回login後にBluetoothが起動されるが、永久OFFにする設定が不明。
(7)  その他
    1. GalliumOS良い。
        chromebook向けの軽めのディストリビューションということでサクサク動くし、満足です。起動に20秒くらいかかるので、ChromeOSと比べると起動に少し時間かかる感じですが、linuxでできることの方がかなりあると思うので、全く問題なし。
    2. ChromeOSも良い。
サッと起動してサッと電源切れる。しばらくはまだ残しておきたい。


( 2018/06/17 追記)
(6)1. のwifi APへの接続のトラブルについて
wifiルーターを変更したところ同様の症状が出たので、対処法を記す。
結局のところ、wifiのSSIDを選択したときに出てくるパスワードのポップアップ画面でパスワードを入力してもダメで、タスクバー上のwifiアイコンを右クリックして出てくるメニューから一番下にある"edit connections... " を選択し、接続したいSSIDを選択して"edit"を選択し、"wifi security"タブからpasswordの欄に直接パスワードを入力すると接続可能となる。
先のポップアップ画面でパスワードを入力しても、設定内部には反映されていなかった。システムのバグと思われる。

( 2019/01/08 追記 )
約1ヶ月前に突然内蔵キーボードが効かなくなってしまった。(*1)
対処方法としては、nightlyイメージを使ってGalliumOS(GalliumOS 2.1)を再インストールすると、内蔵キーボードが使えるようになった。
1. chromeOSを起動(*2)
2. google ログイン画面にて、ctrl + alt + F2(右矢印) を押してCUIモードに入る。
3. chronos と入力してシェルを起動
4. 以下コマンドを実行(*3)
cd ; curl -Os https://chrx.org/go && sh go -d galliumos -r nightly -H (ホストマシン名) -U (ユーザー名)
要するにchrx でのlinuxディストリビューションのインストールの際に rオプションにてnightlyを明示することでnightlyイメージをインストール可能。約1時間ほどでインストール完了。chrxのオプションは以下b.のサイトを参照。ただしnightlyイメージはここにも記述あるように、動作が不安定?なところがあるようなので、承知の上で利用する必要があります。
GalliumOSにて内蔵キーボードが認識されない問題は、GalliumOSイメージ側にあると考えられる。ArchLinuxに乗り換えようかとも考えたが、インストールですぐにつまづき断念。
(*1) 内蔵タッチパッドは有効。またUSB外付けキーボードも有効。
(*2) USB-LANアダプタにてインターネットには接続すみとする。
wifiでのインストールであれば、guestログインしてからwifiセットアップ後、ctrl + alt + t で起動するシェルにて4.を実行にてインストール可能と思われる(未実施)。
(*3) 元々GalliumOSをインストール済みなので、Mr.Chromeboxによるパーティション作成などは今回は実行不要。
参考サイト:
a. Keyboard not working (Braswell, RW_LEGACY, 3.0alpha2)
b. chrx

(2019/04/04追記)
1. Language Supportではwindow下部のKeyboard input method systemにfcitxを選択してからinstall を実行する。install後は再起動するのがよいようです。
2. Fcitx Configuration にて日本語/Mozcが出てこない場合は'+'を押してプルダウンリストから選択、もしくはMozcを手入力する。
3. fcitxはメニューバーのAccessoriesカテゴリからFcitxを選択することで起動可能。