million人が利用する働く人のためのネットワーキングサイトです。introduction大学で情報工学を学んでましたので、IT関係の知識は充分に持っていると思います。大学院ではディープラーニングにおけるパラメータチューニングの最適化について研究しておりました。研究領域から大分離れてたので、ブランクはありますがディープラーニングでのプログラミングや検証はできると思います。大学院修了後は、株式会社UBICに入社し、自社サービスを使ったテキストデータの解析と、自社サービスの機能向上のための自然言語解析研究の補助を行っていました。次の会社ではElasticserchを使った検索サービスの検討やNode.jsを使ったLINEチャットボットの検討などもやってました。実際にプロダクトとしてのサービス開発までは持っていけなかったですが、検索サービスやテキストマイニングといった領域での開発はできると思います。・ポジティブ/ネガティブなレビュー情報をテキスト解析することで、サービスの伸び代部分や改善点を早期に抽出できる現在は、LINEチャットボットの開発を行っております。インフラにAWSを使っており、インフラ環境の構築からDevOps、バックエンド/フロントエンド開発と領域関係なく行ってるので、AWSを使った開発でしたら直ぐにジョインできると思います。最近は開発メインで色々とスキルアップしていきたいと思うようになったので、バックエンドだとPythonやGo、フロントエンドだとVue.jsやNuxt.js、DBはAuroraやPostgreSQL、AWSやGitHubでのDebOpsなどを勉強しております。ひとりに対して最適化された情報の伝達を半自動的に行う仕組みによる「被災者支援の高度化/効率化」[研究体制]自然言語専門の上司のもと、初期プロトタイプの設計/実装を担当。汎用化を目指して、開発メンバーを増員し、上司と開発メンバーとの橋渡し的な役割を行いつつ、開発に従事中。開発スタイルはスクラム開発[課題]災害時、従来は電話などを通して大量の個別要望などが寄せられていたが、圧倒的な人的資源の不足により、適切な対処が実現できていませんでした。[課題に対するアプローチ]上記の課題に対して、所謂チャットボットというシステムを導入することで、人的資源が不足する災害対応機関業務の自動化、効率化に貢献する。[成果]初期プロトタイプを実際の自治体の避難訓練で試験運用することで、災害時の社会動態情報の収集や避難などに資する情報を個人に伝達する手段の確立とアナログによる情報収集/伝達に対する優位性が確認できた。PostgreSQLの構成で開発。フロントエンド部分はNuxt.jsで開発、現在はReactへの移行を検討中ソースコードはGitHubで管理し、CodePipeline/ECR/GitHub/CodeBuildの構成でデプロイを行います。開発チームではSlackを使ったコミュニケーション、Jira/confluenceを使用したプロジェクト管理で動いています。-株式会社つうけんアドバンスシステムズ研究開発データ分析に関わる事に従事しております。社内に新しい風を持ち込むことために、いろいろなアイディアを試しております。ひとりに対して最適化された情報の伝達を半自動的に行う仕組みによる「被災者支援の高度化/効率化」[研究体制]自然言語専門の上司のもと、初期プロトタイプの設計/実装を担当。汎用化を目指して、開発メンバーを増員し、上司と開発メンバーとの橋渡し的な役割を行いつつ、開発に従事中。[課題]災害時、従来は電話などを通して大量の個別要望などが寄せられていたが、圧倒的な人的資源の不足により、適切な対処が実現できていませんでした。[課題に対するアプローチ]上記の課題に対して、所謂チャットボットというシステムを導入することで、人的資源が不足する災害対応機関業務の自動化、効率化に貢献する。[成果]初期プロトタイプを実際の自治体の避難訓練で試験運用することで、災害時の社会動態情報の収集や避難などに資する情報を個人に伝達する手段の確立とアナログによる情報収集/伝達に対する優位性が確認できた。2019-12Chatbot導入検討[概要]オペレーションセンターの業務効率化を測るためのchatbotシステムの検証を行っております。当初の取り組みとしては、Jumanを用いて形態素解析したテキストデータをknpに入力することで構文解析を行います。構文解析を行うことで、問合せ内容の文脈の意図を推定することができ、問合せに対応した回答を返すことができるようになります。「Office365とは何ですか?」、「Office365の利用方法は何ですか?」の場合ですと、前者はOffice365自体についての概要が知りたいという意図が推定でき、後者はOffice365の導入方法や使い方、利用に必要な環境などが知りたいという意図が推定できます。[研究体制]自然言語処理/Bot開発周りの知見を有しているものがおりませんので、情報収集から開発まですべて一人で行っております。[アプローチ]また、オープソースとして「bot-express」(https://github.com/nkjm/bot-express)というものがあります。概要としては「bot-expressはオーダーメイドのChatbotを高速に開発するためのフレームワークでNode.jsで動作します。開発者はフォーマットにしたがって「スキル」を追加するだけでChatbotの能力を拡張していくことができます。」とあり、chatbotシステムをこのフレームワークを使って実装できないか検証も行っております。スキルの部分が所謂「シナリオ」のことであり、「この問合せが来たらこの回答をする」という処理が書かれております。このスキルが問合せの意図毎に複数あります。問合せの意図を判断するのがNLU(自然言語理解)になります。bot-expressではNLUにDialogflow(google)を用いています。将来的には、このNLU部分をPythonとJumann++とknpを使った構文解析などによって、内製していきたいとも考えております。2018-6検索エンジンシステムの検証[概要]オペレーションセンターに蓄積されたテキストデータ(ナレッジ情報)の有効活用として、自然言語解析を行っておりましたが、別のアプローチとして、ナレッジ検索システムを構築すれば良いのではと考え、Elasticsearchを用いた検索システムの検証を行っております。[研究体制]検索エンジン周りについての知見を有しているものがいないので、検索エンジンに関する技術情報の収集から選定/導入/構築/検証に至るまで私一人で行っております。[課題]そもそもの課題として、ナレッジ情報が整理されていないという問題があります。そのため、ナレッジ情報の探索が難しい現状です。簡単な検索システムを導入するだけでも、業務効率化が図れると考え、検索システムの導入を提案し、検証を行っております。[課題に対するアプローチ]検索エンジンとしては、Elasticsearchを用いております。メトリックなど多様なデータタイプに対応した検索/分析ができます。うちの部署としては、社内のナレッジ情報を自然言語解析しており、今後は、社内で運用管理しているシステムから出るメトリクスデータ解析も行うのでElasticsearchを検索/分析に使うのは適切と考えました。データ検索/分析結果をWebベースで可視化するツールとして、Kibanaがあります。こちらは、Elasticsearchと同じ会社が作っており、とても親和性が高く、非常に導入が簡単であり、最初の検証ツールとしては良いと考えElasticsearchとKibanaを使った検索エンジン基盤を構築しております。Stackの検証については、Qiitaの方に書かせて頂いてますので、以下のリンクを参照して下さい。AnalyticsのアクセスデータをElasticsearchに投入してみる!https://qiita.com/jackkitte/items/ecdb43cc72ee7eb4da92[成果]Elasticsearchによる検索エンジンの導入のしやすさ、また、分析基盤としての高い有用性、BeatsやLogstashのETLとしての機能の豊富さ、Kibanaのダッシュボードとしての便利さ等、検索エンジン以上の知見を得られました。サイトへの流入向上を目指したアクセスデータ解析を行いました。具体的には、GoogleAnalyticsから得られるアクセス情報やユーザ情報と、Web上に公開されている国が集めた統計情報とを組み合わせた流入予測などを行っていました。GoogleAnalyticsからは、ユーザー情報として性別、年代、アクセス地域などが得られます。GA(GoogleAnalytics)から得られる情報は表層の部分でしかありません。どのような年齢、性別の人なのか?どこに住んでいる人なのか?といった情報は得られますが、その裏にある何故東京に住んでいる20代女性のアクセスが多いのか?といった、深層に関わってくる情報までは読み取れません。この深層にある情報を、顧客データや外部データと照らし合わせて読み解くことが私がやるべきところになります。[分析体制]社内で分析系の知見を有している者が私だけなので、一人ですべてを行っておりました。Analyticsのダッシュボードより分析を行っておりましたが、外部の統計データとの組み合わせの際には、API経由でアクセスデータを取得し、Pythonを用いて統計的な分析を行っておりました。[課題に対するアプローチ]今回のWebサイトでは、ソーラーパネルの販売を行う企業のアクセスデータになります。足掛かりとして、今回は人口統計情報を用いました。人口統計情報には、全国の給与水準や住宅購入数/形態といった情報があります。ソーラーパネルは高い買い物となるため、給与水準の高い層でないと購入は厳しいです。そこで、アクセス数の多い地域と給与水準の高い地域とを照らすと、見事に相関がありました。アクセス数の多い層が30~40代後半に見られたのは、その年代になるとある程度の役職と所帯を持つようになってくるということが、全国の給与水準統計情報から推測できます。ソーラーパネルは、住居の形態によって、種類が複数あります。そこで、地域によるアクセス数の変動については、地域毎の給与水準と住宅形態(戸建て/アパート,マンション/分譲など)の比率に起因するのではと考え、照らしたところ、相関が見られました。これらの集計/解析は全てPythonで行いました。Pythonのライブラリのnumpyとscipyを使うことで、集計/統計解析が行えるのでとても便利です。[成果]これらの解析結果を元に、アクションを起こすのが次のステップなのですが、諸事情により、プロジェクトが凍結となってしまい、解析結果を元にしたアクション検証まではできませんでした。実データと人口統計情報を組み合わせてみることで、詳細なユーザー像を推測することができること、ユーザー像を推測するまでのアプローチといった知見を得ることができたので、次同じような案件が来た際には、よりレベルの高いWebアクセス解析ができると思います。(ナレッジ情報)を扱った自然言語解析を行っております。内容としては、新システムにおけるナレッジ情報へのアクセスに対する検索性能向上を目指した研究開発です。具体的な取り組み内容としては、MeCabやJumanなどを用いて形態素解析したテキストデータを特徴量として文章分類を行う際に、どのような機械学習技術が適切かを検証しました。機械学習ツールとしては、gensimやscikit-learnを用いました。etc..全部一人で行っております。[課題]そもそもの問題として、ナレッジ情報が整理されていないという問題があります。そのため、ナレッジ情報の探索が難しい現状です。そこで、機械学習を用いたクラスタリングを行うことで、ナレッジ情報を整理することにしました。Words)、Doc2Vecで生成したベクトル情報を用いたk-means法による分類方法を今回は検証しました。今回のナレッジ情報は、整理がされておりませんので、それぞれの文章の属性といったものもありませんので、教師データを作るのに非常に労力を要します。そこで、文章情報をベクトル化することで、そのベクトルを特徴量とした教師なし学習がコストが低いので、教師なし学習としてLDAによる手法と、k-means手法を選びました。最初は、形態素情報として名詞や動詞だけを特徴量とするデータだけを用いましたが、上手く分類分けができませんでした。改善策として、形態素解析の部分でどのような形態素が抽出されているのかを確認しました。すると、固有名詞表現が上手く抽出できてない、数字列/記号といった特徴として意味を成さない形態素が抽出されていた、といった問題点がありました。Doc2Vecに関しては、文脈情報を特徴として学習するので、形態素解析において、名詞や動詞だけに限定するのは間違ったやり方であり、それぞれの形態素の順番も考慮する必要もあるので、それらを修正するというようなことも行いました。[成果]成果としては、実用的な結果は得られませんでした。社内としては自然言語解析は新しい領域への取り組みとなったので、教師なし学習や形態素解析といった新しい技術への知見を残すことができました。今回のような問題設定の場合では、検索システムの導入により解決できる可能性があるので、そちらを最初に行うべきだったというアンチパターンについての知見を残すこともできました。2017-12PortfolioGoとNuxtで作ったWebアプリケーション2020-2https://youtube-manager-nuxt.herokuapp.com/GoとNuxtで構築したWebアプリケーションです。APIを使って動画の一覧表示や検索、お気に入り登録/削除などができます。Goプログラム実践入門2020-2https://mosaic-image-generator.herokuapp.com/Goの勉強のために、標準ライブラリだけでWebアプリケーションを作りました。モザイク写真を生成するアプリとなっており、ゴルーチンやチャネルを使って並行処理による処理の高速化を行っております。