外付けHDDにUbuntu(Linux)をインストールする(まとめ・結論)

最近当ブログに外付けハードディスクを使ってUbuntu(Linux)をしたいがどうだろうという目的で訪れるユーザーが増えている。結論から言うと否である。Native Linux用Applicationを使用したい場合などの特別な理由がない限りWSLの使用をお勧めする。

190523

外付けHDDにUbuntu(Linux)をインストールする(まとめ・結論)

最近当ブログに外付けハードディスクを使ってUbuntu(Linux)をしたいがどうだろうという目的で訪れるユーザーが増えている。結論から言うと否である。

① 外付けハードディスクにUbuntuを合計2回インストールした。
② また古いWindows M/CにLinuxを1回インストールした。
③ 現在はBusiness用PCにWSL(Windows Subsystem for Linux)をインストールして使っている。
④ 外付けハードディスクは外国製と国内製の映像録画用HDDで使用した。
⑤ ④はいずれも2~3週間でBoot Errorになった。
⑥ これにより映像用外付けハードディスクはLinuxM/Cとしては不適であるとの結論である。
⑦ ②は1ヶ月半ほど稼働したがそののちBoot Errorを起こした。
⑧ ⑥⑦よりLinuxをインストールすると同じ個所を参照しトラブルを起こしやすい。
⑨ WSLを使ってLinuxを経験したいのなら中古PCで十分との結論に達した。去年(平成30年)の10月インストールして以来現在(令和元年11月3日)まで順調に稼働している。
⑩ Native Linux用Applicationを使用したい場合などの特別な理由がない限りWSLの使用をお勧めする。

linuxConsole

(写真はネットより借用)
以上

↑人気ブログランキングに参加しています。よろしければ1票を!

前の記事の追加(クラスとインヘリタンスその2)

前の記事の追加(クラスとインヘリタンスその2)

クラスとインヘリタンスその2

昨日アップした記事は「クラスとインヘリタンス」のCode部分の説明があまりなされていませんでした。

そこで今日はPetというスーパークラスを定義しDogやCatそしてTurtleのサブクラスを定義し、継承やオーバーライドのためのPythonのプログラムを作りました。

参考になさってください。

↑人気ブログランキングに参加しています。よろしければ1票を!

クラスとインヘリタンスその2

今日はPetというスーパークラスを定義しDogやCatそしてTurtleのサブクラスを定義し、継承やオーバーライドのためのPythonのプログラムを作りました。

クラスとインヘリタンスその2

昨日アップした記事は「クラスとインヘリタンス」のCode部分の説明があまりなされていませんでした。

そこで今日はPetというスーパークラスを定義しDogやCatそしてTurtleのサブクラスを定義し、継承やオーバーライドのためのPythonのプログラムを作りました。

参考になさってください。

↑人気ブログランキングに参加しています。よろしければ1票を!

クラスとインヘリタンス

トリというクラス(オブジェクト)を設け、鳴き声と飛行というメソッドをつくります。

クラスとインヘリタンス

Codeの説明

① スーパークラスBirdを作る(パラメーターはobject-スーパークラス)
② __init__関数(第一パラメーターはself,第2第3パラメーターはname,wingspan)
③ 初期設定の左辺はself.name、self.wingspan、右辺は対応する変数(第1・2param)
④ birdcall関数(メソッド)のparamはself、出力はchirpを表示
⑤ fly関数(メソッド)のparamはself、出力はflapを表示
⑥ サブ・クラスPenguinのパラメーターはBird(サブクラス)
⑦ 関数(メソッド)swim(self)、関数(メソッド)birdcall(self)、関数(メソッド)fly(self)では飛べないとオーバーライド
⑧ サブ・クラスParrotのパラメーターはBird(サブクラス)
⑨ __init__関数(第一パラメーターはself,第2第3第4パラメーターはname,wingspan,color)パラメーターが一つ増えたことで初期設定の__init__でBirdのcolor以外を継承する(インヘリタンス)

トリのクラスを定義してインヘリテンスを知ろう。
またトリというクラス(オブジェクト)を設け、鳴き声と飛行というメソッドをつくります。
このトリにはペンギンとパロットというサブクラス(オリジナルのオブジェクトとは少し違うメソッドや属性をもっています=インスタンスがオリジナル[スーパークラス]とは少し異なる)をつくります。この少し違ったものを作るのにインヘリテンスという概念が重要になります。
ペンギンはトリのクラスに属しますが、違う鳴き声をし、泳ぐという新しいメソッドをもち、飛行メソッドは「飛べない」と出力します(オーバーライドにより書き換えています)。
パロットは色という属性を持ちますが、メソッドはオリジナルのバードと同じ(これを継承[インヘリテンス]とよぶ)のように定義します。

Parrot:オウム、chirp:小鳥のさえずり(ちゅんちゅん)
flap:小鳥がパタパタ、quack:ガアガア

↑人気ブログランキングに参加しています。よろしければ1票を!

オブジェクト・データ・メソッド

Pythonでは、オブジェクトに続けてドットを打ち、その後にメソッドを続ける。Pythonで扱うデータはすべてオブジェクトである。

オブジェクト・データ・メソッド

2019/5/21

—————————————————————————————————
name = “Pablo Diego Jose Francisco de Paula Juan Nepomuceno Crispin Crispiniano de la Santisima Trinidad Ruiz Blasco Picasso y Lopez”
print(name)
name.index(“Picasso”)
name.count(‘o’)
“ABCDE”.lower()
—————————————————————————————————

① 「name」という名前の入れ物に画家ピカソの本名を入れる
② 入れ物にアルファベットが正しく入っているか表示する
③ nameは文字列を保存しているだけではなく特別な機能を持っている
④ name自体が関数のような命令を持っている
⑤ nameがもつピカソの名前の何文字目に「Picasso」が含まれているか
⑥ nameは単なるデータではない
⑦ nameという変数はその中のデータに対して処理を行う関数のようなものを持っている
⑧ index()は関数に似ているが、nameというデータを引数のように扱って処理を行う、という点では関数と違っている
⑨ Pythonで扱う文字列のようなデータは、ただのデータではなく、データと合わせて命令も持っている
⑩ データと命令をセットで持つもののことをオブジェクトと呼ぶ
⑪ オブジェクトがもっている命令のことをメソッドと呼ぶ
⑫ nameという入れ物は、データを持っていてメソッドも持っているので、オブジェクトの例
⑬ Pythonでは、オブジェクトに続けてドットを打ち、その後にメソッドを続ける
⑭ nameという入れ物のことを文字オブジェクトと呼ぶ
⑮ “ABCDE”.lower()→文字列定義自体もオブジェクトである
⑯ Pythonで扱うデータはすべてオブジェクトである

以上

↑人気ブログランキングに参加しています。よろしければ1票を!

Python program coloring on Atom

Python(Atom)Code色表示

2019/5/21

① 赤:オブジェクト(Object)
② 紫:予約語
③ 青:関数(Method)
④ 緑:文字列
⑤ 白:変数・その他
⑥ 茶:定数・数値
⑦ 橙:クラス

↑人気ブログランキングに参加しています。よろしければ1票を!

「クリムト展」を見てきた

19世紀末ウィーンを代表する画家グスタフ・クリムト。華やかな装飾性と世紀末的な官能性を併せ持つその作品は、今なお圧倒的な人気を誇る。

「クリムト展」を見てきた

上野の都美術館で「クリムト展」を見てきた。
19世紀末ウィーンを代表する画家。華やかな装飾性と世紀末的な官能性を併せ持つその作品は、今なお圧倒的な人気を誇る。
彼の境遇は母と姉と妹との生活であった。
そのため自画像を含め男性の肖像を描いたものはなく、女性賛美に満ちている。
作品の「ユディトI」には圧倒された。
彼は浮世絵に(東洋美術など)影響された。
油絵に金粉を施した技法は新境地を開いた。
印象派などの絵画展とはまた違った絵の楽しさを教えられた。
見てよかった。
そののち、同館2階の上野精養軒レストラン「ミューズ」でミューズ・ランチをいただいて家路についた。
上野精養軒レストラン「ミューズ」の裏庭、都美術館で行われた「クリムト」の展覧会を見てののちに

上野精養軒レストラン「ミューズ」で食べたミューズ・ランチ

クリムト展のチラシから

グスタフ・クリムトの立て看板

「グスタフ・クリムト」展覧会ー都美術館

上野精養軒のミューズ・ランチ


↑人気ブログランキングに参加しています。よろしければ1票を!

Chainerが作った「ディープラーニング入門」を紹介!

機械学習を勉強するには、いくつかの知識が必要です。それらを学ぶ上でいろいろな書籍やネットの情報が必要ですが、Chainerが出した「ディープラーニング入門」で必要十分です。

Chainerが作った「ディープラーニング入門」を紹介!

以下、DogFortune(Qiita)さんから引用。

機械学習を勉強するには、いくつかの知識が必要です。

• 統計や線形代数といった数学の知識
• Pythonを使うのでプログラミングの知識
• 画像処理、音声処理といった知識
• 学習を行う為のコンピューティングリソースの準備

それらを学ぶ上でいろいろな書籍やネットの情報が必要ですが、Chainerが出した「ディープラーニング入門」で必要十分です。
これはChainer Tutorialです。
最低限必要な知識がまとめて学べます。

このチュートリアルでは、機械学習を行っていく上で必要な最低限の数学とプログラミングを学んでいくことができます。
• Pythonの文法から条件式、クラスや継承といったところまであります。もちろんNumPyやCuPyもしっかりあります。
• 数学については、微分、合成関数、偏微分といった所もしっかり記述されています。これらを順番にこなすことで、機械学習を行ううえで、「なぜ必要なのか」をしっかり学んでいけます。
• 確率変数、確率分布も学べます。

ここまでしっかりと揃っているうえに、あちこちサイトを行き来しなくてもよい という所が非常に素晴らしいです。

ブラウザで学べる

機械学習の知識がついてきたところで、さぁやってみようと思った時に問題になるのが環境の構築です。数年前に比べたら比較的簡単に環境を構築できるようになってきましたが、フレームワークの進化も非常に早く、ネットの情報がすでに古いといった事も多いです。
このチュートリアルは、ブラウザ上で学ぶことができます。それも、資料の中に登場するコードがそのままブラウザ上で実行できる という所です。
資料はすべてノートブック形式になっていますので、解説とコードが同時に実行できるようになっています。なので、ただ読むだけの資料ではなく、実際にコードを記述してその結果も学ぶことができます。 これは非常にありがたいです。

Google Colaboratoryとして実行できる!!

これがこのチュートリアル最大のポイントです。先ほど資料はノートブック形式になっていると述べましたが、これがGoogle Colaboratoryで実行できるようになっている事です。
資料の上部にある「Open in Colab」ボタンを押すとすぐに開くことができます。
基本的にはJupyter Notebookと同じですが、Google Colaboratoryでは GPUリソースが利用できます。しかも無料です。
ですので処理の重い畳み込みニューラルネットワークも比較的短時間で体験することができます。GPUが絡むと途端に環境構築が大変になるので、ぜひ活用すると良いです。

まとめ

公式にもありますが、 このサイトだけで機械学習・ディープラーニングに入門できる事を目指して作られています。 基本的な知識はすべて網羅されているので、今から始めたい人はぜひ見てみてください。

章立ては次のようになっています。

Step1 準備編
。 1. はじめに
o 1.1. 必要なもの
o 1.2. Google Colaboratory の基本
o 1.3. Colab の基本的な使い方
• 2. Python 入門
• 3. 機械学習に使われる数学
• 4. 微分の基礎
• 5. 線形代数の基礎
• 6. 確率・統計の基礎
Step2 機械学習とデータ分析入門
• 7. 単回帰分析と重回帰分析
• 8. NumPy 入門
• 9. scikit-learn 入門
• 10. CuPy 入門
• 11. Pandas 入門
• 12. Matplotlib 入門
Step3 ディープラーニング入門
• 13. ニューラルネットワークの基礎
• 14. Chainer の基礎
• 15. Chainer の応用
• 16. トレーナとエクステンション

また今後次のような項目が登場するようです。

• 応用編:画像認識 (coming soon)
• 応用編:自然言語処理 (coming soon)
• 応用編:深層強化学習 (coming soon)
• デプロイ (coming soon)

以下Chainerから

「はじめに」

Chainer チュートリアルへようこそ。
このチュートリアルは、機械学習やディープラーニングの仕組みや使い方を理解したい大学学部生以上の方に向けて書かれたオンライン学習資料です。
機械学習の勉強を進めるために必要な数学の知識から、Python というプログラミング言語を用いたコーディングの基本、機械学習・ディープラーニングの基礎的な理論、画像認識や自然言語処理などに機械学習を応用する方法に至るまで、幅広いトピックを解説しています。
機械学習を学び始めようとすると、ある程度、線形代数や確率統計といった数学の知識から、何らかのプログラミング言語が使えることなどが必要となってきます。 しかし、そういった数学やプログラミングの全てに精通していなければ機械学習について学び始められないかというと、必ずしもそうではありません。
本チュートリアルでは、機械学習やディープラーニングに興味を持った方が、まず必要になる最低限の数学とプログラミングの知識から学び始められるように、資料を充実させています。
そのため、できる限りこのサイト以外の教科書や資料を探さなくても、このサイトだけで機械学習・ディープラーニングに入門できることを目指して、作られています。初学者の方が「何から学び始めればいいのか」と迷うことなく学習を始められることを目指したサイトです。
また、本チュートリアルの特徴として、資料の中に登場するコードが、Google Colaboratory というサービスを利用することでそのままブラウザ上で実行できるようになっているという点があります。
ブラウザだけでコードを書き、実行して、結果を確認することができれば、説明に使われたサンプルコードを実行して結果を確かめるために、手元のコンピュータで環境構築を行う必要がなくなります。
本章ではまず、この Google Colaboratory というサービスの利用方法を説明します。
1.1. 必要なもの
• Google アカウント(お持ちでない場合は、こちらからお作りください:Google アカウントの作成)
• ウェブブラウザ( Google Colaboratory はほとんどの主要なブラウザで動作します。PC 版の Chrome と Firefox では動作が検証されています。)
1.2. Google Colaboratory の基本
Google Colaboratory(以下 Colab )は、クラウド上で Jupyter Notebook 環境を提供する Google のウェブサービスです。Jupyter Notebook はブラウザ上で主に以下のようなことが可能なオープンソースのウェブアプリケーションであり、データ分析の現場や研究、教育などで広く用いられています。
• プログラムを実行と、その結果の確認
• Markdown と呼ばれる文章を記述するためのマークアップ言語を使った、メモや解説などの記述の追加
Colab では無料で GPU も使用することができますが、そのランタイムは最大 12 時間で消えてしまうため、長時間を要する処理などは別途環境を用意する必要があります。 学びはじめのうちは、数分から数時間程度で終わる処理がほとんどであるため、気にする必要はありませんが、本格的に使っていく場合は有料のクラウドサービスを利用するなどして、環境を整えるようにしましょう。

chainerチュートリアル

(以上Qiitaの記事-DogFortune-及びChainerのはじめにを引用させていただきました。)

↑人気ブログランキングに参加しています。よろしければ1票を!

母の日のプレゼント(家内への)

昨日の母の日に息子(次男)から家内へのプレゼントがあった。品物はプリザーブドフラワーとストロベリーのホワイトチョコレートであった。

母の日のプレゼント(家内への)

昨日の母の日に息子(次男)から家内へのプレゼントがあった。
品物はプリザーブドフラワーとストロベリーのホワイトチョコレートであった。
この2月に我が家から若い二人が引っ越ししていってから3か月たつ。
元気で過ごしているのだろうか?
仕事がきつそうでちょっと心配している。
でも感謝感謝である。
嫁さんともども元気で過ごしてほしい。

母の日のプレゼント

TOPSのチョコレートケーキ

↑人気ブログランキングに参加しています。よろしければ1票を!

Jupyternotebook-ModuleNotFoundについて

そこでググってみたらバージョン2と3を両方入れている場合はバージョン3のほうはpip3を使うと示していたのでpip3でnumpy,matplotlib etcをインストールしてみた。(Anaconda3でインストールしていると両方入ってしまう)

WSL Jupyternotebook-ModuleNotFoundについて

AI関連開発を再開した。

① Python3.6はコマンドプロンプトのバーチャルエンバイロメントで動いている。
② これは(>atom .)で起動する。
③ 上記はWSLでHydrogenをインストールしてもShift+Enterで動かないため回避策で行った。
④ コマンドプロンプトでは
・>python -m venv hydrovenv
・>hydrovenv\scripts\activate
・>pip freeze
・>atom .
で行う。
こののちAtomのOpen Projectをクリックして求めるPath上のフォルダを指定する。
⑤ これでShift+Enterでmatplotlibなどをインストールしている場合、図形などを描くことができる。
⑥ (hydrovenv)C:\Users\xxxxx>pip install Numpyなどでライブラリに入れるモジュールをインストールする。
⑦ しかしWSLでJupyternotebookを走らせなければならなかった。
⑧ プログラムからNumpy,matplotlib,Scipyなどを呼び出すとモジュール・ノットファウンドになってしまう。
⑨ 最初はWindowsの環境変数の問題だと思った。
⑩ 次に
・>pip list | grep numpy
をやったらnumpy(1.16.3)と表示された。(numpyが入っている証拠)
・>pip show numpyとやってみた。
/home/xxxxx/.local/lib/python2.7/site-packages
と表示された。(python2.7に入っていることを示す証拠)Python3を動かして、
・>>>import sys
・>>>import pprint
・>>>pprint.pprint(sys.path)
をやってみた。
⑪ バージョン2が入っていたので
・$ cp -r python2.7 pythonbu2.7(python2.7を無効化)
・Module not foundの現象は変わらなかった。
⑫ そこでググってみたらバージョン2と3を両方入れている場合はバージョン3のほうはpip3を使うと示していたのでpip3でnumpy,matplotlib etcをインストールしてみた。(Anaconda3でインストールしていると両方入ってしまう)(結局python3の方にはもともとnumpyなどが入っていなかったことになる)
⑬ みごとJupyter-notebookは稼働した。
⑭ No module named errorは解決された。
以上

↑人気ブログランキングに参加しています。よろしければ1票を!