プログラミング演習2[24A0137]

科目名
Course Title
プログラミング演習2[24A0137]
Exercises in Computer Programming 2
授業言語
Language
Japanese
科目区分・科目種 情報 クラス Python・R
コンピテンシー ◎創造的思考力,◎問題解決力
カラーコード
単位数 2.0単位 履修年次 14

担当教員 大槻 明
淺本 紀子
学期 後期
曜日・時限・教室
月曜 7 8 ITルーム4【理2・103】

受講条件・その他注意
・本授業は対面形式形式で行いますが,コロナ等の状況によってはリアルタイムZOOM配信等で行います.
・教材はWindows用に作成していますので,もしMacなどWindows以外のパソコンで受講される場合は,RやPython,さらに関係するパッケージ(例:RMeCab)が動く環境のご準備をご自身で行っていただく必要があります.
・本授業ではアクティブ・ラーニング・アワー(ALH)に相当する最終課題として,ニューラルネットワークのスクリプト構築の課題を最後の授業で課す予定です.

授業の形態
演習

教科書・参考文献
様々な参考書等を元に作成したレジメを配布しますので,学生の皆さんに参考書等を購入していただく必要はありません.

ALH区分
ALHを実施しない

アクティブラーニングの技法
ミニッツペーパー(リアクションペーパー)

評価方法・評価割合
実習成果=最終課題若しくは試験=30%(もし最終課題をしなかった場合は,その他ー課題=50%が80%になるイメージです),その他=課題=50%(毎回演習課題を課す予定です),授業への参加態度=20%

主題と目標
 Rを用いたデータ分析とを通じて,ビジネス戦略や研究活動に資する知見や価値などを導出できる人材を養成することを本授業の主題とする.また、pythonを用いたDeep Learning演習を通じてニューラルネットワークの原理について学ぶ.
授業では,係る技術及び知見等について体系的に学び,修得した技術や知見等をもとに,データ収集から分析までの一連の流れを実践的に演習することで,「どのようなデータ」を「どのような手法等で分析」することにより,「どのような価値や知見等を見出すのか」というデータ分析のコンセプト設計が行える人材を養成することを目標とする.
 具体的に,ビッグデータの特徴の一つと言われている非構造化データ(例:SNSデータ)などを題材として扱い,データ収集技術では,WebスクレイピングやTwitter APIを用いたツイート収集技術について演習する.また,データ分析について,座学では,線形代数学をベースとした各種統計手法の概念について学び,技術としては,統計ソフトRを用いて,基本的な統計手法の演習から行い,ツイート(文章)をテキストマイニングする技術や,グラフ理論にもとづくネットワーク分析に関する技術等について演習する.
 授業の後半では,pythonを用いてDeep Learningの原理や生成AIなどのDeep Learningフレームワークについて演習形式で学ぶ.

授業計画
以下は現時点の予定であり,受講生の理解度や関心などによって変更となる可能性があります.

第1回 データサイエンスことはじめ
第2回 データ収集技術1(Excel Webスクレイピング演習)
第3回 データ収集技術2(Twitter API演習)
第4回 Rプログラミング基礎(演算,記号,変数,ベクトル,外部ファイルの取り込み,出力,配列,リスト)
第5回 Rプログラミング基礎(行列,データフレーム,基本文法,独自関数の定義)
第6回 RMeCabによるテキストマイニング(簡単な形態素解析,度数頻度表の作成,単語検索)
第7回 RMeCabによるテキストマイニング(n-gram分析,IDF,コロケーション)
第8回 RMeCabによるテキストマイニング実践(形態素解析+対応分析+クラスタリング)
第9回 ネットワーク分析(グラフネットワーク基礎,コミュニティ抽出法,中心性分析)
第10回 Python Deep Learning1(Pythonプログラミング基礎)
第11回 Python Deep Learning2(NumPy,Matplotlib)
第12回 Python Deep Learning3(パーセプトロン)
第13回 Python Deep Learning4(ニューラルネットワーク)
第14回 Python Deep Learning5(手書き文字の認識)
第15回 Python Deep Learning6(Deep Learningの概要)

時間外学習
実践力を鍛えるには授業の演習だけでは足りませんので,毎回の授業で学んだ技術や手法等について,授業で演習した以外の実践的なデータで良く復習(実践)するようにしてください.

学生へのメッセージ
プログラミングは「手を動かしてなんぼ」の世界ですので,「時間外学習:」に書いたような内容で毎回の授業の復習を必ず行い,授業で学んだことの理解度を深めてください.