This project is made possible with funding by the Government of Ontario and through eCampusOntario’s support of the Virtual Learning Strategy.
To learn more about the Virtual Learning Strategy visit: https://vls.ecampusontario.ca.
Nipissing University sits on the territory of Nipissing First Nation, the territory of the Anishnabek, within lands protected by the Robinson Huron Treaty of 1850. We are grateful to be able to live and learn on these lands with all our relations.
DIGITAL HUMANITIES TOOLS AND TECHNIQUES II
This course is a 3000-level (third year undergraduate) course that introduces additional tools and techniques used in modern digital humanities scholarship. Learners study algorithms used in the field, particularly (but not exclusively) in text analysis, which is historically foundational for the development of the digital humanities, and is also relevant to and vitally important in many digital humanities sub-specialities, even those that are not directly related to text analysis.
The course continues Digital Humanities Tools and Techniques I, focusing on more advanced techniques encountered in humanities scholarship. Although many of these algorithms are complex, they are presented in a straightforward manner, emphasizing the basic concepts. The focus is on correctly using and applying these techniques and algorithms (which are implemented in publicly available libraries in Python and packages in R), rather than on the mathematical details. However, the course is not specifically a programming course. The goal is to empower learners to construct their own flexible workflows in powerful and widely used programming languages and pre-written, tested, optimized libraries for these languages. In machine learning, the unsupervised k-means algorithm is presented, and discussed within the context of text and document clustering. The method is illustrated with examples. New, innovative visualization techniques are also presented. Python and R source code for these methods are available in the distribution for the course, and, like its predecessor, features interactive Python and R exercises.
The computational techniques discussed in this course is beneficial to learners continuing in the certificate program, and who will enroll in the subsequent courses in the digital classics and in the spatial humanities.
This course will provide learners with valuable knowledge and technical skills that can be applied to humanities work and beyond. Working with code in Python are R is increasingly important in many professions. The experience with coding and applying complex computational algorithms from this course will benefit learners in the professional careers, even outside humanities disciplines.
Students are introduced to advanced digital humanities techniques in machine learning and information visualization. Students gain experience in tool building for humanities scholarship. Tools and techniques are illustrated in the Python and R programming languages and libraries. Students explore algorithms via interactive virtual labs.
REQUIRED TEXT: Digital Humanities Tools and Techniques II, available as online content for this course.
Downloading and installing the freely available Python (https://www.python.org/) and R (https://www.r-project.org/) languages, as well as the libraries and packages for these languages is recommended to follow the code examples and interactive workbooks.
Each module contains a reading list from publicly available web pages and other Internet sources.
LEARNING OUTCOMES
By the end of this course, successful students will be able to:
- Apply advanced machine learning techniques to humanities scholarship.
- Analyze complex humanities data with statistical techniques such as principal component analysis and t-SNE.
- Analyze text with a variety of well-known metrics.
- Implement advanced visualization methods for humanities data in Python and R using publicly available libraries.
- Classify humanities data with artificial neural networks and analyze the results.
- Discuss and explain immersive technologies in the digital humanities and GLAM institutions (Galleries, Libraries, Archives, and Museums).
- Discuss and explain accessibility issues and universal design considerations in systems used in the digital humanities.
- Critically evaluate current literature in the digital humanities research and in digital humanities techniques.
TOPICS COVERED IN THIS COURSE
Module Topic
1 Text Visualization
2 Python Implementation of N-Grams
3 Advanced Text Processing in R
4 K-Means for Text Analysis
5 Python Implementation of TF-IDF
6 Basic Topic Modeling in R
7 Advanced Text Clustering and Other Algorithms
8 Social Network Visualization
9 Review of Statistics with Python
10 Introduction to Principal Component Analysis
11 Introduction to t-SNE for High-Dimensional Visualization
12 Introduction to Artificial Neural Networks
13 Analysis of Artificial Neural Networks
14 Texture and 3D Printing
15 Museums, Immersion, and Interactivity
16 Accessibility and Universal Design
A NOTE TO INSTRUCTORS
Instructors should freely utilize material that is relevant to their class and omit or modify modules or sections of modules that are not. Advanced material and computational techniques may also be omitted without interrupting the schema of course.
Readings accessible through the Web are assigned for most sections. Most of these readings are short and are selected for students first studying tools and techniques used in the digital humanities. Some readings are websites that learners may browse to examine some state-of-the-art and leading-edge digital humanities scholarship. Many optional readings are indicated and may be used according to the instructor’s and learners’ interests. Instructors may supplement these readings with reading assignments of their own that complement the material presented in each section, or that offer different or contrary perspectives. Other readings are reference pages for the Python and R techniques discussed in the corresponding sections. Learners need not peruse these sites, but may use them as reference resources, or to learn more about these methods. As the course mainly focuses on methods, some lab exercises are suggested at the end of some of the sections. However, instructors should prepare assignments and laboratory (Python/R implementation) work specifically for the type of class they are teaching, and tailor these assignments and laboratories to meet the needs of their specific students. A test bank for this course may be requested to assist instructors in preparing midterm and/or final examinations. Instructors may also use or adapt questions from this test bank for short assignments or quizzes, especially the short computational questions.
ACKNOWLEDGEMENT
Thanks are given to Renata Smolíková, Ph.D., for assistance in developing the interactive Jupyter Notebooks and the interactive Python statistics tutorial.