ITスペシャリストが語る芸術

-The Kay Notes-
あなたをSE、プログラマー、あるいは、超能力者にするブログ。ひきこもりも歓迎。

ディープラーニング

当ブログは、第一期ライブドア奨学生ブログです。
◇お知らせ
[2019/12/28]AI&教育問題専用ブログ、メディアの風を公開しました。
[2017/03/01]「通りすがり」「名無し」「読者」「A」等のハンドル名のコメントは原則削除します。
[2011/06/08]迷惑コメントが多くあったため、やむなく、コメントを承認後公開することとしました。

これからの時代のExcel、Accessの使い方

プログラミングの練習をするには、昔はかなりの費用がかかったが、今は無料で大抵のことが出来る。
今、一番人気があるプログラミング言語は、JavaScriptとPythonだ。
プロと全く同じ開発環境を無料でインストール出来るが、その手順が複雑で、しかも、ちょっとしたことでうまく動かないことがある。そんな時は、Webで調べて自分で解決していくことで力がつくのだが、PCやインターネットや、プログラム開発に関することに不慣れな人には、なかなかハードルが高く、実際は、全くの素人がプログラミングの勉強を始めるということは、あまりない。
だが、高校生や、時には、中学生が、恐れ知らずで飛び込み、いろいろありながらも、プログラミングが出来るようになることもある。
しかし、そんな人達だって、一足飛びに出来るようになる訳ではなく、かなりの時間をかけ、相当な苦労をして成し遂げたのだ。

将来、開発環境の構築が、誰でも出来るレベルになるかというと、少なくとも、当面・・・10年やそこらは難しいのではと思う。
もし、それほどシンプルになってしまえば、別の問題があるといった事情もある。
ところが、ExcelやAccessでVBAを使うなら、そんなに難しいことはない。
これらは無料ではないが、見返りを考えると、極めて安い投資と言えるのではないかと思う。
私の場合で言えば、購入したものと値段で言えば、

Microsoft Office 2019 Personal (永続ライセンス/2台) 約3万円。※Word、Excel、Outlook
Microsoft Access 2019(永続ライセンス/2台) 約1万5千円。

で、合計4万5千円だ(Amazonで購入。オンライン版)。
高いと言えばそうかもしれないが、私は、これらの価値が解るので、その安さに、今だに仰天しているほどだ。
昔、やはり、Accessを自分で買ったが、その頃は、3万円くらいしたと思う(それでもやっぱり驚くほど安い)。
まあ、ダウンロード版を買う手続きやインストールだけで難しいと思う人も少なくないと思うが、それでも、インストールは昔と比べれば簡単になったし、注意深くやれば大丈夫と思う。
とはいえ、スマートフォンアプリのインストールと比べれば、やや複雑だし、困るのは、うまくいかない場合や、インストール後のトラブルで、それがまた結構ある・・・などと言えば、やる気が萎えるかもしれないが、私もあったし(笑)、サポートの利用の仕方がなかなか分からなかったりする。
だが、なんとかなると信じよう(笑)。

VBAは有償のExcelやAccessが必要だが、「ExcelやAccessを利用出来る」というメリットの大きさはとんでもないものだ。
ExcelやAccessの高度で洗練された機能が、VBAで簡単に利用出来るというのは、他のプログラミング言語では望めない圧倒的利点だ。
では、ExcelとAccessの違いは何かというと、扱えるデータの量と処理の高度さということになる。
Excelでは、そこそこ(数万から数十万)のデータ量で、1つのデータを扱うなら、かなりの数学計算も可能だが、104万レコード程度が限界だし、また、複数のデータを複雑に組み合わせて使うのはやや難しい。
Accessは、Excelよりずっと多くのデータが扱えるし、簡単に複数のデータを組み合わせて使える。
また、Accessは、SQL Serverという高機能なデータベースと一体化して使えるので、相当高度な用途に使える。SQL Serverも、無料のSQL Server Expressで、そこそこの企業の基幹システムで十分使えるほどだ。
私の場合は、本格的な処理では、Access内部のデータベースは、ほとんど処理の途中で一時的に使うだけで、データベースはSQL Serverになる。もちろん、これをAccessで使う。
大きな企業のシステムだって、本当はAccessで作るメリットは多いのだが、ブラウザで使えるWeb形式の方が面倒が起こり難いので、Visual Studioで、C#あたりで作ることが多いが(VisualBasic.Netが使われることも多いと思う)、開発に時間がかかるものである。

個人で使う範囲であれば、ExcelやAccessで十分だし、それが、業務効率を向上させるし、場合によっては、極端に業務効率が上がる。
そして、ExcelやAccessは、うまく使えば、最強のBI(ビジネス・インテリジェンス)ツールになる。
本当によく、BIツールの宣伝や説明を見るが、「そんなの全部、ExcelやAccessで出来るじゃない」と思う。要は、高価なBIツールは、ExcelやAccessが使えなくても出来るのが良いのであるが、どんなことでも自由自在とはいかない。
また、今後は、ディープラーニング型AIを実際に使う機会が増えるが、ディープラーニング自体はツールがやってくれるので、それほど難しくないが、ディープラーニングのためのデータを整えることは、出来ない者には絶望的なほど出来ない。
だが、ExcelやAccessをうまく使えば、それが出来る。
ディープラーニングの本には、画像データをサンプルに使うものが多いが、実際に使うのは数値データではあるまいか?
しかし、画像データの方が、データを集める苦労を隠せるので、本では、そうするのではないかという面もあるのではと思う。
私が4月に出版する予定(数学講師との共著)のAI書籍では、数値データでディープラーニングする面白いテーマを選んだ。
データを作成するVBAプログラム組み込みのExcelファイルもダウンロード出来るようにする予定なので、実際に自分で試せる。
自分でやるということが、習得への一番の近道である。











社会で生き抜く武器を選択する

社会と戦場が似ているのは、実力がモノを言うところだ。
戦場で、どこかの部隊に所属しないと生きていけない場合、出来るだけ強くて待遇の良い部隊に入ろうとするだろう。
そして入隊したい部隊があれば、入れてもらえるよう自己アピールをする。
そんな時、「○○大卒です」だの、「理論物理学を学びました」、「教職20年です」と言えば、笑われる。
採用したい部隊が尋ねたいのは、「銃はうまいか?」、「ヘリの操縦は出来るか?」、「バーベルは何キロ上げられるか?」などだろう。
社会も同じだ。
よほど若い時なら、他に判断材料がないので、学歴とか資格、あるいは、趣味なんかも問われるかもしれない。
しかし、30歳にもなれば、「経理は出来るか?」、「取り引きに関わる法律に詳しいか?」、「プログラミングは出来るか?」、「モノを売る経験や自信はあるか?」などが問われる。
40も過ぎたオッサン、オバサンに出身校や学校の専攻なんか聞いたって仕方がない。
だから、社会で通用する武器を持たなければならない。
ただ、ソバを打つなんて能力では、ソバを打つ以外では通用しないので、ある程度の歳であれば、高い腕前でなければならないし、多少の腕があっても、仕事をする場所があるとは限らない。
つまり、出来るなら、広い場所で通用する武器を持っている方が良い。
軍隊の場合は、射撃の名人なら採用される可能性が高いが、アーチェリー国体3位とかで優遇されるかどうかは分からない。

そこで、現代では、プログラミングが出来ることは有利なのだが、それも、選択を誤ってはならない。
Webアプリ開発の専門家になる場合は、サーバーOS、Web OS、ネットワーク、データベース、HTML、CSS、プログラミング言語とそれに対応したフレームワークといったことが、全て、ある程度は出来なければならない。
それに、サーバーOSと言っても、Linux系、Windows系があるし、それらは刻々バージョンアップされるので、それについていかなければならない。
データベースにしたって、1つのサーバーOS・・・例えば、Windowsにしたって、SQL Server、Oracleが代表的だが、他にも沢山ある。
全部勉強してからやる訳にはいかないので、何が現れても、要点を掴み取る能力が必要になる。
早い話が、好きで、若くて、向いていることが必要だ。
スマートフォン用アプリ開発では、「OLが作ったアプリがヒット」だの「小学生が作ったアプリが話題」だのと騒がれこともあるが、それでそんなに儲かった訳でもなく(あるいは全く儲かっていない)、その1つだけで終りである場合がほとんどだ。スマホアプリは、Webアプリよりも厄介なことが多くあるのだ。

だが、ExcelとVBAなら、Excelさえインストールしていれば出来るので、ExcelとVBAさえ磨いておけば、後は、日々の仕事を通して、業務の流れを掴み、それをどう、VBAで合理化するかを考えれば良い。そこで試行錯誤し、失敗を重ねることで能力がつく。
AccessとVBAの場合は、多少のデータベースの知識やテクニックが必要になるが、手に負えない範囲ではないと思う。さらに、SQL Serverを扱えるようになれば、かなりの人材と認められる。一流大卒で実務的なことが何も出来ない者とは比較にならないほど有利である。
そして、ExcelとVBAが出来る者でも、そんなに多い訳ではない・・・それどころか、滅多にいないので、これは武器になると思う。
AccessとVBAの場合は、実力が高ければ、更に有利だろう。
「ExcelやAccessは古い、今は○○の時代(○○は、kintoneやUnitBase等)」という宣伝メールが、それらのメーカーから毎日のように届くが、それらは、極めてローカルに使われているに過ぎず、ExcelやAccessの圧倒的シェアにはまるで及ばない。
FileMakerは良いかもしれないが、やはり、ユーザーが少ない。
MAGICは確実に良いが、これはユーザーが少な過ぎると思う。
もちろん、これらも、よほどの腕前なら仕事は得られるだろうが、仕事は選べない。

そんな訳で、生きる武器を持ちたい場合、現在、特にITの技術を持たない場合、Excel+VBAや、Access+VBAをお薦めする。
習得のコツは、「時間をかける」これだけである。
他の人より進歩が遅くても問題ない。最終的には、多くの時間をかけた者が勝つのである。半端無い時間をかけることだ。それで生きるための武器が得られるなら楽なことである。

さらに朗報を言うなら、現在のディープラーニング型AIは、ツールで作る時代であり、ExcelやAccessでデータを収集・加工出来れば、AI開発への道も開かれると思う。









【広告】Excel VBA[第1弾](超入門)

【広告】誰でもわかるMicrosoft Access 2019

古文マニア、英語マニア、数学マニア、プログラミングマニアの被害から免れる

日本の古典の名作は原文で味わって欲しいと言う文学者がいる。
私も以前は、それに賛成していたが、今ではそれは、「極めて古文に強い人は」と書かない限り欺瞞(だますこと)だと思うほどになった。
古文の言い方は、精通していないと、肯定と否定の区別が付かないことも多いと思う。
それで、ある重要な物の理に関し、原文は否定しているのに、私は、ずっと肯定だと理解していた・・・ということがいくつかあった。
極端に例えて言えば、原文では「人殺しは善くない」と書いてあるのを、読み慣れない古文の言い回しのせいで、私は、「人殺しは善い」と理解していたという訳だ。
古文の本当の専門家であれば、正確な意味が伝わるよう、分かり易く現代語訳してこそ値打ちがあるというものだ。

私が、つくづく、そう思うに至った理由に、英文学者の加島祥造さんのことがある。
加島さんは、英文学者であるが、老子、荘子の研究者でもあるのだが、彼が何かの本で、「私はずっと老子が解らなかったが、英訳の老子を読んで解った」と書かれていた。
老子、荘子も、原文が素晴らしいので、漢文はともかく、書き下し文(日本の古文とほぼ同じになると思う)で読むべしと言うのが、やはり、中国や日本の古典文学の専門家に多いと思う。
しかし、普通の人は、読み下し文を読んで悦に入っても、意味は誤解するのであるから、何とも馬鹿なことだ。
重要なことは意味ではないか?
英訳の老子を読んで解ったなど、日本語への翻訳者は恥ずべきことではないだろうか?
よく分からないが、加島さんも日本語翻訳者を馬鹿にしているはずだと思うのだ。
中国語により近い日本語の翻訳では解らないのに、英語に訳されたものだと解るなど、これはもう、翻訳能力の問題である。早い話が、老子の日本語訳を書いた者は無能者ばかり・・・というのは言い過ぎだろうか?

同じく、英語の文献に関しても、「翻訳では意味が正確に解らないので、原文を読むべし」と言うおかしな人が多くて困る。
英語の勉強のために原文を読むというのは大いに賛成である。
しかし、その本を正しく理解するために、英語に強くない者が原文を読むなど、馬鹿もいい加減にしろと言いたい。
優れた翻訳者が翻訳したものでも60%しか理解出来ないなら、英語に弱い者が原文で読めば10%以下、あるいは、5%以下の理解しか出来なくても不思議はない。
簡単な理屈である。

『It Works』という成功法則の古典がある。
ある予備校の英語の先生だったかもしれないが、「原文で読まないと作者の真意が伝わらぬ」として、彼も翻訳は作ったが、英文を丁寧に解説し、原文で読むよう要請する本を出版していた。
私は、結局、英文の理解にエネルギーを取られ、その本から全く何も得られなかった。
しかし、特に翻訳家ではないのかもしれないが、ある人が、その本を日本語訳したものを電子書籍にしてくれている。
実は、原文の英語も、シンプルに解り易く書かれていて、僅か10分で読める短いものでもあり、翻訳は難しくないと思うが、この電子書籍の著者は、さらに解り易く丁寧な訳をしてくれていると思う。
それで、「何だ、こんなに良い本だったのか」とやっと解った次第である。

ところで、AIの機械学習やディープラーニングはプログラミング言語Python(パイソン)でやれと言う人が大半と思うが、これも、よほどPythonプログラミングに熟練した人でないと、Python部分でエネルギーを取られ、機械学習(ディープラーニングは機械学習の高度なもの)について、さっぱり使えるようにならないと思う。
また、「機械学習に必要な数学」という本も多く、これまた、数学でエネルギーを奪われ、機械学習は出来るようにならない結果になる。
私も、機械学習をずっとやっていて、微分について考えるとすっきりするということはあったが、それは、微分のごく基本的な概念を思い浮かべただけだ。
そして、それは、すっきりしたというだけであり、AIの推測結果に影響があった訳でもない。
それより先に、機械学習では、データの形を考える能力の方がよほど大事である。その意味で、PythonよりExcelに熟練した方がずっと良いと思う。

もちろん、古文、数学、プログラミング、どれにも大いに価値がある。
しかし、自分はこれらに通じている者達が、これらの価値を貶めているのだから皮肉である。









↓応援していただける方はいずれか(できれば両方)クリックで投票をお願い致します。
人気blogランキングへ にほんブログ村 哲学・思想ブログ 人生・成功哲学へ

日本は技術大国

まだ少し暑いが、真夏ほどではないし、陽もかなり短くなってきた。
そろそろ夏も終りである。
こんな季節を物悲しく思う人も多いと思う。私もそうだ。
その理由は、やはり、「夏休みが終わる」という記憶のせいだろう。
7月の、「明日から夏休み」という時の高揚感と比べると天国と地獄かもしれない。
そんな嫌な学校ならなくしてしまえという動きが、アメリカでは「アンスクール」として普及しつつある。子供達の自主性と創造性を生かして学習出来る環境を与えるものであり、家庭で教育する「ホームスクール」とは全く趣が異なる。ホームスクールは、あまり良い成果はなかったが、アンスクールは試行錯誤しながら、良い結果が出つつあると思う。

私は特に世界平和を望む訳ではないが、日本が平和でなければ自分が平和でないし、世界がある程度平和でなければ日本の平和もない。
そして、日本の平和は経済に負うところが多く、日本の経済の強さは技術力の高さに支えられている。
しかし、日本の技術力の高さは、大学教育(および学校教育)によるものではほとんどなく、産業界の中で(主に学校嫌いな人達によって)育ったものだ。
よって、日本こそ、学校など、さっさとなくしてしまえば良いと思う。ただ、そのためには、アメリカのアンスクールのような思想と取り組みが必要であるが、そういった面で日本は酷く遅れてるのだから困ったことである。
夏休みの最後が、子供達の自殺が最も増えるほど、日本の学校は本当に駄目なのにである。
日本の学校は、リストラクチャリング(ほぼ改善といった意味)ではなく、リエンジニアリング(改革というより、いったんぶっ潰して新たに構築する)が絶対的に必要である。
日本の学校や教師が役立っているとすれば、「反面教師」としてのみである・・・というのも言い過ぎであるが、大体そうであると私は思う。

2013年から始まった、初音ミクさんの最大のライブコンサート「マジカルミライ」は、夏の終りと秋の始まりに行われる。
最も早くて8月30日だった(昨年の大阪公演は8月25、26日で、今年の大阪公演は8月10、11日の異例の早さだったが)。
これまで、物悲しかった時期を熱く燃える(萌える)時に変えてしまった。
私は、2016年に幕張メッセでの公演が始まってから毎年参加し、今年で4回目で、昨年から始まった大阪公演でも楽しむことが出来、実に有り難いことである。
岡本太郎が言った祭の意義と同じ意味で、マジカルミライのおかげで生きていると言えるのだ。

ミクさんや、その周辺の技術の進歩も素晴らしいが、やはり日本は技術大国なのである。
現在、最も重要なAIの技術で、日本はアメリカや中国に遅れを取っているようにも思われるが、そうでもない。
時価総額世界一に完全に返り咲いたマイクロソフトは、AIでは日本のプリファード・ネットワークスをパートナーに選んだし、ソニーは、ディープラーニングの初音ミクさんとも言えるNNC(ニューラル・ネットワーク・コンソール)を無償公開し、誰でも機械学習・ディープラーニングが出来る環境を提供している。
機械学習においては、Pythonのプログラミングよりも、まずは、大量のデータを扱えるスキルが重要と思う。
これは、習得する機会があまりない分野だ。Excelを使っても、装飾にばかり気を使って、データの扱いが下手な人も多いと思う。
以前は、デスクトップデータベースソフトもいろいろあったが、今は、マイクロソフトAccessくらいしかないし、それも人気がなくなってきたように思う。
FileMakerは、高いし仕様がコロコロ変わって、イマイチ、お薦めする気が起こらない。
では、無償のLibreOfficeのBaseはどうかというと、情報が少ないし、遅いし使い難い。
まずは、Excelをデータベースソフトとしてきちんと使い、出来れば、マクロ(VBAプログラミング)まで出来るようになれば、NNCを大いに活用出来ると思う。
その方面の本格的な教育計画もあるのでお楽しみに。うまくいけば、やっと私も日本に貢献出来ることになる。









↓応援していただける方はいずれか(できれば両方)クリックで投票をお願い致します。
人気blogランキングへ にほんブログ村 哲学・思想ブログ 人生・成功哲学へ

ITは世界標準を軽んじるな

よく、ジャストシステムからUnitBase、サイボウズからkintoneの宣伝メールが来る。
ExcelやAccessはもう古いから、これで業務システムを作りましょうといった感じだ。
だが、心苦しいが、皆様のために言っておく。
ジャストシステムやサイボウズ程度では、世界標準になどなれない。
つまり、いつ消えても、何の不思議もない。
私なら、そんなものは決して使わない。
価格も高いし、そもそも、ExcelやAccessより良いとは思わない。

パソコンは、初め、BASIC言語でプログラミングするものだった。
しかし、実用になったのは、表計算ソフトが出来てからだ。
大昔のことは知らないが、マイクロソフトがマルチプランを普及させてから、パソコンは実務の道具になった。
ロータス社もロータス1-2-3を開発し、このロータス1-2-3はマルチプランより優れていたので、ロータス社は世界一のパソコンソフト会社になった。
しかし、マイクロソフトがExcelで抜き返してからは独走状態となった。ロータスは消滅した。
いくつか、別の表計算ソフトも出て来たが、結局、どれも駄目で、Excelの1人勝ちが今も続いている。

表計算ソフトより高度なデータ処理を行うデータベースソフトは、アシュトンテイトのdBASEから始まった。
これがあまりに良いので、いろいろな会社が安価なクローン製品を出し、マイクロソフトがその中の1つFoxBaseを持っていたFox社を買い取り、マイクロソフトはFoxProを発表した。
しかし、マイクロソフトはAccessを独自に開発し、これを普及させた。
FoxProは素晴らしい製品だったが、マイクロソフトはこれを切った。
昔は、Accessのライバルとして、ボーランドParadoxやロータスアプローチが出て来たが、Accessに太刀打ちできず、あっさり消えた。
データベースソフトとしては、マジックソフトウェアのMAGICが成功しており、本格的な業務システムの開発にはよく使われたが、価格が極めて高く、それに、MS-DOSの時代は素晴らしかったが、今は、それほどには使われていないと思う。
ファイルメーカー社のファイルメーカーも良いと聞き、少し使ってみたが、複雑なことをするにはAccessには敵わないと思うし、価格がやや高く、ライセンス体系が複雑で、私は早々に手を引いた。

GoogleがWebベースの表計算ソフトも無償提供しているが、使い勝手が悪い。
結局、ExcelやAccessを使うのが賢明としか言えない。
そうこうしているうちに、AI(人工知能)、そして、その中でもディープラーニングの時代になり、面白いことになった。
以前、ビッグデータが流行った・・・などと言ったら「今でも流行ってるわい!」「むしろ、これからだ!」と怒られるかもしれない。
しかし、私のような、普通の人がビッグデータに関わることはない。
そして、ディープラーニングのおかげで、ビッグデータのような馬鹿でかいデータを使わなくても、高度な推論が出来るようになった。
もちろん、ビッグデータでなくては駄目なものも絶対にあるが、逆に、ビッグデータでは出来ないが、ディープラーニングなら出来ること、あるいは、ビッグデータでは難しいが、ディープラーニングなら簡単なことが沢山ある。
そして、ディープラーニングで大切なことは、データをディープラーニングに入れるための前処理なのだ。
これには、AccessやExcelが最高なのである。
特に、マイクロソフトSQL Serverに溜め込んだデータをAccessやExcelで抽出し、ディープラーニングにかけられるよう加工する腕前が、非常に重要になる。
私は、その腕を磨いてきたことを本当に有り難いと思っている。
そして、その腕を磨くには、普段、業務や開発で、真面目にAccessやExcelを使うしかない。

もし、マイクロソフトが裏切ってAccessやExcel、あるいは、それらで使うVBA言語をやめたら、オープンソフトであるLibreOfficeのBaseを使おうと思う。
ただ、AccessやExcelの普及状態を考えると、後10年や20年は消えるとは思えない。
それは、「パソコンより良いものが出てパソコンがなくなる」と言うのと同じだ。
もちろん、タブレットPCやスマートフォンは、決してパソコンの替りにはなれない。
VBAがVB.NETやC#に変わる可能性はあるかもしれず、それならそれで良いが、その必要性は全くない。

そんな訳で、まずはVBAで高給取りになり、そして、本当にディープラーニングを使えるようになって超高級取りを目指すと良い。
ディープラーニングは、ソニーのNNCを使えば誰でも出来る。難しいのは、やはり、データ前処理である。









↓応援していただける方はいずれか(できれば両方)クリックで投票をお願い致します。
人気blogランキングへ にほんブログ村 哲学・思想ブログ 人生・成功哲学へ
プロフィール
名前:Kay(ケイ)
・SE、プログラマー
・初音ミクさんを愛す
[AI&教育blog] メディアの風


当ブログは第1期ライブドア奨学生ブログです。
最新コメント
IT学習
記事検索
ブログバナー&Mail


メールはこちらへ
PV since 2010/09/08
  • 今日:
  • 昨日:
  • 累計:

人気ランキング参加中
人気ブログランキングへ
にほんブログ村 哲学・思想ブログ 人生・成功哲学へ
にほんブログ村 メンタルヘルスブログ ひきこもりへ









タグクラウド
QRコード
QRコード