とあるIT屋の独白

ITや経営について主に書きます

テキストマイニングについて

社内業務の効率化というと、最近では機械学習の活用というのが選択肢の一つとして挙げられるようになりました。例えば以下の記事は、リクルーティングサービスなどを手掛けるWantedlyの方が書いているものなのですが、名刺の画像認識やプロフィールの自動作成などに活用していたりします。

 

【マイクロサービスとしての機械学習――Wantedly Peopleの事例から】

https://codezine.jp/article/detail/10533

 

上記の記事にもありますが、機械学習は導入すればすぐ効率化できるというわけではなく、そもそものデータの収集や人間が想定した結果になるような日々のチューニングが必要となるわけです。

もっと手軽に効率化など実現できないか、ということで対象の業務がテキストデータを扱っている場合は、まずはテキストマイニングから始めてみるというのもよいと思います。下記の記事にある通り、テキストの分類やキーワードの抽出などが主に行うことができます。

 

テキストマイニング

https://www.macromill.com/service/data_analysis/d025.html

 

昔に私が作ったTwitterのワード分析はkuromojiというライブラリを使ってます。

http://toaruit.hatenablog.com/entry/2016/07/14/013416

kuromojiはJavaのライブラリで文章の品詞分解を簡単にできたりします。

 

Java形態素解析器「Kuromoji」を試してみる】

http://www.mwsoft.jp/programming/lucene/kuromoji.html

 

テキストマイニングでライブラリが充実しているのが、Pythonです。googleで検索すると色々でてきますが、下記の書籍の中で一通りできそうなことが書かれているので参考になると思います。

Pythonによるテキストマイニング入門

Pythonによるテキストマイニング入門

 

 

メンタルヘルスについて考えてみる

今日は横浜で花火を見に行ってきました。久しぶりの花火だったこともあり、すごくきれいで嫌なことも忘れられそうな気持になりました。

さて、昨今、働き方改革や残業規制がさけばれて企業も様々な取り組みを行っていますが、そもそもなぜこのような流れになっているかというと、メンタルヘルスに対する対応という側面があります。メンタルヘルスの不調が深刻化すると、うつのような症状が発生することになりますが、それによって自殺者がでたり経済的な損失にもつながるわけです。

 

メンタルヘルスの社会問題とは】

http://lightring.or.jp/kokoro/mental_health/

 

メンタルヘルス不調は我々サラリーマンだと職場の環境が原因となることが多くて、主に長時間労働やハラスメントが原因として挙げられています。

 

【人事が知っておくべき 「メンタルヘルス対応の流れ」とその「予防策」】

https://hcm-jinjer.com/media/contents/b-contents-8044/

 

実際に最近調査した結果だと、半分以上の企業でメンタル不調となっている人がいるそうです。ただ、ストレスチェックなどを行うことで、企業側も事前に不調者の傾向がつかめるようになってきている感じがします。

 

【この世は、ストレスにあふれている。58%の企業にメンタル不調者、対策と向き合い方とは(調査結果)】

https://m.huffingtonpost.jp/enjapan/mental-fucho_a_23398174/

 

メンタル不調への対応として、企業だけで対応するのではなく医療機関で診察するといった手段も考慮すべきと下記の記事で述べられています。適切なタイミングで適切な処置をすることが、大事なんだなと感じます。

 

【進まぬ職場のメンタルヘルス対策、管理職の対応が企業の損失を決定づける】

https://newswitch.jp/p/12860

 

もちろん自分自身でリフレッシュするなどの手段がとれれば、それに越したことはありません。今日感じたのは、普段見ない花火などを見ることで、心がリフレッシュできるのかなと感じます。

f:id:ti7140:20180715002755j:plain

AIの未来について考えてみる

以前に本ブログでAIに関する書籍を取り上げました。

http://toaruit.hatenablog.com/entry/2018/04/27/004002

この書籍ではAIは文書の意味を理解しているのではなく、統計的に正しいであろうものを結果として出しているに過ぎないということです。

ただ、現状のAIでも、いまいま人間が担ってる役割はかなりの部分まかなえるものと考えています。例えば、かなりニュースになっていますが、銀行では実際に人員削減が行われています。

 

【銀行は万単位の人員削減、一方で未曽有の人手不足…透ける「要らない人材像」】

http://biz-journal.jp/i/2017/12/post_21604.html

 

下記の記事の通り、AIは担える仕事があれば投入すればするだけ効果が得られます。なので、人間がルールが決まっている仕事をやる必要がない状況は、近い将来くるだろうと個人的には考えています。

 

【AIを使って働かないでメシを食う、は可能か。「生産性」から考えた
すべての時間を「消費」に使う未来とは】

http://gendai.ismedia.jp/articles/-/54093

 

ルールが決まっている仕事とは別に、AI自身が考えて人間の思考に近くなるような取り組みも行われています。もう少し先の話になるとは思いますが、SFの世界にあるような対話ができるロボットが生まれると思います。

 

【意識持つAIへ、世界初「動物並み」に挑む神経科学者】

http://college.nikkei.co.jp/article/105082712.html

 

また、他におもしろそうな取り組みとして、下記の記事にあるロボットサッカーがあげられます。ロボットが意思を持つようになれば、人間と試合ができる日もくるかもしれませんね。

 

【「人間のチャンピオン国に勝つ」を本気で目指すロボットサッカー】

https://www.gizmodo.jp/2018/03/mugendai_robot_football.html

無駄にみえることに価値を見いだす

少し前ですが、プロゴルファーの片山晋呉さんがプロアマ戦で、同伴者をきちんとアテンドせず、自分の練習を行ったことが問題になっていました。

 

片山晋呉のプロアマ失態問題の背景にある男子ゴルフツアーの惨状】

https://thepage.jp/detail/20180609-00000001-wordleafs

 

片山氏の気持ちは分かる点はあって、サラリーマンでも仕事をしているとそれに非効率な部分がある場合は、無駄なことは止めて効率化をしろ、と言われるのが普通です。なので、自分にとって無駄な部分は極力しないというのは、非常に正しいのですが、仕事終わりや私生活にも効率性を求めてしまうという癖がついてしまいがちです。

例えば下記の記事、キャバクラを楽しめない男性は一定数いると思います。せっかく楽しむべき場があるのに、楽しめないというのは会社で出世できないという意見です。

 

【「キャバクラを楽しめない男」に元キャバ嬢作家が喝!「祭りにノレる男は出世する」】

https://r25.jp/article/535805441550911699

 

日本において会社は様々ありますが人事評価は主観的に行われる面があり、時には自分にとってはバカげた観点で評価されないと感じることもあるでしょう。そこを受け入れられるか、受け入れられないか、というのは出世にも関わってくるかもしれません。

一見、無駄と思えることでも、そこには隠れた価値がある可能性もあります。結果が重視される世の中で、プロセスを楽しむ姿勢が仕事においても価値を見つけられるような人になれると感じます。

 

【人生を楽しくする無駄との付き合い方】

https://p-dress.jp/articles/5478

 

片山さんも、一見無駄に思えることを楽しんでみようという意識でプロアマ戦にのぞむと、また違う振るまいになるのではと思います。

DSPとは何か

アドテク関連の記事をみると、DSPという単語を見かけることがあります。アドテク関連なのでもちろんWeb広告に関することなのですが、少し内容を調べてみました。

まず、DSPは「Demand-Side Platform」の略であり広告を出したい人向けのプラットフォームです。DSPは下記の記事の通り、SSP(Supply-Side Platform)やDMP(Data Management Platform)と組み合わせて、ユーザの嗜好にあった広告を出す仕組みができます。

 

【【保存版】知ってるつもりのSSP / DSP / DMPをおさらい】

https://admage.jp/blog_003_ssp-dsp-dmp.html

 

他のWeb広告を出す方法をふまえて、下記の記事にまとめられています。DSPはその広告があらかじめ設定された「条件」によって入札が行われ表示が決められるので、どのサイトに表示されるかも自動的に決められます。

 

DSP(Demand-Side Platform)とは?近年流行っている広告手法の基礎を徹底解説】

https://ferret-plus.com/3057

 

上記の記事にあるアドネットワークとDSPの手法について、下記の記事で対比されています。アドネットワークは、決められた複数のサイトに広告を出す方法であり、DSPはあくまでアクセスするユーザによって表示が判断される方法となります。

 

【アドネットワークとDSPって何が違うの?図でわかりやすく説明!】

https://digitalidentity.co.jp/blog/ad/ad-network-dsp/difference-between-adnw-and-dsp.html

IT事業での資金調達

ITの事業は元手の現金は他業種と比較し少ないところから始めやすいですが、人件費やオフィスなどの賃料はかかるわけで、資金は必要となります。ただ、創業者したてとか、まだ規模が小さい時は資金調達を行うのに苦労するので、今後もしかしたら私も企業するかもしれないので、少し調べてみました。

まずは資金調達というと、銀行などからの融資が考えられますが、下記の記事によると、見込み顧客や融資の返済実績など見られることより、そんなに簡単にはお金を貸してくれはない雰囲気です。

 

WEBサービス系ITベンチャーが創業融資で押さえるべき5つのポイント】

https://magazine.go-al.co.jp/financing/finance/web_service_it_venture/

 

ベンチャー企業であれば、ベンチャーキャピタルからの出資やクラウドファンディングのような手段もあります。目利きのエンジェル投資家と出会えれば、銀行等からは評価されない事業であっても、出資がもらえる可能性があります。

 

ベンチャー企業必見!資金調達手段5選】

https://sogyotecho.jp/venture-funding/

 

最近だと、ソフトウェアの開発やエンジニアのスキルの実績をベースに、与信をかけるサービスも出てきています。信頼性が高ければ、このサービスを利用することで、入金までの期間が短縮できるので、運転資金の調達負荷が軽減できますね。

 

【IT事業者の資金繰りを改善する「SHIFT KESSAI」--ソフトウェア開発実績をもとに与信】

https://japan.cnet.com/article/35117507/

フロントエンドフレームワークとAngular

かなり前になりますが、本ブログでクライアントサイドのフレームワークというところで、AngularJSを少し取り上げました。

http://toaruit.hatenablog.com/entry/2017/01/28/181722

その後、フロントエンドのフレームワークは諸々動きがあって今回少し整理したのと、私も時々Qiitaに投稿しているAngularについて取り上げたいと思います。

フロントエンドフレームワークの最近の主だったものとして、Angular、React、Vue.jsが挙げられ各々の特徴は下記の記事にまとめられています。

 

【【JavaScript】3大フレームワーク Angular, React, Vue.jsを比べてみよう (2018年4月)】
http://iwasiman.hatenablog.com/entry/2018/04/23/200000


これらのフレームワークを利用することでWebサイトであってもページ遷移なしに、画面の動きを表現することがある程度容易に実装できます。前に本ブログで取り上げたPWAは、基本的にこれらのフレームワークを使用して構築するものとなります。

http://toaruit.hatenablog.com/entry/2018/06/20/145151

 

Angularについては、AngularJsの後継のフレームワークになり、かなり書き方も異なるものとなっています。Angularにの実装に沿ってフロントエンドフレームワークの主だった仕組みであるコンポーネントと双方向バインディングについて紹介します。

まず、コンポーネントについての紹介です。コンポーネントはページにおける、テキストボックスなどを一括りとした単位となります。下記の記事がイメージがつきやすいと思います

 

【「Angular 2」の構成単位「コンポーネント」「モジュール」を使いこなそう】

https://codezine.jp/article/detail/9700

 

次に双方向バインディングです。ざっくりいうと、ビューの値とコンポーネントのロジックで設定される値を同期するものとなります。これにより、入力内容や処理結果がほぼリアルタイムに画面へ反映されます。具体例については、下記の記事にまとめられています。

 

【フォームの入力値をコンポーネントと同期するには?(双方向バインディング)】

https://www.buildinsider.net/web/angulartips/016

 

Angularは他にも様々な機能があるのですが、網羅的に確認するとなるとかなりのボリュームがあります。現状かなりまとめられている書籍は下記になります、私も読みつつ手を動かしています。

Angularアプリケーションプログラミング

Angularアプリケーションプログラミング